From 98caffc889d815b7cc9604d86bc8343031cbaaa3 Mon Sep 17 00:00:00 2001 From: Brett Zamir Date: Mon, 7 Oct 2024 22:47:31 +0800 Subject: [PATCH] chore: bump jsep, devDeps. and lint BREAKING CHANGE: Require Node 18+ --- .eslintignore | 6 - .eslintrc.cjs | 111 - .npmignore | 2 +- CHANGES.md | 7 + demo/index.js | 2 +- dist/index-browser-esm.js | 357 +- dist/index-browser-esm.min.js | 2 +- dist/index-browser-esm.min.js.map | 2 +- dist/index-browser-umd.cjs | 357 +- dist/index-browser-umd.min.cjs | 2 +- dist/index-browser-umd.min.cjs.map | 2 +- dist/index-node-cjs.cjs | 2 + dist/index-node-esm.js | 2 + eslint.config.js | 99 + package.json | 48 +- pnpm-lock.yaml | 5696 +++++++++++++++++++++------- rollup.config.js | 2 - src/jsonpath-browser.js | 4 + src/jsonpath.js | 2 + test/test.at_and_dollar.js | 2 +- test/test.cli.js | 9 +- test/test.errors.js | 2 +- test/test.performance.js | 1 + 23 files changed, 4745 insertions(+), 1974 deletions(-) delete mode 100644 .eslintignore delete mode 100644 .eslintrc.cjs create mode 100644 eslint.config.js diff --git a/.eslintignore b/.eslintignore deleted file mode 100644 index 60b57a4..0000000 --- a/.eslintignore +++ /dev/null @@ -1,6 +0,0 @@ -node_modules -dist -docs/ts -coverage -ignore -!*.js diff --git a/.eslintrc.cjs b/.eslintrc.cjs deleted file mode 100644 index a55b7b2..0000000 --- a/.eslintrc.cjs +++ /dev/null @@ -1,111 +0,0 @@ -'use strict'; - -module.exports = { - extends: ['ash-nazg/sauron-node-overrides'], - parserOptions: { - ecmaVersion: 2022 - }, - settings: { - polyfills: [ - 'Array.isArray', - 'console', - 'Date.now', - 'document.head', - 'document.querySelector', - 'JSON', - 'Number.isFinite', - 'Number.parseInt', - 'Object.keys', - 'Object.values', - 'XMLHttpRequest' - ] - }, - overrides: [ - { - files: ['src/jsonpath-node.js', 'test-helpers/node-env.js'], - env: { - mocha: true - }, - // ESLint doesn't seem to remember this - parserOptions: { - ecmaVersion: 2022, - sourceType: 'module' - }, - rules: { - 'n/no-unsupported-features/es-syntax': ['error', { - ignores: [ - 'regexpNamedCaptureGroups', 'modules', 'dynamicImport' - ] - }] - } - }, - { - files: ['*.md/*.js', '*.md/*.html'], - rules: { - 'import/unambiguous': 0, - 'import/no-commonjs': 0, - 'import/no-unresolved': ['error', { - ignore: ['jsonpath-plus'] - }], - 'no-multiple-empty-lines': ['error', { - max: 1, maxEOF: 2, maxBOF: 2 - }], - 'no-undef': 0, - 'no-unused-vars': ['error', { - varsIgnorePattern: 'json|result' - }], - 'import/no-extraneous-dependencies': 0, - 'n/no-extraneous-import': ['error', { - allowModules: ['jsonpath-plus'] - }], - 'n/no-missing-require': ['error', { - allowModules: ['jsonpath-plus'] - }], - // Unfortunately, with the new processor approach, the filename - // is now README.md so our paths must be `../`. However, even - // with that, eslint-plugin-node is not friendly to such - // imports, so we disable - 'n/no-missing-import': 'off', - 'n/no-unpublished-import': 'off' - } - }, - { - files: ['test/**'], - extends: [ - 'plugin:chai-expect/recommended', - 'plugin:chai-friendly/recommended' - ], - globals: { - assert: 'readonly', - expect: 'readonly', - jsonpath: 'readonly' - }, - env: {mocha: true}, - rules: { - '@stylistic/quotes': 0, - '@stylistic/quote-props': 0, - 'import/unambiguous': 0, - // Todo: Reenable - '@stylistic/max-len': 0 - } - } - ], - rules: { - '@stylistic/indent': ['error', 4, {outerIIFEBody: 0}], - 'promise/prefer-await-to-callbacks': 0, - 'require-jsdoc': 0, - - // Disable for now - 'new-cap': 0, - '@stylistic/dot-location': 0, - 'eslint-comments/require-description': 0, - // Reenable as have time and confirming no longer needing: - // https://github.com/babel/babel/issues/8951#issuecomment-508045524 is no - 'prefer-named-capture-group': 0, - 'unicorn/prefer-spread': 0, - - // Reenable when no longer having problems - 'unicorn/no-unsafe-regex': 0, - 'unicorn/consistent-destructuring': 0 - } -}; diff --git a/.npmignore b/.npmignore index e214400..614e4f7 100644 --- a/.npmignore +++ b/.npmignore @@ -17,7 +17,7 @@ mocha-multi-reporters.json .nojekyll ignore pnpm-lock.yaml -.eslintrc.cjs +eslint.config.js .editorconfig .eslintignore licenseInfo.json diff --git a/CHANGES.md b/CHANGES.md index 72d666f..81b342d 100644 --- a/CHANGES.md +++ b/CHANGES.md @@ -1,5 +1,12 @@ # CHANGES for jsonpath-plus +## 10.0.0 (unreleased) + +BREAKING CHANGES: +- Require Node 18+ + +- chore: bump jsep, devDeps. and lint + ## 9.0.0 BREAKING CHANGES: diff --git a/demo/index.js b/demo/index.js index abec461..1f9ab58 100644 --- a/demo/index.js +++ b/demo/index.js @@ -1,5 +1,5 @@ /* globals JSONPath */ -/* eslint-disable import/unambiguous */ +// /* eslint-disable import/unambiguous */ // Todo: Extract testing example paths/contents and use for a // pulldown that can populate examples diff --git a/dist/index-browser-esm.js b/dist/index-browser-esm.js index a24ed69..5aa23af 100644 --- a/dist/index-browser-esm.js +++ b/dist/index-browser-esm.js @@ -1,6 +1,21 @@ +function _arrayLikeToArray(r, a) { + (null == a || a > r.length) && (a = r.length); + for (var e = 0, n = Array(a); e < a; e++) n[e] = r[e]; + return n; +} +function _arrayWithoutHoles(r) { + if (Array.isArray(r)) return _arrayLikeToArray(r); +} +function _assertThisInitialized(e) { + if (void 0 === e) throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); + return e; +} function _callSuper(t, o, e) { return o = _getPrototypeOf(o), _possibleConstructorReturn(t, _isNativeReflectConstruct() ? Reflect.construct(o, e || [], _getPrototypeOf(t).constructor) : o.apply(t, e)); } +function _classCallCheck(a, n) { + if (!(a instanceof n)) throw new TypeError("Cannot call a class as a function"); +} function _construct(t, e, r) { if (_isNativeReflectConstruct()) return Reflect.construct.apply(null, arguments); var o = [null]; @@ -8,6 +23,97 @@ function _construct(t, e, r) { var p = new (t.bind.apply(t, o))(); return r && _setPrototypeOf(p, r.prototype), p; } +function _defineProperties(e, r) { + for (var t = 0; t < r.length; t++) { + var o = r[t]; + o.enumerable = o.enumerable || !1, o.configurable = !0, "value" in o && (o.writable = !0), Object.defineProperty(e, _toPropertyKey(o.key), o); + } +} +function _createClass(e, r, t) { + return r && _defineProperties(e.prototype, r), t && _defineProperties(e, t), Object.defineProperty(e, "prototype", { + writable: !1 + }), e; +} +function _createForOfIteratorHelper(r, e) { + var t = "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"]; + if (!t) { + if (Array.isArray(r) || (t = _unsupportedIterableToArray(r)) || e) { + t && (r = t); + var n = 0, + F = function () {}; + return { + s: F, + n: function () { + return n >= r.length ? { + done: !0 + } : { + done: !1, + value: r[n++] + }; + }, + e: function (r) { + throw r; + }, + f: F + }; + } + throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); + } + var o, + a = !0, + u = !1; + return { + s: function () { + t = t.call(r); + }, + n: function () { + var r = t.next(); + return a = r.done, r; + }, + e: function (r) { + u = !0, o = r; + }, + f: function () { + try { + a || null == t.return || t.return(); + } finally { + if (u) throw o; + } + } + }; +} +function _defineProperty(e, r, t) { + return (r = _toPropertyKey(r)) in e ? Object.defineProperty(e, r, { + value: t, + enumerable: !0, + configurable: !0, + writable: !0 + }) : e[r] = t, e; +} +function _getPrototypeOf(t) { + return _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf.bind() : function (t) { + return t.__proto__ || Object.getPrototypeOf(t); + }, _getPrototypeOf(t); +} +function _inherits(t, e) { + if ("function" != typeof e && null !== e) throw new TypeError("Super expression must either be null or a function"); + t.prototype = Object.create(e && e.prototype, { + constructor: { + value: t, + writable: !0, + configurable: !0 + } + }), Object.defineProperty(t, "prototype", { + writable: !1 + }), e && _setPrototypeOf(t, e); +} +function _isNativeFunction(t) { + try { + return -1 !== Function.toString.call(t).indexOf("[native code]"); + } catch (n) { + return "function" == typeof t; + } +} function _isNativeReflectConstruct() { try { var t = !Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); @@ -16,6 +122,12 @@ function _isNativeReflectConstruct() { return !!t; })(); } +function _iterableToArray(r) { + if ("undefined" != typeof Symbol && null != r[Symbol.iterator] || null != r["@@iterator"]) return Array.from(r); +} +function _nonIterableSpread() { + throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); +} function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { @@ -37,15 +149,28 @@ function _objectSpread2(e) { } return e; } +function _possibleConstructorReturn(t, e) { + if (e && ("object" == typeof e || "function" == typeof e)) return e; + if (void 0 !== e) throw new TypeError("Derived constructors may only return object or undefined"); + return _assertThisInitialized(t); +} +function _setPrototypeOf(t, e) { + return _setPrototypeOf = Object.setPrototypeOf ? Object.setPrototypeOf.bind() : function (t, e) { + return t.__proto__ = e, t; + }, _setPrototypeOf(t, e); +} +function _toConsumableArray(r) { + return _arrayWithoutHoles(r) || _iterableToArray(r) || _unsupportedIterableToArray(r) || _nonIterableSpread(); +} function _toPrimitive(t, r) { if ("object" != typeof t || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { - var i = e.call(t, r || "default"); + var i = e.call(t, r); if ("object" != typeof i) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } - return ("string" === r ? String : Number)(t); + return (String )(t); } function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); @@ -60,193 +185,34 @@ function _typeof(o) { return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o; }, _typeof(o); } -function _classCallCheck(instance, Constructor) { - if (!(instance instanceof Constructor)) { - throw new TypeError("Cannot call a class as a function"); - } -} -function _defineProperties(target, props) { - for (var i = 0; i < props.length; i++) { - var descriptor = props[i]; - descriptor.enumerable = descriptor.enumerable || false; - descriptor.configurable = true; - if ("value" in descriptor) descriptor.writable = true; - Object.defineProperty(target, _toPropertyKey(descriptor.key), descriptor); - } -} -function _createClass(Constructor, protoProps, staticProps) { - if (protoProps) _defineProperties(Constructor.prototype, protoProps); - if (staticProps) _defineProperties(Constructor, staticProps); - Object.defineProperty(Constructor, "prototype", { - writable: false - }); - return Constructor; -} -function _defineProperty(obj, key, value) { - key = _toPropertyKey(key); - if (key in obj) { - Object.defineProperty(obj, key, { - value: value, - enumerable: true, - configurable: true, - writable: true - }); - } else { - obj[key] = value; - } - return obj; -} -function _inherits(subClass, superClass) { - if (typeof superClass !== "function" && superClass !== null) { - throw new TypeError("Super expression must either be null or a function"); +function _unsupportedIterableToArray(r, a) { + if (r) { + if ("string" == typeof r) return _arrayLikeToArray(r, a); + var t = {}.toString.call(r).slice(8, -1); + return "Object" === t && r.constructor && (t = r.constructor.name), "Map" === t || "Set" === t ? Array.from(r) : "Arguments" === t || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t) ? _arrayLikeToArray(r, a) : void 0; } - subClass.prototype = Object.create(superClass && superClass.prototype, { - constructor: { - value: subClass, - writable: true, - configurable: true - } - }); - Object.defineProperty(subClass, "prototype", { - writable: false - }); - if (superClass) _setPrototypeOf(subClass, superClass); -} -function _getPrototypeOf(o) { - _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf.bind() : function _getPrototypeOf(o) { - return o.__proto__ || Object.getPrototypeOf(o); - }; - return _getPrototypeOf(o); -} -function _setPrototypeOf(o, p) { - _setPrototypeOf = Object.setPrototypeOf ? Object.setPrototypeOf.bind() : function _setPrototypeOf(o, p) { - o.__proto__ = p; - return o; - }; - return _setPrototypeOf(o, p); } -function _isNativeFunction(fn) { - try { - return Function.toString.call(fn).indexOf("[native code]") !== -1; - } catch (e) { - return typeof fn === "function"; - } -} -function _wrapNativeSuper(Class) { - var _cache = typeof Map === "function" ? new Map() : undefined; - _wrapNativeSuper = function _wrapNativeSuper(Class) { - if (Class === null || !_isNativeFunction(Class)) return Class; - if (typeof Class !== "function") { - throw new TypeError("Super expression must either be null or a function"); - } - if (typeof _cache !== "undefined") { - if (_cache.has(Class)) return _cache.get(Class); - _cache.set(Class, Wrapper); +function _wrapNativeSuper(t) { + var r = "function" == typeof Map ? new Map() : void 0; + return _wrapNativeSuper = function (t) { + if (null === t || !_isNativeFunction(t)) return t; + if ("function" != typeof t) throw new TypeError("Super expression must either be null or a function"); + if (void 0 !== r) { + if (r.has(t)) return r.get(t); + r.set(t, Wrapper); } function Wrapper() { - return _construct(Class, arguments, _getPrototypeOf(this).constructor); + return _construct(t, arguments, _getPrototypeOf(this).constructor); } - Wrapper.prototype = Object.create(Class.prototype, { + return Wrapper.prototype = Object.create(t.prototype, { constructor: { value: Wrapper, - enumerable: false, - writable: true, - configurable: true - } - }); - return _setPrototypeOf(Wrapper, Class); - }; - return _wrapNativeSuper(Class); -} -function _assertThisInitialized(self) { - if (self === void 0) { - throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); - } - return self; -} -function _possibleConstructorReturn(self, call) { - if (call && (typeof call === "object" || typeof call === "function")) { - return call; - } else if (call !== void 0) { - throw new TypeError("Derived constructors may only return object or undefined"); - } - return _assertThisInitialized(self); -} -function _toConsumableArray(arr) { - return _arrayWithoutHoles(arr) || _iterableToArray(arr) || _unsupportedIterableToArray(arr) || _nonIterableSpread(); -} -function _arrayWithoutHoles(arr) { - if (Array.isArray(arr)) return _arrayLikeToArray(arr); -} -function _iterableToArray(iter) { - if (typeof Symbol !== "undefined" && iter[Symbol.iterator] != null || iter["@@iterator"] != null) return Array.from(iter); -} -function _unsupportedIterableToArray(o, minLen) { - if (!o) return; - if (typeof o === "string") return _arrayLikeToArray(o, minLen); - var n = Object.prototype.toString.call(o).slice(8, -1); - if (n === "Object" && o.constructor) n = o.constructor.name; - if (n === "Map" || n === "Set") return Array.from(o); - if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); -} -function _arrayLikeToArray(arr, len) { - if (len == null || len > arr.length) len = arr.length; - for (var i = 0, arr2 = new Array(len); i < len; i++) arr2[i] = arr[i]; - return arr2; -} -function _nonIterableSpread() { - throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); -} -function _createForOfIteratorHelper(o, allowArrayLike) { - var it = typeof Symbol !== "undefined" && o[Symbol.iterator] || o["@@iterator"]; - if (!it) { - if (Array.isArray(o) || (it = _unsupportedIterableToArray(o)) || allowArrayLike && o && typeof o.length === "number") { - if (it) o = it; - var i = 0; - var F = function () {}; - return { - s: F, - n: function () { - if (i >= o.length) return { - done: true - }; - return { - done: false, - value: o[i++] - }; - }, - e: function (e) { - throw e; - }, - f: F - }; - } - throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); - } - var normalCompletion = true, - didErr = false, - err; - return { - s: function () { - it = it.call(o); - }, - n: function () { - var step = it.next(); - normalCompletion = step.done; - return step; - }, - e: function (e) { - didErr = true; - err = e; - }, - f: function () { - try { - if (!normalCompletion && it.return != null) it.return(); - } finally { - if (didErr) throw err; + enumerable: !1, + writable: !0, + configurable: !0 } - } - }; + }), _setPrototypeOf(Wrapper, t); + }, _wrapNativeSuper(t); } /** @@ -355,7 +321,7 @@ var Plugins = /*#__PURE__*/function () { }); } }]); -}(); // JavaScript Expression Parser (JSEP) 1.3.8 +}(); // JavaScript Expression Parser (JSEP) 1.3.9 var Jsep = /*#__PURE__*/function () { /** * @param {string} expr a string with the passed in express @@ -743,6 +709,9 @@ var Jsep = /*#__PURE__*/function () { object: node, property: this.gobbleExpression() }; + if (!node.property) { + this.throwError('Unexpected "' + this["char"] + '"'); + } this.gobbleSpaces(); ch = this.code; if (ch !== Jsep.CBRACK_CODE) { @@ -1029,7 +998,7 @@ var Jsep = /*#__PURE__*/function () { */ function get() { // To be filled in by the template - return '1.3.8'; + return '1.3.9'; } /** @@ -1361,11 +1330,13 @@ Jsep.max_binop_len = Jsep.getMaxKeyLen(Jsep.binary_ops); var jsep = function jsep(expr) { return new Jsep(expr).parse(); }; -var staticMethods = Object.getOwnPropertyNames(Jsep); -staticMethods.forEach(function (m) { - if (jsep[m] === undefined && m !== 'prototype') { - jsep[m] = Jsep[m]; - } +var stdClassProps = Object.getOwnPropertyNames(/*#__PURE__*/_createClass(function Test() { + _classCallCheck(this, Test); +})); +Object.getOwnPropertyNames(Jsep).filter(function (prop) { + return !stdClassProps.includes(prop) && jsep[prop] === undefined; +}).forEach(function (m) { + jsep[m] = Jsep[m]; }); jsep.Jsep = Jsep; // allows for const { Jsep } = require('jsep'); @@ -1607,7 +1578,7 @@ var NewError = /*#__PURE__*/function (_Error) { } _inherits(NewError, _Error); return _createClass(NewError); -}( /*#__PURE__*/_wrapNativeSuper(Error)); +}(/*#__PURE__*/_wrapNativeSuper(Error)); /** * @typedef {PlainObject} ReturnObject * @property {string} path @@ -1926,7 +1897,7 @@ JSONPath.prototype._trace = function (expr, val, path, parent, parentPropName, c } else if (loc === '$') { // root only addRet(this._trace(x, val, path, null, null, callback, hasArrExpr)); - } else if (/^(\x2D?[0-9]*):(\x2D?[0-9]*):?([0-9]*)$/.test(loc)) { + } else if (/^(-?[0-9]*):(-?[0-9]*):?([0-9]*)$/.test(loc)) { // [start:end:step] Python slice syntax addRet(this._slice(loc, x, val, path, parent, parentPropName, callback)); } else if (loc.indexOf('?(') === 0) { @@ -2065,6 +2036,8 @@ JSONPath.prototype._trace = function (expr, val, path, parent, parentPropName, c ret[t] = tmp[0]; var tl = tmp.length; for (var tt = 1; tt < tl; tt++) { + // eslint-disable-next-line @stylistic/max-len -- Long + // eslint-disable-next-line sonarjs/updated-loop-counter -- Convenient t++; ret.splice(t, 0, tmp[tt]); } @@ -2267,6 +2240,8 @@ var moveToAnotherArray = function moveToAnotherArray(source, target, conditionCb for (var i = 0; i < il; i++) { var item = source[i]; if (conditionCb(item)) { + // eslint-disable-next-line @stylistic/max-len -- Long + // eslint-disable-next-line sonarjs/updated-loop-counter -- Convenient target.push(source.splice(i--, 1)[0]); } } @@ -2384,6 +2359,8 @@ var SafeEval = { if (ast.body[i].type === 'Identifier' && ['var', 'let', 'const'].includes(ast.body[i].name) && ast.body[i + 1] && ast.body[i + 1].type === 'AssignmentExpression') { // var x=2; is detected as // [{Identifier var}, {AssignmentExpression x=2}] + // eslint-disable-next-line @stylistic/max-len -- Long + // eslint-disable-next-line sonarjs/updated-loop-counter -- Convenient i += 1; } var expr = ast.body[i]; diff --git a/dist/index-browser-esm.min.js b/dist/index-browser-esm.min.js index a045306..ba77c53 100644 --- a/dist/index-browser-esm.min.js +++ b/dist/index-browser-esm.min.js @@ -1,2 +1,2 @@ -function e(e,t,n){return t=l(t),function(e,t){if(t&&("object"==typeof t||"function"==typeof t))return t;if(void 0!==t)throw new TypeError("Derived constructors may only return object or undefined");return function(e){if(void 0===e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}(e)}(e,r()?Reflect.construct(t,n||[],l(e).constructor):t.apply(e,n))}function t(e,t,n){if(r())return Reflect.construct.apply(null,arguments);var i=[null];i.push.apply(i,t);var o=new(e.bind.apply(e,i));return n&&h(o,n.prototype),o}function r(){try{var e=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){})))}catch(e){}return(r=function(){return!!e})()}function n(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function i(e){var t=function(e,t){if("object"!=typeof e||!e)return e;var r=e[Symbol.toPrimitive];if(void 0!==r){var n=r.call(e,t||"default");if("object"!=typeof n)return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return("string"===t?String:Number)(e)}(e,"string");return"symbol"==typeof t?t:t+""}function o(e){return o="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},o(e)}function a(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function s(e,t){for(var r=0;re.length)&&(t=e.length);for(var r=0,n=new Array(t);r0;){if(e.binary_ops.hasOwnProperty(t)&&(!e.isIdentifierStart(this.code)||this.index+t.length2&&(l=i[i.length-2],o.right_a&&l.right_a?n>l.prec:n<=l.prec);)s=i.pop(),r=i.pop().value,a=i.pop(),t={type:e.BINARY_EXP,operator:r,left:a,right:s},i.push(t);(t=this.gobbleToken())||this.throwError("Expected expression after "+c),i.push(o,t)}for(t=i[u=i.length-1];u>1;)t={type:e.BINARY_EXP,operator:i[u-1].value,left:i[u-2],right:t},u-=2;return t}},{key:"gobbleToken",value:function(){var t,r,n,i;if(this.gobbleSpaces(),i=this.searchHook("gobble-token"))return this.runHook("after-token",i);if(t=this.code,e.isDecimalDigit(t)||t===e.PERIOD_CODE)return this.gobbleNumericLiteral();if(t===e.SQUOTE_CODE||t===e.DQUOTE_CODE)i=this.gobbleStringLiteral();else if(t===e.OBRACK_CODE)i=this.gobbleArray();else{for(n=(r=this.expr.substr(this.index,e.max_unop_len)).length;n>0;){if(e.unary_ops.hasOwnProperty(r)&&(!e.isIdentifierStart(this.code)||this.index+r.length=r.length&&this.throwError("Unexpected token "+String.fromCharCode(t));break}if(o===e.COMMA_CODE){if(this.index++,++i!==r.length)if(t===e.CPAREN_CODE)this.throwError("Unexpected token ,");else if(t===e.CBRACK_CODE)for(var a=r.length;a=48&&e<=57}},{key:"binaryPrecedence",value:function(t){return e.binary_ops[t]||0}},{key:"isIdentifierStart",value:function(t){return t>=65&&t<=90||t>=97&&t<=122||t>=128&&!e.binary_ops[String.fromCharCode(t)]||e.additional_identifier_chars.has(String.fromCharCode(t))}},{key:"isIdentifierPart",value:function(t){return e.isIdentifierStart(t)||e.isDecimalDigit(t)}}])}(),g=new b;Object.assign(E,{hooks:g,plugins:new v(E),COMPOUND:"Compound",SEQUENCE_EXP:"SequenceExpression",IDENTIFIER:"Identifier",MEMBER_EXP:"MemberExpression",LITERAL:"Literal",THIS_EXP:"ThisExpression",CALL_EXP:"CallExpression",UNARY_EXP:"UnaryExpression",BINARY_EXP:"BinaryExpression",ARRAY_EXP:"ArrayExpression",TAB_CODE:9,LF_CODE:10,CR_CODE:13,SPACE_CODE:32,PERIOD_CODE:46,COMMA_CODE:44,SQUOTE_CODE:39,DQUOTE_CODE:34,OPAREN_CODE:40,CPAREN_CODE:41,OBRACK_CODE:91,CBRACK_CODE:93,QUMARK_CODE:63,SEMCOL_CODE:59,COLON_CODE:58,unary_ops:{"-":1,"!":1,"~":1,"+":1},binary_ops:{"||":1,"&&":2,"|":3,"^":4,"&":5,"==":6,"!=":6,"===":6,"!==":6,"<":7,">":7,"<=":7,">=":7,"<<":8,">>":8,">>>":8,"+":9,"-":9,"*":10,"/":10,"%":10},right_associative:new Set,additional_identifier_chars:new Set(["$","_"]),literals:{true:!0,false:!1,null:null},this_str:"this"}),E.max_unop_len=E.getMaxKeyLen(E.unary_ops),E.max_binop_len=E.getMaxKeyLen(E.binary_ops);var x=function(e){return new E(e).parse()};Object.getOwnPropertyNames(E).forEach((function(e){void 0===x[e]&&"prototype"!==e&&(x[e]=E[e])})),x.Jsep=E;var F={name:"ternary",init:function(e){e.hooks.add("after-expression",(function(t){if(t.node&&this.code===e.QUMARK_CODE){this.index++;var r=t.node,n=this.gobbleExpression();if(n||this.throwError("Expected expression"),this.gobbleSpaces(),this.code===e.COLON_CODE){this.index++;var i=this.gobbleExpression();if(i||this.throwError("Expected expression"),t.node={type:"ConditionalExpression",test:r,consequent:n,alternate:i},r.operator&&e.binary_ops[r.operator]<=.9){for(var o=r;o.right.operator&&e.binary_ops[o.right.operator]<=.9;)o=o.right;t.node.test=o.right,o.right=t.node,t.node=r}}else this.throwError("Expected :")}}))}};x.plugins.register(F);var D={name:"regex",init:function(e){e.hooks.add("gobble-token",(function(t){if(47===this.code){for(var r=++this.index,n=!1;this.index=97&&a<=122||a>=65&&a<=90||a>=48&&a<=57))break;o+=this.char}var s=void 0;try{s=new RegExp(i,o)}catch(e){this.throwError(e.message)}return t.node={type:e.LITERAL,value:s,raw:this.expr.slice(r-1,this.index)},t.node=this.gobbleTokenProperty(t.node),t.node}this.code===e.OBRACK_CODE?n=!0:n&&this.code===e.CBRACK_CODE&&(n=!1),this.index+=92===this.code?2:1}this.throwError("Unclosed Regex")}}))}},_={name:"assignment",assignmentOperators:new Set(["=","*=","**=","/=","%=","+=","-=","<<=",">>=",">>>=","&=","^=","|="]),updateOperators:[43,45],assignmentPrecedence:.9,init:function(e){var t=[e.IDENTIFIER,e.MEMBER_EXP];function r(e){_.assignmentOperators.has(e.operator)?(e.type="AssignmentExpression",r(e.left),r(e.right)):e.operator||Object.values(e).forEach((function(e){e&&"object"===o(e)&&r(e)}))}_.assignmentOperators.forEach((function(t){return e.addBinaryOp(t,_.assignmentPrecedence,!0)})),e.hooks.add("gobble-token",(function(e){var r=this,n=this.code;_.updateOperators.some((function(e){return e===n&&e===r.expr.charCodeAt(r.index+1)}))&&(this.index+=2,e.node={type:"UpdateExpression",operator:43===n?"++":"--",argument:this.gobbleTokenProperty(this.gobbleIdentifier()),prefix:!0},e.node.argument&&t.includes(e.node.argument.type)||this.throwError("Unexpected ".concat(e.node.operator)))})),e.hooks.add("after-token",(function(e){var r=this;if(e.node){var n=this.code;_.updateOperators.some((function(e){return e===n&&e===r.expr.charCodeAt(r.index+1)}))&&(t.includes(e.node.type)||this.throwError("Unexpected ".concat(e.node.operator)),this.index+=2,e.node={type:"UpdateExpression",operator:43===n?"++":"--",argument:e.node,prefix:!1})}})),e.hooks.add("after-expression",(function(e){e.node&&r(e.node)}))}},m=Object.prototype.hasOwnProperty;function C(e,t){return(e=e.slice()).push(t),e}function O(e,t){return(t=t.slice()).unshift(e),t}var A=function(t){function r(t){var n;return a(this,r),(n=e(this,r,['JSONPath should not be called with "new" (it prevents return of (unwrapped) scalar values)'])).avoidNew=!0,n.value=t,n.name="NewError",n}return function(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),Object.defineProperty(e,"prototype",{writable:!1}),t&&h(e,t)}(r,p(Error)),u(r)}();function w(e,t,r,n,i){if(!(this instanceof w))try{return new w(e,t,r,n,i)}catch(e){if(!e.avoidNew)throw e;return e.value}"string"==typeof e&&(i=n,n=r,r=t,t=e,e=null);var a=e&&"object"===o(e);if(e=e||{},this.json=e.json||r,this.path=e.path||t,this.resultType=e.resultType||"value",this.flatten=e.flatten||!1,this.wrap=!m.call(e,"wrap")||e.wrap,this.sandbox=e.sandbox||{},this.eval=void 0===e.eval?"safe":e.eval,this.ignoreEvalErrors=void 0!==e.ignoreEvalErrors&&e.ignoreEvalErrors,this.parent=e.parent||null,this.parentProperty=e.parentProperty||null,this.callback=e.callback||n||null,this.otherTypeCallback=e.otherTypeCallback||i||function(){throw new TypeError("You must supply an otherTypeCallback callback option with the @other() operator.")},!1!==e.autostart){var s={path:a?e.path:t};a?"json"in e&&(s.json=e.json):s.json=r;var u=this.evaluate(s);if(!u||"object"!==o(u))throw new A(u);return u}}w.prototype.evaluate=function(e,t,r,n){var i=this,a=this.parent,s=this.parentProperty,u=this.flatten,c=this.wrap;if(this.currResultType=this.resultType,this.currEval=this.eval,this.currSandbox=this.sandbox,r=r||this.callback,this.currOtherTypeCallback=n||this.otherTypeCallback,t=t||this.json,(e=e||this.path)&&"object"===o(e)&&!Array.isArray(e)){if(!e.path&&""!==e.path)throw new TypeError('You must supply a "path" property when providing an object argument to JSONPath.evaluate().');if(!m.call(e,"json"))throw new TypeError('You must supply a "json" property when providing an object argument to JSONPath.evaluate().');t=e.json,u=m.call(e,"flatten")?e.flatten:u,this.currResultType=m.call(e,"resultType")?e.resultType:this.currResultType,this.currSandbox=m.call(e,"sandbox")?e.sandbox:this.currSandbox,c=m.call(e,"wrap")?e.wrap:c,this.currEval=m.call(e,"eval")?e.eval:this.currEval,r=m.call(e,"callback")?e.callback:r,this.currOtherTypeCallback=m.call(e,"otherTypeCallback")?e.otherTypeCallback:this.currOtherTypeCallback,a=m.call(e,"parent")?e.parent:a,s=m.call(e,"parentProperty")?e.parentProperty:s,e=e.path}if(a=a||null,s=s||null,Array.isArray(e)&&(e=w.toPathString(e)),(e||""===e)&&t){var l=w.toPathArray(e);"$"===l[0]&&l.length>1&&l.shift(),this._hasParentSelector=null;var h=this._trace(l,t,["$"],a,s,r).filter((function(e){return e&&!e.isParentSelector}));return h.length?c||1!==h.length||h[0].hasArrExpr?h.reduce((function(e,t){var r=i._getPreferredOutput(t);return u&&Array.isArray(r)?e=e.concat(r):e.push(r),e}),[]):this._getPreferredOutput(h[0]):c?[]:void 0}},w.prototype._getPreferredOutput=function(e){var t=this.currResultType;switch(t){case"all":var r=Array.isArray(e.path)?e.path:w.toPathArray(e.path);return e.pointer=w.toPointer(r),e.path="string"==typeof e.path?e.path:w.toPathString(e.path),e;case"value":case"parent":case"parentProperty":return e[t];case"path":return w.toPathString(e[t]);case"pointer":return w.toPointer(e.path);default:throw new TypeError("Unknown result type")}},w.prototype._handleCallback=function(e,t,r){if(t){var n=this._getPreferredOutput(e);e.path="string"==typeof e.path?e.path:w.toPathString(e.path),t(n,r,e)}},w.prototype._trace=function(e,t,r,n,i,a,s,u){var c,l=this;if(!e.length)return c={path:r,value:t,parent:n,parentProperty:i,hasArrExpr:s},this._handleCallback(c,a,"value"),c;var h=e[0],p=e.slice(1),f=[];function y(e){Array.isArray(e)?e.forEach((function(e){f.push(e)})):f.push(e)}if(("string"!=typeof h||u)&&t&&m.call(t,h))y(this._trace(p,t[h],C(r,h),t,h,a,s));else if("*"===h)this._walk(t,(function(e){y(l._trace(p,t[e],C(r,e),t,e,a,!0,!0))}));else if(".."===h)y(this._trace(p,t,r,n,i,a,s)),this._walk(t,(function(n){"object"===o(t[n])&&y(l._trace(e.slice(),t[n],C(r,n),t,n,a,!0))}));else{if("^"===h)return this._hasParentSelector=!0,{path:r.slice(0,-1),expr:p,isParentSelector:!0};if("~"===h)return c={path:C(r,h),value:i,parent:n,parentProperty:null},this._handleCallback(c,a,"property"),c;if("$"===h)y(this._trace(p,t,r,null,null,a,s));else if(/^(\x2D?[0-9]*):(\x2D?[0-9]*):?([0-9]*)$/.test(h))y(this._slice(h,p,t,r,n,i,a));else if(0===h.indexOf("?(")){if(!1===this.currEval)throw new Error("Eval [?(expr)] prevented in JSONPath expression.");var b=h.replace(/^\?\(((?:[\0-\t\x0B\f\x0E-\u2027\u202A-\uD7FF\uE000-\uFFFF]|[\uD800-\uDBFF][\uDC00-\uDFFF]|[\uD800-\uDBFF](?![\uDC00-\uDFFF])|(?:[^\uD800-\uDBFF]|^)[\uDC00-\uDFFF])*?)\)$/,"$1"),v=/@(?:[\0-\t\x0B\f\x0E-\u2027\u202A-\uD7FF\uE000-\uFFFF]|[\uD800-\uDBFF][\uDC00-\uDFFF]|[\uD800-\uDBFF](?![\uDC00-\uDFFF])|(?:[^\uD800-\uDBFF]|^)[\uDC00-\uDFFF])?((?:[\0->@-\uD7FF\uE000-\uFFFF]|[\uD800-\uDBFF][\uDC00-\uDFFF]|[\uD800-\uDBFF](?![\uDC00-\uDFFF])|(?:[^\uD800-\uDBFF]|^)[\uDC00-\uDFFF])*)['\[](\??\((?:[\0-\t\x0B\f\x0E-\u2027\u202A-\uD7FF\uE000-\uFFFF]|[\uD800-\uDBFF][\uDC00-\uDFFF]|[\uD800-\uDBFF](?![\uDC00-\uDFFF])|(?:[^\uD800-\uDBFF]|^)[\uDC00-\uDFFF])*?\))(?!(?:[\0-\t\x0B\f\x0E-\u2027\u202A-\uD7FF\uE000-\uFFFF]|[\uD800-\uDBFF][\uDC00-\uDFFF]|[\uD800-\uDBFF](?![\uDC00-\uDFFF])|(?:[^\uD800-\uDBFF]|^)[\uDC00-\uDFFF])\)\])['\]]/g.exec(b);v?this._walk(t,(function(e){var o=[v[2]],s=v[1]?t[e][v[1]]:t[e];l._trace(o,s,r,n,i,a,!0).length>0&&y(l._trace(p,t[e],C(r,e),t,e,a,!0))})):this._walk(t,(function(e){l._eval(b,t[e],e,r,n,i)&&y(l._trace(p,t[e],C(r,e),t,e,a,!0))}))}else if("("===h[0]){if(!1===this.currEval)throw new Error("Eval [(expr)] prevented in JSONPath expression.");y(this._trace(O(this._eval(h,t,r[r.length-1],r.slice(0,-1),n,i),p),t,r,n,i,a,s))}else if("@"===h[0]){var E=!1,g=h.slice(1,-2);switch(g){case"scalar":t&&["object","function"].includes(o(t))||(E=!0);break;case"boolean":case"string":case"undefined":case"function":o(t)===g&&(E=!0);break;case"integer":!Number.isFinite(t)||t%1||(E=!0);break;case"number":Number.isFinite(t)&&(E=!0);break;case"nonFinite":"number"!=typeof t||Number.isFinite(t)||(E=!0);break;case"object":t&&o(t)===g&&(E=!0);break;case"array":Array.isArray(t)&&(E=!0);break;case"other":E=this.currOtherTypeCallback(t,r,n,i);break;case"null":null===t&&(E=!0);break;default:throw new TypeError("Unknown value type "+g)}if(E)return c={path:r,value:t,parent:n,parentProperty:i},this._handleCallback(c,a,"value"),c}else if("`"===h[0]&&t&&m.call(t,h.slice(1))){var x=h.slice(1);y(this._trace(p,t[x],C(r,x),t,x,a,s,!0))}else if(h.includes(",")){var F,D=function(e,t){var r="undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(!r){if(Array.isArray(e)||(r=d(e))||t&&e&&"number"==typeof e.length){r&&(e=r);var n=0,i=function(){};return{s:i,n:function(){return n>=e.length?{done:!0}:{done:!1,value:e[n++]}},e:function(e){throw e},f:i}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var o,a=!0,s=!1;return{s:function(){r=r.call(e)},n:function(){var e=r.next();return a=e.done,e},e:function(e){s=!0,o=e},f:function(){try{a||null==r.return||r.return()}finally{if(s)throw o}}}}(h.split(","));try{for(D.s();!(F=D.n()).done;){var _=F.value;y(this._trace(O(_,p),t,r,n,i,a,!0))}}catch(e){D.e(e)}finally{D.f()}}else!u&&t&&m.call(t,h)&&y(this._trace(p,t[h],C(r,h),t,h,a,s,!0))}if(this._hasParentSelector)for(var A=0;A":function(e,t){return e>t()},"<=":function(e,t){return e<=t()},">=":function(e,t){return e>=t()},"<<":function(e,t){return e<>":function(e,t){return e>>t()},">>>":function(e,t){return e>>>t()},"+":function(e,t){return e+t()},"-":function(e,t){return e-t()},"*":function(e,t){return e*t()},"/":function(e,t){return e/t()},"%":function(e,t){return e%t()}}[e.operator](k.evalAst(e.left,t),(function(){return k.evalAst(e.right,t)}))},evalCompound:function(e,t){for(var r,n=0;n-1?r.slice(0,s+1)+" return "+r.slice(s+1):" return "+r;return t(Function,n.concat([u])).apply(void 0,f(o))}}])}();w.prototype.vm={Script:S},w.prototype.safeVm={Script:P};export{w as JSONPath,P as SafeScript}; +function e(e,t){(null==t||t>e.length)&&(t=e.length);for(var r=0,n=Array(t);r0;){if(e.binary_ops.hasOwnProperty(t)&&(!e.isIdentifierStart(this.code)||this.index+t.length2&&(l=i[i.length-2],o.right_a&&l.right_a?n>l.prec:n<=l.prec);)s=i.pop(),r=i.pop().value,a=i.pop(),t={type:e.BINARY_EXP,operator:r,left:a,right:s},i.push(t);(t=this.gobbleToken())||this.throwError("Expected expression after "+c),i.push(o,t)}for(t=i[u=i.length-1];u>1;)t={type:e.BINARY_EXP,operator:i[u-1].value,left:i[u-2],right:t},u-=2;return t}},{key:"gobbleToken",value:function(){var t,r,n,i;if(this.gobbleSpaces(),i=this.searchHook("gobble-token"))return this.runHook("after-token",i);if(t=this.code,e.isDecimalDigit(t)||t===e.PERIOD_CODE)return this.gobbleNumericLiteral();if(t===e.SQUOTE_CODE||t===e.DQUOTE_CODE)i=this.gobbleStringLiteral();else if(t===e.OBRACK_CODE)i=this.gobbleArray();else{for(n=(r=this.expr.substr(this.index,e.max_unop_len)).length;n>0;){if(e.unary_ops.hasOwnProperty(r)&&(!e.isIdentifierStart(this.code)||this.index+r.length=r.length&&this.throwError("Unexpected token "+String.fromCharCode(t));break}if(o===e.COMMA_CODE){if(this.index++,++i!==r.length)if(t===e.CPAREN_CODE)this.throwError("Unexpected token ,");else if(t===e.CBRACK_CODE)for(var a=r.length;a=48&&e<=57}},{key:"binaryPrecedence",value:function(t){return e.binary_ops[t]||0}},{key:"isIdentifierStart",value:function(t){return t>=65&&t<=90||t>=97&&t<=122||t>=128&&!e.binary_ops[String.fromCharCode(t)]||e.additional_identifier_chars.has(String.fromCharCode(t))}},{key:"isIdentifierPart",value:function(t){return e.isIdentifierStart(t)||e.isDecimalDigit(t)}}])}(),g=new b;Object.assign(E,{hooks:g,plugins:new v(E),COMPOUND:"Compound",SEQUENCE_EXP:"SequenceExpression",IDENTIFIER:"Identifier",MEMBER_EXP:"MemberExpression",LITERAL:"Literal",THIS_EXP:"ThisExpression",CALL_EXP:"CallExpression",UNARY_EXP:"UnaryExpression",BINARY_EXP:"BinaryExpression",ARRAY_EXP:"ArrayExpression",TAB_CODE:9,LF_CODE:10,CR_CODE:13,SPACE_CODE:32,PERIOD_CODE:46,COMMA_CODE:44,SQUOTE_CODE:39,DQUOTE_CODE:34,OPAREN_CODE:40,CPAREN_CODE:41,OBRACK_CODE:91,CBRACK_CODE:93,QUMARK_CODE:63,SEMCOL_CODE:59,COLON_CODE:58,unary_ops:{"-":1,"!":1,"~":1,"+":1},binary_ops:{"||":1,"&&":2,"|":3,"^":4,"&":5,"==":6,"!=":6,"===":6,"!==":6,"<":7,">":7,"<=":7,">=":7,"<<":8,">>":8,">>>":8,"+":9,"-":9,"*":10,"/":10,"%":10},right_associative:new Set,additional_identifier_chars:new Set(["$","_"]),literals:{true:!0,false:!1,null:null},this_str:"this"}),E.max_unop_len=E.getMaxKeyLen(E.unary_ops),E.max_binop_len=E.getMaxKeyLen(E.binary_ops);var x=function(e){return new E(e).parse()},F=Object.getOwnPropertyNames(o((function e(){r(this,e)})));Object.getOwnPropertyNames(E).filter((function(e){return!F.includes(e)&&void 0===x[e]})).forEach((function(e){x[e]=E[e]})),x.Jsep=E;var D={name:"ternary",init:function(e){e.hooks.add("after-expression",(function(t){if(t.node&&this.code===e.QUMARK_CODE){this.index++;var r=t.node,n=this.gobbleExpression();if(n||this.throwError("Expected expression"),this.gobbleSpaces(),this.code===e.COLON_CODE){this.index++;var i=this.gobbleExpression();if(i||this.throwError("Expected expression"),t.node={type:"ConditionalExpression",test:r,consequent:n,alternate:i},r.operator&&e.binary_ops[r.operator]<=.9){for(var o=r;o.right.operator&&e.binary_ops[o.right.operator]<=.9;)o=o.right;t.node.test=o.right,o.right=t.node,t.node=r}}else this.throwError("Expected :")}}))}};x.plugins.register(D);var _={name:"regex",init:function(e){e.hooks.add("gobble-token",(function(t){if(47===this.code){for(var r=++this.index,n=!1;this.index=97&&a<=122||a>=65&&a<=90||a>=48&&a<=57))break;o+=this.char}var s=void 0;try{s=new RegExp(i,o)}catch(e){this.throwError(e.message)}return t.node={type:e.LITERAL,value:s,raw:this.expr.slice(r-1,this.index)},t.node=this.gobbleTokenProperty(t.node),t.node}this.code===e.OBRACK_CODE?n=!0:n&&this.code===e.CBRACK_CODE&&(n=!1),this.index+=92===this.code?2:1}this.throwError("Unclosed Regex")}}))}},m={name:"assignment",assignmentOperators:new Set(["=","*=","**=","/=","%=","+=","-=","<<=",">>=",">>>=","&=","^=","|="]),updateOperators:[43,45],assignmentPrecedence:.9,init:function(e){var t=[e.IDENTIFIER,e.MEMBER_EXP];function r(e){m.assignmentOperators.has(e.operator)?(e.type="AssignmentExpression",r(e.left),r(e.right)):e.operator||Object.values(e).forEach((function(e){e&&"object"===f(e)&&r(e)}))}m.assignmentOperators.forEach((function(t){return e.addBinaryOp(t,m.assignmentPrecedence,!0)})),e.hooks.add("gobble-token",(function(e){var r=this,n=this.code;m.updateOperators.some((function(e){return e===n&&e===r.expr.charCodeAt(r.index+1)}))&&(this.index+=2,e.node={type:"UpdateExpression",operator:43===n?"++":"--",argument:this.gobbleTokenProperty(this.gobbleIdentifier()),prefix:!0},e.node.argument&&t.includes(e.node.argument.type)||this.throwError("Unexpected ".concat(e.node.operator)))})),e.hooks.add("after-token",(function(e){var r=this;if(e.node){var n=this.code;m.updateOperators.some((function(e){return e===n&&e===r.expr.charCodeAt(r.index+1)}))&&(t.includes(e.node.type)||this.throwError("Unexpected ".concat(e.node.operator)),this.index+=2,e.node={type:"UpdateExpression",operator:43===n?"++":"--",argument:e.node,prefix:!1})}})),e.hooks.add("after-expression",(function(e){e.node&&r(e.node)}))}},C=Object.prototype.hasOwnProperty;function O(e,t){return(e=e.slice()).push(t),e}function A(e,t){return(t=t.slice()).unshift(e),t}var w=function(e){function n(e){var i;return r(this,n),(i=t(this,n,['JSONPath should not be called with "new" (it prevents return of (unwrapped) scalar values)'])).avoidNew=!0,i.value=e,i.name="NewError",i}return function(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),Object.defineProperty(e,"prototype",{writable:!1}),t&&l(e,t)}(n,y(Error)),o(n)}();function k(e,t,r,n,i){if(!(this instanceof k))try{return new k(e,t,r,n,i)}catch(e){if(!e.avoidNew)throw e;return e.value}"string"==typeof e&&(i=n,n=r,r=t,t=e,e=null);var o=e&&"object"===f(e);if(e=e||{},this.json=e.json||r,this.path=e.path||t,this.resultType=e.resultType||"value",this.flatten=e.flatten||!1,this.wrap=!C.call(e,"wrap")||e.wrap,this.sandbox=e.sandbox||{},this.eval=void 0===e.eval?"safe":e.eval,this.ignoreEvalErrors=void 0!==e.ignoreEvalErrors&&e.ignoreEvalErrors,this.parent=e.parent||null,this.parentProperty=e.parentProperty||null,this.callback=e.callback||n||null,this.otherTypeCallback=e.otherTypeCallback||i||function(){throw new TypeError("You must supply an otherTypeCallback callback option with the @other() operator.")},!1!==e.autostart){var a={path:o?e.path:t};o?"json"in e&&(a.json=e.json):a.json=r;var s=this.evaluate(a);if(!s||"object"!==f(s))throw new w(s);return s}}k.prototype.evaluate=function(e,t,r,n){var i=this,o=this.parent,a=this.parentProperty,s=this.flatten,u=this.wrap;if(this.currResultType=this.resultType,this.currEval=this.eval,this.currSandbox=this.sandbox,r=r||this.callback,this.currOtherTypeCallback=n||this.otherTypeCallback,t=t||this.json,(e=e||this.path)&&"object"===f(e)&&!Array.isArray(e)){if(!e.path&&""!==e.path)throw new TypeError('You must supply a "path" property when providing an object argument to JSONPath.evaluate().');if(!C.call(e,"json"))throw new TypeError('You must supply a "json" property when providing an object argument to JSONPath.evaluate().');t=e.json,s=C.call(e,"flatten")?e.flatten:s,this.currResultType=C.call(e,"resultType")?e.resultType:this.currResultType,this.currSandbox=C.call(e,"sandbox")?e.sandbox:this.currSandbox,u=C.call(e,"wrap")?e.wrap:u,this.currEval=C.call(e,"eval")?e.eval:this.currEval,r=C.call(e,"callback")?e.callback:r,this.currOtherTypeCallback=C.call(e,"otherTypeCallback")?e.otherTypeCallback:this.currOtherTypeCallback,o=C.call(e,"parent")?e.parent:o,a=C.call(e,"parentProperty")?e.parentProperty:a,e=e.path}if(o=o||null,a=a||null,Array.isArray(e)&&(e=k.toPathString(e)),(e||""===e)&&t){var c=k.toPathArray(e);"$"===c[0]&&c.length>1&&c.shift(),this._hasParentSelector=null;var l=this._trace(c,t,["$"],o,a,r).filter((function(e){return e&&!e.isParentSelector}));return l.length?u||1!==l.length||l[0].hasArrExpr?l.reduce((function(e,t){var r=i._getPreferredOutput(t);return s&&Array.isArray(r)?e=e.concat(r):e.push(r),e}),[]):this._getPreferredOutput(l[0]):u?[]:void 0}},k.prototype._getPreferredOutput=function(e){var t=this.currResultType;switch(t){case"all":var r=Array.isArray(e.path)?e.path:k.toPathArray(e.path);return e.pointer=k.toPointer(r),e.path="string"==typeof e.path?e.path:k.toPathString(e.path),e;case"value":case"parent":case"parentProperty":return e[t];case"path":return k.toPathString(e[t]);case"pointer":return k.toPointer(e.path);default:throw new TypeError("Unknown result type")}},k.prototype._handleCallback=function(e,t,r){if(t){var n=this._getPreferredOutput(e);e.path="string"==typeof e.path?e.path:k.toPathString(e.path),t(n,r,e)}},k.prototype._trace=function(e,t,r,n,i,o,a,s){var u,c=this;if(!e.length)return u={path:r,value:t,parent:n,parentProperty:i,hasArrExpr:a},this._handleCallback(u,o,"value"),u;var l=e[0],h=e.slice(1),p=[];function y(e){Array.isArray(e)?e.forEach((function(e){p.push(e)})):p.push(e)}if(("string"!=typeof l||s)&&t&&C.call(t,l))y(this._trace(h,t[l],O(r,l),t,l,o,a));else if("*"===l)this._walk(t,(function(e){y(c._trace(h,t[e],O(r,e),t,e,o,!0,!0))}));else if(".."===l)y(this._trace(h,t,r,n,i,o,a)),this._walk(t,(function(n){"object"===f(t[n])&&y(c._trace(e.slice(),t[n],O(r,n),t,n,o,!0))}));else{if("^"===l)return this._hasParentSelector=!0,{path:r.slice(0,-1),expr:h,isParentSelector:!0};if("~"===l)return u={path:O(r,l),value:i,parent:n,parentProperty:null},this._handleCallback(u,o,"property"),u;if("$"===l)y(this._trace(h,t,r,null,null,o,a));else if(/^(-?[0-9]*):(-?[0-9]*):?([0-9]*)$/.test(l))y(this._slice(l,h,t,r,n,i,o));else if(0===l.indexOf("?(")){if(!1===this.currEval)throw new Error("Eval [?(expr)] prevented in JSONPath expression.");var b=l.replace(/^\?\(((?:[\0-\t\x0B\f\x0E-\u2027\u202A-\uD7FF\uE000-\uFFFF]|[\uD800-\uDBFF][\uDC00-\uDFFF]|[\uD800-\uDBFF](?![\uDC00-\uDFFF])|(?:[^\uD800-\uDBFF]|^)[\uDC00-\uDFFF])*?)\)$/,"$1"),v=/@(?:[\0-\t\x0B\f\x0E-\u2027\u202A-\uD7FF\uE000-\uFFFF]|[\uD800-\uDBFF][\uDC00-\uDFFF]|[\uD800-\uDBFF](?![\uDC00-\uDFFF])|(?:[^\uD800-\uDBFF]|^)[\uDC00-\uDFFF])?((?:[\0->@-\uD7FF\uE000-\uFFFF]|[\uD800-\uDBFF][\uDC00-\uDFFF]|[\uD800-\uDBFF](?![\uDC00-\uDFFF])|(?:[^\uD800-\uDBFF]|^)[\uDC00-\uDFFF])*)['\[](\??\((?:[\0-\t\x0B\f\x0E-\u2027\u202A-\uD7FF\uE000-\uFFFF]|[\uD800-\uDBFF][\uDC00-\uDFFF]|[\uD800-\uDBFF](?![\uDC00-\uDFFF])|(?:[^\uD800-\uDBFF]|^)[\uDC00-\uDFFF])*?\))(?!(?:[\0-\t\x0B\f\x0E-\u2027\u202A-\uD7FF\uE000-\uFFFF]|[\uD800-\uDBFF][\uDC00-\uDFFF]|[\uD800-\uDBFF](?![\uDC00-\uDFFF])|(?:[^\uD800-\uDBFF]|^)[\uDC00-\uDFFF])\)\])['\]]/g.exec(b);v?this._walk(t,(function(e){var a=[v[2]],s=v[1]?t[e][v[1]]:t[e];c._trace(a,s,r,n,i,o,!0).length>0&&y(c._trace(h,t[e],O(r,e),t,e,o,!0))})):this._walk(t,(function(e){c._eval(b,t[e],e,r,n,i)&&y(c._trace(h,t[e],O(r,e),t,e,o,!0))}))}else if("("===l[0]){if(!1===this.currEval)throw new Error("Eval [(expr)] prevented in JSONPath expression.");y(this._trace(A(this._eval(l,t,r[r.length-1],r.slice(0,-1),n,i),h),t,r,n,i,o,a))}else if("@"===l[0]){var E=!1,g=l.slice(1,-2);switch(g){case"scalar":t&&["object","function"].includes(f(t))||(E=!0);break;case"boolean":case"string":case"undefined":case"function":f(t)===g&&(E=!0);break;case"integer":!Number.isFinite(t)||t%1||(E=!0);break;case"number":Number.isFinite(t)&&(E=!0);break;case"nonFinite":"number"!=typeof t||Number.isFinite(t)||(E=!0);break;case"object":t&&f(t)===g&&(E=!0);break;case"array":Array.isArray(t)&&(E=!0);break;case"other":E=this.currOtherTypeCallback(t,r,n,i);break;case"null":null===t&&(E=!0);break;default:throw new TypeError("Unknown value type "+g)}if(E)return u={path:r,value:t,parent:n,parentProperty:i},this._handleCallback(u,o,"value"),u}else if("`"===l[0]&&t&&C.call(t,l.slice(1))){var x=l.slice(1);y(this._trace(h,t[x],O(r,x),t,x,o,a,!0))}else if(l.includes(",")){var F,D=function(e,t){var r="undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(!r){if(Array.isArray(e)||(r=d(e))||t){r&&(e=r);var n=0,i=function(){};return{s:i,n:function(){return n>=e.length?{done:!0}:{done:!1,value:e[n++]}},e:function(e){throw e},f:i}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var o,a=!0,s=!1;return{s:function(){r=r.call(e)},n:function(){var e=r.next();return a=e.done,e},e:function(e){s=!0,o=e},f:function(){try{a||null==r.return||r.return()}finally{if(s)throw o}}}}(l.split(","));try{for(D.s();!(F=D.n()).done;){var _=F.value;y(this._trace(A(_,h),t,r,n,i,o,!0))}}catch(e){D.e(e)}finally{D.f()}}else!s&&t&&C.call(t,l)&&y(this._trace(h,t[l],O(r,l),t,l,o,a,!0))}if(this._hasParentSelector)for(var m=0;m":function(e,t){return e>t()},"<=":function(e,t){return e<=t()},">=":function(e,t){return e>=t()},"<<":function(e,t){return e<>":function(e,t){return e>>t()},">>>":function(e,t){return e>>>t()},"+":function(e,t){return e+t()},"-":function(e,t){return e-t()},"*":function(e,t){return e*t()},"/":function(e,t){return e/t()},"%":function(e,t){return e%t()}}[e.operator](P.evalAst(e.left,t),(function(){return P.evalAst(e.right,t)}))},evalCompound:function(e,t){for(var r,n=0;n-1?t.slice(0,s+1)+" return "+t.slice(s+1):" return "+t;return n(Function,r.concat([u])).apply(void 0,h(o))}}])}();k.prototype.vm={Script:B},k.prototype.safeVm={Script:S};export{k as JSONPath,S as SafeScript}; //# sourceMappingURL=index-browser-esm.min.js.map diff --git a/dist/index-browser-esm.min.js.map b/dist/index-browser-esm.min.js.map index 3ba4012..9529cf9 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":["../node_modules/.pnpm/jsep@1.3.8/node_modules/jsep/dist/jsep.js","../node_modules/.pnpm/@jsep-plugin+regex@1.0.3_jsep@1.3.8/node_modules/@jsep-plugin/regex/dist/index.js","../node_modules/.pnpm/@jsep-plugin+assignment@1.2.1_jsep@1.3.8/node_modules/@jsep-plugin/assignment/dist/index.js","../src/jsonpath.js","../src/jsonpath-browser.js"],"sourcesContent":["/**\n * @implements {IHooks}\n */\nclass Hooks {\n\t/**\n\t * @callback HookCallback\n\t * @this {*|Jsep} this\n\t * @param {Jsep} env\n\t * @returns: void\n\t */\n\t/**\n\t * Adds the given callback to the list of callbacks for the given hook.\n\t *\n\t * The callback will be invoked when the hook it is registered for is run.\n\t *\n\t * One callback function can be registered to multiple hooks and the same hook multiple times.\n\t *\n\t * @param {string|object} name The name of the hook, or an object of callbacks keyed by name\n\t * @param {HookCallback|boolean} callback The callback function which is given environment variables.\n\t * @param {?boolean} [first=false] Will add the hook to the top of the list (defaults to the bottom)\n\t * @public\n\t */\n\tadd(name, callback, first) {\n\t\tif (typeof arguments[0] != 'string') {\n\t\t\t// Multiple hook callbacks, keyed by name\n\t\t\tfor (let name in arguments[0]) {\n\t\t\t\tthis.add(name, arguments[0][name], arguments[1]);\n\t\t\t}\n\t\t}\n\t\telse {\n\t\t\t(Array.isArray(name) ? name : [name]).forEach(function (name) {\n\t\t\t\tthis[name] = this[name] || [];\n\n\t\t\t\tif (callback) {\n\t\t\t\t\tthis[name][first ? 'unshift' : 'push'](callback);\n\t\t\t\t}\n\t\t\t}, this);\n\t\t}\n\t}\n\n\t/**\n\t * Runs a hook invoking all registered callbacks with the given environment variables.\n\t *\n\t * Callbacks will be invoked synchronously and in the order in which they were registered.\n\t *\n\t * @param {string} name The name of the hook.\n\t * @param {Object} env The environment variables of the hook passed to all callbacks registered.\n\t * @public\n\t */\n\trun(name, env) {\n\t\tthis[name] = this[name] || [];\n\t\tthis[name].forEach(function (callback) {\n\t\t\tcallback.call(env && env.context ? env.context : env, env);\n\t\t});\n\t}\n}\n\n/**\n * @implements {IPlugins}\n */\nclass Plugins {\n\tconstructor(jsep) {\n\t\tthis.jsep = jsep;\n\t\tthis.registered = {};\n\t}\n\n\t/**\n\t * @callback PluginSetup\n\t * @this {Jsep} jsep\n\t * @returns: void\n\t */\n\t/**\n\t * Adds the given plugin(s) to the registry\n\t *\n\t * @param {object} plugins\n\t * @param {string} plugins.name The name of the plugin\n\t * @param {PluginSetup} plugins.init The init function\n\t * @public\n\t */\n\tregister(...plugins) {\n\t\tplugins.forEach((plugin) => {\n\t\t\tif (typeof plugin !== 'object' || !plugin.name || !plugin.init) {\n\t\t\t\tthrow new Error('Invalid JSEP plugin format');\n\t\t\t}\n\t\t\tif (this.registered[plugin.name]) {\n\t\t\t\t// already registered. Ignore.\n\t\t\t\treturn;\n\t\t\t}\n\t\t\tplugin.init(this.jsep);\n\t\t\tthis.registered[plugin.name] = plugin;\n\t\t});\n\t}\n}\n\n// JavaScript Expression Parser (JSEP) 1.3.8\n\nclass Jsep {\n\t/**\n\t * @returns {string}\n\t */\n\tstatic get version() {\n\t\t// To be filled in by the template\n\t\treturn '1.3.8';\n\t}\n\n\t/**\n\t * @returns {string}\n\t */\n\tstatic toString() {\n\t\treturn 'JavaScript Expression Parser (JSEP) v' + Jsep.version;\n\t};\n\n\t// ==================== CONFIG ================================\n\t/**\n\t * @method addUnaryOp\n\t * @param {string} op_name The name of the unary op to add\n\t * @returns {Jsep}\n\t */\n\tstatic addUnaryOp(op_name) {\n\t\tJsep.max_unop_len = Math.max(op_name.length, Jsep.max_unop_len);\n\t\tJsep.unary_ops[op_name] = 1;\n\t\treturn Jsep;\n\t}\n\n\t/**\n\t * @method jsep.addBinaryOp\n\t * @param {string} op_name The name of the binary op to add\n\t * @param {number} precedence The precedence of the binary op (can be a float). Higher number = higher precedence\n\t * @param {boolean} [isRightAssociative=false] whether operator is right-associative\n\t * @returns {Jsep}\n\t */\n\tstatic addBinaryOp(op_name, precedence, isRightAssociative) {\n\t\tJsep.max_binop_len = Math.max(op_name.length, Jsep.max_binop_len);\n\t\tJsep.binary_ops[op_name] = precedence;\n\t\tif (isRightAssociative) {\n\t\t\tJsep.right_associative.add(op_name);\n\t\t}\n\t\telse {\n\t\t\tJsep.right_associative.delete(op_name);\n\t\t}\n\t\treturn Jsep;\n\t}\n\n\t/**\n\t * @method addIdentifierChar\n\t * @param {string} char The additional character to treat as a valid part of an identifier\n\t * @returns {Jsep}\n\t */\n\tstatic addIdentifierChar(char) {\n\t\tJsep.additional_identifier_chars.add(char);\n\t\treturn Jsep;\n\t}\n\n\t/**\n\t * @method addLiteral\n\t * @param {string} literal_name The name of the literal to add\n\t * @param {*} literal_value The value of the literal\n\t * @returns {Jsep}\n\t */\n\tstatic addLiteral(literal_name, literal_value) {\n\t\tJsep.literals[literal_name] = literal_value;\n\t\treturn Jsep;\n\t}\n\n\t/**\n\t * @method removeUnaryOp\n\t * @param {string} op_name The name of the unary op to remove\n\t * @returns {Jsep}\n\t */\n\tstatic removeUnaryOp(op_name) {\n\t\tdelete Jsep.unary_ops[op_name];\n\t\tif (op_name.length === Jsep.max_unop_len) {\n\t\t\tJsep.max_unop_len = Jsep.getMaxKeyLen(Jsep.unary_ops);\n\t\t}\n\t\treturn Jsep;\n\t}\n\n\t/**\n\t * @method removeAllUnaryOps\n\t * @returns {Jsep}\n\t */\n\tstatic removeAllUnaryOps() {\n\t\tJsep.unary_ops = {};\n\t\tJsep.max_unop_len = 0;\n\n\t\treturn Jsep;\n\t}\n\n\t/**\n\t * @method removeIdentifierChar\n\t * @param {string} char The additional character to stop treating as a valid part of an identifier\n\t * @returns {Jsep}\n\t */\n\tstatic removeIdentifierChar(char) {\n\t\tJsep.additional_identifier_chars.delete(char);\n\t\treturn Jsep;\n\t}\n\n\t/**\n\t * @method removeBinaryOp\n\t * @param {string} op_name The name of the binary op to remove\n\t * @returns {Jsep}\n\t */\n\tstatic removeBinaryOp(op_name) {\n\t\tdelete Jsep.binary_ops[op_name];\n\n\t\tif (op_name.length === Jsep.max_binop_len) {\n\t\t\tJsep.max_binop_len = Jsep.getMaxKeyLen(Jsep.binary_ops);\n\t\t}\n\t\tJsep.right_associative.delete(op_name);\n\n\t\treturn Jsep;\n\t}\n\n\t/**\n\t * @method removeAllBinaryOps\n\t * @returns {Jsep}\n\t */\n\tstatic removeAllBinaryOps() {\n\t\tJsep.binary_ops = {};\n\t\tJsep.max_binop_len = 0;\n\n\t\treturn Jsep;\n\t}\n\n\t/**\n\t * @method removeLiteral\n\t * @param {string} literal_name The name of the literal to remove\n\t * @returns {Jsep}\n\t */\n\tstatic removeLiteral(literal_name) {\n\t\tdelete Jsep.literals[literal_name];\n\t\treturn Jsep;\n\t}\n\n\t/**\n\t * @method removeAllLiterals\n\t * @returns {Jsep}\n\t */\n\tstatic removeAllLiterals() {\n\t\tJsep.literals = {};\n\n\t\treturn Jsep;\n\t}\n\t// ==================== END CONFIG ============================\n\n\n\t/**\n\t * @returns {string}\n\t */\n\tget char() {\n\t\treturn this.expr.charAt(this.index);\n\t}\n\n\t/**\n\t * @returns {number}\n\t */\n\tget code() {\n\t\treturn this.expr.charCodeAt(this.index);\n\t};\n\n\n\t/**\n\t * @param {string} expr a string with the passed in express\n\t * @returns Jsep\n\t */\n\tconstructor(expr) {\n\t\t// `index` stores the character number we are currently at\n\t\t// All of the gobbles below will modify `index` as we move along\n\t\tthis.expr = expr;\n\t\tthis.index = 0;\n\t}\n\n\t/**\n\t * static top-level parser\n\t * @returns {jsep.Expression}\n\t */\n\tstatic parse(expr) {\n\t\treturn (new Jsep(expr)).parse();\n\t}\n\n\t/**\n\t * Get the longest key length of any object\n\t * @param {object} obj\n\t * @returns {number}\n\t */\n\tstatic getMaxKeyLen(obj) {\n\t\treturn Math.max(0, ...Object.keys(obj).map(k => k.length));\n\t}\n\n\t/**\n\t * `ch` is a character code in the next three functions\n\t * @param {number} ch\n\t * @returns {boolean}\n\t */\n\tstatic isDecimalDigit(ch) {\n\t\treturn (ch >= 48 && ch <= 57); // 0...9\n\t}\n\n\t/**\n\t * Returns the precedence of a binary operator or `0` if it isn't a binary operator. Can be float.\n\t * @param {string} op_val\n\t * @returns {number}\n\t */\n\tstatic binaryPrecedence(op_val) {\n\t\treturn Jsep.binary_ops[op_val] || 0;\n\t}\n\n\t/**\n\t * Looks for start of identifier\n\t * @param {number} ch\n\t * @returns {boolean}\n\t */\n\tstatic isIdentifierStart(ch) {\n\t\treturn (ch >= 65 && ch <= 90) || // A...Z\n\t\t\t(ch >= 97 && ch <= 122) || // a...z\n\t\t\t(ch >= 128 && !Jsep.binary_ops[String.fromCharCode(ch)]) || // any non-ASCII that is not an operator\n\t\t\t(Jsep.additional_identifier_chars.has(String.fromCharCode(ch))); // additional characters\n\t}\n\n\t/**\n\t * @param {number} ch\n\t * @returns {boolean}\n\t */\n\tstatic isIdentifierPart(ch) {\n\t\treturn Jsep.isIdentifierStart(ch) || Jsep.isDecimalDigit(ch);\n\t}\n\n\t/**\n\t * throw error at index of the expression\n\t * @param {string} message\n\t * @throws\n\t */\n\tthrowError(message) {\n\t\tconst error = new Error(message + ' at character ' + this.index);\n\t\terror.index = this.index;\n\t\terror.description = message;\n\t\tthrow error;\n\t}\n\n\t/**\n\t * Run a given hook\n\t * @param {string} name\n\t * @param {jsep.Expression|false} [node]\n\t * @returns {?jsep.Expression}\n\t */\n\trunHook(name, node) {\n\t\tif (Jsep.hooks[name]) {\n\t\t\tconst env = { context: this, node };\n\t\t\tJsep.hooks.run(name, env);\n\t\t\treturn env.node;\n\t\t}\n\t\treturn node;\n\t}\n\n\t/**\n\t * Runs a given hook until one returns a node\n\t * @param {string} name\n\t * @returns {?jsep.Expression}\n\t */\n\tsearchHook(name) {\n\t\tif (Jsep.hooks[name]) {\n\t\t\tconst env = { context: this };\n\t\t\tJsep.hooks[name].find(function (callback) {\n\t\t\t\tcallback.call(env.context, env);\n\t\t\t\treturn env.node;\n\t\t\t});\n\t\t\treturn env.node;\n\t\t}\n\t}\n\n\t/**\n\t * Push `index` up to the next non-space character\n\t */\n\tgobbleSpaces() {\n\t\tlet ch = this.code;\n\t\t// Whitespace\n\t\twhile (ch === Jsep.SPACE_CODE\n\t\t|| ch === Jsep.TAB_CODE\n\t\t|| ch === Jsep.LF_CODE\n\t\t|| ch === Jsep.CR_CODE) {\n\t\t\tch = this.expr.charCodeAt(++this.index);\n\t\t}\n\t\tthis.runHook('gobble-spaces');\n\t}\n\n\t/**\n\t * Top-level method to parse all expressions and returns compound or single node\n\t * @returns {jsep.Expression}\n\t */\n\tparse() {\n\t\tthis.runHook('before-all');\n\t\tconst nodes = this.gobbleExpressions();\n\n\t\t// If there's only one expression just try returning the expression\n\t\tconst node = nodes.length === 1\n\t\t ? nodes[0]\n\t\t\t: {\n\t\t\t\ttype: Jsep.COMPOUND,\n\t\t\t\tbody: nodes\n\t\t\t};\n\t\treturn this.runHook('after-all', node);\n\t}\n\n\t/**\n\t * top-level parser (but can be reused within as well)\n\t * @param {number} [untilICode]\n\t * @returns {jsep.Expression[]}\n\t */\n\tgobbleExpressions(untilICode) {\n\t\tlet nodes = [], ch_i, node;\n\n\t\twhile (this.index < this.expr.length) {\n\t\t\tch_i = this.code;\n\n\t\t\t// Expressions can be separated by semicolons, commas, or just inferred without any\n\t\t\t// separators\n\t\t\tif (ch_i === Jsep.SEMCOL_CODE || ch_i === Jsep.COMMA_CODE) {\n\t\t\t\tthis.index++; // ignore separators\n\t\t\t}\n\t\t\telse {\n\t\t\t\t// Try to gobble each expression individually\n\t\t\t\tif (node = this.gobbleExpression()) {\n\t\t\t\t\tnodes.push(node);\n\t\t\t\t\t// If we weren't able to find a binary expression and are out of room, then\n\t\t\t\t\t// the expression passed in probably has too much\n\t\t\t\t}\n\t\t\t\telse if (this.index < this.expr.length) {\n\t\t\t\t\tif (ch_i === untilICode) {\n\t\t\t\t\t\tbreak;\n\t\t\t\t\t}\n\t\t\t\t\tthis.throwError('Unexpected \"' + this.char + '\"');\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\n\t\treturn nodes;\n\t}\n\n\t/**\n\t * The main parsing function.\n\t * @returns {?jsep.Expression}\n\t */\n\tgobbleExpression() {\n\t\tconst node = this.searchHook('gobble-expression') || this.gobbleBinaryExpression();\n\t\tthis.gobbleSpaces();\n\n\t\treturn this.runHook('after-expression', node);\n\t}\n\n\t/**\n\t * Search for the operation portion of the string (e.g. `+`, `===`)\n\t * Start by taking the longest possible binary operations (3 characters: `===`, `!==`, `>>>`)\n\t * and move down from 3 to 2 to 1 character until a matching binary operation is found\n\t * then, return that binary operation\n\t * @returns {string|boolean}\n\t */\n\tgobbleBinaryOp() {\n\t\tthis.gobbleSpaces();\n\t\tlet to_check = this.expr.substr(this.index, Jsep.max_binop_len);\n\t\tlet tc_len = to_check.length;\n\n\t\twhile (tc_len > 0) {\n\t\t\t// Don't accept a binary op when it is an identifier.\n\t\t\t// Binary ops that start with a identifier-valid character must be followed\n\t\t\t// by a non identifier-part valid character\n\t\t\tif (Jsep.binary_ops.hasOwnProperty(to_check) && (\n\t\t\t\t!Jsep.isIdentifierStart(this.code) ||\n\t\t\t\t(this.index + to_check.length < this.expr.length && !Jsep.isIdentifierPart(this.expr.charCodeAt(this.index + to_check.length)))\n\t\t\t)) {\n\t\t\t\tthis.index += tc_len;\n\t\t\t\treturn to_check;\n\t\t\t}\n\t\t\tto_check = to_check.substr(0, --tc_len);\n\t\t}\n\t\treturn false;\n\t}\n\n\t/**\n\t * This function is responsible for gobbling an individual expression,\n\t * e.g. `1`, `1+2`, `a+(b*2)-Math.sqrt(2)`\n\t * @returns {?jsep.BinaryExpression}\n\t */\n\tgobbleBinaryExpression() {\n\t\tlet node, biop, prec, stack, biop_info, left, right, i, cur_biop;\n\n\t\t// First, try to get the leftmost thing\n\t\t// Then, check to see if there's a binary operator operating on that leftmost thing\n\t\t// Don't gobbleBinaryOp without a left-hand-side\n\t\tleft = this.gobbleToken();\n\t\tif (!left) {\n\t\t\treturn left;\n\t\t}\n\t\tbiop = this.gobbleBinaryOp();\n\n\t\t// If there wasn't a binary operator, just return the leftmost node\n\t\tif (!biop) {\n\t\t\treturn left;\n\t\t}\n\n\t\t// Otherwise, we need to start a stack to properly place the binary operations in their\n\t\t// precedence structure\n\t\tbiop_info = { value: biop, prec: Jsep.binaryPrecedence(biop), right_a: Jsep.right_associative.has(biop) };\n\n\t\tright = this.gobbleToken();\n\n\t\tif (!right) {\n\t\t\tthis.throwError(\"Expected expression after \" + biop);\n\t\t}\n\n\t\tstack = [left, biop_info, right];\n\n\t\t// Properly deal with precedence using [recursive descent](http://www.engr.mun.ca/~theo/Misc/exp_parsing.htm)\n\t\twhile ((biop = this.gobbleBinaryOp())) {\n\t\t\tprec = Jsep.binaryPrecedence(biop);\n\n\t\t\tif (prec === 0) {\n\t\t\t\tthis.index -= biop.length;\n\t\t\t\tbreak;\n\t\t\t}\n\n\t\t\tbiop_info = { value: biop, prec, right_a: Jsep.right_associative.has(biop) };\n\n\t\t\tcur_biop = biop;\n\n\t\t\t// Reduce: make a binary expression from the three topmost entries.\n\t\t\tconst comparePrev = prev => biop_info.right_a && prev.right_a\n\t\t\t\t? prec > prev.prec\n\t\t\t\t: prec <= prev.prec;\n\t\t\twhile ((stack.length > 2) && comparePrev(stack[stack.length - 2])) {\n\t\t\t\tright = stack.pop();\n\t\t\t\tbiop = stack.pop().value;\n\t\t\t\tleft = stack.pop();\n\t\t\t\tnode = {\n\t\t\t\t\ttype: Jsep.BINARY_EXP,\n\t\t\t\t\toperator: biop,\n\t\t\t\t\tleft,\n\t\t\t\t\tright\n\t\t\t\t};\n\t\t\t\tstack.push(node);\n\t\t\t}\n\n\t\t\tnode = this.gobbleToken();\n\n\t\t\tif (!node) {\n\t\t\t\tthis.throwError(\"Expected expression after \" + cur_biop);\n\t\t\t}\n\n\t\t\tstack.push(biop_info, node);\n\t\t}\n\n\t\ti = stack.length - 1;\n\t\tnode = stack[i];\n\n\t\twhile (i > 1) {\n\t\t\tnode = {\n\t\t\t\ttype: Jsep.BINARY_EXP,\n\t\t\t\toperator: stack[i - 1].value,\n\t\t\t\tleft: stack[i - 2],\n\t\t\t\tright: node\n\t\t\t};\n\t\t\ti -= 2;\n\t\t}\n\n\t\treturn node;\n\t}\n\n\t/**\n\t * An individual part of a binary expression:\n\t * e.g. `foo.bar(baz)`, `1`, `\"abc\"`, `(a % 2)` (because it's in parenthesis)\n\t * @returns {boolean|jsep.Expression}\n\t */\n\tgobbleToken() {\n\t\tlet ch, to_check, tc_len, node;\n\n\t\tthis.gobbleSpaces();\n\t\tnode = this.searchHook('gobble-token');\n\t\tif (node) {\n\t\t\treturn this.runHook('after-token', node);\n\t\t}\n\n\t\tch = this.code;\n\n\t\tif (Jsep.isDecimalDigit(ch) || ch === Jsep.PERIOD_CODE) {\n\t\t\t// Char code 46 is a dot `.` which can start off a numeric literal\n\t\t\treturn this.gobbleNumericLiteral();\n\t\t}\n\n\t\tif (ch === Jsep.SQUOTE_CODE || ch === Jsep.DQUOTE_CODE) {\n\t\t\t// Single or double quotes\n\t\t\tnode = this.gobbleStringLiteral();\n\t\t}\n\t\telse if (ch === Jsep.OBRACK_CODE) {\n\t\t\tnode = this.gobbleArray();\n\t\t}\n\t\telse {\n\t\t\tto_check = this.expr.substr(this.index, Jsep.max_unop_len);\n\t\t\ttc_len = to_check.length;\n\n\t\t\twhile (tc_len > 0) {\n\t\t\t\t// Don't accept an unary op when it is an identifier.\n\t\t\t\t// Unary ops that start with a identifier-valid character must be followed\n\t\t\t\t// by a non identifier-part valid character\n\t\t\t\tif (Jsep.unary_ops.hasOwnProperty(to_check) && (\n\t\t\t\t\t!Jsep.isIdentifierStart(this.code) ||\n\t\t\t\t\t(this.index + to_check.length < this.expr.length && !Jsep.isIdentifierPart(this.expr.charCodeAt(this.index + to_check.length)))\n\t\t\t\t)) {\n\t\t\t\t\tthis.index += tc_len;\n\t\t\t\t\tconst argument = this.gobbleToken();\n\t\t\t\t\tif (!argument) {\n\t\t\t\t\t\tthis.throwError('missing unaryOp argument');\n\t\t\t\t\t}\n\t\t\t\t\treturn this.runHook('after-token', {\n\t\t\t\t\t\ttype: Jsep.UNARY_EXP,\n\t\t\t\t\t\toperator: to_check,\n\t\t\t\t\t\targument,\n\t\t\t\t\t\tprefix: true\n\t\t\t\t\t});\n\t\t\t\t}\n\n\t\t\t\tto_check = to_check.substr(0, --tc_len);\n\t\t\t}\n\n\t\t\tif (Jsep.isIdentifierStart(ch)) {\n\t\t\t\tnode = this.gobbleIdentifier();\n\t\t\t\tif (Jsep.literals.hasOwnProperty(node.name)) {\n\t\t\t\t\tnode = {\n\t\t\t\t\t\ttype: Jsep.LITERAL,\n\t\t\t\t\t\tvalue: Jsep.literals[node.name],\n\t\t\t\t\t\traw: node.name,\n\t\t\t\t\t};\n\t\t\t\t}\n\t\t\t\telse if (node.name === Jsep.this_str) {\n\t\t\t\t\tnode = { type: Jsep.THIS_EXP };\n\t\t\t\t}\n\t\t\t}\n\t\t\telse if (ch === Jsep.OPAREN_CODE) { // open parenthesis\n\t\t\t\tnode = this.gobbleGroup();\n\t\t\t}\n\t\t}\n\n\t\tif (!node) {\n\t\t\treturn this.runHook('after-token', false);\n\t\t}\n\n\t\tnode = this.gobbleTokenProperty(node);\n\t\treturn this.runHook('after-token', node);\n\t}\n\n\t/**\n\t * Gobble properties of of identifiers/strings/arrays/groups.\n\t * e.g. `foo`, `bar.baz`, `foo['bar'].baz`\n\t * It also gobbles function calls:\n\t * e.g. `Math.acos(obj.angle)`\n\t * @param {jsep.Expression} node\n\t * @returns {jsep.Expression}\n\t */\n\tgobbleTokenProperty(node) {\n\t\tthis.gobbleSpaces();\n\n\t\tlet ch = this.code;\n\t\twhile (ch === Jsep.PERIOD_CODE || ch === Jsep.OBRACK_CODE || ch === Jsep.OPAREN_CODE || ch === Jsep.QUMARK_CODE) {\n\t\t\tlet optional;\n\t\t\tif (ch === Jsep.QUMARK_CODE) {\n\t\t\t\tif (this.expr.charCodeAt(this.index + 1) !== Jsep.PERIOD_CODE) {\n\t\t\t\t\tbreak;\n\t\t\t\t}\n\t\t\t\toptional = true;\n\t\t\t\tthis.index += 2;\n\t\t\t\tthis.gobbleSpaces();\n\t\t\t\tch = this.code;\n\t\t\t}\n\t\t\tthis.index++;\n\n\t\t\tif (ch === Jsep.OBRACK_CODE) {\n\t\t\t\tnode = {\n\t\t\t\t\ttype: Jsep.MEMBER_EXP,\n\t\t\t\t\tcomputed: true,\n\t\t\t\t\tobject: node,\n\t\t\t\t\tproperty: this.gobbleExpression()\n\t\t\t\t};\n\t\t\t\tthis.gobbleSpaces();\n\t\t\t\tch = this.code;\n\t\t\t\tif (ch !== Jsep.CBRACK_CODE) {\n\t\t\t\t\tthis.throwError('Unclosed [');\n\t\t\t\t}\n\t\t\t\tthis.index++;\n\t\t\t}\n\t\t\telse if (ch === Jsep.OPAREN_CODE) {\n\t\t\t\t// A function call is being made; gobble all the arguments\n\t\t\t\tnode = {\n\t\t\t\t\ttype: Jsep.CALL_EXP,\n\t\t\t\t\t'arguments': this.gobbleArguments(Jsep.CPAREN_CODE),\n\t\t\t\t\tcallee: node\n\t\t\t\t};\n\t\t\t}\n\t\t\telse if (ch === Jsep.PERIOD_CODE || optional) {\n\t\t\t\tif (optional) {\n\t\t\t\t\tthis.index--;\n\t\t\t\t}\n\t\t\t\tthis.gobbleSpaces();\n\t\t\t\tnode = {\n\t\t\t\t\ttype: Jsep.MEMBER_EXP,\n\t\t\t\t\tcomputed: false,\n\t\t\t\t\tobject: node,\n\t\t\t\t\tproperty: this.gobbleIdentifier(),\n\t\t\t\t};\n\t\t\t}\n\n\t\t\tif (optional) {\n\t\t\t\tnode.optional = true;\n\t\t\t} // else leave undefined for compatibility with esprima\n\n\t\t\tthis.gobbleSpaces();\n\t\t\tch = this.code;\n\t\t}\n\n\t\treturn node;\n\t}\n\n\t/**\n\t * Parse simple numeric literals: `12`, `3.4`, `.5`. Do this by using a string to\n\t * keep track of everything in the numeric literal and then calling `parseFloat` on that string\n\t * @returns {jsep.Literal}\n\t */\n\tgobbleNumericLiteral() {\n\t\tlet number = '', ch, chCode;\n\n\t\twhile (Jsep.isDecimalDigit(this.code)) {\n\t\t\tnumber += this.expr.charAt(this.index++);\n\t\t}\n\n\t\tif (this.code === Jsep.PERIOD_CODE) { // can start with a decimal marker\n\t\t\tnumber += this.expr.charAt(this.index++);\n\n\t\t\twhile (Jsep.isDecimalDigit(this.code)) {\n\t\t\t\tnumber += this.expr.charAt(this.index++);\n\t\t\t}\n\t\t}\n\n\t\tch = this.char;\n\n\t\tif (ch === 'e' || ch === 'E') { // exponent marker\n\t\t\tnumber += this.expr.charAt(this.index++);\n\t\t\tch = this.char;\n\n\t\t\tif (ch === '+' || ch === '-') { // exponent sign\n\t\t\t\tnumber += this.expr.charAt(this.index++);\n\t\t\t}\n\n\t\t\twhile (Jsep.isDecimalDigit(this.code)) { // exponent itself\n\t\t\t\tnumber += this.expr.charAt(this.index++);\n\t\t\t}\n\n\t\t\tif (!Jsep.isDecimalDigit(this.expr.charCodeAt(this.index - 1)) ) {\n\t\t\t\tthis.throwError('Expected exponent (' + number + this.char + ')');\n\t\t\t}\n\t\t}\n\n\t\tchCode = this.code;\n\n\t\t// Check to make sure this isn't a variable name that start with a number (123abc)\n\t\tif (Jsep.isIdentifierStart(chCode)) {\n\t\t\tthis.throwError('Variable names cannot start with a number (' +\n\t\t\t\tnumber + this.char + ')');\n\t\t}\n\t\telse if (chCode === Jsep.PERIOD_CODE || (number.length === 1 && number.charCodeAt(0) === Jsep.PERIOD_CODE)) {\n\t\t\tthis.throwError('Unexpected period');\n\t\t}\n\n\t\treturn {\n\t\t\ttype: Jsep.LITERAL,\n\t\t\tvalue: parseFloat(number),\n\t\t\traw: number\n\t\t};\n\t}\n\n\t/**\n\t * Parses a string literal, staring with single or double quotes with basic support for escape codes\n\t * e.g. `\"hello world\"`, `'this is\\nJSEP'`\n\t * @returns {jsep.Literal}\n\t */\n\tgobbleStringLiteral() {\n\t\tlet str = '';\n\t\tconst startIndex = this.index;\n\t\tconst quote = this.expr.charAt(this.index++);\n\t\tlet closed = false;\n\n\t\twhile (this.index < this.expr.length) {\n\t\t\tlet ch = this.expr.charAt(this.index++);\n\n\t\t\tif (ch === quote) {\n\t\t\t\tclosed = true;\n\t\t\t\tbreak;\n\t\t\t}\n\t\t\telse if (ch === '\\\\') {\n\t\t\t\t// Check for all of the common escape codes\n\t\t\t\tch = this.expr.charAt(this.index++);\n\n\t\t\t\tswitch (ch) {\n\t\t\t\t\tcase 'n': str += '\\n'; break;\n\t\t\t\t\tcase 'r': str += '\\r'; break;\n\t\t\t\t\tcase 't': str += '\\t'; break;\n\t\t\t\t\tcase 'b': str += '\\b'; break;\n\t\t\t\t\tcase 'f': str += '\\f'; break;\n\t\t\t\t\tcase 'v': str += '\\x0B'; break;\n\t\t\t\t\tdefault : str += ch;\n\t\t\t\t}\n\t\t\t}\n\t\t\telse {\n\t\t\t\tstr += ch;\n\t\t\t}\n\t\t}\n\n\t\tif (!closed) {\n\t\t\tthis.throwError('Unclosed quote after \"' + str + '\"');\n\t\t}\n\n\t\treturn {\n\t\t\ttype: Jsep.LITERAL,\n\t\t\tvalue: str,\n\t\t\traw: this.expr.substring(startIndex, this.index),\n\t\t};\n\t}\n\n\t/**\n\t * Gobbles only identifiers\n\t * e.g.: `foo`, `_value`, `$x1`\n\t * Also, this function checks if that identifier is a literal:\n\t * (e.g. `true`, `false`, `null`) or `this`\n\t * @returns {jsep.Identifier}\n\t */\n\tgobbleIdentifier() {\n\t\tlet ch = this.code, start = this.index;\n\n\t\tif (Jsep.isIdentifierStart(ch)) {\n\t\t\tthis.index++;\n\t\t}\n\t\telse {\n\t\t\tthis.throwError('Unexpected ' + this.char);\n\t\t}\n\n\t\twhile (this.index < this.expr.length) {\n\t\t\tch = this.code;\n\n\t\t\tif (Jsep.isIdentifierPart(ch)) {\n\t\t\t\tthis.index++;\n\t\t\t}\n\t\t\telse {\n\t\t\t\tbreak;\n\t\t\t}\n\t\t}\n\t\treturn {\n\t\t\ttype: Jsep.IDENTIFIER,\n\t\t\tname: this.expr.slice(start, this.index),\n\t\t};\n\t}\n\n\t/**\n\t * Gobbles a list of arguments within the context of a function call\n\t * or array literal. This function also assumes that the opening character\n\t * `(` or `[` has already been gobbled, and gobbles expressions and commas\n\t * until the terminator character `)` or `]` is encountered.\n\t * e.g. `foo(bar, baz)`, `my_func()`, or `[bar, baz]`\n\t * @param {number} termination\n\t * @returns {jsep.Expression[]}\n\t */\n\tgobbleArguments(termination) {\n\t\tconst args = [];\n\t\tlet closed = false;\n\t\tlet separator_count = 0;\n\n\t\twhile (this.index < this.expr.length) {\n\t\t\tthis.gobbleSpaces();\n\t\t\tlet ch_i = this.code;\n\n\t\t\tif (ch_i === termination) { // done parsing\n\t\t\t\tclosed = true;\n\t\t\t\tthis.index++;\n\n\t\t\t\tif (termination === Jsep.CPAREN_CODE && separator_count && separator_count >= args.length){\n\t\t\t\t\tthis.throwError('Unexpected token ' + String.fromCharCode(termination));\n\t\t\t\t}\n\n\t\t\t\tbreak;\n\t\t\t}\n\t\t\telse if (ch_i === Jsep.COMMA_CODE) { // between expressions\n\t\t\t\tthis.index++;\n\t\t\t\tseparator_count++;\n\n\t\t\t\tif (separator_count !== args.length) { // missing argument\n\t\t\t\t\tif (termination === Jsep.CPAREN_CODE) {\n\t\t\t\t\t\tthis.throwError('Unexpected token ,');\n\t\t\t\t\t}\n\t\t\t\t\telse if (termination === Jsep.CBRACK_CODE) {\n\t\t\t\t\t\tfor (let arg = args.length; arg < separator_count; arg++) {\n\t\t\t\t\t\t\targs.push(null);\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t\telse if (args.length !== separator_count && separator_count !== 0) {\n\t\t\t\t// NOTE: `&& separator_count !== 0` allows for either all commas, or all spaces as arguments\n\t\t\t\tthis.throwError('Expected comma');\n\t\t\t}\n\t\t\telse {\n\t\t\t\tconst node = this.gobbleExpression();\n\n\t\t\t\tif (!node || node.type === Jsep.COMPOUND) {\n\t\t\t\t\tthis.throwError('Expected comma');\n\t\t\t\t}\n\n\t\t\t\targs.push(node);\n\t\t\t}\n\t\t}\n\n\t\tif (!closed) {\n\t\t\tthis.throwError('Expected ' + String.fromCharCode(termination));\n\t\t}\n\n\t\treturn args;\n\t}\n\n\t/**\n\t * Responsible for parsing a group of things within parentheses `()`\n\t * that have no identifier in front (so not a function call)\n\t * This function assumes that it needs to gobble the opening parenthesis\n\t * and then tries to gobble everything within that parenthesis, assuming\n\t * that the next thing it should see is the close parenthesis. If not,\n\t * then the expression probably doesn't have a `)`\n\t * @returns {boolean|jsep.Expression}\n\t */\n\tgobbleGroup() {\n\t\tthis.index++;\n\t\tlet nodes = this.gobbleExpressions(Jsep.CPAREN_CODE);\n\t\tif (this.code === Jsep.CPAREN_CODE) {\n\t\t\tthis.index++;\n\t\t\tif (nodes.length === 1) {\n\t\t\t\treturn nodes[0];\n\t\t\t}\n\t\t\telse if (!nodes.length) {\n\t\t\t\treturn false;\n\t\t\t}\n\t\t\telse {\n\t\t\t\treturn {\n\t\t\t\t\ttype: Jsep.SEQUENCE_EXP,\n\t\t\t\t\texpressions: nodes,\n\t\t\t\t};\n\t\t\t}\n\t\t}\n\t\telse {\n\t\t\tthis.throwError('Unclosed (');\n\t\t}\n\t}\n\n\t/**\n\t * Responsible for parsing Array literals `[1, 2, 3]`\n\t * This function assumes that it needs to gobble the opening bracket\n\t * and then tries to gobble the expressions as arguments.\n\t * @returns {jsep.ArrayExpression}\n\t */\n\tgobbleArray() {\n\t\tthis.index++;\n\n\t\treturn {\n\t\t\ttype: Jsep.ARRAY_EXP,\n\t\t\telements: this.gobbleArguments(Jsep.CBRACK_CODE)\n\t\t};\n\t}\n}\n\n// Static fields:\nconst hooks = new Hooks();\nObject.assign(Jsep, {\n\thooks,\n\tplugins: new Plugins(Jsep),\n\n\t// Node Types\n\t// ----------\n\t// This is the full set of types that any JSEP node can be.\n\t// Store them here to save space when minified\n\tCOMPOUND: 'Compound',\n\tSEQUENCE_EXP: 'SequenceExpression',\n\tIDENTIFIER: 'Identifier',\n\tMEMBER_EXP: 'MemberExpression',\n\tLITERAL: 'Literal',\n\tTHIS_EXP: 'ThisExpression',\n\tCALL_EXP: 'CallExpression',\n\tUNARY_EXP: 'UnaryExpression',\n\tBINARY_EXP: 'BinaryExpression',\n\tARRAY_EXP: 'ArrayExpression',\n\n\tTAB_CODE: 9,\n\tLF_CODE: 10,\n\tCR_CODE: 13,\n\tSPACE_CODE: 32,\n\tPERIOD_CODE: 46, // '.'\n\tCOMMA_CODE: 44, // ','\n\tSQUOTE_CODE: 39, // single quote\n\tDQUOTE_CODE: 34, // double quotes\n\tOPAREN_CODE: 40, // (\n\tCPAREN_CODE: 41, // )\n\tOBRACK_CODE: 91, // [\n\tCBRACK_CODE: 93, // ]\n\tQUMARK_CODE: 63, // ?\n\tSEMCOL_CODE: 59, // ;\n\tCOLON_CODE: 58, // :\n\n\n\t// Operations\n\t// ----------\n\t// Use a quickly-accessible map to store all of the unary operators\n\t// Values are set to `1` (it really doesn't matter)\n\tunary_ops: {\n\t\t'-': 1,\n\t\t'!': 1,\n\t\t'~': 1,\n\t\t'+': 1\n\t},\n\n\t// Also use a map for the binary operations but set their values to their\n\t// binary precedence for quick reference (higher number = higher precedence)\n\t// see [Order of operations](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Operators/Operator_Precedence)\n\tbinary_ops: {\n\t\t'||': 1, '&&': 2, '|': 3, '^': 4, '&': 5,\n\t\t'==': 6, '!=': 6, '===': 6, '!==': 6,\n\t\t'<': 7, '>': 7, '<=': 7, '>=': 7,\n\t\t'<<': 8, '>>': 8, '>>>': 8,\n\t\t'+': 9, '-': 9,\n\t\t'*': 10, '/': 10, '%': 10\n\t},\n\n\t// sets specific binary_ops as right-associative\n\tright_associative: new Set(),\n\n\t// Additional valid identifier chars, apart from a-z, A-Z and 0-9 (except on the starting char)\n\tadditional_identifier_chars: new Set(['$', '_']),\n\n\t// Literals\n\t// ----------\n\t// Store the values to return for the various literals we may encounter\n\tliterals: {\n\t\t'true': true,\n\t\t'false': false,\n\t\t'null': null\n\t},\n\n\t// Except for `this`, which is special. This could be changed to something like `'self'` as well\n\tthis_str: 'this',\n});\nJsep.max_unop_len = Jsep.getMaxKeyLen(Jsep.unary_ops);\nJsep.max_binop_len = Jsep.getMaxKeyLen(Jsep.binary_ops);\n\n// Backward Compatibility:\nconst jsep = expr => (new Jsep(expr)).parse();\nconst staticMethods = Object.getOwnPropertyNames(Jsep);\nstaticMethods\n\t.forEach((m) => {\n\t\tif (jsep[m] === undefined && m !== 'prototype') {\n\t\t\tjsep[m] = Jsep[m];\n\t\t}\n\t});\njsep.Jsep = Jsep; // allows for const { Jsep } = require('jsep');\n\nconst CONDITIONAL_EXP = 'ConditionalExpression';\n\nvar ternary = {\n\tname: 'ternary',\n\n\tinit(jsep) {\n\t\t// Ternary expression: test ? consequent : alternate\n\t\tjsep.hooks.add('after-expression', function gobbleTernary(env) {\n\t\t\tif (env.node && this.code === jsep.QUMARK_CODE) {\n\t\t\t\tthis.index++;\n\t\t\t\tconst test = env.node;\n\t\t\t\tconst consequent = this.gobbleExpression();\n\n\t\t\t\tif (!consequent) {\n\t\t\t\t\tthis.throwError('Expected expression');\n\t\t\t\t}\n\n\t\t\t\tthis.gobbleSpaces();\n\n\t\t\t\tif (this.code === jsep.COLON_CODE) {\n\t\t\t\t\tthis.index++;\n\t\t\t\t\tconst alternate = this.gobbleExpression();\n\n\t\t\t\t\tif (!alternate) {\n\t\t\t\t\t\tthis.throwError('Expected expression');\n\t\t\t\t\t}\n\t\t\t\t\tenv.node = {\n\t\t\t\t\t\ttype: CONDITIONAL_EXP,\n\t\t\t\t\t\ttest,\n\t\t\t\t\t\tconsequent,\n\t\t\t\t\t\talternate,\n\t\t\t\t\t};\n\n\t\t\t\t\t// check for operators of higher priority than ternary (i.e. assignment)\n\t\t\t\t\t// jsep sets || at 1, and assignment at 0.9, and conditional should be between them\n\t\t\t\t\tif (test.operator && jsep.binary_ops[test.operator] <= 0.9) {\n\t\t\t\t\t\tlet newTest = test;\n\t\t\t\t\t\twhile (newTest.right.operator && jsep.binary_ops[newTest.right.operator] <= 0.9) {\n\t\t\t\t\t\t\tnewTest = newTest.right;\n\t\t\t\t\t\t}\n\t\t\t\t\t\tenv.node.test = newTest.right;\n\t\t\t\t\t\tnewTest.right = env.node;\n\t\t\t\t\t\tenv.node = test;\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\telse {\n\t\t\t\t\tthis.throwError('Expected :');\n\t\t\t\t}\n\t\t\t}\n\t\t});\n\t},\n};\n\n// Add default plugins:\n\njsep.plugins.register(ternary);\n\nexport { Jsep, jsep as default };\n","const FSLASH_CODE = 47; // '/'\nconst BSLASH_CODE = 92; // '\\\\'\n\nvar index = {\n\tname: 'regex',\n\n\tinit(jsep) {\n\t\t// Regex literal: /abc123/ig\n\t\tjsep.hooks.add('gobble-token', function gobbleRegexLiteral(env) {\n\t\t\tif (this.code === FSLASH_CODE) {\n\t\t\t\tconst patternIndex = ++this.index;\n\n\t\t\t\tlet inCharSet = false;\n\t\t\t\twhile (this.index < this.expr.length) {\n\t\t\t\t\tif (this.code === FSLASH_CODE && !inCharSet) {\n\t\t\t\t\t\tconst pattern = this.expr.slice(patternIndex, this.index);\n\n\t\t\t\t\t\tlet flags = '';\n\t\t\t\t\t\twhile (++this.index < this.expr.length) {\n\t\t\t\t\t\t\tconst code = this.code;\n\t\t\t\t\t\t\tif ((code >= 97 && code <= 122) // a...z\n\t\t\t\t\t\t\t\t|| (code >= 65 && code <= 90) // A...Z\n\t\t\t\t\t\t\t\t|| (code >= 48 && code <= 57)) { // 0-9\n\t\t\t\t\t\t\t\tflags += this.char;\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\telse {\n\t\t\t\t\t\t\t\tbreak;\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t}\n\n\t\t\t\t\t\tlet value;\n\t\t\t\t\t\ttry {\n\t\t\t\t\t\t\tvalue = new RegExp(pattern, flags);\n\t\t\t\t\t\t}\n\t\t\t\t\t\tcatch (e) {\n\t\t\t\t\t\t\tthis.throwError(e.message);\n\t\t\t\t\t\t}\n\n\t\t\t\t\t\tenv.node = {\n\t\t\t\t\t\t\ttype: jsep.LITERAL,\n\t\t\t\t\t\t\tvalue,\n\t\t\t\t\t\t\traw: this.expr.slice(patternIndex - 1, this.index),\n\t\t\t\t\t\t};\n\n\t\t\t\t\t\t// allow . [] and () after regex: /regex/.test(a)\n\t\t\t\t\t\tenv.node = this.gobbleTokenProperty(env.node);\n\t\t\t\t\t\treturn env.node;\n\t\t\t\t\t}\n\t\t\t\t\tif (this.code === jsep.OBRACK_CODE) {\n\t\t\t\t\t\tinCharSet = true;\n\t\t\t\t\t}\n\t\t\t\t\telse if (inCharSet && this.code === jsep.CBRACK_CODE) {\n\t\t\t\t\t\tinCharSet = false;\n\t\t\t\t\t}\n\t\t\t\t\tthis.index += this.code === BSLASH_CODE ? 2 : 1;\n\t\t\t\t}\n\t\t\t\tthis.throwError('Unclosed Regex');\n\t\t\t}\n\t\t});\n\t},\n};\n\nexport { index as default };\n","const PLUS_CODE = 43; // +\nconst MINUS_CODE = 45; // -\n\nconst plugin = {\n\tname: 'assignment',\n\n\tassignmentOperators: new Set([\n\t\t'=',\n\t\t'*=',\n\t\t'**=',\n\t\t'/=',\n\t\t'%=',\n\t\t'+=',\n\t\t'-=',\n\t\t'<<=',\n\t\t'>>=',\n\t\t'>>>=',\n\t\t'&=',\n\t\t'^=',\n\t\t'|=',\n\t]),\n\tupdateOperators: [PLUS_CODE, MINUS_CODE],\n\tassignmentPrecedence: 0.9,\n\n\tinit(jsep) {\n\t\tconst updateNodeTypes = [jsep.IDENTIFIER, jsep.MEMBER_EXP];\n\t\tplugin.assignmentOperators.forEach(op => jsep.addBinaryOp(op, plugin.assignmentPrecedence, true));\n\n\t\tjsep.hooks.add('gobble-token', function gobbleUpdatePrefix(env) {\n\t\t\tconst code = this.code;\n\t\t\tif (plugin.updateOperators.some(c => c === code && c === this.expr.charCodeAt(this.index + 1))) {\n\t\t\t\tthis.index += 2;\n\t\t\t\tenv.node = {\n\t\t\t\t\ttype: 'UpdateExpression',\n\t\t\t\t\toperator: code === PLUS_CODE ? '++' : '--',\n\t\t\t\t\targument: this.gobbleTokenProperty(this.gobbleIdentifier()),\n\t\t\t\t\tprefix: true,\n\t\t\t\t};\n\t\t\t\tif (!env.node.argument || !updateNodeTypes.includes(env.node.argument.type)) {\n\t\t\t\t\tthis.throwError(`Unexpected ${env.node.operator}`);\n\t\t\t\t}\n\t\t\t}\n\t\t});\n\n\t\tjsep.hooks.add('after-token', function gobbleUpdatePostfix(env) {\n\t\t\tif (env.node) {\n\t\t\t\tconst code = this.code;\n\t\t\t\tif (plugin.updateOperators.some(c => c === code && c === this.expr.charCodeAt(this.index + 1))) {\n\t\t\t\t\tif (!updateNodeTypes.includes(env.node.type)) {\n\t\t\t\t\t\tthis.throwError(`Unexpected ${env.node.operator}`);\n\t\t\t\t\t}\n\t\t\t\t\tthis.index += 2;\n\t\t\t\t\tenv.node = {\n\t\t\t\t\t\ttype: 'UpdateExpression',\n\t\t\t\t\t\toperator: code === PLUS_CODE ? '++' : '--',\n\t\t\t\t\t\targument: env.node,\n\t\t\t\t\t\tprefix: false,\n\t\t\t\t\t};\n\t\t\t\t}\n\t\t\t}\n\t\t});\n\n\t\tjsep.hooks.add('after-expression', function gobbleAssignment(env) {\n\t\t\tif (env.node) {\n\t\t\t\t// Note: Binaries can be chained in a single expression to respect\n\t\t\t\t// operator precedence (i.e. a = b = 1 + 2 + 3)\n\t\t\t\t// Update all binary assignment nodes in the tree\n\t\t\t\tupdateBinariesToAssignments(env.node);\n\t\t\t}\n\t\t});\n\n\t\tfunction updateBinariesToAssignments(node) {\n\t\t\tif (plugin.assignmentOperators.has(node.operator)) {\n\t\t\t\tnode.type = 'AssignmentExpression';\n\t\t\t\tupdateBinariesToAssignments(node.left);\n\t\t\t\tupdateBinariesToAssignments(node.right);\n\t\t\t}\n\t\t\telse if (!node.operator) {\n\t\t\t\tObject.values(node).forEach((val) => {\n\t\t\t\t\tif (val && typeof val === 'object') {\n\t\t\t\t\t\tupdateBinariesToAssignments(val);\n\t\t\t\t\t}\n\t\t\t\t});\n\t\t\t}\n\t\t}\n\t},\n};\n\nexport { plugin as default };\n","/* eslint-disable camelcase, unicorn/prefer-string-replace-all,\n unicorn/prefer-at */\nconst {hasOwnProperty: hasOwnProp} = Object.prototype;\n\n/**\n * @typedef {null|boolean|number|string|PlainObject|GenericArray} JSONObject\n */\n\n/**\n * @typedef {any} AnyItem\n */\n\n/**\n * @typedef {any} AnyResult\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 {AnyItem} 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 {AnyItem} 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 {AnyResult} 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/**\n * @typedef {any} ContextItem\n */\n\n/**\n * @typedef {any} EvaluatedResult\n */\n\n/**\n* @callback EvalCallback\n* @param {string} code\n* @param {ContextItem} context\n* @returns {EvaluatedResult}\n*/\n\n/**\n * @typedef {typeof import('./jsonpath-browser').SafeScript} EvalClass\n */\n\n/**\n * @typedef {PlainObject} JSONPathOptions\n * @property {JSON} json\n * @property {string|string[]} path\n * @property {\"value\"|\"path\"|\"pointer\"|\"parent\"|\"parentProperty\"|\n * \"all\"} [resultType=\"value\"]\n * @property {boolean} [flatten=false]\n * @property {boolean} [wrap=true]\n * @property {PlainObject} [sandbox={}]\n * @property {EvalCallback|EvalClass|'safe'|'native'|\n * boolean} [eval = 'safe']\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\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.eval = opts.eval === undefined ? 'safe' : opts.eval;\n this.ignoreEvalErrors = (typeof opts.ignoreEvalErrors === 'undefined')\n ? false\n : opts.ignoreEvalErrors;\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.currEval = this.eval;\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.currEval = hasOwnProp.call(expr, 'eval')\n ? expr.eval\n : this.currEval;\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) {\n exprList.shift();\n }\n this._hasParentSelector = null;\n const result = this\n ._trace(\n exprList, json, ['$'], currParent, currParentProperty, callback\n )\n .filter(function (ea) {\n return ea && !ea.isParentSelector;\n });\n\n if (!result.length) {\n return wrap ? [] : undefined;\n }\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 n/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(val, (m) => {\n addRet(this._trace(\n x, val[m], push(path, m), val, m, callback, 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(val, (m) => {\n // We don't join m and x here because we only want parents,\n // not scalar values\n if (typeof val[m] === 'object') {\n // Keep going with recursive descent on val's\n // object children\n addRet(this._trace(\n expr.slice(), val[m], push(path, m), val, m, callback, true\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.currEval === false) {\n throw new Error('Eval [?(expr)] prevented in JSONPath expression.');\n }\n const safeLoc = loc.replace(/^\\?\\((.*?)\\)$/u, '$1');\n // check for a nested filter expression\n const nested = (/@.?([^?]*)[['](\\??\\(.*?\\))(?!.\\)\\])[\\]']/gu).exec(safeLoc);\n if (nested) {\n // find if there are matches in the nested expression\n // add them to the result set if there is at least one match\n this._walk(val, (m) => {\n const npath = [nested[2]];\n const nvalue = nested[1]\n ? val[m][nested[1]]\n : val[m];\n const filterResults = this._trace(npath, nvalue, path,\n parent, parentPropName, callback, true);\n if (filterResults.length > 0) {\n addRet(this._trace(x, val[m], push(path, m), val,\n m, callback, true));\n }\n });\n } else {\n this._walk(val, (m) => {\n if (this._eval(safeLoc, val[m], m, path, parent,\n parentPropName)) {\n addRet(this._trace(x, val[m], push(path, m), val, m,\n callback, true));\n }\n });\n }\n } else if (loc[0] === '(') { // [(expr)] (dynamic property/index)\n if (this.currEval === false) {\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 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 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 (val, f) {\n if (Array.isArray(val)) {\n const n = val.length;\n for (let i = 0; i < n; i++) {\n f(i);\n }\n } else if (val && typeof val === 'object') {\n Object.keys(val).forEach((m) => {\n f(m);\n });\n }\n};\n\nJSONPath.prototype._slice = function (\n loc, expr, val, path, parent, parentPropName, callback\n) {\n if (!Array.isArray(val)) {\n return undefined;\n }\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 this.currSandbox._$_parentProperty = parentPropName;\n this.currSandbox._$_parent = parent;\n this.currSandbox._$_property = _vname;\n this.currSandbox._$_root = this.json;\n this.currSandbox._$_v = _v;\n\n const containsPath = code.includes('@path');\n if (containsPath) {\n this.currSandbox._$_path = JSONPath.toPathString(path.concat([_vname]));\n }\n\n const scriptCacheKey = this.currEval + 'Script:' + code;\n if (!JSONPath.cache[scriptCacheKey]) {\n let script = code\n .replace(/@parentProperty/gu, '_$_parentProperty')\n .replace(/@parent/gu, '_$_parent')\n .replace(/@property/gu, '_$_property')\n .replace(/@root/gu, '_$_root')\n .replace(/@([.\\s)[])/gu, '_$_v$1');\n if (containsPath) {\n script = script.replace(/@path/gu, '_$_path');\n }\n if (\n this.currEval === 'safe' ||\n this.currEval === true ||\n this.currEval === undefined\n ) {\n JSONPath.cache[scriptCacheKey] = new this.safeVm.Script(script);\n } else if (this.currEval === 'native') {\n JSONPath.cache[scriptCacheKey] = new this.vm.Script(script);\n } else if (\n typeof this.currEval === 'function' &&\n this.currEval.prototype &&\n hasOwnProp.call(this.currEval.prototype, 'runInNewContext')\n ) {\n const CurrEval = this.currEval;\n JSONPath.cache[scriptCacheKey] = new CurrEval(script);\n } else if (typeof this.currEval === 'function') {\n JSONPath.cache[scriptCacheKey] = {\n runInNewContext: (context) => this.currEval(script, context)\n };\n } else {\n throw new TypeError(`Unknown \"eval\" property \"${this.currEval}\"`);\n }\n }\n\n try {\n return JSONPath.cache[scriptCacheKey].runInNewContext(this.currSandbox);\n } catch (e) {\n if (this.ignoreEvalErrors) {\n return false;\n }\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]) {\n return cache[expr].concat();\n }\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","/* eslint-disable no-bitwise */\nimport jsep from 'jsep';\nimport jsepRegex from '@jsep-plugin/regex';\nimport jsepAssignment from '@jsep-plugin/assignment';\nimport {JSONPath} from './jsonpath.js';\n\n/**\n * @typedef {any} ContextItem\n */\n\n/**\n * @typedef {any} EvaluatedResult\n */\n\n/**\n * @callback ConditionCallback\n * @param {ContextItem} 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\n// register plugins\njsep.plugins.register(jsepRegex, jsepAssignment);\n\nconst SafeEval = {\n /**\n * @param {jsep.Expression} ast\n * @param {Record} subs\n */\n evalAst (ast, subs) {\n switch (ast.type) {\n case 'BinaryExpression':\n case 'LogicalExpression':\n return SafeEval.evalBinaryExpression(ast, subs);\n case 'Compound':\n return SafeEval.evalCompound(ast, subs);\n case 'ConditionalExpression':\n return SafeEval.evalConditionalExpression(ast, subs);\n case 'Identifier':\n return SafeEval.evalIdentifier(ast, subs);\n case 'Literal':\n return SafeEval.evalLiteral(ast, subs);\n case 'MemberExpression':\n return SafeEval.evalMemberExpression(ast, subs);\n case 'UnaryExpression':\n return SafeEval.evalUnaryExpression(ast, subs);\n case 'ArrayExpression':\n return SafeEval.evalArrayExpression(ast, subs);\n case 'CallExpression':\n return SafeEval.evalCallExpression(ast, subs);\n case 'AssignmentExpression':\n return SafeEval.evalAssignmentExpression(ast, subs);\n default:\n throw SyntaxError('Unexpected expression', ast);\n }\n },\n evalBinaryExpression (ast, subs) {\n const result = {\n '||': (a, b) => a || b(),\n '&&': (a, b) => a && b(),\n '|': (a, b) => a | b(),\n '^': (a, b) => a ^ b(),\n '&': (a, b) => a & b(),\n // eslint-disable-next-line eqeqeq\n '==': (a, b) => a == b(),\n // eslint-disable-next-line eqeqeq\n '!=': (a, b) => a != b(),\n '===': (a, b) => a === b(),\n '!==': (a, b) => a !== b(),\n '<': (a, b) => a < b(),\n '>': (a, b) => a > b(),\n '<=': (a, b) => a <= b(),\n '>=': (a, b) => a >= b(),\n '<<': (a, b) => a << b(),\n '>>': (a, b) => a >> b(),\n '>>>': (a, b) => a >>> b(),\n '+': (a, b) => a + b(),\n '-': (a, b) => a - b(),\n '*': (a, b) => a * b(),\n '/': (a, b) => a / b(),\n '%': (a, b) => a % b()\n }[ast.operator](\n SafeEval.evalAst(ast.left, subs),\n () => SafeEval.evalAst(ast.right, subs)\n );\n return result;\n },\n evalCompound (ast, subs) {\n let last;\n for (let i = 0; i < ast.body.length; i++) {\n if (\n ast.body[i].type === 'Identifier' &&\n ['var', 'let', 'const'].includes(ast.body[i].name) &&\n ast.body[i + 1] &&\n ast.body[i + 1].type === 'AssignmentExpression'\n ) {\n // var x=2; is detected as\n // [{Identifier var}, {AssignmentExpression x=2}]\n i += 1;\n }\n const expr = ast.body[i];\n last = SafeEval.evalAst(expr, subs);\n }\n return last;\n },\n evalConditionalExpression (ast, subs) {\n if (SafeEval.evalAst(ast.test, subs)) {\n return SafeEval.evalAst(ast.consequent, subs);\n }\n return SafeEval.evalAst(ast.alternate, subs);\n },\n evalIdentifier (ast, subs) {\n if (ast.name in subs) {\n return subs[ast.name];\n }\n throw ReferenceError(`${ast.name} is not defined`);\n },\n evalLiteral (ast) {\n return ast.value;\n },\n evalMemberExpression (ast, subs) {\n const prop = ast.computed\n ? SafeEval.evalAst(ast.property) // `object[property]`\n : ast.property.name; // `object.property` property is Identifier\n const obj = SafeEval.evalAst(ast.object, subs);\n const result = obj[prop];\n if (typeof result === 'function') {\n return result.bind(obj); // arrow functions aren't affected by bind.\n }\n return result;\n },\n evalUnaryExpression (ast, subs) {\n const result = {\n '-': (a) => -SafeEval.evalAst(a, subs),\n '!': (a) => !SafeEval.evalAst(a, subs),\n '~': (a) => ~SafeEval.evalAst(a, subs),\n // eslint-disable-next-line no-implicit-coercion\n '+': (a) => +SafeEval.evalAst(a, subs)\n }[ast.operator](ast.argument);\n return result;\n },\n evalArrayExpression (ast, subs) {\n return ast.elements.map((el) => SafeEval.evalAst(el, subs));\n },\n evalCallExpression (ast, subs) {\n const args = ast.arguments.map((arg) => SafeEval.evalAst(arg, subs));\n const func = SafeEval.evalAst(ast.callee, subs);\n return func(...args);\n },\n evalAssignmentExpression (ast, subs) {\n if (ast.left.type !== 'Identifier') {\n throw SyntaxError('Invalid left-hand side in assignment');\n }\n const id = ast.left.name;\n const value = SafeEval.evalAst(ast.right, subs);\n subs[id] = value;\n return subs[id];\n }\n};\n\n/**\n * A replacement for NodeJS' VM.Script which is also {@link https://developer.mozilla.org/en-US/docs/Web/HTTP/CSP | Content Security Policy} friendly.\n */\nclass SafeScript {\n /**\n * @param {string} expr Expression to evaluate\n */\n constructor (expr) {\n this.code = expr;\n this.ast = jsep(this.code);\n }\n\n /**\n * @param {PlainObject} context Object whose items will be added\n * to evaluation\n * @returns {EvaluatedResult} Result of evaluated code\n */\n runInNewContext (context) {\n const keyMap = {...context};\n return SafeEval.evalAst(this.ast, keyMap);\n }\n}\n\n/**\n * In-browser replacement for NodeJS' VM.Script.\n */\nclass Script {\n /**\n * @param {string} expr Expression to evaluate\n */\n constructor (expr) {\n this.code = expr;\n }\n\n /**\n * @param {PlainObject} context Object whose items will be added\n * to evaluation\n * @returns {EvaluatedResult} Result of evaluated code\n */\n runInNewContext (context) {\n let expr = this.code;\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) => {\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) && !keys.includes('arguments')) {\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 =\n lastStatementEnd > -1\n ? expr.slice(0, lastStatementEnd + 1) +\n ' return ' +\n 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\nJSONPath.prototype.vm = {\n Script\n};\n\nJSONPath.prototype.safeVm = {\n Script: SafeScript\n};\n\nexport {JSONPath, SafeScript};\n"],"names":["Hooks","_createClass","_classCallCheck","key","value","name","callback","first","arguments","this","add","Array","isArray","forEach","env","call","context","Plugins","jsep","registered","_this","_len","length","plugins","_key","plugin","_typeof","init","Error","Jsep","expr","index","get","charAt","charCodeAt","message","error","description","node","hooks","run","find","ch","code","SPACE_CODE","TAB_CODE","LF_CODE","CR_CODE","runHook","nodes","gobbleExpressions","type","COMPOUND","body","untilICode","ch_i","SEMCOL_CODE","COMMA_CODE","gobbleExpression","push","throwError","searchHook","gobbleBinaryExpression","gobbleSpaces","to_check","substr","max_binop_len","tc_len","binary_ops","hasOwnProperty","isIdentifierStart","isIdentifierPart","biop","prec","stack","biop_info","left","right","i","cur_biop","prev","gobbleToken","gobbleBinaryOp","binaryPrecedence","right_a","right_associative","has","pop","BINARY_EXP","operator","isDecimalDigit","PERIOD_CODE","gobbleNumericLiteral","SQUOTE_CODE","DQUOTE_CODE","gobbleStringLiteral","OBRACK_CODE","gobbleArray","max_unop_len","unary_ops","argument","UNARY_EXP","prefix","gobbleIdentifier","literals","LITERAL","raw","this_str","THIS_EXP","OPAREN_CODE","gobbleGroup","gobbleTokenProperty","QUMARK_CODE","optional","MEMBER_EXP","computed","object","property","CBRACK_CODE","CALL_EXP","gobbleArguments","CPAREN_CODE","callee","chCode","number","parseFloat","str","startIndex","quote","closed","substring","start","IDENTIFIER","slice","termination","args","separator_count","String","fromCharCode","arg","SEQUENCE_EXP","expressions","ARRAY_EXP","elements","version","op_name","Math","max","precedence","isRightAssociative","char","additional_identifier_chars","literal_name","literal_value","getMaxKeyLen","parse","obj","apply","concat","_toConsumableArray","Object","keys","map","k","op_val","assign","COLON_CODE","Set","true","false","null","getOwnPropertyNames","m","undefined","ternary","test","consequent","alternate","newTest","register","patternIndex","inCharSet","pattern","flags","RegExp","e","assignmentOperators","updateOperators","assignmentPrecedence","updateNodeTypes","updateBinariesToAssignments","values","val","op","addBinaryOp","some","c","includes","_this2","hasOwnProp","prototype","arr","item","unshift","NewError","_Error","_callSuper","avoidNew","_inherits","_wrapNativeSuper","JSONPath","opts","otherTypeCallback","optObj","json","path","resultType","flatten","wrap","sandbox","eval","ignoreEvalErrors","parent","parentProperty","TypeError","autostart","ret","evaluate","currParent","currParentProperty","currResultType","currEval","currSandbox","currOtherTypeCallback","toPathString","exprList","toPathArray","shift","_hasParentSelector","result","_trace","filter","ea","isParentSelector","hasArrExpr","reduce","rslt","valOrPath","_getPreferredOutput","pointer","toPointer","_handleCallback","fullRetObj","preferredOutput","parentPropName","literalPriority","retObj","_this3","loc","x","addRet","elems","t","_walk","_slice","indexOf","safeLoc","replace","nested","exec","npath","nvalue","_eval","addType","valueType","Number","isFinite","locProp","_step","_iterator","_createForOfIteratorHelper","split","s","n","done","part","err","f","rett","tmp","tl","tt","splice","len","parts","step","parseInt","end","min","_v","_vname","_this4","_$_parentProperty","_$_parent","_$_property","_$_root","_$_v","containsPath","_$_path","scriptCacheKey","cache","script","safeVm","Script","vm","CurrEval","runInNewContext","pathArr","p","toString","subx","$0","$1","prop","ups","join","exp","match","jsepRegex","jsepAssignment","SafeEval","evalAst","ast","subs","evalBinaryExpression","evalCompound","evalConditionalExpression","evalIdentifier","evalLiteral","evalMemberExpression","evalUnaryExpression","evalArrayExpression","evalCallExpression","evalAssignmentExpression","SyntaxError","a","b","last","ReferenceError","bind","el","id","SafeScript","keyMap","_objectSpread","funcs","source","target","conditionCb","il","moveToAnotherArray","vr","funcString","func","fString","lastStatementEnd","lastIndexOf","_construct","Function"],"mappings":"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","x_google_ignoreList":[0,1,2]} \ No newline at end of file +{"version":3,"file":"index-browser-esm.min.js","sources":["../node_modules/.pnpm/jsep@1.3.9/node_modules/jsep/dist/jsep.js","../node_modules/.pnpm/@jsep-plugin+regex@1.0.3_jsep@1.3.9/node_modules/@jsep-plugin/regex/dist/index.js","../node_modules/.pnpm/@jsep-plugin+assignment@1.2.1_jsep@1.3.9/node_modules/@jsep-plugin/assignment/dist/index.js","../src/jsonpath.js","../src/jsonpath-browser.js"],"sourcesContent":["/**\n * @implements {IHooks}\n */\nclass Hooks {\n\t/**\n\t * @callback HookCallback\n\t * @this {*|Jsep} this\n\t * @param {Jsep} env\n\t * @returns: void\n\t */\n\t/**\n\t * Adds the given callback to the list of callbacks for the given hook.\n\t *\n\t * The callback will be invoked when the hook it is registered for is run.\n\t *\n\t * One callback function can be registered to multiple hooks and the same hook multiple times.\n\t *\n\t * @param {string|object} name The name of the hook, or an object of callbacks keyed by name\n\t * @param {HookCallback|boolean} callback The callback function which is given environment variables.\n\t * @param {?boolean} [first=false] Will add the hook to the top of the list (defaults to the bottom)\n\t * @public\n\t */\n\tadd(name, callback, first) {\n\t\tif (typeof arguments[0] != 'string') {\n\t\t\t// Multiple hook callbacks, keyed by name\n\t\t\tfor (let name in arguments[0]) {\n\t\t\t\tthis.add(name, arguments[0][name], arguments[1]);\n\t\t\t}\n\t\t}\n\t\telse {\n\t\t\t(Array.isArray(name) ? name : [name]).forEach(function (name) {\n\t\t\t\tthis[name] = this[name] || [];\n\n\t\t\t\tif (callback) {\n\t\t\t\t\tthis[name][first ? 'unshift' : 'push'](callback);\n\t\t\t\t}\n\t\t\t}, this);\n\t\t}\n\t}\n\n\t/**\n\t * Runs a hook invoking all registered callbacks with the given environment variables.\n\t *\n\t * Callbacks will be invoked synchronously and in the order in which they were registered.\n\t *\n\t * @param {string} name The name of the hook.\n\t * @param {Object} env The environment variables of the hook passed to all callbacks registered.\n\t * @public\n\t */\n\trun(name, env) {\n\t\tthis[name] = this[name] || [];\n\t\tthis[name].forEach(function (callback) {\n\t\t\tcallback.call(env && env.context ? env.context : env, env);\n\t\t});\n\t}\n}\n\n/**\n * @implements {IPlugins}\n */\nclass Plugins {\n\tconstructor(jsep) {\n\t\tthis.jsep = jsep;\n\t\tthis.registered = {};\n\t}\n\n\t/**\n\t * @callback PluginSetup\n\t * @this {Jsep} jsep\n\t * @returns: void\n\t */\n\t/**\n\t * Adds the given plugin(s) to the registry\n\t *\n\t * @param {object} plugins\n\t * @param {string} plugins.name The name of the plugin\n\t * @param {PluginSetup} plugins.init The init function\n\t * @public\n\t */\n\tregister(...plugins) {\n\t\tplugins.forEach((plugin) => {\n\t\t\tif (typeof plugin !== 'object' || !plugin.name || !plugin.init) {\n\t\t\t\tthrow new Error('Invalid JSEP plugin format');\n\t\t\t}\n\t\t\tif (this.registered[plugin.name]) {\n\t\t\t\t// already registered. Ignore.\n\t\t\t\treturn;\n\t\t\t}\n\t\t\tplugin.init(this.jsep);\n\t\t\tthis.registered[plugin.name] = plugin;\n\t\t});\n\t}\n}\n\n// JavaScript Expression Parser (JSEP) 1.3.9\n\nclass Jsep {\n\t/**\n\t * @returns {string}\n\t */\n\tstatic get version() {\n\t\t// To be filled in by the template\n\t\treturn '1.3.9';\n\t}\n\n\t/**\n\t * @returns {string}\n\t */\n\tstatic toString() {\n\t\treturn 'JavaScript Expression Parser (JSEP) v' + Jsep.version;\n\t};\n\n\t// ==================== CONFIG ================================\n\t/**\n\t * @method addUnaryOp\n\t * @param {string} op_name The name of the unary op to add\n\t * @returns {Jsep}\n\t */\n\tstatic addUnaryOp(op_name) {\n\t\tJsep.max_unop_len = Math.max(op_name.length, Jsep.max_unop_len);\n\t\tJsep.unary_ops[op_name] = 1;\n\t\treturn Jsep;\n\t}\n\n\t/**\n\t * @method jsep.addBinaryOp\n\t * @param {string} op_name The name of the binary op to add\n\t * @param {number} precedence The precedence of the binary op (can be a float). Higher number = higher precedence\n\t * @param {boolean} [isRightAssociative=false] whether operator is right-associative\n\t * @returns {Jsep}\n\t */\n\tstatic addBinaryOp(op_name, precedence, isRightAssociative) {\n\t\tJsep.max_binop_len = Math.max(op_name.length, Jsep.max_binop_len);\n\t\tJsep.binary_ops[op_name] = precedence;\n\t\tif (isRightAssociative) {\n\t\t\tJsep.right_associative.add(op_name);\n\t\t}\n\t\telse {\n\t\t\tJsep.right_associative.delete(op_name);\n\t\t}\n\t\treturn Jsep;\n\t}\n\n\t/**\n\t * @method addIdentifierChar\n\t * @param {string} char The additional character to treat as a valid part of an identifier\n\t * @returns {Jsep}\n\t */\n\tstatic addIdentifierChar(char) {\n\t\tJsep.additional_identifier_chars.add(char);\n\t\treturn Jsep;\n\t}\n\n\t/**\n\t * @method addLiteral\n\t * @param {string} literal_name The name of the literal to add\n\t * @param {*} literal_value The value of the literal\n\t * @returns {Jsep}\n\t */\n\tstatic addLiteral(literal_name, literal_value) {\n\t\tJsep.literals[literal_name] = literal_value;\n\t\treturn Jsep;\n\t}\n\n\t/**\n\t * @method removeUnaryOp\n\t * @param {string} op_name The name of the unary op to remove\n\t * @returns {Jsep}\n\t */\n\tstatic removeUnaryOp(op_name) {\n\t\tdelete Jsep.unary_ops[op_name];\n\t\tif (op_name.length === Jsep.max_unop_len) {\n\t\t\tJsep.max_unop_len = Jsep.getMaxKeyLen(Jsep.unary_ops);\n\t\t}\n\t\treturn Jsep;\n\t}\n\n\t/**\n\t * @method removeAllUnaryOps\n\t * @returns {Jsep}\n\t */\n\tstatic removeAllUnaryOps() {\n\t\tJsep.unary_ops = {};\n\t\tJsep.max_unop_len = 0;\n\n\t\treturn Jsep;\n\t}\n\n\t/**\n\t * @method removeIdentifierChar\n\t * @param {string} char The additional character to stop treating as a valid part of an identifier\n\t * @returns {Jsep}\n\t */\n\tstatic removeIdentifierChar(char) {\n\t\tJsep.additional_identifier_chars.delete(char);\n\t\treturn Jsep;\n\t}\n\n\t/**\n\t * @method removeBinaryOp\n\t * @param {string} op_name The name of the binary op to remove\n\t * @returns {Jsep}\n\t */\n\tstatic removeBinaryOp(op_name) {\n\t\tdelete Jsep.binary_ops[op_name];\n\n\t\tif (op_name.length === Jsep.max_binop_len) {\n\t\t\tJsep.max_binop_len = Jsep.getMaxKeyLen(Jsep.binary_ops);\n\t\t}\n\t\tJsep.right_associative.delete(op_name);\n\n\t\treturn Jsep;\n\t}\n\n\t/**\n\t * @method removeAllBinaryOps\n\t * @returns {Jsep}\n\t */\n\tstatic removeAllBinaryOps() {\n\t\tJsep.binary_ops = {};\n\t\tJsep.max_binop_len = 0;\n\n\t\treturn Jsep;\n\t}\n\n\t/**\n\t * @method removeLiteral\n\t * @param {string} literal_name The name of the literal to remove\n\t * @returns {Jsep}\n\t */\n\tstatic removeLiteral(literal_name) {\n\t\tdelete Jsep.literals[literal_name];\n\t\treturn Jsep;\n\t}\n\n\t/**\n\t * @method removeAllLiterals\n\t * @returns {Jsep}\n\t */\n\tstatic removeAllLiterals() {\n\t\tJsep.literals = {};\n\n\t\treturn Jsep;\n\t}\n\t// ==================== END CONFIG ============================\n\n\n\t/**\n\t * @returns {string}\n\t */\n\tget char() {\n\t\treturn this.expr.charAt(this.index);\n\t}\n\n\t/**\n\t * @returns {number}\n\t */\n\tget code() {\n\t\treturn this.expr.charCodeAt(this.index);\n\t};\n\n\n\t/**\n\t * @param {string} expr a string with the passed in express\n\t * @returns Jsep\n\t */\n\tconstructor(expr) {\n\t\t// `index` stores the character number we are currently at\n\t\t// All of the gobbles below will modify `index` as we move along\n\t\tthis.expr = expr;\n\t\tthis.index = 0;\n\t}\n\n\t/**\n\t * static top-level parser\n\t * @returns {jsep.Expression}\n\t */\n\tstatic parse(expr) {\n\t\treturn (new Jsep(expr)).parse();\n\t}\n\n\t/**\n\t * Get the longest key length of any object\n\t * @param {object} obj\n\t * @returns {number}\n\t */\n\tstatic getMaxKeyLen(obj) {\n\t\treturn Math.max(0, ...Object.keys(obj).map(k => k.length));\n\t}\n\n\t/**\n\t * `ch` is a character code in the next three functions\n\t * @param {number} ch\n\t * @returns {boolean}\n\t */\n\tstatic isDecimalDigit(ch) {\n\t\treturn (ch >= 48 && ch <= 57); // 0...9\n\t}\n\n\t/**\n\t * Returns the precedence of a binary operator or `0` if it isn't a binary operator. Can be float.\n\t * @param {string} op_val\n\t * @returns {number}\n\t */\n\tstatic binaryPrecedence(op_val) {\n\t\treturn Jsep.binary_ops[op_val] || 0;\n\t}\n\n\t/**\n\t * Looks for start of identifier\n\t * @param {number} ch\n\t * @returns {boolean}\n\t */\n\tstatic isIdentifierStart(ch) {\n\t\treturn (ch >= 65 && ch <= 90) || // A...Z\n\t\t\t(ch >= 97 && ch <= 122) || // a...z\n\t\t\t(ch >= 128 && !Jsep.binary_ops[String.fromCharCode(ch)]) || // any non-ASCII that is not an operator\n\t\t\t(Jsep.additional_identifier_chars.has(String.fromCharCode(ch))); // additional characters\n\t}\n\n\t/**\n\t * @param {number} ch\n\t * @returns {boolean}\n\t */\n\tstatic isIdentifierPart(ch) {\n\t\treturn Jsep.isIdentifierStart(ch) || Jsep.isDecimalDigit(ch);\n\t}\n\n\t/**\n\t * throw error at index of the expression\n\t * @param {string} message\n\t * @throws\n\t */\n\tthrowError(message) {\n\t\tconst error = new Error(message + ' at character ' + this.index);\n\t\terror.index = this.index;\n\t\terror.description = message;\n\t\tthrow error;\n\t}\n\n\t/**\n\t * Run a given hook\n\t * @param {string} name\n\t * @param {jsep.Expression|false} [node]\n\t * @returns {?jsep.Expression}\n\t */\n\trunHook(name, node) {\n\t\tif (Jsep.hooks[name]) {\n\t\t\tconst env = { context: this, node };\n\t\t\tJsep.hooks.run(name, env);\n\t\t\treturn env.node;\n\t\t}\n\t\treturn node;\n\t}\n\n\t/**\n\t * Runs a given hook until one returns a node\n\t * @param {string} name\n\t * @returns {?jsep.Expression}\n\t */\n\tsearchHook(name) {\n\t\tif (Jsep.hooks[name]) {\n\t\t\tconst env = { context: this };\n\t\t\tJsep.hooks[name].find(function (callback) {\n\t\t\t\tcallback.call(env.context, env);\n\t\t\t\treturn env.node;\n\t\t\t});\n\t\t\treturn env.node;\n\t\t}\n\t}\n\n\t/**\n\t * Push `index` up to the next non-space character\n\t */\n\tgobbleSpaces() {\n\t\tlet ch = this.code;\n\t\t// Whitespace\n\t\twhile (ch === Jsep.SPACE_CODE\n\t\t|| ch === Jsep.TAB_CODE\n\t\t|| ch === Jsep.LF_CODE\n\t\t|| ch === Jsep.CR_CODE) {\n\t\t\tch = this.expr.charCodeAt(++this.index);\n\t\t}\n\t\tthis.runHook('gobble-spaces');\n\t}\n\n\t/**\n\t * Top-level method to parse all expressions and returns compound or single node\n\t * @returns {jsep.Expression}\n\t */\n\tparse() {\n\t\tthis.runHook('before-all');\n\t\tconst nodes = this.gobbleExpressions();\n\n\t\t// If there's only one expression just try returning the expression\n\t\tconst node = nodes.length === 1\n\t\t ? nodes[0]\n\t\t\t: {\n\t\t\t\ttype: Jsep.COMPOUND,\n\t\t\t\tbody: nodes\n\t\t\t};\n\t\treturn this.runHook('after-all', node);\n\t}\n\n\t/**\n\t * top-level parser (but can be reused within as well)\n\t * @param {number} [untilICode]\n\t * @returns {jsep.Expression[]}\n\t */\n\tgobbleExpressions(untilICode) {\n\t\tlet nodes = [], ch_i, node;\n\n\t\twhile (this.index < this.expr.length) {\n\t\t\tch_i = this.code;\n\n\t\t\t// Expressions can be separated by semicolons, commas, or just inferred without any\n\t\t\t// separators\n\t\t\tif (ch_i === Jsep.SEMCOL_CODE || ch_i === Jsep.COMMA_CODE) {\n\t\t\t\tthis.index++; // ignore separators\n\t\t\t}\n\t\t\telse {\n\t\t\t\t// Try to gobble each expression individually\n\t\t\t\tif (node = this.gobbleExpression()) {\n\t\t\t\t\tnodes.push(node);\n\t\t\t\t\t// If we weren't able to find a binary expression and are out of room, then\n\t\t\t\t\t// the expression passed in probably has too much\n\t\t\t\t}\n\t\t\t\telse if (this.index < this.expr.length) {\n\t\t\t\t\tif (ch_i === untilICode) {\n\t\t\t\t\t\tbreak;\n\t\t\t\t\t}\n\t\t\t\t\tthis.throwError('Unexpected \"' + this.char + '\"');\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\n\t\treturn nodes;\n\t}\n\n\t/**\n\t * The main parsing function.\n\t * @returns {?jsep.Expression}\n\t */\n\tgobbleExpression() {\n\t\tconst node = this.searchHook('gobble-expression') || this.gobbleBinaryExpression();\n\t\tthis.gobbleSpaces();\n\n\t\treturn this.runHook('after-expression', node);\n\t}\n\n\t/**\n\t * Search for the operation portion of the string (e.g. `+`, `===`)\n\t * Start by taking the longest possible binary operations (3 characters: `===`, `!==`, `>>>`)\n\t * and move down from 3 to 2 to 1 character until a matching binary operation is found\n\t * then, return that binary operation\n\t * @returns {string|boolean}\n\t */\n\tgobbleBinaryOp() {\n\t\tthis.gobbleSpaces();\n\t\tlet to_check = this.expr.substr(this.index, Jsep.max_binop_len);\n\t\tlet tc_len = to_check.length;\n\n\t\twhile (tc_len > 0) {\n\t\t\t// Don't accept a binary op when it is an identifier.\n\t\t\t// Binary ops that start with a identifier-valid character must be followed\n\t\t\t// by a non identifier-part valid character\n\t\t\tif (Jsep.binary_ops.hasOwnProperty(to_check) && (\n\t\t\t\t!Jsep.isIdentifierStart(this.code) ||\n\t\t\t\t(this.index + to_check.length < this.expr.length && !Jsep.isIdentifierPart(this.expr.charCodeAt(this.index + to_check.length)))\n\t\t\t)) {\n\t\t\t\tthis.index += tc_len;\n\t\t\t\treturn to_check;\n\t\t\t}\n\t\t\tto_check = to_check.substr(0, --tc_len);\n\t\t}\n\t\treturn false;\n\t}\n\n\t/**\n\t * This function is responsible for gobbling an individual expression,\n\t * e.g. `1`, `1+2`, `a+(b*2)-Math.sqrt(2)`\n\t * @returns {?jsep.BinaryExpression}\n\t */\n\tgobbleBinaryExpression() {\n\t\tlet node, biop, prec, stack, biop_info, left, right, i, cur_biop;\n\n\t\t// First, try to get the leftmost thing\n\t\t// Then, check to see if there's a binary operator operating on that leftmost thing\n\t\t// Don't gobbleBinaryOp without a left-hand-side\n\t\tleft = this.gobbleToken();\n\t\tif (!left) {\n\t\t\treturn left;\n\t\t}\n\t\tbiop = this.gobbleBinaryOp();\n\n\t\t// If there wasn't a binary operator, just return the leftmost node\n\t\tif (!biop) {\n\t\t\treturn left;\n\t\t}\n\n\t\t// Otherwise, we need to start a stack to properly place the binary operations in their\n\t\t// precedence structure\n\t\tbiop_info = { value: biop, prec: Jsep.binaryPrecedence(biop), right_a: Jsep.right_associative.has(biop) };\n\n\t\tright = this.gobbleToken();\n\n\t\tif (!right) {\n\t\t\tthis.throwError(\"Expected expression after \" + biop);\n\t\t}\n\n\t\tstack = [left, biop_info, right];\n\n\t\t// Properly deal with precedence using [recursive descent](http://www.engr.mun.ca/~theo/Misc/exp_parsing.htm)\n\t\twhile ((biop = this.gobbleBinaryOp())) {\n\t\t\tprec = Jsep.binaryPrecedence(biop);\n\n\t\t\tif (prec === 0) {\n\t\t\t\tthis.index -= biop.length;\n\t\t\t\tbreak;\n\t\t\t}\n\n\t\t\tbiop_info = { value: biop, prec, right_a: Jsep.right_associative.has(biop) };\n\n\t\t\tcur_biop = biop;\n\n\t\t\t// Reduce: make a binary expression from the three topmost entries.\n\t\t\tconst comparePrev = prev => biop_info.right_a && prev.right_a\n\t\t\t\t? prec > prev.prec\n\t\t\t\t: prec <= prev.prec;\n\t\t\twhile ((stack.length > 2) && comparePrev(stack[stack.length - 2])) {\n\t\t\t\tright = stack.pop();\n\t\t\t\tbiop = stack.pop().value;\n\t\t\t\tleft = stack.pop();\n\t\t\t\tnode = {\n\t\t\t\t\ttype: Jsep.BINARY_EXP,\n\t\t\t\t\toperator: biop,\n\t\t\t\t\tleft,\n\t\t\t\t\tright\n\t\t\t\t};\n\t\t\t\tstack.push(node);\n\t\t\t}\n\n\t\t\tnode = this.gobbleToken();\n\n\t\t\tif (!node) {\n\t\t\t\tthis.throwError(\"Expected expression after \" + cur_biop);\n\t\t\t}\n\n\t\t\tstack.push(biop_info, node);\n\t\t}\n\n\t\ti = stack.length - 1;\n\t\tnode = stack[i];\n\n\t\twhile (i > 1) {\n\t\t\tnode = {\n\t\t\t\ttype: Jsep.BINARY_EXP,\n\t\t\t\toperator: stack[i - 1].value,\n\t\t\t\tleft: stack[i - 2],\n\t\t\t\tright: node\n\t\t\t};\n\t\t\ti -= 2;\n\t\t}\n\n\t\treturn node;\n\t}\n\n\t/**\n\t * An individual part of a binary expression:\n\t * e.g. `foo.bar(baz)`, `1`, `\"abc\"`, `(a % 2)` (because it's in parenthesis)\n\t * @returns {boolean|jsep.Expression}\n\t */\n\tgobbleToken() {\n\t\tlet ch, to_check, tc_len, node;\n\n\t\tthis.gobbleSpaces();\n\t\tnode = this.searchHook('gobble-token');\n\t\tif (node) {\n\t\t\treturn this.runHook('after-token', node);\n\t\t}\n\n\t\tch = this.code;\n\n\t\tif (Jsep.isDecimalDigit(ch) || ch === Jsep.PERIOD_CODE) {\n\t\t\t// Char code 46 is a dot `.` which can start off a numeric literal\n\t\t\treturn this.gobbleNumericLiteral();\n\t\t}\n\n\t\tif (ch === Jsep.SQUOTE_CODE || ch === Jsep.DQUOTE_CODE) {\n\t\t\t// Single or double quotes\n\t\t\tnode = this.gobbleStringLiteral();\n\t\t}\n\t\telse if (ch === Jsep.OBRACK_CODE) {\n\t\t\tnode = this.gobbleArray();\n\t\t}\n\t\telse {\n\t\t\tto_check = this.expr.substr(this.index, Jsep.max_unop_len);\n\t\t\ttc_len = to_check.length;\n\n\t\t\twhile (tc_len > 0) {\n\t\t\t\t// Don't accept an unary op when it is an identifier.\n\t\t\t\t// Unary ops that start with a identifier-valid character must be followed\n\t\t\t\t// by a non identifier-part valid character\n\t\t\t\tif (Jsep.unary_ops.hasOwnProperty(to_check) && (\n\t\t\t\t\t!Jsep.isIdentifierStart(this.code) ||\n\t\t\t\t\t(this.index + to_check.length < this.expr.length && !Jsep.isIdentifierPart(this.expr.charCodeAt(this.index + to_check.length)))\n\t\t\t\t)) {\n\t\t\t\t\tthis.index += tc_len;\n\t\t\t\t\tconst argument = this.gobbleToken();\n\t\t\t\t\tif (!argument) {\n\t\t\t\t\t\tthis.throwError('missing unaryOp argument');\n\t\t\t\t\t}\n\t\t\t\t\treturn this.runHook('after-token', {\n\t\t\t\t\t\ttype: Jsep.UNARY_EXP,\n\t\t\t\t\t\toperator: to_check,\n\t\t\t\t\t\targument,\n\t\t\t\t\t\tprefix: true\n\t\t\t\t\t});\n\t\t\t\t}\n\n\t\t\t\tto_check = to_check.substr(0, --tc_len);\n\t\t\t}\n\n\t\t\tif (Jsep.isIdentifierStart(ch)) {\n\t\t\t\tnode = this.gobbleIdentifier();\n\t\t\t\tif (Jsep.literals.hasOwnProperty(node.name)) {\n\t\t\t\t\tnode = {\n\t\t\t\t\t\ttype: Jsep.LITERAL,\n\t\t\t\t\t\tvalue: Jsep.literals[node.name],\n\t\t\t\t\t\traw: node.name,\n\t\t\t\t\t};\n\t\t\t\t}\n\t\t\t\telse if (node.name === Jsep.this_str) {\n\t\t\t\t\tnode = { type: Jsep.THIS_EXP };\n\t\t\t\t}\n\t\t\t}\n\t\t\telse if (ch === Jsep.OPAREN_CODE) { // open parenthesis\n\t\t\t\tnode = this.gobbleGroup();\n\t\t\t}\n\t\t}\n\n\t\tif (!node) {\n\t\t\treturn this.runHook('after-token', false);\n\t\t}\n\n\t\tnode = this.gobbleTokenProperty(node);\n\t\treturn this.runHook('after-token', node);\n\t}\n\n\t/**\n\t * Gobble properties of of identifiers/strings/arrays/groups.\n\t * e.g. `foo`, `bar.baz`, `foo['bar'].baz`\n\t * It also gobbles function calls:\n\t * e.g. `Math.acos(obj.angle)`\n\t * @param {jsep.Expression} node\n\t * @returns {jsep.Expression}\n\t */\n\tgobbleTokenProperty(node) {\n\t\tthis.gobbleSpaces();\n\n\t\tlet ch = this.code;\n\t\twhile (ch === Jsep.PERIOD_CODE || ch === Jsep.OBRACK_CODE || ch === Jsep.OPAREN_CODE || ch === Jsep.QUMARK_CODE) {\n\t\t\tlet optional;\n\t\t\tif (ch === Jsep.QUMARK_CODE) {\n\t\t\t\tif (this.expr.charCodeAt(this.index + 1) !== Jsep.PERIOD_CODE) {\n\t\t\t\t\tbreak;\n\t\t\t\t}\n\t\t\t\toptional = true;\n\t\t\t\tthis.index += 2;\n\t\t\t\tthis.gobbleSpaces();\n\t\t\t\tch = this.code;\n\t\t\t}\n\t\t\tthis.index++;\n\n\t\t\tif (ch === Jsep.OBRACK_CODE) {\n\t\t\t\tnode = {\n\t\t\t\t\ttype: Jsep.MEMBER_EXP,\n\t\t\t\t\tcomputed: true,\n\t\t\t\t\tobject: node,\n\t\t\t\t\tproperty: this.gobbleExpression()\n\t\t\t\t};\n\t\t\t\tif (!node.property) {\n\t\t\t\t\tthis.throwError('Unexpected \"' + this.char + '\"');\n\t\t\t\t}\n\t\t\t\tthis.gobbleSpaces();\n\t\t\t\tch = this.code;\n\t\t\t\tif (ch !== Jsep.CBRACK_CODE) {\n\t\t\t\t\tthis.throwError('Unclosed [');\n\t\t\t\t}\n\t\t\t\tthis.index++;\n\t\t\t}\n\t\t\telse if (ch === Jsep.OPAREN_CODE) {\n\t\t\t\t// A function call is being made; gobble all the arguments\n\t\t\t\tnode = {\n\t\t\t\t\ttype: Jsep.CALL_EXP,\n\t\t\t\t\t'arguments': this.gobbleArguments(Jsep.CPAREN_CODE),\n\t\t\t\t\tcallee: node\n\t\t\t\t};\n\t\t\t}\n\t\t\telse if (ch === Jsep.PERIOD_CODE || optional) {\n\t\t\t\tif (optional) {\n\t\t\t\t\tthis.index--;\n\t\t\t\t}\n\t\t\t\tthis.gobbleSpaces();\n\t\t\t\tnode = {\n\t\t\t\t\ttype: Jsep.MEMBER_EXP,\n\t\t\t\t\tcomputed: false,\n\t\t\t\t\tobject: node,\n\t\t\t\t\tproperty: this.gobbleIdentifier(),\n\t\t\t\t};\n\t\t\t}\n\n\t\t\tif (optional) {\n\t\t\t\tnode.optional = true;\n\t\t\t} // else leave undefined for compatibility with esprima\n\n\t\t\tthis.gobbleSpaces();\n\t\t\tch = this.code;\n\t\t}\n\n\t\treturn node;\n\t}\n\n\t/**\n\t * Parse simple numeric literals: `12`, `3.4`, `.5`. Do this by using a string to\n\t * keep track of everything in the numeric literal and then calling `parseFloat` on that string\n\t * @returns {jsep.Literal}\n\t */\n\tgobbleNumericLiteral() {\n\t\tlet number = '', ch, chCode;\n\n\t\twhile (Jsep.isDecimalDigit(this.code)) {\n\t\t\tnumber += this.expr.charAt(this.index++);\n\t\t}\n\n\t\tif (this.code === Jsep.PERIOD_CODE) { // can start with a decimal marker\n\t\t\tnumber += this.expr.charAt(this.index++);\n\n\t\t\twhile (Jsep.isDecimalDigit(this.code)) {\n\t\t\t\tnumber += this.expr.charAt(this.index++);\n\t\t\t}\n\t\t}\n\n\t\tch = this.char;\n\n\t\tif (ch === 'e' || ch === 'E') { // exponent marker\n\t\t\tnumber += this.expr.charAt(this.index++);\n\t\t\tch = this.char;\n\n\t\t\tif (ch === '+' || ch === '-') { // exponent sign\n\t\t\t\tnumber += this.expr.charAt(this.index++);\n\t\t\t}\n\n\t\t\twhile (Jsep.isDecimalDigit(this.code)) { // exponent itself\n\t\t\t\tnumber += this.expr.charAt(this.index++);\n\t\t\t}\n\n\t\t\tif (!Jsep.isDecimalDigit(this.expr.charCodeAt(this.index - 1)) ) {\n\t\t\t\tthis.throwError('Expected exponent (' + number + this.char + ')');\n\t\t\t}\n\t\t}\n\n\t\tchCode = this.code;\n\n\t\t// Check to make sure this isn't a variable name that start with a number (123abc)\n\t\tif (Jsep.isIdentifierStart(chCode)) {\n\t\t\tthis.throwError('Variable names cannot start with a number (' +\n\t\t\t\tnumber + this.char + ')');\n\t\t}\n\t\telse if (chCode === Jsep.PERIOD_CODE || (number.length === 1 && number.charCodeAt(0) === Jsep.PERIOD_CODE)) {\n\t\t\tthis.throwError('Unexpected period');\n\t\t}\n\n\t\treturn {\n\t\t\ttype: Jsep.LITERAL,\n\t\t\tvalue: parseFloat(number),\n\t\t\traw: number\n\t\t};\n\t}\n\n\t/**\n\t * Parses a string literal, staring with single or double quotes with basic support for escape codes\n\t * e.g. `\"hello world\"`, `'this is\\nJSEP'`\n\t * @returns {jsep.Literal}\n\t */\n\tgobbleStringLiteral() {\n\t\tlet str = '';\n\t\tconst startIndex = this.index;\n\t\tconst quote = this.expr.charAt(this.index++);\n\t\tlet closed = false;\n\n\t\twhile (this.index < this.expr.length) {\n\t\t\tlet ch = this.expr.charAt(this.index++);\n\n\t\t\tif (ch === quote) {\n\t\t\t\tclosed = true;\n\t\t\t\tbreak;\n\t\t\t}\n\t\t\telse if (ch === '\\\\') {\n\t\t\t\t// Check for all of the common escape codes\n\t\t\t\tch = this.expr.charAt(this.index++);\n\n\t\t\t\tswitch (ch) {\n\t\t\t\t\tcase 'n': str += '\\n'; break;\n\t\t\t\t\tcase 'r': str += '\\r'; break;\n\t\t\t\t\tcase 't': str += '\\t'; break;\n\t\t\t\t\tcase 'b': str += '\\b'; break;\n\t\t\t\t\tcase 'f': str += '\\f'; break;\n\t\t\t\t\tcase 'v': str += '\\x0B'; break;\n\t\t\t\t\tdefault : str += ch;\n\t\t\t\t}\n\t\t\t}\n\t\t\telse {\n\t\t\t\tstr += ch;\n\t\t\t}\n\t\t}\n\n\t\tif (!closed) {\n\t\t\tthis.throwError('Unclosed quote after \"' + str + '\"');\n\t\t}\n\n\t\treturn {\n\t\t\ttype: Jsep.LITERAL,\n\t\t\tvalue: str,\n\t\t\traw: this.expr.substring(startIndex, this.index),\n\t\t};\n\t}\n\n\t/**\n\t * Gobbles only identifiers\n\t * e.g.: `foo`, `_value`, `$x1`\n\t * Also, this function checks if that identifier is a literal:\n\t * (e.g. `true`, `false`, `null`) or `this`\n\t * @returns {jsep.Identifier}\n\t */\n\tgobbleIdentifier() {\n\t\tlet ch = this.code, start = this.index;\n\n\t\tif (Jsep.isIdentifierStart(ch)) {\n\t\t\tthis.index++;\n\t\t}\n\t\telse {\n\t\t\tthis.throwError('Unexpected ' + this.char);\n\t\t}\n\n\t\twhile (this.index < this.expr.length) {\n\t\t\tch = this.code;\n\n\t\t\tif (Jsep.isIdentifierPart(ch)) {\n\t\t\t\tthis.index++;\n\t\t\t}\n\t\t\telse {\n\t\t\t\tbreak;\n\t\t\t}\n\t\t}\n\t\treturn {\n\t\t\ttype: Jsep.IDENTIFIER,\n\t\t\tname: this.expr.slice(start, this.index),\n\t\t};\n\t}\n\n\t/**\n\t * Gobbles a list of arguments within the context of a function call\n\t * or array literal. This function also assumes that the opening character\n\t * `(` or `[` has already been gobbled, and gobbles expressions and commas\n\t * until the terminator character `)` or `]` is encountered.\n\t * e.g. `foo(bar, baz)`, `my_func()`, or `[bar, baz]`\n\t * @param {number} termination\n\t * @returns {jsep.Expression[]}\n\t */\n\tgobbleArguments(termination) {\n\t\tconst args = [];\n\t\tlet closed = false;\n\t\tlet separator_count = 0;\n\n\t\twhile (this.index < this.expr.length) {\n\t\t\tthis.gobbleSpaces();\n\t\t\tlet ch_i = this.code;\n\n\t\t\tif (ch_i === termination) { // done parsing\n\t\t\t\tclosed = true;\n\t\t\t\tthis.index++;\n\n\t\t\t\tif (termination === Jsep.CPAREN_CODE && separator_count && separator_count >= args.length){\n\t\t\t\t\tthis.throwError('Unexpected token ' + String.fromCharCode(termination));\n\t\t\t\t}\n\n\t\t\t\tbreak;\n\t\t\t}\n\t\t\telse if (ch_i === Jsep.COMMA_CODE) { // between expressions\n\t\t\t\tthis.index++;\n\t\t\t\tseparator_count++;\n\n\t\t\t\tif (separator_count !== args.length) { // missing argument\n\t\t\t\t\tif (termination === Jsep.CPAREN_CODE) {\n\t\t\t\t\t\tthis.throwError('Unexpected token ,');\n\t\t\t\t\t}\n\t\t\t\t\telse if (termination === Jsep.CBRACK_CODE) {\n\t\t\t\t\t\tfor (let arg = args.length; arg < separator_count; arg++) {\n\t\t\t\t\t\t\targs.push(null);\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t\telse if (args.length !== separator_count && separator_count !== 0) {\n\t\t\t\t// NOTE: `&& separator_count !== 0` allows for either all commas, or all spaces as arguments\n\t\t\t\tthis.throwError('Expected comma');\n\t\t\t}\n\t\t\telse {\n\t\t\t\tconst node = this.gobbleExpression();\n\n\t\t\t\tif (!node || node.type === Jsep.COMPOUND) {\n\t\t\t\t\tthis.throwError('Expected comma');\n\t\t\t\t}\n\n\t\t\t\targs.push(node);\n\t\t\t}\n\t\t}\n\n\t\tif (!closed) {\n\t\t\tthis.throwError('Expected ' + String.fromCharCode(termination));\n\t\t}\n\n\t\treturn args;\n\t}\n\n\t/**\n\t * Responsible for parsing a group of things within parentheses `()`\n\t * that have no identifier in front (so not a function call)\n\t * This function assumes that it needs to gobble the opening parenthesis\n\t * and then tries to gobble everything within that parenthesis, assuming\n\t * that the next thing it should see is the close parenthesis. If not,\n\t * then the expression probably doesn't have a `)`\n\t * @returns {boolean|jsep.Expression}\n\t */\n\tgobbleGroup() {\n\t\tthis.index++;\n\t\tlet nodes = this.gobbleExpressions(Jsep.CPAREN_CODE);\n\t\tif (this.code === Jsep.CPAREN_CODE) {\n\t\t\tthis.index++;\n\t\t\tif (nodes.length === 1) {\n\t\t\t\treturn nodes[0];\n\t\t\t}\n\t\t\telse if (!nodes.length) {\n\t\t\t\treturn false;\n\t\t\t}\n\t\t\telse {\n\t\t\t\treturn {\n\t\t\t\t\ttype: Jsep.SEQUENCE_EXP,\n\t\t\t\t\texpressions: nodes,\n\t\t\t\t};\n\t\t\t}\n\t\t}\n\t\telse {\n\t\t\tthis.throwError('Unclosed (');\n\t\t}\n\t}\n\n\t/**\n\t * Responsible for parsing Array literals `[1, 2, 3]`\n\t * This function assumes that it needs to gobble the opening bracket\n\t * and then tries to gobble the expressions as arguments.\n\t * @returns {jsep.ArrayExpression}\n\t */\n\tgobbleArray() {\n\t\tthis.index++;\n\n\t\treturn {\n\t\t\ttype: Jsep.ARRAY_EXP,\n\t\t\telements: this.gobbleArguments(Jsep.CBRACK_CODE)\n\t\t};\n\t}\n}\n\n// Static fields:\nconst hooks = new Hooks();\nObject.assign(Jsep, {\n\thooks,\n\tplugins: new Plugins(Jsep),\n\n\t// Node Types\n\t// ----------\n\t// This is the full set of types that any JSEP node can be.\n\t// Store them here to save space when minified\n\tCOMPOUND: 'Compound',\n\tSEQUENCE_EXP: 'SequenceExpression',\n\tIDENTIFIER: 'Identifier',\n\tMEMBER_EXP: 'MemberExpression',\n\tLITERAL: 'Literal',\n\tTHIS_EXP: 'ThisExpression',\n\tCALL_EXP: 'CallExpression',\n\tUNARY_EXP: 'UnaryExpression',\n\tBINARY_EXP: 'BinaryExpression',\n\tARRAY_EXP: 'ArrayExpression',\n\n\tTAB_CODE: 9,\n\tLF_CODE: 10,\n\tCR_CODE: 13,\n\tSPACE_CODE: 32,\n\tPERIOD_CODE: 46, // '.'\n\tCOMMA_CODE: 44, // ','\n\tSQUOTE_CODE: 39, // single quote\n\tDQUOTE_CODE: 34, // double quotes\n\tOPAREN_CODE: 40, // (\n\tCPAREN_CODE: 41, // )\n\tOBRACK_CODE: 91, // [\n\tCBRACK_CODE: 93, // ]\n\tQUMARK_CODE: 63, // ?\n\tSEMCOL_CODE: 59, // ;\n\tCOLON_CODE: 58, // :\n\n\n\t// Operations\n\t// ----------\n\t// Use a quickly-accessible map to store all of the unary operators\n\t// Values are set to `1` (it really doesn't matter)\n\tunary_ops: {\n\t\t'-': 1,\n\t\t'!': 1,\n\t\t'~': 1,\n\t\t'+': 1\n\t},\n\n\t// Also use a map for the binary operations but set their values to their\n\t// binary precedence for quick reference (higher number = higher precedence)\n\t// see [Order of operations](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Operators/Operator_Precedence)\n\tbinary_ops: {\n\t\t'||': 1, '&&': 2, '|': 3, '^': 4, '&': 5,\n\t\t'==': 6, '!=': 6, '===': 6, '!==': 6,\n\t\t'<': 7, '>': 7, '<=': 7, '>=': 7,\n\t\t'<<': 8, '>>': 8, '>>>': 8,\n\t\t'+': 9, '-': 9,\n\t\t'*': 10, '/': 10, '%': 10\n\t},\n\n\t// sets specific binary_ops as right-associative\n\tright_associative: new Set(),\n\n\t// Additional valid identifier chars, apart from a-z, A-Z and 0-9 (except on the starting char)\n\tadditional_identifier_chars: new Set(['$', '_']),\n\n\t// Literals\n\t// ----------\n\t// Store the values to return for the various literals we may encounter\n\tliterals: {\n\t\t'true': true,\n\t\t'false': false,\n\t\t'null': null\n\t},\n\n\t// Except for `this`, which is special. This could be changed to something like `'self'` as well\n\tthis_str: 'this',\n});\nJsep.max_unop_len = Jsep.getMaxKeyLen(Jsep.unary_ops);\nJsep.max_binop_len = Jsep.getMaxKeyLen(Jsep.binary_ops);\n\n// Backward Compatibility:\nconst jsep = expr => (new Jsep(expr)).parse();\nconst stdClassProps = Object.getOwnPropertyNames(class Test{});\nObject.getOwnPropertyNames(Jsep)\n\t.filter(prop => !stdClassProps.includes(prop) && jsep[prop] === undefined)\n\t.forEach((m) => {\n\t\tjsep[m] = Jsep[m];\n\t});\njsep.Jsep = Jsep; // allows for const { Jsep } = require('jsep');\n\nconst CONDITIONAL_EXP = 'ConditionalExpression';\n\nvar ternary = {\n\tname: 'ternary',\n\n\tinit(jsep) {\n\t\t// Ternary expression: test ? consequent : alternate\n\t\tjsep.hooks.add('after-expression', function gobbleTernary(env) {\n\t\t\tif (env.node && this.code === jsep.QUMARK_CODE) {\n\t\t\t\tthis.index++;\n\t\t\t\tconst test = env.node;\n\t\t\t\tconst consequent = this.gobbleExpression();\n\n\t\t\t\tif (!consequent) {\n\t\t\t\t\tthis.throwError('Expected expression');\n\t\t\t\t}\n\n\t\t\t\tthis.gobbleSpaces();\n\n\t\t\t\tif (this.code === jsep.COLON_CODE) {\n\t\t\t\t\tthis.index++;\n\t\t\t\t\tconst alternate = this.gobbleExpression();\n\n\t\t\t\t\tif (!alternate) {\n\t\t\t\t\t\tthis.throwError('Expected expression');\n\t\t\t\t\t}\n\t\t\t\t\tenv.node = {\n\t\t\t\t\t\ttype: CONDITIONAL_EXP,\n\t\t\t\t\t\ttest,\n\t\t\t\t\t\tconsequent,\n\t\t\t\t\t\talternate,\n\t\t\t\t\t};\n\n\t\t\t\t\t// check for operators of higher priority than ternary (i.e. assignment)\n\t\t\t\t\t// jsep sets || at 1, and assignment at 0.9, and conditional should be between them\n\t\t\t\t\tif (test.operator && jsep.binary_ops[test.operator] <= 0.9) {\n\t\t\t\t\t\tlet newTest = test;\n\t\t\t\t\t\twhile (newTest.right.operator && jsep.binary_ops[newTest.right.operator] <= 0.9) {\n\t\t\t\t\t\t\tnewTest = newTest.right;\n\t\t\t\t\t\t}\n\t\t\t\t\t\tenv.node.test = newTest.right;\n\t\t\t\t\t\tnewTest.right = env.node;\n\t\t\t\t\t\tenv.node = test;\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\telse {\n\t\t\t\t\tthis.throwError('Expected :');\n\t\t\t\t}\n\t\t\t}\n\t\t});\n\t},\n};\n\n// Add default plugins:\n\njsep.plugins.register(ternary);\n\nexport { Jsep, jsep as default };\n","const FSLASH_CODE = 47; // '/'\nconst BSLASH_CODE = 92; // '\\\\'\n\nvar index = {\n\tname: 'regex',\n\n\tinit(jsep) {\n\t\t// Regex literal: /abc123/ig\n\t\tjsep.hooks.add('gobble-token', function gobbleRegexLiteral(env) {\n\t\t\tif (this.code === FSLASH_CODE) {\n\t\t\t\tconst patternIndex = ++this.index;\n\n\t\t\t\tlet inCharSet = false;\n\t\t\t\twhile (this.index < this.expr.length) {\n\t\t\t\t\tif (this.code === FSLASH_CODE && !inCharSet) {\n\t\t\t\t\t\tconst pattern = this.expr.slice(patternIndex, this.index);\n\n\t\t\t\t\t\tlet flags = '';\n\t\t\t\t\t\twhile (++this.index < this.expr.length) {\n\t\t\t\t\t\t\tconst code = this.code;\n\t\t\t\t\t\t\tif ((code >= 97 && code <= 122) // a...z\n\t\t\t\t\t\t\t\t|| (code >= 65 && code <= 90) // A...Z\n\t\t\t\t\t\t\t\t|| (code >= 48 && code <= 57)) { // 0-9\n\t\t\t\t\t\t\t\tflags += this.char;\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\telse {\n\t\t\t\t\t\t\t\tbreak;\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t}\n\n\t\t\t\t\t\tlet value;\n\t\t\t\t\t\ttry {\n\t\t\t\t\t\t\tvalue = new RegExp(pattern, flags);\n\t\t\t\t\t\t}\n\t\t\t\t\t\tcatch (e) {\n\t\t\t\t\t\t\tthis.throwError(e.message);\n\t\t\t\t\t\t}\n\n\t\t\t\t\t\tenv.node = {\n\t\t\t\t\t\t\ttype: jsep.LITERAL,\n\t\t\t\t\t\t\tvalue,\n\t\t\t\t\t\t\traw: this.expr.slice(patternIndex - 1, this.index),\n\t\t\t\t\t\t};\n\n\t\t\t\t\t\t// allow . [] and () after regex: /regex/.test(a)\n\t\t\t\t\t\tenv.node = this.gobbleTokenProperty(env.node);\n\t\t\t\t\t\treturn env.node;\n\t\t\t\t\t}\n\t\t\t\t\tif (this.code === jsep.OBRACK_CODE) {\n\t\t\t\t\t\tinCharSet = true;\n\t\t\t\t\t}\n\t\t\t\t\telse if (inCharSet && this.code === jsep.CBRACK_CODE) {\n\t\t\t\t\t\tinCharSet = false;\n\t\t\t\t\t}\n\t\t\t\t\tthis.index += this.code === BSLASH_CODE ? 2 : 1;\n\t\t\t\t}\n\t\t\t\tthis.throwError('Unclosed Regex');\n\t\t\t}\n\t\t});\n\t},\n};\n\nexport { index as default };\n","const PLUS_CODE = 43; // +\nconst MINUS_CODE = 45; // -\n\nconst plugin = {\n\tname: 'assignment',\n\n\tassignmentOperators: new Set([\n\t\t'=',\n\t\t'*=',\n\t\t'**=',\n\t\t'/=',\n\t\t'%=',\n\t\t'+=',\n\t\t'-=',\n\t\t'<<=',\n\t\t'>>=',\n\t\t'>>>=',\n\t\t'&=',\n\t\t'^=',\n\t\t'|=',\n\t]),\n\tupdateOperators: [PLUS_CODE, MINUS_CODE],\n\tassignmentPrecedence: 0.9,\n\n\tinit(jsep) {\n\t\tconst updateNodeTypes = [jsep.IDENTIFIER, jsep.MEMBER_EXP];\n\t\tplugin.assignmentOperators.forEach(op => jsep.addBinaryOp(op, plugin.assignmentPrecedence, true));\n\n\t\tjsep.hooks.add('gobble-token', function gobbleUpdatePrefix(env) {\n\t\t\tconst code = this.code;\n\t\t\tif (plugin.updateOperators.some(c => c === code && c === this.expr.charCodeAt(this.index + 1))) {\n\t\t\t\tthis.index += 2;\n\t\t\t\tenv.node = {\n\t\t\t\t\ttype: 'UpdateExpression',\n\t\t\t\t\toperator: code === PLUS_CODE ? '++' : '--',\n\t\t\t\t\targument: this.gobbleTokenProperty(this.gobbleIdentifier()),\n\t\t\t\t\tprefix: true,\n\t\t\t\t};\n\t\t\t\tif (!env.node.argument || !updateNodeTypes.includes(env.node.argument.type)) {\n\t\t\t\t\tthis.throwError(`Unexpected ${env.node.operator}`);\n\t\t\t\t}\n\t\t\t}\n\t\t});\n\n\t\tjsep.hooks.add('after-token', function gobbleUpdatePostfix(env) {\n\t\t\tif (env.node) {\n\t\t\t\tconst code = this.code;\n\t\t\t\tif (plugin.updateOperators.some(c => c === code && c === this.expr.charCodeAt(this.index + 1))) {\n\t\t\t\t\tif (!updateNodeTypes.includes(env.node.type)) {\n\t\t\t\t\t\tthis.throwError(`Unexpected ${env.node.operator}`);\n\t\t\t\t\t}\n\t\t\t\t\tthis.index += 2;\n\t\t\t\t\tenv.node = {\n\t\t\t\t\t\ttype: 'UpdateExpression',\n\t\t\t\t\t\toperator: code === PLUS_CODE ? '++' : '--',\n\t\t\t\t\t\targument: env.node,\n\t\t\t\t\t\tprefix: false,\n\t\t\t\t\t};\n\t\t\t\t}\n\t\t\t}\n\t\t});\n\n\t\tjsep.hooks.add('after-expression', function gobbleAssignment(env) {\n\t\t\tif (env.node) {\n\t\t\t\t// Note: Binaries can be chained in a single expression to respect\n\t\t\t\t// operator precedence (i.e. a = b = 1 + 2 + 3)\n\t\t\t\t// Update all binary assignment nodes in the tree\n\t\t\t\tupdateBinariesToAssignments(env.node);\n\t\t\t}\n\t\t});\n\n\t\tfunction updateBinariesToAssignments(node) {\n\t\t\tif (plugin.assignmentOperators.has(node.operator)) {\n\t\t\t\tnode.type = 'AssignmentExpression';\n\t\t\t\tupdateBinariesToAssignments(node.left);\n\t\t\t\tupdateBinariesToAssignments(node.right);\n\t\t\t}\n\t\t\telse if (!node.operator) {\n\t\t\t\tObject.values(node).forEach((val) => {\n\t\t\t\t\tif (val && typeof val === 'object') {\n\t\t\t\t\t\tupdateBinariesToAssignments(val);\n\t\t\t\t\t}\n\t\t\t\t});\n\t\t\t}\n\t\t}\n\t},\n};\n\nexport { plugin as default };\n","/* eslint-disable camelcase, unicorn/prefer-string-replace-all,\n unicorn/prefer-at */\nconst {hasOwnProperty: hasOwnProp} = Object.prototype;\n\n/**\n * @typedef {null|boolean|number|string|PlainObject|GenericArray} JSONObject\n */\n\n/**\n * @typedef {any} AnyItem\n */\n\n/**\n * @typedef {any} AnyResult\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 {AnyItem} 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 {AnyItem} 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 {AnyResult} 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/**\n * @typedef {any} ContextItem\n */\n\n/**\n * @typedef {any} EvaluatedResult\n */\n\n/**\n* @callback EvalCallback\n* @param {string} code\n* @param {ContextItem} context\n* @returns {EvaluatedResult}\n*/\n\n/**\n * @typedef {typeof import('./jsonpath-browser').SafeScript} EvalClass\n */\n\n/**\n * @typedef {PlainObject} JSONPathOptions\n * @property {JSON} json\n * @property {string|string[]} path\n * @property {\"value\"|\"path\"|\"pointer\"|\"parent\"|\"parentProperty\"|\n * \"all\"} [resultType=\"value\"]\n * @property {boolean} [flatten=false]\n * @property {boolean} [wrap=true]\n * @property {PlainObject} [sandbox={}]\n * @property {EvalCallback|EvalClass|'safe'|'native'|\n * boolean} [eval = 'safe']\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\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.eval = opts.eval === undefined ? 'safe' : opts.eval;\n this.ignoreEvalErrors = (typeof opts.ignoreEvalErrors === 'undefined')\n ? false\n : opts.ignoreEvalErrors;\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.currEval = this.eval;\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.currEval = hasOwnProp.call(expr, 'eval')\n ? expr.eval\n : this.currEval;\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) {\n exprList.shift();\n }\n this._hasParentSelector = null;\n const result = this\n ._trace(\n exprList, json, ['$'], currParent, currParentProperty, callback\n )\n .filter(function (ea) {\n return ea && !ea.isParentSelector;\n });\n\n if (!result.length) {\n return wrap ? [] : undefined;\n }\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 n/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(val, (m) => {\n addRet(this._trace(\n x, val[m], push(path, m), val, m, callback, 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(val, (m) => {\n // We don't join m and x here because we only want parents,\n // not scalar values\n if (typeof val[m] === 'object') {\n // Keep going with recursive descent on val's\n // object children\n addRet(this._trace(\n expr.slice(), val[m], push(path, m), val, m, callback, true\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.currEval === false) {\n throw new Error('Eval [?(expr)] prevented in JSONPath expression.');\n }\n const safeLoc = loc.replace(/^\\?\\((.*?)\\)$/u, '$1');\n // check for a nested filter expression\n const nested = (/@.?([^?]*)[['](\\??\\(.*?\\))(?!.\\)\\])[\\]']/gu).exec(safeLoc);\n if (nested) {\n // find if there are matches in the nested expression\n // add them to the result set if there is at least one match\n this._walk(val, (m) => {\n const npath = [nested[2]];\n const nvalue = nested[1]\n ? val[m][nested[1]]\n : val[m];\n const filterResults = this._trace(npath, nvalue, path,\n parent, parentPropName, callback, true);\n if (filterResults.length > 0) {\n addRet(this._trace(x, val[m], push(path, m), val,\n m, callback, true));\n }\n });\n } else {\n this._walk(val, (m) => {\n if (this._eval(safeLoc, val[m], m, path, parent,\n parentPropName)) {\n addRet(this._trace(x, val[m], push(path, m), val, m,\n callback, true));\n }\n });\n }\n } else if (loc[0] === '(') { // [(expr)] (dynamic property/index)\n if (this.currEval === false) {\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 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 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 // eslint-disable-next-line @stylistic/max-len -- Long\n // eslint-disable-next-line sonarjs/updated-loop-counter -- Convenient\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 (val, f) {\n if (Array.isArray(val)) {\n const n = val.length;\n for (let i = 0; i < n; i++) {\n f(i);\n }\n } else if (val && typeof val === 'object') {\n Object.keys(val).forEach((m) => {\n f(m);\n });\n }\n};\n\nJSONPath.prototype._slice = function (\n loc, expr, val, path, parent, parentPropName, callback\n) {\n if (!Array.isArray(val)) {\n return undefined;\n }\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 this.currSandbox._$_parentProperty = parentPropName;\n this.currSandbox._$_parent = parent;\n this.currSandbox._$_property = _vname;\n this.currSandbox._$_root = this.json;\n this.currSandbox._$_v = _v;\n\n const containsPath = code.includes('@path');\n if (containsPath) {\n this.currSandbox._$_path = JSONPath.toPathString(path.concat([_vname]));\n }\n\n const scriptCacheKey = this.currEval + 'Script:' + code;\n if (!JSONPath.cache[scriptCacheKey]) {\n let script = code\n .replace(/@parentProperty/gu, '_$_parentProperty')\n .replace(/@parent/gu, '_$_parent')\n .replace(/@property/gu, '_$_property')\n .replace(/@root/gu, '_$_root')\n .replace(/@([.\\s)[])/gu, '_$_v$1');\n if (containsPath) {\n script = script.replace(/@path/gu, '_$_path');\n }\n if (\n this.currEval === 'safe' ||\n this.currEval === true ||\n this.currEval === undefined\n ) {\n JSONPath.cache[scriptCacheKey] = new this.safeVm.Script(script);\n } else if (this.currEval === 'native') {\n JSONPath.cache[scriptCacheKey] = new this.vm.Script(script);\n } else if (\n typeof this.currEval === 'function' &&\n this.currEval.prototype &&\n hasOwnProp.call(this.currEval.prototype, 'runInNewContext')\n ) {\n const CurrEval = this.currEval;\n JSONPath.cache[scriptCacheKey] = new CurrEval(script);\n } else if (typeof this.currEval === 'function') {\n JSONPath.cache[scriptCacheKey] = {\n runInNewContext: (context) => this.currEval(script, context)\n };\n } else {\n throw new TypeError(`Unknown \"eval\" property \"${this.currEval}\"`);\n }\n }\n\n try {\n return JSONPath.cache[scriptCacheKey].runInNewContext(this.currSandbox);\n } catch (e) {\n if (this.ignoreEvalErrors) {\n return false;\n }\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]) {\n return cache[expr].concat();\n }\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","/* eslint-disable no-bitwise */\nimport jsep from 'jsep';\nimport jsepRegex from '@jsep-plugin/regex';\nimport jsepAssignment from '@jsep-plugin/assignment';\nimport {JSONPath} from './jsonpath.js';\n\n/**\n * @typedef {any} ContextItem\n */\n\n/**\n * @typedef {any} EvaluatedResult\n */\n\n/**\n * @callback ConditionCallback\n * @param {ContextItem} 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 // eslint-disable-next-line @stylistic/max-len -- Long\n // eslint-disable-next-line sonarjs/updated-loop-counter -- Convenient\n target.push(source.splice(i--, 1)[0]);\n }\n }\n};\n\n// register plugins\njsep.plugins.register(jsepRegex, jsepAssignment);\n\nconst SafeEval = {\n /**\n * @param {jsep.Expression} ast\n * @param {Record} subs\n */\n evalAst (ast, subs) {\n switch (ast.type) {\n case 'BinaryExpression':\n case 'LogicalExpression':\n return SafeEval.evalBinaryExpression(ast, subs);\n case 'Compound':\n return SafeEval.evalCompound(ast, subs);\n case 'ConditionalExpression':\n return SafeEval.evalConditionalExpression(ast, subs);\n case 'Identifier':\n return SafeEval.evalIdentifier(ast, subs);\n case 'Literal':\n return SafeEval.evalLiteral(ast, subs);\n case 'MemberExpression':\n return SafeEval.evalMemberExpression(ast, subs);\n case 'UnaryExpression':\n return SafeEval.evalUnaryExpression(ast, subs);\n case 'ArrayExpression':\n return SafeEval.evalArrayExpression(ast, subs);\n case 'CallExpression':\n return SafeEval.evalCallExpression(ast, subs);\n case 'AssignmentExpression':\n return SafeEval.evalAssignmentExpression(ast, subs);\n default:\n throw SyntaxError('Unexpected expression', ast);\n }\n },\n evalBinaryExpression (ast, subs) {\n const result = {\n '||': (a, b) => a || b(),\n '&&': (a, b) => a && b(),\n '|': (a, b) => a | b(),\n '^': (a, b) => a ^ b(),\n '&': (a, b) => a & b(),\n // eslint-disable-next-line eqeqeq\n '==': (a, b) => a == b(),\n // eslint-disable-next-line eqeqeq\n '!=': (a, b) => a != b(),\n '===': (a, b) => a === b(),\n '!==': (a, b) => a !== b(),\n '<': (a, b) => a < b(),\n '>': (a, b) => a > b(),\n '<=': (a, b) => a <= b(),\n '>=': (a, b) => a >= b(),\n '<<': (a, b) => a << b(),\n '>>': (a, b) => a >> b(),\n '>>>': (a, b) => a >>> b(),\n '+': (a, b) => a + b(),\n '-': (a, b) => a - b(),\n '*': (a, b) => a * b(),\n '/': (a, b) => a / b(),\n '%': (a, b) => a % b()\n }[ast.operator](\n SafeEval.evalAst(ast.left, subs),\n () => SafeEval.evalAst(ast.right, subs)\n );\n return result;\n },\n evalCompound (ast, subs) {\n let last;\n for (let i = 0; i < ast.body.length; i++) {\n if (\n ast.body[i].type === 'Identifier' &&\n ['var', 'let', 'const'].includes(ast.body[i].name) &&\n ast.body[i + 1] &&\n ast.body[i + 1].type === 'AssignmentExpression'\n ) {\n // var x=2; is detected as\n // [{Identifier var}, {AssignmentExpression x=2}]\n // eslint-disable-next-line @stylistic/max-len -- Long\n // eslint-disable-next-line sonarjs/updated-loop-counter -- Convenient\n i += 1;\n }\n const expr = ast.body[i];\n last = SafeEval.evalAst(expr, subs);\n }\n return last;\n },\n evalConditionalExpression (ast, subs) {\n if (SafeEval.evalAst(ast.test, subs)) {\n return SafeEval.evalAst(ast.consequent, subs);\n }\n return SafeEval.evalAst(ast.alternate, subs);\n },\n evalIdentifier (ast, subs) {\n if (ast.name in subs) {\n return subs[ast.name];\n }\n throw ReferenceError(`${ast.name} is not defined`);\n },\n evalLiteral (ast) {\n return ast.value;\n },\n evalMemberExpression (ast, subs) {\n const prop = ast.computed\n ? SafeEval.evalAst(ast.property) // `object[property]`\n : ast.property.name; // `object.property` property is Identifier\n const obj = SafeEval.evalAst(ast.object, subs);\n const result = obj[prop];\n if (typeof result === 'function') {\n return result.bind(obj); // arrow functions aren't affected by bind.\n }\n return result;\n },\n evalUnaryExpression (ast, subs) {\n const result = {\n '-': (a) => -SafeEval.evalAst(a, subs),\n '!': (a) => !SafeEval.evalAst(a, subs),\n '~': (a) => ~SafeEval.evalAst(a, subs),\n // eslint-disable-next-line no-implicit-coercion\n '+': (a) => +SafeEval.evalAst(a, subs)\n }[ast.operator](ast.argument);\n return result;\n },\n evalArrayExpression (ast, subs) {\n return ast.elements.map((el) => SafeEval.evalAst(el, subs));\n },\n evalCallExpression (ast, subs) {\n const args = ast.arguments.map((arg) => SafeEval.evalAst(arg, subs));\n const func = SafeEval.evalAst(ast.callee, subs);\n return func(...args);\n },\n evalAssignmentExpression (ast, subs) {\n if (ast.left.type !== 'Identifier') {\n throw SyntaxError('Invalid left-hand side in assignment');\n }\n const id = ast.left.name;\n const value = SafeEval.evalAst(ast.right, subs);\n subs[id] = value;\n return subs[id];\n }\n};\n\n/**\n * A replacement for NodeJS' VM.Script which is also {@link https://developer.mozilla.org/en-US/docs/Web/HTTP/CSP | Content Security Policy} friendly.\n */\nclass SafeScript {\n /**\n * @param {string} expr Expression to evaluate\n */\n constructor (expr) {\n this.code = expr;\n this.ast = jsep(this.code);\n }\n\n /**\n * @param {PlainObject} context Object whose items will be added\n * to evaluation\n * @returns {EvaluatedResult} Result of evaluated code\n */\n runInNewContext (context) {\n const keyMap = {...context};\n return SafeEval.evalAst(this.ast, keyMap);\n }\n}\n\n/**\n * In-browser replacement for NodeJS' VM.Script.\n */\nclass Script {\n /**\n * @param {string} expr Expression to evaluate\n */\n constructor (expr) {\n this.code = expr;\n }\n\n /**\n * @param {PlainObject} context Object whose items will be added\n * to evaluation\n * @returns {EvaluatedResult} Result of evaluated code\n */\n runInNewContext (context) {\n let expr = this.code;\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) => {\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) && !keys.includes('arguments')) {\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 =\n lastStatementEnd > -1\n ? expr.slice(0, lastStatementEnd + 1) +\n ' return ' +\n 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\nJSONPath.prototype.vm = {\n Script\n};\n\nJSONPath.prototype.safeVm = {\n Script: SafeScript\n};\n\nexport {JSONPath, SafeScript};\n"],"names":["Hooks","_createClass","_classCallCheck","key","value","name","callback","first","arguments","this","add","Array","isArray","forEach","env","call","context","Plugins","jsep","registered","_this","_len","length","plugins","_key","plugin","_typeof","init","Error","Jsep","expr","index","get","charAt","charCodeAt","message","error","description","node","hooks","run","find","ch","code","SPACE_CODE","TAB_CODE","LF_CODE","CR_CODE","runHook","nodes","gobbleExpressions","type","COMPOUND","body","untilICode","ch_i","SEMCOL_CODE","COMMA_CODE","gobbleExpression","push","throwError","searchHook","gobbleBinaryExpression","gobbleSpaces","to_check","substr","max_binop_len","tc_len","binary_ops","hasOwnProperty","isIdentifierStart","isIdentifierPart","biop","prec","stack","biop_info","left","right","i","cur_biop","prev","gobbleToken","gobbleBinaryOp","binaryPrecedence","right_a","right_associative","has","pop","BINARY_EXP","operator","isDecimalDigit","PERIOD_CODE","gobbleNumericLiteral","SQUOTE_CODE","DQUOTE_CODE","gobbleStringLiteral","OBRACK_CODE","gobbleArray","max_unop_len","unary_ops","argument","UNARY_EXP","prefix","gobbleIdentifier","literals","LITERAL","raw","this_str","THIS_EXP","OPAREN_CODE","gobbleGroup","gobbleTokenProperty","QUMARK_CODE","optional","MEMBER_EXP","computed","object","property","CBRACK_CODE","CALL_EXP","gobbleArguments","CPAREN_CODE","callee","chCode","number","parseFloat","str","startIndex","quote","closed","substring","start","IDENTIFIER","slice","termination","args","separator_count","String","fromCharCode","arg","SEQUENCE_EXP","expressions","ARRAY_EXP","elements","version","op_name","Math","max","precedence","isRightAssociative","char","additional_identifier_chars","literal_name","literal_value","getMaxKeyLen","parse","obj","apply","concat","_toConsumableArray","Object","keys","map","k","op_val","assign","COLON_CODE","Set","true","false","null","stdClassProps","getOwnPropertyNames","Test","filter","prop","includes","undefined","m","ternary","test","consequent","alternate","newTest","register","patternIndex","inCharSet","pattern","flags","RegExp","e","assignmentOperators","updateOperators","assignmentPrecedence","updateNodeTypes","updateBinariesToAssignments","values","val","op","addBinaryOp","some","c","_this2","hasOwnProp","prototype","arr","item","unshift","NewError","_Error","_callSuper","avoidNew","_inherits","_wrapNativeSuper","JSONPath","opts","otherTypeCallback","optObj","json","path","resultType","flatten","wrap","sandbox","eval","ignoreEvalErrors","parent","parentProperty","TypeError","autostart","ret","evaluate","currParent","currParentProperty","currResultType","currEval","currSandbox","currOtherTypeCallback","toPathString","exprList","toPathArray","shift","_hasParentSelector","result","_trace","ea","isParentSelector","hasArrExpr","reduce","rslt","valOrPath","_getPreferredOutput","pointer","toPointer","_handleCallback","fullRetObj","preferredOutput","parentPropName","literalPriority","retObj","_this3","loc","x","addRet","elems","t","_walk","_slice","indexOf","safeLoc","replace","nested","exec","npath","nvalue","_eval","addType","valueType","Number","isFinite","locProp","_step","_iterator","_createForOfIteratorHelper","split","s","n","done","part","err","f","rett","tmp","tl","tt","splice","len","parts","step","parseInt","end","min","_v","_vname","_this4","_$_parentProperty","_$_parent","_$_property","_$_root","_$_v","containsPath","_$_path","scriptCacheKey","cache","script","safeVm","Script","vm","CurrEval","runInNewContext","pathArr","p","toString","subx","$0","$1","ups","join","exp","match","jsepRegex","jsepAssignment","SafeEval","evalAst","ast","subs","evalBinaryExpression","evalCompound","evalConditionalExpression","evalIdentifier","evalLiteral","evalMemberExpression","evalUnaryExpression","evalArrayExpression","evalCallExpression","evalAssignmentExpression","SyntaxError","a","b","last","ReferenceError","bind","el","id","SafeScript","keyMap","_objectSpread","funcs","source","target","conditionCb","il","moveToAnotherArray","vr","funcString","func","fString","lastStatementEnd","lastIndexOf","_construct","Function"],"mappings":"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","x_google_ignoreList":[0,1,2]} \ No newline at end of file diff --git a/dist/index-browser-umd.cjs b/dist/index-browser-umd.cjs index 4f0944c..a595721 100644 --- a/dist/index-browser-umd.cjs +++ b/dist/index-browser-umd.cjs @@ -4,9 +4,24 @@ (global = typeof globalThis !== 'undefined' ? globalThis : global || self, factory(global.JSONPath = {})); })(this, (function (exports) { 'use strict'; + function _arrayLikeToArray(r, a) { + (null == a || a > r.length) && (a = r.length); + for (var e = 0, n = Array(a); e < a; e++) n[e] = r[e]; + return n; + } + function _arrayWithoutHoles(r) { + if (Array.isArray(r)) return _arrayLikeToArray(r); + } + function _assertThisInitialized(e) { + if (void 0 === e) throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); + return e; + } function _callSuper(t, o, e) { return o = _getPrototypeOf(o), _possibleConstructorReturn(t, _isNativeReflectConstruct() ? Reflect.construct(o, e || [], _getPrototypeOf(t).constructor) : o.apply(t, e)); } + function _classCallCheck(a, n) { + if (!(a instanceof n)) throw new TypeError("Cannot call a class as a function"); + } function _construct(t, e, r) { if (_isNativeReflectConstruct()) return Reflect.construct.apply(null, arguments); var o = [null]; @@ -14,6 +29,97 @@ var p = new (t.bind.apply(t, o))(); return r && _setPrototypeOf(p, r.prototype), p; } + function _defineProperties(e, r) { + for (var t = 0; t < r.length; t++) { + var o = r[t]; + o.enumerable = o.enumerable || !1, o.configurable = !0, "value" in o && (o.writable = !0), Object.defineProperty(e, _toPropertyKey(o.key), o); + } + } + function _createClass(e, r, t) { + return r && _defineProperties(e.prototype, r), t && _defineProperties(e, t), Object.defineProperty(e, "prototype", { + writable: !1 + }), e; + } + function _createForOfIteratorHelper(r, e) { + var t = "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"]; + if (!t) { + if (Array.isArray(r) || (t = _unsupportedIterableToArray(r)) || e) { + t && (r = t); + var n = 0, + F = function () {}; + return { + s: F, + n: function () { + return n >= r.length ? { + done: !0 + } : { + done: !1, + value: r[n++] + }; + }, + e: function (r) { + throw r; + }, + f: F + }; + } + throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); + } + var o, + a = !0, + u = !1; + return { + s: function () { + t = t.call(r); + }, + n: function () { + var r = t.next(); + return a = r.done, r; + }, + e: function (r) { + u = !0, o = r; + }, + f: function () { + try { + a || null == t.return || t.return(); + } finally { + if (u) throw o; + } + } + }; + } + function _defineProperty(e, r, t) { + return (r = _toPropertyKey(r)) in e ? Object.defineProperty(e, r, { + value: t, + enumerable: !0, + configurable: !0, + writable: !0 + }) : e[r] = t, e; + } + function _getPrototypeOf(t) { + return _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf.bind() : function (t) { + return t.__proto__ || Object.getPrototypeOf(t); + }, _getPrototypeOf(t); + } + function _inherits(t, e) { + if ("function" != typeof e && null !== e) throw new TypeError("Super expression must either be null or a function"); + t.prototype = Object.create(e && e.prototype, { + constructor: { + value: t, + writable: !0, + configurable: !0 + } + }), Object.defineProperty(t, "prototype", { + writable: !1 + }), e && _setPrototypeOf(t, e); + } + function _isNativeFunction(t) { + try { + return -1 !== Function.toString.call(t).indexOf("[native code]"); + } catch (n) { + return "function" == typeof t; + } + } function _isNativeReflectConstruct() { try { var t = !Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); @@ -22,6 +128,12 @@ return !!t; })(); } + function _iterableToArray(r) { + if ("undefined" != typeof Symbol && null != r[Symbol.iterator] || null != r["@@iterator"]) return Array.from(r); + } + function _nonIterableSpread() { + throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); + } function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { @@ -43,15 +155,28 @@ } return e; } + function _possibleConstructorReturn(t, e) { + if (e && ("object" == typeof e || "function" == typeof e)) return e; + if (void 0 !== e) throw new TypeError("Derived constructors may only return object or undefined"); + return _assertThisInitialized(t); + } + function _setPrototypeOf(t, e) { + return _setPrototypeOf = Object.setPrototypeOf ? Object.setPrototypeOf.bind() : function (t, e) { + return t.__proto__ = e, t; + }, _setPrototypeOf(t, e); + } + function _toConsumableArray(r) { + return _arrayWithoutHoles(r) || _iterableToArray(r) || _unsupportedIterableToArray(r) || _nonIterableSpread(); + } function _toPrimitive(t, r) { if ("object" != typeof t || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { - var i = e.call(t, r || "default"); + var i = e.call(t, r); if ("object" != typeof i) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } - return ("string" === r ? String : Number)(t); + return (String )(t); } function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); @@ -66,193 +191,34 @@ return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o; }, _typeof(o); } - function _classCallCheck(instance, Constructor) { - if (!(instance instanceof Constructor)) { - throw new TypeError("Cannot call a class as a function"); - } - } - function _defineProperties(target, props) { - for (var i = 0; i < props.length; i++) { - var descriptor = props[i]; - descriptor.enumerable = descriptor.enumerable || false; - descriptor.configurable = true; - if ("value" in descriptor) descriptor.writable = true; - Object.defineProperty(target, _toPropertyKey(descriptor.key), descriptor); - } - } - function _createClass(Constructor, protoProps, staticProps) { - if (protoProps) _defineProperties(Constructor.prototype, protoProps); - if (staticProps) _defineProperties(Constructor, staticProps); - Object.defineProperty(Constructor, "prototype", { - writable: false - }); - return Constructor; - } - function _defineProperty(obj, key, value) { - key = _toPropertyKey(key); - if (key in obj) { - Object.defineProperty(obj, key, { - value: value, - enumerable: true, - configurable: true, - writable: true - }); - } else { - obj[key] = value; - } - return obj; - } - function _inherits(subClass, superClass) { - if (typeof superClass !== "function" && superClass !== null) { - throw new TypeError("Super expression must either be null or a function"); + function _unsupportedIterableToArray(r, a) { + if (r) { + if ("string" == typeof r) return _arrayLikeToArray(r, a); + var t = {}.toString.call(r).slice(8, -1); + return "Object" === t && r.constructor && (t = r.constructor.name), "Map" === t || "Set" === t ? Array.from(r) : "Arguments" === t || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t) ? _arrayLikeToArray(r, a) : void 0; } - subClass.prototype = Object.create(superClass && superClass.prototype, { - constructor: { - value: subClass, - writable: true, - configurable: true - } - }); - Object.defineProperty(subClass, "prototype", { - writable: false - }); - if (superClass) _setPrototypeOf(subClass, superClass); - } - function _getPrototypeOf(o) { - _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf.bind() : function _getPrototypeOf(o) { - return o.__proto__ || Object.getPrototypeOf(o); - }; - return _getPrototypeOf(o); - } - function _setPrototypeOf(o, p) { - _setPrototypeOf = Object.setPrototypeOf ? Object.setPrototypeOf.bind() : function _setPrototypeOf(o, p) { - o.__proto__ = p; - return o; - }; - return _setPrototypeOf(o, p); } - function _isNativeFunction(fn) { - try { - return Function.toString.call(fn).indexOf("[native code]") !== -1; - } catch (e) { - return typeof fn === "function"; - } - } - function _wrapNativeSuper(Class) { - var _cache = typeof Map === "function" ? new Map() : undefined; - _wrapNativeSuper = function _wrapNativeSuper(Class) { - if (Class === null || !_isNativeFunction(Class)) return Class; - if (typeof Class !== "function") { - throw new TypeError("Super expression must either be null or a function"); - } - if (typeof _cache !== "undefined") { - if (_cache.has(Class)) return _cache.get(Class); - _cache.set(Class, Wrapper); + function _wrapNativeSuper(t) { + var r = "function" == typeof Map ? new Map() : void 0; + return _wrapNativeSuper = function (t) { + if (null === t || !_isNativeFunction(t)) return t; + if ("function" != typeof t) throw new TypeError("Super expression must either be null or a function"); + if (void 0 !== r) { + if (r.has(t)) return r.get(t); + r.set(t, Wrapper); } function Wrapper() { - return _construct(Class, arguments, _getPrototypeOf(this).constructor); + return _construct(t, arguments, _getPrototypeOf(this).constructor); } - Wrapper.prototype = Object.create(Class.prototype, { + return Wrapper.prototype = Object.create(t.prototype, { constructor: { value: Wrapper, - enumerable: false, - writable: true, - configurable: true - } - }); - return _setPrototypeOf(Wrapper, Class); - }; - return _wrapNativeSuper(Class); - } - function _assertThisInitialized(self) { - if (self === void 0) { - throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); - } - return self; - } - function _possibleConstructorReturn(self, call) { - if (call && (typeof call === "object" || typeof call === "function")) { - return call; - } else if (call !== void 0) { - throw new TypeError("Derived constructors may only return object or undefined"); - } - return _assertThisInitialized(self); - } - function _toConsumableArray(arr) { - return _arrayWithoutHoles(arr) || _iterableToArray(arr) || _unsupportedIterableToArray(arr) || _nonIterableSpread(); - } - function _arrayWithoutHoles(arr) { - if (Array.isArray(arr)) return _arrayLikeToArray(arr); - } - function _iterableToArray(iter) { - if (typeof Symbol !== "undefined" && iter[Symbol.iterator] != null || iter["@@iterator"] != null) return Array.from(iter); - } - function _unsupportedIterableToArray(o, minLen) { - if (!o) return; - if (typeof o === "string") return _arrayLikeToArray(o, minLen); - var n = Object.prototype.toString.call(o).slice(8, -1); - if (n === "Object" && o.constructor) n = o.constructor.name; - if (n === "Map" || n === "Set") return Array.from(o); - if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); - } - function _arrayLikeToArray(arr, len) { - if (len == null || len > arr.length) len = arr.length; - for (var i = 0, arr2 = new Array(len); i < len; i++) arr2[i] = arr[i]; - return arr2; - } - function _nonIterableSpread() { - throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); - } - function _createForOfIteratorHelper(o, allowArrayLike) { - var it = typeof Symbol !== "undefined" && o[Symbol.iterator] || o["@@iterator"]; - if (!it) { - if (Array.isArray(o) || (it = _unsupportedIterableToArray(o)) || allowArrayLike && o && typeof o.length === "number") { - if (it) o = it; - var i = 0; - var F = function () {}; - return { - s: F, - n: function () { - if (i >= o.length) return { - done: true - }; - return { - done: false, - value: o[i++] - }; - }, - e: function (e) { - throw e; - }, - f: F - }; - } - throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); - } - var normalCompletion = true, - didErr = false, - err; - return { - s: function () { - it = it.call(o); - }, - n: function () { - var step = it.next(); - normalCompletion = step.done; - return step; - }, - e: function (e) { - didErr = true; - err = e; - }, - f: function () { - try { - if (!normalCompletion && it.return != null) it.return(); - } finally { - if (didErr) throw err; + enumerable: !1, + writable: !0, + configurable: !0 } - } - }; + }), _setPrototypeOf(Wrapper, t); + }, _wrapNativeSuper(t); } /** @@ -361,7 +327,7 @@ }); } }]); - }(); // JavaScript Expression Parser (JSEP) 1.3.8 + }(); // JavaScript Expression Parser (JSEP) 1.3.9 var Jsep = /*#__PURE__*/function () { /** * @param {string} expr a string with the passed in express @@ -749,6 +715,9 @@ object: node, property: this.gobbleExpression() }; + if (!node.property) { + this.throwError('Unexpected "' + this["char"] + '"'); + } this.gobbleSpaces(); ch = this.code; if (ch !== Jsep.CBRACK_CODE) { @@ -1035,7 +1004,7 @@ */ function get() { // To be filled in by the template - return '1.3.8'; + return '1.3.9'; } /** @@ -1367,11 +1336,13 @@ var jsep = function jsep(expr) { return new Jsep(expr).parse(); }; - var staticMethods = Object.getOwnPropertyNames(Jsep); - staticMethods.forEach(function (m) { - if (jsep[m] === undefined && m !== 'prototype') { - jsep[m] = Jsep[m]; - } + var stdClassProps = Object.getOwnPropertyNames(/*#__PURE__*/_createClass(function Test() { + _classCallCheck(this, Test); + })); + Object.getOwnPropertyNames(Jsep).filter(function (prop) { + return !stdClassProps.includes(prop) && jsep[prop] === undefined; + }).forEach(function (m) { + jsep[m] = Jsep[m]; }); jsep.Jsep = Jsep; // allows for const { Jsep } = require('jsep'); @@ -1613,7 +1584,7 @@ } _inherits(NewError, _Error); return _createClass(NewError); - }( /*#__PURE__*/_wrapNativeSuper(Error)); + }(/*#__PURE__*/_wrapNativeSuper(Error)); /** * @typedef {PlainObject} ReturnObject * @property {string} path @@ -1932,7 +1903,7 @@ } else if (loc === '$') { // root only addRet(this._trace(x, val, path, null, null, callback, hasArrExpr)); - } else if (/^(\x2D?[0-9]*):(\x2D?[0-9]*):?([0-9]*)$/.test(loc)) { + } else if (/^(-?[0-9]*):(-?[0-9]*):?([0-9]*)$/.test(loc)) { // [start:end:step] Python slice syntax addRet(this._slice(loc, x, val, path, parent, parentPropName, callback)); } else if (loc.indexOf('?(') === 0) { @@ -2071,6 +2042,8 @@ ret[t] = tmp[0]; var tl = tmp.length; for (var tt = 1; tt < tl; tt++) { + // eslint-disable-next-line @stylistic/max-len -- Long + // eslint-disable-next-line sonarjs/updated-loop-counter -- Convenient t++; ret.splice(t, 0, tmp[tt]); } @@ -2273,6 +2246,8 @@ for (var i = 0; i < il; i++) { var item = source[i]; if (conditionCb(item)) { + // eslint-disable-next-line @stylistic/max-len -- Long + // eslint-disable-next-line sonarjs/updated-loop-counter -- Convenient target.push(source.splice(i--, 1)[0]); } } @@ -2390,6 +2365,8 @@ if (ast.body[i].type === 'Identifier' && ['var', 'let', 'const'].includes(ast.body[i].name) && ast.body[i + 1] && ast.body[i + 1].type === 'AssignmentExpression') { // var x=2; is detected as // [{Identifier var}, {AssignmentExpression x=2}] + // eslint-disable-next-line @stylistic/max-len -- Long + // eslint-disable-next-line sonarjs/updated-loop-counter -- Convenient i += 1; } var expr = ast.body[i]; diff --git a/dist/index-browser-umd.min.cjs b/dist/index-browser-umd.min.cjs index 4b0546d..f7faba9 100644 --- a/dist/index-browser-umd.min.cjs +++ b/dist/index-browser-umd.min.cjs @@ -1,2 +1,2 @@ -!function(e,t){"object"==typeof exports&&"undefined"!=typeof module?t(exports):"function"==typeof define&&define.amd?define(["exports"],t):t((e="undefined"!=typeof globalThis?globalThis:e||self).JSONPath={})}(this,(function(e){"use strict";function t(e,t,r){return t=h(t),function(e,t){if(t&&("object"==typeof t||"function"==typeof t))return t;if(void 0!==t)throw new TypeError("Derived constructors may only return object or undefined");return function(e){if(void 0===e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}(e)}(e,n()?Reflect.construct(t,r||[],h(e).constructor):t.apply(e,r))}function r(e,t,r){if(n())return Reflect.construct.apply(null,arguments);var i=[null];i.push.apply(i,t);var o=new(e.bind.apply(e,i));return r&&p(o,r.prototype),o}function n(){try{var e=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){})))}catch(e){}return(n=function(){return!!e})()}function i(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function o(e){var t=function(e,t){if("object"!=typeof e||!e)return e;var r=e[Symbol.toPrimitive];if(void 0!==r){var n=r.call(e,t||"default");if("object"!=typeof n)return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return("string"===t?String:Number)(e)}(e,"string");return"symbol"==typeof t?t:t+""}function a(e){return a="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},a(e)}function s(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function u(e,t){for(var r=0;re.length)&&(t=e.length);for(var r=0,n=new Array(t);r0;){if(e.binary_ops.hasOwnProperty(t)&&(!e.isIdentifierStart(this.code)||this.index+t.length2&&(l=i[i.length-2],o.right_a&&l.right_a?n>l.prec:n<=l.prec);)s=i.pop(),r=i.pop().value,a=i.pop(),t={type:e.BINARY_EXP,operator:r,left:a,right:s},i.push(t);(t=this.gobbleToken())||this.throwError("Expected expression after "+c),i.push(o,t)}for(t=i[u=i.length-1];u>1;)t={type:e.BINARY_EXP,operator:i[u-1].value,left:i[u-2],right:t},u-=2;return t}},{key:"gobbleToken",value:function(){var t,r,n,i;if(this.gobbleSpaces(),i=this.searchHook("gobble-token"))return this.runHook("after-token",i);if(t=this.code,e.isDecimalDigit(t)||t===e.PERIOD_CODE)return this.gobbleNumericLiteral();if(t===e.SQUOTE_CODE||t===e.DQUOTE_CODE)i=this.gobbleStringLiteral();else if(t===e.OBRACK_CODE)i=this.gobbleArray();else{for(n=(r=this.expr.substr(this.index,e.max_unop_len)).length;n>0;){if(e.unary_ops.hasOwnProperty(r)&&(!e.isIdentifierStart(this.code)||this.index+r.length=r.length&&this.throwError("Unexpected token "+String.fromCharCode(t));break}if(o===e.COMMA_CODE){if(this.index++,++i!==r.length)if(t===e.CPAREN_CODE)this.throwError("Unexpected token ,");else if(t===e.CBRACK_CODE)for(var a=r.length;a=48&&e<=57}},{key:"binaryPrecedence",value:function(t){return e.binary_ops[t]||0}},{key:"isIdentifierStart",value:function(t){return t>=65&&t<=90||t>=97&&t<=122||t>=128&&!e.binary_ops[String.fromCharCode(t)]||e.additional_identifier_chars.has(String.fromCharCode(t))}},{key:"isIdentifierPart",value:function(t){return e.isIdentifierStart(t)||e.isDecimalDigit(t)}}])}(),x=new v;Object.assign(g,{hooks:x,plugins:new E(g),COMPOUND:"Compound",SEQUENCE_EXP:"SequenceExpression",IDENTIFIER:"Identifier",MEMBER_EXP:"MemberExpression",LITERAL:"Literal",THIS_EXP:"ThisExpression",CALL_EXP:"CallExpression",UNARY_EXP:"UnaryExpression",BINARY_EXP:"BinaryExpression",ARRAY_EXP:"ArrayExpression",TAB_CODE:9,LF_CODE:10,CR_CODE:13,SPACE_CODE:32,PERIOD_CODE:46,COMMA_CODE:44,SQUOTE_CODE:39,DQUOTE_CODE:34,OPAREN_CODE:40,CPAREN_CODE:41,OBRACK_CODE:91,CBRACK_CODE:93,QUMARK_CODE:63,SEMCOL_CODE:59,COLON_CODE:58,unary_ops:{"-":1,"!":1,"~":1,"+":1},binary_ops:{"||":1,"&&":2,"|":3,"^":4,"&":5,"==":6,"!=":6,"===":6,"!==":6,"<":7,">":7,"<=":7,">=":7,"<<":8,">>":8,">>>":8,"+":9,"-":9,"*":10,"/":10,"%":10},right_associative:new Set,additional_identifier_chars:new Set(["$","_"]),literals:{true:!0,false:!1,null:null},this_str:"this"}),g.max_unop_len=g.getMaxKeyLen(g.unary_ops),g.max_binop_len=g.getMaxKeyLen(g.binary_ops);var F=function(e){return new g(e).parse()};Object.getOwnPropertyNames(g).forEach((function(e){void 0===F[e]&&"prototype"!==e&&(F[e]=g[e])})),F.Jsep=g;var D={name:"ternary",init:function(e){e.hooks.add("after-expression",(function(t){if(t.node&&this.code===e.QUMARK_CODE){this.index++;var r=t.node,n=this.gobbleExpression();if(n||this.throwError("Expected expression"),this.gobbleSpaces(),this.code===e.COLON_CODE){this.index++;var i=this.gobbleExpression();if(i||this.throwError("Expected expression"),t.node={type:"ConditionalExpression",test:r,consequent:n,alternate:i},r.operator&&e.binary_ops[r.operator]<=.9){for(var o=r;o.right.operator&&e.binary_ops[o.right.operator]<=.9;)o=o.right;t.node.test=o.right,o.right=t.node,t.node=r}}else this.throwError("Expected :")}}))}};F.plugins.register(D);var _={name:"regex",init:function(e){e.hooks.add("gobble-token",(function(t){if(47===this.code){for(var r=++this.index,n=!1;this.index=97&&a<=122||a>=65&&a<=90||a>=48&&a<=57))break;o+=this.char}var s=void 0;try{s=new RegExp(i,o)}catch(e){this.throwError(e.message)}return t.node={type:e.LITERAL,value:s,raw:this.expr.slice(r-1,this.index)},t.node=this.gobbleTokenProperty(t.node),t.node}this.code===e.OBRACK_CODE?n=!0:n&&this.code===e.CBRACK_CODE&&(n=!1),this.index+=92===this.code?2:1}this.throwError("Unclosed Regex")}}))}},m={name:"assignment",assignmentOperators:new Set(["=","*=","**=","/=","%=","+=","-=","<<=",">>=",">>>=","&=","^=","|="]),updateOperators:[43,45],assignmentPrecedence:.9,init:function(e){var t=[e.IDENTIFIER,e.MEMBER_EXP];function r(e){m.assignmentOperators.has(e.operator)?(e.type="AssignmentExpression",r(e.left),r(e.right)):e.operator||Object.values(e).forEach((function(e){e&&"object"===a(e)&&r(e)}))}m.assignmentOperators.forEach((function(t){return e.addBinaryOp(t,m.assignmentPrecedence,!0)})),e.hooks.add("gobble-token",(function(e){var r=this,n=this.code;m.updateOperators.some((function(e){return e===n&&e===r.expr.charCodeAt(r.index+1)}))&&(this.index+=2,e.node={type:"UpdateExpression",operator:43===n?"++":"--",argument:this.gobbleTokenProperty(this.gobbleIdentifier()),prefix:!0},e.node.argument&&t.includes(e.node.argument.type)||this.throwError("Unexpected ".concat(e.node.operator)))})),e.hooks.add("after-token",(function(e){var r=this;if(e.node){var n=this.code;m.updateOperators.some((function(e){return e===n&&e===r.expr.charCodeAt(r.index+1)}))&&(t.includes(e.node.type)||this.throwError("Unexpected ".concat(e.node.operator)),this.index+=2,e.node={type:"UpdateExpression",operator:43===n?"++":"--",argument:e.node,prefix:!1})}})),e.hooks.add("after-expression",(function(e){e.node&&r(e.node)}))}},C=Object.prototype.hasOwnProperty;function O(e,t){return(e=e.slice()).push(t),e}function A(e,t){return(t=t.slice()).unshift(e),t}var w=function(e){function r(e){var n;return s(this,r),(n=t(this,r,['JSONPath should not be called with "new" (it prevents return of (unwrapped) scalar values)'])).avoidNew=!0,n.value=e,n.name="NewError",n}return function(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),Object.defineProperty(e,"prototype",{writable:!1}),t&&p(e,t)}(r,e),c(r)}(f(Error));function k(e,t,r,n,i){if(!(this instanceof k))try{return new k(e,t,r,n,i)}catch(e){if(!e.avoidNew)throw e;return e.value}"string"==typeof e&&(i=n,n=r,r=t,t=e,e=null);var o=e&&"object"===a(e);if(e=e||{},this.json=e.json||r,this.path=e.path||t,this.resultType=e.resultType||"value",this.flatten=e.flatten||!1,this.wrap=!C.call(e,"wrap")||e.wrap,this.sandbox=e.sandbox||{},this.eval=void 0===e.eval?"safe":e.eval,this.ignoreEvalErrors=void 0!==e.ignoreEvalErrors&&e.ignoreEvalErrors,this.parent=e.parent||null,this.parentProperty=e.parentProperty||null,this.callback=e.callback||n||null,this.otherTypeCallback=e.otherTypeCallback||i||function(){throw new TypeError("You must supply an otherTypeCallback callback option with the @other() operator.")},!1!==e.autostart){var s={path:o?e.path:t};o?"json"in e&&(s.json=e.json):s.json=r;var u=this.evaluate(s);if(!u||"object"!==a(u))throw new w(u);return u}}k.prototype.evaluate=function(e,t,r,n){var i=this,o=this.parent,s=this.parentProperty,u=this.flatten,c=this.wrap;if(this.currResultType=this.resultType,this.currEval=this.eval,this.currSandbox=this.sandbox,r=r||this.callback,this.currOtherTypeCallback=n||this.otherTypeCallback,t=t||this.json,(e=e||this.path)&&"object"===a(e)&&!Array.isArray(e)){if(!e.path&&""!==e.path)throw new TypeError('You must supply a "path" property when providing an object argument to JSONPath.evaluate().');if(!C.call(e,"json"))throw new TypeError('You must supply a "json" property when providing an object argument to JSONPath.evaluate().');t=e.json,u=C.call(e,"flatten")?e.flatten:u,this.currResultType=C.call(e,"resultType")?e.resultType:this.currResultType,this.currSandbox=C.call(e,"sandbox")?e.sandbox:this.currSandbox,c=C.call(e,"wrap")?e.wrap:c,this.currEval=C.call(e,"eval")?e.eval:this.currEval,r=C.call(e,"callback")?e.callback:r,this.currOtherTypeCallback=C.call(e,"otherTypeCallback")?e.otherTypeCallback:this.currOtherTypeCallback,o=C.call(e,"parent")?e.parent:o,s=C.call(e,"parentProperty")?e.parentProperty:s,e=e.path}if(o=o||null,s=s||null,Array.isArray(e)&&(e=k.toPathString(e)),(e||""===e)&&t){var l=k.toPathArray(e);"$"===l[0]&&l.length>1&&l.shift(),this._hasParentSelector=null;var h=this._trace(l,t,["$"],o,s,r).filter((function(e){return e&&!e.isParentSelector}));return h.length?c||1!==h.length||h[0].hasArrExpr?h.reduce((function(e,t){var r=i._getPreferredOutput(t);return u&&Array.isArray(r)?e=e.concat(r):e.push(r),e}),[]):this._getPreferredOutput(h[0]):c?[]:void 0}},k.prototype._getPreferredOutput=function(e){var t=this.currResultType;switch(t){case"all":var r=Array.isArray(e.path)?e.path:k.toPathArray(e.path);return e.pointer=k.toPointer(r),e.path="string"==typeof e.path?e.path:k.toPathString(e.path),e;case"value":case"parent":case"parentProperty":return e[t];case"path":return k.toPathString(e[t]);case"pointer":return k.toPointer(e.path);default:throw new TypeError("Unknown result type")}},k.prototype._handleCallback=function(e,t,r){if(t){var n=this._getPreferredOutput(e);e.path="string"==typeof e.path?e.path:k.toPathString(e.path),t(n,r,e)}},k.prototype._trace=function(e,t,r,n,i,o,s,u){var c,l=this;if(!e.length)return c={path:r,value:t,parent:n,parentProperty:i,hasArrExpr:s},this._handleCallback(c,o,"value"),c;var h=e[0],p=e.slice(1),f=[];function d(e){Array.isArray(e)?e.forEach((function(e){f.push(e)})):f.push(e)}if(("string"!=typeof h||u)&&t&&C.call(t,h))d(this._trace(p,t[h],O(r,h),t,h,o,s));else if("*"===h)this._walk(t,(function(e){d(l._trace(p,t[e],O(r,e),t,e,o,!0,!0))}));else if(".."===h)d(this._trace(p,t,r,n,i,o,s)),this._walk(t,(function(n){"object"===a(t[n])&&d(l._trace(e.slice(),t[n],O(r,n),t,n,o,!0))}));else{if("^"===h)return this._hasParentSelector=!0,{path:r.slice(0,-1),expr:p,isParentSelector:!0};if("~"===h)return c={path:O(r,h),value:i,parent:n,parentProperty:null},this._handleCallback(c,o,"property"),c;if("$"===h)d(this._trace(p,t,r,null,null,o,s));else if(/^(\x2D?[0-9]*):(\x2D?[0-9]*):?([0-9]*)$/.test(h))d(this._slice(h,p,t,r,n,i,o));else if(0===h.indexOf("?(")){if(!1===this.currEval)throw new Error("Eval [?(expr)] prevented in JSONPath expression.");var b=h.replace(/^\?\(((?:[\0-\t\x0B\f\x0E-\u2027\u202A-\uD7FF\uE000-\uFFFF]|[\uD800-\uDBFF][\uDC00-\uDFFF]|[\uD800-\uDBFF](?![\uDC00-\uDFFF])|(?:[^\uD800-\uDBFF]|^)[\uDC00-\uDFFF])*?)\)$/,"$1"),v=/@(?:[\0-\t\x0B\f\x0E-\u2027\u202A-\uD7FF\uE000-\uFFFF]|[\uD800-\uDBFF][\uDC00-\uDFFF]|[\uD800-\uDBFF](?![\uDC00-\uDFFF])|(?:[^\uD800-\uDBFF]|^)[\uDC00-\uDFFF])?((?:[\0->@-\uD7FF\uE000-\uFFFF]|[\uD800-\uDBFF][\uDC00-\uDFFF]|[\uD800-\uDBFF](?![\uDC00-\uDFFF])|(?:[^\uD800-\uDBFF]|^)[\uDC00-\uDFFF])*)['\[](\??\((?:[\0-\t\x0B\f\x0E-\u2027\u202A-\uD7FF\uE000-\uFFFF]|[\uD800-\uDBFF][\uDC00-\uDFFF]|[\uD800-\uDBFF](?![\uDC00-\uDFFF])|(?:[^\uD800-\uDBFF]|^)[\uDC00-\uDFFF])*?\))(?!(?:[\0-\t\x0B\f\x0E-\u2027\u202A-\uD7FF\uE000-\uFFFF]|[\uD800-\uDBFF][\uDC00-\uDFFF]|[\uD800-\uDBFF](?![\uDC00-\uDFFF])|(?:[^\uD800-\uDBFF]|^)[\uDC00-\uDFFF])\)\])['\]]/g.exec(b);v?this._walk(t,(function(e){var a=[v[2]],s=v[1]?t[e][v[1]]:t[e];l._trace(a,s,r,n,i,o,!0).length>0&&d(l._trace(p,t[e],O(r,e),t,e,o,!0))})):this._walk(t,(function(e){l._eval(b,t[e],e,r,n,i)&&d(l._trace(p,t[e],O(r,e),t,e,o,!0))}))}else if("("===h[0]){if(!1===this.currEval)throw new Error("Eval [(expr)] prevented in JSONPath expression.");d(this._trace(A(this._eval(h,t,r[r.length-1],r.slice(0,-1),n,i),p),t,r,n,i,o,s))}else if("@"===h[0]){var E=!1,g=h.slice(1,-2);switch(g){case"scalar":t&&["object","function"].includes(a(t))||(E=!0);break;case"boolean":case"string":case"undefined":case"function":a(t)===g&&(E=!0);break;case"integer":!Number.isFinite(t)||t%1||(E=!0);break;case"number":Number.isFinite(t)&&(E=!0);break;case"nonFinite":"number"!=typeof t||Number.isFinite(t)||(E=!0);break;case"object":t&&a(t)===g&&(E=!0);break;case"array":Array.isArray(t)&&(E=!0);break;case"other":E=this.currOtherTypeCallback(t,r,n,i);break;case"null":null===t&&(E=!0);break;default:throw new TypeError("Unknown value type "+g)}if(E)return c={path:r,value:t,parent:n,parentProperty:i},this._handleCallback(c,o,"value"),c}else if("`"===h[0]&&t&&C.call(t,h.slice(1))){var x=h.slice(1);d(this._trace(p,t[x],O(r,x),t,x,o,s,!0))}else if(h.includes(",")){var F,D=function(e,t){var r="undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(!r){if(Array.isArray(e)||(r=y(e))||t&&e&&"number"==typeof e.length){r&&(e=r);var n=0,i=function(){};return{s:i,n:function(){return n>=e.length?{done:!0}:{done:!1,value:e[n++]}},e:function(e){throw e},f:i}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var o,a=!0,s=!1;return{s:function(){r=r.call(e)},n:function(){var e=r.next();return a=e.done,e},e:function(e){s=!0,o=e},f:function(){try{a||null==r.return||r.return()}finally{if(s)throw o}}}}(h.split(","));try{for(D.s();!(F=D.n()).done;){var _=F.value;d(this._trace(A(_,p),t,r,n,i,o,!0))}}catch(e){D.e(e)}finally{D.f()}}else!u&&t&&C.call(t,h)&&d(this._trace(p,t[h],O(r,h),t,h,o,s,!0))}if(this._hasParentSelector)for(var m=0;m":function(e,t){return e>t()},"<=":function(e,t){return e<=t()},">=":function(e,t){return e>=t()},"<<":function(e,t){return e<>":function(e,t){return e>>t()},">>>":function(e,t){return e>>>t()},"+":function(e,t){return e+t()},"-":function(e,t){return e-t()},"*":function(e,t){return e*t()},"/":function(e,t){return e/t()},"%":function(e,t){return e%t()}}[e.operator](P.evalAst(e.left,t),(function(){return P.evalAst(e.right,t)}))},evalCompound:function(e,t){for(var r,n=0;n-1?t.slice(0,s+1)+" return "+t.slice(s+1):" return "+t;return r(Function,n.concat([u])).apply(void 0,d(o))}}])}();k.prototype.vm={Script:B},k.prototype.safeVm={Script:S},e.JSONPath=k,e.SafeScript=S})); +!function(e,t){"object"==typeof exports&&"undefined"!=typeof module?t(exports):"function"==typeof define&&define.amd?define(["exports"],t):t((e="undefined"!=typeof globalThis?globalThis:e||self).JSONPath={})}(this,(function(e){"use strict";function t(e,t){(null==t||t>e.length)&&(t=e.length);for(var r=0,n=Array(t);r0;){if(e.binary_ops.hasOwnProperty(t)&&(!e.isIdentifierStart(this.code)||this.index+t.length2&&(l=i[i.length-2],o.right_a&&l.right_a?n>l.prec:n<=l.prec);)s=i.pop(),r=i.pop().value,a=i.pop(),t={type:e.BINARY_EXP,operator:r,left:a,right:s},i.push(t);(t=this.gobbleToken())||this.throwError("Expected expression after "+c),i.push(o,t)}for(t=i[u=i.length-1];u>1;)t={type:e.BINARY_EXP,operator:i[u-1].value,left:i[u-2],right:t},u-=2;return t}},{key:"gobbleToken",value:function(){var t,r,n,i;if(this.gobbleSpaces(),i=this.searchHook("gobble-token"))return this.runHook("after-token",i);if(t=this.code,e.isDecimalDigit(t)||t===e.PERIOD_CODE)return this.gobbleNumericLiteral();if(t===e.SQUOTE_CODE||t===e.DQUOTE_CODE)i=this.gobbleStringLiteral();else if(t===e.OBRACK_CODE)i=this.gobbleArray();else{for(n=(r=this.expr.substr(this.index,e.max_unop_len)).length;n>0;){if(e.unary_ops.hasOwnProperty(r)&&(!e.isIdentifierStart(this.code)||this.index+r.length=r.length&&this.throwError("Unexpected token "+String.fromCharCode(t));break}if(o===e.COMMA_CODE){if(this.index++,++i!==r.length)if(t===e.CPAREN_CODE)this.throwError("Unexpected token ,");else if(t===e.CBRACK_CODE)for(var a=r.length;a=48&&e<=57}},{key:"binaryPrecedence",value:function(t){return e.binary_ops[t]||0}},{key:"isIdentifierStart",value:function(t){return t>=65&&t<=90||t>=97&&t<=122||t>=128&&!e.binary_ops[String.fromCharCode(t)]||e.additional_identifier_chars.has(String.fromCharCode(t))}},{key:"isIdentifierPart",value:function(t){return e.isIdentifierStart(t)||e.isDecimalDigit(t)}}])}(),x=new v;Object.assign(g,{hooks:x,plugins:new E(g),COMPOUND:"Compound",SEQUENCE_EXP:"SequenceExpression",IDENTIFIER:"Identifier",MEMBER_EXP:"MemberExpression",LITERAL:"Literal",THIS_EXP:"ThisExpression",CALL_EXP:"CallExpression",UNARY_EXP:"UnaryExpression",BINARY_EXP:"BinaryExpression",ARRAY_EXP:"ArrayExpression",TAB_CODE:9,LF_CODE:10,CR_CODE:13,SPACE_CODE:32,PERIOD_CODE:46,COMMA_CODE:44,SQUOTE_CODE:39,DQUOTE_CODE:34,OPAREN_CODE:40,CPAREN_CODE:41,OBRACK_CODE:91,CBRACK_CODE:93,QUMARK_CODE:63,SEMCOL_CODE:59,COLON_CODE:58,unary_ops:{"-":1,"!":1,"~":1,"+":1},binary_ops:{"||":1,"&&":2,"|":3,"^":4,"&":5,"==":6,"!=":6,"===":6,"!==":6,"<":7,">":7,"<=":7,">=":7,"<<":8,">>":8,">>>":8,"+":9,"-":9,"*":10,"/":10,"%":10},right_associative:new Set,additional_identifier_chars:new Set(["$","_"]),literals:{true:!0,false:!1,null:null},this_str:"this"}),g.max_unop_len=g.getMaxKeyLen(g.unary_ops),g.max_binop_len=g.getMaxKeyLen(g.binary_ops);var F=function(e){return new g(e).parse()},D=Object.getOwnPropertyNames(a((function e(){n(this,e)})));Object.getOwnPropertyNames(g).filter((function(e){return!D.includes(e)&&void 0===F[e]})).forEach((function(e){F[e]=g[e]})),F.Jsep=g;var _={name:"ternary",init:function(e){e.hooks.add("after-expression",(function(t){if(t.node&&this.code===e.QUMARK_CODE){this.index++;var r=t.node,n=this.gobbleExpression();if(n||this.throwError("Expected expression"),this.gobbleSpaces(),this.code===e.COLON_CODE){this.index++;var i=this.gobbleExpression();if(i||this.throwError("Expected expression"),t.node={type:"ConditionalExpression",test:r,consequent:n,alternate:i},r.operator&&e.binary_ops[r.operator]<=.9){for(var o=r;o.right.operator&&e.binary_ops[o.right.operator]<=.9;)o=o.right;t.node.test=o.right,o.right=t.node,t.node=r}}else this.throwError("Expected :")}}))}};F.plugins.register(_);var m={name:"regex",init:function(e){e.hooks.add("gobble-token",(function(t){if(47===this.code){for(var r=++this.index,n=!1;this.index=97&&a<=122||a>=65&&a<=90||a>=48&&a<=57))break;o+=this.char}var s=void 0;try{s=new RegExp(i,o)}catch(e){this.throwError(e.message)}return t.node={type:e.LITERAL,value:s,raw:this.expr.slice(r-1,this.index)},t.node=this.gobbleTokenProperty(t.node),t.node}this.code===e.OBRACK_CODE?n=!0:n&&this.code===e.CBRACK_CODE&&(n=!1),this.index+=92===this.code?2:1}this.throwError("Unclosed Regex")}}))}},C={name:"assignment",assignmentOperators:new Set(["=","*=","**=","/=","%=","+=","-=","<<=",">>=",">>>=","&=","^=","|="]),updateOperators:[43,45],assignmentPrecedence:.9,init:function(e){var t=[e.IDENTIFIER,e.MEMBER_EXP];function r(e){C.assignmentOperators.has(e.operator)?(e.type="AssignmentExpression",r(e.left),r(e.right)):e.operator||Object.values(e).forEach((function(e){e&&"object"===d(e)&&r(e)}))}C.assignmentOperators.forEach((function(t){return e.addBinaryOp(t,C.assignmentPrecedence,!0)})),e.hooks.add("gobble-token",(function(e){var r=this,n=this.code;C.updateOperators.some((function(e){return e===n&&e===r.expr.charCodeAt(r.index+1)}))&&(this.index+=2,e.node={type:"UpdateExpression",operator:43===n?"++":"--",argument:this.gobbleTokenProperty(this.gobbleIdentifier()),prefix:!0},e.node.argument&&t.includes(e.node.argument.type)||this.throwError("Unexpected ".concat(e.node.operator)))})),e.hooks.add("after-token",(function(e){var r=this;if(e.node){var n=this.code;C.updateOperators.some((function(e){return e===n&&e===r.expr.charCodeAt(r.index+1)}))&&(t.includes(e.node.type)||this.throwError("Unexpected ".concat(e.node.operator)),this.index+=2,e.node={type:"UpdateExpression",operator:43===n?"++":"--",argument:e.node,prefix:!1})}})),e.hooks.add("after-expression",(function(e){e.node&&r(e.node)}))}},O=Object.prototype.hasOwnProperty;function A(e,t){return(e=e.slice()).push(t),e}function w(e,t){return(t=t.slice()).unshift(e),t}var k=function(e){function t(e){var i;return n(this,t),(i=r(this,t,['JSONPath should not be called with "new" (it prevents return of (unwrapped) scalar values)'])).avoidNew=!0,i.value=e,i.name="NewError",i}return function(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),Object.defineProperty(e,"prototype",{writable:!1}),t&&h(e,t)}(t,e),a(t)}(b(Error));function P(e,t,r,n,i){if(!(this instanceof P))try{return new P(e,t,r,n,i)}catch(e){if(!e.avoidNew)throw e;return e.value}"string"==typeof e&&(i=n,n=r,r=t,t=e,e=null);var o=e&&"object"===d(e);if(e=e||{},this.json=e.json||r,this.path=e.path||t,this.resultType=e.resultType||"value",this.flatten=e.flatten||!1,this.wrap=!O.call(e,"wrap")||e.wrap,this.sandbox=e.sandbox||{},this.eval=void 0===e.eval?"safe":e.eval,this.ignoreEvalErrors=void 0!==e.ignoreEvalErrors&&e.ignoreEvalErrors,this.parent=e.parent||null,this.parentProperty=e.parentProperty||null,this.callback=e.callback||n||null,this.otherTypeCallback=e.otherTypeCallback||i||function(){throw new TypeError("You must supply an otherTypeCallback callback option with the @other() operator.")},!1!==e.autostart){var a={path:o?e.path:t};o?"json"in e&&(a.json=e.json):a.json=r;var s=this.evaluate(a);if(!s||"object"!==d(s))throw new k(s);return s}}P.prototype.evaluate=function(e,t,r,n){var i=this,o=this.parent,a=this.parentProperty,s=this.flatten,u=this.wrap;if(this.currResultType=this.resultType,this.currEval=this.eval,this.currSandbox=this.sandbox,r=r||this.callback,this.currOtherTypeCallback=n||this.otherTypeCallback,t=t||this.json,(e=e||this.path)&&"object"===d(e)&&!Array.isArray(e)){if(!e.path&&""!==e.path)throw new TypeError('You must supply a "path" property when providing an object argument to JSONPath.evaluate().');if(!O.call(e,"json"))throw new TypeError('You must supply a "json" property when providing an object argument to JSONPath.evaluate().');t=e.json,s=O.call(e,"flatten")?e.flatten:s,this.currResultType=O.call(e,"resultType")?e.resultType:this.currResultType,this.currSandbox=O.call(e,"sandbox")?e.sandbox:this.currSandbox,u=O.call(e,"wrap")?e.wrap:u,this.currEval=O.call(e,"eval")?e.eval:this.currEval,r=O.call(e,"callback")?e.callback:r,this.currOtherTypeCallback=O.call(e,"otherTypeCallback")?e.otherTypeCallback:this.currOtherTypeCallback,o=O.call(e,"parent")?e.parent:o,a=O.call(e,"parentProperty")?e.parentProperty:a,e=e.path}if(o=o||null,a=a||null,Array.isArray(e)&&(e=P.toPathString(e)),(e||""===e)&&t){var c=P.toPathArray(e);"$"===c[0]&&c.length>1&&c.shift(),this._hasParentSelector=null;var l=this._trace(c,t,["$"],o,a,r).filter((function(e){return e&&!e.isParentSelector}));return l.length?u||1!==l.length||l[0].hasArrExpr?l.reduce((function(e,t){var r=i._getPreferredOutput(t);return s&&Array.isArray(r)?e=e.concat(r):e.push(r),e}),[]):this._getPreferredOutput(l[0]):u?[]:void 0}},P.prototype._getPreferredOutput=function(e){var t=this.currResultType;switch(t){case"all":var r=Array.isArray(e.path)?e.path:P.toPathArray(e.path);return e.pointer=P.toPointer(r),e.path="string"==typeof e.path?e.path:P.toPathString(e.path),e;case"value":case"parent":case"parentProperty":return e[t];case"path":return P.toPathString(e[t]);case"pointer":return P.toPointer(e.path);default:throw new TypeError("Unknown result type")}},P.prototype._handleCallback=function(e,t,r){if(t){var n=this._getPreferredOutput(e);e.path="string"==typeof e.path?e.path:P.toPathString(e.path),t(n,r,e)}},P.prototype._trace=function(e,t,r,n,i,o,a,s){var u,c=this;if(!e.length)return u={path:r,value:t,parent:n,parentProperty:i,hasArrExpr:a},this._handleCallback(u,o,"value"),u;var l=e[0],h=e.slice(1),p=[];function f(e){Array.isArray(e)?e.forEach((function(e){p.push(e)})):p.push(e)}if(("string"!=typeof l||s)&&t&&O.call(t,l))f(this._trace(h,t[l],A(r,l),t,l,o,a));else if("*"===l)this._walk(t,(function(e){f(c._trace(h,t[e],A(r,e),t,e,o,!0,!0))}));else if(".."===l)f(this._trace(h,t,r,n,i,o,a)),this._walk(t,(function(n){"object"===d(t[n])&&f(c._trace(e.slice(),t[n],A(r,n),t,n,o,!0))}));else{if("^"===l)return this._hasParentSelector=!0,{path:r.slice(0,-1),expr:h,isParentSelector:!0};if("~"===l)return u={path:A(r,l),value:i,parent:n,parentProperty:null},this._handleCallback(u,o,"property"),u;if("$"===l)f(this._trace(h,t,r,null,null,o,a));else if(/^(-?[0-9]*):(-?[0-9]*):?([0-9]*)$/.test(l))f(this._slice(l,h,t,r,n,i,o));else if(0===l.indexOf("?(")){if(!1===this.currEval)throw new Error("Eval [?(expr)] prevented in JSONPath expression.");var b=l.replace(/^\?\(((?:[\0-\t\x0B\f\x0E-\u2027\u202A-\uD7FF\uE000-\uFFFF]|[\uD800-\uDBFF][\uDC00-\uDFFF]|[\uD800-\uDBFF](?![\uDC00-\uDFFF])|(?:[^\uD800-\uDBFF]|^)[\uDC00-\uDFFF])*?)\)$/,"$1"),v=/@(?:[\0-\t\x0B\f\x0E-\u2027\u202A-\uD7FF\uE000-\uFFFF]|[\uD800-\uDBFF][\uDC00-\uDFFF]|[\uD800-\uDBFF](?![\uDC00-\uDFFF])|(?:[^\uD800-\uDBFF]|^)[\uDC00-\uDFFF])?((?:[\0->@-\uD7FF\uE000-\uFFFF]|[\uD800-\uDBFF][\uDC00-\uDFFF]|[\uD800-\uDBFF](?![\uDC00-\uDFFF])|(?:[^\uD800-\uDBFF]|^)[\uDC00-\uDFFF])*)['\[](\??\((?:[\0-\t\x0B\f\x0E-\u2027\u202A-\uD7FF\uE000-\uFFFF]|[\uD800-\uDBFF][\uDC00-\uDFFF]|[\uD800-\uDBFF](?![\uDC00-\uDFFF])|(?:[^\uD800-\uDBFF]|^)[\uDC00-\uDFFF])*?\))(?!(?:[\0-\t\x0B\f\x0E-\u2027\u202A-\uD7FF\uE000-\uFFFF]|[\uD800-\uDBFF][\uDC00-\uDFFF]|[\uD800-\uDBFF](?![\uDC00-\uDFFF])|(?:[^\uD800-\uDBFF]|^)[\uDC00-\uDFFF])\)\])['\]]/g.exec(b);v?this._walk(t,(function(e){var a=[v[2]],s=v[1]?t[e][v[1]]:t[e];c._trace(a,s,r,n,i,o,!0).length>0&&f(c._trace(h,t[e],A(r,e),t,e,o,!0))})):this._walk(t,(function(e){c._eval(b,t[e],e,r,n,i)&&f(c._trace(h,t[e],A(r,e),t,e,o,!0))}))}else if("("===l[0]){if(!1===this.currEval)throw new Error("Eval [(expr)] prevented in JSONPath expression.");f(this._trace(w(this._eval(l,t,r[r.length-1],r.slice(0,-1),n,i),h),t,r,n,i,o,a))}else if("@"===l[0]){var E=!1,g=l.slice(1,-2);switch(g){case"scalar":t&&["object","function"].includes(d(t))||(E=!0);break;case"boolean":case"string":case"undefined":case"function":d(t)===g&&(E=!0);break;case"integer":!Number.isFinite(t)||t%1||(E=!0);break;case"number":Number.isFinite(t)&&(E=!0);break;case"nonFinite":"number"!=typeof t||Number.isFinite(t)||(E=!0);break;case"object":t&&d(t)===g&&(E=!0);break;case"array":Array.isArray(t)&&(E=!0);break;case"other":E=this.currOtherTypeCallback(t,r,n,i);break;case"null":null===t&&(E=!0);break;default:throw new TypeError("Unknown value type "+g)}if(E)return u={path:r,value:t,parent:n,parentProperty:i},this._handleCallback(u,o,"value"),u}else if("`"===l[0]&&t&&O.call(t,l.slice(1))){var x=l.slice(1);f(this._trace(h,t[x],A(r,x),t,x,o,a,!0))}else if(l.includes(",")){var F,D=function(e,t){var r="undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(!r){if(Array.isArray(e)||(r=y(e))||t){r&&(e=r);var n=0,i=function(){};return{s:i,n:function(){return n>=e.length?{done:!0}:{done:!1,value:e[n++]}},e:function(e){throw e},f:i}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var o,a=!0,s=!1;return{s:function(){r=r.call(e)},n:function(){var e=r.next();return a=e.done,e},e:function(e){s=!0,o=e},f:function(){try{a||null==r.return||r.return()}finally{if(s)throw o}}}}(l.split(","));try{for(D.s();!(F=D.n()).done;){var _=F.value;f(this._trace(w(_,h),t,r,n,i,o,!0))}}catch(e){D.e(e)}finally{D.f()}}else!s&&t&&O.call(t,l)&&f(this._trace(h,t[l],A(r,l),t,l,o,a,!0))}if(this._hasParentSelector)for(var m=0;m":function(e,t){return e>t()},"<=":function(e,t){return e<=t()},">=":function(e,t){return e>=t()},"<<":function(e,t){return e<>":function(e,t){return e>>t()},">>>":function(e,t){return e>>>t()},"+":function(e,t){return e+t()},"-":function(e,t){return e-t()},"*":function(e,t){return e*t()},"/":function(e,t){return e/t()},"%":function(e,t){return e%t()}}[e.operator](S.evalAst(e.left,t),(function(){return S.evalAst(e.right,t)}))},evalCompound:function(e,t){for(var r,n=0;n-1?t.slice(0,s+1)+" return "+t.slice(s+1):" return "+t;return i(Function,r.concat([u])).apply(void 0,p(o))}}])}();P.prototype.vm={Script:j},P.prototype.safeVm={Script:B},e.JSONPath=P,e.SafeScript=B})); //# sourceMappingURL=index-browser-umd.min.cjs.map diff --git a/dist/index-browser-umd.min.cjs.map b/dist/index-browser-umd.min.cjs.map index 5a2ec22..572c37a 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":["../node_modules/.pnpm/jsep@1.3.8/node_modules/jsep/dist/jsep.js","../node_modules/.pnpm/@jsep-plugin+regex@1.0.3_jsep@1.3.8/node_modules/@jsep-plugin/regex/dist/index.js","../node_modules/.pnpm/@jsep-plugin+assignment@1.2.1_jsep@1.3.8/node_modules/@jsep-plugin/assignment/dist/index.js","../src/jsonpath.js","../src/jsonpath-browser.js"],"sourcesContent":["/**\n * @implements {IHooks}\n */\nclass Hooks {\n\t/**\n\t * @callback HookCallback\n\t * @this {*|Jsep} this\n\t * @param {Jsep} env\n\t * @returns: void\n\t */\n\t/**\n\t * Adds the given callback to the list of callbacks for the given hook.\n\t *\n\t * The callback will be invoked when the hook it is registered for is run.\n\t *\n\t * One callback function can be registered to multiple hooks and the same hook multiple times.\n\t *\n\t * @param {string|object} name The name of the hook, or an object of callbacks keyed by name\n\t * @param {HookCallback|boolean} callback The callback function which is given environment variables.\n\t * @param {?boolean} [first=false] Will add the hook to the top of the list (defaults to the bottom)\n\t * @public\n\t */\n\tadd(name, callback, first) {\n\t\tif (typeof arguments[0] != 'string') {\n\t\t\t// Multiple hook callbacks, keyed by name\n\t\t\tfor (let name in arguments[0]) {\n\t\t\t\tthis.add(name, arguments[0][name], arguments[1]);\n\t\t\t}\n\t\t}\n\t\telse {\n\t\t\t(Array.isArray(name) ? name : [name]).forEach(function (name) {\n\t\t\t\tthis[name] = this[name] || [];\n\n\t\t\t\tif (callback) {\n\t\t\t\t\tthis[name][first ? 'unshift' : 'push'](callback);\n\t\t\t\t}\n\t\t\t}, this);\n\t\t}\n\t}\n\n\t/**\n\t * Runs a hook invoking all registered callbacks with the given environment variables.\n\t *\n\t * Callbacks will be invoked synchronously and in the order in which they were registered.\n\t *\n\t * @param {string} name The name of the hook.\n\t * @param {Object} env The environment variables of the hook passed to all callbacks registered.\n\t * @public\n\t */\n\trun(name, env) {\n\t\tthis[name] = this[name] || [];\n\t\tthis[name].forEach(function (callback) {\n\t\t\tcallback.call(env && env.context ? env.context : env, env);\n\t\t});\n\t}\n}\n\n/**\n * @implements {IPlugins}\n */\nclass Plugins {\n\tconstructor(jsep) {\n\t\tthis.jsep = jsep;\n\t\tthis.registered = {};\n\t}\n\n\t/**\n\t * @callback PluginSetup\n\t * @this {Jsep} jsep\n\t * @returns: void\n\t */\n\t/**\n\t * Adds the given plugin(s) to the registry\n\t *\n\t * @param {object} plugins\n\t * @param {string} plugins.name The name of the plugin\n\t * @param {PluginSetup} plugins.init The init function\n\t * @public\n\t */\n\tregister(...plugins) {\n\t\tplugins.forEach((plugin) => {\n\t\t\tif (typeof plugin !== 'object' || !plugin.name || !plugin.init) {\n\t\t\t\tthrow new Error('Invalid JSEP plugin format');\n\t\t\t}\n\t\t\tif (this.registered[plugin.name]) {\n\t\t\t\t// already registered. Ignore.\n\t\t\t\treturn;\n\t\t\t}\n\t\t\tplugin.init(this.jsep);\n\t\t\tthis.registered[plugin.name] = plugin;\n\t\t});\n\t}\n}\n\n// JavaScript Expression Parser (JSEP) 1.3.8\n\nclass Jsep {\n\t/**\n\t * @returns {string}\n\t */\n\tstatic get version() {\n\t\t// To be filled in by the template\n\t\treturn '1.3.8';\n\t}\n\n\t/**\n\t * @returns {string}\n\t */\n\tstatic toString() {\n\t\treturn 'JavaScript Expression Parser (JSEP) v' + Jsep.version;\n\t};\n\n\t// ==================== CONFIG ================================\n\t/**\n\t * @method addUnaryOp\n\t * @param {string} op_name The name of the unary op to add\n\t * @returns {Jsep}\n\t */\n\tstatic addUnaryOp(op_name) {\n\t\tJsep.max_unop_len = Math.max(op_name.length, Jsep.max_unop_len);\n\t\tJsep.unary_ops[op_name] = 1;\n\t\treturn Jsep;\n\t}\n\n\t/**\n\t * @method jsep.addBinaryOp\n\t * @param {string} op_name The name of the binary op to add\n\t * @param {number} precedence The precedence of the binary op (can be a float). Higher number = higher precedence\n\t * @param {boolean} [isRightAssociative=false] whether operator is right-associative\n\t * @returns {Jsep}\n\t */\n\tstatic addBinaryOp(op_name, precedence, isRightAssociative) {\n\t\tJsep.max_binop_len = Math.max(op_name.length, Jsep.max_binop_len);\n\t\tJsep.binary_ops[op_name] = precedence;\n\t\tif (isRightAssociative) {\n\t\t\tJsep.right_associative.add(op_name);\n\t\t}\n\t\telse {\n\t\t\tJsep.right_associative.delete(op_name);\n\t\t}\n\t\treturn Jsep;\n\t}\n\n\t/**\n\t * @method addIdentifierChar\n\t * @param {string} char The additional character to treat as a valid part of an identifier\n\t * @returns {Jsep}\n\t */\n\tstatic addIdentifierChar(char) {\n\t\tJsep.additional_identifier_chars.add(char);\n\t\treturn Jsep;\n\t}\n\n\t/**\n\t * @method addLiteral\n\t * @param {string} literal_name The name of the literal to add\n\t * @param {*} literal_value The value of the literal\n\t * @returns {Jsep}\n\t */\n\tstatic addLiteral(literal_name, literal_value) {\n\t\tJsep.literals[literal_name] = literal_value;\n\t\treturn Jsep;\n\t}\n\n\t/**\n\t * @method removeUnaryOp\n\t * @param {string} op_name The name of the unary op to remove\n\t * @returns {Jsep}\n\t */\n\tstatic removeUnaryOp(op_name) {\n\t\tdelete Jsep.unary_ops[op_name];\n\t\tif (op_name.length === Jsep.max_unop_len) {\n\t\t\tJsep.max_unop_len = Jsep.getMaxKeyLen(Jsep.unary_ops);\n\t\t}\n\t\treturn Jsep;\n\t}\n\n\t/**\n\t * @method removeAllUnaryOps\n\t * @returns {Jsep}\n\t */\n\tstatic removeAllUnaryOps() {\n\t\tJsep.unary_ops = {};\n\t\tJsep.max_unop_len = 0;\n\n\t\treturn Jsep;\n\t}\n\n\t/**\n\t * @method removeIdentifierChar\n\t * @param {string} char The additional character to stop treating as a valid part of an identifier\n\t * @returns {Jsep}\n\t */\n\tstatic removeIdentifierChar(char) {\n\t\tJsep.additional_identifier_chars.delete(char);\n\t\treturn Jsep;\n\t}\n\n\t/**\n\t * @method removeBinaryOp\n\t * @param {string} op_name The name of the binary op to remove\n\t * @returns {Jsep}\n\t */\n\tstatic removeBinaryOp(op_name) {\n\t\tdelete Jsep.binary_ops[op_name];\n\n\t\tif (op_name.length === Jsep.max_binop_len) {\n\t\t\tJsep.max_binop_len = Jsep.getMaxKeyLen(Jsep.binary_ops);\n\t\t}\n\t\tJsep.right_associative.delete(op_name);\n\n\t\treturn Jsep;\n\t}\n\n\t/**\n\t * @method removeAllBinaryOps\n\t * @returns {Jsep}\n\t */\n\tstatic removeAllBinaryOps() {\n\t\tJsep.binary_ops = {};\n\t\tJsep.max_binop_len = 0;\n\n\t\treturn Jsep;\n\t}\n\n\t/**\n\t * @method removeLiteral\n\t * @param {string} literal_name The name of the literal to remove\n\t * @returns {Jsep}\n\t */\n\tstatic removeLiteral(literal_name) {\n\t\tdelete Jsep.literals[literal_name];\n\t\treturn Jsep;\n\t}\n\n\t/**\n\t * @method removeAllLiterals\n\t * @returns {Jsep}\n\t */\n\tstatic removeAllLiterals() {\n\t\tJsep.literals = {};\n\n\t\treturn Jsep;\n\t}\n\t// ==================== END CONFIG ============================\n\n\n\t/**\n\t * @returns {string}\n\t */\n\tget char() {\n\t\treturn this.expr.charAt(this.index);\n\t}\n\n\t/**\n\t * @returns {number}\n\t */\n\tget code() {\n\t\treturn this.expr.charCodeAt(this.index);\n\t};\n\n\n\t/**\n\t * @param {string} expr a string with the passed in express\n\t * @returns Jsep\n\t */\n\tconstructor(expr) {\n\t\t// `index` stores the character number we are currently at\n\t\t// All of the gobbles below will modify `index` as we move along\n\t\tthis.expr = expr;\n\t\tthis.index = 0;\n\t}\n\n\t/**\n\t * static top-level parser\n\t * @returns {jsep.Expression}\n\t */\n\tstatic parse(expr) {\n\t\treturn (new Jsep(expr)).parse();\n\t}\n\n\t/**\n\t * Get the longest key length of any object\n\t * @param {object} obj\n\t * @returns {number}\n\t */\n\tstatic getMaxKeyLen(obj) {\n\t\treturn Math.max(0, ...Object.keys(obj).map(k => k.length));\n\t}\n\n\t/**\n\t * `ch` is a character code in the next three functions\n\t * @param {number} ch\n\t * @returns {boolean}\n\t */\n\tstatic isDecimalDigit(ch) {\n\t\treturn (ch >= 48 && ch <= 57); // 0...9\n\t}\n\n\t/**\n\t * Returns the precedence of a binary operator or `0` if it isn't a binary operator. Can be float.\n\t * @param {string} op_val\n\t * @returns {number}\n\t */\n\tstatic binaryPrecedence(op_val) {\n\t\treturn Jsep.binary_ops[op_val] || 0;\n\t}\n\n\t/**\n\t * Looks for start of identifier\n\t * @param {number} ch\n\t * @returns {boolean}\n\t */\n\tstatic isIdentifierStart(ch) {\n\t\treturn (ch >= 65 && ch <= 90) || // A...Z\n\t\t\t(ch >= 97 && ch <= 122) || // a...z\n\t\t\t(ch >= 128 && !Jsep.binary_ops[String.fromCharCode(ch)]) || // any non-ASCII that is not an operator\n\t\t\t(Jsep.additional_identifier_chars.has(String.fromCharCode(ch))); // additional characters\n\t}\n\n\t/**\n\t * @param {number} ch\n\t * @returns {boolean}\n\t */\n\tstatic isIdentifierPart(ch) {\n\t\treturn Jsep.isIdentifierStart(ch) || Jsep.isDecimalDigit(ch);\n\t}\n\n\t/**\n\t * throw error at index of the expression\n\t * @param {string} message\n\t * @throws\n\t */\n\tthrowError(message) {\n\t\tconst error = new Error(message + ' at character ' + this.index);\n\t\terror.index = this.index;\n\t\terror.description = message;\n\t\tthrow error;\n\t}\n\n\t/**\n\t * Run a given hook\n\t * @param {string} name\n\t * @param {jsep.Expression|false} [node]\n\t * @returns {?jsep.Expression}\n\t */\n\trunHook(name, node) {\n\t\tif (Jsep.hooks[name]) {\n\t\t\tconst env = { context: this, node };\n\t\t\tJsep.hooks.run(name, env);\n\t\t\treturn env.node;\n\t\t}\n\t\treturn node;\n\t}\n\n\t/**\n\t * Runs a given hook until one returns a node\n\t * @param {string} name\n\t * @returns {?jsep.Expression}\n\t */\n\tsearchHook(name) {\n\t\tif (Jsep.hooks[name]) {\n\t\t\tconst env = { context: this };\n\t\t\tJsep.hooks[name].find(function (callback) {\n\t\t\t\tcallback.call(env.context, env);\n\t\t\t\treturn env.node;\n\t\t\t});\n\t\t\treturn env.node;\n\t\t}\n\t}\n\n\t/**\n\t * Push `index` up to the next non-space character\n\t */\n\tgobbleSpaces() {\n\t\tlet ch = this.code;\n\t\t// Whitespace\n\t\twhile (ch === Jsep.SPACE_CODE\n\t\t|| ch === Jsep.TAB_CODE\n\t\t|| ch === Jsep.LF_CODE\n\t\t|| ch === Jsep.CR_CODE) {\n\t\t\tch = this.expr.charCodeAt(++this.index);\n\t\t}\n\t\tthis.runHook('gobble-spaces');\n\t}\n\n\t/**\n\t * Top-level method to parse all expressions and returns compound or single node\n\t * @returns {jsep.Expression}\n\t */\n\tparse() {\n\t\tthis.runHook('before-all');\n\t\tconst nodes = this.gobbleExpressions();\n\n\t\t// If there's only one expression just try returning the expression\n\t\tconst node = nodes.length === 1\n\t\t ? nodes[0]\n\t\t\t: {\n\t\t\t\ttype: Jsep.COMPOUND,\n\t\t\t\tbody: nodes\n\t\t\t};\n\t\treturn this.runHook('after-all', node);\n\t}\n\n\t/**\n\t * top-level parser (but can be reused within as well)\n\t * @param {number} [untilICode]\n\t * @returns {jsep.Expression[]}\n\t */\n\tgobbleExpressions(untilICode) {\n\t\tlet nodes = [], ch_i, node;\n\n\t\twhile (this.index < this.expr.length) {\n\t\t\tch_i = this.code;\n\n\t\t\t// Expressions can be separated by semicolons, commas, or just inferred without any\n\t\t\t// separators\n\t\t\tif (ch_i === Jsep.SEMCOL_CODE || ch_i === Jsep.COMMA_CODE) {\n\t\t\t\tthis.index++; // ignore separators\n\t\t\t}\n\t\t\telse {\n\t\t\t\t// Try to gobble each expression individually\n\t\t\t\tif (node = this.gobbleExpression()) {\n\t\t\t\t\tnodes.push(node);\n\t\t\t\t\t// If we weren't able to find a binary expression and are out of room, then\n\t\t\t\t\t// the expression passed in probably has too much\n\t\t\t\t}\n\t\t\t\telse if (this.index < this.expr.length) {\n\t\t\t\t\tif (ch_i === untilICode) {\n\t\t\t\t\t\tbreak;\n\t\t\t\t\t}\n\t\t\t\t\tthis.throwError('Unexpected \"' + this.char + '\"');\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\n\t\treturn nodes;\n\t}\n\n\t/**\n\t * The main parsing function.\n\t * @returns {?jsep.Expression}\n\t */\n\tgobbleExpression() {\n\t\tconst node = this.searchHook('gobble-expression') || this.gobbleBinaryExpression();\n\t\tthis.gobbleSpaces();\n\n\t\treturn this.runHook('after-expression', node);\n\t}\n\n\t/**\n\t * Search for the operation portion of the string (e.g. `+`, `===`)\n\t * Start by taking the longest possible binary operations (3 characters: `===`, `!==`, `>>>`)\n\t * and move down from 3 to 2 to 1 character until a matching binary operation is found\n\t * then, return that binary operation\n\t * @returns {string|boolean}\n\t */\n\tgobbleBinaryOp() {\n\t\tthis.gobbleSpaces();\n\t\tlet to_check = this.expr.substr(this.index, Jsep.max_binop_len);\n\t\tlet tc_len = to_check.length;\n\n\t\twhile (tc_len > 0) {\n\t\t\t// Don't accept a binary op when it is an identifier.\n\t\t\t// Binary ops that start with a identifier-valid character must be followed\n\t\t\t// by a non identifier-part valid character\n\t\t\tif (Jsep.binary_ops.hasOwnProperty(to_check) && (\n\t\t\t\t!Jsep.isIdentifierStart(this.code) ||\n\t\t\t\t(this.index + to_check.length < this.expr.length && !Jsep.isIdentifierPart(this.expr.charCodeAt(this.index + to_check.length)))\n\t\t\t)) {\n\t\t\t\tthis.index += tc_len;\n\t\t\t\treturn to_check;\n\t\t\t}\n\t\t\tto_check = to_check.substr(0, --tc_len);\n\t\t}\n\t\treturn false;\n\t}\n\n\t/**\n\t * This function is responsible for gobbling an individual expression,\n\t * e.g. `1`, `1+2`, `a+(b*2)-Math.sqrt(2)`\n\t * @returns {?jsep.BinaryExpression}\n\t */\n\tgobbleBinaryExpression() {\n\t\tlet node, biop, prec, stack, biop_info, left, right, i, cur_biop;\n\n\t\t// First, try to get the leftmost thing\n\t\t// Then, check to see if there's a binary operator operating on that leftmost thing\n\t\t// Don't gobbleBinaryOp without a left-hand-side\n\t\tleft = this.gobbleToken();\n\t\tif (!left) {\n\t\t\treturn left;\n\t\t}\n\t\tbiop = this.gobbleBinaryOp();\n\n\t\t// If there wasn't a binary operator, just return the leftmost node\n\t\tif (!biop) {\n\t\t\treturn left;\n\t\t}\n\n\t\t// Otherwise, we need to start a stack to properly place the binary operations in their\n\t\t// precedence structure\n\t\tbiop_info = { value: biop, prec: Jsep.binaryPrecedence(biop), right_a: Jsep.right_associative.has(biop) };\n\n\t\tright = this.gobbleToken();\n\n\t\tif (!right) {\n\t\t\tthis.throwError(\"Expected expression after \" + biop);\n\t\t}\n\n\t\tstack = [left, biop_info, right];\n\n\t\t// Properly deal with precedence using [recursive descent](http://www.engr.mun.ca/~theo/Misc/exp_parsing.htm)\n\t\twhile ((biop = this.gobbleBinaryOp())) {\n\t\t\tprec = Jsep.binaryPrecedence(biop);\n\n\t\t\tif (prec === 0) {\n\t\t\t\tthis.index -= biop.length;\n\t\t\t\tbreak;\n\t\t\t}\n\n\t\t\tbiop_info = { value: biop, prec, right_a: Jsep.right_associative.has(biop) };\n\n\t\t\tcur_biop = biop;\n\n\t\t\t// Reduce: make a binary expression from the three topmost entries.\n\t\t\tconst comparePrev = prev => biop_info.right_a && prev.right_a\n\t\t\t\t? prec > prev.prec\n\t\t\t\t: prec <= prev.prec;\n\t\t\twhile ((stack.length > 2) && comparePrev(stack[stack.length - 2])) {\n\t\t\t\tright = stack.pop();\n\t\t\t\tbiop = stack.pop().value;\n\t\t\t\tleft = stack.pop();\n\t\t\t\tnode = {\n\t\t\t\t\ttype: Jsep.BINARY_EXP,\n\t\t\t\t\toperator: biop,\n\t\t\t\t\tleft,\n\t\t\t\t\tright\n\t\t\t\t};\n\t\t\t\tstack.push(node);\n\t\t\t}\n\n\t\t\tnode = this.gobbleToken();\n\n\t\t\tif (!node) {\n\t\t\t\tthis.throwError(\"Expected expression after \" + cur_biop);\n\t\t\t}\n\n\t\t\tstack.push(biop_info, node);\n\t\t}\n\n\t\ti = stack.length - 1;\n\t\tnode = stack[i];\n\n\t\twhile (i > 1) {\n\t\t\tnode = {\n\t\t\t\ttype: Jsep.BINARY_EXP,\n\t\t\t\toperator: stack[i - 1].value,\n\t\t\t\tleft: stack[i - 2],\n\t\t\t\tright: node\n\t\t\t};\n\t\t\ti -= 2;\n\t\t}\n\n\t\treturn node;\n\t}\n\n\t/**\n\t * An individual part of a binary expression:\n\t * e.g. `foo.bar(baz)`, `1`, `\"abc\"`, `(a % 2)` (because it's in parenthesis)\n\t * @returns {boolean|jsep.Expression}\n\t */\n\tgobbleToken() {\n\t\tlet ch, to_check, tc_len, node;\n\n\t\tthis.gobbleSpaces();\n\t\tnode = this.searchHook('gobble-token');\n\t\tif (node) {\n\t\t\treturn this.runHook('after-token', node);\n\t\t}\n\n\t\tch = this.code;\n\n\t\tif (Jsep.isDecimalDigit(ch) || ch === Jsep.PERIOD_CODE) {\n\t\t\t// Char code 46 is a dot `.` which can start off a numeric literal\n\t\t\treturn this.gobbleNumericLiteral();\n\t\t}\n\n\t\tif (ch === Jsep.SQUOTE_CODE || ch === Jsep.DQUOTE_CODE) {\n\t\t\t// Single or double quotes\n\t\t\tnode = this.gobbleStringLiteral();\n\t\t}\n\t\telse if (ch === Jsep.OBRACK_CODE) {\n\t\t\tnode = this.gobbleArray();\n\t\t}\n\t\telse {\n\t\t\tto_check = this.expr.substr(this.index, Jsep.max_unop_len);\n\t\t\ttc_len = to_check.length;\n\n\t\t\twhile (tc_len > 0) {\n\t\t\t\t// Don't accept an unary op when it is an identifier.\n\t\t\t\t// Unary ops that start with a identifier-valid character must be followed\n\t\t\t\t// by a non identifier-part valid character\n\t\t\t\tif (Jsep.unary_ops.hasOwnProperty(to_check) && (\n\t\t\t\t\t!Jsep.isIdentifierStart(this.code) ||\n\t\t\t\t\t(this.index + to_check.length < this.expr.length && !Jsep.isIdentifierPart(this.expr.charCodeAt(this.index + to_check.length)))\n\t\t\t\t)) {\n\t\t\t\t\tthis.index += tc_len;\n\t\t\t\t\tconst argument = this.gobbleToken();\n\t\t\t\t\tif (!argument) {\n\t\t\t\t\t\tthis.throwError('missing unaryOp argument');\n\t\t\t\t\t}\n\t\t\t\t\treturn this.runHook('after-token', {\n\t\t\t\t\t\ttype: Jsep.UNARY_EXP,\n\t\t\t\t\t\toperator: to_check,\n\t\t\t\t\t\targument,\n\t\t\t\t\t\tprefix: true\n\t\t\t\t\t});\n\t\t\t\t}\n\n\t\t\t\tto_check = to_check.substr(0, --tc_len);\n\t\t\t}\n\n\t\t\tif (Jsep.isIdentifierStart(ch)) {\n\t\t\t\tnode = this.gobbleIdentifier();\n\t\t\t\tif (Jsep.literals.hasOwnProperty(node.name)) {\n\t\t\t\t\tnode = {\n\t\t\t\t\t\ttype: Jsep.LITERAL,\n\t\t\t\t\t\tvalue: Jsep.literals[node.name],\n\t\t\t\t\t\traw: node.name,\n\t\t\t\t\t};\n\t\t\t\t}\n\t\t\t\telse if (node.name === Jsep.this_str) {\n\t\t\t\t\tnode = { type: Jsep.THIS_EXP };\n\t\t\t\t}\n\t\t\t}\n\t\t\telse if (ch === Jsep.OPAREN_CODE) { // open parenthesis\n\t\t\t\tnode = this.gobbleGroup();\n\t\t\t}\n\t\t}\n\n\t\tif (!node) {\n\t\t\treturn this.runHook('after-token', false);\n\t\t}\n\n\t\tnode = this.gobbleTokenProperty(node);\n\t\treturn this.runHook('after-token', node);\n\t}\n\n\t/**\n\t * Gobble properties of of identifiers/strings/arrays/groups.\n\t * e.g. `foo`, `bar.baz`, `foo['bar'].baz`\n\t * It also gobbles function calls:\n\t * e.g. `Math.acos(obj.angle)`\n\t * @param {jsep.Expression} node\n\t * @returns {jsep.Expression}\n\t */\n\tgobbleTokenProperty(node) {\n\t\tthis.gobbleSpaces();\n\n\t\tlet ch = this.code;\n\t\twhile (ch === Jsep.PERIOD_CODE || ch === Jsep.OBRACK_CODE || ch === Jsep.OPAREN_CODE || ch === Jsep.QUMARK_CODE) {\n\t\t\tlet optional;\n\t\t\tif (ch === Jsep.QUMARK_CODE) {\n\t\t\t\tif (this.expr.charCodeAt(this.index + 1) !== Jsep.PERIOD_CODE) {\n\t\t\t\t\tbreak;\n\t\t\t\t}\n\t\t\t\toptional = true;\n\t\t\t\tthis.index += 2;\n\t\t\t\tthis.gobbleSpaces();\n\t\t\t\tch = this.code;\n\t\t\t}\n\t\t\tthis.index++;\n\n\t\t\tif (ch === Jsep.OBRACK_CODE) {\n\t\t\t\tnode = {\n\t\t\t\t\ttype: Jsep.MEMBER_EXP,\n\t\t\t\t\tcomputed: true,\n\t\t\t\t\tobject: node,\n\t\t\t\t\tproperty: this.gobbleExpression()\n\t\t\t\t};\n\t\t\t\tthis.gobbleSpaces();\n\t\t\t\tch = this.code;\n\t\t\t\tif (ch !== Jsep.CBRACK_CODE) {\n\t\t\t\t\tthis.throwError('Unclosed [');\n\t\t\t\t}\n\t\t\t\tthis.index++;\n\t\t\t}\n\t\t\telse if (ch === Jsep.OPAREN_CODE) {\n\t\t\t\t// A function call is being made; gobble all the arguments\n\t\t\t\tnode = {\n\t\t\t\t\ttype: Jsep.CALL_EXP,\n\t\t\t\t\t'arguments': this.gobbleArguments(Jsep.CPAREN_CODE),\n\t\t\t\t\tcallee: node\n\t\t\t\t};\n\t\t\t}\n\t\t\telse if (ch === Jsep.PERIOD_CODE || optional) {\n\t\t\t\tif (optional) {\n\t\t\t\t\tthis.index--;\n\t\t\t\t}\n\t\t\t\tthis.gobbleSpaces();\n\t\t\t\tnode = {\n\t\t\t\t\ttype: Jsep.MEMBER_EXP,\n\t\t\t\t\tcomputed: false,\n\t\t\t\t\tobject: node,\n\t\t\t\t\tproperty: this.gobbleIdentifier(),\n\t\t\t\t};\n\t\t\t}\n\n\t\t\tif (optional) {\n\t\t\t\tnode.optional = true;\n\t\t\t} // else leave undefined for compatibility with esprima\n\n\t\t\tthis.gobbleSpaces();\n\t\t\tch = this.code;\n\t\t}\n\n\t\treturn node;\n\t}\n\n\t/**\n\t * Parse simple numeric literals: `12`, `3.4`, `.5`. Do this by using a string to\n\t * keep track of everything in the numeric literal and then calling `parseFloat` on that string\n\t * @returns {jsep.Literal}\n\t */\n\tgobbleNumericLiteral() {\n\t\tlet number = '', ch, chCode;\n\n\t\twhile (Jsep.isDecimalDigit(this.code)) {\n\t\t\tnumber += this.expr.charAt(this.index++);\n\t\t}\n\n\t\tif (this.code === Jsep.PERIOD_CODE) { // can start with a decimal marker\n\t\t\tnumber += this.expr.charAt(this.index++);\n\n\t\t\twhile (Jsep.isDecimalDigit(this.code)) {\n\t\t\t\tnumber += this.expr.charAt(this.index++);\n\t\t\t}\n\t\t}\n\n\t\tch = this.char;\n\n\t\tif (ch === 'e' || ch === 'E') { // exponent marker\n\t\t\tnumber += this.expr.charAt(this.index++);\n\t\t\tch = this.char;\n\n\t\t\tif (ch === '+' || ch === '-') { // exponent sign\n\t\t\t\tnumber += this.expr.charAt(this.index++);\n\t\t\t}\n\n\t\t\twhile (Jsep.isDecimalDigit(this.code)) { // exponent itself\n\t\t\t\tnumber += this.expr.charAt(this.index++);\n\t\t\t}\n\n\t\t\tif (!Jsep.isDecimalDigit(this.expr.charCodeAt(this.index - 1)) ) {\n\t\t\t\tthis.throwError('Expected exponent (' + number + this.char + ')');\n\t\t\t}\n\t\t}\n\n\t\tchCode = this.code;\n\n\t\t// Check to make sure this isn't a variable name that start with a number (123abc)\n\t\tif (Jsep.isIdentifierStart(chCode)) {\n\t\t\tthis.throwError('Variable names cannot start with a number (' +\n\t\t\t\tnumber + this.char + ')');\n\t\t}\n\t\telse if (chCode === Jsep.PERIOD_CODE || (number.length === 1 && number.charCodeAt(0) === Jsep.PERIOD_CODE)) {\n\t\t\tthis.throwError('Unexpected period');\n\t\t}\n\n\t\treturn {\n\t\t\ttype: Jsep.LITERAL,\n\t\t\tvalue: parseFloat(number),\n\t\t\traw: number\n\t\t};\n\t}\n\n\t/**\n\t * Parses a string literal, staring with single or double quotes with basic support for escape codes\n\t * e.g. `\"hello world\"`, `'this is\\nJSEP'`\n\t * @returns {jsep.Literal}\n\t */\n\tgobbleStringLiteral() {\n\t\tlet str = '';\n\t\tconst startIndex = this.index;\n\t\tconst quote = this.expr.charAt(this.index++);\n\t\tlet closed = false;\n\n\t\twhile (this.index < this.expr.length) {\n\t\t\tlet ch = this.expr.charAt(this.index++);\n\n\t\t\tif (ch === quote) {\n\t\t\t\tclosed = true;\n\t\t\t\tbreak;\n\t\t\t}\n\t\t\telse if (ch === '\\\\') {\n\t\t\t\t// Check for all of the common escape codes\n\t\t\t\tch = this.expr.charAt(this.index++);\n\n\t\t\t\tswitch (ch) {\n\t\t\t\t\tcase 'n': str += '\\n'; break;\n\t\t\t\t\tcase 'r': str += '\\r'; break;\n\t\t\t\t\tcase 't': str += '\\t'; break;\n\t\t\t\t\tcase 'b': str += '\\b'; break;\n\t\t\t\t\tcase 'f': str += '\\f'; break;\n\t\t\t\t\tcase 'v': str += '\\x0B'; break;\n\t\t\t\t\tdefault : str += ch;\n\t\t\t\t}\n\t\t\t}\n\t\t\telse {\n\t\t\t\tstr += ch;\n\t\t\t}\n\t\t}\n\n\t\tif (!closed) {\n\t\t\tthis.throwError('Unclosed quote after \"' + str + '\"');\n\t\t}\n\n\t\treturn {\n\t\t\ttype: Jsep.LITERAL,\n\t\t\tvalue: str,\n\t\t\traw: this.expr.substring(startIndex, this.index),\n\t\t};\n\t}\n\n\t/**\n\t * Gobbles only identifiers\n\t * e.g.: `foo`, `_value`, `$x1`\n\t * Also, this function checks if that identifier is a literal:\n\t * (e.g. `true`, `false`, `null`) or `this`\n\t * @returns {jsep.Identifier}\n\t */\n\tgobbleIdentifier() {\n\t\tlet ch = this.code, start = this.index;\n\n\t\tif (Jsep.isIdentifierStart(ch)) {\n\t\t\tthis.index++;\n\t\t}\n\t\telse {\n\t\t\tthis.throwError('Unexpected ' + this.char);\n\t\t}\n\n\t\twhile (this.index < this.expr.length) {\n\t\t\tch = this.code;\n\n\t\t\tif (Jsep.isIdentifierPart(ch)) {\n\t\t\t\tthis.index++;\n\t\t\t}\n\t\t\telse {\n\t\t\t\tbreak;\n\t\t\t}\n\t\t}\n\t\treturn {\n\t\t\ttype: Jsep.IDENTIFIER,\n\t\t\tname: this.expr.slice(start, this.index),\n\t\t};\n\t}\n\n\t/**\n\t * Gobbles a list of arguments within the context of a function call\n\t * or array literal. This function also assumes that the opening character\n\t * `(` or `[` has already been gobbled, and gobbles expressions and commas\n\t * until the terminator character `)` or `]` is encountered.\n\t * e.g. `foo(bar, baz)`, `my_func()`, or `[bar, baz]`\n\t * @param {number} termination\n\t * @returns {jsep.Expression[]}\n\t */\n\tgobbleArguments(termination) {\n\t\tconst args = [];\n\t\tlet closed = false;\n\t\tlet separator_count = 0;\n\n\t\twhile (this.index < this.expr.length) {\n\t\t\tthis.gobbleSpaces();\n\t\t\tlet ch_i = this.code;\n\n\t\t\tif (ch_i === termination) { // done parsing\n\t\t\t\tclosed = true;\n\t\t\t\tthis.index++;\n\n\t\t\t\tif (termination === Jsep.CPAREN_CODE && separator_count && separator_count >= args.length){\n\t\t\t\t\tthis.throwError('Unexpected token ' + String.fromCharCode(termination));\n\t\t\t\t}\n\n\t\t\t\tbreak;\n\t\t\t}\n\t\t\telse if (ch_i === Jsep.COMMA_CODE) { // between expressions\n\t\t\t\tthis.index++;\n\t\t\t\tseparator_count++;\n\n\t\t\t\tif (separator_count !== args.length) { // missing argument\n\t\t\t\t\tif (termination === Jsep.CPAREN_CODE) {\n\t\t\t\t\t\tthis.throwError('Unexpected token ,');\n\t\t\t\t\t}\n\t\t\t\t\telse if (termination === Jsep.CBRACK_CODE) {\n\t\t\t\t\t\tfor (let arg = args.length; arg < separator_count; arg++) {\n\t\t\t\t\t\t\targs.push(null);\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t\telse if (args.length !== separator_count && separator_count !== 0) {\n\t\t\t\t// NOTE: `&& separator_count !== 0` allows for either all commas, or all spaces as arguments\n\t\t\t\tthis.throwError('Expected comma');\n\t\t\t}\n\t\t\telse {\n\t\t\t\tconst node = this.gobbleExpression();\n\n\t\t\t\tif (!node || node.type === Jsep.COMPOUND) {\n\t\t\t\t\tthis.throwError('Expected comma');\n\t\t\t\t}\n\n\t\t\t\targs.push(node);\n\t\t\t}\n\t\t}\n\n\t\tif (!closed) {\n\t\t\tthis.throwError('Expected ' + String.fromCharCode(termination));\n\t\t}\n\n\t\treturn args;\n\t}\n\n\t/**\n\t * Responsible for parsing a group of things within parentheses `()`\n\t * that have no identifier in front (so not a function call)\n\t * This function assumes that it needs to gobble the opening parenthesis\n\t * and then tries to gobble everything within that parenthesis, assuming\n\t * that the next thing it should see is the close parenthesis. If not,\n\t * then the expression probably doesn't have a `)`\n\t * @returns {boolean|jsep.Expression}\n\t */\n\tgobbleGroup() {\n\t\tthis.index++;\n\t\tlet nodes = this.gobbleExpressions(Jsep.CPAREN_CODE);\n\t\tif (this.code === Jsep.CPAREN_CODE) {\n\t\t\tthis.index++;\n\t\t\tif (nodes.length === 1) {\n\t\t\t\treturn nodes[0];\n\t\t\t}\n\t\t\telse if (!nodes.length) {\n\t\t\t\treturn false;\n\t\t\t}\n\t\t\telse {\n\t\t\t\treturn {\n\t\t\t\t\ttype: Jsep.SEQUENCE_EXP,\n\t\t\t\t\texpressions: nodes,\n\t\t\t\t};\n\t\t\t}\n\t\t}\n\t\telse {\n\t\t\tthis.throwError('Unclosed (');\n\t\t}\n\t}\n\n\t/**\n\t * Responsible for parsing Array literals `[1, 2, 3]`\n\t * This function assumes that it needs to gobble the opening bracket\n\t * and then tries to gobble the expressions as arguments.\n\t * @returns {jsep.ArrayExpression}\n\t */\n\tgobbleArray() {\n\t\tthis.index++;\n\n\t\treturn {\n\t\t\ttype: Jsep.ARRAY_EXP,\n\t\t\telements: this.gobbleArguments(Jsep.CBRACK_CODE)\n\t\t};\n\t}\n}\n\n// Static fields:\nconst hooks = new Hooks();\nObject.assign(Jsep, {\n\thooks,\n\tplugins: new Plugins(Jsep),\n\n\t// Node Types\n\t// ----------\n\t// This is the full set of types that any JSEP node can be.\n\t// Store them here to save space when minified\n\tCOMPOUND: 'Compound',\n\tSEQUENCE_EXP: 'SequenceExpression',\n\tIDENTIFIER: 'Identifier',\n\tMEMBER_EXP: 'MemberExpression',\n\tLITERAL: 'Literal',\n\tTHIS_EXP: 'ThisExpression',\n\tCALL_EXP: 'CallExpression',\n\tUNARY_EXP: 'UnaryExpression',\n\tBINARY_EXP: 'BinaryExpression',\n\tARRAY_EXP: 'ArrayExpression',\n\n\tTAB_CODE: 9,\n\tLF_CODE: 10,\n\tCR_CODE: 13,\n\tSPACE_CODE: 32,\n\tPERIOD_CODE: 46, // '.'\n\tCOMMA_CODE: 44, // ','\n\tSQUOTE_CODE: 39, // single quote\n\tDQUOTE_CODE: 34, // double quotes\n\tOPAREN_CODE: 40, // (\n\tCPAREN_CODE: 41, // )\n\tOBRACK_CODE: 91, // [\n\tCBRACK_CODE: 93, // ]\n\tQUMARK_CODE: 63, // ?\n\tSEMCOL_CODE: 59, // ;\n\tCOLON_CODE: 58, // :\n\n\n\t// Operations\n\t// ----------\n\t// Use a quickly-accessible map to store all of the unary operators\n\t// Values are set to `1` (it really doesn't matter)\n\tunary_ops: {\n\t\t'-': 1,\n\t\t'!': 1,\n\t\t'~': 1,\n\t\t'+': 1\n\t},\n\n\t// Also use a map for the binary operations but set their values to their\n\t// binary precedence for quick reference (higher number = higher precedence)\n\t// see [Order of operations](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Operators/Operator_Precedence)\n\tbinary_ops: {\n\t\t'||': 1, '&&': 2, '|': 3, '^': 4, '&': 5,\n\t\t'==': 6, '!=': 6, '===': 6, '!==': 6,\n\t\t'<': 7, '>': 7, '<=': 7, '>=': 7,\n\t\t'<<': 8, '>>': 8, '>>>': 8,\n\t\t'+': 9, '-': 9,\n\t\t'*': 10, '/': 10, '%': 10\n\t},\n\n\t// sets specific binary_ops as right-associative\n\tright_associative: new Set(),\n\n\t// Additional valid identifier chars, apart from a-z, A-Z and 0-9 (except on the starting char)\n\tadditional_identifier_chars: new Set(['$', '_']),\n\n\t// Literals\n\t// ----------\n\t// Store the values to return for the various literals we may encounter\n\tliterals: {\n\t\t'true': true,\n\t\t'false': false,\n\t\t'null': null\n\t},\n\n\t// Except for `this`, which is special. This could be changed to something like `'self'` as well\n\tthis_str: 'this',\n});\nJsep.max_unop_len = Jsep.getMaxKeyLen(Jsep.unary_ops);\nJsep.max_binop_len = Jsep.getMaxKeyLen(Jsep.binary_ops);\n\n// Backward Compatibility:\nconst jsep = expr => (new Jsep(expr)).parse();\nconst staticMethods = Object.getOwnPropertyNames(Jsep);\nstaticMethods\n\t.forEach((m) => {\n\t\tif (jsep[m] === undefined && m !== 'prototype') {\n\t\t\tjsep[m] = Jsep[m];\n\t\t}\n\t});\njsep.Jsep = Jsep; // allows for const { Jsep } = require('jsep');\n\nconst CONDITIONAL_EXP = 'ConditionalExpression';\n\nvar ternary = {\n\tname: 'ternary',\n\n\tinit(jsep) {\n\t\t// Ternary expression: test ? consequent : alternate\n\t\tjsep.hooks.add('after-expression', function gobbleTernary(env) {\n\t\t\tif (env.node && this.code === jsep.QUMARK_CODE) {\n\t\t\t\tthis.index++;\n\t\t\t\tconst test = env.node;\n\t\t\t\tconst consequent = this.gobbleExpression();\n\n\t\t\t\tif (!consequent) {\n\t\t\t\t\tthis.throwError('Expected expression');\n\t\t\t\t}\n\n\t\t\t\tthis.gobbleSpaces();\n\n\t\t\t\tif (this.code === jsep.COLON_CODE) {\n\t\t\t\t\tthis.index++;\n\t\t\t\t\tconst alternate = this.gobbleExpression();\n\n\t\t\t\t\tif (!alternate) {\n\t\t\t\t\t\tthis.throwError('Expected expression');\n\t\t\t\t\t}\n\t\t\t\t\tenv.node = {\n\t\t\t\t\t\ttype: CONDITIONAL_EXP,\n\t\t\t\t\t\ttest,\n\t\t\t\t\t\tconsequent,\n\t\t\t\t\t\talternate,\n\t\t\t\t\t};\n\n\t\t\t\t\t// check for operators of higher priority than ternary (i.e. assignment)\n\t\t\t\t\t// jsep sets || at 1, and assignment at 0.9, and conditional should be between them\n\t\t\t\t\tif (test.operator && jsep.binary_ops[test.operator] <= 0.9) {\n\t\t\t\t\t\tlet newTest = test;\n\t\t\t\t\t\twhile (newTest.right.operator && jsep.binary_ops[newTest.right.operator] <= 0.9) {\n\t\t\t\t\t\t\tnewTest = newTest.right;\n\t\t\t\t\t\t}\n\t\t\t\t\t\tenv.node.test = newTest.right;\n\t\t\t\t\t\tnewTest.right = env.node;\n\t\t\t\t\t\tenv.node = test;\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\telse {\n\t\t\t\t\tthis.throwError('Expected :');\n\t\t\t\t}\n\t\t\t}\n\t\t});\n\t},\n};\n\n// Add default plugins:\n\njsep.plugins.register(ternary);\n\nexport { Jsep, jsep as default };\n","const FSLASH_CODE = 47; // '/'\nconst BSLASH_CODE = 92; // '\\\\'\n\nvar index = {\n\tname: 'regex',\n\n\tinit(jsep) {\n\t\t// Regex literal: /abc123/ig\n\t\tjsep.hooks.add('gobble-token', function gobbleRegexLiteral(env) {\n\t\t\tif (this.code === FSLASH_CODE) {\n\t\t\t\tconst patternIndex = ++this.index;\n\n\t\t\t\tlet inCharSet = false;\n\t\t\t\twhile (this.index < this.expr.length) {\n\t\t\t\t\tif (this.code === FSLASH_CODE && !inCharSet) {\n\t\t\t\t\t\tconst pattern = this.expr.slice(patternIndex, this.index);\n\n\t\t\t\t\t\tlet flags = '';\n\t\t\t\t\t\twhile (++this.index < this.expr.length) {\n\t\t\t\t\t\t\tconst code = this.code;\n\t\t\t\t\t\t\tif ((code >= 97 && code <= 122) // a...z\n\t\t\t\t\t\t\t\t|| (code >= 65 && code <= 90) // A...Z\n\t\t\t\t\t\t\t\t|| (code >= 48 && code <= 57)) { // 0-9\n\t\t\t\t\t\t\t\tflags += this.char;\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\telse {\n\t\t\t\t\t\t\t\tbreak;\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t}\n\n\t\t\t\t\t\tlet value;\n\t\t\t\t\t\ttry {\n\t\t\t\t\t\t\tvalue = new RegExp(pattern, flags);\n\t\t\t\t\t\t}\n\t\t\t\t\t\tcatch (e) {\n\t\t\t\t\t\t\tthis.throwError(e.message);\n\t\t\t\t\t\t}\n\n\t\t\t\t\t\tenv.node = {\n\t\t\t\t\t\t\ttype: jsep.LITERAL,\n\t\t\t\t\t\t\tvalue,\n\t\t\t\t\t\t\traw: this.expr.slice(patternIndex - 1, this.index),\n\t\t\t\t\t\t};\n\n\t\t\t\t\t\t// allow . [] and () after regex: /regex/.test(a)\n\t\t\t\t\t\tenv.node = this.gobbleTokenProperty(env.node);\n\t\t\t\t\t\treturn env.node;\n\t\t\t\t\t}\n\t\t\t\t\tif (this.code === jsep.OBRACK_CODE) {\n\t\t\t\t\t\tinCharSet = true;\n\t\t\t\t\t}\n\t\t\t\t\telse if (inCharSet && this.code === jsep.CBRACK_CODE) {\n\t\t\t\t\t\tinCharSet = false;\n\t\t\t\t\t}\n\t\t\t\t\tthis.index += this.code === BSLASH_CODE ? 2 : 1;\n\t\t\t\t}\n\t\t\t\tthis.throwError('Unclosed Regex');\n\t\t\t}\n\t\t});\n\t},\n};\n\nexport { index as default };\n","const PLUS_CODE = 43; // +\nconst MINUS_CODE = 45; // -\n\nconst plugin = {\n\tname: 'assignment',\n\n\tassignmentOperators: new Set([\n\t\t'=',\n\t\t'*=',\n\t\t'**=',\n\t\t'/=',\n\t\t'%=',\n\t\t'+=',\n\t\t'-=',\n\t\t'<<=',\n\t\t'>>=',\n\t\t'>>>=',\n\t\t'&=',\n\t\t'^=',\n\t\t'|=',\n\t]),\n\tupdateOperators: [PLUS_CODE, MINUS_CODE],\n\tassignmentPrecedence: 0.9,\n\n\tinit(jsep) {\n\t\tconst updateNodeTypes = [jsep.IDENTIFIER, jsep.MEMBER_EXP];\n\t\tplugin.assignmentOperators.forEach(op => jsep.addBinaryOp(op, plugin.assignmentPrecedence, true));\n\n\t\tjsep.hooks.add('gobble-token', function gobbleUpdatePrefix(env) {\n\t\t\tconst code = this.code;\n\t\t\tif (plugin.updateOperators.some(c => c === code && c === this.expr.charCodeAt(this.index + 1))) {\n\t\t\t\tthis.index += 2;\n\t\t\t\tenv.node = {\n\t\t\t\t\ttype: 'UpdateExpression',\n\t\t\t\t\toperator: code === PLUS_CODE ? '++' : '--',\n\t\t\t\t\targument: this.gobbleTokenProperty(this.gobbleIdentifier()),\n\t\t\t\t\tprefix: true,\n\t\t\t\t};\n\t\t\t\tif (!env.node.argument || !updateNodeTypes.includes(env.node.argument.type)) {\n\t\t\t\t\tthis.throwError(`Unexpected ${env.node.operator}`);\n\t\t\t\t}\n\t\t\t}\n\t\t});\n\n\t\tjsep.hooks.add('after-token', function gobbleUpdatePostfix(env) {\n\t\t\tif (env.node) {\n\t\t\t\tconst code = this.code;\n\t\t\t\tif (plugin.updateOperators.some(c => c === code && c === this.expr.charCodeAt(this.index + 1))) {\n\t\t\t\t\tif (!updateNodeTypes.includes(env.node.type)) {\n\t\t\t\t\t\tthis.throwError(`Unexpected ${env.node.operator}`);\n\t\t\t\t\t}\n\t\t\t\t\tthis.index += 2;\n\t\t\t\t\tenv.node = {\n\t\t\t\t\t\ttype: 'UpdateExpression',\n\t\t\t\t\t\toperator: code === PLUS_CODE ? '++' : '--',\n\t\t\t\t\t\targument: env.node,\n\t\t\t\t\t\tprefix: false,\n\t\t\t\t\t};\n\t\t\t\t}\n\t\t\t}\n\t\t});\n\n\t\tjsep.hooks.add('after-expression', function gobbleAssignment(env) {\n\t\t\tif (env.node) {\n\t\t\t\t// Note: Binaries can be chained in a single expression to respect\n\t\t\t\t// operator precedence (i.e. a = b = 1 + 2 + 3)\n\t\t\t\t// Update all binary assignment nodes in the tree\n\t\t\t\tupdateBinariesToAssignments(env.node);\n\t\t\t}\n\t\t});\n\n\t\tfunction updateBinariesToAssignments(node) {\n\t\t\tif (plugin.assignmentOperators.has(node.operator)) {\n\t\t\t\tnode.type = 'AssignmentExpression';\n\t\t\t\tupdateBinariesToAssignments(node.left);\n\t\t\t\tupdateBinariesToAssignments(node.right);\n\t\t\t}\n\t\t\telse if (!node.operator) {\n\t\t\t\tObject.values(node).forEach((val) => {\n\t\t\t\t\tif (val && typeof val === 'object') {\n\t\t\t\t\t\tupdateBinariesToAssignments(val);\n\t\t\t\t\t}\n\t\t\t\t});\n\t\t\t}\n\t\t}\n\t},\n};\n\nexport { plugin as default };\n","/* eslint-disable camelcase, unicorn/prefer-string-replace-all,\n unicorn/prefer-at */\nconst {hasOwnProperty: hasOwnProp} = Object.prototype;\n\n/**\n * @typedef {null|boolean|number|string|PlainObject|GenericArray} JSONObject\n */\n\n/**\n * @typedef {any} AnyItem\n */\n\n/**\n * @typedef {any} AnyResult\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 {AnyItem} 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 {AnyItem} 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 {AnyResult} 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/**\n * @typedef {any} ContextItem\n */\n\n/**\n * @typedef {any} EvaluatedResult\n */\n\n/**\n* @callback EvalCallback\n* @param {string} code\n* @param {ContextItem} context\n* @returns {EvaluatedResult}\n*/\n\n/**\n * @typedef {typeof import('./jsonpath-browser').SafeScript} EvalClass\n */\n\n/**\n * @typedef {PlainObject} JSONPathOptions\n * @property {JSON} json\n * @property {string|string[]} path\n * @property {\"value\"|\"path\"|\"pointer\"|\"parent\"|\"parentProperty\"|\n * \"all\"} [resultType=\"value\"]\n * @property {boolean} [flatten=false]\n * @property {boolean} [wrap=true]\n * @property {PlainObject} [sandbox={}]\n * @property {EvalCallback|EvalClass|'safe'|'native'|\n * boolean} [eval = 'safe']\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\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.eval = opts.eval === undefined ? 'safe' : opts.eval;\n this.ignoreEvalErrors = (typeof opts.ignoreEvalErrors === 'undefined')\n ? false\n : opts.ignoreEvalErrors;\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.currEval = this.eval;\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.currEval = hasOwnProp.call(expr, 'eval')\n ? expr.eval\n : this.currEval;\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) {\n exprList.shift();\n }\n this._hasParentSelector = null;\n const result = this\n ._trace(\n exprList, json, ['$'], currParent, currParentProperty, callback\n )\n .filter(function (ea) {\n return ea && !ea.isParentSelector;\n });\n\n if (!result.length) {\n return wrap ? [] : undefined;\n }\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 n/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(val, (m) => {\n addRet(this._trace(\n x, val[m], push(path, m), val, m, callback, 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(val, (m) => {\n // We don't join m and x here because we only want parents,\n // not scalar values\n if (typeof val[m] === 'object') {\n // Keep going with recursive descent on val's\n // object children\n addRet(this._trace(\n expr.slice(), val[m], push(path, m), val, m, callback, true\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.currEval === false) {\n throw new Error('Eval [?(expr)] prevented in JSONPath expression.');\n }\n const safeLoc = loc.replace(/^\\?\\((.*?)\\)$/u, '$1');\n // check for a nested filter expression\n const nested = (/@.?([^?]*)[['](\\??\\(.*?\\))(?!.\\)\\])[\\]']/gu).exec(safeLoc);\n if (nested) {\n // find if there are matches in the nested expression\n // add them to the result set if there is at least one match\n this._walk(val, (m) => {\n const npath = [nested[2]];\n const nvalue = nested[1]\n ? val[m][nested[1]]\n : val[m];\n const filterResults = this._trace(npath, nvalue, path,\n parent, parentPropName, callback, true);\n if (filterResults.length > 0) {\n addRet(this._trace(x, val[m], push(path, m), val,\n m, callback, true));\n }\n });\n } else {\n this._walk(val, (m) => {\n if (this._eval(safeLoc, val[m], m, path, parent,\n parentPropName)) {\n addRet(this._trace(x, val[m], push(path, m), val, m,\n callback, true));\n }\n });\n }\n } else if (loc[0] === '(') { // [(expr)] (dynamic property/index)\n if (this.currEval === false) {\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 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 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 (val, f) {\n if (Array.isArray(val)) {\n const n = val.length;\n for (let i = 0; i < n; i++) {\n f(i);\n }\n } else if (val && typeof val === 'object') {\n Object.keys(val).forEach((m) => {\n f(m);\n });\n }\n};\n\nJSONPath.prototype._slice = function (\n loc, expr, val, path, parent, parentPropName, callback\n) {\n if (!Array.isArray(val)) {\n return undefined;\n }\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 this.currSandbox._$_parentProperty = parentPropName;\n this.currSandbox._$_parent = parent;\n this.currSandbox._$_property = _vname;\n this.currSandbox._$_root = this.json;\n this.currSandbox._$_v = _v;\n\n const containsPath = code.includes('@path');\n if (containsPath) {\n this.currSandbox._$_path = JSONPath.toPathString(path.concat([_vname]));\n }\n\n const scriptCacheKey = this.currEval + 'Script:' + code;\n if (!JSONPath.cache[scriptCacheKey]) {\n let script = code\n .replace(/@parentProperty/gu, '_$_parentProperty')\n .replace(/@parent/gu, '_$_parent')\n .replace(/@property/gu, '_$_property')\n .replace(/@root/gu, '_$_root')\n .replace(/@([.\\s)[])/gu, '_$_v$1');\n if (containsPath) {\n script = script.replace(/@path/gu, '_$_path');\n }\n if (\n this.currEval === 'safe' ||\n this.currEval === true ||\n this.currEval === undefined\n ) {\n JSONPath.cache[scriptCacheKey] = new this.safeVm.Script(script);\n } else if (this.currEval === 'native') {\n JSONPath.cache[scriptCacheKey] = new this.vm.Script(script);\n } else if (\n typeof this.currEval === 'function' &&\n this.currEval.prototype &&\n hasOwnProp.call(this.currEval.prototype, 'runInNewContext')\n ) {\n const CurrEval = this.currEval;\n JSONPath.cache[scriptCacheKey] = new CurrEval(script);\n } else if (typeof this.currEval === 'function') {\n JSONPath.cache[scriptCacheKey] = {\n runInNewContext: (context) => this.currEval(script, context)\n };\n } else {\n throw new TypeError(`Unknown \"eval\" property \"${this.currEval}\"`);\n }\n }\n\n try {\n return JSONPath.cache[scriptCacheKey].runInNewContext(this.currSandbox);\n } catch (e) {\n if (this.ignoreEvalErrors) {\n return false;\n }\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]) {\n return cache[expr].concat();\n }\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","/* eslint-disable no-bitwise */\nimport jsep from 'jsep';\nimport jsepRegex from '@jsep-plugin/regex';\nimport jsepAssignment from '@jsep-plugin/assignment';\nimport {JSONPath} from './jsonpath.js';\n\n/**\n * @typedef {any} ContextItem\n */\n\n/**\n * @typedef {any} EvaluatedResult\n */\n\n/**\n * @callback ConditionCallback\n * @param {ContextItem} 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\n// register plugins\njsep.plugins.register(jsepRegex, jsepAssignment);\n\nconst SafeEval = {\n /**\n * @param {jsep.Expression} ast\n * @param {Record} subs\n */\n evalAst (ast, subs) {\n switch (ast.type) {\n case 'BinaryExpression':\n case 'LogicalExpression':\n return SafeEval.evalBinaryExpression(ast, subs);\n case 'Compound':\n return SafeEval.evalCompound(ast, subs);\n case 'ConditionalExpression':\n return SafeEval.evalConditionalExpression(ast, subs);\n case 'Identifier':\n return SafeEval.evalIdentifier(ast, subs);\n case 'Literal':\n return SafeEval.evalLiteral(ast, subs);\n case 'MemberExpression':\n return SafeEval.evalMemberExpression(ast, subs);\n case 'UnaryExpression':\n return SafeEval.evalUnaryExpression(ast, subs);\n case 'ArrayExpression':\n return SafeEval.evalArrayExpression(ast, subs);\n case 'CallExpression':\n return SafeEval.evalCallExpression(ast, subs);\n case 'AssignmentExpression':\n return SafeEval.evalAssignmentExpression(ast, subs);\n default:\n throw SyntaxError('Unexpected expression', ast);\n }\n },\n evalBinaryExpression (ast, subs) {\n const result = {\n '||': (a, b) => a || b(),\n '&&': (a, b) => a && b(),\n '|': (a, b) => a | b(),\n '^': (a, b) => a ^ b(),\n '&': (a, b) => a & b(),\n // eslint-disable-next-line eqeqeq\n '==': (a, b) => a == b(),\n // eslint-disable-next-line eqeqeq\n '!=': (a, b) => a != b(),\n '===': (a, b) => a === b(),\n '!==': (a, b) => a !== b(),\n '<': (a, b) => a < b(),\n '>': (a, b) => a > b(),\n '<=': (a, b) => a <= b(),\n '>=': (a, b) => a >= b(),\n '<<': (a, b) => a << b(),\n '>>': (a, b) => a >> b(),\n '>>>': (a, b) => a >>> b(),\n '+': (a, b) => a + b(),\n '-': (a, b) => a - b(),\n '*': (a, b) => a * b(),\n '/': (a, b) => a / b(),\n '%': (a, b) => a % b()\n }[ast.operator](\n SafeEval.evalAst(ast.left, subs),\n () => SafeEval.evalAst(ast.right, subs)\n );\n return result;\n },\n evalCompound (ast, subs) {\n let last;\n for (let i = 0; i < ast.body.length; i++) {\n if (\n ast.body[i].type === 'Identifier' &&\n ['var', 'let', 'const'].includes(ast.body[i].name) &&\n ast.body[i + 1] &&\n ast.body[i + 1].type === 'AssignmentExpression'\n ) {\n // var x=2; is detected as\n // [{Identifier var}, {AssignmentExpression x=2}]\n i += 1;\n }\n const expr = ast.body[i];\n last = SafeEval.evalAst(expr, subs);\n }\n return last;\n },\n evalConditionalExpression (ast, subs) {\n if (SafeEval.evalAst(ast.test, subs)) {\n return SafeEval.evalAst(ast.consequent, subs);\n }\n return SafeEval.evalAst(ast.alternate, subs);\n },\n evalIdentifier (ast, subs) {\n if (ast.name in subs) {\n return subs[ast.name];\n }\n throw ReferenceError(`${ast.name} is not defined`);\n },\n evalLiteral (ast) {\n return ast.value;\n },\n evalMemberExpression (ast, subs) {\n const prop = ast.computed\n ? SafeEval.evalAst(ast.property) // `object[property]`\n : ast.property.name; // `object.property` property is Identifier\n const obj = SafeEval.evalAst(ast.object, subs);\n const result = obj[prop];\n if (typeof result === 'function') {\n return result.bind(obj); // arrow functions aren't affected by bind.\n }\n return result;\n },\n evalUnaryExpression (ast, subs) {\n const result = {\n '-': (a) => -SafeEval.evalAst(a, subs),\n '!': (a) => !SafeEval.evalAst(a, subs),\n '~': (a) => ~SafeEval.evalAst(a, subs),\n // eslint-disable-next-line no-implicit-coercion\n '+': (a) => +SafeEval.evalAst(a, subs)\n }[ast.operator](ast.argument);\n return result;\n },\n evalArrayExpression (ast, subs) {\n return ast.elements.map((el) => SafeEval.evalAst(el, subs));\n },\n evalCallExpression (ast, subs) {\n const args = ast.arguments.map((arg) => SafeEval.evalAst(arg, subs));\n const func = SafeEval.evalAst(ast.callee, subs);\n return func(...args);\n },\n evalAssignmentExpression (ast, subs) {\n if (ast.left.type !== 'Identifier') {\n throw SyntaxError('Invalid left-hand side in assignment');\n }\n const id = ast.left.name;\n const value = SafeEval.evalAst(ast.right, subs);\n subs[id] = value;\n return subs[id];\n }\n};\n\n/**\n * A replacement for NodeJS' VM.Script which is also {@link https://developer.mozilla.org/en-US/docs/Web/HTTP/CSP | Content Security Policy} friendly.\n */\nclass SafeScript {\n /**\n * @param {string} expr Expression to evaluate\n */\n constructor (expr) {\n this.code = expr;\n this.ast = jsep(this.code);\n }\n\n /**\n * @param {PlainObject} context Object whose items will be added\n * to evaluation\n * @returns {EvaluatedResult} Result of evaluated code\n */\n runInNewContext (context) {\n const keyMap = {...context};\n return SafeEval.evalAst(this.ast, keyMap);\n }\n}\n\n/**\n * In-browser replacement for NodeJS' VM.Script.\n */\nclass Script {\n /**\n * @param {string} expr Expression to evaluate\n */\n constructor (expr) {\n this.code = expr;\n }\n\n /**\n * @param {PlainObject} context Object whose items will be added\n * to evaluation\n * @returns {EvaluatedResult} Result of evaluated code\n */\n runInNewContext (context) {\n let expr = this.code;\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) => {\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) && !keys.includes('arguments')) {\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 =\n lastStatementEnd > -1\n ? expr.slice(0, lastStatementEnd + 1) +\n ' return ' +\n 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\nJSONPath.prototype.vm = {\n Script\n};\n\nJSONPath.prototype.safeVm = {\n Script: SafeScript\n};\n\nexport {JSONPath, SafeScript};\n"],"names":["Hooks","_createClass","_classCallCheck","key","value","name","callback","first","arguments","this","add","Array","isArray","forEach","env","call","context","Plugins","jsep","registered","_this","_len","length","plugins","_key","plugin","_typeof","init","Error","Jsep","expr","index","get","charAt","charCodeAt","message","error","description","node","hooks","run","find","ch","code","SPACE_CODE","TAB_CODE","LF_CODE","CR_CODE","runHook","nodes","gobbleExpressions","type","COMPOUND","body","untilICode","ch_i","SEMCOL_CODE","COMMA_CODE","gobbleExpression","push","throwError","searchHook","gobbleBinaryExpression","gobbleSpaces","to_check","substr","max_binop_len","tc_len","binary_ops","hasOwnProperty","isIdentifierStart","isIdentifierPart","biop","prec","stack","biop_info","left","right","i","cur_biop","prev","gobbleToken","gobbleBinaryOp","binaryPrecedence","right_a","right_associative","has","pop","BINARY_EXP","operator","isDecimalDigit","PERIOD_CODE","gobbleNumericLiteral","SQUOTE_CODE","DQUOTE_CODE","gobbleStringLiteral","OBRACK_CODE","gobbleArray","max_unop_len","unary_ops","argument","UNARY_EXP","prefix","gobbleIdentifier","literals","LITERAL","raw","this_str","THIS_EXP","OPAREN_CODE","gobbleGroup","gobbleTokenProperty","QUMARK_CODE","optional","MEMBER_EXP","computed","object","property","CBRACK_CODE","CALL_EXP","gobbleArguments","CPAREN_CODE","callee","chCode","number","parseFloat","str","startIndex","quote","closed","substring","start","IDENTIFIER","slice","termination","args","separator_count","String","fromCharCode","arg","SEQUENCE_EXP","expressions","ARRAY_EXP","elements","version","op_name","Math","max","precedence","isRightAssociative","char","additional_identifier_chars","literal_name","literal_value","getMaxKeyLen","parse","obj","apply","concat","_toConsumableArray","Object","keys","map","k","op_val","assign","COLON_CODE","Set","true","false","null","getOwnPropertyNames","m","undefined","ternary","test","consequent","alternate","newTest","register","patternIndex","inCharSet","pattern","flags","RegExp","e","assignmentOperators","updateOperators","assignmentPrecedence","updateNodeTypes","updateBinariesToAssignments","values","val","op","addBinaryOp","some","c","includes","_this2","hasOwnProp","prototype","arr","item","unshift","NewError","_Error","_callSuper","avoidNew","_inherits","_wrapNativeSuper","JSONPath","opts","otherTypeCallback","optObj","json","path","resultType","flatten","wrap","sandbox","eval","ignoreEvalErrors","parent","parentProperty","TypeError","autostart","ret","evaluate","currParent","currParentProperty","currResultType","currEval","currSandbox","currOtherTypeCallback","toPathString","exprList","toPathArray","shift","_hasParentSelector","result","_trace","filter","ea","isParentSelector","hasArrExpr","reduce","rslt","valOrPath","_getPreferredOutput","pointer","toPointer","_handleCallback","fullRetObj","preferredOutput","parentPropName","literalPriority","retObj","_this3","loc","x","addRet","elems","t","_walk","_slice","indexOf","safeLoc","replace","nested","exec","npath","nvalue","_eval","addType","valueType","Number","isFinite","locProp","_step","_iterator","_createForOfIteratorHelper","split","s","n","done","part","err","f","rett","tmp","tl","tt","splice","len","parts","step","parseInt","end","min","_v","_vname","_this4","_$_parentProperty","_$_parent","_$_property","_$_root","_$_v","containsPath","_$_path","scriptCacheKey","cache","script","safeVm","Script","vm","CurrEval","runInNewContext","pathArr","p","toString","subx","$0","$1","prop","ups","join","exp","match","jsepRegex","jsepAssignment","SafeEval","evalAst","ast","subs","evalBinaryExpression","evalCompound","evalConditionalExpression","evalIdentifier","evalLiteral","evalMemberExpression","evalUnaryExpression","evalArrayExpression","evalCallExpression","evalAssignmentExpression","SyntaxError","a","b","last","ReferenceError","bind","el","id","SafeScript","keyMap","_objectSpread","funcs","source","target","conditionCb","il","moveToAnotherArray","vr","funcString","func","fString","lastStatementEnd","lastIndexOf","_construct","Function"],"mappings":"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","x_google_ignoreList":[0,1,2]} \ No newline at end of file +{"version":3,"file":"index-browser-umd.min.cjs","sources":["../node_modules/.pnpm/jsep@1.3.9/node_modules/jsep/dist/jsep.js","../node_modules/.pnpm/@jsep-plugin+regex@1.0.3_jsep@1.3.9/node_modules/@jsep-plugin/regex/dist/index.js","../node_modules/.pnpm/@jsep-plugin+assignment@1.2.1_jsep@1.3.9/node_modules/@jsep-plugin/assignment/dist/index.js","../src/jsonpath.js","../src/jsonpath-browser.js"],"sourcesContent":["/**\n * @implements {IHooks}\n */\nclass Hooks {\n\t/**\n\t * @callback HookCallback\n\t * @this {*|Jsep} this\n\t * @param {Jsep} env\n\t * @returns: void\n\t */\n\t/**\n\t * Adds the given callback to the list of callbacks for the given hook.\n\t *\n\t * The callback will be invoked when the hook it is registered for is run.\n\t *\n\t * One callback function can be registered to multiple hooks and the same hook multiple times.\n\t *\n\t * @param {string|object} name The name of the hook, or an object of callbacks keyed by name\n\t * @param {HookCallback|boolean} callback The callback function which is given environment variables.\n\t * @param {?boolean} [first=false] Will add the hook to the top of the list (defaults to the bottom)\n\t * @public\n\t */\n\tadd(name, callback, first) {\n\t\tif (typeof arguments[0] != 'string') {\n\t\t\t// Multiple hook callbacks, keyed by name\n\t\t\tfor (let name in arguments[0]) {\n\t\t\t\tthis.add(name, arguments[0][name], arguments[1]);\n\t\t\t}\n\t\t}\n\t\telse {\n\t\t\t(Array.isArray(name) ? name : [name]).forEach(function (name) {\n\t\t\t\tthis[name] = this[name] || [];\n\n\t\t\t\tif (callback) {\n\t\t\t\t\tthis[name][first ? 'unshift' : 'push'](callback);\n\t\t\t\t}\n\t\t\t}, this);\n\t\t}\n\t}\n\n\t/**\n\t * Runs a hook invoking all registered callbacks with the given environment variables.\n\t *\n\t * Callbacks will be invoked synchronously and in the order in which they were registered.\n\t *\n\t * @param {string} name The name of the hook.\n\t * @param {Object} env The environment variables of the hook passed to all callbacks registered.\n\t * @public\n\t */\n\trun(name, env) {\n\t\tthis[name] = this[name] || [];\n\t\tthis[name].forEach(function (callback) {\n\t\t\tcallback.call(env && env.context ? env.context : env, env);\n\t\t});\n\t}\n}\n\n/**\n * @implements {IPlugins}\n */\nclass Plugins {\n\tconstructor(jsep) {\n\t\tthis.jsep = jsep;\n\t\tthis.registered = {};\n\t}\n\n\t/**\n\t * @callback PluginSetup\n\t * @this {Jsep} jsep\n\t * @returns: void\n\t */\n\t/**\n\t * Adds the given plugin(s) to the registry\n\t *\n\t * @param {object} plugins\n\t * @param {string} plugins.name The name of the plugin\n\t * @param {PluginSetup} plugins.init The init function\n\t * @public\n\t */\n\tregister(...plugins) {\n\t\tplugins.forEach((plugin) => {\n\t\t\tif (typeof plugin !== 'object' || !plugin.name || !plugin.init) {\n\t\t\t\tthrow new Error('Invalid JSEP plugin format');\n\t\t\t}\n\t\t\tif (this.registered[plugin.name]) {\n\t\t\t\t// already registered. Ignore.\n\t\t\t\treturn;\n\t\t\t}\n\t\t\tplugin.init(this.jsep);\n\t\t\tthis.registered[plugin.name] = plugin;\n\t\t});\n\t}\n}\n\n// JavaScript Expression Parser (JSEP) 1.3.9\n\nclass Jsep {\n\t/**\n\t * @returns {string}\n\t */\n\tstatic get version() {\n\t\t// To be filled in by the template\n\t\treturn '1.3.9';\n\t}\n\n\t/**\n\t * @returns {string}\n\t */\n\tstatic toString() {\n\t\treturn 'JavaScript Expression Parser (JSEP) v' + Jsep.version;\n\t};\n\n\t// ==================== CONFIG ================================\n\t/**\n\t * @method addUnaryOp\n\t * @param {string} op_name The name of the unary op to add\n\t * @returns {Jsep}\n\t */\n\tstatic addUnaryOp(op_name) {\n\t\tJsep.max_unop_len = Math.max(op_name.length, Jsep.max_unop_len);\n\t\tJsep.unary_ops[op_name] = 1;\n\t\treturn Jsep;\n\t}\n\n\t/**\n\t * @method jsep.addBinaryOp\n\t * @param {string} op_name The name of the binary op to add\n\t * @param {number} precedence The precedence of the binary op (can be a float). Higher number = higher precedence\n\t * @param {boolean} [isRightAssociative=false] whether operator is right-associative\n\t * @returns {Jsep}\n\t */\n\tstatic addBinaryOp(op_name, precedence, isRightAssociative) {\n\t\tJsep.max_binop_len = Math.max(op_name.length, Jsep.max_binop_len);\n\t\tJsep.binary_ops[op_name] = precedence;\n\t\tif (isRightAssociative) {\n\t\t\tJsep.right_associative.add(op_name);\n\t\t}\n\t\telse {\n\t\t\tJsep.right_associative.delete(op_name);\n\t\t}\n\t\treturn Jsep;\n\t}\n\n\t/**\n\t * @method addIdentifierChar\n\t * @param {string} char The additional character to treat as a valid part of an identifier\n\t * @returns {Jsep}\n\t */\n\tstatic addIdentifierChar(char) {\n\t\tJsep.additional_identifier_chars.add(char);\n\t\treturn Jsep;\n\t}\n\n\t/**\n\t * @method addLiteral\n\t * @param {string} literal_name The name of the literal to add\n\t * @param {*} literal_value The value of the literal\n\t * @returns {Jsep}\n\t */\n\tstatic addLiteral(literal_name, literal_value) {\n\t\tJsep.literals[literal_name] = literal_value;\n\t\treturn Jsep;\n\t}\n\n\t/**\n\t * @method removeUnaryOp\n\t * @param {string} op_name The name of the unary op to remove\n\t * @returns {Jsep}\n\t */\n\tstatic removeUnaryOp(op_name) {\n\t\tdelete Jsep.unary_ops[op_name];\n\t\tif (op_name.length === Jsep.max_unop_len) {\n\t\t\tJsep.max_unop_len = Jsep.getMaxKeyLen(Jsep.unary_ops);\n\t\t}\n\t\treturn Jsep;\n\t}\n\n\t/**\n\t * @method removeAllUnaryOps\n\t * @returns {Jsep}\n\t */\n\tstatic removeAllUnaryOps() {\n\t\tJsep.unary_ops = {};\n\t\tJsep.max_unop_len = 0;\n\n\t\treturn Jsep;\n\t}\n\n\t/**\n\t * @method removeIdentifierChar\n\t * @param {string} char The additional character to stop treating as a valid part of an identifier\n\t * @returns {Jsep}\n\t */\n\tstatic removeIdentifierChar(char) {\n\t\tJsep.additional_identifier_chars.delete(char);\n\t\treturn Jsep;\n\t}\n\n\t/**\n\t * @method removeBinaryOp\n\t * @param {string} op_name The name of the binary op to remove\n\t * @returns {Jsep}\n\t */\n\tstatic removeBinaryOp(op_name) {\n\t\tdelete Jsep.binary_ops[op_name];\n\n\t\tif (op_name.length === Jsep.max_binop_len) {\n\t\t\tJsep.max_binop_len = Jsep.getMaxKeyLen(Jsep.binary_ops);\n\t\t}\n\t\tJsep.right_associative.delete(op_name);\n\n\t\treturn Jsep;\n\t}\n\n\t/**\n\t * @method removeAllBinaryOps\n\t * @returns {Jsep}\n\t */\n\tstatic removeAllBinaryOps() {\n\t\tJsep.binary_ops = {};\n\t\tJsep.max_binop_len = 0;\n\n\t\treturn Jsep;\n\t}\n\n\t/**\n\t * @method removeLiteral\n\t * @param {string} literal_name The name of the literal to remove\n\t * @returns {Jsep}\n\t */\n\tstatic removeLiteral(literal_name) {\n\t\tdelete Jsep.literals[literal_name];\n\t\treturn Jsep;\n\t}\n\n\t/**\n\t * @method removeAllLiterals\n\t * @returns {Jsep}\n\t */\n\tstatic removeAllLiterals() {\n\t\tJsep.literals = {};\n\n\t\treturn Jsep;\n\t}\n\t// ==================== END CONFIG ============================\n\n\n\t/**\n\t * @returns {string}\n\t */\n\tget char() {\n\t\treturn this.expr.charAt(this.index);\n\t}\n\n\t/**\n\t * @returns {number}\n\t */\n\tget code() {\n\t\treturn this.expr.charCodeAt(this.index);\n\t};\n\n\n\t/**\n\t * @param {string} expr a string with the passed in express\n\t * @returns Jsep\n\t */\n\tconstructor(expr) {\n\t\t// `index` stores the character number we are currently at\n\t\t// All of the gobbles below will modify `index` as we move along\n\t\tthis.expr = expr;\n\t\tthis.index = 0;\n\t}\n\n\t/**\n\t * static top-level parser\n\t * @returns {jsep.Expression}\n\t */\n\tstatic parse(expr) {\n\t\treturn (new Jsep(expr)).parse();\n\t}\n\n\t/**\n\t * Get the longest key length of any object\n\t * @param {object} obj\n\t * @returns {number}\n\t */\n\tstatic getMaxKeyLen(obj) {\n\t\treturn Math.max(0, ...Object.keys(obj).map(k => k.length));\n\t}\n\n\t/**\n\t * `ch` is a character code in the next three functions\n\t * @param {number} ch\n\t * @returns {boolean}\n\t */\n\tstatic isDecimalDigit(ch) {\n\t\treturn (ch >= 48 && ch <= 57); // 0...9\n\t}\n\n\t/**\n\t * Returns the precedence of a binary operator or `0` if it isn't a binary operator. Can be float.\n\t * @param {string} op_val\n\t * @returns {number}\n\t */\n\tstatic binaryPrecedence(op_val) {\n\t\treturn Jsep.binary_ops[op_val] || 0;\n\t}\n\n\t/**\n\t * Looks for start of identifier\n\t * @param {number} ch\n\t * @returns {boolean}\n\t */\n\tstatic isIdentifierStart(ch) {\n\t\treturn (ch >= 65 && ch <= 90) || // A...Z\n\t\t\t(ch >= 97 && ch <= 122) || // a...z\n\t\t\t(ch >= 128 && !Jsep.binary_ops[String.fromCharCode(ch)]) || // any non-ASCII that is not an operator\n\t\t\t(Jsep.additional_identifier_chars.has(String.fromCharCode(ch))); // additional characters\n\t}\n\n\t/**\n\t * @param {number} ch\n\t * @returns {boolean}\n\t */\n\tstatic isIdentifierPart(ch) {\n\t\treturn Jsep.isIdentifierStart(ch) || Jsep.isDecimalDigit(ch);\n\t}\n\n\t/**\n\t * throw error at index of the expression\n\t * @param {string} message\n\t * @throws\n\t */\n\tthrowError(message) {\n\t\tconst error = new Error(message + ' at character ' + this.index);\n\t\terror.index = this.index;\n\t\terror.description = message;\n\t\tthrow error;\n\t}\n\n\t/**\n\t * Run a given hook\n\t * @param {string} name\n\t * @param {jsep.Expression|false} [node]\n\t * @returns {?jsep.Expression}\n\t */\n\trunHook(name, node) {\n\t\tif (Jsep.hooks[name]) {\n\t\t\tconst env = { context: this, node };\n\t\t\tJsep.hooks.run(name, env);\n\t\t\treturn env.node;\n\t\t}\n\t\treturn node;\n\t}\n\n\t/**\n\t * Runs a given hook until one returns a node\n\t * @param {string} name\n\t * @returns {?jsep.Expression}\n\t */\n\tsearchHook(name) {\n\t\tif (Jsep.hooks[name]) {\n\t\t\tconst env = { context: this };\n\t\t\tJsep.hooks[name].find(function (callback) {\n\t\t\t\tcallback.call(env.context, env);\n\t\t\t\treturn env.node;\n\t\t\t});\n\t\t\treturn env.node;\n\t\t}\n\t}\n\n\t/**\n\t * Push `index` up to the next non-space character\n\t */\n\tgobbleSpaces() {\n\t\tlet ch = this.code;\n\t\t// Whitespace\n\t\twhile (ch === Jsep.SPACE_CODE\n\t\t|| ch === Jsep.TAB_CODE\n\t\t|| ch === Jsep.LF_CODE\n\t\t|| ch === Jsep.CR_CODE) {\n\t\t\tch = this.expr.charCodeAt(++this.index);\n\t\t}\n\t\tthis.runHook('gobble-spaces');\n\t}\n\n\t/**\n\t * Top-level method to parse all expressions and returns compound or single node\n\t * @returns {jsep.Expression}\n\t */\n\tparse() {\n\t\tthis.runHook('before-all');\n\t\tconst nodes = this.gobbleExpressions();\n\n\t\t// If there's only one expression just try returning the expression\n\t\tconst node = nodes.length === 1\n\t\t ? nodes[0]\n\t\t\t: {\n\t\t\t\ttype: Jsep.COMPOUND,\n\t\t\t\tbody: nodes\n\t\t\t};\n\t\treturn this.runHook('after-all', node);\n\t}\n\n\t/**\n\t * top-level parser (but can be reused within as well)\n\t * @param {number} [untilICode]\n\t * @returns {jsep.Expression[]}\n\t */\n\tgobbleExpressions(untilICode) {\n\t\tlet nodes = [], ch_i, node;\n\n\t\twhile (this.index < this.expr.length) {\n\t\t\tch_i = this.code;\n\n\t\t\t// Expressions can be separated by semicolons, commas, or just inferred without any\n\t\t\t// separators\n\t\t\tif (ch_i === Jsep.SEMCOL_CODE || ch_i === Jsep.COMMA_CODE) {\n\t\t\t\tthis.index++; // ignore separators\n\t\t\t}\n\t\t\telse {\n\t\t\t\t// Try to gobble each expression individually\n\t\t\t\tif (node = this.gobbleExpression()) {\n\t\t\t\t\tnodes.push(node);\n\t\t\t\t\t// If we weren't able to find a binary expression and are out of room, then\n\t\t\t\t\t// the expression passed in probably has too much\n\t\t\t\t}\n\t\t\t\telse if (this.index < this.expr.length) {\n\t\t\t\t\tif (ch_i === untilICode) {\n\t\t\t\t\t\tbreak;\n\t\t\t\t\t}\n\t\t\t\t\tthis.throwError('Unexpected \"' + this.char + '\"');\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\n\t\treturn nodes;\n\t}\n\n\t/**\n\t * The main parsing function.\n\t * @returns {?jsep.Expression}\n\t */\n\tgobbleExpression() {\n\t\tconst node = this.searchHook('gobble-expression') || this.gobbleBinaryExpression();\n\t\tthis.gobbleSpaces();\n\n\t\treturn this.runHook('after-expression', node);\n\t}\n\n\t/**\n\t * Search for the operation portion of the string (e.g. `+`, `===`)\n\t * Start by taking the longest possible binary operations (3 characters: `===`, `!==`, `>>>`)\n\t * and move down from 3 to 2 to 1 character until a matching binary operation is found\n\t * then, return that binary operation\n\t * @returns {string|boolean}\n\t */\n\tgobbleBinaryOp() {\n\t\tthis.gobbleSpaces();\n\t\tlet to_check = this.expr.substr(this.index, Jsep.max_binop_len);\n\t\tlet tc_len = to_check.length;\n\n\t\twhile (tc_len > 0) {\n\t\t\t// Don't accept a binary op when it is an identifier.\n\t\t\t// Binary ops that start with a identifier-valid character must be followed\n\t\t\t// by a non identifier-part valid character\n\t\t\tif (Jsep.binary_ops.hasOwnProperty(to_check) && (\n\t\t\t\t!Jsep.isIdentifierStart(this.code) ||\n\t\t\t\t(this.index + to_check.length < this.expr.length && !Jsep.isIdentifierPart(this.expr.charCodeAt(this.index + to_check.length)))\n\t\t\t)) {\n\t\t\t\tthis.index += tc_len;\n\t\t\t\treturn to_check;\n\t\t\t}\n\t\t\tto_check = to_check.substr(0, --tc_len);\n\t\t}\n\t\treturn false;\n\t}\n\n\t/**\n\t * This function is responsible for gobbling an individual expression,\n\t * e.g. `1`, `1+2`, `a+(b*2)-Math.sqrt(2)`\n\t * @returns {?jsep.BinaryExpression}\n\t */\n\tgobbleBinaryExpression() {\n\t\tlet node, biop, prec, stack, biop_info, left, right, i, cur_biop;\n\n\t\t// First, try to get the leftmost thing\n\t\t// Then, check to see if there's a binary operator operating on that leftmost thing\n\t\t// Don't gobbleBinaryOp without a left-hand-side\n\t\tleft = this.gobbleToken();\n\t\tif (!left) {\n\t\t\treturn left;\n\t\t}\n\t\tbiop = this.gobbleBinaryOp();\n\n\t\t// If there wasn't a binary operator, just return the leftmost node\n\t\tif (!biop) {\n\t\t\treturn left;\n\t\t}\n\n\t\t// Otherwise, we need to start a stack to properly place the binary operations in their\n\t\t// precedence structure\n\t\tbiop_info = { value: biop, prec: Jsep.binaryPrecedence(biop), right_a: Jsep.right_associative.has(biop) };\n\n\t\tright = this.gobbleToken();\n\n\t\tif (!right) {\n\t\t\tthis.throwError(\"Expected expression after \" + biop);\n\t\t}\n\n\t\tstack = [left, biop_info, right];\n\n\t\t// Properly deal with precedence using [recursive descent](http://www.engr.mun.ca/~theo/Misc/exp_parsing.htm)\n\t\twhile ((biop = this.gobbleBinaryOp())) {\n\t\t\tprec = Jsep.binaryPrecedence(biop);\n\n\t\t\tif (prec === 0) {\n\t\t\t\tthis.index -= biop.length;\n\t\t\t\tbreak;\n\t\t\t}\n\n\t\t\tbiop_info = { value: biop, prec, right_a: Jsep.right_associative.has(biop) };\n\n\t\t\tcur_biop = biop;\n\n\t\t\t// Reduce: make a binary expression from the three topmost entries.\n\t\t\tconst comparePrev = prev => biop_info.right_a && prev.right_a\n\t\t\t\t? prec > prev.prec\n\t\t\t\t: prec <= prev.prec;\n\t\t\twhile ((stack.length > 2) && comparePrev(stack[stack.length - 2])) {\n\t\t\t\tright = stack.pop();\n\t\t\t\tbiop = stack.pop().value;\n\t\t\t\tleft = stack.pop();\n\t\t\t\tnode = {\n\t\t\t\t\ttype: Jsep.BINARY_EXP,\n\t\t\t\t\toperator: biop,\n\t\t\t\t\tleft,\n\t\t\t\t\tright\n\t\t\t\t};\n\t\t\t\tstack.push(node);\n\t\t\t}\n\n\t\t\tnode = this.gobbleToken();\n\n\t\t\tif (!node) {\n\t\t\t\tthis.throwError(\"Expected expression after \" + cur_biop);\n\t\t\t}\n\n\t\t\tstack.push(biop_info, node);\n\t\t}\n\n\t\ti = stack.length - 1;\n\t\tnode = stack[i];\n\n\t\twhile (i > 1) {\n\t\t\tnode = {\n\t\t\t\ttype: Jsep.BINARY_EXP,\n\t\t\t\toperator: stack[i - 1].value,\n\t\t\t\tleft: stack[i - 2],\n\t\t\t\tright: node\n\t\t\t};\n\t\t\ti -= 2;\n\t\t}\n\n\t\treturn node;\n\t}\n\n\t/**\n\t * An individual part of a binary expression:\n\t * e.g. `foo.bar(baz)`, `1`, `\"abc\"`, `(a % 2)` (because it's in parenthesis)\n\t * @returns {boolean|jsep.Expression}\n\t */\n\tgobbleToken() {\n\t\tlet ch, to_check, tc_len, node;\n\n\t\tthis.gobbleSpaces();\n\t\tnode = this.searchHook('gobble-token');\n\t\tif (node) {\n\t\t\treturn this.runHook('after-token', node);\n\t\t}\n\n\t\tch = this.code;\n\n\t\tif (Jsep.isDecimalDigit(ch) || ch === Jsep.PERIOD_CODE) {\n\t\t\t// Char code 46 is a dot `.` which can start off a numeric literal\n\t\t\treturn this.gobbleNumericLiteral();\n\t\t}\n\n\t\tif (ch === Jsep.SQUOTE_CODE || ch === Jsep.DQUOTE_CODE) {\n\t\t\t// Single or double quotes\n\t\t\tnode = this.gobbleStringLiteral();\n\t\t}\n\t\telse if (ch === Jsep.OBRACK_CODE) {\n\t\t\tnode = this.gobbleArray();\n\t\t}\n\t\telse {\n\t\t\tto_check = this.expr.substr(this.index, Jsep.max_unop_len);\n\t\t\ttc_len = to_check.length;\n\n\t\t\twhile (tc_len > 0) {\n\t\t\t\t// Don't accept an unary op when it is an identifier.\n\t\t\t\t// Unary ops that start with a identifier-valid character must be followed\n\t\t\t\t// by a non identifier-part valid character\n\t\t\t\tif (Jsep.unary_ops.hasOwnProperty(to_check) && (\n\t\t\t\t\t!Jsep.isIdentifierStart(this.code) ||\n\t\t\t\t\t(this.index + to_check.length < this.expr.length && !Jsep.isIdentifierPart(this.expr.charCodeAt(this.index + to_check.length)))\n\t\t\t\t)) {\n\t\t\t\t\tthis.index += tc_len;\n\t\t\t\t\tconst argument = this.gobbleToken();\n\t\t\t\t\tif (!argument) {\n\t\t\t\t\t\tthis.throwError('missing unaryOp argument');\n\t\t\t\t\t}\n\t\t\t\t\treturn this.runHook('after-token', {\n\t\t\t\t\t\ttype: Jsep.UNARY_EXP,\n\t\t\t\t\t\toperator: to_check,\n\t\t\t\t\t\targument,\n\t\t\t\t\t\tprefix: true\n\t\t\t\t\t});\n\t\t\t\t}\n\n\t\t\t\tto_check = to_check.substr(0, --tc_len);\n\t\t\t}\n\n\t\t\tif (Jsep.isIdentifierStart(ch)) {\n\t\t\t\tnode = this.gobbleIdentifier();\n\t\t\t\tif (Jsep.literals.hasOwnProperty(node.name)) {\n\t\t\t\t\tnode = {\n\t\t\t\t\t\ttype: Jsep.LITERAL,\n\t\t\t\t\t\tvalue: Jsep.literals[node.name],\n\t\t\t\t\t\traw: node.name,\n\t\t\t\t\t};\n\t\t\t\t}\n\t\t\t\telse if (node.name === Jsep.this_str) {\n\t\t\t\t\tnode = { type: Jsep.THIS_EXP };\n\t\t\t\t}\n\t\t\t}\n\t\t\telse if (ch === Jsep.OPAREN_CODE) { // open parenthesis\n\t\t\t\tnode = this.gobbleGroup();\n\t\t\t}\n\t\t}\n\n\t\tif (!node) {\n\t\t\treturn this.runHook('after-token', false);\n\t\t}\n\n\t\tnode = this.gobbleTokenProperty(node);\n\t\treturn this.runHook('after-token', node);\n\t}\n\n\t/**\n\t * Gobble properties of of identifiers/strings/arrays/groups.\n\t * e.g. `foo`, `bar.baz`, `foo['bar'].baz`\n\t * It also gobbles function calls:\n\t * e.g. `Math.acos(obj.angle)`\n\t * @param {jsep.Expression} node\n\t * @returns {jsep.Expression}\n\t */\n\tgobbleTokenProperty(node) {\n\t\tthis.gobbleSpaces();\n\n\t\tlet ch = this.code;\n\t\twhile (ch === Jsep.PERIOD_CODE || ch === Jsep.OBRACK_CODE || ch === Jsep.OPAREN_CODE || ch === Jsep.QUMARK_CODE) {\n\t\t\tlet optional;\n\t\t\tif (ch === Jsep.QUMARK_CODE) {\n\t\t\t\tif (this.expr.charCodeAt(this.index + 1) !== Jsep.PERIOD_CODE) {\n\t\t\t\t\tbreak;\n\t\t\t\t}\n\t\t\t\toptional = true;\n\t\t\t\tthis.index += 2;\n\t\t\t\tthis.gobbleSpaces();\n\t\t\t\tch = this.code;\n\t\t\t}\n\t\t\tthis.index++;\n\n\t\t\tif (ch === Jsep.OBRACK_CODE) {\n\t\t\t\tnode = {\n\t\t\t\t\ttype: Jsep.MEMBER_EXP,\n\t\t\t\t\tcomputed: true,\n\t\t\t\t\tobject: node,\n\t\t\t\t\tproperty: this.gobbleExpression()\n\t\t\t\t};\n\t\t\t\tif (!node.property) {\n\t\t\t\t\tthis.throwError('Unexpected \"' + this.char + '\"');\n\t\t\t\t}\n\t\t\t\tthis.gobbleSpaces();\n\t\t\t\tch = this.code;\n\t\t\t\tif (ch !== Jsep.CBRACK_CODE) {\n\t\t\t\t\tthis.throwError('Unclosed [');\n\t\t\t\t}\n\t\t\t\tthis.index++;\n\t\t\t}\n\t\t\telse if (ch === Jsep.OPAREN_CODE) {\n\t\t\t\t// A function call is being made; gobble all the arguments\n\t\t\t\tnode = {\n\t\t\t\t\ttype: Jsep.CALL_EXP,\n\t\t\t\t\t'arguments': this.gobbleArguments(Jsep.CPAREN_CODE),\n\t\t\t\t\tcallee: node\n\t\t\t\t};\n\t\t\t}\n\t\t\telse if (ch === Jsep.PERIOD_CODE || optional) {\n\t\t\t\tif (optional) {\n\t\t\t\t\tthis.index--;\n\t\t\t\t}\n\t\t\t\tthis.gobbleSpaces();\n\t\t\t\tnode = {\n\t\t\t\t\ttype: Jsep.MEMBER_EXP,\n\t\t\t\t\tcomputed: false,\n\t\t\t\t\tobject: node,\n\t\t\t\t\tproperty: this.gobbleIdentifier(),\n\t\t\t\t};\n\t\t\t}\n\n\t\t\tif (optional) {\n\t\t\t\tnode.optional = true;\n\t\t\t} // else leave undefined for compatibility with esprima\n\n\t\t\tthis.gobbleSpaces();\n\t\t\tch = this.code;\n\t\t}\n\n\t\treturn node;\n\t}\n\n\t/**\n\t * Parse simple numeric literals: `12`, `3.4`, `.5`. Do this by using a string to\n\t * keep track of everything in the numeric literal and then calling `parseFloat` on that string\n\t * @returns {jsep.Literal}\n\t */\n\tgobbleNumericLiteral() {\n\t\tlet number = '', ch, chCode;\n\n\t\twhile (Jsep.isDecimalDigit(this.code)) {\n\t\t\tnumber += this.expr.charAt(this.index++);\n\t\t}\n\n\t\tif (this.code === Jsep.PERIOD_CODE) { // can start with a decimal marker\n\t\t\tnumber += this.expr.charAt(this.index++);\n\n\t\t\twhile (Jsep.isDecimalDigit(this.code)) {\n\t\t\t\tnumber += this.expr.charAt(this.index++);\n\t\t\t}\n\t\t}\n\n\t\tch = this.char;\n\n\t\tif (ch === 'e' || ch === 'E') { // exponent marker\n\t\t\tnumber += this.expr.charAt(this.index++);\n\t\t\tch = this.char;\n\n\t\t\tif (ch === '+' || ch === '-') { // exponent sign\n\t\t\t\tnumber += this.expr.charAt(this.index++);\n\t\t\t}\n\n\t\t\twhile (Jsep.isDecimalDigit(this.code)) { // exponent itself\n\t\t\t\tnumber += this.expr.charAt(this.index++);\n\t\t\t}\n\n\t\t\tif (!Jsep.isDecimalDigit(this.expr.charCodeAt(this.index - 1)) ) {\n\t\t\t\tthis.throwError('Expected exponent (' + number + this.char + ')');\n\t\t\t}\n\t\t}\n\n\t\tchCode = this.code;\n\n\t\t// Check to make sure this isn't a variable name that start with a number (123abc)\n\t\tif (Jsep.isIdentifierStart(chCode)) {\n\t\t\tthis.throwError('Variable names cannot start with a number (' +\n\t\t\t\tnumber + this.char + ')');\n\t\t}\n\t\telse if (chCode === Jsep.PERIOD_CODE || (number.length === 1 && number.charCodeAt(0) === Jsep.PERIOD_CODE)) {\n\t\t\tthis.throwError('Unexpected period');\n\t\t}\n\n\t\treturn {\n\t\t\ttype: Jsep.LITERAL,\n\t\t\tvalue: parseFloat(number),\n\t\t\traw: number\n\t\t};\n\t}\n\n\t/**\n\t * Parses a string literal, staring with single or double quotes with basic support for escape codes\n\t * e.g. `\"hello world\"`, `'this is\\nJSEP'`\n\t * @returns {jsep.Literal}\n\t */\n\tgobbleStringLiteral() {\n\t\tlet str = '';\n\t\tconst startIndex = this.index;\n\t\tconst quote = this.expr.charAt(this.index++);\n\t\tlet closed = false;\n\n\t\twhile (this.index < this.expr.length) {\n\t\t\tlet ch = this.expr.charAt(this.index++);\n\n\t\t\tif (ch === quote) {\n\t\t\t\tclosed = true;\n\t\t\t\tbreak;\n\t\t\t}\n\t\t\telse if (ch === '\\\\') {\n\t\t\t\t// Check for all of the common escape codes\n\t\t\t\tch = this.expr.charAt(this.index++);\n\n\t\t\t\tswitch (ch) {\n\t\t\t\t\tcase 'n': str += '\\n'; break;\n\t\t\t\t\tcase 'r': str += '\\r'; break;\n\t\t\t\t\tcase 't': str += '\\t'; break;\n\t\t\t\t\tcase 'b': str += '\\b'; break;\n\t\t\t\t\tcase 'f': str += '\\f'; break;\n\t\t\t\t\tcase 'v': str += '\\x0B'; break;\n\t\t\t\t\tdefault : str += ch;\n\t\t\t\t}\n\t\t\t}\n\t\t\telse {\n\t\t\t\tstr += ch;\n\t\t\t}\n\t\t}\n\n\t\tif (!closed) {\n\t\t\tthis.throwError('Unclosed quote after \"' + str + '\"');\n\t\t}\n\n\t\treturn {\n\t\t\ttype: Jsep.LITERAL,\n\t\t\tvalue: str,\n\t\t\traw: this.expr.substring(startIndex, this.index),\n\t\t};\n\t}\n\n\t/**\n\t * Gobbles only identifiers\n\t * e.g.: `foo`, `_value`, `$x1`\n\t * Also, this function checks if that identifier is a literal:\n\t * (e.g. `true`, `false`, `null`) or `this`\n\t * @returns {jsep.Identifier}\n\t */\n\tgobbleIdentifier() {\n\t\tlet ch = this.code, start = this.index;\n\n\t\tif (Jsep.isIdentifierStart(ch)) {\n\t\t\tthis.index++;\n\t\t}\n\t\telse {\n\t\t\tthis.throwError('Unexpected ' + this.char);\n\t\t}\n\n\t\twhile (this.index < this.expr.length) {\n\t\t\tch = this.code;\n\n\t\t\tif (Jsep.isIdentifierPart(ch)) {\n\t\t\t\tthis.index++;\n\t\t\t}\n\t\t\telse {\n\t\t\t\tbreak;\n\t\t\t}\n\t\t}\n\t\treturn {\n\t\t\ttype: Jsep.IDENTIFIER,\n\t\t\tname: this.expr.slice(start, this.index),\n\t\t};\n\t}\n\n\t/**\n\t * Gobbles a list of arguments within the context of a function call\n\t * or array literal. This function also assumes that the opening character\n\t * `(` or `[` has already been gobbled, and gobbles expressions and commas\n\t * until the terminator character `)` or `]` is encountered.\n\t * e.g. `foo(bar, baz)`, `my_func()`, or `[bar, baz]`\n\t * @param {number} termination\n\t * @returns {jsep.Expression[]}\n\t */\n\tgobbleArguments(termination) {\n\t\tconst args = [];\n\t\tlet closed = false;\n\t\tlet separator_count = 0;\n\n\t\twhile (this.index < this.expr.length) {\n\t\t\tthis.gobbleSpaces();\n\t\t\tlet ch_i = this.code;\n\n\t\t\tif (ch_i === termination) { // done parsing\n\t\t\t\tclosed = true;\n\t\t\t\tthis.index++;\n\n\t\t\t\tif (termination === Jsep.CPAREN_CODE && separator_count && separator_count >= args.length){\n\t\t\t\t\tthis.throwError('Unexpected token ' + String.fromCharCode(termination));\n\t\t\t\t}\n\n\t\t\t\tbreak;\n\t\t\t}\n\t\t\telse if (ch_i === Jsep.COMMA_CODE) { // between expressions\n\t\t\t\tthis.index++;\n\t\t\t\tseparator_count++;\n\n\t\t\t\tif (separator_count !== args.length) { // missing argument\n\t\t\t\t\tif (termination === Jsep.CPAREN_CODE) {\n\t\t\t\t\t\tthis.throwError('Unexpected token ,');\n\t\t\t\t\t}\n\t\t\t\t\telse if (termination === Jsep.CBRACK_CODE) {\n\t\t\t\t\t\tfor (let arg = args.length; arg < separator_count; arg++) {\n\t\t\t\t\t\t\targs.push(null);\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t\telse if (args.length !== separator_count && separator_count !== 0) {\n\t\t\t\t// NOTE: `&& separator_count !== 0` allows for either all commas, or all spaces as arguments\n\t\t\t\tthis.throwError('Expected comma');\n\t\t\t}\n\t\t\telse {\n\t\t\t\tconst node = this.gobbleExpression();\n\n\t\t\t\tif (!node || node.type === Jsep.COMPOUND) {\n\t\t\t\t\tthis.throwError('Expected comma');\n\t\t\t\t}\n\n\t\t\t\targs.push(node);\n\t\t\t}\n\t\t}\n\n\t\tif (!closed) {\n\t\t\tthis.throwError('Expected ' + String.fromCharCode(termination));\n\t\t}\n\n\t\treturn args;\n\t}\n\n\t/**\n\t * Responsible for parsing a group of things within parentheses `()`\n\t * that have no identifier in front (so not a function call)\n\t * This function assumes that it needs to gobble the opening parenthesis\n\t * and then tries to gobble everything within that parenthesis, assuming\n\t * that the next thing it should see is the close parenthesis. If not,\n\t * then the expression probably doesn't have a `)`\n\t * @returns {boolean|jsep.Expression}\n\t */\n\tgobbleGroup() {\n\t\tthis.index++;\n\t\tlet nodes = this.gobbleExpressions(Jsep.CPAREN_CODE);\n\t\tif (this.code === Jsep.CPAREN_CODE) {\n\t\t\tthis.index++;\n\t\t\tif (nodes.length === 1) {\n\t\t\t\treturn nodes[0];\n\t\t\t}\n\t\t\telse if (!nodes.length) {\n\t\t\t\treturn false;\n\t\t\t}\n\t\t\telse {\n\t\t\t\treturn {\n\t\t\t\t\ttype: Jsep.SEQUENCE_EXP,\n\t\t\t\t\texpressions: nodes,\n\t\t\t\t};\n\t\t\t}\n\t\t}\n\t\telse {\n\t\t\tthis.throwError('Unclosed (');\n\t\t}\n\t}\n\n\t/**\n\t * Responsible for parsing Array literals `[1, 2, 3]`\n\t * This function assumes that it needs to gobble the opening bracket\n\t * and then tries to gobble the expressions as arguments.\n\t * @returns {jsep.ArrayExpression}\n\t */\n\tgobbleArray() {\n\t\tthis.index++;\n\n\t\treturn {\n\t\t\ttype: Jsep.ARRAY_EXP,\n\t\t\telements: this.gobbleArguments(Jsep.CBRACK_CODE)\n\t\t};\n\t}\n}\n\n// Static fields:\nconst hooks = new Hooks();\nObject.assign(Jsep, {\n\thooks,\n\tplugins: new Plugins(Jsep),\n\n\t// Node Types\n\t// ----------\n\t// This is the full set of types that any JSEP node can be.\n\t// Store them here to save space when minified\n\tCOMPOUND: 'Compound',\n\tSEQUENCE_EXP: 'SequenceExpression',\n\tIDENTIFIER: 'Identifier',\n\tMEMBER_EXP: 'MemberExpression',\n\tLITERAL: 'Literal',\n\tTHIS_EXP: 'ThisExpression',\n\tCALL_EXP: 'CallExpression',\n\tUNARY_EXP: 'UnaryExpression',\n\tBINARY_EXP: 'BinaryExpression',\n\tARRAY_EXP: 'ArrayExpression',\n\n\tTAB_CODE: 9,\n\tLF_CODE: 10,\n\tCR_CODE: 13,\n\tSPACE_CODE: 32,\n\tPERIOD_CODE: 46, // '.'\n\tCOMMA_CODE: 44, // ','\n\tSQUOTE_CODE: 39, // single quote\n\tDQUOTE_CODE: 34, // double quotes\n\tOPAREN_CODE: 40, // (\n\tCPAREN_CODE: 41, // )\n\tOBRACK_CODE: 91, // [\n\tCBRACK_CODE: 93, // ]\n\tQUMARK_CODE: 63, // ?\n\tSEMCOL_CODE: 59, // ;\n\tCOLON_CODE: 58, // :\n\n\n\t// Operations\n\t// ----------\n\t// Use a quickly-accessible map to store all of the unary operators\n\t// Values are set to `1` (it really doesn't matter)\n\tunary_ops: {\n\t\t'-': 1,\n\t\t'!': 1,\n\t\t'~': 1,\n\t\t'+': 1\n\t},\n\n\t// Also use a map for the binary operations but set their values to their\n\t// binary precedence for quick reference (higher number = higher precedence)\n\t// see [Order of operations](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Operators/Operator_Precedence)\n\tbinary_ops: {\n\t\t'||': 1, '&&': 2, '|': 3, '^': 4, '&': 5,\n\t\t'==': 6, '!=': 6, '===': 6, '!==': 6,\n\t\t'<': 7, '>': 7, '<=': 7, '>=': 7,\n\t\t'<<': 8, '>>': 8, '>>>': 8,\n\t\t'+': 9, '-': 9,\n\t\t'*': 10, '/': 10, '%': 10\n\t},\n\n\t// sets specific binary_ops as right-associative\n\tright_associative: new Set(),\n\n\t// Additional valid identifier chars, apart from a-z, A-Z and 0-9 (except on the starting char)\n\tadditional_identifier_chars: new Set(['$', '_']),\n\n\t// Literals\n\t// ----------\n\t// Store the values to return for the various literals we may encounter\n\tliterals: {\n\t\t'true': true,\n\t\t'false': false,\n\t\t'null': null\n\t},\n\n\t// Except for `this`, which is special. This could be changed to something like `'self'` as well\n\tthis_str: 'this',\n});\nJsep.max_unop_len = Jsep.getMaxKeyLen(Jsep.unary_ops);\nJsep.max_binop_len = Jsep.getMaxKeyLen(Jsep.binary_ops);\n\n// Backward Compatibility:\nconst jsep = expr => (new Jsep(expr)).parse();\nconst stdClassProps = Object.getOwnPropertyNames(class Test{});\nObject.getOwnPropertyNames(Jsep)\n\t.filter(prop => !stdClassProps.includes(prop) && jsep[prop] === undefined)\n\t.forEach((m) => {\n\t\tjsep[m] = Jsep[m];\n\t});\njsep.Jsep = Jsep; // allows for const { Jsep } = require('jsep');\n\nconst CONDITIONAL_EXP = 'ConditionalExpression';\n\nvar ternary = {\n\tname: 'ternary',\n\n\tinit(jsep) {\n\t\t// Ternary expression: test ? consequent : alternate\n\t\tjsep.hooks.add('after-expression', function gobbleTernary(env) {\n\t\t\tif (env.node && this.code === jsep.QUMARK_CODE) {\n\t\t\t\tthis.index++;\n\t\t\t\tconst test = env.node;\n\t\t\t\tconst consequent = this.gobbleExpression();\n\n\t\t\t\tif (!consequent) {\n\t\t\t\t\tthis.throwError('Expected expression');\n\t\t\t\t}\n\n\t\t\t\tthis.gobbleSpaces();\n\n\t\t\t\tif (this.code === jsep.COLON_CODE) {\n\t\t\t\t\tthis.index++;\n\t\t\t\t\tconst alternate = this.gobbleExpression();\n\n\t\t\t\t\tif (!alternate) {\n\t\t\t\t\t\tthis.throwError('Expected expression');\n\t\t\t\t\t}\n\t\t\t\t\tenv.node = {\n\t\t\t\t\t\ttype: CONDITIONAL_EXP,\n\t\t\t\t\t\ttest,\n\t\t\t\t\t\tconsequent,\n\t\t\t\t\t\talternate,\n\t\t\t\t\t};\n\n\t\t\t\t\t// check for operators of higher priority than ternary (i.e. assignment)\n\t\t\t\t\t// jsep sets || at 1, and assignment at 0.9, and conditional should be between them\n\t\t\t\t\tif (test.operator && jsep.binary_ops[test.operator] <= 0.9) {\n\t\t\t\t\t\tlet newTest = test;\n\t\t\t\t\t\twhile (newTest.right.operator && jsep.binary_ops[newTest.right.operator] <= 0.9) {\n\t\t\t\t\t\t\tnewTest = newTest.right;\n\t\t\t\t\t\t}\n\t\t\t\t\t\tenv.node.test = newTest.right;\n\t\t\t\t\t\tnewTest.right = env.node;\n\t\t\t\t\t\tenv.node = test;\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\telse {\n\t\t\t\t\tthis.throwError('Expected :');\n\t\t\t\t}\n\t\t\t}\n\t\t});\n\t},\n};\n\n// Add default plugins:\n\njsep.plugins.register(ternary);\n\nexport { Jsep, jsep as default };\n","const FSLASH_CODE = 47; // '/'\nconst BSLASH_CODE = 92; // '\\\\'\n\nvar index = {\n\tname: 'regex',\n\n\tinit(jsep) {\n\t\t// Regex literal: /abc123/ig\n\t\tjsep.hooks.add('gobble-token', function gobbleRegexLiteral(env) {\n\t\t\tif (this.code === FSLASH_CODE) {\n\t\t\t\tconst patternIndex = ++this.index;\n\n\t\t\t\tlet inCharSet = false;\n\t\t\t\twhile (this.index < this.expr.length) {\n\t\t\t\t\tif (this.code === FSLASH_CODE && !inCharSet) {\n\t\t\t\t\t\tconst pattern = this.expr.slice(patternIndex, this.index);\n\n\t\t\t\t\t\tlet flags = '';\n\t\t\t\t\t\twhile (++this.index < this.expr.length) {\n\t\t\t\t\t\t\tconst code = this.code;\n\t\t\t\t\t\t\tif ((code >= 97 && code <= 122) // a...z\n\t\t\t\t\t\t\t\t|| (code >= 65 && code <= 90) // A...Z\n\t\t\t\t\t\t\t\t|| (code >= 48 && code <= 57)) { // 0-9\n\t\t\t\t\t\t\t\tflags += this.char;\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\telse {\n\t\t\t\t\t\t\t\tbreak;\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t}\n\n\t\t\t\t\t\tlet value;\n\t\t\t\t\t\ttry {\n\t\t\t\t\t\t\tvalue = new RegExp(pattern, flags);\n\t\t\t\t\t\t}\n\t\t\t\t\t\tcatch (e) {\n\t\t\t\t\t\t\tthis.throwError(e.message);\n\t\t\t\t\t\t}\n\n\t\t\t\t\t\tenv.node = {\n\t\t\t\t\t\t\ttype: jsep.LITERAL,\n\t\t\t\t\t\t\tvalue,\n\t\t\t\t\t\t\traw: this.expr.slice(patternIndex - 1, this.index),\n\t\t\t\t\t\t};\n\n\t\t\t\t\t\t// allow . [] and () after regex: /regex/.test(a)\n\t\t\t\t\t\tenv.node = this.gobbleTokenProperty(env.node);\n\t\t\t\t\t\treturn env.node;\n\t\t\t\t\t}\n\t\t\t\t\tif (this.code === jsep.OBRACK_CODE) {\n\t\t\t\t\t\tinCharSet = true;\n\t\t\t\t\t}\n\t\t\t\t\telse if (inCharSet && this.code === jsep.CBRACK_CODE) {\n\t\t\t\t\t\tinCharSet = false;\n\t\t\t\t\t}\n\t\t\t\t\tthis.index += this.code === BSLASH_CODE ? 2 : 1;\n\t\t\t\t}\n\t\t\t\tthis.throwError('Unclosed Regex');\n\t\t\t}\n\t\t});\n\t},\n};\n\nexport { index as default };\n","const PLUS_CODE = 43; // +\nconst MINUS_CODE = 45; // -\n\nconst plugin = {\n\tname: 'assignment',\n\n\tassignmentOperators: new Set([\n\t\t'=',\n\t\t'*=',\n\t\t'**=',\n\t\t'/=',\n\t\t'%=',\n\t\t'+=',\n\t\t'-=',\n\t\t'<<=',\n\t\t'>>=',\n\t\t'>>>=',\n\t\t'&=',\n\t\t'^=',\n\t\t'|=',\n\t]),\n\tupdateOperators: [PLUS_CODE, MINUS_CODE],\n\tassignmentPrecedence: 0.9,\n\n\tinit(jsep) {\n\t\tconst updateNodeTypes = [jsep.IDENTIFIER, jsep.MEMBER_EXP];\n\t\tplugin.assignmentOperators.forEach(op => jsep.addBinaryOp(op, plugin.assignmentPrecedence, true));\n\n\t\tjsep.hooks.add('gobble-token', function gobbleUpdatePrefix(env) {\n\t\t\tconst code = this.code;\n\t\t\tif (plugin.updateOperators.some(c => c === code && c === this.expr.charCodeAt(this.index + 1))) {\n\t\t\t\tthis.index += 2;\n\t\t\t\tenv.node = {\n\t\t\t\t\ttype: 'UpdateExpression',\n\t\t\t\t\toperator: code === PLUS_CODE ? '++' : '--',\n\t\t\t\t\targument: this.gobbleTokenProperty(this.gobbleIdentifier()),\n\t\t\t\t\tprefix: true,\n\t\t\t\t};\n\t\t\t\tif (!env.node.argument || !updateNodeTypes.includes(env.node.argument.type)) {\n\t\t\t\t\tthis.throwError(`Unexpected ${env.node.operator}`);\n\t\t\t\t}\n\t\t\t}\n\t\t});\n\n\t\tjsep.hooks.add('after-token', function gobbleUpdatePostfix(env) {\n\t\t\tif (env.node) {\n\t\t\t\tconst code = this.code;\n\t\t\t\tif (plugin.updateOperators.some(c => c === code && c === this.expr.charCodeAt(this.index + 1))) {\n\t\t\t\t\tif (!updateNodeTypes.includes(env.node.type)) {\n\t\t\t\t\t\tthis.throwError(`Unexpected ${env.node.operator}`);\n\t\t\t\t\t}\n\t\t\t\t\tthis.index += 2;\n\t\t\t\t\tenv.node = {\n\t\t\t\t\t\ttype: 'UpdateExpression',\n\t\t\t\t\t\toperator: code === PLUS_CODE ? '++' : '--',\n\t\t\t\t\t\targument: env.node,\n\t\t\t\t\t\tprefix: false,\n\t\t\t\t\t};\n\t\t\t\t}\n\t\t\t}\n\t\t});\n\n\t\tjsep.hooks.add('after-expression', function gobbleAssignment(env) {\n\t\t\tif (env.node) {\n\t\t\t\t// Note: Binaries can be chained in a single expression to respect\n\t\t\t\t// operator precedence (i.e. a = b = 1 + 2 + 3)\n\t\t\t\t// Update all binary assignment nodes in the tree\n\t\t\t\tupdateBinariesToAssignments(env.node);\n\t\t\t}\n\t\t});\n\n\t\tfunction updateBinariesToAssignments(node) {\n\t\t\tif (plugin.assignmentOperators.has(node.operator)) {\n\t\t\t\tnode.type = 'AssignmentExpression';\n\t\t\t\tupdateBinariesToAssignments(node.left);\n\t\t\t\tupdateBinariesToAssignments(node.right);\n\t\t\t}\n\t\t\telse if (!node.operator) {\n\t\t\t\tObject.values(node).forEach((val) => {\n\t\t\t\t\tif (val && typeof val === 'object') {\n\t\t\t\t\t\tupdateBinariesToAssignments(val);\n\t\t\t\t\t}\n\t\t\t\t});\n\t\t\t}\n\t\t}\n\t},\n};\n\nexport { plugin as default };\n","/* eslint-disable camelcase, unicorn/prefer-string-replace-all,\n unicorn/prefer-at */\nconst {hasOwnProperty: hasOwnProp} = Object.prototype;\n\n/**\n * @typedef {null|boolean|number|string|PlainObject|GenericArray} JSONObject\n */\n\n/**\n * @typedef {any} AnyItem\n */\n\n/**\n * @typedef {any} AnyResult\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 {AnyItem} 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 {AnyItem} 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 {AnyResult} 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/**\n * @typedef {any} ContextItem\n */\n\n/**\n * @typedef {any} EvaluatedResult\n */\n\n/**\n* @callback EvalCallback\n* @param {string} code\n* @param {ContextItem} context\n* @returns {EvaluatedResult}\n*/\n\n/**\n * @typedef {typeof import('./jsonpath-browser').SafeScript} EvalClass\n */\n\n/**\n * @typedef {PlainObject} JSONPathOptions\n * @property {JSON} json\n * @property {string|string[]} path\n * @property {\"value\"|\"path\"|\"pointer\"|\"parent\"|\"parentProperty\"|\n * \"all\"} [resultType=\"value\"]\n * @property {boolean} [flatten=false]\n * @property {boolean} [wrap=true]\n * @property {PlainObject} [sandbox={}]\n * @property {EvalCallback|EvalClass|'safe'|'native'|\n * boolean} [eval = 'safe']\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\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.eval = opts.eval === undefined ? 'safe' : opts.eval;\n this.ignoreEvalErrors = (typeof opts.ignoreEvalErrors === 'undefined')\n ? false\n : opts.ignoreEvalErrors;\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.currEval = this.eval;\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.currEval = hasOwnProp.call(expr, 'eval')\n ? expr.eval\n : this.currEval;\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) {\n exprList.shift();\n }\n this._hasParentSelector = null;\n const result = this\n ._trace(\n exprList, json, ['$'], currParent, currParentProperty, callback\n )\n .filter(function (ea) {\n return ea && !ea.isParentSelector;\n });\n\n if (!result.length) {\n return wrap ? [] : undefined;\n }\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 n/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(val, (m) => {\n addRet(this._trace(\n x, val[m], push(path, m), val, m, callback, 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(val, (m) => {\n // We don't join m and x here because we only want parents,\n // not scalar values\n if (typeof val[m] === 'object') {\n // Keep going with recursive descent on val's\n // object children\n addRet(this._trace(\n expr.slice(), val[m], push(path, m), val, m, callback, true\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.currEval === false) {\n throw new Error('Eval [?(expr)] prevented in JSONPath expression.');\n }\n const safeLoc = loc.replace(/^\\?\\((.*?)\\)$/u, '$1');\n // check for a nested filter expression\n const nested = (/@.?([^?]*)[['](\\??\\(.*?\\))(?!.\\)\\])[\\]']/gu).exec(safeLoc);\n if (nested) {\n // find if there are matches in the nested expression\n // add them to the result set if there is at least one match\n this._walk(val, (m) => {\n const npath = [nested[2]];\n const nvalue = nested[1]\n ? val[m][nested[1]]\n : val[m];\n const filterResults = this._trace(npath, nvalue, path,\n parent, parentPropName, callback, true);\n if (filterResults.length > 0) {\n addRet(this._trace(x, val[m], push(path, m), val,\n m, callback, true));\n }\n });\n } else {\n this._walk(val, (m) => {\n if (this._eval(safeLoc, val[m], m, path, parent,\n parentPropName)) {\n addRet(this._trace(x, val[m], push(path, m), val, m,\n callback, true));\n }\n });\n }\n } else if (loc[0] === '(') { // [(expr)] (dynamic property/index)\n if (this.currEval === false) {\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 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 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 // eslint-disable-next-line @stylistic/max-len -- Long\n // eslint-disable-next-line sonarjs/updated-loop-counter -- Convenient\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 (val, f) {\n if (Array.isArray(val)) {\n const n = val.length;\n for (let i = 0; i < n; i++) {\n f(i);\n }\n } else if (val && typeof val === 'object') {\n Object.keys(val).forEach((m) => {\n f(m);\n });\n }\n};\n\nJSONPath.prototype._slice = function (\n loc, expr, val, path, parent, parentPropName, callback\n) {\n if (!Array.isArray(val)) {\n return undefined;\n }\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 this.currSandbox._$_parentProperty = parentPropName;\n this.currSandbox._$_parent = parent;\n this.currSandbox._$_property = _vname;\n this.currSandbox._$_root = this.json;\n this.currSandbox._$_v = _v;\n\n const containsPath = code.includes('@path');\n if (containsPath) {\n this.currSandbox._$_path = JSONPath.toPathString(path.concat([_vname]));\n }\n\n const scriptCacheKey = this.currEval + 'Script:' + code;\n if (!JSONPath.cache[scriptCacheKey]) {\n let script = code\n .replace(/@parentProperty/gu, '_$_parentProperty')\n .replace(/@parent/gu, '_$_parent')\n .replace(/@property/gu, '_$_property')\n .replace(/@root/gu, '_$_root')\n .replace(/@([.\\s)[])/gu, '_$_v$1');\n if (containsPath) {\n script = script.replace(/@path/gu, '_$_path');\n }\n if (\n this.currEval === 'safe' ||\n this.currEval === true ||\n this.currEval === undefined\n ) {\n JSONPath.cache[scriptCacheKey] = new this.safeVm.Script(script);\n } else if (this.currEval === 'native') {\n JSONPath.cache[scriptCacheKey] = new this.vm.Script(script);\n } else if (\n typeof this.currEval === 'function' &&\n this.currEval.prototype &&\n hasOwnProp.call(this.currEval.prototype, 'runInNewContext')\n ) {\n const CurrEval = this.currEval;\n JSONPath.cache[scriptCacheKey] = new CurrEval(script);\n } else if (typeof this.currEval === 'function') {\n JSONPath.cache[scriptCacheKey] = {\n runInNewContext: (context) => this.currEval(script, context)\n };\n } else {\n throw new TypeError(`Unknown \"eval\" property \"${this.currEval}\"`);\n }\n }\n\n try {\n return JSONPath.cache[scriptCacheKey].runInNewContext(this.currSandbox);\n } catch (e) {\n if (this.ignoreEvalErrors) {\n return false;\n }\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]) {\n return cache[expr].concat();\n }\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","/* eslint-disable no-bitwise */\nimport jsep from 'jsep';\nimport jsepRegex from '@jsep-plugin/regex';\nimport jsepAssignment from '@jsep-plugin/assignment';\nimport {JSONPath} from './jsonpath.js';\n\n/**\n * @typedef {any} ContextItem\n */\n\n/**\n * @typedef {any} EvaluatedResult\n */\n\n/**\n * @callback ConditionCallback\n * @param {ContextItem} 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 // eslint-disable-next-line @stylistic/max-len -- Long\n // eslint-disable-next-line sonarjs/updated-loop-counter -- Convenient\n target.push(source.splice(i--, 1)[0]);\n }\n }\n};\n\n// register plugins\njsep.plugins.register(jsepRegex, jsepAssignment);\n\nconst SafeEval = {\n /**\n * @param {jsep.Expression} ast\n * @param {Record} subs\n */\n evalAst (ast, subs) {\n switch (ast.type) {\n case 'BinaryExpression':\n case 'LogicalExpression':\n return SafeEval.evalBinaryExpression(ast, subs);\n case 'Compound':\n return SafeEval.evalCompound(ast, subs);\n case 'ConditionalExpression':\n return SafeEval.evalConditionalExpression(ast, subs);\n case 'Identifier':\n return SafeEval.evalIdentifier(ast, subs);\n case 'Literal':\n return SafeEval.evalLiteral(ast, subs);\n case 'MemberExpression':\n return SafeEval.evalMemberExpression(ast, subs);\n case 'UnaryExpression':\n return SafeEval.evalUnaryExpression(ast, subs);\n case 'ArrayExpression':\n return SafeEval.evalArrayExpression(ast, subs);\n case 'CallExpression':\n return SafeEval.evalCallExpression(ast, subs);\n case 'AssignmentExpression':\n return SafeEval.evalAssignmentExpression(ast, subs);\n default:\n throw SyntaxError('Unexpected expression', ast);\n }\n },\n evalBinaryExpression (ast, subs) {\n const result = {\n '||': (a, b) => a || b(),\n '&&': (a, b) => a && b(),\n '|': (a, b) => a | b(),\n '^': (a, b) => a ^ b(),\n '&': (a, b) => a & b(),\n // eslint-disable-next-line eqeqeq\n '==': (a, b) => a == b(),\n // eslint-disable-next-line eqeqeq\n '!=': (a, b) => a != b(),\n '===': (a, b) => a === b(),\n '!==': (a, b) => a !== b(),\n '<': (a, b) => a < b(),\n '>': (a, b) => a > b(),\n '<=': (a, b) => a <= b(),\n '>=': (a, b) => a >= b(),\n '<<': (a, b) => a << b(),\n '>>': (a, b) => a >> b(),\n '>>>': (a, b) => a >>> b(),\n '+': (a, b) => a + b(),\n '-': (a, b) => a - b(),\n '*': (a, b) => a * b(),\n '/': (a, b) => a / b(),\n '%': (a, b) => a % b()\n }[ast.operator](\n SafeEval.evalAst(ast.left, subs),\n () => SafeEval.evalAst(ast.right, subs)\n );\n return result;\n },\n evalCompound (ast, subs) {\n let last;\n for (let i = 0; i < ast.body.length; i++) {\n if (\n ast.body[i].type === 'Identifier' &&\n ['var', 'let', 'const'].includes(ast.body[i].name) &&\n ast.body[i + 1] &&\n ast.body[i + 1].type === 'AssignmentExpression'\n ) {\n // var x=2; is detected as\n // [{Identifier var}, {AssignmentExpression x=2}]\n // eslint-disable-next-line @stylistic/max-len -- Long\n // eslint-disable-next-line sonarjs/updated-loop-counter -- Convenient\n i += 1;\n }\n const expr = ast.body[i];\n last = SafeEval.evalAst(expr, subs);\n }\n return last;\n },\n evalConditionalExpression (ast, subs) {\n if (SafeEval.evalAst(ast.test, subs)) {\n return SafeEval.evalAst(ast.consequent, subs);\n }\n return SafeEval.evalAst(ast.alternate, subs);\n },\n evalIdentifier (ast, subs) {\n if (ast.name in subs) {\n return subs[ast.name];\n }\n throw ReferenceError(`${ast.name} is not defined`);\n },\n evalLiteral (ast) {\n return ast.value;\n },\n evalMemberExpression (ast, subs) {\n const prop = ast.computed\n ? SafeEval.evalAst(ast.property) // `object[property]`\n : ast.property.name; // `object.property` property is Identifier\n const obj = SafeEval.evalAst(ast.object, subs);\n const result = obj[prop];\n if (typeof result === 'function') {\n return result.bind(obj); // arrow functions aren't affected by bind.\n }\n return result;\n },\n evalUnaryExpression (ast, subs) {\n const result = {\n '-': (a) => -SafeEval.evalAst(a, subs),\n '!': (a) => !SafeEval.evalAst(a, subs),\n '~': (a) => ~SafeEval.evalAst(a, subs),\n // eslint-disable-next-line no-implicit-coercion\n '+': (a) => +SafeEval.evalAst(a, subs)\n }[ast.operator](ast.argument);\n return result;\n },\n evalArrayExpression (ast, subs) {\n return ast.elements.map((el) => SafeEval.evalAst(el, subs));\n },\n evalCallExpression (ast, subs) {\n const args = ast.arguments.map((arg) => SafeEval.evalAst(arg, subs));\n const func = SafeEval.evalAst(ast.callee, subs);\n return func(...args);\n },\n evalAssignmentExpression (ast, subs) {\n if (ast.left.type !== 'Identifier') {\n throw SyntaxError('Invalid left-hand side in assignment');\n }\n const id = ast.left.name;\n const value = SafeEval.evalAst(ast.right, subs);\n subs[id] = value;\n return subs[id];\n }\n};\n\n/**\n * A replacement for NodeJS' VM.Script which is also {@link https://developer.mozilla.org/en-US/docs/Web/HTTP/CSP | Content Security Policy} friendly.\n */\nclass SafeScript {\n /**\n * @param {string} expr Expression to evaluate\n */\n constructor (expr) {\n this.code = expr;\n this.ast = jsep(this.code);\n }\n\n /**\n * @param {PlainObject} context Object whose items will be added\n * to evaluation\n * @returns {EvaluatedResult} Result of evaluated code\n */\n runInNewContext (context) {\n const keyMap = {...context};\n return SafeEval.evalAst(this.ast, keyMap);\n }\n}\n\n/**\n * In-browser replacement for NodeJS' VM.Script.\n */\nclass Script {\n /**\n * @param {string} expr Expression to evaluate\n */\n constructor (expr) {\n this.code = expr;\n }\n\n /**\n * @param {PlainObject} context Object whose items will be added\n * to evaluation\n * @returns {EvaluatedResult} Result of evaluated code\n */\n runInNewContext (context) {\n let expr = this.code;\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) => {\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) && !keys.includes('arguments')) {\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 =\n lastStatementEnd > -1\n ? expr.slice(0, lastStatementEnd + 1) +\n ' return ' +\n 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\nJSONPath.prototype.vm = {\n Script\n};\n\nJSONPath.prototype.safeVm = {\n Script: SafeScript\n};\n\nexport {JSONPath, SafeScript};\n"],"names":["Hooks","_createClass","_classCallCheck","key","value","name","callback","first","arguments","this","add","Array","isArray","forEach","env","call","context","Plugins","jsep","registered","_this","_len","length","plugins","_key","plugin","_typeof","init","Error","Jsep","expr","index","get","charAt","charCodeAt","message","error","description","node","hooks","run","find","ch","code","SPACE_CODE","TAB_CODE","LF_CODE","CR_CODE","runHook","nodes","gobbleExpressions","type","COMPOUND","body","untilICode","ch_i","SEMCOL_CODE","COMMA_CODE","gobbleExpression","push","throwError","searchHook","gobbleBinaryExpression","gobbleSpaces","to_check","substr","max_binop_len","tc_len","binary_ops","hasOwnProperty","isIdentifierStart","isIdentifierPart","biop","prec","stack","biop_info","left","right","i","cur_biop","prev","gobbleToken","gobbleBinaryOp","binaryPrecedence","right_a","right_associative","has","pop","BINARY_EXP","operator","isDecimalDigit","PERIOD_CODE","gobbleNumericLiteral","SQUOTE_CODE","DQUOTE_CODE","gobbleStringLiteral","OBRACK_CODE","gobbleArray","max_unop_len","unary_ops","argument","UNARY_EXP","prefix","gobbleIdentifier","literals","LITERAL","raw","this_str","THIS_EXP","OPAREN_CODE","gobbleGroup","gobbleTokenProperty","QUMARK_CODE","optional","MEMBER_EXP","computed","object","property","CBRACK_CODE","CALL_EXP","gobbleArguments","CPAREN_CODE","callee","chCode","number","parseFloat","str","startIndex","quote","closed","substring","start","IDENTIFIER","slice","termination","args","separator_count","String","fromCharCode","arg","SEQUENCE_EXP","expressions","ARRAY_EXP","elements","version","op_name","Math","max","precedence","isRightAssociative","char","additional_identifier_chars","literal_name","literal_value","getMaxKeyLen","parse","obj","apply","concat","_toConsumableArray","Object","keys","map","k","op_val","assign","COLON_CODE","Set","true","false","null","stdClassProps","getOwnPropertyNames","Test","filter","prop","includes","undefined","m","ternary","test","consequent","alternate","newTest","register","patternIndex","inCharSet","pattern","flags","RegExp","e","assignmentOperators","updateOperators","assignmentPrecedence","updateNodeTypes","updateBinariesToAssignments","values","val","op","addBinaryOp","some","c","_this2","hasOwnProp","prototype","arr","item","unshift","NewError","_Error","_callSuper","avoidNew","_inherits","_wrapNativeSuper","JSONPath","opts","otherTypeCallback","optObj","json","path","resultType","flatten","wrap","sandbox","eval","ignoreEvalErrors","parent","parentProperty","TypeError","autostart","ret","evaluate","currParent","currParentProperty","currResultType","currEval","currSandbox","currOtherTypeCallback","toPathString","exprList","toPathArray","shift","_hasParentSelector","result","_trace","ea","isParentSelector","hasArrExpr","reduce","rslt","valOrPath","_getPreferredOutput","pointer","toPointer","_handleCallback","fullRetObj","preferredOutput","parentPropName","literalPriority","retObj","_this3","loc","x","addRet","elems","t","_walk","_slice","indexOf","safeLoc","replace","nested","exec","npath","nvalue","_eval","addType","valueType","Number","isFinite","locProp","_step","_iterator","_createForOfIteratorHelper","split","s","n","done","part","err","f","rett","tmp","tl","tt","splice","len","parts","step","parseInt","end","min","_v","_vname","_this4","_$_parentProperty","_$_parent","_$_property","_$_root","_$_v","containsPath","_$_path","scriptCacheKey","cache","script","safeVm","Script","vm","CurrEval","runInNewContext","pathArr","p","toString","subx","$0","$1","ups","join","exp","match","jsepRegex","jsepAssignment","SafeEval","evalAst","ast","subs","evalBinaryExpression","evalCompound","evalConditionalExpression","evalIdentifier","evalLiteral","evalMemberExpression","evalUnaryExpression","evalArrayExpression","evalCallExpression","evalAssignmentExpression","SyntaxError","a","b","last","ReferenceError","bind","el","id","SafeScript","keyMap","_objectSpread","funcs","source","target","conditionCb","il","moveToAnotherArray","vr","funcString","func","fString","lastStatementEnd","lastIndexOf","_construct","Function"],"mappings":"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","x_google_ignoreList":[0,1,2]} \ No newline at end of file diff --git a/dist/index-node-cjs.cjs b/dist/index-node-cjs.cjs index 7b3d13f..58155a1 100644 --- a/dist/index-node-cjs.cjs +++ b/dist/index-node-cjs.cjs @@ -516,6 +516,8 @@ JSONPath.prototype._trace = function (expr, val, path, parent, parentPropName, c ret[t] = tmp[0]; const tl = tmp.length; for (let tt = 1; tt < tl; tt++) { + // eslint-disable-next-line @stylistic/max-len -- Long + // eslint-disable-next-line sonarjs/updated-loop-counter -- Convenient t++; ret.splice(t, 0, tmp[tt]); } diff --git a/dist/index-node-esm.js b/dist/index-node-esm.js index c750e35..1b6d9d6 100644 --- a/dist/index-node-esm.js +++ b/dist/index-node-esm.js @@ -514,6 +514,8 @@ JSONPath.prototype._trace = function (expr, val, path, parent, parentPropName, c ret[t] = tmp[0]; const tl = tmp.length; for (let tt = 1; tt < tl; tt++) { + // eslint-disable-next-line @stylistic/max-len -- Long + // eslint-disable-next-line sonarjs/updated-loop-counter -- Convenient t++; ret.splice(t, 0, tmp[tt]); } diff --git a/eslint.config.js b/eslint.config.js new file mode 100644 index 0000000..b521ca4 --- /dev/null +++ b/eslint.config.js @@ -0,0 +1,99 @@ +import ashNazg from 'eslint-config-ash-nazg'; + +export default [ + { + ignores: [ + '.idea', + 'dist', + 'docs/ts', + 'coverage', + 'ignore' + ] + }, + ...ashNazg(['sauron', 'node']), + { + settings: { + polyfills: [ + 'document.querySelector' + ] + } + }, + { + files: ['src/jsonpath-node.js', 'test-helpers/node-env.js'], + rules: { + 'n/no-unsupported-features/es-syntax': ['error', { + ignores: [ + 'regexpNamedCaptureGroups', 'modules', 'dynamicImport' + ] + }] + } + }, + { + files: ['*.md/*.js', '*.md/*.html'], + rules: { + // 'import/unambiguous': 0, + // 'import/no-commonjs': 0, + // 'import/no-unresolved': ['error', { + // ignore: ['jsonpath-plus'] + // }], + 'sonarjs/no-internal-api-use': 0, + 'no-multiple-empty-lines': ['error', { + max: 1, maxEOF: 2, maxBOF: 2 + }], + 'no-undef': 0, + 'no-unused-vars': ['error', { + varsIgnorePattern: 'json|result' + }], + 'import/no-extraneous-dependencies': 0, + 'n/no-extraneous-import': ['error', { + allowModules: ['jsonpath-plus'] + }], + 'n/no-missing-require': ['error', { + allowModules: ['jsonpath-plus'] + }], + // Unfortunately, with the new processor approach, the filename + // is now README.md so our paths must be `../`. However, even + // with that, eslint-plugin-node is not friendly to such + // imports, so we disable + 'n/no-missing-import': 'off', + 'n/no-unpublished-import': 'off' + } + }, + { + files: ['test/**'], + languageOptions: { + globals: { + assert: 'readonly', + expect: 'readonly', + jsonpath: 'readonly' + } + }, + rules: { + '@stylistic/quotes': 0, + '@stylistic/quote-props': 0, + 'import/unambiguous': 0, + // Todo: Reenable + '@stylistic/max-len': 0 + } + }, + { + rules: { + '@stylistic/indent': ['error', 4, {outerIIFEBody: 0}], + 'promise/prefer-await-to-callbacks': 0, + 'require-jsdoc': 0, + + // Disable for now + 'new-cap': 0, + '@stylistic/dot-location': 0, + '@eslint-community/eslint-comments/require-description': 0, + // Reenable as have time and confirming no longer needing: + // https://github.com/babel/babel/issues/8951#issuecomment-508045524 is no + 'prefer-named-capture-group': 0, + 'unicorn/prefer-spread': 0, + + // Reenable when no longer having problems + 'unicorn/no-unsafe-regex': 0, + 'unicorn/consistent-destructuring': 0 + } + } +]; diff --git a/package.json b/package.json index e962954..780e59b 100644 --- a/package.json +++ b/package.json @@ -57,7 +57,7 @@ "bugs": "https://github.com/s3u/JSONPath/issues/", "homepage": "https://github.com/s3u/JSONPath", "engines": { - "node": ">=14.0.0" + "node": ">=18.0.0" }, "react-native": { "vm": false @@ -65,46 +65,28 @@ "dependencies": { "@jsep-plugin/assignment": "^1.2.1", "@jsep-plugin/regex": "^1.0.3", - "jsep": "^1.3.8" + "jsep": "^1.3.9" }, "devDependencies": { - "@babel/core": "^7.24.0", - "@babel/preset-env": "^7.24.0", - "@brettz9/eslint-plugin": "^1.0.4", + "@babel/core": "^7.25.7", + "@babel/preset-env": "^7.25.7", "@rollup/plugin-babel": "^6.0.4", - "@rollup/plugin-node-resolve": "^15.2.3", + "@rollup/plugin-node-resolve": "^15.3.0", "@rollup/plugin-terser": "^0.4.4", - "c8": "^9.1.0", - "chai": "^5.1.0", + "c8": "^10.1.2", + "chai": "^5.1.1", "coveradge": "^0.8.2", - "eslint": "^8.57.0", - "eslint-config-ash-nazg": "^35.3.0", - "eslint-config-standard": "^17.1.0", - "eslint-plugin-array-func": "^4.0.0", - "eslint-plugin-chai-expect": "^3.0.0", - "eslint-plugin-chai-friendly": "^0.7.4", - "eslint-plugin-compat": "^4.2.0", - "eslint-plugin-eslint-comments": "^3.2.0", - "eslint-plugin-html": "^7.1.0", - "eslint-plugin-import": "^2.29.1", - "eslint-plugin-jsdoc": "^48.2.0", - "eslint-plugin-markdown": "^3.0.1", - "eslint-plugin-n": "^16.6.2", - "eslint-plugin-no-unsanitized": "^4.0.2", - "eslint-plugin-no-use-extend-native": "^0.5.0", - "eslint-plugin-promise": "^6.1.1", - "eslint-plugin-sonarjs": "^0.23.0", - "eslint-plugin-standard": "^4.1.0", - "eslint-plugin-unicorn": "^50.0.1", + "eslint": "^9.12.0", + "eslint-config-ash-nazg": "^36.19.0", "http-server": "^14.1.1", "license-badger": "^0.21.1", - "mocha": "^10.3.0", + "mocha": "^10.7.3", "mocha-badge-generator": "^0.11.0", "mocha-multi-reporters": "^1.5.1", "open-cli": "^8.0.0", - "rollup": "4.12.0", - "typedoc": "^0.25.10", - "typescript": "^5.3.3" + "rollup": "4.24.0", + "typedoc": "^0.26.8", + "typescript": "^5.6.2" }, "keywords": [ "json", @@ -121,7 +103,7 @@ ], "exclude": [ ".mocharc.cjs", - ".eslintrc.cjs", + "eslint.config.js", "src/jsonpath.d.ts", "rollup.config.js", ".idea", @@ -151,7 +133,7 @@ "mocha": "mocha --require test-helpers/node-env.js --reporter-options configFile=mocha-multi-reporters.json test", "c8": "rm -Rf ./coverage && rm -Rf ./node_modules/.cache && c8 --all npm run mocha && npm run coverage-badge", "rollup": "rollup -c", - "eslint": "eslint --ext js,cjs,md,html .", + "eslint": "eslint .", "lint": "npm run eslint", "test": "npm run eslint && npm run rollup && npm run c8 && npm run typescript", "browser-test": "npm run eslint && npm run rollup && open-cli http://localhost:8084/test/ && npm start" diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 665a367..335f71d 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -10,98 +10,44 @@ importers: dependencies: '@jsep-plugin/assignment': specifier: ^1.2.1 - version: 1.2.1(jsep@1.3.8) + version: 1.2.1(jsep@1.3.9) '@jsep-plugin/regex': specifier: ^1.0.3 - version: 1.0.3(jsep@1.3.8) + version: 1.0.3(jsep@1.3.9) jsep: - specifier: ^1.3.8 - version: 1.3.8 + specifier: ^1.3.9 + version: 1.3.9 devDependencies: '@babel/core': - specifier: ^7.24.0 - version: 7.24.5 + specifier: ^7.25.7 + version: 7.25.7 '@babel/preset-env': - specifier: ^7.24.0 - version: 7.24.5(@babel/core@7.24.5) - '@brettz9/eslint-plugin': - specifier: ^1.0.4 - version: 1.0.4(eslint@8.57.0) + specifier: ^7.25.7 + version: 7.25.7(@babel/core@7.25.7) '@rollup/plugin-babel': specifier: ^6.0.4 - version: 6.0.4(@babel/core@7.24.5)(rollup@4.12.0) + version: 6.0.4(@babel/core@7.25.7)(rollup@4.24.0) '@rollup/plugin-node-resolve': - specifier: ^15.2.3 - version: 15.2.3(rollup@4.12.0) + specifier: ^15.3.0 + version: 15.3.0(rollup@4.24.0) '@rollup/plugin-terser': specifier: ^0.4.4 - version: 0.4.4(rollup@4.12.0) + version: 0.4.4(rollup@4.24.0) c8: - specifier: ^9.1.0 - version: 9.1.0 + specifier: ^10.1.2 + version: 10.1.2 chai: - specifier: ^5.1.0 - version: 5.1.0 + specifier: ^5.1.1 + version: 5.1.1 coveradge: specifier: ^0.8.2 version: 0.8.2 eslint: - specifier: ^8.57.0 - version: 8.57.0 + specifier: ^9.12.0 + version: 9.12.0 eslint-config-ash-nazg: - specifier: ^35.3.0 - version: 35.4.0(@brettz9/eslint-plugin@1.0.4)(@stylistic/eslint-plugin@1.8.0)(eslint-config-standard@17.1.0)(eslint-plugin-array-func@4.0.0)(eslint-plugin-compat@4.2.0)(eslint-plugin-eslint-comments@3.2.0)(eslint-plugin-html@7.1.0)(eslint-plugin-import@2.29.1)(eslint-plugin-jsdoc@48.2.3)(eslint-plugin-markdown@3.0.1)(eslint-plugin-n@16.6.2)(eslint-plugin-no-unsanitized@4.0.2)(eslint-plugin-no-use-extend-native@0.5.0)(eslint-plugin-promise@6.1.1)(eslint-plugin-sonarjs@0.23.0)(eslint-plugin-unicorn@50.0.1)(eslint@8.57.0) - eslint-config-standard: - specifier: ^17.1.0 - version: 17.1.0(eslint-plugin-import@2.29.1)(eslint-plugin-n@16.6.2)(eslint-plugin-promise@6.1.1)(eslint@8.57.0) - eslint-plugin-array-func: - specifier: ^4.0.0 - version: 4.0.0(eslint@8.57.0) - eslint-plugin-chai-expect: - specifier: ^3.0.0 - version: 3.0.0(eslint@8.57.0) - eslint-plugin-chai-friendly: - specifier: ^0.7.4 - version: 0.7.4(eslint@8.57.0) - eslint-plugin-compat: - specifier: ^4.2.0 - version: 4.2.0(eslint@8.57.0) - eslint-plugin-eslint-comments: - specifier: ^3.2.0 - version: 3.2.0(eslint@8.57.0) - eslint-plugin-html: - specifier: ^7.1.0 - version: 7.1.0 - eslint-plugin-import: - specifier: ^2.29.1 - version: 2.29.1(eslint@8.57.0) - eslint-plugin-jsdoc: - specifier: ^48.2.0 - version: 48.2.3(eslint@8.57.0) - eslint-plugin-markdown: - specifier: ^3.0.1 - version: 3.0.1(eslint@8.57.0) - eslint-plugin-n: - specifier: ^16.6.2 - version: 16.6.2(eslint@8.57.0) - eslint-plugin-no-unsanitized: - specifier: ^4.0.2 - version: 4.0.2(eslint@8.57.0) - eslint-plugin-no-use-extend-native: - specifier: ^0.5.0 - version: 0.5.0 - eslint-plugin-promise: - specifier: ^6.1.1 - version: 6.1.1(eslint@8.57.0) - eslint-plugin-sonarjs: - specifier: ^0.23.0 - version: 0.23.0(eslint@8.57.0) - eslint-plugin-standard: - specifier: ^4.1.0 - version: 4.1.0(eslint@8.57.0) - eslint-plugin-unicorn: - specifier: ^50.0.1 - version: 50.0.1(eslint@8.57.0) + specifier: ^36.19.0 + version: 36.19.0(@babel/core@7.25.7)(@typescript-eslint/parser@7.18.0(eslint@9.12.0)(typescript@5.6.2))(eslint@9.12.0)(typescript@5.6.2) http-server: specifier: ^14.1.1 version: 14.1.1 @@ -109,26 +55,26 @@ importers: specifier: ^0.21.1 version: 0.21.1 mocha: - specifier: ^10.3.0 - version: 10.4.0 + specifier: ^10.7.3 + version: 10.7.3 mocha-badge-generator: specifier: ^0.11.0 version: 0.11.0 mocha-multi-reporters: specifier: ^1.5.1 - version: 1.5.1(mocha@10.4.0) + version: 1.5.1(mocha@10.7.3) open-cli: specifier: ^8.0.0 version: 8.0.0 rollup: - specifier: 4.12.0 - version: 4.12.0 + specifier: 4.24.0 + version: 4.24.0 typedoc: - specifier: ^0.25.10 - version: 0.25.13(typescript@5.4.5) + specifier: ^0.26.8 + version: 0.26.8(typescript@5.6.2) typescript: - specifier: ^5.3.3 - version: 5.4.5 + specifier: ^5.6.2 + version: 5.6.2 packages: @@ -144,32 +90,65 @@ packages: resolution: {integrity: sha512-y5+tLQyV8pg3fsiln67BVLD1P13Eg4lh5RW9mF0zUuvLrv9uIQ4MCL+CRT+FTsBlBjcIan6PGsLcBN0m3ClUyQ==} engines: {node: '>=6.9.0'} - '@babel/compat-data@7.24.4': - resolution: {integrity: sha512-vg8Gih2MLK+kOkHJp4gBEIkyaIi00jgWot2D9QOmmfLC8jINSOzmCLta6Bvz/JSBCqnegV0L80jhxkol5GWNfQ==} + '@babel/code-frame@7.25.7': + resolution: {integrity: sha512-0xZJFNE5XMpENsgfHYTw8FbX4kv53mFLn2i3XPoq69LyhYSCBJtitaHx9QnsVTrsogI4Z3+HtEfZ2/GFPOtf5g==} + engines: {node: '>=6.9.0'} + + '@babel/compat-data@7.25.7': + resolution: {integrity: sha512-9ickoLz+hcXCeh7jrcin+/SLWm+GkxE2kTvoYyp38p4WkdFXfQJxDFGWp/YHjiKLPx06z2A7W8XKuqbReXDzsw==} + engines: {node: '>=6.9.0'} + + '@babel/core@7.25.2': + resolution: {integrity: sha512-BBt3opiCOxUr9euZ5/ro/Xv8/V7yJ5bjYMqG/C1YAo8MIKAnumZalCN+msbci3Pigy4lIQfPUpfMM27HMGaYEA==} engines: {node: '>=6.9.0'} - '@babel/core@7.24.5': - resolution: {integrity: sha512-tVQRucExLQ02Boi4vdPp49svNGcfL2GhdTCT9aldhXgCJVAI21EtRfBettiuLUwce/7r6bFdgs6JFkcdTiFttA==} + '@babel/core@7.25.7': + resolution: {integrity: sha512-yJ474Zv3cwiSOO9nXJuqzvwEeM+chDuQ8GJirw+pZ91sCGCyOZ3dJkVE09fTV0VEVzXyLWhh3G/AolYTPX7Mow==} engines: {node: '>=6.9.0'} - '@babel/generator@7.24.5': - resolution: {integrity: sha512-x32i4hEXvr+iI0NEoEfDKzlemF8AmtOP8CcrRaEcpzysWuoEb1KknpcvMsHKPONoKZiDuItklgWhB18xEhr9PA==} + '@babel/eslint-parser@7.25.1': + resolution: {integrity: sha512-Y956ghgTT4j7rKesabkh5WeqgSFZVFwaPR0IWFm7KFHFmmJ4afbG49SmfW4S+GyRPx0Dy5jxEWA5t0rpxfElWg==} + engines: {node: ^10.13.0 || ^12.13.0 || >=14.0.0} + peerDependencies: + '@babel/core': ^7.11.0 + eslint: ^7.5.0 || ^8.0.0 || ^9.0.0 + + '@babel/eslint-parser@7.25.7': + resolution: {integrity: sha512-B+BO9x86VYsQHimucBAL1fxTJKF4wyKY6ZVzee9QgzdZOUfs3BaR6AQrgoGrRI+7IFS1wUz/VyQ+SoBcSpdPbw==} + engines: {node: ^10.13.0 || ^12.13.0 || >=14.0.0} + peerDependencies: + '@babel/core': ^7.11.0 + eslint: ^7.5.0 || ^8.0.0 || ^9.0.0 + + '@babel/eslint-plugin@7.25.7': + resolution: {integrity: sha512-cwa16ALyUdac3n3VC3R+isKENyjLsJmFY6+cX0wuLsKlwB50Jv/xwqyH9tV8EEH0IUCAL5Y0Y1gP0HuCEDDDeQ==} + engines: {node: ^10.13.0 || ^12.13.0 || >=14.0.0} + peerDependencies: + '@babel/eslint-parser': ^7.11.0 + eslint: ^7.5.0 || ^8.0.0 || ^9.0.0 + + '@babel/generator@7.25.7': + resolution: {integrity: sha512-5Dqpl5fyV9pIAD62yK9P7fcA768uVPUyrQmqpqstHWgMma4feF1x/oFysBCVZLY5wJ2GkMUCdsNDnGZrPoR6rA==} engines: {node: '>=6.9.0'} '@babel/helper-annotate-as-pure@7.22.5': resolution: {integrity: sha512-LvBTxu8bQSQkcyKOU+a1btnNFQ1dMAd0R6PyW3arXes06F6QLWLIrd681bxRPIXlrMGR3XYnW9JyML7dP3qgxg==} engines: {node: '>=6.9.0'} - '@babel/helper-builder-binary-assignment-operator-visitor@7.22.15': - resolution: {integrity: sha512-QkBXwGgaoC2GtGZRoma6kv7Szfv06khvhFav67ZExau2RaXzy8MpHSMO2PNoP2XtmQphJQRHFfg77Bq731Yizw==} + '@babel/helper-annotate-as-pure@7.25.7': + resolution: {integrity: sha512-4xwU8StnqnlIhhioZf1tqnVWeQ9pvH/ujS8hRfw/WOza+/a+1qv69BWNy+oY231maTCWgKWhfBU7kDpsds6zAA==} + engines: {node: '>=6.9.0'} + + '@babel/helper-builder-binary-assignment-operator-visitor@7.25.7': + resolution: {integrity: sha512-12xfNeKNH7jubQNm7PAkzlLwEmCs1tfuX3UjIw6vP6QXi+leKh6+LyC/+Ed4EIQermwd58wsyh070yjDHFlNGg==} engines: {node: '>=6.9.0'} - '@babel/helper-compilation-targets@7.23.6': - resolution: {integrity: sha512-9JB548GZoQVmzrFgp8o7KxdgkTGm6xs9DW0o/Pim72UDjzr5ObUQ6ZzYPqA+g9OTS2bBQoctLJrky0RDCAWRgQ==} + '@babel/helper-compilation-targets@7.25.7': + resolution: {integrity: sha512-DniTEax0sv6isaw6qSQSfV4gVRNtw2rte8HHM45t9ZR0xILaufBRNkpMifCRiAPyvL4ACD6v0gfCwCmtOQaV4A==} engines: {node: '>=6.9.0'} - '@babel/helper-create-class-features-plugin@7.24.5': - resolution: {integrity: sha512-uRc4Cv8UQWnE4NXlYTIIdM7wfFkOqlFztcC/gVXDKohKoVB3OyonfelUBaJzSwpBntZ2KYGF/9S7asCHsXwW6g==} + '@babel/helper-create-class-features-plugin@7.25.7': + resolution: {integrity: sha512-bD4WQhbkx80mAyj/WCm4ZHcF4rDxkoLFO6ph8/5/mQ3z4vAzltQXAmbc7GvVJx5H+lk5Mi5EmbTeox5nMGCsbw==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0 @@ -180,122 +159,140 @@ packages: peerDependencies: '@babel/core': ^7.0.0 + '@babel/helper-create-regexp-features-plugin@7.25.7': + resolution: {integrity: sha512-byHhumTj/X47wJ6C6eLpK7wW/WBEcnUeb7D0FNc/jFQnQVw7DOso3Zz5u9x/zLrFVkHa89ZGDbkAa1D54NdrCQ==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0 + '@babel/helper-define-polyfill-provider@0.6.2': resolution: {integrity: sha512-LV76g+C502biUK6AyZ3LK10vDpDyCzZnhZFXkH1L75zHPj68+qc8Zfpx2th+gzwA2MzyK+1g/3EPl62yFnVttQ==} peerDependencies: '@babel/core': ^7.4.0 || ^8.0.0-0 <8.0.0 - '@babel/helper-environment-visitor@7.22.20': - resolution: {integrity: sha512-zfedSIzFhat/gFhWfHtgWvlec0nqB9YEIVrpuwjruLlXfUSnA8cJB0miHKwqDnQ7d32aKo2xt88/xZptwxbfhA==} - engines: {node: '>=6.9.0'} - - '@babel/helper-function-name@7.23.0': - resolution: {integrity: sha512-OErEqsrxjZTJciZ4Oo+eoZqeW9UIiOcuYKRJA4ZAgV9myA+pOXhhmpfNCKjEH/auVfEYVFJ6y1Tc4r0eIApqiw==} - engines: {node: '>=6.9.0'} - - '@babel/helper-hoist-variables@7.22.5': - resolution: {integrity: sha512-wGjk9QZVzvknA6yKIUURb8zY3grXCcOZt+/7Wcy8O2uctxhplmUPkOdlgoNhmdVee2c92JXbf1xpMtVNbfoxRw==} - engines: {node: '>=6.9.0'} - - '@babel/helper-member-expression-to-functions@7.24.5': - resolution: {integrity: sha512-4owRteeihKWKamtqg4JmWSsEZU445xpFRXPEwp44HbgbxdWlUV1b4Agg4lkA806Lil5XM/e+FJyS0vj5T6vmcA==} + '@babel/helper-member-expression-to-functions@7.25.7': + resolution: {integrity: sha512-O31Ssjd5K6lPbTX9AAYpSKrZmLeagt9uwschJd+Ixo6QiRyfpvgtVQp8qrDR9UNFjZ8+DO34ZkdrN+BnPXemeA==} engines: {node: '>=6.9.0'} '@babel/helper-module-imports@7.24.3': resolution: {integrity: sha512-viKb0F9f2s0BCS22QSF308z/+1YWKV/76mwt61NBzS5izMzDPwdq1pTrzf+Li3npBWX9KdQbkeCt1jSAM7lZqg==} engines: {node: '>=6.9.0'} - '@babel/helper-module-transforms@7.24.5': - resolution: {integrity: sha512-9GxeY8c2d2mdQUP1Dye0ks3VDyIMS98kt/llQ2nUId8IsWqTF0l1LkSX0/uP7l7MCDrzXS009Hyhe2gzTiGW8A==} + '@babel/helper-module-imports@7.25.7': + resolution: {integrity: sha512-o0xCgpNmRohmnoWKQ0Ij8IdddjyBFE4T2kagL/x6M3+4zUgc+4qTOUBoNe4XxDskt1HPKO007ZPiMgLDq2s7Kw==} + engines: {node: '>=6.9.0'} + + '@babel/helper-module-transforms@7.25.7': + resolution: {integrity: sha512-k/6f8dKG3yDz/qCwSM+RKovjMix563SLxQFo0UhRNo239SP6n9u5/eLtKD6EAjwta2JHJ49CsD8pms2HdNiMMQ==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0 - '@babel/helper-optimise-call-expression@7.22.5': - resolution: {integrity: sha512-HBwaojN0xFRx4yIvpwGqxiV2tUfl7401jlok564NgB9EHS1y6QT17FmKWm4ztqjeVdXLuC4fSvHc5ePpQjoTbw==} + '@babel/helper-optimise-call-expression@7.25.7': + resolution: {integrity: sha512-VAwcwuYhv/AT+Vfr28c9y6SHzTan1ryqrydSTFGjU0uDJHw3uZ+PduI8plCLkRsDnqK2DMEDmwrOQRsK/Ykjng==} engines: {node: '>=6.9.0'} - '@babel/helper-plugin-utils@7.24.5': - resolution: {integrity: sha512-xjNLDopRzW2o6ba0gKbkZq5YWEBaK3PCyTOY1K2P/O07LGMhMqlMXPxwN4S5/RhWuCobT8z0jrlKGlYmeR1OhQ==} + '@babel/helper-plugin-utils@7.25.7': + resolution: {integrity: sha512-eaPZai0PiqCi09pPs3pAFfl/zYgGaE6IdXtYvmf0qlcDTd3WCtO7JWCcRd64e0EQrcYgiHibEZnOGsSY4QSgaw==} engines: {node: '>=6.9.0'} - '@babel/helper-remap-async-to-generator@7.22.20': - resolution: {integrity: sha512-pBGyV4uBqOns+0UvhsTO8qgl8hO89PmiDYv+/COyp1aeMcmfrfruz+/nCMFiYyFF/Knn0yfrC85ZzNFjembFTw==} + '@babel/helper-remap-async-to-generator@7.25.7': + resolution: {integrity: sha512-kRGE89hLnPfcz6fTrlNU+uhgcwv0mBE4Gv3P9Ke9kLVJYpi4AMVVEElXvB5CabrPZW4nCM8P8UyyjrzCM0O2sw==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0 - '@babel/helper-replace-supers@7.24.1': - resolution: {integrity: sha512-QCR1UqC9BzG5vZl8BMicmZ28RuUBnHhAMddD8yHFHDRH9lLTZ9uUPehX8ctVPT8l0TKblJidqcgUUKGVrePleQ==} + '@babel/helper-replace-supers@7.25.7': + resolution: {integrity: sha512-iy8JhqlUW9PtZkd4pHM96v6BdJ66Ba9yWSE4z0W4TvSZwLBPkyDsiIU3ENe4SmrzRBs76F7rQXTy1lYC49n6Lw==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0 - '@babel/helper-simple-access@7.24.5': - resolution: {integrity: sha512-uH3Hmf5q5n7n8mz7arjUlDOCbttY/DW4DYhE6FUsjKJ/oYC1kQQUvwEQWxRwUpX9qQKRXeqLwWxrqilMrf32sQ==} - engines: {node: '>=6.9.0'} - - '@babel/helper-skip-transparent-expression-wrappers@7.22.5': - resolution: {integrity: sha512-tK14r66JZKiC43p8Ki33yLBVJKlQDFoA8GYN67lWCDCqoL6EMMSuM9b+Iff2jHaM/RRFYl7K+iiru7hbRqNx8Q==} + '@babel/helper-simple-access@7.25.7': + resolution: {integrity: sha512-FPGAkJmyoChQeM+ruBGIDyrT2tKfZJO8NcxdC+CWNJi7N8/rZpSxK7yvBJ5O/nF1gfu5KzN7VKG3YVSLFfRSxQ==} engines: {node: '>=6.9.0'} - '@babel/helper-split-export-declaration@7.24.5': - resolution: {integrity: sha512-5CHncttXohrHk8GWOFCcCl4oRD9fKosWlIRgWm4ql9VYioKm52Mk2xsmoohvm7f3JoiLSM5ZgJuRaf5QZZYd3Q==} + '@babel/helper-skip-transparent-expression-wrappers@7.25.7': + resolution: {integrity: sha512-pPbNbchZBkPMD50K0p3JGcFMNLVUCuU/ABybm/PGNj4JiHrpmNyqqCphBk4i19xXtNV0JhldQJJtbSW5aUvbyA==} engines: {node: '>=6.9.0'} '@babel/helper-string-parser@7.24.1': resolution: {integrity: sha512-2ofRCjnnA9y+wk8b9IAREroeUP02KHp431N2mhKniy2yKIDKpbrHv9eXwm8cBeWQYcJmzv5qKCu65P47eCF7CQ==} engines: {node: '>=6.9.0'} + '@babel/helper-string-parser@7.25.7': + resolution: {integrity: sha512-CbkjYdsJNHFk8uqpEkpCvRs3YRp9tY6FmFY7wLMSYuGYkrdUi7r2lc4/wqsvlHoMznX3WJ9IP8giGPq68T/Y6g==} + engines: {node: '>=6.9.0'} + '@babel/helper-validator-identifier@7.24.5': resolution: {integrity: sha512-3q93SSKX2TWCG30M2G2kwaKeTYgEUp5Snjuj8qm729SObL6nbtUldAi37qbxkD5gg3xnBio+f9nqpSepGZMvxA==} engines: {node: '>=6.9.0'} - '@babel/helper-validator-option@7.23.5': - resolution: {integrity: sha512-85ttAOMLsr53VgXkTbkx8oA6YTfT4q7/HzXSLEYmjcSTJPMPQtvq1BD79Byep5xMUYbGRzEpDsjUf3dyp54IKw==} + '@babel/helper-validator-identifier@7.25.7': + resolution: {integrity: sha512-AM6TzwYqGChO45oiuPqwL2t20/HdMC1rTPAesnBCgPCSF1x3oN9MVUwQV2iyz4xqWrctwK5RNC8LV22kaQCNYg==} + engines: {node: '>=6.9.0'} + + '@babel/helper-validator-option@7.25.7': + resolution: {integrity: sha512-ytbPLsm+GjArDYXJ8Ydr1c/KJuutjF2besPNbIZnZ6MKUxi/uTA22t2ymmA4WFjZFpjiAMO0xuuJPqK2nvDVfQ==} engines: {node: '>=6.9.0'} - '@babel/helper-wrap-function@7.24.5': - resolution: {integrity: sha512-/xxzuNvgRl4/HLNKvnFwdhdgN3cpLxgLROeLDl83Yx0AJ1SGvq1ak0OszTOjDfiB8Vx03eJbeDWh9r+jCCWttw==} + '@babel/helper-wrap-function@7.25.7': + resolution: {integrity: sha512-MA0roW3JF2bD1ptAaJnvcabsVlNQShUaThyJbCDD4bCp8NEgiFvpoqRI2YS22hHlc2thjO/fTg2ShLMC3jygAg==} engines: {node: '>=6.9.0'} - '@babel/helpers@7.24.5': - resolution: {integrity: sha512-CiQmBMMpMQHwM5m01YnrM6imUG1ebgYJ+fAIW4FZe6m4qHTPaRHti+R8cggAwkdz4oXhtO4/K9JWlh+8hIfR2Q==} + '@babel/helpers@7.25.7': + resolution: {integrity: sha512-Sv6pASx7Esm38KQpF/U/OXLwPPrdGHNKoeblRxgZRLXnAtnkEe4ptJPDtAZM7fBLadbc1Q07kQpSiGQ0Jg6tRA==} engines: {node: '>=6.9.0'} '@babel/highlight@7.24.5': resolution: {integrity: sha512-8lLmua6AVh/8SLJRRVD6V8p73Hir9w5mJrhE+IPpILG31KKlI9iz5zmBYKcWPS59qSfgP9RaSBQSHHE81WKuEw==} engines: {node: '>=6.9.0'} - '@babel/parser@7.24.5': - resolution: {integrity: sha512-EOv5IK8arwh3LI47dz1b0tKUb/1uhHAnHJOrjgtQMIpu1uXd9mlFrJg9IUgGUgZ41Ch0K8REPTYpO7B76b4vJg==} + '@babel/highlight@7.25.7': + resolution: {integrity: sha512-iYyACpW3iW8Fw+ZybQK+drQre+ns/tKpXbNESfrhNnPLIklLbXr7MYJ6gPEd0iETGLOK+SxMjVvKb/ffmk+FEw==} + engines: {node: '>=6.9.0'} + + '@babel/parser@7.25.7': + resolution: {integrity: sha512-aZn7ETtQsjjGG5HruveUK06cU3Hljuhd9Iojm4M8WWv3wLE6OkE5PWbDUkItmMgegmccaITudyuW5RPYrYlgWw==} engines: {node: '>=6.0.0'} hasBin: true - '@babel/plugin-bugfix-firefox-class-in-computed-class-key@7.24.5': - resolution: {integrity: sha512-LdXRi1wEMTrHVR4Zc9F8OewC3vdm5h4QB6L71zy6StmYeqGi1b3ttIO8UC+BfZKcH9jdr4aI249rBkm+3+YvHw==} + '@babel/plugin-bugfix-firefox-class-in-computed-class-key@7.25.7': + resolution: {integrity: sha512-UV9Lg53zyebzD1DwQoT9mzkEKa922LNUp5YkTJ6Uta0RbyXaQNUgcvSt7qIu1PpPzVb6rd10OVNTzkyBGeVmxQ==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0 + + '@babel/plugin-bugfix-safari-class-field-initializer-scope@7.25.7': + resolution: {integrity: sha512-GDDWeVLNxRIkQTnJn2pDOM1pkCgYdSqPeT1a9vh9yIqu2uzzgw1zcqEb+IJOhy+dTBMlNdThrDIksr2o09qrrQ==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0 - '@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression@7.24.1': - resolution: {integrity: sha512-y4HqEnkelJIOQGd+3g1bTeKsA5c6qM7eOn7VggGVbBc0y8MLSKHacwcIE2PplNlQSj0PqS9rrXL/nkPVK+kUNg==} + '@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression@7.25.7': + resolution: {integrity: sha512-wxyWg2RYaSUYgmd9MR0FyRGyeOMQE/Uzr1wzd/g5cf5bwi9A4v6HFdDm7y1MgDtod/fLOSTZY6jDgV0xU9d5bA==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0 - '@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining@7.24.1': - resolution: {integrity: sha512-Hj791Ii4ci8HqnaKHAlLNs+zaLXb0EzSDhiAWp5VNlyvCNymYfacs64pxTxbH1znW/NcArSmwpmG9IKE/TUVVQ==} + '@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining@7.25.7': + resolution: {integrity: sha512-Xwg6tZpLxc4iQjorYsyGMyfJE7nP5MV8t/Ka58BgiA7Jw0fRqQNcANlLfdJ/yvBt9z9LD2We+BEkT7vLqZRWng==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.13.0 - '@babel/plugin-bugfix-v8-static-class-fields-redefine-readonly@7.24.1': - resolution: {integrity: sha512-m9m/fXsXLiHfwdgydIFnpk+7jlVbnvlK5B2EKiPdLUb6WX654ZaaEWJUjk8TftRbZpK0XibovlLWX4KIZhV6jw==} + '@babel/plugin-bugfix-v8-static-class-fields-redefine-readonly@7.25.7': + resolution: {integrity: sha512-UVATLMidXrnH+GMUIuxq55nejlj02HP7F5ETyBONzP6G87fPBogG4CH6kxrSrdIuAjdwNO9VzyaYsrZPscWUrw==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0 + '@babel/plugin-proposal-decorators@7.24.7': + resolution: {integrity: sha512-RL9GR0pUG5Kc8BUWLNDm2T5OpYwSX15r98I0IkgmRQTXuELq/OynH8xtMTMvTJFjXbMWFVTKtYkTaYQsuAwQlQ==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0-0 + '@babel/plugin-proposal-private-property-in-object@7.21.0-placeholder-for-preset-env.2': resolution: {integrity: sha512-SOSkfJDddaM7mak6cPEpswyTRnuRltl429hMraQEglW+OkovnCzsiszTmsrlY//qLFjCpQDFRvjdm2wA5pPm9w==} engines: {node: '>=6.9.0'} @@ -318,6 +315,12 @@ packages: peerDependencies: '@babel/core': ^7.0.0-0 + '@babel/plugin-syntax-decorators@7.25.7': + resolution: {integrity: sha512-oXduHo642ZhstLVYTe2z2GSJIruU0c/W3/Ghr6A5yGMsVrvdnxO1z+3pbTcT7f3/Clnt+1z8D/w1r1f1SHaCHw==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0-0 + '@babel/plugin-syntax-dynamic-import@7.8.3': resolution: {integrity: sha512-5gdGbFon+PszYzqs83S3E5mpi7/y/8M9eC90MRTZfduQOYW76ig6SOSPNe41IG5LoP3FGBn2N0RjVDSQiS94kQ==} peerDependencies: @@ -328,14 +331,20 @@ packages: peerDependencies: '@babel/core': ^7.0.0-0 - '@babel/plugin-syntax-import-assertions@7.24.1': - resolution: {integrity: sha512-IuwnI5XnuF189t91XbxmXeCDz3qs6iDRO7GJ++wcfgeXNs/8FmIlKcpDSXNVyuLQxlwvskmI3Ct73wUODkJBlQ==} + '@babel/plugin-syntax-flow@7.25.7': + resolution: {integrity: sha512-fyoj6/YdVtlv2ROig/J0fP7hh/wNO1MJGm1NR70Pg7jbkF+jOUL9joorqaCOQh06Y+LfgTagHzC8KqZ3MF782w==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0-0 + + '@babel/plugin-syntax-import-assertions@7.25.7': + resolution: {integrity: sha512-ZvZQRmME0zfJnDQnVBKYzHxXT7lYBB3Revz1GuS7oLXWMgqUPX4G+DDbT30ICClht9WKV34QVrZhSw6WdklwZQ==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 - '@babel/plugin-syntax-import-attributes@7.24.1': - resolution: {integrity: sha512-zhQTMH0X2nVLnb04tz+s7AMuasX8U0FnpE+nHTOhSOINjWMnopoZTxtIKsd45n4GQ/HIZLyfIpoul8e2m0DnRA==} + '@babel/plugin-syntax-import-attributes@7.25.7': + resolution: {integrity: sha512-AqVo+dguCgmpi/3mYBdu9lkngOBlQ2w2vnNpa6gfiCxQZLzV4ZbhsXitJ2Yblkoe1VQwtHSaNmIaGll/26YWRw==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 @@ -350,6 +359,12 @@ packages: peerDependencies: '@babel/core': ^7.0.0-0 + '@babel/plugin-syntax-jsx@7.25.7': + resolution: {integrity: sha512-ruZOnKO+ajVL/MVx+PwNBPOkrnXTXoWMtte1MBpegfCArhqOe3Bj52avVj1huLLxNKYKXYaSxZ2F+woK1ekXfw==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0-0 + '@babel/plugin-syntax-logical-assignment-operators@7.10.4': resolution: {integrity: sha512-d8waShlpFDinQ5MtvGU9xDAOzKH47+FFoney2baFIoMr952hKOLp1HR7VszoZvOsV/4+RRszNY7D17ba0te0ig==} peerDependencies: @@ -398,296 +413,344 @@ packages: peerDependencies: '@babel/core': ^7.0.0 - '@babel/plugin-transform-arrow-functions@7.24.1': - resolution: {integrity: sha512-ngT/3NkRhsaep9ck9uj2Xhv9+xB1zShY3tM3g6om4xxCELwCDN4g4Aq5dRn48+0hasAql7s2hdBOysCfNpr4fw==} + '@babel/plugin-transform-arrow-functions@7.25.7': + resolution: {integrity: sha512-EJN2mKxDwfOUCPxMO6MUI58RN3ganiRAG/MS/S3HfB6QFNjroAMelQo/gybyYq97WerCBAZoyrAoW8Tzdq2jWg==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 - '@babel/plugin-transform-async-generator-functions@7.24.3': - resolution: {integrity: sha512-Qe26CMYVjpQxJ8zxM1340JFNjZaF+ISWpr1Kt/jGo+ZTUzKkfw/pphEWbRCb+lmSM6k/TOgfYLvmbHkUQ0asIg==} + '@babel/plugin-transform-async-generator-functions@7.25.7': + resolution: {integrity: sha512-4B6OhTrwYKHYYgcwErvZjbmH9X5TxQBsaBHdzEIB4l71gR5jh/tuHGlb9in47udL2+wVUcOz5XXhhfhVJwEpEg==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 - '@babel/plugin-transform-async-to-generator@7.24.1': - resolution: {integrity: sha512-AawPptitRXp1y0n4ilKcGbRYWfbbzFWz2NqNu7dacYDtFtz0CMjG64b3LQsb3KIgnf4/obcUL78hfaOS7iCUfw==} + '@babel/plugin-transform-async-to-generator@7.25.7': + resolution: {integrity: sha512-ZUCjAavsh5CESCmi/xCpX1qcCaAglzs/7tmuvoFnJgA1dM7gQplsguljoTg+Ru8WENpX89cQyAtWoaE0I3X3Pg==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 - '@babel/plugin-transform-block-scoped-functions@7.24.1': - resolution: {integrity: sha512-TWWC18OShZutrv9C6mye1xwtam+uNi2bnTOCBUd5sZxyHOiWbU6ztSROofIMrK84uweEZC219POICK/sTYwfgg==} + '@babel/plugin-transform-block-scoped-functions@7.25.7': + resolution: {integrity: sha512-xHttvIM9fvqW+0a3tZlYcZYSBpSWzGBFIt/sYG3tcdSzBB8ZeVgz2gBP7Df+sM0N1850jrviYSSeUuc+135dmQ==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 - '@babel/plugin-transform-block-scoping@7.24.5': - resolution: {integrity: sha512-sMfBc3OxghjC95BkYrYocHL3NaOplrcaunblzwXhGmlPwpmfsxr4vK+mBBt49r+S240vahmv+kUxkeKgs+haCw==} + '@babel/plugin-transform-block-scoping@7.25.7': + resolution: {integrity: sha512-ZEPJSkVZaeTFG/m2PARwLZQ+OG0vFIhPlKHK/JdIMy8DbRJ/htz6LRrTFtdzxi9EHmcwbNPAKDnadpNSIW+Aow==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 - '@babel/plugin-transform-class-properties@7.24.1': - resolution: {integrity: sha512-OMLCXi0NqvJfORTaPQBwqLXHhb93wkBKZ4aNwMl6WtehO7ar+cmp+89iPEQPqxAnxsOKTaMcs3POz3rKayJ72g==} + '@babel/plugin-transform-class-properties@7.25.7': + resolution: {integrity: sha512-mhyfEW4gufjIqYFo9krXHJ3ElbFLIze5IDp+wQTxoPd+mwFb1NxatNAwmv8Q8Iuxv7Zc+q8EkiMQwc9IhyGf4g==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 - '@babel/plugin-transform-class-static-block@7.24.4': - resolution: {integrity: sha512-B8q7Pz870Hz/q9UgP8InNpY01CSLDSCyqX7zcRuv3FcPl87A2G17lASroHWaCtbdIcbYzOZ7kWmXFKbijMSmFg==} + '@babel/plugin-transform-class-static-block@7.25.7': + resolution: {integrity: sha512-rvUUtoVlkDWtDWxGAiiQj0aNktTPn3eFynBcMC2IhsXweehwgdI9ODe+XjWw515kEmv22sSOTp/rxIRuTiB7zg==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.12.0 - '@babel/plugin-transform-classes@7.24.5': - resolution: {integrity: sha512-gWkLP25DFj2dwe9Ck8uwMOpko4YsqyfZJrOmqqcegeDYEbp7rmn4U6UQZNj08UF6MaX39XenSpKRCvpDRBtZ7Q==} + '@babel/plugin-transform-classes@7.25.7': + resolution: {integrity: sha512-9j9rnl+YCQY0IGoeipXvnk3niWicIB6kCsWRGLwX241qSXpbA4MKxtp/EdvFxsc4zI5vqfLxzOd0twIJ7I99zg==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0-0 + + '@babel/plugin-transform-computed-properties@7.25.7': + resolution: {integrity: sha512-QIv+imtM+EtNxg/XBKL3hiWjgdLjMOmZ+XzQwSgmBfKbfxUjBzGgVPklUuE55eq5/uVoh8gg3dqlrwR/jw3ZeA==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 - '@babel/plugin-transform-computed-properties@7.24.1': - resolution: {integrity: sha512-5pJGVIUfJpOS+pAqBQd+QMaTD2vCL/HcePooON6pDpHgRp4gNRmzyHTPIkXntwKsq3ayUFVfJaIKPw2pOkOcTw==} + '@babel/plugin-transform-destructuring@7.25.7': + resolution: {integrity: sha512-xKcfLTlJYUczdaM1+epcdh1UGewJqr9zATgrNHcLBcV2QmfvPPEixo/sK/syql9cEmbr7ulu5HMFG5vbbt/sEA==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 - '@babel/plugin-transform-destructuring@7.24.5': - resolution: {integrity: sha512-SZuuLyfxvsm+Ah57I/i1HVjveBENYK9ue8MJ7qkc7ndoNjqquJiElzA7f5yaAXjyW2hKojosOTAQQRX50bPSVg==} + '@babel/plugin-transform-dotall-regex@7.25.7': + resolution: {integrity: sha512-kXzXMMRzAtJdDEgQBLF4oaiT6ZCU3oWHgpARnTKDAqPkDJ+bs3NrZb310YYevR5QlRo3Kn7dzzIdHbZm1VzJdQ==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 - '@babel/plugin-transform-dotall-regex@7.24.1': - resolution: {integrity: sha512-p7uUxgSoZwZ2lPNMzUkqCts3xlp8n+o05ikjy7gbtFJSt9gdU88jAmtfmOxHM14noQXBxfgzf2yRWECiNVhTCw==} + '@babel/plugin-transform-duplicate-keys@7.25.7': + resolution: {integrity: sha512-by+v2CjoL3aMnWDOyCIg+yxU9KXSRa9tN6MbqggH5xvymmr9p4AMjYkNlQy4brMceBnUyHZ9G8RnpvT8wP7Cfg==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 - '@babel/plugin-transform-duplicate-keys@7.24.1': - resolution: {integrity: sha512-msyzuUnvsjsaSaocV6L7ErfNsa5nDWL1XKNnDePLgmz+WdU4w/J8+AxBMrWfi9m4IxfL5sZQKUPQKDQeeAT6lA==} + '@babel/plugin-transform-duplicate-named-capturing-groups-regex@7.25.7': + resolution: {integrity: sha512-HvS6JF66xSS5rNKXLqkk7L9c/jZ/cdIVIcoPVrnl8IsVpLggTjXs8OWekbLHs/VtYDDh5WXnQyeE3PPUGm22MA==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0 + + '@babel/plugin-transform-dynamic-import@7.25.7': + resolution: {integrity: sha512-UvcLuual4h7/GfylKm2IAA3aph9rwvAM2XBA0uPKU3lca+Maai4jBjjEVUS568ld6kJcgbouuumCBhMd/Yz17w==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 - '@babel/plugin-transform-dynamic-import@7.24.1': - resolution: {integrity: sha512-av2gdSTyXcJVdI+8aFZsCAtR29xJt0S5tas+Ef8NvBNmD1a+N/3ecMLeMBgfcK+xzsjdLDT6oHt+DFPyeqUbDA==} + '@babel/plugin-transform-exponentiation-operator@7.25.7': + resolution: {integrity: sha512-yjqtpstPfZ0h/y40fAXRv2snciYr0OAoMXY/0ClC7tm4C/nG5NJKmIItlaYlLbIVAWNfrYuy9dq1bE0SbX0PEg==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 - '@babel/plugin-transform-exponentiation-operator@7.24.1': - resolution: {integrity: sha512-U1yX13dVBSwS23DEAqU+Z/PkwE9/m7QQy8Y9/+Tdb8UWYaGNDYwTLi19wqIAiROr8sXVum9A/rtiH5H0boUcTw==} + '@babel/plugin-transform-export-namespace-from@7.25.7': + resolution: {integrity: sha512-h3MDAP5l34NQkkNulsTNyjdaR+OiB0Im67VU//sFupouP8Q6m9Spy7l66DcaAQxtmCqGdanPByLsnwFttxKISQ==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 - '@babel/plugin-transform-export-namespace-from@7.24.1': - resolution: {integrity: sha512-Ft38m/KFOyzKw2UaJFkWG9QnHPG/Q/2SkOrRk4pNBPg5IPZ+dOxcmkK5IyuBcxiNPyyYowPGUReyBvrvZs7IlQ==} + '@babel/plugin-transform-flow-strip-types@7.25.7': + resolution: {integrity: sha512-q8Td2PPc6/6I73g96SreSUCKEcwMXCwcXSIAVTyTTN6CpJe0dMj8coxu1fg1T9vfBLi6Rsi6a4ECcFBbKabS5w==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 - '@babel/plugin-transform-for-of@7.24.1': - resolution: {integrity: sha512-OxBdcnF04bpdQdR3i4giHZNZQn7cm8RQKcSwA17wAAqEELo1ZOwp5FFgeptWUQXFyT9kwHo10aqqauYkRZPCAg==} + '@babel/plugin-transform-for-of@7.25.7': + resolution: {integrity: sha512-n/TaiBGJxYFWvpJDfsxSj9lEEE44BFM1EPGz4KEiTipTgkoFVVcCmzAL3qA7fdQU96dpo4gGf5HBx/KnDvqiHw==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 - '@babel/plugin-transform-function-name@7.24.1': - resolution: {integrity: sha512-BXmDZpPlh7jwicKArQASrj8n22/w6iymRnvHYYd2zO30DbE277JO20/7yXJT3QxDPtiQiOxQBbZH4TpivNXIxA==} + '@babel/plugin-transform-function-name@7.25.7': + resolution: {integrity: sha512-5MCTNcjCMxQ63Tdu9rxyN6cAWurqfrDZ76qvVPrGYdBxIj+EawuuxTu/+dgJlhK5eRz3v1gLwp6XwS8XaX2NiQ==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 - '@babel/plugin-transform-json-strings@7.24.1': - resolution: {integrity: sha512-U7RMFmRvoasscrIFy5xA4gIp8iWnWubnKkKuUGJjsuOH7GfbMkB+XZzeslx2kLdEGdOJDamEmCqOks6e8nv8DQ==} + '@babel/plugin-transform-json-strings@7.25.7': + resolution: {integrity: sha512-Ot43PrL9TEAiCe8C/2erAjXMeVSnE/BLEx6eyrKLNFCCw5jvhTHKyHxdI1pA0kz5njZRYAnMO2KObGqOCRDYSA==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 - '@babel/plugin-transform-literals@7.24.1': - resolution: {integrity: sha512-zn9pwz8U7nCqOYIiBaOxoQOtYmMODXTJnkxG4AtX8fPmnCRYWBOHD0qcpwS9e2VDSp1zNJYpdnFMIKb8jmwu6g==} + '@babel/plugin-transform-literals@7.25.7': + resolution: {integrity: sha512-fwzkLrSu2fESR/cm4t6vqd7ebNIopz2QHGtjoU+dswQo/P6lwAG04Q98lliE3jkz/XqnbGFLnUcE0q0CVUf92w==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 - '@babel/plugin-transform-logical-assignment-operators@7.24.1': - resolution: {integrity: sha512-OhN6J4Bpz+hIBqItTeWJujDOfNP+unqv/NJgyhlpSqgBTPm37KkMmZV6SYcOj+pnDbdcl1qRGV/ZiIjX9Iy34w==} + '@babel/plugin-transform-logical-assignment-operators@7.25.7': + resolution: {integrity: sha512-iImzbA55BjiovLyG2bggWS+V+OLkaBorNvc/yJoeeDQGztknRnDdYfp2d/UPmunZYEnZi6Lg8QcTmNMHOB0lGA==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 - '@babel/plugin-transform-member-expression-literals@7.24.1': - resolution: {integrity: sha512-4ojai0KysTWXzHseJKa1XPNXKRbuUrhkOPY4rEGeR+7ChlJVKxFa3H3Bz+7tWaGKgJAXUWKOGmltN+u9B3+CVg==} + '@babel/plugin-transform-member-expression-literals@7.25.7': + resolution: {integrity: sha512-Std3kXwpXfRV0QtQy5JJcRpkqP8/wG4XL7hSKZmGlxPlDqmpXtEPRmhF7ztnlTCtUN3eXRUJp+sBEZjaIBVYaw==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 - '@babel/plugin-transform-modules-amd@7.24.1': - resolution: {integrity: sha512-lAxNHi4HVtjnHd5Rxg3D5t99Xm6H7b04hUS7EHIXcUl2EV4yl1gWdqZrNzXnSrHveL9qMdbODlLF55mvgjAfaQ==} + '@babel/plugin-transform-modules-amd@7.25.7': + resolution: {integrity: sha512-CgselSGCGzjQvKzghCvDTxKHP3iooenLpJDO842ehn5D2G5fJB222ptnDwQho0WjEvg7zyoxb9P+wiYxiJX5yA==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 - '@babel/plugin-transform-modules-commonjs@7.24.1': - resolution: {integrity: sha512-szog8fFTUxBfw0b98gEWPaEqF42ZUD/T3bkynW/wtgx2p/XCP55WEsb+VosKceRSd6njipdZvNogqdtI4Q0chw==} + '@babel/plugin-transform-modules-commonjs@7.25.7': + resolution: {integrity: sha512-L9Gcahi0kKFYXvweO6n0wc3ZG1ChpSFdgG+eV1WYZ3/dGbJK7vvk91FgGgak8YwRgrCuihF8tE/Xg07EkL5COg==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 - '@babel/plugin-transform-modules-systemjs@7.24.1': - resolution: {integrity: sha512-mqQ3Zh9vFO1Tpmlt8QPnbwGHzNz3lpNEMxQb1kAemn/erstyqw1r9KeOlOfo3y6xAnFEcOv2tSyrXfmMk+/YZA==} + '@babel/plugin-transform-modules-systemjs@7.25.7': + resolution: {integrity: sha512-t9jZIvBmOXJsiuyOwhrIGs8dVcD6jDyg2icw1VL4A/g+FnWyJKwUfSSU2nwJuMV2Zqui856El9u+ElB+j9fV1g==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 - '@babel/plugin-transform-modules-umd@7.24.1': - resolution: {integrity: sha512-tuA3lpPj+5ITfcCluy6nWonSL7RvaG0AOTeAuvXqEKS34lnLzXpDb0dcP6K8jD0zWZFNDVly90AGFJPnm4fOYg==} + '@babel/plugin-transform-modules-umd@7.25.7': + resolution: {integrity: sha512-p88Jg6QqsaPh+EB7I9GJrIqi1Zt4ZBHUQtjw3z1bzEXcLh6GfPqzZJ6G+G1HBGKUNukT58MnKG7EN7zXQBCODw==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 - '@babel/plugin-transform-named-capturing-groups-regex@7.22.5': - resolution: {integrity: sha512-YgLLKmS3aUBhHaxp5hi1WJTgOUb/NCuDHzGT9z9WTt3YG+CPRhJs6nprbStx6DnWM4dh6gt7SU3sZodbZ08adQ==} + '@babel/plugin-transform-named-capturing-groups-regex@7.25.7': + resolution: {integrity: sha512-BtAT9LzCISKG3Dsdw5uso4oV1+v2NlVXIIomKJgQybotJY3OwCwJmkongjHgwGKoZXd0qG5UZ12JUlDQ07W6Ow==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0 - '@babel/plugin-transform-new-target@7.24.1': - resolution: {integrity: sha512-/rurytBM34hYy0HKZQyA0nHbQgQNFm4Q/BOc9Hflxi2X3twRof7NaE5W46j4kQitm7SvACVRXsa6N/tSZxvPug==} + '@babel/plugin-transform-new-target@7.25.7': + resolution: {integrity: sha512-CfCS2jDsbcZaVYxRFo2qtavW8SpdzmBXC2LOI4oO0rP+JSRDxxF3inF4GcPsLgfb5FjkhXG5/yR/lxuRs2pySA==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0-0 + + '@babel/plugin-transform-nullish-coalescing-operator@7.25.7': + resolution: {integrity: sha512-FbuJ63/4LEL32mIxrxwYaqjJxpbzxPVQj5a+Ebrc8JICV6YX8nE53jY+K0RZT3um56GoNWgkS2BQ/uLGTjtwfw==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0-0 + + '@babel/plugin-transform-numeric-separator@7.25.7': + resolution: {integrity: sha512-8CbutzSSh4hmD+jJHIA8vdTNk15kAzOnFLVVgBSMGr28rt85ouT01/rezMecks9pkU939wDInImwCKv4ahU4IA==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0-0 + + '@babel/plugin-transform-object-rest-spread@7.25.7': + resolution: {integrity: sha512-1JdVKPhD7Y5PvgfFy0Mv2brdrolzpzSoUq2pr6xsR+m+3viGGeHEokFKsCgOkbeFOQxfB1Vt2F0cPJLRpFI4Zg==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0-0 + + '@babel/plugin-transform-object-super@7.25.7': + resolution: {integrity: sha512-pWT6UXCEW3u1t2tcAGtE15ornCBvopHj9Bps9D2DsH15APgNVOTwwczGckX+WkAvBmuoYKRCFa4DK+jM8vh5AA==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 - '@babel/plugin-transform-nullish-coalescing-operator@7.24.1': - resolution: {integrity: sha512-iQ+caew8wRrhCikO5DrUYx0mrmdhkaELgFa+7baMcVuhxIkN7oxt06CZ51D65ugIb1UWRQ8oQe+HXAVM6qHFjw==} + '@babel/plugin-transform-optional-catch-binding@7.25.7': + resolution: {integrity: sha512-m9obYBA39mDPN7lJzD5WkGGb0GO54PPLXsbcnj1Hyeu8mSRz7Gb4b1A6zxNX32ZuUySDK4G6it8SDFWD1nCnqg==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 - '@babel/plugin-transform-numeric-separator@7.24.1': - resolution: {integrity: sha512-7GAsGlK4cNL2OExJH1DzmDeKnRv/LXq0eLUSvudrehVA5Rgg4bIrqEUW29FbKMBRT0ztSqisv7kjP+XIC4ZMNw==} + '@babel/plugin-transform-optional-chaining@7.25.7': + resolution: {integrity: sha512-h39agClImgPWg4H8mYVAbD1qP9vClFbEjqoJmt87Zen8pjqK8FTPUwrOXAvqu5soytwxrLMd2fx2KSCp2CHcNg==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 - '@babel/plugin-transform-object-rest-spread@7.24.5': - resolution: {integrity: sha512-7EauQHszLGM3ay7a161tTQH7fj+3vVM/gThlz5HpFtnygTxjrlvoeq7MPVA1Vy9Q555OB8SnAOsMkLShNkkrHA==} + '@babel/plugin-transform-parameters@7.25.7': + resolution: {integrity: sha512-FYiTvku63me9+1Nz7TOx4YMtW3tWXzfANZtrzHhUZrz4d47EEtMQhzFoZWESfXuAMMT5mwzD4+y1N8ONAX6lMQ==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 - '@babel/plugin-transform-object-super@7.24.1': - resolution: {integrity: sha512-oKJqR3TeI5hSLRxudMjFQ9re9fBVUU0GICqM3J1mi8MqlhVr6hC/ZN4ttAyMuQR6EZZIY6h/exe5swqGNNIkWQ==} + '@babel/plugin-transform-private-methods@7.25.7': + resolution: {integrity: sha512-KY0hh2FluNxMLwOCHbxVOKfdB5sjWG4M183885FmaqWWiGMhRZq4DQRKH6mHdEucbJnyDyYiZNwNG424RymJjA==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 - '@babel/plugin-transform-optional-catch-binding@7.24.1': - resolution: {integrity: sha512-oBTH7oURV4Y+3EUrf6cWn1OHio3qG/PVwO5J03iSJmBg6m2EhKjkAu/xuaXaYwWW9miYtvbWv4LNf0AmR43LUA==} + '@babel/plugin-transform-private-property-in-object@7.25.7': + resolution: {integrity: sha512-LzA5ESzBy7tqj00Yjey9yWfs3FKy4EmJyKOSWld144OxkTji81WWnUT8nkLUn+imN/zHL8ZQlOu/MTUAhHaX3g==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 - '@babel/plugin-transform-optional-chaining@7.24.5': - resolution: {integrity: sha512-xWCkmwKT+ihmA6l7SSTpk8e4qQl/274iNbSKRRS8mpqFR32ksy36+a+LWY8OXCCEefF8WFlnOHVsaDI2231wBg==} + '@babel/plugin-transform-property-literals@7.25.7': + resolution: {integrity: sha512-lQEeetGKfFi0wHbt8ClQrUSUMfEeI3MMm74Z73T9/kuz990yYVtfofjf3NuA42Jy3auFOpbjDyCSiIkTs1VIYw==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 - '@babel/plugin-transform-parameters@7.24.5': - resolution: {integrity: sha512-9Co00MqZ2aoky+4j2jhofErthm6QVLKbpQrvz20c3CH9KQCLHyNB+t2ya4/UrRpQGR+Wrwjg9foopoeSdnHOkA==} + '@babel/plugin-transform-react-display-name@7.25.7': + resolution: {integrity: sha512-r0QY7NVU8OnrwE+w2IWiRom0wwsTbjx4+xH2RTd7AVdof3uurXOF+/mXHQDRk+2jIvWgSaCHKMgggfvM4dyUGA==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 - '@babel/plugin-transform-private-methods@7.24.1': - resolution: {integrity: sha512-tGvisebwBO5em4PaYNqt4fkw56K2VALsAbAakY0FjTYqJp7gfdrgr7YX76Or8/cpik0W6+tj3rZ0uHU9Oil4tw==} + '@babel/plugin-transform-react-jsx-development@7.25.7': + resolution: {integrity: sha512-5yd3lH1PWxzW6IZj+p+Y4OLQzz0/LzlOG8vGqonHfVR3euf1vyzyMUJk9Ac+m97BH46mFc/98t9PmYLyvgL3qg==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 - '@babel/plugin-transform-private-property-in-object@7.24.5': - resolution: {integrity: sha512-JM4MHZqnWR04jPMujQDTBVRnqxpLLpx2tkn7iPn+Hmsc0Gnb79yvRWOkvqFOx3Z7P7VxiRIR22c4eGSNj87OBQ==} + '@babel/plugin-transform-react-jsx@7.25.7': + resolution: {integrity: sha512-vILAg5nwGlR9EXE8JIOX4NHXd49lrYbN8hnjffDtoULwpL9hUx/N55nqh2qd0q6FyNDfjl9V79ecKGvFbcSA0Q==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 - '@babel/plugin-transform-property-literals@7.24.1': - resolution: {integrity: sha512-LetvD7CrHmEx0G442gOomRr66d7q8HzzGGr4PMHGr+5YIm6++Yke+jxj246rpvsbyhJwCLxcTn6zW1P1BSenqA==} + '@babel/plugin-transform-react-pure-annotations@7.25.7': + resolution: {integrity: sha512-6YTHJ7yjjgYqGc8S+CbEXhLICODk0Tn92j+vNJo07HFk9t3bjFgAKxPLFhHwF2NjmQVSI1zBRfBWUeVBa2osfA==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 - '@babel/plugin-transform-regenerator@7.24.1': - resolution: {integrity: sha512-sJwZBCzIBE4t+5Q4IGLaaun5ExVMRY0lYwos/jNecjMrVCygCdph3IKv0tkP5Fc87e/1+bebAmEAGBfnRD+cnw==} + '@babel/plugin-transform-regenerator@7.25.7': + resolution: {integrity: sha512-mgDoQCRjrY3XK95UuV60tZlFCQGXEtMg8H+IsW72ldw1ih1jZhzYXbJvghmAEpg5UVhhnCeia1CkGttUvCkiMQ==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 - '@babel/plugin-transform-reserved-words@7.24.1': - resolution: {integrity: sha512-JAclqStUfIwKN15HrsQADFgeZt+wexNQ0uLhuqvqAUFoqPMjEcFCYZBhq0LUdz6dZK/mD+rErhW71fbx8RYElg==} + '@babel/plugin-transform-reserved-words@7.25.7': + resolution: {integrity: sha512-3OfyfRRqiGeOvIWSagcwUTVk2hXBsr/ww7bLn6TRTuXnexA+Udov2icFOxFX9abaj4l96ooYkcNN1qi2Zvqwng==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 - '@babel/plugin-transform-shorthand-properties@7.24.1': - resolution: {integrity: sha512-LyjVB1nsJ6gTTUKRjRWx9C1s9hE7dLfP/knKdrfeH9UPtAGjYGgxIbFfx7xyLIEWs7Xe1Gnf8EWiUqfjLhInZA==} + '@babel/plugin-transform-shorthand-properties@7.25.7': + resolution: {integrity: sha512-uBbxNwimHi5Bv3hUccmOFlUy3ATO6WagTApenHz9KzoIdn0XeACdB12ZJ4cjhuB2WSi80Ez2FWzJnarccriJeA==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 - '@babel/plugin-transform-spread@7.24.1': - resolution: {integrity: sha512-KjmcIM+fxgY+KxPVbjelJC6hrH1CgtPmTvdXAfn3/a9CnWGSTY7nH4zm5+cjmWJybdcPSsD0++QssDsjcpe47g==} + '@babel/plugin-transform-spread@7.25.7': + resolution: {integrity: sha512-Mm6aeymI0PBh44xNIv/qvo8nmbkpZze1KvR8MkEqbIREDxoiWTi18Zr2jryfRMwDfVZF9foKh060fWgni44luw==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 - '@babel/plugin-transform-sticky-regex@7.24.1': - resolution: {integrity: sha512-9v0f1bRXgPVcPrngOQvLXeGNNVLc8UjMVfebo9ka0WF3/7+aVUHmaJVT3sa0XCzEFioPfPHZiOcYG9qOsH63cw==} + '@babel/plugin-transform-sticky-regex@7.25.7': + resolution: {integrity: sha512-ZFAeNkpGuLnAQ/NCsXJ6xik7Id+tHuS+NT+ue/2+rn/31zcdnupCdmunOizEaP0JsUmTFSTOPoQY7PkK2pttXw==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 - '@babel/plugin-transform-template-literals@7.24.1': - resolution: {integrity: sha512-WRkhROsNzriarqECASCNu/nojeXCDTE/F2HmRgOzi7NGvyfYGq1NEjKBK3ckLfRgGc6/lPAqP0vDOSw3YtG34g==} + '@babel/plugin-transform-template-literals@7.25.7': + resolution: {integrity: sha512-SI274k0nUsFFmyQupiO7+wKATAmMFf8iFgq2O+vVFXZ0SV9lNfT1NGzBEhjquFmD8I9sqHLguH+gZVN3vww2AA==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 - '@babel/plugin-transform-typeof-symbol@7.24.5': - resolution: {integrity: sha512-UTGnhYVZtTAjdwOTzT+sCyXmTn8AhaxOS/MjG9REclZ6ULHWF9KoCZur0HSGU7hk8PdBFKKbYe6+gqdXWz84Jg==} + '@babel/plugin-transform-typeof-symbol@7.25.7': + resolution: {integrity: sha512-OmWmQtTHnO8RSUbL0NTdtpbZHeNTnm68Gj5pA4Y2blFNh+V4iZR68V1qL9cI37J21ZN7AaCnkfdHtLExQPf2uA==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 - '@babel/plugin-transform-unicode-escapes@7.24.1': - resolution: {integrity: sha512-RlkVIcWT4TLI96zM660S877E7beKlQw7Ig+wqkKBiWfj0zH5Q4h50q6er4wzZKRNSYpfo6ILJ+hrJAGSX2qcNw==} + '@babel/plugin-transform-unicode-escapes@7.25.7': + resolution: {integrity: sha512-BN87D7KpbdiABA+t3HbVqHzKWUDN3dymLaTnPFAMyc8lV+KN3+YzNhVRNdinaCPA4AUqx7ubXbQ9shRjYBl3SQ==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 - '@babel/plugin-transform-unicode-property-regex@7.24.1': - resolution: {integrity: sha512-Ss4VvlfYV5huWApFsF8/Sq0oXnGO+jB+rijFEFugTd3cwSObUSnUi88djgR5528Csl0uKlrI331kRqe56Ov2Ng==} + '@babel/plugin-transform-unicode-property-regex@7.25.7': + resolution: {integrity: sha512-IWfR89zcEPQGB/iB408uGtSPlQd3Jpq11Im86vUgcmSTcoWAiQMCTOa2K2yNNqFJEBVICKhayctee65Ka8OB0w==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 - '@babel/plugin-transform-unicode-regex@7.24.1': - resolution: {integrity: sha512-2A/94wgZgxfTsiLaQ2E36XAOdcZmGAaEEgVmxQWwZXWkGhvoHbaqXcKnU8zny4ycpu3vNqg0L/PcCiYtHtA13g==} + '@babel/plugin-transform-unicode-regex@7.25.7': + resolution: {integrity: sha512-8JKfg/hiuA3qXnlLx8qtv5HWRbgyFx2hMMtpDDuU2rTckpKkGu4ycK5yYHwuEa16/quXfoxHBIApEsNyMWnt0g==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 - '@babel/plugin-transform-unicode-sets-regex@7.24.1': - resolution: {integrity: sha512-fqj4WuzzS+ukpgerpAoOnMfQXwUHFxXUZUE84oL2Kao2N8uSlvcpnAidKASgsNgzZHBsHWvcm8s9FPWUhAb8fA==} + '@babel/plugin-transform-unicode-sets-regex@7.25.7': + resolution: {integrity: sha512-YRW8o9vzImwmh4Q3Rffd09bH5/hvY0pxg+1H1i0f7APoUeg12G7+HhLj9ZFNIrYkgBXhIijPJ+IXypN0hLTIbw==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0 - '@babel/preset-env@7.24.5': - resolution: {integrity: sha512-UGK2ifKtcC8i5AI4cH+sbLLuLc2ktYSFJgBAXorKAsHUZmrQ1q6aQ6i3BvU24wWs2AAKqQB6kq3N9V9Gw1HiMQ==} + '@babel/preset-env@7.25.4': + resolution: {integrity: sha512-W9Gyo+KmcxjGahtt3t9fb14vFRWvPpu5pT6GBlovAK6BTBcxgjfVMSQCfJl4oi35ODrxP6xx2Wr8LNST57Mraw==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0-0 + + '@babel/preset-env@7.25.7': + resolution: {integrity: sha512-Gibz4OUdyNqqLj+7OAvBZxOD7CklCtMA5/j0JgUEwOnaRULsPDXmic2iKxL2DX2vQduPR5wH2hjZas/Vr/Oc0g==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0-0 + + '@babel/preset-flow@7.24.7': + resolution: {integrity: sha512-NL3Lo0NorCU607zU3NwRyJbpaB6E3t0xtd3LfAQKDfkeX4/ggcDXvkmkW42QWT5owUeW/jAe4hn+2qvkV1IbfQ==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 @@ -697,6 +760,12 @@ packages: peerDependencies: '@babel/core': ^7.0.0-0 || ^8.0.0-0 <8.0.0 + '@babel/preset-react@7.24.7': + resolution: {integrity: sha512-AAH4lEkpmzFWrGVlHaxJB7RLH21uPQ9+He+eFLWHmF9IuFQVugz8eAsamaW0DXRrTfco5zj1wWtpdcXJUOfsag==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0-0 + '@babel/regjsgen@0.8.0': resolution: {integrity: sha512-x/rqGMdzj+fWZvCOYForTghzbtqPDZ5gPwaoNGHdgDfF2QA/XZbCBp4Moo5scrkAMPhB7z26XM/AaHuIJdgauA==} @@ -704,34 +773,44 @@ packages: resolution: {integrity: sha512-Nms86NXrsaeU9vbBJKni6gXiEXZ4CVpYVzEjDH9Sb8vmZ3UljyA1GSOJl/6LGPO8EHLuSF9H+IxNXHPX8QHJ4g==} engines: {node: '>=6.9.0'} - '@babel/template@7.24.0': - resolution: {integrity: sha512-Bkf2q8lMB0AFpX0NFEqSbx1OkTHf0f+0j82mkw+ZpzBnkk7e9Ql0891vlfgi+kHwOk8tQjiQHpqh4LaSa0fKEA==} + '@babel/template@7.25.7': + resolution: {integrity: sha512-wRwtAgI3bAS+JGU2upWNL9lSlDcRCqD05BZ1n3X2ONLH1WilFP6O1otQjeMK/1g0pvYcXC7b/qVUB1keofjtZA==} engines: {node: '>=6.9.0'} - '@babel/traverse@7.24.5': - resolution: {integrity: sha512-7aaBLeDQ4zYcUFDUD41lJc1fG8+5IU9DaNSJAgal866FGvmD5EbWQgnEC6kO1gGLsX0esNkfnJSndbTXA3r7UA==} + '@babel/traverse@7.25.7': + resolution: {integrity: sha512-jatJPT1Zjqvh/1FyJs6qAHL+Dzb7sTb+xr7Q+gM1b+1oBsMsQQ4FkVKb6dFlJvLlVssqkRzV05Jzervt9yhnzg==} engines: {node: '>=6.9.0'} '@babel/types@7.24.5': resolution: {integrity: sha512-6mQNsaLeXTw0nxYUYu+NSa4Hx4BlF1x1x8/PMFbiR+GBSr+2DkECc69b8hgy2frEodNcvPffeH8YfWd3LI6jhQ==} engines: {node: '>=6.9.0'} + '@babel/types@7.25.7': + resolution: {integrity: sha512-vwIVdXG+j+FOpkwqHRcBgHLYNL7XMkufrlaFvL9o6Ai9sJn9+PdyIL5qa0XzTZw084c+u9LOls53eoZWP/W5WQ==} + engines: {node: '>=6.9.0'} + '@bcoe/v8-coverage@0.2.3': resolution: {integrity: sha512-0hYQ8SB4Db5zvZB4axdMHGwEaQjkZzFjQiN9LVYvIFB2nSUHW9tYpxWriPrWDASIxiaXax83REcLxuSdnGPZtw==} '@blueoak/list@9.0.0': resolution: {integrity: sha512-ExvaAZaZEIhaCePVpqW4ZoFgixhuylQiukSSqaRNfqUtqSWKnlUMZpZWOlugRpfRLuazPkcquDVhPkeodQI5FQ==} - '@brettz9/eslint-plugin@1.0.4': - resolution: {integrity: sha512-BDKec0j1PbKhX6RNuEehwr65yUAo/zALbrJ5aogAZnrafrFfPvstI6osQr0NYZKFVoxWLCDwShPIcuKYvOc/GA==} - engines: {node: '>=10.0.0'} + '@brettz9/eslint-plugin@3.0.0': + resolution: {integrity: sha512-QprVr0jsyljALm5HXtXh+1IorN8v2uBYWdEjQ6bJ8Q/al7WOOy6rbne8Ruzy/fvSaEL56f1RdXMyDmMYmAb0MQ==} + engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} peerDependencies: eslint: '>=7.20.0' - '@es-joy/jsdoccomment@0.42.0': - resolution: {integrity: sha512-R1w57YlVA6+YE01wch3GPYn6bCsrOV3YW/5oGGE2tmX6JcL9Nr+b5IikrjMPF+v9CV3ay+obImEdsDhovhJrzw==} + '@es-joy/jsdoccomment@0.48.0': + resolution: {integrity: sha512-G6QUWIcC+KvSwXNsJyDTHvqUdNoAVJPPgkc3+Uk4WBKqZvoXhlvazOgm9aL0HwihJLQf0l+tOE2UFzXBqCqgDw==} engines: {node: '>=16'} + '@eslint-community/eslint-plugin-eslint-comments@4.4.0': + resolution: {integrity: sha512-yljsWl5Qv3IkIRmJ38h3NrHXFCm4EUl55M8doGTF6hvzvFF8kRpextgSrg2dwHev9lzBZyafCr9RelGIyQm6fw==} + engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} + peerDependencies: + eslint: ^6.0.0 || ^7.0.0 || ^8.0.0 || ^9.0.0 + '@eslint-community/eslint-utils@4.4.0': resolution: {integrity: sha512-1/sA4dwrzBAyeUoQ6oxahHKmrZvsnLCg4RfxW3ZFGGmQkSNQPFNLV9CUEFQP1x9EYXHTo5p6xdhZM1Ne9p/AfA==} engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} @@ -742,27 +821,60 @@ packages: resolution: {integrity: sha512-Cu96Sd2By9mCNTx2iyKOmq10v22jUVQv0lQnlGNy16oE9589yE+QADPbrMGCkA51cKZSg3Pu/aTJVTGfL/qjUA==} engines: {node: ^12.0.0 || ^14.0.0 || >=16.0.0} - '@eslint/eslintrc@2.1.4': - resolution: {integrity: sha512-269Z39MS6wVJtsoUl10L60WdkhJVdPG24Q4eZTH3nnF6lpvSShEK3wQjDX9JRWAUPvPh7COouPpU9IrqaZFvtQ==} - engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} + '@eslint-community/regexpp@4.11.1': + resolution: {integrity: sha512-m4DVN9ZqskZoLU5GlWZadwDnYo3vAEydiUayB9widCl9ffWx2IvPnp6n3on5rJmziJSw9Bv+Z3ChDVdMwXCY8Q==} + engines: {node: ^12.0.0 || ^14.0.0 || >=16.0.0} - '@eslint/js@8.57.0': - resolution: {integrity: sha512-Ys+3g2TaW7gADOJzPt83SJtCDhMjndcDMFVQ/Tj9iA1BfJzFKD9mAUXT3OenpuPHbI6P/myECxRJrofUsDx/5g==} - engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} + '@eslint/config-array@0.18.0': + resolution: {integrity: sha512-fTxvnS1sRMu3+JjXwJG0j/i4RT9u4qJ+lqS/yCGap4lH4zZGzQ7tu+xZqQmcMZq5OBZDL4QRxQzRjkWcGt8IVw==} + engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} + + '@eslint/core@0.6.0': + resolution: {integrity: sha512-8I2Q8ykA4J0x0o7cg67FPVnehcqWTBehu/lmY+bolPFHGjh49YzGBMXTvpqVgEbBdvNCSxj6iFgiIyHzf03lzg==} + engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} + + '@eslint/eslintrc@3.1.0': + resolution: {integrity: sha512-4Bfj15dVJdoy3RfZmmo86RK1Fwzn6SstsvK9JS+BaVKqC6QQQQyXekNaC+g+LKNgkQ+2VhGAzm6hO40AhMR3zQ==} + engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} + + '@eslint/js@9.12.0': + resolution: {integrity: sha512-eohesHH8WFRUprDNyEREgqP6beG6htMeUYeCpkEgBCieCMme5r9zFWjzAJp//9S+Kub4rqE+jXe9Cp1a7IYIIA==} + engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} + + '@eslint/markdown@6.2.0': + resolution: {integrity: sha512-ZLWZ6RNy5flf1Nk2DBt0V77MQpQEo8snkjVT75P5J0SJkE/QNoqgy7+dBvNjlyZuj664pU43uDXWg3J8AfF0IQ==} + engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} + + '@eslint/object-schema@2.1.4': + resolution: {integrity: sha512-BsWiH1yFGjXXS2yvrf5LyuoSIIbPrGUWob917o+BTKuZ7qJdxX8aJLRxs1fS9n6r7vESrq1OUqb68dANcFXuQQ==} + engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} + + '@eslint/plugin-kit@0.2.0': + resolution: {integrity: sha512-vH9PiIMMwvhCx31Af3HiGzsVNULDbyVkHXwlemn/B0TFj/00ho3y55efXrUZTfQipxoHC5u4xq6zblww1zm1Ig==} + engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} + + '@fintechstudios/eslint-plugin-chai-as-promised@3.1.0': + resolution: {integrity: sha512-Y3TmITTwc5u8hoW0GWxle1hKiVadDqDHyLQaTv+e+xVDHazn361QIEY9NbWqNsXP0jzrSskpnhkBr++h+PciEw==} + engines: {node: '>=8.10.0'} '@gar/promisify@1.1.3': resolution: {integrity: sha512-k2Ty1JcVojjJFwrg/ThKi2ujJ7XNLYaFGNB/bWT9wGR+oSMJHMa5w+CUq6p/pVrKeNNgA7pCqEcjSnHVoqJQFw==} - '@humanwhocodes/config-array@0.11.14': - resolution: {integrity: sha512-3T8LkOmg45BV5FICb15QQMsyUSWrQ8AygVfC7ZG32zOalnqrilm018ZVCw0eapXux8FtA33q8PSRSstjee3jSg==} - engines: {node: '>=10.10.0'} + '@humanfs/core@0.19.0': + resolution: {integrity: sha512-2cbWIHbZVEweE853g8jymffCA+NCMiuqeECeBBLm8dg2oFdjuGJhgN4UAbI+6v0CKbbhvtXA4qV8YR5Ji86nmw==} + engines: {node: '>=18.18.0'} + + '@humanfs/node@0.16.5': + resolution: {integrity: sha512-KSPA4umqSG4LHYRodq31VDwKAvaTF4xmVlzM8Aeh4PlU1JQ3IG0wiA8C25d3RQ9nJyM3mBHyI53K06VVL/oFFg==} + engines: {node: '>=18.18.0'} '@humanwhocodes/module-importer@1.0.1': resolution: {integrity: sha512-bxveV4V8v5Yb4ncFTT3rPSgZBOpCkjfK0y4oVVVJwIuDVBRMDXrPyXRL988i5ap9m9bnyEEjWfm5WkBmtffLfA==} engines: {node: '>=12.22'} - '@humanwhocodes/object-schema@2.0.3': - resolution: {integrity: sha512-93zYdMES/c1D69yZiKDBj0V24vqNzB/koF26KPaagAfd3P/4gUlh3Dys5ogAK+Exi9QyzlD8x/08Zt7wIKcDcA==} + '@humanwhocodes/retry@0.3.1': + resolution: {integrity: sha512-JBxkERygn7Bv/GbN5Rv8Ul6LVknS+5Bp6RgDC/O8gEBU/yeH5Ui5C/OlWrTb6qct7LjjfT6Re2NxB0ln0yYybA==} + engines: {node: '>=18.18'} '@isaacs/cliui@8.0.2': resolution: {integrity: sha512-O8jcjabXaleOG9DQ0+ARXWZBTfnP4WNAqzuiJK7ll44AmxGKv/J2M4TPjxjY3znBCfvBXFzucm1twdyFybFqEA==} @@ -812,8 +924,11 @@ packages: peerDependencies: jsep: ^0.4.0||^1.0.0 - '@mdn/browser-compat-data@5.5.24': - resolution: {integrity: sha512-8z/7mkez6xKhbUtmwVRrSuZ28wv3VpOWVvA8ykdovbC5kFyxlJ2QWsfRjpe+f50tirdPC7hN7TZO5eZfTvUqhg==} + '@mdn/browser-compat-data@5.6.4': + resolution: {integrity: sha512-bOOF4GGzn0exmvNHpSWmTfOXB9beTpIFCm2KPY2UVoCdn1YVfr8heuHr1C++BYI9Tun8REgi5TNVdKbBs249CA==} + + '@nicolo-ribaudo/eslint-scope-5-internals@5.1.1-v1': + resolution: {integrity: sha512-54/JRvkLIzzDWshCWfuhadfrfZVPiElY8Fcgmg1HroEly/EDSszzhBAsarCux+D/kOslTRquNzuyGSmUSTTHGg==} '@nodelib/fs.scandir@2.1.5': resolution: {integrity: sha512-vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g==} @@ -827,6 +942,10 @@ packages: resolution: {integrity: sha512-oGB+UxlgWcgQkgwo8GcEGwemoTFt3FIO9ababBmaGwXIoBKZ+GTy0pP185beGg7Llih/NSHSV2XAs1lnznocSg==} engines: {node: '>= 8'} + '@nolyfill/is-core-module@1.0.39': + resolution: {integrity: sha512-nn5ozdjYQpUCZlWGuxcJY/KpxkWQs4DcbMCmKojjyrYDEAGy4Ce19NN4v5MduafTwJlbKc99UA8YhSVqq9yPZA==} + engines: {node: '>=12.4.0'} + '@npmcli/arborist@6.5.1': resolution: {integrity: sha512-cdV8pGurLK0CifZRilMJbm2CZ3H4Snk8PAqOngj5qmgFLjEllMLvScSZ3XKfd+CK8fo/hrPHO9zazy9OYdvmUg==} engines: {node: ^14.17.0 || ^16.13.0 || >=18.0.0} @@ -890,6 +1009,10 @@ packages: resolution: {integrity: sha512-+1VkjdD0QBLPodGrJUeqarH8VAIvQODIbwh9XpP5Syisf7YoQgsJKPNFoqqLQlu+VQ/tVSshMR6loPMn8U+dPg==} engines: {node: '>=14'} + '@pkgr/core@0.1.1': + resolution: {integrity: sha512-cq8o4cWH0ibXh9VGi5P20Tu9XF/0fFXl9EUinr9QfTM7a7p0oTA4iJRCQWppXR1Pg8dSM0UCItCkPwsk9qWWYA==} + engines: {node: ^12.20.0 || ^14.18.0 || >=16.0.0} + '@pnpm/config.env-replace@1.1.0': resolution: {integrity: sha512-htyl8TWnKL7K/ESFa1oW2UB5lVDxuF5DpM7tBi6Hu2LNL3mWkIzNLG6N4zoCUP1lCKNxWy/3iu8mS8MvToGd6w==} engines: {node: '>=12.22.0'} @@ -915,8 +1038,8 @@ packages: rollup: optional: true - '@rollup/plugin-node-resolve@15.2.3': - resolution: {integrity: sha512-j/lym8nf5E21LwBT4Df1VD6hRO2L2iwUeUmP7litikRsVp1H6NWx20NEp0Y7su+7XGc476GnXXc4kFeZNGmaSQ==} + '@rollup/plugin-node-resolve@15.3.0': + resolution: {integrity: sha512-9eO5McEICxMzJpDW9OnMYSv4Sta3hmt7VtBFz5zR9273suNOydOyq/FrGeGy+KsTRFm8w0SLVhzig2ILFT63Ag==} engines: {node: '>=14.0.0'} peerDependencies: rollup: ^2.78.0||^3.0.0||^4.0.0 @@ -942,68 +1065,83 @@ packages: rollup: optional: true - '@rollup/rollup-android-arm-eabi@4.12.0': - resolution: {integrity: sha512-+ac02NL/2TCKRrJu2wffk1kZ+RyqxVUlbjSagNgPm94frxtr+XDL12E5Ll1enWskLrtrZ2r8L3wED1orIibV/w==} + '@rollup/rollup-android-arm-eabi@4.24.0': + resolution: {integrity: sha512-Q6HJd7Y6xdB48x8ZNVDOqsbh2uByBhgK8PiQgPhwkIw/HC/YX5Ghq2mQY5sRMZWHb3VsFkWooUVOZHKr7DmDIA==} cpu: [arm] os: [android] - '@rollup/rollup-android-arm64@4.12.0': - resolution: {integrity: sha512-OBqcX2BMe6nvjQ0Nyp7cC90cnumt8PXmO7Dp3gfAju/6YwG0Tj74z1vKrfRz7qAv23nBcYM8BCbhrsWqO7PzQQ==} + '@rollup/rollup-android-arm64@4.24.0': + resolution: {integrity: sha512-ijLnS1qFId8xhKjT81uBHuuJp2lU4x2yxa4ctFPtG+MqEE6+C5f/+X/bStmxapgmwLwiL3ih122xv8kVARNAZA==} cpu: [arm64] os: [android] - '@rollup/rollup-darwin-arm64@4.12.0': - resolution: {integrity: sha512-X64tZd8dRE/QTrBIEs63kaOBG0b5GVEd3ccoLtyf6IdXtHdh8h+I56C2yC3PtC9Ucnv0CpNFJLqKFVgCYe0lOQ==} + '@rollup/rollup-darwin-arm64@4.24.0': + resolution: {integrity: sha512-bIv+X9xeSs1XCk6DVvkO+S/z8/2AMt/2lMqdQbMrmVpgFvXlmde9mLcbQpztXm1tajC3raFDqegsH18HQPMYtA==} cpu: [arm64] os: [darwin] - '@rollup/rollup-darwin-x64@4.12.0': - resolution: {integrity: sha512-cc71KUZoVbUJmGP2cOuiZ9HSOP14AzBAThn3OU+9LcA1+IUqswJyR1cAJj3Mg55HbjZP6OLAIscbQsQLrpgTOg==} + '@rollup/rollup-darwin-x64@4.24.0': + resolution: {integrity: sha512-X6/nOwoFN7RT2svEQWUsW/5C/fYMBe4fnLK9DQk4SX4mgVBiTA9h64kjUYPvGQ0F/9xwJ5U5UfTbl6BEjaQdBQ==} cpu: [x64] os: [darwin] - '@rollup/rollup-linux-arm-gnueabihf@4.12.0': - resolution: {integrity: sha512-a6w/Y3hyyO6GlpKL2xJ4IOh/7d+APaqLYdMf86xnczU3nurFTaVN9s9jOXQg97BE4nYm/7Ga51rjec5nfRdrvA==} + '@rollup/rollup-linux-arm-gnueabihf@4.24.0': + resolution: {integrity: sha512-0KXvIJQMOImLCVCz9uvvdPgfyWo93aHHp8ui3FrtOP57svqrF/roSSR5pjqL2hcMp0ljeGlU4q9o/rQaAQ3AYA==} + cpu: [arm] + os: [linux] + + '@rollup/rollup-linux-arm-musleabihf@4.24.0': + resolution: {integrity: sha512-it2BW6kKFVh8xk/BnHfakEeoLPv8STIISekpoF+nBgWM4d55CZKc7T4Dx1pEbTnYm/xEKMgy1MNtYuoA8RFIWw==} cpu: [arm] os: [linux] - '@rollup/rollup-linux-arm64-gnu@4.12.0': - resolution: {integrity: sha512-0fZBq27b+D7Ar5CQMofVN8sggOVhEtzFUwOwPppQt0k+VR+7UHMZZY4y+64WJ06XOhBTKXtQB/Sv0NwQMXyNAA==} + '@rollup/rollup-linux-arm64-gnu@4.24.0': + resolution: {integrity: sha512-i0xTLXjqap2eRfulFVlSnM5dEbTVque/3Pi4g2y7cxrs7+a9De42z4XxKLYJ7+OhE3IgxvfQM7vQc43bwTgPwA==} cpu: [arm64] os: [linux] - '@rollup/rollup-linux-arm64-musl@4.12.0': - resolution: {integrity: sha512-eTvzUS3hhhlgeAv6bfigekzWZjaEX9xP9HhxB0Dvrdbkk5w/b+1Sxct2ZuDxNJKzsRStSq1EaEkVSEe7A7ipgQ==} + '@rollup/rollup-linux-arm64-musl@4.24.0': + resolution: {integrity: sha512-9E6MKUJhDuDh604Qco5yP/3qn3y7SLXYuiC0Rpr89aMScS2UAmK1wHP2b7KAa1nSjWJc/f/Lc0Wl1L47qjiyQw==} cpu: [arm64] os: [linux] - '@rollup/rollup-linux-riscv64-gnu@4.12.0': - resolution: {integrity: sha512-ix+qAB9qmrCRiaO71VFfY8rkiAZJL8zQRXveS27HS+pKdjwUfEhqo2+YF2oI+H/22Xsiski+qqwIBxVewLK7sw==} + '@rollup/rollup-linux-powerpc64le-gnu@4.24.0': + resolution: {integrity: sha512-2XFFPJ2XMEiF5Zi2EBf4h73oR1V/lycirxZxHZNc93SqDN/IWhYYSYj8I9381ikUFXZrz2v7r2tOVk2NBwxrWw==} + cpu: [ppc64] + os: [linux] + + '@rollup/rollup-linux-riscv64-gnu@4.24.0': + resolution: {integrity: sha512-M3Dg4hlwuntUCdzU7KjYqbbd+BLq3JMAOhCKdBE3TcMGMZbKkDdJ5ivNdehOssMCIokNHFOsv7DO4rlEOfyKpg==} cpu: [riscv64] os: [linux] - '@rollup/rollup-linux-x64-gnu@4.12.0': - resolution: {integrity: sha512-TenQhZVOtw/3qKOPa7d+QgkeM6xY0LtwzR8OplmyL5LrgTWIXpTQg2Q2ycBf8jm+SFW2Wt/DTn1gf7nFp3ssVA==} + '@rollup/rollup-linux-s390x-gnu@4.24.0': + resolution: {integrity: sha512-mjBaoo4ocxJppTorZVKWFpy1bfFj9FeCMJqzlMQGjpNPY9JwQi7OuS1axzNIk0nMX6jSgy6ZURDZ2w0QW6D56g==} + cpu: [s390x] + os: [linux] + + '@rollup/rollup-linux-x64-gnu@4.24.0': + resolution: {integrity: sha512-ZXFk7M72R0YYFN5q13niV0B7G8/5dcQ9JDp8keJSfr3GoZeXEoMHP/HlvqROA3OMbMdfr19IjCeNAnPUG93b6A==} cpu: [x64] os: [linux] - '@rollup/rollup-linux-x64-musl@4.12.0': - resolution: {integrity: sha512-LfFdRhNnW0zdMvdCb5FNuWlls2WbbSridJvxOvYWgSBOYZtgBfW9UGNJG//rwMqTX1xQE9BAodvMH9tAusKDUw==} + '@rollup/rollup-linux-x64-musl@4.24.0': + resolution: {integrity: sha512-w1i+L7kAXZNdYl+vFvzSZy8Y1arS7vMgIy8wusXJzRrPyof5LAb02KGr1PD2EkRcl73kHulIID0M501lN+vobQ==} cpu: [x64] os: [linux] - '@rollup/rollup-win32-arm64-msvc@4.12.0': - resolution: {integrity: sha512-JPDxovheWNp6d7AHCgsUlkuCKvtu3RB55iNEkaQcf0ttsDU/JZF+iQnYcQJSk/7PtT4mjjVG8N1kpwnI9SLYaw==} + '@rollup/rollup-win32-arm64-msvc@4.24.0': + resolution: {integrity: sha512-VXBrnPWgBpVDCVY6XF3LEW0pOU51KbaHhccHw6AS6vBWIC60eqsH19DAeeObl+g8nKAz04QFdl/Cefta0xQtUQ==} cpu: [arm64] os: [win32] - '@rollup/rollup-win32-ia32-msvc@4.12.0': - resolution: {integrity: sha512-fjtuvMWRGJn1oZacG8IPnzIV6GF2/XG+h71FKn76OYFqySXInJtseAqdprVTDTyqPxQOG9Exak5/E9Z3+EJ8ZA==} + '@rollup/rollup-win32-ia32-msvc@4.24.0': + resolution: {integrity: sha512-xrNcGDU0OxVcPTH/8n/ShH4UevZxKIO6HJFK0e15XItZP2UcaiLFd5kiX7hJnqCbSztUF8Qot+JWBC/QXRPYWQ==} cpu: [ia32] os: [win32] - '@rollup/rollup-win32-x64-msvc@4.12.0': - resolution: {integrity: sha512-ZYmr5mS2wd4Dew/JjT0Fqi2NPB/ZhZ2VvPp7SmvPZb4Y1CG/LRcS6tcRo2cYU7zLK5A7cdbhWnnWmUjoI4qapg==} + '@rollup/rollup-win32-x64-msvc@4.24.0': + resolution: {integrity: sha512-fbMkAF7fufku0N2dE5TBXcNlg0pt0cJue4xBRE2Qc5Vqikxr4VCgKj/ht6SMdFcOacVA9rqF70APJ8RN/4vMJw==} cpu: [x64] os: [win32] @@ -1011,6 +1149,24 @@ packages: resolution: {integrity: sha512-ApFcBpxT8PoW+rhaonOW7LhO3Fz7XfuqNoiBZ5Te7P1t6I9NKJT1kgpSTMO/rMgc3JGpeUNZhqrvRzGmiWymFQ==} engines: {node: '>=10.0.0'} + '@rtsao/scc@1.1.0': + resolution: {integrity: sha512-zt6OdqaDoOnJ1ZYsCYGt9YmWzDXl4vQdKTyJev62gFhRGKdx7mcT54V9KIjg+d2wi9EXsPvAPKe7i7WjfVWB8g==} + + '@shikijs/core@1.22.0': + resolution: {integrity: sha512-S8sMe4q71TJAW+qG93s5VaiihujRK6rqDFqBnxqvga/3LvqHEnxqBIOPkt//IdXVtHkQWKu4nOQNk0uBGicU7Q==} + + '@shikijs/engine-javascript@1.22.0': + resolution: {integrity: sha512-AeEtF4Gcck2dwBqCFUKYfsCq0s+eEbCEbkUuFou53NZ0sTGnJnJ/05KHQFZxpii5HMXbocV9URYVowOP2wH5kw==} + + '@shikijs/engine-oniguruma@1.22.0': + resolution: {integrity: sha512-5iBVjhu/DYs1HB0BKsRRFipRrD7rqjxlWTj4F2Pf+nQSPqc3kcyqFFeZXnBMzDf0HdqaFVvhDRAGiYNvyLP+Mw==} + + '@shikijs/types@1.22.0': + resolution: {integrity: sha512-Fw/Nr7FGFhlQqHfxzZY8Cwtwk5E9nKDUgeLjZgt3UuhcM3yJR9xj3ZGNravZZok8XmEZMiYkSMTPlPkULB8nww==} + + '@shikijs/vscode-textmate@9.3.0': + resolution: {integrity: sha512-jn7/7ky30idSkd/O5yDBfAnVt+JJpepofP/POZ1iMOxK59cOfqIgg/Dj0eFsjOTMw+4ycJN0uhZH/Eb0bs/EUA==} + '@sigstore/bundle@1.1.0': resolution: {integrity: sha512-PFutXEy0SmQxYI4texPw3dd2KewuNqv7OuK1ZFtY2fM754yhvG2KdgwIhRnoEE2uHdtdGNQ8s0lb94dW9sELog==} engines: {node: ^14.17.0 || ^16.13.0 || >=18.0.0} @@ -1031,32 +1187,13 @@ packages: resolution: {integrity: sha512-TV7t8GKYaJWsn00tFDqBw8+Uqmr8A0fRU1tvTQhyZzGv0sJCGRQL3JGMI3ucuKo3XIZdUP+Lx7/gh2t3lewy7g==} engines: {node: '>=14.16'} - '@stylistic/eslint-plugin-js@1.8.0': - resolution: {integrity: sha512-jdvnzt+pZPg8TfclZlTZPiUbbima93ylvQ+wNgHLNmup3obY6heQvgewSu9i2CfS61BnRByv+F9fxQLPoNeHag==} - engines: {node: ^16.0.0 || >=18.0.0} - peerDependencies: - eslint: '>=8.40.0' - - '@stylistic/eslint-plugin-jsx@1.8.0': - resolution: {integrity: sha512-PC7tYXipF03TTilGJva1amAham7qOAFXT5r5jLTY6iIxkFqyb6H7Ljx5pv8d7n98VyIVidOEKY/AP8vNzAFNKg==} - engines: {node: ^16.0.0 || >=18.0.0} - peerDependencies: - eslint: '>=8.40.0' - - '@stylistic/eslint-plugin-plus@1.8.0': - resolution: {integrity: sha512-TkrjzzYmTuAaLvFwtxomsgMUD8g8PREOQOQzTfKmiJ6oc4XOyFW4q/L9ES1J3UFSLybNCwbhu36lhXJut1w2Sg==} - peerDependencies: - eslint: '*' - - '@stylistic/eslint-plugin-ts@1.8.0': - resolution: {integrity: sha512-WuCIhz4JEHxzhAWjrBASMGj6Or1wAjDqTsRIck3DRRrw/FJ8C/8AAuHPk8ECHNSDI5PZ0OT72nF2uSUn0aQq1w==} - engines: {node: ^16.0.0 || >=18.0.0} - peerDependencies: - eslint: '>=8.40.0' + '@sindresorhus/merge-streams@2.3.0': + resolution: {integrity: sha512-LtoMMhxAlorcGhmFYI+LhPgbPZCkgP6ra1YL604EeF6U98pLlQ3iWIGMdWSC+vWmPBWBNgmDBAhnAobLROJmwg==} + engines: {node: '>=18'} - '@stylistic/eslint-plugin@1.8.0': - resolution: {integrity: sha512-JRR0lCDU97AiE0X6qTc/uf8Hv0yETUdyJgoNzTLUIWdhVJVe/KGPnFmEsO1iXfNUIS6vhv3JJ5vaZ2qtXhZe1g==} - engines: {node: ^16.0.0 || >=18.0.0} + '@stylistic/eslint-plugin@2.9.0': + resolution: {integrity: sha512-OrDyFAYjBT61122MIY1a3SfEgy3YCMgt2vL4eoPmvTwDBwyQhAXurxNQznlRD/jESNfYWfID8Ej+31LljvF7Xg==} + engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} peerDependencies: eslint: '>=8.40.0' @@ -1083,12 +1220,18 @@ packages: resolution: {integrity: sha512-qaGV9ltJP0EO25YfFUPhxRVK0evXFIAGicsVXuRim4Ed9cjPxYhNnNJ49SFmbeLgtxpslIkX317IgpfcHPVj/A==} engines: {node: ^14.17.0 || ^16.13.0 || >=18.0.0} - '@types/eslint@8.56.10': - resolution: {integrity: sha512-Shavhk87gCtY2fhXDctcfS3e6FdxWkCx1iUZ9eEUbh7rTqlZT0/IzOkCOVt0fCjcFuZ9FPYfuezTBImfHCDBGQ==} + '@types/debug@4.1.12': + resolution: {integrity: sha512-vIChWdVG3LG1SMxEvI/AK+FWJthlrqlTu7fbrlywTkkaONwk/UAGaULXRlf8vkzFBLVm0zkMdCquhL5aOjhXPQ==} '@types/estree@1.0.5': resolution: {integrity: sha512-/kYRxGDLWzHOB7q+wtSUQlFrtcdUccpfy+X+9iMBpHK8QLLhx2wIPYuS5DYtR9Wa/YlZAbIovy7qVdB1Aq6Lyw==} + '@types/estree@1.0.6': + resolution: {integrity: sha512-AYnb1nQyY49te+VRAVgmzfcgjYS91mY5P0TKUDCLEM+gNnA+3T6rWITXRLYCpahpqSQbN5cE+gHpnPyXjHWxcw==} + + '@types/hast@3.0.4': + resolution: {integrity: sha512-WPs+bbQw5aCj+x6laNGWLH3wviHtoCv/P3+otBhbOhJgG8qtpdAMlTCxLtsTWA7LH1Oh/bFCHsBn0TPS5m30EQ==} + '@types/http-cache-semantics@4.0.4': resolution: {integrity: sha512-1m0bIFVc7eJWyve9S0RnuRgcQqF/Xd5QsUZAZeQFr1Q3/p9JWoQQEqmVy+DPTNpGXwhgIetAoYF8JSc33q29QA==} @@ -1101,8 +1244,11 @@ packages: '@types/json5@0.0.29': resolution: {integrity: sha512-dRLjCWHYg4oaA77cxO64oO+7JwCwnIzkZPdrrC71jQmQtlhM556pwKo5bUzqvZndkVbeFLIIi+9TC40JNF5hNQ==} - '@types/mdast@3.0.15': - resolution: {integrity: sha512-LnwD+mUEfxWMa1QpDraczIn6k0Ee3SMicuYSSzS6ZYl2gKS09EClnJYGd8Du6rfc5r/GZEk5o1mRb8TaTj03sQ==} + '@types/mdast@4.0.4': + resolution: {integrity: sha512-kGaNbPh1k7AFzgpud/gMdvIm5xuECykRR+JnWKQno9TAXVa6WIVCGTPvYGekIDL4uwCZQSYbUxNBSb1aUo79oA==} + + '@types/ms@0.7.34': + resolution: {integrity: sha512-nG96G3Wp6acyAgJqGasjODb+acrI7KltPiRxzHPXnP3NgI28bpQDRv53olbqGXbfcgF5aiiHmO3xpwEpS5Ld9g==} '@types/normalize-package-data@2.4.4': resolution: {integrity: sha512-37i+OaWTh9qeK4LSHPsyRC7NahnGotNuZvjLSgcPzblpHB3rrCJxAOgI5gCdKm7coonsaX1Of0ILiTcnZjbfxA==} @@ -1110,38 +1256,123 @@ packages: '@types/resolve@1.20.2': resolution: {integrity: sha512-60BCwRFOZCQhDncwQdxxeOEEkbc5dIMccYLwbxsS4TUNeVECQ/pBJ0j09mrHOl/JJvpRPGwO9SvE4nR2Nb/a4Q==} - '@types/semver@7.5.8': - resolution: {integrity: sha512-I8EUhyrgfLrcTkzV3TSsGyl1tSuPrEDzr0yd5m90UgNxQkyDXULk3b6MlQqTCpZpNtWe1K0hzclnZkTcLBe2UQ==} - '@types/unist@2.0.10': resolution: {integrity: sha512-IfYcSBWE3hLpBg8+X2SEa8LVkJdJEkT2Ese2aaLs3ptGdVtABxndrMaxuFlQ1qdFf9Q5rDvDpxI3WwgvKFAsQA==} - '@typescript-eslint/scope-manager@6.21.0': - resolution: {integrity: sha512-OwLUIWZJry80O99zvqXVEioyniJMa+d2GrqpUTqi5/v5D5rOrppJVBPa0yKCblcigC0/aYAzxxqQ1B+DS2RYsg==} - engines: {node: ^16.0.0 || >=18.0.0} + '@types/unist@3.0.3': + resolution: {integrity: sha512-ko/gIFJRv177XgZsZcBwnqJN5x/Gien8qNOn0D5bQU/zAzVf9Zt3BlcUiLqhV9y4ARk0GbT3tnUiPNgnTXzc/Q==} + + '@typescript-eslint/eslint-plugin@7.16.1': + resolution: {integrity: sha512-SxdPak/5bO0EnGktV05+Hq8oatjAYVY3Zh2bye9pGZy6+jwyR3LG3YKkV4YatlsgqXP28BTeVm9pqwJM96vf2A==} + engines: {node: ^18.18.0 || >=20.0.0} + peerDependencies: + '@typescript-eslint/parser': ^7.0.0 + eslint: ^8.56.0 + typescript: '*' + peerDependenciesMeta: + typescript: + optional: true + + '@typescript-eslint/parser@7.18.0': + resolution: {integrity: sha512-4Z+L8I2OqhZV8qA132M4wNL30ypZGYOQVBfMgxDH/K5UX0PNqTu1c6za9ST5r9+tavvHiTWmBnKzpCJ/GlVFtg==} + engines: {node: ^18.18.0 || >=20.0.0} + peerDependencies: + eslint: ^8.56.0 + typescript: '*' + peerDependenciesMeta: + typescript: + optional: true + + '@typescript-eslint/scope-manager@7.16.1': + resolution: {integrity: sha512-nYpyv6ALte18gbMz323RM+vpFpTjfNdyakbf3nsLvF43uF9KeNC289SUEW3QLZ1xPtyINJ1dIsZOuWuSRIWygw==} + engines: {node: ^18.18.0 || >=20.0.0} + + '@typescript-eslint/scope-manager@7.18.0': + resolution: {integrity: sha512-jjhdIE/FPF2B7Z1uzc6i3oWKbGcHb87Qw7AWj6jmEqNOfDFbJWtjt/XfwCpvNkpGWlcJaog5vTR+VV8+w9JflA==} + engines: {node: ^18.18.0 || >=20.0.0} + + '@typescript-eslint/scope-manager@8.8.0': + resolution: {integrity: sha512-EL8eaGC6gx3jDd8GwEFEV091210U97J0jeEHrAYvIYosmEGet4wJ+g0SYmLu+oRiAwbSA5AVrt6DxLHfdd+bUg==} + engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} + + '@typescript-eslint/type-utils@7.16.1': + resolution: {integrity: sha512-rbu/H2MWXN4SkjIIyWcmYBjlp55VT+1G3duFOIukTNFxr9PI35pLc2ydwAfejCEitCv4uztA07q0QWanOHC7dA==} + engines: {node: ^18.18.0 || >=20.0.0} + peerDependencies: + eslint: ^8.56.0 + typescript: '*' + peerDependenciesMeta: + typescript: + optional: true + + '@typescript-eslint/types@7.16.1': + resolution: {integrity: sha512-AQn9XqCzUXd4bAVEsAXM/Izk11Wx2u4H3BAfQVhSfzfDOm/wAON9nP7J5rpkCxts7E5TELmN845xTUCQrD1xIQ==} + engines: {node: ^18.18.0 || >=20.0.0} + + '@typescript-eslint/types@7.18.0': + resolution: {integrity: sha512-iZqi+Ds1y4EDYUtlOOC+aUmxnE9xS/yCigkjA7XpTKV6nCBd3Hp/PRGGmdwnfkV2ThMyYldP1wRpm/id99spTQ==} + engines: {node: ^18.18.0 || >=20.0.0} + + '@typescript-eslint/types@8.8.0': + resolution: {integrity: sha512-QJwc50hRCgBd/k12sTykOJbESe1RrzmX6COk8Y525C9l7oweZ+1lw9JiU56im7Amm8swlz00DRIlxMYLizr2Vw==} + engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} + + '@typescript-eslint/typescript-estree@7.16.1': + resolution: {integrity: sha512-0vFPk8tMjj6apaAZ1HlwM8w7jbghC8jc1aRNJG5vN8Ym5miyhTQGMqU++kuBFDNKe9NcPeZ6x0zfSzV8xC1UlQ==} + engines: {node: ^18.18.0 || >=20.0.0} + peerDependencies: + typescript: '*' + peerDependenciesMeta: + typescript: + optional: true - '@typescript-eslint/types@6.21.0': - resolution: {integrity: sha512-1kFmZ1rOm5epu9NZEZm1kckCDGj5UJEf7P1kliH4LKu/RkwpsfqqGmY2OOcUs18lSlQBKLDYBOGxRVtrMN5lpg==} - engines: {node: ^16.0.0 || >=18.0.0} + '@typescript-eslint/typescript-estree@7.18.0': + resolution: {integrity: sha512-aP1v/BSPnnyhMHts8cf1qQ6Q1IFwwRvAQGRvBFkWlo3/lH29OXA3Pts+c10nxRxIBrDnoMqzhgdwVe5f2D6OzA==} + engines: {node: ^18.18.0 || >=20.0.0} + peerDependencies: + typescript: '*' + peerDependenciesMeta: + typescript: + optional: true - '@typescript-eslint/typescript-estree@6.21.0': - resolution: {integrity: sha512-6npJTkZcO+y2/kr+z0hc4HwNfrrP4kNYh57ek7yCNlrBjWQ1Y0OS7jiZTkgumrvkX5HkEKXFZkkdFNkaW2wmUQ==} - engines: {node: ^16.0.0 || >=18.0.0} + '@typescript-eslint/typescript-estree@8.8.0': + resolution: {integrity: sha512-ZaMJwc/0ckLz5DaAZ+pNLmHv8AMVGtfWxZe/x2JVEkD5LnmhWiQMMcYT7IY7gkdJuzJ9P14fRy28lUrlDSWYdw==} + engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} peerDependencies: typescript: '*' peerDependenciesMeta: typescript: optional: true - '@typescript-eslint/utils@6.21.0': - resolution: {integrity: sha512-NfWVaC8HP9T8cbKQxHcsJBY5YE1O33+jpMwN45qzWWaPDZgLIbo12toGMWnmhvCpd3sIxkpDw3Wv1B3dYrbDQQ==} - engines: {node: ^16.0.0 || >=18.0.0} + '@typescript-eslint/utils@7.16.1': + resolution: {integrity: sha512-WrFM8nzCowV0he0RlkotGDujx78xudsxnGMBHI88l5J8wEhED6yBwaSLP99ygfrzAjsQvcYQ94quDwI0d7E1fA==} + engines: {node: ^18.18.0 || >=20.0.0} + peerDependencies: + eslint: ^8.56.0 + + '@typescript-eslint/utils@7.18.0': + resolution: {integrity: sha512-kK0/rNa2j74XuHVcoCZxdFBMF+aq/vH83CXAOHieC+2Gis4mF8jJXT5eAfyD3K0sAxtPuwxaIOIOvhwzVDt/kw==} + engines: {node: ^18.18.0 || >=20.0.0} peerDependencies: - eslint: ^7.0.0 || ^8.0.0 + eslint: ^8.56.0 + + '@typescript-eslint/utils@8.8.0': + resolution: {integrity: sha512-QE2MgfOTem00qrlPgyByaCHay9yb1+9BjnMFnSFkUKQfu7adBXDTnCAivURnuPPAG/qiB+kzKkZKmKfaMT0zVg==} + engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} + peerDependencies: + eslint: ^8.57.0 || ^9.0.0 + + '@typescript-eslint/visitor-keys@7.16.1': + resolution: {integrity: sha512-Qlzzx4sE4u3FsHTPQAAQFJFNOuqtuY0LFrZHwQ8IHK705XxBiWOFkfKRWu6niB7hwfgnwIpO4jTC75ozW1PHWg==} + engines: {node: ^18.18.0 || >=20.0.0} - '@typescript-eslint/visitor-keys@6.21.0': - resolution: {integrity: sha512-JJtkDduxLi9bivAB+cYOVMtbkqdPOhZ+ZI5LC47MIRrDV4Yn2o+ZnW10Nkmr28xRpSpdJ6Sm42Hjf2+REYXm0A==} - engines: {node: ^16.0.0 || >=18.0.0} + '@typescript-eslint/visitor-keys@7.18.0': + resolution: {integrity: sha512-cDF0/Gf81QpY3xYyJKDV14Zwdmid5+uuENhjH2EqFaF0ni+yAyq/LzMaIJdhNJXZI7uLzwIlA+V7oWoyn6Curg==} + engines: {node: ^18.18.0 || >=20.0.0} + + '@typescript-eslint/visitor-keys@8.8.0': + resolution: {integrity: sha512-8mq51Lx6Hpmd7HnA2fcHQo3YgfX1qbccxQOgZcb4tvasu//zXRaA1j5ZRFeCw/VRAdFi4mRM9DnZw0Nu0Q2d1g==} + engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} '@ungap/structured-clone@1.2.0': resolution: {integrity: sha512-zuVdFrMJiuCDQUMCzQaD6KL28MjnqqN8XnAqiEq9PNm/hCPTSGfrXCOfwj1ow4LFb/tNymJPwsNbVePc1xFqrQ==} @@ -1153,6 +1384,10 @@ packages: resolution: {integrity: sha512-6/mh1E2u2YgEsCHdY0Yx5oW+61gZU+1vXaoiHHrpKeuRNNgFvS+/jrwHiQhB5apAf5oB7UB7E19ol2R2LKH8hQ==} engines: {node: ^14.17.0 || ^16.13.0 || >=18.0.0} + abort-controller@3.0.0: + resolution: {integrity: sha512-h8lQ8tacZYnR3vNQTgibj+tODHI5/+l06Au2Pcriv/Gmet0eaj4TwWH41sO9wnHDiQsEj19q0drzdWdeAHtweg==} + engines: {node: '>=6.5'} + acorn-jsx@5.3.2: resolution: {integrity: sha512-rq9s+JNhf0IChjtDXxllJ7g41oZk5SlXtp0LHwyA5cejwn7vKmKp4pPri6YEePv2PU65sAsegbXtIinmDFDXgQ==} peerDependencies: @@ -1163,6 +1398,11 @@ packages: engines: {node: '>=0.4.0'} hasBin: true + acorn@8.12.1: + resolution: {integrity: sha512-tcpGyI9zbizT9JbV6oYE477V6mTlXvvi0T0G3SNIYE2apm/G5huBa1+K89VGeovbg+jycCrfhl3ADxErOuO6Jg==} + engines: {node: '>=0.4.0'} + hasBin: true + agent-base@6.0.2: resolution: {integrity: sha512-RZNwNclF7+MS/8bDg70amg32dyeZGZxiDuQmZxKLAlQjr3jGyLx+4Kkk58UO7D2QdgFIQCovuSuZESne6RG6XQ==} engines: {node: '>= 6.0.0'} @@ -1181,8 +1421,8 @@ packages: ansi-align@3.0.1: resolution: {integrity: sha512-IOfwwBF5iczOjp/WeY4YxyjqAFMQoZufdQWDd19SEExbVLNXqvpzSJ/M7Za4/sCPmQ0+GRquoA7bGcINcxew6w==} - ansi-colors@4.1.1: - resolution: {integrity: sha512-JoX0apGbHaUJBNl6yF+p6JAFYZ666/hhCGKN5t9QFjbJQKUU/g8MNbFDbvfrgKXvI1QpZplPOnwIo99lX/AAmA==} + ansi-colors@4.1.3: + resolution: {integrity: sha512-/6w/C21Pm1A7aZitlI5Ni/2J6FFQN8i1Cvz3kHABAAbw93v/NlvKdVOqz7CCWz/3iv/JplRSEEZ83XION15ovw==} engines: {node: '>=6'} ansi-regex@5.0.1: @@ -1193,9 +1433,6 @@ packages: resolution: {integrity: sha512-n5M855fKb2SsfMIiFFoVrABHJC8QtHwVx+mHWP3QcEqBHYienj5dHSgjbxtC0WEZXYt4wcD6zrQElDPhFuZgfA==} engines: {node: '>=12'} - ansi-sequence-parser@1.1.1: - resolution: {integrity: sha512-vJXt3yiaUL4UU546s3rPXlsry/RnM730G1+HkpKE012AN0sx1eOrxSu95oKDIonskeLTijMgqWZ3uDEe3NFvyg==} - ansi-styles@3.2.1: resolution: {integrity: sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==} engines: {node: '>=4'} @@ -1233,6 +1470,9 @@ packages: argparse@2.0.1: resolution: {integrity: sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==} + aria-query@5.1.3: + resolution: {integrity: sha512-R5iJ5lkuHybztUfuOAznmboyjWq8O6sqNqtK7CLOqdydi54VNbORp49mb14KbWgG1QD3JFO9hJdZ+y4KutfdOQ==} + array-back@3.1.0: resolution: {integrity: sha512-TkuxA4UCOvxuDK6NZYXCalszEzj+TLszyASooky+i742l9TqsOdYCMJJupxRic61hwquNtppB3hgcuq9SVSH1Q==} engines: {node: '>=6'} @@ -1265,6 +1505,10 @@ packages: resolution: {integrity: sha512-HGyxoOTYUyCM6stUe6EJgnd4EoewAI7zMdfqO+kGjnlZmBDz/cR5pf8r/cR4Wq60sL/p0IkcjUEEPwS3GFrIyw==} engines: {node: '>=8'} + array.prototype.findlast@1.2.5: + resolution: {integrity: sha512-CVvd6FHg1Z3POpBLxO6E6zr+rSKEQ9L6rZHAaY7lLfhKsWYUBBOuMs0e9o24oopj6H+geRCX0YJ+TJLBK2eHyQ==} + engines: {node: '>= 0.4'} + array.prototype.findlastindex@1.2.5: resolution: {integrity: sha512-zfETvRFA8o7EiNn++N5f/kaCw221hrpGsDmcpndVupkPzEc1Wuf3VgC0qby1BbHs7f5DVYjgtEU2LLh5bqeGfQ==} engines: {node: '>= 0.4'} @@ -1277,6 +1521,10 @@ packages: resolution: {integrity: sha512-Ewyx0c9PmpcsByhSW4r+9zDU7sGjFc86qf/kKtuSCRdhfbk0SNLLkaT5qvcHnRGgc5NP/ly/y+qkXkqONX54CQ==} engines: {node: '>= 0.4'} + array.prototype.tosorted@1.1.4: + resolution: {integrity: sha512-p6Fx8B7b7ZhL/gmUsAy0D15WhvDccw3mnGNbZpi3pmeJdxtWsj2jEaI4Y6oo3XiHfzuSgPwKc04MYt6KgvC/wA==} + engines: {node: '>= 0.4'} + arraybuffer.prototype.slice@1.0.3: resolution: {integrity: sha512-bMxMKAjg13EBSVscxTaYA4mRc5t1UAXa2kXiGTNfZ079HIWXEkKmkgFrh/nJqamaLSrXO5H4WFFkPEaLJWbs3A==} engines: {node: '>= 0.4'} @@ -1288,6 +1536,9 @@ packages: ast-metadata-inferer@0.8.0: resolution: {integrity: sha512-jOMKcHht9LxYIEQu+RVd22vtgrPaVCtDRQ/16IGmurdzxvYbDd5ynxjnyrzLnieG96eTcAyaoj/wN/4/1FyyeA==} + ast-types-flow@0.0.8: + resolution: {integrity: sha512-OH/2E5Fg20h2aPrbe+QL8JZQFko0YZaF+j4mnQ7BGhfavO7OpSLa8a0y9sBwomHdSbkhTS8TQNayBfnW5DwbvQ==} + async@2.6.4: resolution: {integrity: sha512-mzo5dfJYwAn29PeiJ0zvwTo04zj8HDJj0Mn8TD7sno7q12prdbnasKJHhkm2c1LgrhlJ0teaea8860oxi51mGA==} @@ -1295,13 +1546,21 @@ packages: resolution: {integrity: sha512-wvUjBtSGN7+7SjNpq/9M2Tg350UZD3q62IFZLbRAR1bSMlCo1ZaeW+BJ+D090e4hIIZLBcTDWe4Mh4jvUDajzQ==} engines: {node: '>= 0.4'} + axe-core@4.10.0: + resolution: {integrity: sha512-Mr2ZakwQ7XUAjp7pAwQWRhhK8mQQ6JAaNWSjmjxil0R8BPioMtQsTLOolGYkji1rcL++3dCqZA3zWqpT+9Ew6g==} + engines: {node: '>=4'} + + axobject-query@4.1.0: + resolution: {integrity: sha512-qIj0G9wZbMGNLjLmg1PT6v2mE9AH2zlnADJD/2tC6E00hgmhUOfEB6greHPAfLRSufHqROIUTkw6E+M3lH0PTQ==} + engines: {node: '>= 0.4'} + babel-plugin-polyfill-corejs2@0.4.11: resolution: {integrity: sha512-sMEJ27L0gRHShOh5G54uAAPaiCOygY/5ratXuiyb2G46FmlSpc9eFCzYVyDiPxfNbwzA7mYahmjQc5q+CZQ09Q==} peerDependencies: '@babel/core': ^7.4.0 || ^8.0.0-0 <8.0.0 - babel-plugin-polyfill-corejs3@0.10.4: - resolution: {integrity: sha512-25J6I8NGfa5YkCDogHRID3fVCadIR8/pGl1/spvCkzb6lVn6SR3ojpx9nOn9iEBcUsjY24AmdKm5khcfKdylcg==} + babel-plugin-polyfill-corejs3@0.10.6: + resolution: {integrity: sha512-b37+KR2i/khY5sKmWNVQAnitvquQbNdWy6lJdsr0kmquCKEEUgMKK4SboVM3HtfnZilfjr4MMQ7vY58FVWDtIA==} peerDependencies: '@babel/core': ^7.4.0 || ^8.0.0-0 <8.0.0 @@ -1313,6 +1572,9 @@ packages: balanced-match@1.0.2: resolution: {integrity: sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==} + base64-js@1.5.1: + resolution: {integrity: sha512-AKpaYlHn8t4SVbOHCy+b5+KKgvR4vrsD8vbvrbiQJps7fKDTkjkDry6ji0rUJjC0kzbNePLwzxq8iypo41qeWA==} + basic-auth@2.0.1: resolution: {integrity: sha512-NF+epuEdnUYVlGuhaxbbq+dvJttwLnGY+YixlXlME5KpQ5W3CnXA5cVTneY3SPbPDRkcjMbifrwmFYcClgOZeg==} engines: {node: '>= 0.8'} @@ -1345,14 +1607,17 @@ packages: browser-stdout@1.3.1: resolution: {integrity: sha512-qhAVI1+Av2X7qelOfAIYwXONood6XlZE/fXaBSmW/T5SzLAmCgzi+eiWE7fUvbHaeNBQH13UftjpXxsfLkMpgw==} - browserslist@4.23.0: - resolution: {integrity: sha512-QW8HiM1shhT2GuzkvklfjcKDiWFXHOeFCIA/huJPwHsslwcydgk7X+z2zXpEijP98UCY7HbubZt5J2Zgvf0CaQ==} + browserslist@4.24.0: + resolution: {integrity: sha512-Rmb62sR1Zpjql25eSanFGEhAxcFwfA1K0GuQcLoaJBAcENegrQut3hYdhXFF1obQfiDyqIW/cLM5HSJ/9k884A==} engines: {node: ^6 || ^7 || ^8 || ^9 || ^10 || ^11 || ^12 || >=13.7} hasBin: true buffer-from@1.1.2: resolution: {integrity: sha512-E+XQCRwSbaaiChtv6k6Dwgc+bx+Bs6vuKJHHl5kox/BaKbhiXzqQOwK4cO22yElGp2OCmjwVhT3HmxgyPGnJfQ==} + buffer@6.0.3: + resolution: {integrity: sha512-FTiCpNxtwiZZHEZbcbTIcZjERVICn9yq/pDFkTl95/AxzD1naBctN7YO68riM/gLSDY7sdrMby8hofADYuuqOA==} + builtin-modules@3.3.0: resolution: {integrity: sha512-zhaCDicdLuWN5UbN5IMnFqNMhNfo919sH85y2/ea+5Yg9TsTkeZxpL+JLbp6cgYFS4sRLp3YV4S6yDuqVWHYOw==} engines: {node: '>=6'} @@ -1364,10 +1629,19 @@ packages: resolution: {integrity: sha512-tjwM5exMg6BGRI+kNmTntNsvdZS1X8BFYS6tnJ2hdH0kVxM6/eVZ2xy+FqStSWvYmtfFMDLIxurorHwDKfDz5Q==} engines: {node: '>=18'} - c8@9.1.0: - resolution: {integrity: sha512-mBWcT5iqNir1zIkzSPyI3NCR9EZCVI3WUD+AVO17MVWTSFNyUueXE82qTeampNtTr+ilN/5Ua3j24LgbCKjDVg==} - engines: {node: '>=14.14.0'} + bytes@3.1.2: + resolution: {integrity: sha512-/Nf7TyzTx6S3yRJObOAV7956r8cr2+Oj8AC5dt8wSP3BQAoeX58NoHyCU8P8zGkNXStjTSi6fzO6F0pBdcYbEg==} + engines: {node: '>= 0.8'} + + c8@10.1.2: + resolution: {integrity: sha512-Qr6rj76eSshu5CgRYvktW0uM0CFY0yi4Fd5D0duDXO6sYinyopmftUiJVuzBQxQcwQLor7JWDVRP+dUfCmzgJw==} + engines: {node: '>=18'} hasBin: true + peerDependencies: + monocart-coverage-reports: ^2 + peerDependenciesMeta: + monocart-coverage-reports: + optional: true cacache@16.1.3: resolution: {integrity: sha512-/+Emcj9DAXxX4cwlLmRI9c166RuL3w30zp4R7Joiv2cQTtTtA+jeuCAjH3ZlGnYS3tKENSrKhAzVVP9GVyzeYQ==} @@ -1405,11 +1679,14 @@ packages: resolution: {integrity: sha512-xlx1yCK2Oc1APsPXDL2LdlNP6+uu8OCDdhOBSVT279M/S+y75O30C2VuD8T2ogdePBBl7PfPF4504tnLgX3zfw==} engines: {node: '>=14.16'} - caniuse-lite@1.0.30001615: - resolution: {integrity: sha512-1IpazM5G3r38meiae0bHRnPhz+CBQ3ZLqbQMtrg+AsTPKAXgW38JNsXkyZ+v8waCsDmPq87lmfun5Q2AGysNEQ==} + caniuse-lite@1.0.30001667: + resolution: {integrity: sha512-7LTwJjcRkzKFmtqGsibMeuXmvFDfZq/nzIjnmgCGzKKRVzjD72selLDK1oPF/Oxzmt4fNcPvTDvGqSDG4tCALw==} - chai@5.1.0: - resolution: {integrity: sha512-kDZ7MZyM6Q1DhR9jy7dalKohXQ2yrlXkk59CR52aRKxJrobmlBNqnFQxX9xOX8w+4mz8SYlKJa/7D7ddltFXCw==} + ccount@2.0.1: + resolution: {integrity: sha512-eyrF0jiFpY+3drT6383f1qhkbGsLSifNAjA61IUjZjmLCWjItY6LB9ft9YhoDgwfmclB2zhu51Lc7+95b8NRAg==} + + chai@5.1.1: + resolution: {integrity: sha512-pT1ZgP8rPNqUgieVaEY+ryQr6Q4HXNg8Ei9UnLUrjN4IA7dvQC5JB+/kxVcPNDHyBcc/26CXPkbNzq3qwrOEKA==} engines: {node: '>=12'} chalk-template@0.4.0: @@ -1428,17 +1705,17 @@ packages: resolution: {integrity: sha512-dLitG79d+GV1Nb/VYcCDFivJeK1hiukt9QjRNVOsUtTy1rR1YJsmpGGTZ3qJos+uw7WmWF4wUwBd9jxjocFC2w==} engines: {node: ^12.17.0 || ^14.13 || >=16.0.0} - character-entities-legacy@1.1.4: - resolution: {integrity: sha512-3Xnr+7ZFS1uxeiUDvV02wQ+QDbc55o97tIV5zHScSPJpcLm/r0DFPcoY3tYRp+VZukxuMeKgXYmsXQHO05zQeA==} + character-entities-html4@2.1.0: + resolution: {integrity: sha512-1v7fgQRj6hnSwFpq1Eu0ynr/CDEw0rXo2B61qXrLNdHZmPKgb7fqS1a2JwF0rISo9q77jDI8VMEHoApn8qDoZA==} - character-entities@1.2.4: - resolution: {integrity: sha512-iBMyeEHxfVnIakwOuDXpVkc54HijNgCyQB2w0VfGQThle6NXn50zU6V/u+LDhxHcDUPojn6Kpga3PTAD8W1bQw==} + character-entities-legacy@3.0.0: + resolution: {integrity: sha512-RpPp0asT/6ufRm//AJVwpViZbGM/MkjQFxJccQRHmISF/22NBtsHqAWmL+/pmkPWoIUJdWyeVleTl1wydHATVQ==} - character-reference-invalid@1.1.4: - resolution: {integrity: sha512-mKKUkUbhPpQlCOfIuZkvSEgktjPFIsZKRRbC6KWVEMvlzblj3i3asQv5ODsrwt0N3pHAEvjP8KTQPHkp0+6jOg==} + character-entities@2.0.2: + resolution: {integrity: sha512-shx7oQ0Awen/BRIdkjkvz54PnEEI/EjwXDSIZp86/KKdbafHh1Df/RYGBhn4hbe2+uKC9FnT5UCEdyPz3ai9hQ==} - check-error@2.0.0: - resolution: {integrity: sha512-tjLAOBHKVxtPoHe/SA7kNOMvhCRdCJ3vETdeY0RuAc9popf+hyaSV6ZEg9hr4cpWF7jmo/JSWEnLDrnijS9Tog==} + check-error@2.1.1: + resolution: {integrity: sha512-OAlb+T7V4Op9OwdkjmguYRqncdlx5JiofwOAUkmTF+jNdHwzTaTs4sRAGpzLF3oOz5xAyDGrPgeIDFQmDOTiJw==} engines: {node: '>= 16'} chokidar@3.5.3: @@ -1500,6 +1777,9 @@ packages: colorette@1.4.0: resolution: {integrity: sha512-Y2oEozpomLn7Q3HFP7dpww7AtMJplbM9lGZP6RDfHqmbeRjiwRg4n6VM6j4KLmRke85uWEI7JqF17f3pqdRA0g==} + comma-separated-tokens@2.0.3: + resolution: {integrity: sha512-Fu4hJdvzeylCfQPp9SGWidpzrMs7tTrlu6Vb8XGaRGck8QSNZJJp538Wrb60Lax4fPwR64ViY468OIUTbRlGZg==} + command-line-args@5.2.1: resolution: {integrity: sha512-H4UfQhZyakIjC74I9d34fGYDwk3XpSr17QhEd0Q3I9Xq1CETHo4Hcuo87WyWHpAF1aSLjLRf5lD9ZGX2qStUvg==} engines: {node: '>=4.0.0'} @@ -1553,6 +1833,9 @@ packages: core-js-compat@3.37.0: resolution: {integrity: sha512-vYq4L+T8aS5UuFg4UwDhc7YNRWVeVZwltad9C/jV3R2LgVOpS9BDr7l/WL6BN0dbV3k1XejPTHqqEzJgsa0frA==} + core-js-compat@3.38.1: + resolution: {integrity: sha512-JRH6gfXxGmrzF3tZ57lFx97YARxCXPaMzPo6jELZhv88pBH5VXpQ+y0znKGlFnzuaihqhLbefxSJxWJMPtfDzw==} + correct-license-metadata@1.4.0: resolution: {integrity: sha512-nvbNpK/aYCbztZWGi9adIPqR+ZcQmZTWNT7eMYLvkaVGroN1nTHiVuuNPl7pK6ZNx1mvDztlRBJtfUdrVwKJ5A==} @@ -1600,6 +1883,9 @@ packages: resolution: {integrity: sha512-MOqHvMWF9/9MX6nza0KgvFH4HpMU0EF5uUDXqX/BtxtU8NfB0QzRtJ8Oe/6SuS4kbhyzVJwjd97EA4PKrzJ8bw==} engines: {node: '>=0.12'} + damerau-levenshtein@1.0.8: + resolution: {integrity: sha512-sdQSFB7+llfUcQHUQO3+B8ERRj0Oa4w9POWMI/puGtuf7gFywGmkaLCElnudfTiKZV+NvHqL0ifzdrI8Ro7ESA==} + data-view-buffer@1.0.1: resolution: {integrity: sha512-0lht7OugA5x3iJLOWFhWK/5ehONdprk0ISXqVFn/NFrDu+cuc8iADFrGQz5BnRK7LLU3JmkbXSxaqX+/mXYtUA==} engines: {node: '>= 0.4'} @@ -1629,10 +1915,22 @@ packages: supports-color: optional: true + debug@4.3.7: + resolution: {integrity: sha512-Er2nc/H7RrMXZBFCEim6TCmMk02Z8vLC2Rbi1KEBggpo0fS6l0S1nnapwmIi3yW/+GOJap1Krg4w0Hg80oCqgQ==} + engines: {node: '>=6.0'} + peerDependencies: + supports-color: '*' + peerDependenciesMeta: + supports-color: + optional: true + decamelize@4.0.0: resolution: {integrity: sha512-9iE1PgSik9HeIIw2JO94IidnE3eBoQrFJ3w7sFuzSX4DpmZ3v5sZpUiV5Swcf6mQEF+Y0ru8Neo+p+nyh2J+hQ==} engines: {node: '>=10'} + decode-named-character-reference@1.0.2: + resolution: {integrity: sha512-O8x12RzrUF8xyVcY0KJowWsmaJxQbmy0/EtnNtHRpsOcT7dFk5W598coHqBVpmWo1oQQfsCqfCmkZN5DJrZVdg==} + decompress-response@6.0.0: resolution: {integrity: sha512-aW35yZM6Bb/4oJlZncMH2LCoZtJXTRxES17vE3hoRiowU2kWHaJKFkSBDnDR+cm9J+9QhXmREyIfv0pji9ejCQ==} engines: {node: '>=10'} @@ -1641,6 +1939,10 @@ packages: resolution: {integrity: sha512-nwQCf6ne2gez3o1MxWifqkciwt0zhl0LO1/UwVu4uMBuPmflWM4oQ70XMqHqnBJA+nhzncaqL9HVL6KkHJ28lw==} engines: {node: '>=6'} + deep-equal@2.2.3: + resolution: {integrity: sha512-ZIwpnevOurS8bpT4192sqAowWM76JDKSHYzMLty3BZGSswgq6pBaH3DhCSW5xVAZICZyKdOBPjwww5wfgT/6PA==} + engines: {node: '>= 0.4'} + deep-extend@0.6.0: resolution: {integrity: sha512-LOHxIOaPYdHlJRtCQfDIVZtfw/ufM8+rVj649RIHzcm/vGwQRXFt6OPqIFWsm2XEMrNIEtWR64sY1LEKD2vAOA==} engines: {node: '>=4.0.0'} @@ -1679,8 +1981,15 @@ packages: delegates@1.0.0: resolution: {integrity: sha512-bd2L678uiWATM6m5Z1VzNCErI3jiGzt6HGY8OVICs40JQq/HALfbyNJmp0UDakEY4pMMaN0Ly5om/B1VI/+xfQ==} - diff@5.0.0: - resolution: {integrity: sha512-/VTCrvm5Z0JGty/BWHljh+BAiw3IK+2j87NGMu8Nwc/f48WoDAC395uomO9ZD117ZOBaHmkX1oyLvkVM/aIT3w==} + dequal@2.0.3: + resolution: {integrity: sha512-0je+qPKHEMohvfRTCEo3CrPG6cAzAYgmzKyxRiYSSDkS6eGJdyVJm7WaYA5ECaAD9wLB2T4EEeymA5aFVcYXCA==} + engines: {node: '>=6'} + + devlop@1.1.0: + resolution: {integrity: sha512-RWmIqhcFf1lRYBvNmr7qTNuyCt/7/ns2jbpp1+PalgE/rDQcBT0fioSMUpJ93irlUhC5hrg4cYqe6U+0ImW0rA==} + + diff@5.2.0: + resolution: {integrity: sha512-uIFDxqpRZGZ6ThOk84hEfqWoHx2devRFvpTZcTHur85vImfaxUbTW9Ryh4CpCuDnToOP1CEtXKIgytHBPVff5A==} engines: {node: '>=0.3.1'} dir-glob@3.0.1: @@ -1695,10 +2004,6 @@ packages: resolution: {integrity: sha512-35mSku4ZXK0vfCuHEDAwt55dg2jNajHZ1odvF+8SSr82EsZY4QmXfuWso8oEd8zRhVObSN18aM0CjSdoBX7zIw==} engines: {node: '>=0.10.0'} - doctrine@3.0.0: - resolution: {integrity: sha512-yS+Q5i3hBf7GBkd4KG8a7eBNNWNGLTaEwwYWUijIYM7zrlYDM0BFXHjjPWlWZ1Rg7UaddZeIDmi9jF3HmqiQ2w==} - engines: {node: '>=6.0.0'} - dom-serializer@1.4.1: resolution: {integrity: sha512-VHwB3KfrcOOkelEG2ZOfxqLZdfkil8PtJi4P8N2MMXucZq2yLp75ClViUlOVwyoHEDjYU433Aq+5zWP61+RGag==} @@ -1734,8 +2039,8 @@ packages: eastasianwidth@0.2.0: resolution: {integrity: sha512-I88TYZWc9XiYHRQ4/3c5rjjfgkjhLyW2luGIheGERbNQ6OY7yTybanSpDXZa8y7VUP9YmDcYa+eyq4ca7iLqWA==} - electron-to-chromium@1.4.756: - resolution: {integrity: sha512-RJKZ9+vEBMeiPAvKNWyZjuYyUqMndcP1f335oHqn3BEQbs2NFtVrnK5+6Xg5wSM9TknNNpWghGDUCKGYF+xWXw==} + electron-to-chromium@1.5.32: + resolution: {integrity: sha512-M+7ph0VGBQqqpTT2YrabjNKSQ2fEl9PVx6AK3N558gDH9NO8O6XN9SXXFWRo9u9PbEg/bWq+tjXQr+eXmxubCw==} emoji-regex@8.0.0: resolution: {integrity: sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==} @@ -1746,6 +2051,10 @@ packages: encoding@0.1.13: resolution: {integrity: sha512-ETBauow1T35Y/WZMkio9jiM0Z5xjHHmJ4XmjZOq1l/dXz3lr2sRn87nJy20RupqSh1F2m3HHPSp8ShIPQJrJ3A==} + enhanced-resolve@5.17.1: + resolution: {integrity: sha512-LMHl3dXhTcfv8gM4kEzIUeTQ+7fpdA0l2tUf34BddXPkz2A5xJ5L/Pchd5BL6rdccM9QGvu0sWZzK1Z1t4wwyg==} + engines: {node: '>=10.13.0'} + entities@2.2.0: resolution: {integrity: sha512-p92if5Nz619I0w+akJrLZH0MX0Pb5DX39XOwQTtXSdQQOaYH03S1uIQp4mhOZtAXrxq4ViO67YTiLBo2638o9A==} @@ -1775,6 +2084,21 @@ packages: resolution: {integrity: sha512-Zf5H2Kxt2xjTvbJvP2ZWLEICxA6j+hAmMzIlypy4xcBg1vKVnx89Wy0GbS+kf5cwCVFFzdCFh2XSCFNULS6csw==} engines: {node: '>= 0.4'} + es-file-traverse@1.2.0: + resolution: {integrity: sha512-G59o/To5LWS6lJZPaIQ7dOoACb63+2bEv3m6LfmCcYR8zKEah+Bqd34yRc9lubI12syliPpHvWCDrtug6s5Z2g==} + engines: {node: '>=14.0.0'} + hasBin: true + + es-get-iterator@1.1.3: + resolution: {integrity: sha512-sPZmqHBe6JIiTfN5q2pEi//TwxmAFHwj/XEuYjTuse78i8KxaqMTTzxPoFKuzRpDpTJ+0NAbpfenkmH2rePtuw==} + + es-iterator-helpers@1.0.19: + resolution: {integrity: sha512-zoMwbCcH5hwUkKJkT8kDIBZSz9I6mVG//+lDCinLCGov4+r7NIy0ld8o03M0cJxl2spVf6ESYVS6/gpIfq1FFw==} + engines: {node: '>= 0.4'} + + es-module-lexer@1.5.4: + resolution: {integrity: sha512-MVNK56NiMrOwitFB7cqDwq0CQutbw+0BvLshJSse0MUNU+y1FC3bUS/AQg7oUng+/wKrrki7JfmwtVHkVfPLlw==} + es-object-atoms@1.0.0: resolution: {integrity: sha512-MZ4iQ6JwHOBQjahnjwaC1ZtIBH+2ohjamzAO3oaHcXYup7qxjF2fixyH+Q71voWHeOkI2q/TnJao/KfXYIZWbw==} engines: {node: '>= 0.4'} @@ -1808,6 +2132,10 @@ packages: resolution: {integrity: sha512-ErCHMCae19vR8vQGe50xIsVomy19rg6gFu3+r3jkEO46suLMWBksvVyoGgQV+jOfl84ZSOSlmv6Gxa89PmTGmA==} engines: {node: '>=6'} + escalade@3.2.0: + resolution: {integrity: sha512-WUj2qlxaQtO4g6Pq5c29GTcWGDyd8itL8zTlipgECz3JesAiiOKotd8JU6otB3PACgG6xkJUyVhboMS+bje/jA==} + engines: {node: '>=6'} + escape-goat@4.0.0: resolution: {integrity: sha512-2Sd4ShcWxbx6OY1IHyla/CVNwvg7XwZVoXZHcSu9w9SReNP1EzzD5T8NWKIR38fIqEns9kDWKUQTXXAmlDrdPg==} engines: {node: '>=12'} @@ -1820,48 +2148,40 @@ packages: resolution: {integrity: sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA==} engines: {node: '>=10'} + escape-string-regexp@5.0.0: + resolution: {integrity: sha512-/veY75JbMK4j1yjvuUxuVsiS/hr/4iHs9FTT6cgTexxdE0Ly/glccBAkloH/DofkjRbZU3bnoj38mOmhkZ0lHw==} + engines: {node: '>=12'} + eslint-compat-utils@0.5.0: resolution: {integrity: sha512-dc6Y8tzEcSYZMHa+CMPLi/hyo1FzNeonbhJL7Ol0ccuKQkwopJcJBA9YL/xmMTLU1eKigXo9vj9nALElWYSowg==} engines: {node: '>=12'} peerDependencies: eslint: '>=6.0.0' - eslint-config-ash-nazg@35.4.0: - resolution: {integrity: sha512-XBiklVjihkN2spXkNOtSB5gfIpVhl3VCMyFffvz1VWOmMG6k2+HPHm3YrsLzHE35xPjmCFhHfuos1UIl9SlR8g==} - engines: {node: '>=14.19.1'} + eslint-config-ash-nazg@36.19.0: + resolution: {integrity: sha512-ZQAewwE5I3RjwT/nWXFNjr0E42OW9FHjtqpFNWBtlhfGiw955caTbUglcjmMRC/j2AJmWx45Vq4wllQNdJ7G2A==} + engines: {node: '>=18.20.3'} peerDependencies: - '@brettz9/eslint-plugin': ^1.0.4 - '@stylistic/eslint-plugin': ^1.6.0 - eslint: ^8.56.0 - eslint-config-standard: ^17.1.0 - eslint-plugin-array-func: ^4.0.0 - eslint-plugin-compat: ^4.2.0 - eslint-plugin-eslint-comments: ^3.2.0 - eslint-plugin-html: ^7.1.0 - eslint-plugin-import: ^2.29.1 - eslint-plugin-jsdoc: ^48.0.6 - eslint-plugin-markdown: ^3.0.1 - eslint-plugin-n: ^16.6.2 - eslint-plugin-no-unsanitized: ^4.0.2 - eslint-plugin-no-use-extend-native: ^0.5.0 - eslint-plugin-promise: ^6.1.1 - eslint-plugin-sonarjs: ^0.23.0 - eslint-plugin-unicorn: ^51.0.1 - - eslint-config-standard@17.1.0: - resolution: {integrity: sha512-IwHwmaBNtDK4zDHQukFDW5u/aTb8+meQWZvNFWkiGmbWjD6bqyuSSBxxXKkCftCUzc1zwCH2m/baCNDLGmuO5Q==} - engines: {node: '>=12.0.0'} - peerDependencies: - eslint: ^8.0.1 - eslint-plugin-import: ^2.25.2 - eslint-plugin-n: '^15.0.0 || ^16.0.0 ' - eslint-plugin-promise: ^6.0.0 + eslint: ^9.6.0 eslint-import-resolver-node@0.3.9: resolution: {integrity: sha512-WFj2isz22JahUv+B788TlO3N6zL3nNJGU8CcZbPZvVEkBPaJdCV4vy5wyghty5ROFbCRnm132v8BScu5/1BQ8g==} - eslint-module-utils@2.8.1: - resolution: {integrity: sha512-rXDXR3h7cs7dy9RNpUlQf80nX31XWJEyGq1tRMo+6GsO5VmTe4UTwtmonAD4ZkAsrfMVDA2wlGJ3790Ys+D49Q==} + eslint-import-resolver-typescript@3.6.3: + resolution: {integrity: sha512-ud9aw4szY9cCT1EWWdGv1L1XR6hh2PaRWif0j2QjQ0pgTY/69iw+W0Z4qZv5wHahOl8isEr+k/JnyAqNQkLkIA==} + engines: {node: ^14.18.0 || >=16.0.0} + peerDependencies: + eslint: '*' + eslint-plugin-import: '*' + eslint-plugin-import-x: '*' + peerDependenciesMeta: + eslint-plugin-import: + optional: true + eslint-plugin-import-x: + optional: true + + eslint-module-utils@2.12.0: + resolution: {integrity: sha512-wALZ0HFoytlyh/1+4wuZ9FJCD/leWHQzzrxJ8+rebyReSLk7LApMyd3WJaLVoN+D5+WIdJyDK1c6JnE65V4Zyg==} engines: {node: '>=4'} peerDependencies: '@typescript-eslint/parser': '*' @@ -1881,29 +2201,59 @@ packages: eslint-import-resolver-webpack: optional: true - eslint-plugin-array-func@4.0.0: - resolution: {integrity: sha512-p3NY2idNIvgmQLF2/62ZskYt8gOuUgQ51smRc3Lh7FtSozpNc2sg+lniz9VaCagLZHEZTl8qGJKqE7xy8O/D/g==} - engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} - peerDependencies: - eslint: '>=8.40.0' + eslint-module-utils@2.8.1: + resolution: {integrity: sha512-rXDXR3h7cs7dy9RNpUlQf80nX31XWJEyGq1tRMo+6GsO5VmTe4UTwtmonAD4ZkAsrfMVDA2wlGJ3790Ys+D49Q==} + engines: {node: '>=4'} + peerDependencies: + '@typescript-eslint/parser': '*' + eslint: '*' + eslint-import-resolver-node: '*' + eslint-import-resolver-typescript: '*' + eslint-import-resolver-webpack: '*' + peerDependenciesMeta: + '@typescript-eslint/parser': + optional: true + eslint: + optional: true + eslint-import-resolver-node: + optional: true + eslint-import-resolver-typescript: + optional: true + eslint-import-resolver-webpack: + optional: true + + eslint-plugin-array-func@5.0.2: + resolution: {integrity: sha512-iyLex2+pTcxHZ6OLL80oMy+CtffpJ9j6A/57VQi1VN5bK1IS/0o+mWvezDHeAlwXjn6ksRO9L5SGU329BBuY8A==} + engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} + peerDependencies: + eslint: '>=8.51.0' + + eslint-plugin-chai-expect-keywords@3.1.0: + resolution: {integrity: sha512-0RccqS5zfNFnwomz2OhpaIaK/Z5f0RypBiR4Va+nTo1QncPHQC2YxQk+IbHb3SY4Lj4hToQ9IXejzZSqF0Ae9A==} + engines: {node: '>=18.18.0'} - eslint-plugin-chai-expect@3.0.0: - resolution: {integrity: sha512-NS0YBcToJl+BRKBSMCwRs/oHJIX67fG5Gvb4tGked+9Wnd1/PzKijd82B2QVKcSSOwRe+pp4RAJ2AULeck4eQw==} - engines: {node: 10.* || 12.* || >= 14.*} + eslint-plugin-chai-expect@3.1.0: + resolution: {integrity: sha512-a9F8b38hhJsR7fgDEfyMxppZXCnCW6OOHj7cQfygsm9guXqdSzfpwrHX5FT93gSExDqD71HQglF1lLkGBwhJ+g==} + engines: {node: 10.* || 12.* || || 14.* || 16.* || >= 18.*} peerDependencies: - eslint: '>=2.0.0 <= 8.x' + eslint: '>=2.0.0 <= 9.x' - eslint-plugin-chai-friendly@0.7.4: - resolution: {integrity: sha512-PGPjJ8diYgX1mjLxGJqRop2rrGwZRKImoEOwUOgoIhg0p80MkTaqvmFLe5TF7/iagZHggasvIfQlUyHIhK/PYg==} + eslint-plugin-chai-friendly@1.0.1: + resolution: {integrity: sha512-dxD/uz1YKJ8U4yah1i+V/p/u+kHRy3YxTPe2nJGqb5lCR+ucan/KIexfZ5+q4X+tkllyMe86EBbAkdlwxNy3oQ==} engines: {node: '>=0.10.0'} peerDependencies: eslint: '>=3.0.0' - eslint-plugin-compat@4.2.0: - resolution: {integrity: sha512-RDKSYD0maWy5r7zb5cWQS+uSPc26mgOzdORJ8hxILmWM7S/Ncwky7BcAtXVY5iRbKjBdHsWU8Yg7hfoZjtkv7w==} - engines: {node: '>=14.x'} + eslint-plugin-compat@6.0.1: + resolution: {integrity: sha512-0MeIEuoy8kWkOhW38kK8hU4vkb6l/VvyjpuYDymYOXmUY9NvTgyErF16lYuX+HPS5hkmym7lfA+XpYZiWYWmYA==} + engines: {node: '>=18.x'} peerDependencies: - eslint: ^4.0.0 || ^5.0.0 || ^6.0.0 || ^7.0.0 || ^8.0.0 + eslint: ^4.0.0 || ^5.0.0 || ^6.0.0 || ^7.0.0 || ^8.0.0 || ^9.0.0 + + eslint-plugin-cypress@3.5.0: + resolution: {integrity: sha512-JZQ6XnBTNI8h1B9M7wJSFzc48SYbh7VMMKaNTQOFa3BQlnmXPrVc4PKen8R+fpv6VleiPeej6VxloGb42zdRvw==} + peerDependencies: + eslint: '>=7' eslint-plugin-es-x@7.6.0: resolution: {integrity: sha512-I0AmeNgevgaTR7y2lrVCJmGYF0rjoznpDvqV/kIkZSZbZ8Rw3eu4cGlvBBULScfkSOCzqKbff5LR4CNrV7mZHA==} @@ -1911,87 +2261,142 @@ packages: peerDependencies: eslint: '>=8' - eslint-plugin-eslint-comments@3.2.0: - resolution: {integrity: sha512-0jkOl0hfojIHHmEHgmNdqv4fmh7300NdpA9FFpF7zaoLvB/QeXOGNLIo86oAveJFrfB1p05kC8hpEMHM8DwWVQ==} - engines: {node: '>=6.5.0'} + eslint-plugin-escompat@3.11.3: + resolution: {integrity: sha512-Gz/eTJzl7fK9SPBkvB3t+xc1iribxRc5Fgu6Z7206b5q1d7kG0t8Drtin8MRY4UgGBg8Zu1HG6RGzR35LCUpLA==} peerDependencies: - eslint: '>=4.19.1' + eslint: '>=5.14.1' - eslint-plugin-html@7.1.0: - resolution: {integrity: sha512-fNLRraV/e6j8e3XYOC9xgND4j+U7b1Rq+OygMlLcMg+wI/IpVbF+ubQa3R78EjKB9njT6TQOlcK5rFKBVVtdfg==} + eslint-plugin-html@8.1.2: + resolution: {integrity: sha512-pbRchDV2SmqbCi/Ev/q3aAikzG9BcFe0IjjqjtMn8eTLq71ZUggyJB6CDmuwGAXmYZHrXI12XTfCqvgcnPRqGw==} + engines: {node: '>=16.0.0'} - eslint-plugin-import@2.29.1: - resolution: {integrity: sha512-BbPC0cuExzhiMo4Ff1BTVwHpjjv28C5R+btTOGaCRC7UEz801up0JadwkeSk5Ued6TG34uaczuVuH6qyy5YUxw==} + eslint-plugin-import@2.31.0: + resolution: {integrity: sha512-ixmkI62Rbc2/w8Vfxyh1jQRTdRTF52VxwRVHl/ykPAmqG+Nb7/kNn+byLP0LxPgI7zWA16Jt82SybJInmMia3A==} engines: {node: '>=4'} peerDependencies: '@typescript-eslint/parser': '*' - eslint: ^2 || ^3 || ^4 || ^5 || ^6 || ^7.2.0 || ^8 + eslint: ^2 || ^3 || ^4 || ^5 || ^6 || ^7.2.0 || ^8 || ^9 peerDependenciesMeta: '@typescript-eslint/parser': optional: true - eslint-plugin-jsdoc@48.2.3: - resolution: {integrity: sha512-r9DMAmFs66VNvNqRLLjHejdnJtILrt3xGi+Qx0op0oRfFGVpOR1Hb3BC++MacseHx93d8SKYPhyrC9BS7Os2QA==} + eslint-plugin-jsdoc@50.3.1: + resolution: {integrity: sha512-SY9oUuTMr6aWoJggUS40LtMjsRzJPB5ZT7F432xZIHK3EfHF+8i48GbUBpwanrtlL9l1gILNTHK9o8gEhYLcKA==} engines: {node: '>=18'} peerDependencies: eslint: ^7.0.0 || ^8.0.0 || ^9.0.0 - eslint-plugin-markdown@3.0.1: - resolution: {integrity: sha512-8rqoc148DWdGdmYF6WSQFT3uQ6PO7zXYgeBpHAOAakX/zpq+NvFYbDA/H7PYzHajwtmaOzAwfxyl++x0g1/N9A==} - engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} + eslint-plugin-jsx-a11y@6.10.0: + resolution: {integrity: sha512-ySOHvXX8eSN6zz8Bywacm7CvGNhUtdjvqfQDVe6020TUK34Cywkw7m0KsCCk1Qtm9G1FayfTN1/7mMYnYO2Bhg==} + engines: {node: '>=4.0'} peerDependencies: - eslint: ^6.0.0 || ^7.0.0 || ^8.0.0 + eslint: ^3 || ^4 || ^5 || ^6 || ^7 || ^8 || ^9 - eslint-plugin-n@16.6.2: - resolution: {integrity: sha512-6TyDmZ1HXoFQXnhCTUjVFULReoBPOAjpuiKELMkeP40yffI/1ZRO+d9ug/VC6fqISo2WkuIBk3cvuRPALaWlOQ==} - engines: {node: '>=16.0.0'} + eslint-plugin-mocha-cleanup@1.11.3: + resolution: {integrity: sha512-LL4yt52+asxZmeqU6Ypr5XxN6CzJTKxu/YsbHEr0L/pArcS/acn49nNfrJluRSJ8N9MD1mtuI/V1jEfjPzQ1qQ==} + engines: {node: '>=8.0.0'} + peerDependencies: + eslint: '>=0.8.0' + + eslint-plugin-mocha@10.5.0: + resolution: {integrity: sha512-F2ALmQVPT1GoP27O1JTZGrV9Pqg8k79OeIuvw63UxMtQKREZtmkK1NFgkZQ2TW7L2JSSFKHFPTtHu5z8R9QNRw==} + engines: {node: '>=14.0.0'} peerDependencies: eslint: '>=7.0.0' - eslint-plugin-no-unsanitized@4.0.2: - resolution: {integrity: sha512-Pry0S9YmHoz8NCEMRQh7N0Yexh2MYCNPIlrV52hTmS7qXnTghWsjXouF08bgsrrZqaW9tt1ZiK3j5NEmPE+EjQ==} + eslint-plugin-n@17.10.3: + resolution: {integrity: sha512-ySZBfKe49nQZWR1yFaA0v/GsH6Fgp8ah6XV0WDz6CN8WO0ek4McMzb7A2xnf4DCYV43frjCygvb9f/wx7UUxRw==} + engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} peerDependencies: - eslint: ^6 || ^7 || ^8 + eslint: '>=8.23.0' - eslint-plugin-no-use-extend-native@0.5.0: - resolution: {integrity: sha512-dBNjs8hor8rJgeXLH4HTut5eD3RGWf9JUsadIfuL7UosVQ/dnvOKwxEcRrXrFxrMZ8llUVWT+hOimxJABsAUzQ==} - engines: {node: '>=6.0.0'} + eslint-plugin-no-unsanitized@4.1.2: + resolution: {integrity: sha512-ydF3PMFKEIkP71ZbLHFvu6/FW8SvRv6VV/gECfrQkqyD5+5oCAtPz8ZHy0GRuMDtNe2jsNdPCQXX4LSbkapAVQ==} + peerDependencies: + eslint: ^8 || ^9 - eslint-plugin-promise@6.1.1: - resolution: {integrity: sha512-tjqWDwVZQo7UIPMeDReOpUgHCmCiH+ePnVT+5zVapL0uuHnegBUs2smM13CzOs2Xb5+MHMRFTs9v24yjba4Oig==} - engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} + eslint-plugin-no-use-extend-native@0.7.2: + resolution: {integrity: sha512-hUBlwaTXIO1GzTwPT6pAjvYwmSHe4XduDhAiQvur4RUujmBUFjd8Nb2+e7WQdsQ+nGHWGRlogcUWXJRGqizTWw==} + engines: {node: '>=18.18.0'} peerDependencies: - eslint: ^7.0.0 || ^8.0.0 + eslint: ^9.3.0 - eslint-plugin-sonarjs@0.23.0: - resolution: {integrity: sha512-z44T3PBf9W7qQ/aR+NmofOTyg6HLhSEZOPD4zhStqBpLoMp8GYhFksuUBnCxbnf1nfISpKBVkQhiBLFI/F4Wlg==} - engines: {node: '>=14'} + eslint-plugin-promise@7.1.0: + resolution: {integrity: sha512-8trNmPxdAy3W620WKDpaS65NlM5yAumod6XeC4LOb+jxlkG4IVcp68c6dXY2ev+uT4U1PtG57YDV6EGAXN0GbQ==} + engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} + peerDependencies: + eslint: ^7.0.0 || ^8.0.0 || ^9.0.0 + + eslint-plugin-react-hooks@4.6.2: + resolution: {integrity: sha512-QzliNJq4GinDBcD8gPB5v0wh6g8q3SUi6EFF0x8N/BL9PoVs0atuGc47ozMRyOWAKdwaZ5OnbOEa3WR+dSGKuQ==} + engines: {node: '>=10'} peerDependencies: - eslint: ^5.0.0 || ^6.0.0 || ^7.0.0 || ^8.0.0 + eslint: ^3.0.0 || ^4.0.0 || ^5.0.0 || ^6.0.0 || ^7.0.0 || ^8.0.0-0 - eslint-plugin-standard@4.1.0: - resolution: {integrity: sha512-ZL7+QRixjTR6/528YNGyDotyffm5OQst/sGxKDwGb9Uqs4In5Egi4+jbobhqJoyoCM6/7v/1A5fhQ7ScMtDjaQ==} + eslint-plugin-react@7.37.1: + resolution: {integrity: sha512-xwTnwDqzbDRA8uJ7BMxPs/EXRB3i8ZfnOIp8BsxEQkT0nHPp+WWceqGgo6rKb9ctNi8GJLDT4Go5HAWELa/WMg==} + engines: {node: '>=4'} peerDependencies: - eslint: '>=5.0.0' + eslint: ^3 || ^4 || ^5 || ^6 || ^7 || ^8 || ^9.7 - eslint-plugin-unicorn@50.0.1: - resolution: {integrity: sha512-KxenCZxqSYW0GWHH18okDlOQcpezcitm5aOSz6EnobyJ6BIByiPDviQRjJIUAjG/tMN11958MxaQ+qCoU6lfDA==} - engines: {node: '>=16'} + eslint-plugin-sonarjs@2.0.3: + resolution: {integrity: sha512-Xsy+x5xNxc/h+M/B2s8XMPoKw0o4gUL0cqT8gl6SiEtA6qKX6/SlOjj4Avp7bT7UIguHbjKv/RACy3AxIGOvwA==} + peerDependencies: + eslint: ^8.0.0 || ^9.0.0 + + eslint-plugin-unicorn@55.0.0: + resolution: {integrity: sha512-n3AKiVpY2/uDcGrS3+QsYDkjPfaOrNrsfQxU9nt5nitd9KuvVXrfAvgCO9DYPSfap+Gqjw9EOrXIsBp5tlHZjA==} + engines: {node: '>=18.18'} peerDependencies: eslint: '>=8.56.0' + eslint-rule-composer@0.3.0: + resolution: {integrity: sha512-bt+Sh8CtDmn2OajxvNO+BX7Wn4CIWMpTRm3MaiKPCQcnnlm0CS2mhui6QaoeQugs+3Kj2ESKEEGJUdVafwhiCg==} + engines: {node: '>=4.0.0'} + + eslint-scope@5.1.1: + resolution: {integrity: sha512-2NxwbF/hZ0KpepYN0cNbo+FN6XoK7GaHlQhgx/hIZl6Va0bF45RQOOwhLIy8lQDbuCiadSLCBnH2CFYquit5bw==} + engines: {node: '>=8.0.0'} + eslint-scope@7.2.2: resolution: {integrity: sha512-dOt21O7lTMhDM+X9mB4GX+DZrZtCUJPL/wlcTqxyrx5IvO0IYtILdtrQGQp+8n5S0gwSVmOf9NQrjMOgfQZlIg==} engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} + eslint-scope@8.0.2: + resolution: {integrity: sha512-6E4xmrTw5wtxnLA5wYL3WDfhZ/1bUBGOXV0zQvVRDOtrR8D0p6W7fs3JweNYhwRYeGvd/1CKX2se0/2s7Q/nJA==} + engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} + + eslint-scope@8.1.0: + resolution: {integrity: sha512-14dSvlhaVhKKsa9Fx1l8A17s7ah7Ef7wCakJ10LYk6+GYmP9yDti2oq2SEwcyndt6knfcZyhyxwY3i9yL78EQw==} + engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} + + eslint-utils@3.0.0: + resolution: {integrity: sha512-uuQC43IGctw68pJA1RgbQS8/NP7rch6Cwd4j3ZBtgo4/8Flj4eGE7ZYSZRN3iq5pVUv6GPdW5Z1RFleo84uLDA==} + engines: {node: ^10.0.0 || ^12.0.0 || >= 14.0.0} + peerDependencies: + eslint: '>=5' + + eslint-visitor-keys@2.1.0: + resolution: {integrity: sha512-0rSmRBzXgDzIsD6mGdJgevzgezI534Cer5L/vyMX0kHzT/jiB43jRhd9YUlMGYLQy2zprNmoT8qasCGtY+QaKw==} + engines: {node: '>=10'} + eslint-visitor-keys@3.4.3: resolution: {integrity: sha512-wpc+LXeiyiisxPlEkUzU6svyS1frIO3Mgxj1fdy7Pm8Ygzguax2N3Fa/D/ag1WqbOprdI+uY6wMUl8/a2G+iag==} engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} - eslint@8.57.0: - resolution: {integrity: sha512-dZ6+mexnaTIbSBZWgou51U6OmzIhYM2VcNdtiTtI7qPNZm35Akpr0f6vtw3w1Kmn5PYo+tZVfh13WrhpS6oLqQ==} - engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} + eslint-visitor-keys@4.1.0: + resolution: {integrity: sha512-Q7lok0mqMUSf5a/AdAZkA5a/gHcO6snwQClVNNvFKCAVlxXucdU8pKydU5ZVZjBx5xr37vGbFFWtLQYreLzrZg==} + engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} + + eslint@9.12.0: + resolution: {integrity: sha512-UVIOlTEWxwIopRL1wgSQYdnVDcEvs2wyaO6DGo5mXqe3r16IoCNWkR29iHhyaP4cICWjbgbmFUGAhh0GJRuGZw==} + engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} hasBin: true + peerDependencies: + jiti: '*' + peerDependenciesMeta: + jiti: + optional: true esniff@1.1.3: resolution: {integrity: sha512-SLBLpfE7xWgF/HbzhVuAwqnJDRqSCNZqcqaIMVm+f+PbTp1kFRWu6BuT83SATb4Tp+ovr+S+u7vDH7/UErAOkw==} @@ -2001,6 +2406,10 @@ packages: resolution: {integrity: sha512-kTUIGKQ/mDPFoJ0oVfcmyJn4iBDRptjNVIzwIFR7tqWXdVI9xfA2RMwY/gbSpJG3lkdWNEjLap/NqVHZiJsdfg==} engines: {node: '>=0.10'} + espree@10.2.0: + resolution: {integrity: sha512-upbkBJbckcCNBDBDXEbuhjbP68n+scUd3k/U2EkyM9nw+I/jPiL4cLF/Al06CF96wRltFda16sxDFrxsI1v0/g==} + engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} + espree@9.6.1: resolution: {integrity: sha512-oruZaFkjorTpF32kDSI5/75ViwGeZginGGy2NoOSg3Q9bnwlnmDm4HLnkl0RE3n+njDXR037aY1+x58Z/zFdwQ==} engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} @@ -2014,10 +2423,18 @@ packages: resolution: {integrity: sha512-YQLXUplAwJgCydQ78IMJywZCceoqk1oH01OERdSAJc/7U2AylwjhSCLDEtqwg811idIS/9fIU5GjG73IgjKMVg==} engines: {node: '>=0.10'} + esquery@1.6.0: + resolution: {integrity: sha512-ca9pw9fomFcKPvFLXhBKUK90ZvGibiGOvRJNbjljY7s7uq/5YO4BOzcYtJqExdx99rF6aAcnRxHmcUHcz6sQsg==} + engines: {node: '>=0.10'} + esrecurse@4.3.0: resolution: {integrity: sha512-KmfKL3b6G+RXvP8N1vr3Tq1kL/oCFgn2NYXEtqP8/L3pKapUA4G8cFVaoF3SU323CD4XypR/ffioHmkti6/Tag==} engines: {node: '>=4.0'} + estraverse@4.3.0: + resolution: {integrity: sha512-39nnKffWz8xN1BU/2c79n9nB9HDzo0niYUqx6xyqUnyoAnQyyWpOTdZEeiCch8BBu515t4wp9ZmgVfVhn9EBpw==} + engines: {node: '>=4.0'} + estraverse@5.3.0: resolution: {integrity: sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==} engines: {node: '>=4.0'} @@ -2032,9 +2449,17 @@ packages: event-emitter@0.3.5: resolution: {integrity: sha512-D9rRn9y7kLPnJ+hMq7S/nhvoKwwvVJahBi2BPmx3bvbsEdK3W9ii8cBSGjP+72/LnM4n6fo3+dkCX5FeTQruXA==} + event-target-shim@5.0.1: + resolution: {integrity: sha512-i/2XbnSz/uxRCU6+NdVJgKWDTM427+MqYbkQzD321DuCQJUqOuJKIA0IM2+W2xtYHdKOmZ4dR6fExsd4SXL+WQ==} + engines: {node: '>=6'} + eventemitter3@4.0.7: resolution: {integrity: sha512-8guHBZCwKnFhYdHr2ysuRWErTwhoN2X8XELRlrRwpmfeY2jjuUN4taQMsULKUVo1K4DvZl+0pgfyoysHxvmvEw==} + events@3.3.0: + resolution: {integrity: sha512-mQw+2fkQbALzQ7V0MY0IqdnXNOeTtP4r0lN9z7AAawCXgqea7bDii20AYrIBrFd/Hx0M2Ocz6S111CaFkUcb0Q==} + engines: {node: '>=0.8.x'} + exponential-backoff@3.1.1: resolution: {integrity: sha512-dX7e/LHVJ6W3DE1MHWi9S1EYzDESENfLrYohG2G++ovZrYOkm4Knwa0mc1cn84xJOR4KEU0WSchhLbd0UklbHw==} @@ -2057,9 +2482,12 @@ packages: fastq@1.17.1: resolution: {integrity: sha512-sRVD3lWVIXWg6By68ZN7vho9a1pQcN/WBFaAAsDDFzlJjvoGx0P8z7V1t72grFJfJhu3YPZBuu25f7Kaw2jN1w==} - file-entry-cache@6.0.1: - resolution: {integrity: sha512-7Gps/XWymbLk2QLYK4NzpMOrYjMhdIxXuIvy2QBsLE6ljuodKvdkWs/cpyJJ3CVIVpH0Oi1Hvg1ovbMzLdFBBg==} - engines: {node: ^10.12.0 || >=12.0.0} + file-entry-cache@8.0.0: + resolution: {integrity: sha512-XXTUwCvisa5oacNGRP9SfNtYBNAMi+RPwBFmblZEF7N7swHYQS6/Zfk7SRwx4D5j3CH211YNRco1DEMNVfZCnQ==} + engines: {node: '>=16.0.0'} + + file-fetch@2.0.0: + resolution: {integrity: sha512-zNBKfKZThjf5354uAcfXPMfxwDBiyZluznykkZc1HmMjP3IKKqAydDpDj7MO9oeUD0rVjqyuqhDjDi10blpwRA==} file-type@18.7.0: resolution: {integrity: sha512-ihHtXRzXEziMrQ56VSgU7wkxh55iNchFkosu7Y9/S+tXHdKyrGjVK0ujbqNnsxzea+78MaLhN6PGmfYSAv1ACw==} @@ -2069,6 +2497,9 @@ packages: resolution: {integrity: sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==} engines: {node: '>=8'} + find-package-json@1.2.0: + resolution: {integrity: sha512-+SOGcLGYDJHtyqHd87ysBhmaeQ95oWspDKnMXBrnQ9Eq4OkLNqejgoaD8xVWu6GPa0B6roa6KinCMEMcVeqONw==} + find-replace@3.0.0: resolution: {integrity: sha512-6Tb2myMioCAgv5kfvP5/PkZZ/ntTpVK39fHY7WkWBgvbeE+VHd/tZuZ4mrC+bxh4cfOZeYKVPaJIZtZXV7GNCQ==} engines: {node: '>=4.0.0'} @@ -2081,9 +2512,9 @@ packages: resolution: {integrity: sha512-78/PXT1wlLLDgTzDs7sjq9hzz0vXD+zn+7wypEe4fXQxCmdmqfGsEPQxmiCSQI3ajFV91bVSsvNtrJRiW6nGng==} engines: {node: '>=10'} - flat-cache@3.2.0: - resolution: {integrity: sha512-CYcENa+FtcUKLmhhqyctpclsq7QF38pKjZHsGNiSQF5r4FtoKDWabFDl3hzaEQMvT1LHEysw5twgLvpYYb4vbw==} - engines: {node: ^10.12.0 || >=12.0.0} + flat-cache@4.0.1: + resolution: {integrity: sha512-f7ccFPK3SXFHpx15UIGyRJ/FJQctuKZ0zVuN3frBo4HnK3cay9VEW0R6yPYFHC0AgqhukPzKjq22t5DmAyqGyw==} + engines: {node: '>=16'} flat@5.0.2: resolution: {integrity: sha512-b6suED+5/3rTpUBdG1gupIl8MPFCAMA0QXwmljLhvCUKcUvdE4gWky9zpuGCcXHOsz4J9wPGNWq6OKpmIzz3hQ==} @@ -2135,6 +2566,9 @@ packages: resolution: {integrity: sha512-Z5kx79swU5P27WEayXM1tBi5Ze/lbIyiNgU3qyXUOf9b2rgXYyF9Dy9Cx+IQv/Lc8WCG6L82zwUPpSS9hGehIg==} engines: {node: '>= 0.4'} + functional-red-black-tree@1.0.1: + resolution: {integrity: sha512-dsKNQNdj6xA3T+QlADDA7mOSlX0qiMINjn0cgr+eGHGsbSHzTabcIogz2+p/iqP1Xs6EP/sS2SbqH+brGTbq0g==} + functions-have-names@1.2.3: resolution: {integrity: sha512-xckBUXyTIqT97tq2x2AMb+g163b5JFysYk0x4qxNFwbfQkmNZoiRHb6sPzI9/QV33WeuvVYBUIiD4NzNIyqaRQ==} @@ -2165,9 +2599,9 @@ packages: resolution: {integrity: sha512-pjzuKtY64GYfWizNAJ0fr9VqttZkNiK2iS430LtIHzjBEr6bX8Am2zm4sW4Ro5wjWW5cAlRL1qAMTcXbjNAO2Q==} engines: {node: '>=8.0.0'} - get-set-props@0.1.0: - resolution: {integrity: sha512-7oKuKzAGKj0ag+eWZwcGw2fjiZ78tXnXQoBgY0aU7ZOxTu4bB7hSuQSDgtKy978EDH062P5FmD2EWiDpQS9K9Q==} - engines: {node: '>=0.10.0'} + get-set-props@0.2.0: + resolution: {integrity: sha512-YCmOj+4YAeEB5Dd9jfp6ETdejMet4zSxXjNkgaa4npBEKRI9uDOGB5MmAdAgi2OoFGAKshYhCbmLq2DS03CgVA==} + engines: {node: '>=18.0.0'} get-stdin@9.0.0: resolution: {integrity: sha512-dVKBjfWisLAicarI2Sf+JuBE/DghV4UzNAVe9yhEJuzeREd3JhOTE9cUaJTeSa77fsbQUK3pcOpJfM59+VKZaA==} @@ -2184,6 +2618,9 @@ packages: get-tsconfig@4.7.3: resolution: {integrity: sha512-ZvkrzoUA0PQZM6fy6+/Hce561s+faD1rsNwhnO5FelNjyy7EMGJ3Rz1AQ8GYDWjhRs/7dBLOEJvhK8MiEJOAFg==} + get-tsconfig@4.8.1: + resolution: {integrity: sha512-k9PN+cFBmaLWtVz29SkUoqU5O0slLuHJXt/2P+tMVFT+phsSGXGkp9t3rQIqdz0e+06EHNGs3oM6ZX1s2zHxRg==} + glob-parent@5.1.2: resolution: {integrity: sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==} engines: {node: '>= 6'} @@ -2197,6 +2634,10 @@ packages: engines: {node: '>=16 || 14 >=14.17'} hasBin: true + glob@10.4.5: + resolution: {integrity: sha512-7Bv8RF0k6xjo7d4A/PxYLbUCfb6c+Vpd2/mB2yRDlew7Jb5hEXiCD9ibfO7wpk8i4sevK6DFny9h7EYbM3/sHg==} + hasBin: true + glob@7.2.3: resolution: {integrity: sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==} @@ -2216,6 +2657,14 @@ packages: resolution: {integrity: sha512-AhO5QUcj8llrbG09iWhPU2B204J1xnPeL8kQmVorSsy+Sjj1sk8gIyh6cUocGmH4L0UuhAJy+hJMRA4mgA4mFQ==} engines: {node: '>=8'} + globals@14.0.0: + resolution: {integrity: sha512-oahGvuMGQlPw/ivIYBjVSrWAfWLBeku5tpPE2fOPLi+WHffIWbuh2tCjhyQhTBPMf5E9jDEH4FOmTYgYwbKwtQ==} + engines: {node: '>=18'} + + globals@15.10.0: + resolution: {integrity: sha512-tqFIbz83w4Y5TCbtgjZjApohbuh7K9BxGYFm7ifwDR240tvdb7P9x+/9VvUKlmkPoiknoJtanI8UOrqxS3a7lQ==} + engines: {node: '>=18'} + globalthis@1.0.4: resolution: {integrity: sha512-DpLKbNU4WylpxJykQujfCcwYWiV/Jhm50Goo0wrVILAv5jOr9d+H+UR3PhSCD2rCCEIg0uc+G+muBTwD54JhDQ==} engines: {node: '>= 0.4'} @@ -2224,6 +2673,10 @@ packages: resolution: {integrity: sha512-jhIXaOzy1sb8IyocaruWSn1TjmnBVs8Ayhcy83rmxNJ8q2uWKCAj3CnJY+KpGSXCueAPc0i05kVvVKtP1t9S3g==} engines: {node: '>=10'} + globby@14.0.2: + resolution: {integrity: sha512-s3Fq41ZVh7vbbe2PN3nrW7yC7U7MFVc5c98/iTl9c2GawNMKx/J648KQRW6WKkuU8GIbbh2IXfIRQjOZnXcTnw==} + engines: {node: '>=18'} + gopd@1.0.1: resolution: {integrity: sha512-d65bNlIadxvpb/A2abVdlqKqV563juRnZ1Wtk6s1sIR8uNsXR70xqIzVqxVf1eTqDunwT2MkczEeaezCKTZhwA==} @@ -2281,6 +2734,12 @@ packages: resolution: {integrity: sha512-0hJU9SCPvmMzIBdZFqNPXWa6dqh7WdH0cII9y+CyS8rG3nL48Bclra9HmKhVVUHyPWNH5Y7xDwAB7bfgSjkUMQ==} engines: {node: '>= 0.4'} + hast-util-to-html@9.0.3: + resolution: {integrity: sha512-M17uBDzMJ9RPCqLMO92gNNUDuBSq10a25SDBI08iCCxmorf4Yy6sYHK57n9WAbRAAaU+DuR4W6GN9K4DFZesYg==} + + hast-util-whitespace@3.0.0: + resolution: {integrity: sha512-88JUN06ipLwsnv+dVn+OIYOvAuvBMy/Qoi6O7mQHxdPXpjy+Cd6xRkWwux7DKO+4sYILtLBRIKgsdpS2gQc7qw==} + he@1.2.0: resolution: {integrity: sha512-F/1DnUGPopORZi0ni+CvrCgHQ5FyEAHRLSApuYWMmrbSwoN2Mn/7k+Gl38gJnR7yyDZk6WLXwiGod1JOWNDKGw==} hasBin: true @@ -2299,8 +2758,11 @@ packages: html-escaper@2.0.2: resolution: {integrity: sha512-H2iMtd0I4Mt5eYiapRdIDjp+XzelXQ0tFE4JS7YFwFevXXMmOp9myNrUvCg0D6ws8iqkRPBfKHgbwig1SmlLfg==} - htmlparser2@8.0.2: - resolution: {integrity: sha512-GYdjWKDkbRLkZ5geuHs5NY1puJ+PXwP7+fHPRz06Eirsb9ugf6d8kkXav6ADhcODhFFPMIXyxkxSuMf3D6NCFA==} + html-void-elements@3.0.0: + resolution: {integrity: sha512-bEqo66MRXsUGxWHV5IP0PUiAWwoEjba4VCzg0LjFJBpchPaTfyfCKTG6bc5F8ucKec3q5y6qOdGyYTSBEvhCrg==} + + htmlparser2@9.1.0: + resolution: {integrity: sha512-5zfg6mHUoaer/97TxnGpxmbR7zJtPwIYFMZ/H5ucTlPZhKvtum05yiPK3Mgai3a0DyVxv7qYqoweaEd2nrYQzQ==} http-cache-semantics@4.1.1: resolution: {integrity: sha512-er295DKPVsV82j5kw1Gjt+ADA/XYHsajl82cGNQG2eyoPkvgUhX+nDIyelzhIWbbsXP39EHcI6l5tYs2FYqYXQ==} @@ -2384,11 +2846,9 @@ packages: resolution: {integrity: sha512-zHtQzGojZXTwZTHQqra+ETKd4Sn3vgi7uBmlPoXVWZqYvuKmtI0l/VZTjqGmJY9x88GGOaZ9+G9ES8hC4T4X8g==} engines: {node: '>= 12'} - is-alphabetical@1.0.4: - resolution: {integrity: sha512-DwzsA04LQ10FHTZuL0/grVDk4rFoVH1pjAToYwBrHSxcrBIGQuXrQMtD5U1b0U2XVgKZCTLLP8u2Qxqhy3l2Vg==} - - is-alphanumerical@1.0.4: - resolution: {integrity: sha512-UzoZUr+XfVz3t3v4KyGEniVL9BDRoQtY7tOyrRybkVNjDFWyo1yhXNGrrBTQxp3ib9BLAWs7k2YKBQsFRkZG9A==} + is-arguments@1.1.1: + resolution: {integrity: sha512-8Q7EARjzEnKpt/PCD7e1cgUS0a6X8u5tdSiMqXhojOdoV9TsMsiO+9VLC5vAmO8N7/GmXn7yjR8qnA6bVAEzfA==} + engines: {node: '>= 0.4'} is-array-buffer@3.0.4: resolution: {integrity: sha512-wcjaerHw0ydZwfhiKbXJWLDY8A7yV7KhjQOpb83hGgGfId/aQa4TOvwyzn2PuswW2gPCYEL/nEAiSVpdOj1lXw==} @@ -2397,6 +2857,10 @@ packages: is-arrayish@0.2.1: resolution: {integrity: sha512-zz06S8t0ozoDXMG+ube26zeCTNXcKIPJZJi8hBrF4idCLms4CG9QtK7qBl1boi5ODzFpjswb5JPmHCbMpjaYzg==} + is-async-function@2.0.0: + resolution: {integrity: sha512-Y1JXKrfykRJGdlDwdKlLpLyMIiWqWvuSd17TvZk68PLAOGOoF4Xyav1z0Xhoi+gCYjZVeC5SI+hYFOfvXmGRCA==} + engines: {node: '>= 0.4'} + is-bigint@1.0.4: resolution: {integrity: sha512-zB9CruMamjym81i2JZ3UMn54PKGsQzsJeo6xvN3HJJ4CAsQNB6iRutp2To77OfCNuoxspsIhzaPoO1zyCEhFOg==} @@ -2412,6 +2876,9 @@ packages: resolution: {integrity: sha512-BSLE3HnV2syZ0FK0iMA/yUGplUeMmNz4AW5fnTunbCIqZi4vG3WjJT9FHMy5D69xmAYBHXQhJdALdpwVxV501A==} engines: {node: '>=6'} + is-bun-module@1.2.1: + resolution: {integrity: sha512-AmidtEM6D6NmUiLOvvU7+IePxjEjOzra2h0pSrsfSAcXwl/83zLLXDByafUJy9k/rKK0pvXMLdwKwGHlX2Ke6Q==} + is-callable@1.2.7: resolution: {integrity: sha512-1BC0BVFhS/p0qtw6enp8e+8OD0UrK0oFLztSjNzhcKA3WDuJxxAPXzPuPtKkjEY9UUoEWlX/8fgKeu2S8i9JTA==} engines: {node: '>= 0.4'} @@ -2423,6 +2890,10 @@ packages: is-core-module@2.13.1: resolution: {integrity: sha512-hHrIjvZsftOsvKSn2TRYl63zvxsgE0K+0mYMoH6gD4omR5IWB2KynivBQczo3+wF1cCkjzvptnI9Q0sPU66ilw==} + is-core-module@2.15.1: + resolution: {integrity: sha512-z0vtXSwucUJtANQWldhbtbt7BnL0vxiFjIdDLAatwhDYty2bad6s+rijD6Ri4YuYJubLzIJLUidCh09e1djEVQ==} + engines: {node: '>= 0.4'} + is-data-view@1.0.1: resolution: {integrity: sha512-AHkaJrsUVW6wq6JS8y3JnM/GJF/9cf+k20+iDzlSaJrinEo5+7vRiteOSwBhHRiAyQATN1AmY4hwzxJKPmYf+w==} engines: {node: '>= 0.4'} @@ -2431,9 +2902,6 @@ packages: resolution: {integrity: sha512-9YQaSxsAiSwcvS33MBk3wTCVnWK+HhF8VZR2jRxehM16QcVOdHqPn4VPHmRK4lSr38n9JriurInLcP90xsYNfQ==} engines: {node: '>= 0.4'} - is-decimal@1.0.4: - resolution: {integrity: sha512-RGdriMmQQvZ2aqaQq3awNA6dCGtKpiDFcOzrTWrDAT2MiWrKQVPmxLGHl7Y2nNu6led0kEyoX0enY0qXYsv9zw==} - is-docker@3.0.0: resolution: {integrity: sha512-eljcgEDlEns/7AXFosB5K/2nCM4P7FQPkGc/DWLy5rmFEWvZayGrik1d9/QIY5nJ4f9YsVvBkA6kJpHn9rISdQ==} engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} @@ -2443,20 +2911,25 @@ packages: resolution: {integrity: sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==} engines: {node: '>=0.10.0'} + is-finalizationregistry@1.0.2: + resolution: {integrity: sha512-0by5vtUJs8iFQb5TYUHHPudOR+qXYIMKtiUzvLIZITZUjknFmziyBJuLhVRc+Ds0dREFlskDNJKYIdIzu/9pfw==} + is-fullwidth-code-point@3.0.0: resolution: {integrity: sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==} engines: {node: '>=8'} - is-get-set-prop@1.0.0: - resolution: {integrity: sha512-DvAYZ1ZgGUz4lzxKMPYlt08qAUqyG9ckSg2pIjfvcQ7+pkVNUHk8yVLXOnCLe5WKXhLop8oorWFBJHpwWQpszQ==} + is-generator-function@1.0.10: + resolution: {integrity: sha512-jsEjy9l3yiXEQ+PsXdmBwEPcOxaXWLspKdplFUVI9vq1iZgIekeC0L167qeu86czQaxed3q/Uzuw0swL0irL8A==} + engines: {node: '>= 0.4'} + + is-get-set-prop@2.0.0: + resolution: {integrity: sha512-C32bqXfHJfRwa0U5UIMqSGziZhALszXDJZ8n8mz8WZ6c6V7oYGHEWwJvftliBswypY3P3EQqdY5lpDSEKvTS1Q==} + engines: {node: '> 18.0.0'} is-glob@4.0.3: resolution: {integrity: sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==} engines: {node: '>=0.10.0'} - is-hexadecimal@1.0.4: - resolution: {integrity: sha512-gyPJuv83bHMpocVYoqof5VDiZveEoGoFL8m3BXNb2VW8Xs+rz9kqO8LOQ5DH6EsuvilT1ApazU0pyl+ytbPtlw==} - is-in-ci@0.1.0: resolution: {integrity: sha512-d9PXLEY0v1iJ64xLiQMJ51J128EYHAaOR4yZqQi8aHGfw6KgifM3/Viw1oZZ1GCVmb3gBuyhLyHj0HgR2DhSXQ==} engines: {node: '>=18'} @@ -2471,12 +2944,17 @@ packages: resolution: {integrity: sha512-iwGqO3J21aaSkC7jWnHP/difazwS7SFeIqxv6wEtLU8Y5KlzFTjyqcSIT0d8s4+dDhKytsk9PJZ2BkS5eZwQRQ==} engines: {node: '>=10'} - is-js-type@2.0.0: - resolution: {integrity: sha512-Aj13l47+uyTjlQNHtXBV8Cji3jb037vxwMWCgopRR8h6xocgBGW3qG8qGlIOEmbXQtkKShKuBM9e8AA1OeQ+xw==} + is-js-type@3.0.0: + resolution: {integrity: sha512-IbPf3g3vxm1D902xaBaYp2TUHiXZWwWRu5bM9hgKN9oAQcFaKALV6Gd13PGhXjKE5u2n8s1PhLhdke/E1fchxQ==} + engines: {node: '>=18.0.0'} is-lambda@1.0.1: resolution: {integrity: sha512-z7CMFGNrENq5iFB9Bqo64Xk6Y9sg+epq1myIcdHaGnbMTYOxvzsEtdYqQUylB7LxfkvgrrjP32T6Ywciio9UIQ==} + is-map@2.0.3: + resolution: {integrity: sha512-1Qed0/Hr2m+YqxnM09CjA2d/i6YZNfF6R2oRAOj36eUdS6qIV/huPJNSEpKbupewFs+ZsJlxsjjPbc0/afW6Lw==} + engines: {node: '>= 0.4'} + is-module@1.0.0: resolution: {integrity: sha512-51ypPSPCoTEIN9dy5Oy+h4pShgJmPCygKfyRCISBI+JoWT/2oJvK8QPxmwv7b/p239jXrm9M1mlQbyKJ5A152g==} @@ -2496,8 +2974,9 @@ packages: resolution: {integrity: sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==} engines: {node: '>=0.12.0'} - is-obj-prop@1.0.0: - resolution: {integrity: sha512-5Idb61slRlJlsAzi0Wsfwbp+zZY+9LXKUAZpvT/1ySw+NxKLRWfa0Bzj+wXI3fX5O9hiddm5c3DAaRSNP/yl2w==} + is-obj-prop@2.0.0: + resolution: {integrity: sha512-2/VFrbzXSZVJIscazpxoB+pOQx2jBOAAL9Gui4cRKxflznUNBpsr8IDvBA4UGol3e40sltLNiY3qnZv/7qSUxA==} + engines: {node: '>=18.0.0'} is-obj@2.0.0: resolution: {integrity: sha512-drqDG3cbczxxEJRoOXcOjtdp1J/lyp1mNn0xaznRs8+muBhgQcrnbspox5X5fOw0HnMnbfDzvnEMEtqDEJEo8w==} @@ -2511,13 +2990,18 @@ packages: resolution: {integrity: sha512-YWnfyRwxL/+SsrWYfOpUtz5b3YD+nyfkHvjbcanzk8zgyO4ASD67uVMRt8k5bM4lLMDnXfriRhOpemw+NfT1eA==} engines: {node: '>=8'} - is-proto-prop@2.0.0: - resolution: {integrity: sha512-jl3NbQ/fGLv5Jhan4uX+Ge9ohnemqyblWVVCpAvtTQzNFvV2xhJq+esnkIbYQ9F1nITXoLfDDQLp7LBw/zzncg==} + is-proto-prop@3.0.1: + resolution: {integrity: sha512-S8xSxNMGJO4eZD86kO46zrq2gLIhA+rN9443lQEvt8Mz/l8cxk72p/AWFmofY6uL9g9ILD6cXW6j8QQj4F3Hcw==} + engines: {node: '>=18.0.0'} is-regex@1.1.4: resolution: {integrity: sha512-kvRdxDsxZjhzUX07ZnLydzS1TU/TJlTUHHY4YLL87e37oUA49DfkLqgy+VjFocowy29cKvcSiu+kIv728jTTVg==} engines: {node: '>= 0.4'} + is-set@2.0.3: + resolution: {integrity: sha512-iPAjerrse27/ygGLxw+EBR9agv9Y6uLeYVJMu+QNCoouJ1/1ri0mGrcWpfCqFZuzzx3WjtwxG098X+n4OuRkPg==} + engines: {node: '>= 0.4'} + is-shared-array-buffer@1.0.3: resolution: {integrity: sha512-nA2hv5XIhLR3uVzDDfCIknerhx8XUKnstuOERPNNIinXG7v9u+ohXF67vxm4TPTEPU6lm61ZkwP3c9PCB97rhg==} engines: {node: '>= 0.4'} @@ -2545,9 +3029,17 @@ packages: resolution: {integrity: sha512-knxG2q4UC3u8stRGyAVJCOdxFmv5DZiRcdlIaAQXAbSfJya+OhopNotLQrstBhququ4ZpuKbDc/8S6mgXgPFPw==} engines: {node: '>=10'} + is-weakmap@2.0.2: + resolution: {integrity: sha512-K5pXYOm9wqY1RgjpL3YTkF39tni1XajUIkawTLUo9EZEVUFga5gSQJF8nNS7ZwJQ02y+1YCNYcMh+HIf1ZqE+w==} + engines: {node: '>= 0.4'} + is-weakref@1.0.2: resolution: {integrity: sha512-qctsuLZmIQ0+vSSMfoVvyFe2+GSEvnmZ2ezTup1SBse9+twCCeial6EEi3Nc2KFcf6+qz2FBPnjXsk8xhKSaPQ==} + is-weakset@2.0.3: + resolution: {integrity: sha512-LvIm3/KWzS9oRFHugab7d+M/GcBXuXX5xZkzPmN+NxihdQlZUQ4dWuSV1xR/sq6upL1TJEDrfBgRepHFdBtSNQ==} + engines: {node: '>= 0.4'} + is-wsl@3.1.0: resolution: {integrity: sha512-UcVfVfaK4Sc4m7X3dUSoHoozQGBEFeDC+zVo06t98xe8CzHSZZBekNXH+tu0NalHolcJ/QAGqS46Hef7QXBIMw==} engines: {node: '>=16'} @@ -2574,16 +3066,22 @@ packages: resolution: {integrity: sha512-BewmUXImeuRk2YY0PVbxgKAysvhRPUQE0h5QRM++nVWyubKGV0l8qQ5op8+B2DOmwSe63Jivj0BjkPQVf8fP5g==} engines: {node: '>=8'} + iterator.prototype@1.1.2: + resolution: {integrity: sha512-DR33HMMr8EzwuRL8Y9D3u2BMj8+RqSE850jfGu59kS7tbmPLzGkZmVSfyCFSDxuZiEY6Rzt3T2NA/qU+NwVj1w==} + jackspeak@2.3.6: resolution: {integrity: sha512-N3yCS/NegsOBokc8GAdM8UcmfsKiSS8cipheD/nivzr700H+nsMOxJjQnvwOcRYVuFkdH0wGUvW2WbXGmrZGbQ==} engines: {node: '>=14'} + jackspeak@3.4.3: + resolution: {integrity: sha512-OGlZQpz2yfahA/Rd1Y8Cd9SIEsqvXkLVoSw/cgwhnhFMDbsQFeZYoJJ7bIZBS9BcamUW96asq/npPWugM+RQBw==} + js-tokens@4.0.0: resolution: {integrity: sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==} - js-types@1.0.0: - resolution: {integrity: sha512-bfwqBW9cC/Lp7xcRpug7YrXm0IVw+T9e3g4mCYnv0Pjr3zIzU9PCQElYU9oSGAWzXlbdl9X5SAMPejO9sxkeUw==} - engines: {node: '>=0.10.0'} + js-types@4.0.0: + resolution: {integrity: sha512-/c+n06zvqFQGxdz1BbElF7S3nEghjNchLN1TjQnk2j10HYDaUc57rcvl6BbnziTx8NQmrg0JOs/iwRpvcYaxjQ==} + engines: {node: '>=18.20'} js-yaml@3.14.1: resolution: {integrity: sha512-okMH7OXXJ7YrN9Ok3/SXrnu4iX9yOk+25nqX4imS2npuvTYDmo/QEZoqwZkYaIDk3jVvBOTOIEgEhaLOynBS9g==} @@ -2596,23 +3094,18 @@ packages: jsbn@1.1.0: resolution: {integrity: sha512-4bYVV3aAMtDTTu4+xsDYa6sy9GyJ69/amsu9sYF2zqjiEoZA5xJi3BrfX3uY+/IekIu7MwdObdbDWpoZdBv3/A==} - jsdoc-type-pratt-parser@4.0.0: - resolution: {integrity: sha512-YtOli5Cmzy3q4dP26GraSOeAhqecewG04hoO8DY56CH4KJ9Fvv5qKWUCCo3HZob7esJQHCv6/+bnTy72xZZaVQ==} + jsdoc-type-pratt-parser@4.1.0: + resolution: {integrity: sha512-Hicd6JK5Njt2QB6XYFS7ok9e37O8AYk3jTcppG4YVQnYjOemymvTcmc7OWsmq/Qqj5TdRFO5/x/tIPmBeRtGHg==} engines: {node: '>=12.0.0'} - jsep@1.3.8: - resolution: {integrity: sha512-qofGylTGgYj9gZFsHuyWAN4jr35eJ66qJCK4eKDnldohuUoQFbU3iZn2zjvEbd9wOAhP9Wx5DsAAduTyE1PSWQ==} + jsep@1.3.9: + resolution: {integrity: sha512-i1rBX5N7VPl0eYb6+mHNp52sEuaS2Wi8CDYx1X5sn9naevL78+265XJqy1qENEk7mRKwS06NHpUqiBwR7qeodw==} engines: {node: '>= 10.16.0'} jsesc@0.5.0: resolution: {integrity: sha512-uZz5UnB7u4T9LvwmFqXii7pZSouaRPorGs5who1Ip7VO0wxanFvBL7GkM6dTHlgX+jhBApRetaWpnDabOeTcnA==} hasBin: true - jsesc@2.5.2: - resolution: {integrity: sha512-OYu7XEzjkCQ3C5Ps3QIZsQfNpqoJyZZA99wd9aWd05NCtC5pWOkShK2mkL6HXQR6/Cy2lbNdPlZBpuQHXE63gA==} - engines: {node: '>=4'} - hasBin: true - jsesc@3.0.2: resolution: {integrity: sha512-xKqzzWXDttJuOcawBt4KnKHHIf5oQ/Cxax+0PWFG+DFDgHNAdi+TXECADI+RYiFUMmx8792xsMbbgXj4CwnP4g==} engines: {node: '>=6'} @@ -2646,13 +3139,14 @@ packages: engines: {node: '>=6'} hasBin: true - jsonc-parser@3.2.1: - resolution: {integrity: sha512-AilxAyFOAcK5wA1+LeaySVBrHsGQvUFCDWXKpZjzaL0PqW+xfBOttn8GNtWKFWqneyMZj41MWF9Kl6iPWLwgOA==} - jsonparse@1.3.1: resolution: {integrity: sha512-POQXvpdL69+CluYsillJ7SUhKvytYjW9vG/GKpnf+xP8UWgYEM/RaMzHHofbALDiKbbP1W8UEYmgGl39WkPZsg==} engines: {'0': node >= 0.2.0} + jsx-ast-utils@3.3.5: + resolution: {integrity: sha512-ZZow9HBI5O6EPgSJLUb8n2NKgmVWTwCvHGwFuJlMjvLFqlGG6pjirPhtdsseaLZjSibD8eegzmYpUZwoIlj2cQ==} + engines: {node: '>=4.0'} + just-diff-apply@5.5.0: resolution: {integrity: sha512-OYTthRfSh55WOItVqwpefPtNt2VdKsq5AnAK6apdtR6yCH8pr0CmSr710J0Mf+WdQy7K/OzMy7K2MgAfdQURDw==} @@ -2662,6 +3156,13 @@ packages: keyv@4.5.4: resolution: {integrity: sha512-oxVHkHR/EJf2CNXnWxRLW6mg7JyCCUcG0DtEGmL2ctUo1PNTin1PUil+r/+4r5MpVgC/fn1kjsx7mjSujKqIpw==} + language-subtag-registry@0.3.23: + resolution: {integrity: sha512-0K65Lea881pHotoGEa5gDlMxt3pctLi2RplBb7Ezh4rRdLEOtgi7n4EwK9lamnUCkKBqaeKRVebTq6BAxSkpXQ==} + + language-tags@1.0.9: + resolution: {integrity: sha512-MbjN408fEndfiQXbFQ1vnd+1NoLDsnQW41410oQBXiyXDMYH5z505juWa4KUE1LqxRC7DgOgZDbKLxHIwm27hA==} + engines: {node: '>=0.10'} + latest-version@7.0.0: resolution: {integrity: sha512-KvNT4XqAMzdcL6ka6Tl3i2lYeFDgXNCuIX+xNx6ZMVR1dFq+idXd9FLKNMOIx0t9mJ9/HudyX4oZWXZQ0UJHeg==} engines: {node: '>=14.16'} @@ -2687,6 +3188,9 @@ packages: lines-and-columns@1.2.4: resolution: {integrity: sha512-7ylylesZQ/PV29jhEDl3Ufjo6ZX7gCqJr5F7PKrqc93v7fzSymt1BpwEU8nAUXs8qzzvqhbjhK5QZg6Mt/HkBg==} + linkify-it@5.0.0: + resolution: {integrity: sha512-5aHCbzQRADcdP+ATqnDuhhJ/MRIqDkZX5pyjFHRRysS8vZ5AbqGEoFIb6pYHPZ+L/OC2Lc+xT8uHVVR5CAK/wQ==} + locate-path@5.0.0: resolution: {integrity: sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==} engines: {node: '>=8'} @@ -2717,13 +3221,16 @@ packages: resolution: {integrity: sha512-8XPvpAA8uyhfteu8pIvQxpJZ7SYYdpUivZpGy6sFsBuKRY/7rQGavedeB8aK+Zkyq6upMFVL/9AW6vOYzfRyLg==} engines: {node: '>=10'} + longest-streak@3.1.0: + resolution: {integrity: sha512-9Ri+o0JYgehTaVBBDoMqIl8GXtbWg711O3srftcHhZ0dqnETqLaoIK0x17fUw9rFSlK/0NlsKe0Ahhyl5pXE2g==} + + loose-envify@1.4.0: + resolution: {integrity: sha512-lyuxPGr/Wfhrlem2CL/UcnUc1zcqKAImBDzukY7Y5F/yQiNdko6+fRLevlw1HgMySw7f611UIY408EtxRSoK3Q==} + hasBin: true + loupe@3.1.0: resolution: {integrity: sha512-qKl+FrLXUhFuHUoDJG7f8P8gEMHq9NFS0c6ghXG1J0rldmZFQZoNVv/vyirE9qwCIhWZDsvEFd1sbFu3GvRQFg==} - lowercase-keys@1.0.1: - resolution: {integrity: sha512-G2Lj61tXDnVFFOi8VZds+SoQjtQC3dgokKdDG2mTm1tx4m50NUHBOZSBwQQHyy0V12A0JTG4icfZQH+xPyh8VA==} - engines: {node: '>=0.10.0'} - lowercase-keys@3.0.0: resolution: {integrity: sha512-ozCC6gdQ+glXOQsveKD0YsDy8DSQFjDTz4zyzEHNV5+JP5D62LmfDZ6o1cycFx9ouG940M5dE8C8CTewdj2YWQ==} engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} @@ -2758,20 +3265,55 @@ packages: resolution: {integrity: sha512-rLWS7GCSTcEujjVBs2YqG7Y4643u8ucvCJeSRqiLYhesrDuzeuFIk37xREzAsfQaqzl8b9rNCE4m6J8tvX4Q8w==} engines: {node: ^14.17.0 || ^16.13.0 || >=18.0.0} - marked@4.3.0: - resolution: {integrity: sha512-PRsaiG84bK+AMvxziE/lCFss8juXjNaWzVbN5tXAm4XjeaS9NAHhop+PjQxz2A9h8Q4M/xGmzP8vqNwy6JeK0A==} - engines: {node: '>= 12'} + markdown-it@14.1.0: + resolution: {integrity: sha512-a54IwgWPaeBCAAsv13YgmALOF1elABB08FxO9i+r4VFk5Vl4pKokRPeX8u5TCgSsPi6ec1otfLjdOpVcgbpshg==} hasBin: true - mdast-util-from-markdown@0.8.5: - resolution: {integrity: sha512-2hkTXtYYnr+NubD/g6KGBS/0mFmBcifAsI0yIWRiRo0PjVs6SSOSOdtzbp6kSGnShDN6G5aWZpKQ2lWRy27mWQ==} + markdown-table@3.0.3: + resolution: {integrity: sha512-Z1NL3Tb1M9wH4XESsCDEksWoKTdlUafKc4pt0GRwjUyXaCFZ+dc3g2erqB6zm3szA2IUSi7VnPI+o/9jnxh9hw==} + + mdast-util-find-and-replace@3.0.1: + resolution: {integrity: sha512-SG21kZHGC3XRTSUhtofZkBzZTJNM5ecCi0SK2IMKmSXR8vO3peL+kb1O0z7Zl83jKtutG4k5Wv/W7V3/YHvzPA==} + + mdast-util-from-markdown@2.0.1: + resolution: {integrity: sha512-aJEUyzZ6TzlsX2s5B4Of7lN7EQtAxvtradMMglCQDyaTFgse6CmtmdJ15ElnVRlCg1vpNyVtbem0PWzlNieZsA==} - mdast-util-to-string@2.0.0: - resolution: {integrity: sha512-AW4DRS3QbBayY/jJmD8437V1Gombjf8RSOUCMFBuo5iHi58AGEgVCKQ+ezHkZZDpAQS75hcBMpLqjpJTjtUL7w==} + mdast-util-gfm-autolink-literal@2.0.1: + resolution: {integrity: sha512-5HVP2MKaP6L+G6YaxPNjuL0BPrq9orG3TsrZ9YXbA3vDw/ACI4MEsnoDpn6ZNm7GnZgtAcONJyPhOP8tNJQavQ==} + + mdast-util-gfm-footnote@2.0.0: + resolution: {integrity: sha512-5jOT2boTSVkMnQ7LTrd6n/18kqwjmuYqo7JUPe+tRCY6O7dAuTFMtTPauYYrMPpox9hlN0uOx/FL8XvEfG9/mQ==} + + mdast-util-gfm-strikethrough@2.0.0: + resolution: {integrity: sha512-mKKb915TF+OC5ptj5bJ7WFRPdYtuHv0yTRxK2tJvi+BDqbkiG7h7u/9SI89nRAYcmap2xHQL9D+QG/6wSrTtXg==} + + mdast-util-gfm-table@2.0.0: + resolution: {integrity: sha512-78UEvebzz/rJIxLvE7ZtDd/vIQ0RHv+3Mh5DR96p7cS7HsBhYIICDBCu8csTNWNO6tBWfqXPWekRuj2FNOGOZg==} + + mdast-util-gfm-task-list-item@2.0.0: + resolution: {integrity: sha512-IrtvNvjxC1o06taBAVJznEnkiHxLFTzgonUdy8hzFVeDun0uTjxxrRGVaNFqkU1wJR3RBPEfsxmU6jDWPofrTQ==} + + mdast-util-gfm@3.0.0: + resolution: {integrity: sha512-dgQEX5Amaq+DuUqf26jJqSK9qgixgd6rYDHAv4aTBuA92cTknZlKpPfa86Z/s8Dj8xsAQpFfBmPUHWJBWqS4Bw==} + + mdast-util-phrasing@4.1.0: + resolution: {integrity: sha512-TqICwyvJJpBwvGAMZjj4J2n0X8QWp21b9l0o7eXyVJ25YNWYbJDVIyD1bZXE6WtV6RmKJVYmQAKWa0zWOABz2w==} + + mdast-util-to-hast@13.2.0: + resolution: {integrity: sha512-QGYKEuUsYT9ykKBCMOEDLsU5JRObWQusAolFMeko/tYPufNkRffBAQjIE+99jbA87xv6FgmjLtwjh9wBWajwAA==} + + mdast-util-to-markdown@2.1.0: + resolution: {integrity: sha512-SR2VnIEdVNCJbP6y7kVTJgPLifdr8WEU440fQec7qHoHOUz/oJ2jmNRqdDQ3rbiStOXb2mCDGTuwsK5OPUgYlQ==} + + mdast-util-to-string@4.0.0: + resolution: {integrity: sha512-0H44vDimn51F0YwvxSJSm0eCDOJTRlmN0R1yBh4HLj9wiV1Dn0QoXGbvFAWj2hSItVTlCmBF1hqKlIyUBVFLPg==} mdn-data@2.0.14: resolution: {integrity: sha512-dn6wd0uw5GsdswPFfsgMp5NSB0/aDe6fK94YJV/AJDYXL6HVLWBsxeq7js7Ad+mU2K9LAlwpk6kN2D5mwCPVow==} + mdurl@2.0.0: + resolution: {integrity: sha512-Lf+9+2r+Tdp5wXDXC4PcIBjTDtq4UKjCPMQhKIuzpJNW0b96kVqSwW0bT7FhRSfmAiFYgP+SCRvdrDozfh0U5w==} + meow@12.1.1: resolution: {integrity: sha512-BhXM0Au22RwUneMPwSCnyhTOizdWoIEPU9sp0Aqa1PnDMR5Wv2FGXYDjuzJEIX+Eo2Rb8xuYe5jrnm5QowQFkw==} engines: {node: '>=16.10'} @@ -2780,13 +3322,102 @@ packages: resolution: {integrity: sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg==} engines: {node: '>= 8'} - micromark@2.11.4: - resolution: {integrity: sha512-+WoovN/ppKolQOFIAajxi7Lu9kInbPxFuTBVEavFcL8eAfVstoc5MocPmqBeAdBOJV00uaVjegzH4+MA0DN/uA==} + micromark-core-commonmark@2.0.1: + resolution: {integrity: sha512-CUQyKr1e///ZODyD1U3xit6zXwy1a8q2a1S1HKtIlmgvurrEpaw/Y9y6KSIbF8P59cn/NjzHyO+Q2fAyYLQrAA==} + + micromark-extension-gfm-autolink-literal@2.1.0: + resolution: {integrity: sha512-oOg7knzhicgQ3t4QCjCWgTmfNhvQbDDnJeVu9v81r7NltNCVmhPy1fJRX27pISafdjL+SVc4d3l48Gb6pbRypw==} + + micromark-extension-gfm-footnote@2.1.0: + resolution: {integrity: sha512-/yPhxI1ntnDNsiHtzLKYnE3vf9JZ6cAisqVDauhp4CEHxlb4uoOTxOCJ+9s51bIB8U1N1FJ1RXOKTIlD5B/gqw==} + + micromark-extension-gfm-strikethrough@2.1.0: + resolution: {integrity: sha512-ADVjpOOkjz1hhkZLlBiYA9cR2Anf8F4HqZUO6e5eDcPQd0Txw5fxLzzxnEkSkfnD0wziSGiv7sYhk/ktvbf1uw==} + + micromark-extension-gfm-table@2.1.0: + resolution: {integrity: sha512-Ub2ncQv+fwD70/l4ou27b4YzfNaCJOvyX4HxXU15m7mpYY+rjuWzsLIPZHJL253Z643RpbcP1oeIJlQ/SKW67g==} + + micromark-extension-gfm-tagfilter@2.0.0: + resolution: {integrity: sha512-xHlTOmuCSotIA8TW1mDIM6X2O1SiX5P9IuDtqGonFhEK0qgRI4yeC6vMxEV2dgyr2TiD+2PQ10o+cOhdVAcwfg==} + + micromark-extension-gfm-task-list-item@2.1.0: + resolution: {integrity: sha512-qIBZhqxqI6fjLDYFTBIa4eivDMnP+OZqsNwmQ3xNLE4Cxwc+zfQEfbs6tzAo2Hjq+bh6q5F+Z8/cksrLFYWQQw==} + + micromark-extension-gfm@3.0.0: + resolution: {integrity: sha512-vsKArQsicm7t0z2GugkCKtZehqUm31oeGBV/KVSorWSy8ZlNAv7ytjFhvaryUiCUJYqs+NoE6AFhpQvBTM6Q4w==} + + micromark-factory-destination@2.0.0: + resolution: {integrity: sha512-j9DGrQLm/Uhl2tCzcbLhy5kXsgkHUrjJHg4fFAeoMRwJmJerT9aw4FEhIbZStWN8A3qMwOp1uzHr4UL8AInxtA==} + + micromark-factory-label@2.0.0: + resolution: {integrity: sha512-RR3i96ohZGde//4WSe/dJsxOX6vxIg9TimLAS3i4EhBAFx8Sm5SmqVfR8E87DPSR31nEAjZfbt91OMZWcNgdZw==} + + micromark-factory-space@2.0.0: + resolution: {integrity: sha512-TKr+LIDX2pkBJXFLzpyPyljzYK3MtmllMUMODTQJIUfDGncESaqB90db9IAUcz4AZAJFdd8U9zOp9ty1458rxg==} + + micromark-factory-title@2.0.0: + resolution: {integrity: sha512-jY8CSxmpWLOxS+t8W+FG3Xigc0RDQA9bKMY/EwILvsesiRniiVMejYTE4wumNc2f4UbAa4WsHqe3J1QS1sli+A==} + + micromark-factory-whitespace@2.0.0: + resolution: {integrity: sha512-28kbwaBjc5yAI1XadbdPYHX/eDnqaUFVikLwrO7FDnKG7lpgxnvk/XGRhX/PN0mOZ+dBSZ+LgunHS+6tYQAzhA==} + + micromark-util-character@2.1.0: + resolution: {integrity: sha512-KvOVV+X1yLBfs9dCBSopq/+G1PcgT3lAK07mC4BzXi5E7ahzMAF8oIupDDJ6mievI6F+lAATkbQQlQixJfT3aQ==} + + micromark-util-chunked@2.0.0: + resolution: {integrity: sha512-anK8SWmNphkXdaKgz5hJvGa7l00qmcaUQoMYsBwDlSKFKjc6gjGXPDw3FNL3Nbwq5L8gE+RCbGqTw49FK5Qyvg==} + + micromark-util-classify-character@2.0.0: + resolution: {integrity: sha512-S0ze2R9GH+fu41FA7pbSqNWObo/kzwf8rN/+IGlW/4tC6oACOs8B++bh+i9bVyNnwCcuksbFwsBme5OCKXCwIw==} + + micromark-util-combine-extensions@2.0.0: + resolution: {integrity: sha512-vZZio48k7ON0fVS3CUgFatWHoKbbLTK/rT7pzpJ4Bjp5JjkZeasRfrS9wsBdDJK2cJLHMckXZdzPSSr1B8a4oQ==} + + micromark-util-decode-numeric-character-reference@2.0.1: + resolution: {integrity: sha512-bmkNc7z8Wn6kgjZmVHOX3SowGmVdhYS7yBpMnuMnPzDq/6xwVA604DuOXMZTO1lvq01g+Adfa0pE2UKGlxL1XQ==} + + micromark-util-decode-string@2.0.0: + resolution: {integrity: sha512-r4Sc6leeUTn3P6gk20aFMj2ntPwn6qpDZqWvYmAG6NgvFTIlj4WtrAudLi65qYoaGdXYViXYw2pkmn7QnIFasA==} + + micromark-util-encode@2.0.0: + resolution: {integrity: sha512-pS+ROfCXAGLWCOc8egcBvT0kf27GoWMqtdarNfDcjb6YLuV5cM3ioG45Ys2qOVqeqSbjaKg72vU+Wby3eddPsA==} + + micromark-util-html-tag-name@2.0.0: + resolution: {integrity: sha512-xNn4Pqkj2puRhKdKTm8t1YHC/BAjx6CEwRFXntTaRf/x16aqka6ouVoutm+QdkISTlT7e2zU7U4ZdlDLJd2Mcw==} + + micromark-util-normalize-identifier@2.0.0: + resolution: {integrity: sha512-2xhYT0sfo85FMrUPtHcPo2rrp1lwbDEEzpx7jiH2xXJLqBuy4H0GgXk5ToU8IEwoROtXuL8ND0ttVa4rNqYK3w==} + + micromark-util-resolve-all@2.0.0: + resolution: {integrity: sha512-6KU6qO7DZ7GJkaCgwBNtplXCvGkJToU86ybBAUdavvgsCiG8lSSvYxr9MhwmQ+udpzywHsl4RpGJsYWG1pDOcA==} + + micromark-util-sanitize-uri@2.0.0: + resolution: {integrity: sha512-WhYv5UEcZrbAtlsnPuChHUAsu/iBPOVaEVsntLBIdpibO0ddy8OzavZz3iL2xVvBZOpolujSliP65Kq0/7KIYw==} + + micromark-util-subtokenize@2.0.1: + resolution: {integrity: sha512-jZNtiFl/1aY73yS3UGQkutD0UbhTt68qnRpw2Pifmz5wV9h8gOVsN70v+Lq/f1rKaU/W8pxRe8y8Q9FX1AOe1Q==} + + micromark-util-symbol@2.0.0: + resolution: {integrity: sha512-8JZt9ElZ5kyTnO94muPxIGS8oyElRJaiJO8EzV6ZSyGQ1Is8xwl4Q45qU5UOg+bGH4AikWziz0iN4sFLWs8PGw==} + + micromark-util-types@2.0.0: + resolution: {integrity: sha512-oNh6S2WMHWRZrmutsRmDDfkzKtxF+bc2VxLC9dvtrDIRFln627VsFP6fLMgTryGDljgLPjkrzQSDcPrjPyDJ5w==} + + micromark@4.0.0: + resolution: {integrity: sha512-o/sd0nMof8kYff+TqcDx3VSrgBTcZpSvYcAHIfHhv5VAuNmisCxjhx6YmxS8PFEpb9z5WKWKPdzf0jM23ro3RQ==} micromatch@4.0.5: resolution: {integrity: sha512-DMy+ERcEW2q8Z2Po+WNXuw3c5YaUSFjAO5GsJqfEl7UjvtIuFKO6ZrKvcItdy98dwFI2N1tg3zNIdKaQT+aNdA==} engines: {node: '>=8.6'} + mime-db@1.52.0: + resolution: {integrity: sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg==} + engines: {node: '>= 0.6'} + + mime-types@2.1.35: + resolution: {integrity: sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw==} + engines: {node: '>= 0.6'} + mime@1.6.0: resolution: {integrity: sha512-x0Vn8spI+wuJ1O6S7gnbaQg8Pxh4NNHb7KSINmEWKiPE4RKOplvijn+NkmYmmRgP68mc70j2EbeTFRsrswaQeg==} engines: {node: '>=4'} @@ -2804,6 +3435,10 @@ packages: resolution: {integrity: sha512-I9jwMn07Sy/IwOj3zVkVik2JTvgpaykDZEigL6Rx6N9LbMywwUSMtxET+7lVoDLLd3O3IXwJwvuuns8UB/HeAg==} engines: {node: '>=4'} + minimatch@10.0.1: + resolution: {integrity: sha512-ethXTt3SGGR+95gudmqJ1eNhRO7eGEGIgYA9vnPatK4/etz2MEVDno5GMCibdMTuBMyElzIlgxMna3K94XDIDQ==} + engines: {node: 20 || >=22} + minimatch@3.1.2: resolution: {integrity: sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==} @@ -2811,14 +3446,18 @@ packages: resolution: {integrity: sha512-nLDxIFRyhDblz3qMuq+SoRZED4+miJ/G+tdDrjkkkRnjAsBexeGpgjLEQ0blJy7rHhR2b93rhQY4SvyWu9v03g==} engines: {node: '>=10'} - minimatch@9.0.3: - resolution: {integrity: sha512-RHiac9mvaRw0x3AYRgDC1CxAP7HTcNrrECeA8YYJeWnpo+2Q5CegtZjaotWTWxDG3UeGA1coE05iH1mPjT/2mg==} - engines: {node: '>=16 || 14 >=14.17'} + minimatch@5.1.6: + resolution: {integrity: sha512-lKwV/1brpG6mBUFHtb7NUmtABCb2WZZmm2wNiOA5hAb8VdCS4B3dtMWyvcoViccwAW/COERjXLt0zP1zXUN26g==} + engines: {node: '>=10'} minimatch@9.0.4: resolution: {integrity: sha512-KqWh+VchfxcMNRAJjj2tnsSJdNbHsVgnkBhTNrW7AjVo6OvLtxw8zfT9oLw1JSohlFzJ8jCoTgaoXvJ+kHt6fw==} engines: {node: '>=16 || 14 >=14.17'} + minimatch@9.0.5: + resolution: {integrity: sha512-G6T0ZX48xgozx7587koeX9Ys2NYy6Gmv//P89sEte9V9whIapMNF4idKxnW2QtCcLiTWlb/wfCabAtAFWhhBow==} + engines: {node: '>=16 || 14 >=14.17'} + minimist@1.2.8: resolution: {integrity: sha512-2yyAR8qBkN3YuheJanUpWC5U3bb5osDywNB8RzDVlDwDHbocAJveqqj1u8+SVD7jkWT4yvsHCpWqqWqAxb0zCA==} @@ -2861,6 +3500,10 @@ packages: resolution: {integrity: sha512-jYofLM5Dam9279rdkWzqHozUo4ybjdZmCsDHePy5V/PbBcVMiSZR97gmAy45aqi8CK1lG2ECd356FU86avfwUQ==} engines: {node: '>=16 || 14 >=14.17'} + minipass@7.1.2: + resolution: {integrity: sha512-qOOzS1cBTWYF4BH8fVePDBOO9iptMnGUEZwNc/cMWnTV2nVLZ7VoNWEPHkYczZA0pdoA7dl6e7FL659nX9S2aw==} + engines: {node: '>=16 || 14 >=14.17'} + minizlib@2.1.2: resolution: {integrity: sha512-bAxsR8BVfj60DWXHE3u30oHzfl4G7khkSuPW+qvpd7jFRHm7dLxOjUk1EHACJ/hxLY8phGJ0YhYHZo7jil7Qdg==} engines: {node: '>= 8'} @@ -2885,8 +3528,8 @@ packages: peerDependencies: mocha: '>=3.1.2' - mocha@10.4.0: - resolution: {integrity: sha512-eqhGB8JKapEYcC4ytX/xrzKforgEc3j1pGlAXVy3eRwrtAy5/nIfT1SvgGzfN0XZZxeLq0aQWkOUAmqIJiv+bA==} + mocha@10.7.3: + resolution: {integrity: sha512-uQWxAu44wwiACGqjbPYmjo7Lg8sFrS3dQe7PP2FQI+woptP4vZXSMcfMyFL/e1yFEeEpV4RtyTpZROOKmxis+A==} engines: {node: '>= 14.0.0'} hasBin: true @@ -2911,8 +3554,8 @@ packages: engines: {node: ^12.13 || ^14.13 || >=16} hasBin: true - node-releases@2.0.14: - resolution: {integrity: sha512-y10wOWt8yZpqXmOgRo77WaHEmhYQYGNA6y421PKsKYWEK8aW+cqAphborZDhqfyKrbZEN92CN1X2KbafY2s7Yw==} + node-releases@2.0.18: + resolution: {integrity: sha512-d9VeXT4SJ7ZeOqGX6R5EM022wpL+eWPooLI+5UpWn2jCT1aosUQEhQP214x33Wkwx3JQMvIm+tIoVOdodFS40g==} nopt@6.0.0: resolution: {integrity: sha512-ZwLpbTgdhuZUnZzjd7nb1ZV+4DoiC6/sfiVKok72ym/4Tlf+DFdlHYmT2JPmcNNWV6Pi3SDf1kT+A4r9RTuT9g==} @@ -2981,13 +3624,21 @@ packages: nth-check@2.1.1: resolution: {integrity: sha512-lqjrjmaOoAnWfMmBPL+XNnynZh2+swxiX3WUE0s4yEHI6m+AwrK2UZOimIRl3X/4QctVqS8AiZjFqyOGrMXb/w==} - obj-props@1.4.0: - resolution: {integrity: sha512-p7p/7ltzPDiBs6DqxOrIbtRdwxxVRBj5ROukeNb9RgA+fawhrz5n2hpNz8DDmYR//tviJSj7nUnlppGmONkjiQ==} + obj-props@2.0.0: + resolution: {integrity: sha512-Q/uLAAfjdhrzQWN2czRNh3fDCgXjh7yRIkdHjDgIHTwpFP0BsshxTA3HRNffHR7Iw/XGTH30u8vdMXQ+079urA==} + engines: {node: '>=18.0.0'} + + object-assign@4.1.1: + resolution: {integrity: sha512-rJgTQnkUnH1sFw8yT6VSU3zD3sWmu6sZhIseY8VX+GRu3P6F7Fu+JNDoXfklElbLJSnc3FUQHVe4cU5hj+BcUg==} engines: {node: '>=0.10.0'} object-inspect@1.13.1: resolution: {integrity: sha512-5qoj1RUiKOMsCCNLV1CBiPYE10sziTsnmNxkAI/rZhiD63CF7IqdFGC/XzjWjpSgLf0LxXX3bDFIh0E18f6UhQ==} + object-is@1.1.6: + resolution: {integrity: sha512-F8cZ+KfGlSGi09lJT7/Nd6KJZ9ygtvYC0/UYYLI9nmQKLMnydpB9yvbv9K1uSkEu7FU9vYPmVwLg328tX+ot3Q==} + engines: {node: '>= 0.4'} + object-keys@1.1.1: resolution: {integrity: sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA==} engines: {node: '>= 0.4'} @@ -2996,6 +3647,10 @@ packages: resolution: {integrity: sha512-byy+U7gp+FVwmyzKPYhW2h5l3crpmGsxl7X2s8y43IgxvG4g3QZ6CffDtsNQy1WsmZpQbO+ybo0AlW7TY6DcBQ==} engines: {node: '>= 0.4'} + object.entries@1.1.8: + resolution: {integrity: sha512-cmopxi8VwRIAw/fkijJohSfpef5PdN0pMQJN6VC/ZKvn0LIknWD8KtgY6KlQdEc4tIjcQ3HxSMmnvtzIscdaYQ==} + engines: {node: '>= 0.4'} + object.fromentries@2.0.8: resolution: {integrity: sha512-k6E21FzySsSK5a21KRADBd/NGneRegFO5pLHfdQLpRDETUNJueLXs3WCzyQ3tFRDYgbq3KHGXfTbi2bs8WQ6rQ==} engines: {node: '>= 0.4'} @@ -3011,6 +3666,9 @@ packages: once@1.4.0: resolution: {integrity: sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w==} + oniguruma-to-js@0.4.3: + resolution: {integrity: sha512-X0jWUcAlxORhOqqBREgPMgnshB7ZGYszBNspP+tS9hPD3l13CdaXcHbgImoHUHlrvGx/7AvFEkTRhAGYh+jzjQ==} + open-cli@8.0.0: resolution: {integrity: sha512-3muD3BbfLyzl+aMVSEfn2FfOqGdPYR0O4KNnxXsLEPE2q9OSjBfJAaB6XKbrUzLgymoSMejvb5jpXJfru/Ko2A==} engines: {node: '>=18'} @@ -3056,6 +3714,9 @@ packages: resolution: {integrity: sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==} engines: {node: '>=6'} + package-json-from-dist@1.0.1: + resolution: {integrity: sha512-UEZIS3/by4OC8vL3P2dTXRETpebLI2NiI5vIrjaD/5UtrkFX/tNbwjTSRAGC/+7CAo2pIcBaRgWmcBBHcsaCIw==} + package-json@8.1.1: resolution: {integrity: sha512-cbH9IAIJHNj9uXi196JVsRlt7cHKak6u/e6AkL/bkRelZ7rlL3X1YKxsZwa36xipOEKAsdtmaG6aAJoM1fx2zA==} engines: {node: '>=14.16'} @@ -3073,8 +3734,9 @@ packages: resolution: {integrity: sha512-01TvEktc68vwbJOtWZluyWeVGWjP+bZwXtPDMQVbBKzbJ/vZBif0L69KH1+cHv1SZ6e0FKLvjyHe8mqsIqYOmw==} engines: {node: ^14.17.0 || ^16.13.0 || >=18.0.0} - parse-entities@2.0.0: - resolution: {integrity: sha512-kkywGpCcRYhqQIchaWqZ875wzpS/bMKhz5HnN3p7wveJTkTtyAB/AlnS0f8DFSqYW1T82t6yEAkEcB+A1I3MbQ==} + parse-imports@2.2.1: + resolution: {integrity: sha512-OL/zLggRp8mFhKL0rNORUTR4yBYujK/uU+xZL+/0Rgm2QE4nLO9v8PzEweSJEbMGKmDRjJE4R3IMJlL2di4JeQ==} + engines: {node: '>= 18'} parse-json@5.2.0: resolution: {integrity: sha512-ayCKvm/phCGxOkYRSCM82iDwct8/EonSEgCSxWxD7ve6jHggsFl4fZVQBPRNgQoKiuV/odhFrGzQXZwbifC8Rg==} @@ -3099,10 +3761,18 @@ packages: resolution: {integrity: sha512-7xTavNy5RQXnsjANvVvMkEjvloOinkAjv/Z6Ildz9v2RinZ4SBKTWFOVRbaF8p0vpHnyjV/UwNDdKuUv6M5qcA==} engines: {node: '>=16 || 14 >=14.17'} + path-scurry@1.11.1: + resolution: {integrity: sha512-Xa4Nw17FS9ApQFJ9umLiJS4orGjm7ZzwUrwamcGQuHSzDyth9boKDaycYdDcZDuqYATXw4HFXgaqWTctW/v1HA==} + engines: {node: '>=16 || 14 >=14.18'} + path-type@4.0.0: resolution: {integrity: sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw==} engines: {node: '>=8'} + path-type@5.0.0: + resolution: {integrity: sha512-5HviZNaZcfqP95rwpv+1HDgUamezbqdSYTyzjTvwtJSnIH+3vnbmWsItli8OFEndS984VT55M3jduxZbX351gg==} + engines: {node: '>=12'} + pathval@2.0.0: resolution: {integrity: sha512-vE7JKRyES09KiunauX7nd2Q9/L7lhok4smP9RZTDeD4MVs72Dp2qNFVz39Nz5a0FVEW0BJR6C0DYrq6unoziZA==} engines: {node: '>= 14.16'} @@ -3114,6 +3784,9 @@ packages: picocolors@1.0.0: resolution: {integrity: sha512-1fygroTLlHu66zi26VoTDv8yRgm0Fccecssto+MhsZ0D/DGW2sm8E8AjW7NU5VVTRt5GxbeZ5qBuJr+HyLYkjQ==} + picocolors@1.1.0: + resolution: {integrity: sha512-TQ92mBOW0l3LeMeyLV6mzy/kWr8lkd/hp3mTg7wYK7zJhuBStmGMBG0BdeDZS/dZx1IukaX6Bk11zcln25o1Aw==} + picomatch@2.3.1: resolution: {integrity: sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==} engines: {node: '>=8.6'} @@ -3146,6 +3819,10 @@ packages: resolution: {integrity: sha512-++Vn7NS4Xf9NacaU9Xq3URUuqZETPsf8L4j5/ckhaRYsfPeRyzGw+iDjFhV/Jr3uNmTvvddEJFWh5R1gRgUH8A==} engines: {node: ^14.17.0 || ^16.13.0 || >=18.0.0} + process@0.11.10: + resolution: {integrity: sha512-cdGef/drWFoydD1JsMzuFf8100nZl+GT+yacc2bEced5f9Rjk4z+WtFUTBu9PhOi9j/jfmBPu0mMEY4wIdAF8A==} + engines: {node: '>= 0.6.0'} + promise-all-reject-late@1.0.1: resolution: {integrity: sha512-vuf0Lf0lOxyQREH7GDIOUMLS7kz+gs8i6B+Yi8dC68a2sychGrHTJYghMBD6k7eUcH0H5P73EckCA48xijWqXw==} @@ -3164,12 +3841,22 @@ packages: resolution: {integrity: sha512-y+WKFlBR8BGXnsNlIHFGPZmyDf3DFMoLhaflAnyZgV6rG6xu+JwesTo2Q9R6XwYmtmwAFCkAk3e35jEdoeh/3g==} engines: {node: '>=10'} + prop-types@15.8.1: + resolution: {integrity: sha512-oj87CgZICdulUohogVAR7AjlC0327U4el4L6eAvOqCeudMDVU0NThNaV+b9Df4dXgSP1gXMTnPdhfe/2qDH5cg==} + + property-information@6.5.0: + resolution: {integrity: sha512-PgTgs/BlvHxOu8QuEN7wi5A0OmXaBcHpmCSTehcs6Uuu9IkDIEo13Hy7n898RHfrQ49vKCoGeWZSaAK01nwVig==} + proto-list@1.2.4: resolution: {integrity: sha512-vtK/94akxsTMhe0/cbfpR+syPuszcuwhqVjJq26CuNDgFGj682oRBXOP5MJpv2r7JtE8MsiepGIqvvOTBwn2vA==} - proto-props@2.0.0: - resolution: {integrity: sha512-2yma2tog9VaRZY2mn3Wq51uiSW4NcPYT1cQdBagwyrznrilKSZwIZ0UG3ZPL/mx+axEns0hE35T5ufOYZXEnBQ==} - engines: {node: '>=4'} + prototype-properties@5.0.0: + resolution: {integrity: sha512-uCWE2QqnGlwvvJXTwiHTPTyHE62+zORO5hpFWhAwBGDtEtTmNZZleNLJDoFsqHCL4p/CeAP2Q1uMKFUKALuRGQ==} + engines: {node: '>=18.20'} + + punycode.js@2.3.1: + resolution: {integrity: sha512-uxFIHU0YlHYhDQtV4R9J6a52SLx28BCjT+4ieh7IGbgwVJWO+km431c4yRlREUAsAmt/uMjQUyQHNEPf0M39CA==} + engines: {node: '>=6'} punycode@2.3.1: resolution: {integrity: sha512-vYt7UD1U9Wg6138shLtLOvdAu+8DsC/ilFtEVHcH+wydcSpNE20AfSOduf6MkRFahL5FY7X1oU7nKVZFtfq8Fg==} @@ -3190,6 +3877,9 @@ packages: resolution: {integrity: sha512-WuyALRjWPDGtt/wzJiadO5AXY+8hZ80hVpe6MyivgraREW751X3SbhRvG3eLKOYN+8VEvqLcf3wdnt44Z4S4SA==} engines: {node: '>=10'} + rambda@7.5.0: + resolution: {integrity: sha512-y/M9weqWAH4iopRd7EHDEQQvpFPHj1AA3oHozE9tfITHUtTR7Z9PSlIRRG2l1GuW7sefC1cXFfIcF+cgnShdBA==} + randombytes@2.1.0: resolution: {integrity: sha512-vYl3iOX+4CKUWuxGi9Ukhie6fsqXqS9FE2Zaic4tNFD2N2QQaXOMFbuKK4QmDHC0JO6B1Zp41J0LpT0oR68amQ==} @@ -3197,6 +3887,9 @@ packages: resolution: {integrity: sha512-y3bGgqKj3QBdxLbLkomlohkvsA8gdAiUQlSBJnBhfn+BPxg4bc62d8TcBW15wavDfgexCgccckhcZvywyQYPOw==} hasBin: true + react-is@16.13.1: + resolution: {integrity: sha512-24e6ynE2H+OKt4kqsOvNd8kBpV65zoxbA4BVsEOB3ARVWQki/DHzaUoC5KuON/BiccDaCCTZBuOcfZs70kR8bQ==} + read-cmd-shim@4.0.0: resolution: {integrity: sha512-yILWifhaSEEytfXI76kB9xEEiG1AiozaCJZ83A87ytjRiN+jVibXjedjCRNjoZviinhG+4UkalO3mWTd8u5O0Q==} engines: {node: ^14.17.0 || ^16.13.0 || >=18.0.0} @@ -3221,6 +3914,10 @@ packages: resolution: {integrity: sha512-9u/sniCrY3D5WdsERHzHE4G2YCXqoG5FTHUiCC4SIbr6XcLZBY05ya9EKjYek9O5xOAwjGq+1JdGBAS7Q9ScoA==} engines: {node: '>= 6'} + readable-stream@4.5.2: + resolution: {integrity: sha512-yjavECdqeZ3GLXNgRXgeQEdz9fvDDkNKyHnbHRFtOr7/LcfgBcmct7t/ET+HaCTqfh06OzoAxrkN/IfjJBVe+g==} + engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} + readable-web-to-node-stream@3.0.2: resolution: {integrity: sha512-ePeK6cc1EcKLEhJFt/AebMCLL+GgSKhuygrZ/GLaKZYEecIgIECf4UaUuaByiGtzckwR4ain9VzUh95T1exYGw==} engines: {node: '>=8'} @@ -3233,10 +3930,22 @@ packages: resolution: {integrity: sha512-EJ4UNY/U1t2P/2k6oqotuX2Cc3T6nxJwsM0N0asT7dhrtH1ltUxDn4NalSYmPE2rCkVpcf/X6R0wDwcFpzhd4w==} engines: {node: '>=6'} + refa@0.12.1: + resolution: {integrity: sha512-J8rn6v4DBb2nnFqkqwy6/NnTYMcgLA+sLr0iIO41qpv0n+ngb7ksag2tMRl0inb1bbO/esUwzW1vbJi7K0sI0g==} + engines: {node: ^12.0.0 || ^14.0.0 || >=16.0.0} + + reflect.getprototypeof@1.0.6: + resolution: {integrity: sha512-fmfw4XgoDke3kdI6h4xcUz1dG8uaiv5q9gcEwLS4Pnth2kxT+GZ7YehS1JTMGBQmtV7Y4GFGbs2re2NqhdozUg==} + engines: {node: '>= 0.4'} + regenerate-unicode-properties@10.1.1: resolution: {integrity: sha512-X007RyZLsCJVVrjgEFVpLUTZwyOZk3oiL75ZcuYjlIWd6rNJtOjkBwQc5AsRrpbKVkxN6sklw/k/9m2jJYOf8Q==} engines: {node: '>=4'} + regenerate-unicode-properties@10.2.0: + resolution: {integrity: sha512-DqHn3DwbmmPVzeKj9woBadqmXxLvQoQIwu7nopMc72ztvxVmVk2SBhSnx67zuye5TP+lJsb/TBQsjLKhnDf3MA==} + engines: {node: '>=4'} + regenerate@1.4.2: resolution: {integrity: sha512-zrceR/XhGYU/d/opr2EKO7aRHUeiBI8qjtfHqADTwZd6Szfy16la6kqD0MIUs5z5hx6AaKa+PixpPrR289+I0A==} @@ -3246,6 +3955,13 @@ packages: regenerator-transform@0.15.2: resolution: {integrity: sha512-hfMp2BoF0qOk3uc5V20ALGDS2ddjQaLrdl7xrGXvAIow7qeWRM2VA2HuCHkUKk9slq3VwEwLNK3DFBqDfPGYtg==} + regex@4.3.3: + resolution: {integrity: sha512-r/AadFO7owAq1QJVeZ/nq9jNS1vyZt+6t1p/E59B56Rn2GCya+gr1KSyOzNL/er+r+B7phv5jG2xU2Nz1YkmJg==} + + regexp-ast-analysis@0.7.1: + resolution: {integrity: sha512-sZuz1dYW/ZsfG17WSAG7eS85r5a0dDsvg+7BiiYR5o6lKCAtUrEwdmRmaGF6rwVj3LcmAeYkOWKEPlbPzN3Y3A==} + engines: {node: ^12.0.0 || ^14.0.0 || >=16.0.0} + regexp-tree@0.1.27: resolution: {integrity: sha512-iETxpjK6YoRWJG5o6hXLwvjYAoW+FEZn9os0PD/b6AP6xQwsa/Y7lCVgIixBbUPMfhu+i2LtdeAqVTgGlQarfA==} hasBin: true @@ -3258,6 +3974,10 @@ packages: resolution: {integrity: sha512-RAM5FlZz+Lhmo7db9L298p2vHP5ZywrVXmVXpmAD9GuL5MPH6t9ROw1iA/wfHkQ76Qe7AaPF0nGuim96/IrQMQ==} engines: {node: '>=4'} + regexpu-core@6.1.1: + resolution: {integrity: sha512-k67Nb9jvwJcJmVpw0jPttR1/zVfnKf8Km0IPatrU/zJ5XeG3+Slx0xLXs9HByJSzXzrlz5EDvN6yLNMDc2qdnw==} + engines: {node: '>=4'} + registry-auth-token@5.0.2: resolution: {integrity: sha512-o/3ikDxtXaA59BmZuZrJZDJv8NMDGSj+6j6XaeBmHw8eY1i1qd9+6H+LjVvQXx3HN6aRCGa1cUdJ9RaJZUugnQ==} engines: {node: '>=14'} @@ -3266,10 +3986,17 @@ packages: resolution: {integrity: sha512-+crtS5QjFRqFCoQmvGduwYWEBng99ZvmFvF+cUJkGYF1L1BfU8C6Zp9T7f5vPAwyLkUExpvK+ANVZmGU49qi4Q==} engines: {node: '>=12'} + regjsgen@0.8.0: + resolution: {integrity: sha512-RvwtGe3d7LvWiDQXeQw8p5asZUmfU1G/l6WbUXeHta7Y2PEIvBTwH6E2EfmYUK8pxcxEdEmaomqyp0vZZ7C+3Q==} + regjsparser@0.10.0: resolution: {integrity: sha512-qx+xQGZVsy55CH0a1hiVwHmqjLryfh7wQyF5HO07XJ9f7dQMY/gPQHhlyDkIzJKC+x2fUCpCcUODUUUFrm7SHA==} hasBin: true + regjsparser@0.11.1: + resolution: {integrity: sha512-1DHODs4B8p/mQHU9kr+jv8+wIC9mtG4eBHxWxIq5mhjE3D5oORhCc6deRKzTjs9DcfRFmj9BHSDguZklqCGFWQ==} + hasBin: true + regjsparser@0.9.1: resolution: {integrity: sha512-dQUtn90WanSNl+7mQKcXAgZxvUe7Z0SqXlgzv0za4LwiUhyzBC58yQO3liFoUgu8GiJVInAhJjkj1N0EtQ5nkQ==} hasBin: true @@ -3278,6 +4005,10 @@ packages: resolution: {integrity: sha512-fGxEI7+wsG9xrvdjsrlmL22OMTTiHRwAMroiEeMgq8gzoLC/PQr7RsRDSTLUg/bZAZtF+TVIkHc6/4RIKrui+Q==} engines: {node: '>=0.10.0'} + requireindex@1.2.0: + resolution: {integrity: sha512-L9jEkOi3ASd9PYit2cwRfyppc9NoABujTP8/5gFcbERmo5jUoAKovIC3fsF17pkTnGsrByysqX+Kxd2OTNI1ww==} + engines: {node: '>=0.10.5'} + requires-port@1.0.0: resolution: {integrity: sha512-KigOCHcocU3XODJxsu8i/j8T9tzT4adHiecwORRQ0ZZFcp7ahwXuRU1m+yuO90C5ZUyGeGfocHDI14M3L3yDAQ==} @@ -3295,10 +4026,18 @@ packages: resolve-pkg-maps@1.0.0: resolution: {integrity: sha512-seS2Tj26TBVOC2NIc2rOe2y2ZO7efxITtLZcGSOnHHNOQ7CkiUBfw0Iw2ck6xkIhPwLhKNLS8BO+hEpngQlqzw==} + resolve.exports@2.0.2: + resolution: {integrity: sha512-X2UW6Nw3n/aMgDVy+0rSqgHlv39WZAlZrXCdnbyEiKm17DSqHX4MmQMaST3FbeWR5FTuRcUwYAziZajji0Y7mg==} + engines: {node: '>=10'} + resolve@1.22.8: resolution: {integrity: sha512-oKWePCxqpd6FlLvGV1VU0x7bkPmmCNolxzjMf4NczoDnQcIWrAF+cPtZn5i6n+RfD2d9i0tzpKnG6Yk168yIyw==} hasBin: true + resolve@2.0.0-next.5: + resolution: {integrity: sha512-U7WjGVG9sH8tvjW5SmGbQuui75FiyjAX72HX15DwBBwF9dNiQZRQAg9nnPhYy+TUnE0+VcrttuvNI8oSxZcocA==} + hasBin: true + responselike@3.0.0: resolution: {integrity: sha512-40yHxbNcl2+rzXvZuVkrYohathsSJlMTXKryG5y8uciHv1+xDLHQpgjG64JUO9nrEq2jGLH6IZ8BcZyw3wrweg==} engines: {node: '>=14.16'} @@ -3315,8 +4054,8 @@ packages: resolution: {integrity: sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==} hasBin: true - rollup@4.12.0: - resolution: {integrity: sha512-wz66wn4t1OHIJw3+XU7mJJQV/2NAfw5OAk6G6Hoo3zcvz/XOfQ52Vgi+AN4Uxoxi0KBBwk2g8zPrTDA4btSB/Q==} + rollup@4.24.0: + resolution: {integrity: sha512-DOmrlGSXNk1DM0ljiQA+i+o0rSLhtii1je5wgk60j49d1jHT5YYttBv1iWOnYSTG+fZZESUOSNiAl89SIet+Cg==} engines: {node: '>=18.0.0', npm: '>=8.0.0'} hasBin: true @@ -3344,6 +4083,10 @@ packages: safer-buffer@2.1.2: resolution: {integrity: sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==} + scslre@0.3.0: + resolution: {integrity: sha512-3A6sD0WYP7+QrjbfNA2FN3FsOaGGFoekCVgTyypy53gPxhbkCIjtO6YWgdrfM+n/8sI8JeXZOIxsHjMTNxQ4nQ==} + engines: {node: ^14.0.0 || >=16.0.0} + secure-compare@3.0.1: resolution: {integrity: sha512-AckIIV90rPDcBcglUwXPF3kg0P0qmPsPXAj6BBEENQE1p5yA1xfmDJzfi1Tappj37Pv2mVbKpL3Z1T+Nn7k1Qw==} @@ -3364,8 +4107,10 @@ packages: engines: {node: '>=10'} hasBin: true - serialize-javascript@6.0.0: - resolution: {integrity: sha512-Qr3TosvguFt8ePWqsvRfrKyQXIiW+nGbYpy8XK24NQHE83caxWt+mIymTT19DGFbNWNLfEwsrkSmN64lVWB9ag==} + semver@7.6.3: + resolution: {integrity: sha512-oVekP1cKtI+CTDvHWYFUcMtsK/00wmAEfyqKfNdARm8u1wNVhSgaX7A8d4UuIlUI5e84iEwOhs7ZPYRmzU9U6A==} + engines: {node: '>=10'} + hasBin: true serialize-javascript@6.0.2: resolution: {integrity: sha512-Saa1xPByTTq2gdeFZYLLo+RFE35NHZkAbqZeWNd3BpzppeVisAqpDjcp8dyf6uIvEqJRd46jemmyA4iFIeVk8g==} @@ -3389,8 +4134,8 @@ packages: resolution: {integrity: sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==} engines: {node: '>=8'} - shiki@0.14.7: - resolution: {integrity: sha512-dNPAPrxSc87ua2sKJ3H5dQ/6ZaY8RNnaAqK+t0eG7p0Soi2ydiqbGOTaZCqaYvA/uZYfS1LJnemt3Q+mSfcPCg==} + shiki@1.22.0: + resolution: {integrity: sha512-/t5LlhNs+UOKQCYBtl5ZsH/Vclz73GIqT2yQsCBygr8L/ppTdmpL4w3kPLoZJbMKVWtoG77Ue1feOjZfDxvMkw==} side-channel@1.0.6: resolution: {integrity: sha512-fDW/EZ6Q9RiO8eFG8Hj+7u/oW+XrPTIChwCOM2+th2A6OblDtYYIpve9m+KvI9Z4C9qSEXlaGR6bTEYHReuglA==} @@ -3412,6 +4157,13 @@ packages: resolution: {integrity: sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==} engines: {node: '>=8'} + slash@5.1.0: + resolution: {integrity: sha512-ZA6oR3T/pEyuqwMgAKT0/hAv8oAXckzbkmR0UkUosQ+Mc4RxGoJkRmwHgHufaenlyAgE1Mxgpdcrf75y6XcnDg==} + engines: {node: '>=14.16'} + + slashes@3.0.12: + resolution: {integrity: sha512-Q9VME8WyGkc7pJf6QEkj3wE+2CnvZMI+XJhwdTPR8Z/kWQRXi7boAWLDibRPyHRTUTPx5FaU7MsyrjI3yLB4HA==} + smart-buffer@4.2.0: resolution: {integrity: sha512-94hK0Hh8rPqQl2xXc3HsaBoOXKV20MToPkcXvwbISWLEs+64sBq5kFgn2kJDHb1Pry9yrP0dxrCI9RRci7RXKg==} engines: {node: '>= 6.0.0', npm: '>= 3.0.0'} @@ -3434,6 +4186,9 @@ packages: resolution: {integrity: sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==} engines: {node: '>=0.10.0'} + space-separated-tokens@2.0.2: + resolution: {integrity: sha512-PEGlAwrG8yXGXRjW32fGbg66JAlOAwbObuqVoJpv/mRgoWDQfgH1wDPvtzWyUSNAXBGSk8h755YDbbcEy3SH2Q==} + spdx-compare@1.0.0: resolution: {integrity: sha512-C1mDZOX0hnu0ep9dfmuoi03+eOdDoz2yvK79RxbcrVEG1NO1Ph35yW102DHWKN4pk80nwCgeMmSY5L25VE4D9A==} @@ -3485,6 +4240,13 @@ packages: resolution: {integrity: sha512-ji9qxRnOVfcuLDySj9qzhGSEFVobyt1kIOSkj1qZzYLzq7Tos/oUUWvotUPQLlrsidqsK6tBH89Bc9kL5zHA6w==} deprecated: 'Modern JS already guarantees Array#sort() is a stable sort, so this library is deprecated. See the compatibility table on MDN: https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array/sort#browser_compatibility' + stop-iteration-iterator@1.0.0: + resolution: {integrity: sha512-iCGQj+0l0HOdZ2AEeBADlsRC+vsnDsZsbdSiH1yNSjcfKM7fdpCMfqAL/dwF5BLiw/XhRft/Wax6zQbhq2BcjQ==} + engines: {node: '>= 0.4'} + + stream-chunks@1.0.0: + resolution: {integrity: sha512-/G+kinLx3pKXChtuko82taA4gZo56zFG2b2BbhmugmS0TUPBL40c5b2vjonS+gAHYK/cSKM9m0WTvAJYgDUeNw==} + stream-read-all@3.0.1: resolution: {integrity: sha512-EWZT9XOceBPlVJRrYcykW8jyRSZYbkb/0ZK36uLEmoWVO5gxBOnntNTseNzfREsqxqdfEGQrD8SXQ3QWbBmq8A==} engines: {node: '>=10'} @@ -3497,6 +4259,16 @@ packages: resolution: {integrity: sha512-HnLOCR3vjcY8beoNLtcjZ5/nxn2afmME6lhrDrebokqMap+XbeW8n9TXpPDOqdGK5qcI3oT0GKTW6wC7EMiVqA==} engines: {node: '>=12'} + string.prototype.includes@2.0.0: + resolution: {integrity: sha512-E34CkBgyeqNDcrbU76cDjL5JLcVrtSdYq0MEh/B10r17pRP4ciHLwTgnuLV8Ay6cgEMLkcBkFCKyFZ43YldYzg==} + + string.prototype.matchall@4.0.11: + resolution: {integrity: sha512-NUdh0aDavY2og7IbBPenWqR9exH+E26Sv8e0/eTe1tltDGZL+GtBkDAnnyBtmekfK6/Dq3MkcGtzXFEd1LQrtg==} + engines: {node: '>= 0.4'} + + string.prototype.repeat@1.0.0: + resolution: {integrity: sha512-0u/TldDbKD8bFCQ/4f5+mNRrXwZ8hg2w7ZR8wa16e8z9XpePWl3eGEcUD0OXpEH/VJH/2G3gjUtR3ZOiBe2S/w==} + string.prototype.trim@1.2.9: resolution: {integrity: sha512-klHuCNxiMZ8MlsOihJhJEBJAiMVqU3Z2nEXWfWnIqjN0gEFS9J9+IxKozWWtQGcgoa1WUZzLjKPTr4ZHNFTFxw==} engines: {node: '>= 0.4'} @@ -3511,6 +4283,9 @@ packages: string_decoder@1.3.0: resolution: {integrity: sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA==} + stringify-entities@4.0.4: + resolution: {integrity: sha512-IwfBptatlO+QCJUo19AqvrPNqlVMpW9YEL2LIVY+Rpv2qsjCGxaDLNRgeGsQWJhfItebuJhsGSLjaBbNSQ+ieg==} + strip-ansi@6.0.1: resolution: {integrity: sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==} engines: {node: '>=8'} @@ -3560,6 +4335,10 @@ packages: engines: {node: '>=10.13.0'} hasBin: true + synckit@0.9.2: + resolution: {integrity: sha512-vrozgXDQwYO72vHjUb/HnFbQx1exDjoKzqx23aXEg2a9VIg2TSFZ8FmeZpTjUCFMYw7mpX4BE2SFu8wI7asYsw==} + engines: {node: ^14.18.0 || >=16.0.0} + table-layout@1.0.2: resolution: {integrity: sha512-qd/R7n5rQTRFi+Zf2sk5XVVd9UQl6ZkduPFC3S7WEGJAmetDTjY3qPN50eSKzwuzEyQKy5TN2TiZdkIjos2L6A==} engines: {node: '>=8.0.0'} @@ -3569,6 +4348,10 @@ packages: engines: {node: '>=12.17'} hasBin: true + tapable@2.2.1: + resolution: {integrity: sha512-GNzQvQTOIP6RyTfE2Qxb8ZVlNmw0n88vp1szwWRimP02mnTsx3Wtn5qRdqY9w2XduFNUgvOwhNnQsjwCp+kqaQ==} + engines: {node: '>=6'} + tar@6.2.1: resolution: {integrity: sha512-DZ4yORTwrbTj/7MZYq2w+/ZFdI6OZ/f9SFHR+71gIVUZhOQPHzVCLpvRnPgyaMpfWxxk/4ONva3GQSyNIKRv6A==} engines: {node: '>=10'} @@ -3586,9 +4369,9 @@ packages: engines: {node: '>=10'} hasBin: true - test-exclude@6.0.0: - resolution: {integrity: sha512-cAGWPIyOHU6zlmg88jwm7VRyXnMN7iV68OGAbYDk/Mh/xC/pzVPlQtY6ngoIH/5/tciuhGfvESU8GrHrcxD56w==} - engines: {node: '>=8'} + test-exclude@7.0.1: + resolution: {integrity: sha512-pFYqmTw68LXVjeWJMST4+borgQP2AyMNbg1BpZh9LbyhUeNkeaPF9gzfPGUAnSMV3qPYdWUwDIjjCLiSDOl7vg==} + engines: {node: '>=18'} text-table@0.2.0: resolution: {integrity: sha512-N+8UisAXDGk8PFXP4HAzVR9nbfmVJ3zYLAWiTIoqC5v5isinhr+r5uaO8+7r3BMfuNIufIsA7RdpVgacC2cSpw==} @@ -3609,6 +4392,9 @@ packages: resolution: {integrity: sha512-gcANaAnd2QDZFmHFEOF4k7uc1J/6a6z3DJMd/QwEyxLoKGiptJRwid582r7QIsFlFMIZ3SnxfS52S4hm2DHkuQ==} engines: {node: ^14.17.0 || ^16.13.0 || >=18.0.0} + trim-lines@3.0.1: + resolution: {integrity: sha512-kRj8B+YHZCc9kQYdWfJB2/oUl9rA99qbowYYBtr4ui4mZyAQ2JpvVBd/6U2YloATfqBhBTSMhTpgBHtU0Mf3Rg==} + ts-api-utils@1.3.0: resolution: {integrity: sha512-UQMIo7pb8WRomKR1/+MFVLTroIvDVtMX3K6OUir8ynLyzB8Jeriont2bTAtmNPa1ekAgN7YPDyf6V+ygrdU+eQ==} engines: {node: '>=16'} @@ -3618,6 +4404,9 @@ packages: tsconfig-paths@3.15.0: resolution: {integrity: sha512-2Ac2RgzDe/cn48GvOe3M+o82pEFewD3UPbyoUHHdKasHwJKjds4fLXWf/Ux5kATBKN20oaFGu+jbElp1pos0mg==} + tslib@2.7.0: + resolution: {integrity: sha512-gLXCKdN1/j47AiHiOkJN69hJmcbGTHI0ImLmbYLHykhgeN0jVGola9yVjFgzCUklsZQMW55o+dW7IXv3RCXDzA==} + tuf-js@1.1.7: resolution: {integrity: sha512-i3P9Kgw3ytjELUfpuKVDNBJvk4u5bXL6gskv572mcevPbSKCV3zt3djhmlEQ65yERjIbOSncy7U4cQJaB1CBCg==} engines: {node: ^14.17.0 || ^16.13.0 || >=18.0.0} @@ -3668,15 +4457,15 @@ packages: typedarray-to-buffer@3.1.5: resolution: {integrity: sha512-zdu8XMNEDepKKR+XYOXAVPtWui0ly0NtohUscw+UmaHiAWT8hrV1rr//H6V+0DvJ3OQ19S979M0laLfX8rm82Q==} - typedoc@0.25.13: - resolution: {integrity: sha512-pQqiwiJ+Z4pigfOnnysObszLiU3mVLWAExSPf+Mu06G/qsc3wzbuM56SZQvONhHLncLUhYzOVkjFFpFfL5AzhQ==} - engines: {node: '>= 16'} + typedoc@0.26.8: + resolution: {integrity: sha512-QBF0BMbnNeUc6U7pRHY7Jb8pjhmiNWZNQT8LU6uk9qP9t3goP9bJptdlNqMC0wBB2w9sQrxjZt835bpRSSq1LA==} + engines: {node: '>= 18'} hasBin: true peerDependencies: - typescript: 4.6.x || 4.7.x || 4.8.x || 4.9.x || 5.0.x || 5.1.x || 5.2.x || 5.3.x || 5.4.x + typescript: 4.6.x || 4.7.x || 4.8.x || 4.9.x || 5.0.x || 5.1.x || 5.2.x || 5.3.x || 5.4.x || 5.5.x || 5.6.x - typescript@5.4.5: - resolution: {integrity: sha512-vcI4UpRgg81oIRUFwR0WSIHKt11nJ7SAVlYNIu+QpqeyXP+gpQJy/Z4+F0aGxSE4MqwjyXvW/TzgkLAx2AGHwQ==} + typescript@5.6.2: + resolution: {integrity: sha512-NW8ByodCSNCwZeghjN3o+JX5OFH0Ojg6sadjEKY4huZ52TqbJTJnDo5+Tw98lSy63NZvi4n+ez5m2u5d4PkZyw==} engines: {node: '>=14.17'} hasBin: true @@ -3692,6 +4481,9 @@ packages: resolution: {integrity: sha512-T+tKVNs6Wu7IWiAce5BgMd7OZfNYUndHwc5MknN+UHOudi7sGZzuHdCadllRuqJ3fPtgFtIH9+lt9qRv6lmpfA==} engines: {node: '>=12.17'} + uc.micro@2.1.0: + resolution: {integrity: sha512-ARDJmphmdvUk6Glw7y9DQ2bFkKBHwQHLi2lsaH6PPmz/Ka9sFOBsBluozhDltWmnv9u/cF6Rt87znRTPV+yp/A==} + unbox-primitive@1.0.2: resolution: {integrity: sha512-61pPlCD9h51VoreyJ0BReideM3MDKMKnh6+V9L08331ipq6Q8OFXZYiqP6n/tbHx4s5I9uRhcye6BrbkizkBDw==} @@ -3711,6 +4503,10 @@ packages: resolution: {integrity: sha512-6t3foTQI9qne+OZoVQB/8x8rk2k1eVy1gRXhV3oFQ5T6R1dqQ1xtin3XqSlx3+ATBkliTaR/hHyJBm+LVPNM8w==} engines: {node: '>=4'} + unicorn-magic@0.1.0: + resolution: {integrity: sha512-lRfVq8fE8gz6QMBuDM6a+LO3IAzTi05H6gCVaUpir2E1Rwpo4ZUog45KpNXKC/Mn3Yb9UDuHumeFTo9iV/D9FQ==} + engines: {node: '>=18'} + union@0.5.0: resolution: {integrity: sha512-N6uOhuW6zO95P3Mel2I2zMsbsanvvtgn6jVqJv4vbVcz/JN0OkL9suomjQGmWtxJQXOCqUJvquc1sMeNz/IwlA==} engines: {node: '>= 0.8.0'} @@ -3735,11 +4531,23 @@ packages: resolution: {integrity: sha512-VGXBUVwxKMBUznyffQweQABPRRW1vHZAbadFZud4pLFAqRGvv/96vafgjWFqzourzr8YonlQiPgH0YCJfawoGQ==} engines: {node: '>=12'} - unist-util-stringify-position@2.0.3: - resolution: {integrity: sha512-3faScn5I+hy9VleOq/qNbAd6pAx7iH5jYBMS9I1HgQVijz/4mv5Bvw5iw1sC/90CODiKo81G/ps8AJrISn687g==} + unist-util-is@6.0.0: + resolution: {integrity: sha512-2qCTHimwdxLfz+YzdGfkqNlH0tLi9xjTnHddPmJwtIG9MGsdbutfTc4P+haPD7l7Cjxf/WZj+we5qfVPvvxfYw==} + + unist-util-position@5.0.0: + resolution: {integrity: sha512-fucsC7HjXvkB5R3kTCO7kUjRdrS0BJt3M/FPxmHMBOm8JQi2BsHAHFsy27E0EolP8rp0NzXsJ+jNPyDWvOJZPA==} - update-browserslist-db@1.0.14: - resolution: {integrity: sha512-JixKH8GR2pWYshIPUg/NujK3JO7JiqEEUiNArE86NQyrgUuZeTlZQN3xuS/yiV5Kb48ev9K6RqNkaJjXsdg7Jw==} + unist-util-stringify-position@4.0.0: + resolution: {integrity: sha512-0ASV06AAoKCDkS2+xw5RXJywruurpbC4JZSm7nr7MOt1ojAzvyyaO+UxZf18j8FCF6kmzCZKcAgN/yu2gm2XgQ==} + + unist-util-visit-parents@6.0.1: + resolution: {integrity: sha512-L/PqWzfTP9lzzEa6CKs0k2nARxTdZduw3zyh8d2NVBnsyvHjSX4TWse388YrrQKbvI8w20fGjGlhgT96WwKykw==} + + unist-util-visit@5.0.0: + resolution: {integrity: sha512-MR04uvD+07cwl/yhVuVWAtw+3GOR/knlL55Nd/wAdblk27GCVt3lqpTivy/tkJcZoNPzTwS1Y+KMojlLDhoTzg==} + + update-browserslist-db@1.1.1: + resolution: {integrity: sha512-R8UzCaa9Az+38REPiJ1tXlImTJXlVfgHZsglwBD/k6nj76ctsH1E3q4doGrukiLQd3sGQYu56r5+lo5r94l29A==} hasBin: true peerDependencies: browserslist: '>= 4.21.0' @@ -3772,11 +4580,17 @@ packages: resolution: {integrity: sha512-YuKoXDAhBYxY7SfOKxHBDoSyENFeW5VvIIQp2TGQuit8gpK6MnWaQelBKxso72DoxTZfZdcP3W90LqpSkgPzLQ==} engines: {node: ^14.17.0 || ^16.13.0 || >=18.0.0} - vscode-oniguruma@1.7.0: - resolution: {integrity: sha512-L9WMGRfrjOhgHSdOYgCt/yRMsXzLDJSL7BPrOZt73gU0iWO4mpqzqQzOz5srxqTvMBaR0XZTSrVWo4j55Rc6cA==} + vfile-message@4.0.2: + resolution: {integrity: sha512-jRDZ1IMLttGj41KcZvlrYAaI3CfqpLpfpf+Mfig13viT6NKvRzWZ+lXz0Y5D60w6uJIBAOGq9mSHf0gktF0duw==} + + vfile@6.0.3: + resolution: {integrity: sha512-KzIbH/9tXat2u30jf+smMwFCsno4wHVdNmzFyL+T/L3UGqqk6JKfVqOFOZEpZSHADH1k40ab6NUIXZq422ov3Q==} - vscode-textmate@8.0.0: - resolution: {integrity: sha512-AFbieoL7a5LMqcnOF04ji+rpXadgOXnZsxQr//r83kLPr7biP7am3g9zbaZIaBGwBRWeSvoMD4mgPdX3e4NWBg==} + vue-eslint-parser@9.4.3: + resolution: {integrity: sha512-2rYRLWlIpaiN8xbPiDyXZXRgLGOtWxERV7ND5fFAv5qo1D2N9Fu9MNajBNc6o13lZ+24DAWCkQCvj4klgmcITg==} + engines: {node: ^14.17.0 || >=16.0.0} + peerDependencies: + eslint: '>=6.0.0' walk-up-path@3.0.1: resolution: {integrity: sha512-9YlCL/ynK3CTlrSRrDxZvUauLzAswPCrsaCgilqFevUYpeEW0/3ScEjaa3kbW/T0ghhkEr7mv+fpjqn1Y1YuTA==} @@ -3788,6 +4602,14 @@ packages: which-boxed-primitive@1.0.2: resolution: {integrity: sha512-bwZdv0AKLpplFY2KZRX6TvyuN7ojjr7lwkg6ml0roIy9YeuSr7JS372qlNW18UQYzgYK9ziGcerWqZOmEn9VNg==} + which-builtin-type@1.1.4: + resolution: {integrity: sha512-bppkmBSsHFmIMSl8BO9TbsyzsvGjVoppt8xUiGzwiu/bhDCGxnpOKCxgqj6GuyHE0mINMDecBFPlOm2hzY084w==} + engines: {node: '>= 0.4'} + + which-collection@1.0.2: + resolution: {integrity: sha512-K4jVyjnBdgvc86Y6BkaLZEN933SwYOuBFkdmBu9ZfkcAbdVbpITnDmjvZ/aQjRXQrv5EPkTnD1s39GiiqbngCw==} + engines: {node: '>= 0.4'} + which-typed-array@1.1.15: resolution: {integrity: sha512-oV0jmFtUky6CXfkqehVvBP/LSWJ2sy4vWMioiENyJLePrBO/yKyV9OyJySfAKosh+RYkIl5zJCNZ8/4JncrpdA==} engines: {node: '>= 0.4'} @@ -3821,8 +4643,8 @@ packages: resolution: {integrity: sha512-JNjcULU2e4KJwUNv6CHgI46UvDGitb6dGryHajXTDiLgg1/RiGoPSDw4kZfYnwGtEXf2ZMeIewDQgFGzkCB2Sg==} engines: {node: '>=12.17'} - workerpool@6.2.1: - resolution: {integrity: sha512-ILEIE97kDZvF9Wb9f6h5aXK4swSlKGUcOEGiIYb2OOu/IrDU9iwj0fD//SsA6E5ibwJxpEvhullJY4Sl4GcpAw==} + workerpool@6.5.1: + resolution: {integrity: sha512-Fs4dNYcsdpYSAfVxhnl1L5zTksjvOJxtC5hzMNl+1t9B8hTJTdKDyZ5ju7ztgPy+ft9tBFXoOlDNiOT9WUXZlA==} wrap-ansi@7.0.0: resolution: {integrity: sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==} @@ -3856,8 +4678,13 @@ packages: yallist@4.0.0: resolution: {integrity: sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==} - yargs-parser@20.2.4: - resolution: {integrity: sha512-WOkpgNhPTlE73h4VFAFsOnomJVaovO8VqLDzy5saChRBFQFBoMYirowyW+Q9HB4HFF4Z7VZTiG3iSzJJA29yRA==} + yaml@2.5.1: + resolution: {integrity: sha512-bLQOjaX/ADgQ20isPJRvF0iRUHIxVhYvr53Of7wGcWlO2jvtUlH5m87DsmulFVxRpNLOnI4tB6p/oh8D7kpn9Q==} + engines: {node: '>= 14'} + hasBin: true + + yargs-parser@20.2.9: + resolution: {integrity: sha512-y11nGElTIV+CT3Zv9t7VKl+Q3hTQoT9a1Qzezhhl6Rp21gJ/IVTW7Z3y9EWXhuUBC2Shnf+DX0antecpAwSP8w==} engines: {node: '>=10'} yargs-parser@21.1.1: @@ -3880,6 +4707,9 @@ packages: resolution: {integrity: sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q==} engines: {node: '>=10'} + zwitch@2.0.4: + resolution: {integrity: sha512-bXE4cR/kVZhKZX/RjPEflHaKVhUVl85noU3v6b8apfQEc1x4A+zBxjZ4lN8LqGd6WZ3dl98pY4o717VFmoPp+A==} + snapshots: '@75lb/deep-merge@1.1.1': @@ -3897,162 +4727,298 @@ snapshots: '@babel/highlight': 7.24.5 picocolors: 1.0.0 - '@babel/compat-data@7.24.4': {} + '@babel/code-frame@7.25.7': + dependencies: + '@babel/highlight': 7.25.7 + picocolors: 1.0.0 - '@babel/core@7.24.5': + '@babel/compat-data@7.25.7': {} + + '@babel/core@7.25.2': dependencies: '@ampproject/remapping': 2.3.0 - '@babel/code-frame': 7.24.2 - '@babel/generator': 7.24.5 - '@babel/helper-compilation-targets': 7.23.6 - '@babel/helper-module-transforms': 7.24.5(@babel/core@7.24.5) - '@babel/helpers': 7.24.5 - '@babel/parser': 7.24.5 - '@babel/template': 7.24.0 - '@babel/traverse': 7.24.5 - '@babel/types': 7.24.5 + '@babel/code-frame': 7.25.7 + '@babel/generator': 7.25.7 + '@babel/helper-compilation-targets': 7.25.7 + '@babel/helper-module-transforms': 7.25.7(@babel/core@7.25.2) + '@babel/helpers': 7.25.7 + '@babel/parser': 7.25.7 + '@babel/template': 7.25.7 + '@babel/traverse': 7.25.7 + '@babel/types': 7.25.7 convert-source-map: 2.0.0 - debug: 4.3.4(supports-color@8.1.1) + debug: 4.3.4 gensync: 1.0.0-beta.2 json5: 2.2.3 semver: 6.3.1 transitivePeerDependencies: - supports-color - '@babel/generator@7.24.5': + '@babel/core@7.25.7': dependencies: - '@babel/types': 7.24.5 + '@ampproject/remapping': 2.3.0 + '@babel/code-frame': 7.25.7 + '@babel/generator': 7.25.7 + '@babel/helper-compilation-targets': 7.25.7 + '@babel/helper-module-transforms': 7.25.7(@babel/core@7.25.7) + '@babel/helpers': 7.25.7 + '@babel/parser': 7.25.7 + '@babel/template': 7.25.7 + '@babel/traverse': 7.25.7 + '@babel/types': 7.25.7 + convert-source-map: 2.0.0 + debug: 4.3.4 + gensync: 1.0.0-beta.2 + json5: 2.2.3 + semver: 6.3.1 + transitivePeerDependencies: + - supports-color + + '@babel/eslint-parser@7.25.1(@babel/core@7.25.2)(eslint@9.12.0)': + dependencies: + '@babel/core': 7.25.2 + '@nicolo-ribaudo/eslint-scope-5-internals': 5.1.1-v1 + eslint: 9.12.0 + eslint-visitor-keys: 2.1.0 + semver: 6.3.1 + + '@babel/eslint-parser@7.25.7(@babel/core@7.25.7)(eslint@9.12.0)': + dependencies: + '@babel/core': 7.25.7 + '@nicolo-ribaudo/eslint-scope-5-internals': 5.1.1-v1 + eslint: 9.12.0 + eslint-visitor-keys: 2.1.0 + semver: 6.3.1 + + '@babel/eslint-plugin@7.25.7(@babel/eslint-parser@7.25.7(@babel/core@7.25.7)(eslint@9.12.0))(eslint@9.12.0)': + dependencies: + '@babel/eslint-parser': 7.25.7(@babel/core@7.25.7)(eslint@9.12.0) + eslint: 9.12.0 + eslint-rule-composer: 0.3.0 + + '@babel/generator@7.25.7': + dependencies: + '@babel/types': 7.25.7 '@jridgewell/gen-mapping': 0.3.5 '@jridgewell/trace-mapping': 0.3.25 - jsesc: 2.5.2 + jsesc: 3.0.2 '@babel/helper-annotate-as-pure@7.22.5': dependencies: '@babel/types': 7.24.5 - '@babel/helper-builder-binary-assignment-operator-visitor@7.22.15': + '@babel/helper-annotate-as-pure@7.25.7': dependencies: - '@babel/types': 7.24.5 + '@babel/types': 7.25.7 + + '@babel/helper-builder-binary-assignment-operator-visitor@7.25.7': + dependencies: + '@babel/traverse': 7.25.7 + '@babel/types': 7.25.7 + transitivePeerDependencies: + - supports-color - '@babel/helper-compilation-targets@7.23.6': + '@babel/helper-compilation-targets@7.25.7': dependencies: - '@babel/compat-data': 7.24.4 - '@babel/helper-validator-option': 7.23.5 - browserslist: 4.23.0 + '@babel/compat-data': 7.25.7 + '@babel/helper-validator-option': 7.25.7 + browserslist: 4.24.0 lru-cache: 5.1.1 semver: 6.3.1 - '@babel/helper-create-class-features-plugin@7.24.5(@babel/core@7.24.5)': + '@babel/helper-create-class-features-plugin@7.25.7(@babel/core@7.25.2)': dependencies: - '@babel/core': 7.24.5 + '@babel/core': 7.25.2 + '@babel/helper-annotate-as-pure': 7.25.7 + '@babel/helper-member-expression-to-functions': 7.25.7 + '@babel/helper-optimise-call-expression': 7.25.7 + '@babel/helper-replace-supers': 7.25.7(@babel/core@7.25.2) + '@babel/helper-skip-transparent-expression-wrappers': 7.25.7 + '@babel/traverse': 7.25.7 + semver: 6.3.1 + transitivePeerDependencies: + - supports-color + + '@babel/helper-create-class-features-plugin@7.25.7(@babel/core@7.25.7)': + dependencies: + '@babel/core': 7.25.7 + '@babel/helper-annotate-as-pure': 7.25.7 + '@babel/helper-member-expression-to-functions': 7.25.7 + '@babel/helper-optimise-call-expression': 7.25.7 + '@babel/helper-replace-supers': 7.25.7(@babel/core@7.25.7) + '@babel/helper-skip-transparent-expression-wrappers': 7.25.7 + '@babel/traverse': 7.25.7 + semver: 6.3.1 + transitivePeerDependencies: + - supports-color + + '@babel/helper-create-regexp-features-plugin@7.22.15(@babel/core@7.25.2)': + dependencies: + '@babel/core': 7.25.2 '@babel/helper-annotate-as-pure': 7.22.5 - '@babel/helper-environment-visitor': 7.22.20 - '@babel/helper-function-name': 7.23.0 - '@babel/helper-member-expression-to-functions': 7.24.5 - '@babel/helper-optimise-call-expression': 7.22.5 - '@babel/helper-replace-supers': 7.24.1(@babel/core@7.24.5) - '@babel/helper-skip-transparent-expression-wrappers': 7.22.5 - '@babel/helper-split-export-declaration': 7.24.5 + regexpu-core: 5.3.2 semver: 6.3.1 - '@babel/helper-create-regexp-features-plugin@7.22.15(@babel/core@7.24.5)': + '@babel/helper-create-regexp-features-plugin@7.22.15(@babel/core@7.25.7)': dependencies: - '@babel/core': 7.24.5 + '@babel/core': 7.25.7 '@babel/helper-annotate-as-pure': 7.22.5 regexpu-core: 5.3.2 semver: 6.3.1 - '@babel/helper-define-polyfill-provider@0.6.2(@babel/core@7.24.5)': + '@babel/helper-create-regexp-features-plugin@7.25.7(@babel/core@7.25.2)': + dependencies: + '@babel/core': 7.25.2 + '@babel/helper-annotate-as-pure': 7.25.7 + regexpu-core: 6.1.1 + semver: 6.3.1 + + '@babel/helper-create-regexp-features-plugin@7.25.7(@babel/core@7.25.7)': dependencies: - '@babel/core': 7.24.5 - '@babel/helper-compilation-targets': 7.23.6 - '@babel/helper-plugin-utils': 7.24.5 - debug: 4.3.4(supports-color@8.1.1) + '@babel/core': 7.25.7 + '@babel/helper-annotate-as-pure': 7.25.7 + regexpu-core: 6.1.1 + semver: 6.3.1 + + '@babel/helper-define-polyfill-provider@0.6.2(@babel/core@7.25.2)': + dependencies: + '@babel/core': 7.25.2 + '@babel/helper-compilation-targets': 7.25.7 + '@babel/helper-plugin-utils': 7.25.7 + debug: 4.3.4 lodash.debounce: 4.0.8 resolve: 1.22.8 transitivePeerDependencies: - supports-color - '@babel/helper-environment-visitor@7.22.20': {} + '@babel/helper-define-polyfill-provider@0.6.2(@babel/core@7.25.7)': + dependencies: + '@babel/core': 7.25.7 + '@babel/helper-compilation-targets': 7.25.7 + '@babel/helper-plugin-utils': 7.25.7 + debug: 4.3.4 + lodash.debounce: 4.0.8 + resolve: 1.22.8 + transitivePeerDependencies: + - supports-color - '@babel/helper-function-name@7.23.0': + '@babel/helper-member-expression-to-functions@7.25.7': dependencies: - '@babel/template': 7.24.0 - '@babel/types': 7.24.5 + '@babel/traverse': 7.25.7 + '@babel/types': 7.25.7 + transitivePeerDependencies: + - supports-color - '@babel/helper-hoist-variables@7.22.5': + '@babel/helper-module-imports@7.24.3': dependencies: '@babel/types': 7.24.5 - '@babel/helper-member-expression-to-functions@7.24.5': + '@babel/helper-module-imports@7.25.7': dependencies: - '@babel/types': 7.24.5 + '@babel/traverse': 7.25.7 + '@babel/types': 7.25.7 + transitivePeerDependencies: + - supports-color - '@babel/helper-module-imports@7.24.3': + '@babel/helper-module-transforms@7.25.7(@babel/core@7.25.2)': dependencies: - '@babel/types': 7.24.5 + '@babel/core': 7.25.2 + '@babel/helper-module-imports': 7.25.7 + '@babel/helper-simple-access': 7.25.7 + '@babel/helper-validator-identifier': 7.25.7 + '@babel/traverse': 7.25.7 + transitivePeerDependencies: + - supports-color - '@babel/helper-module-transforms@7.24.5(@babel/core@7.24.5)': + '@babel/helper-module-transforms@7.25.7(@babel/core@7.25.7)': dependencies: - '@babel/core': 7.24.5 - '@babel/helper-environment-visitor': 7.22.20 - '@babel/helper-module-imports': 7.24.3 - '@babel/helper-simple-access': 7.24.5 - '@babel/helper-split-export-declaration': 7.24.5 - '@babel/helper-validator-identifier': 7.24.5 + '@babel/core': 7.25.7 + '@babel/helper-module-imports': 7.25.7 + '@babel/helper-simple-access': 7.25.7 + '@babel/helper-validator-identifier': 7.25.7 + '@babel/traverse': 7.25.7 + transitivePeerDependencies: + - supports-color - '@babel/helper-optimise-call-expression@7.22.5': + '@babel/helper-optimise-call-expression@7.25.7': dependencies: - '@babel/types': 7.24.5 + '@babel/types': 7.25.7 - '@babel/helper-plugin-utils@7.24.5': {} + '@babel/helper-plugin-utils@7.25.7': {} - '@babel/helper-remap-async-to-generator@7.22.20(@babel/core@7.24.5)': + '@babel/helper-remap-async-to-generator@7.25.7(@babel/core@7.25.2)': dependencies: - '@babel/core': 7.24.5 - '@babel/helper-annotate-as-pure': 7.22.5 - '@babel/helper-environment-visitor': 7.22.20 - '@babel/helper-wrap-function': 7.24.5 + '@babel/core': 7.25.2 + '@babel/helper-annotate-as-pure': 7.25.7 + '@babel/helper-wrap-function': 7.25.7 + '@babel/traverse': 7.25.7 + transitivePeerDependencies: + - supports-color - '@babel/helper-replace-supers@7.24.1(@babel/core@7.24.5)': + '@babel/helper-remap-async-to-generator@7.25.7(@babel/core@7.25.7)': dependencies: - '@babel/core': 7.24.5 - '@babel/helper-environment-visitor': 7.22.20 - '@babel/helper-member-expression-to-functions': 7.24.5 - '@babel/helper-optimise-call-expression': 7.22.5 + '@babel/core': 7.25.7 + '@babel/helper-annotate-as-pure': 7.25.7 + '@babel/helper-wrap-function': 7.25.7 + '@babel/traverse': 7.25.7 + transitivePeerDependencies: + - supports-color - '@babel/helper-simple-access@7.24.5': + '@babel/helper-replace-supers@7.25.7(@babel/core@7.25.2)': dependencies: - '@babel/types': 7.24.5 + '@babel/core': 7.25.2 + '@babel/helper-member-expression-to-functions': 7.25.7 + '@babel/helper-optimise-call-expression': 7.25.7 + '@babel/traverse': 7.25.7 + transitivePeerDependencies: + - supports-color - '@babel/helper-skip-transparent-expression-wrappers@7.22.5': + '@babel/helper-replace-supers@7.25.7(@babel/core@7.25.7)': dependencies: - '@babel/types': 7.24.5 + '@babel/core': 7.25.7 + '@babel/helper-member-expression-to-functions': 7.25.7 + '@babel/helper-optimise-call-expression': 7.25.7 + '@babel/traverse': 7.25.7 + transitivePeerDependencies: + - supports-color - '@babel/helper-split-export-declaration@7.24.5': + '@babel/helper-simple-access@7.25.7': dependencies: - '@babel/types': 7.24.5 + '@babel/traverse': 7.25.7 + '@babel/types': 7.25.7 + transitivePeerDependencies: + - supports-color + + '@babel/helper-skip-transparent-expression-wrappers@7.25.7': + dependencies: + '@babel/traverse': 7.25.7 + '@babel/types': 7.25.7 + transitivePeerDependencies: + - supports-color '@babel/helper-string-parser@7.24.1': {} + '@babel/helper-string-parser@7.25.7': {} + '@babel/helper-validator-identifier@7.24.5': {} - '@babel/helper-validator-option@7.23.5': {} + '@babel/helper-validator-identifier@7.25.7': {} - '@babel/helper-wrap-function@7.24.5': - dependencies: - '@babel/helper-function-name': 7.23.0 - '@babel/template': 7.24.0 - '@babel/types': 7.24.5 + '@babel/helper-validator-option@7.25.7': {} - '@babel/helpers@7.24.5': + '@babel/helper-wrap-function@7.25.7': dependencies: - '@babel/template': 7.24.0 - '@babel/traverse': 7.24.5 - '@babel/types': 7.24.5 + '@babel/template': 7.25.7 + '@babel/traverse': 7.25.7 + '@babel/types': 7.25.7 transitivePeerDependencies: - supports-color + '@babel/helpers@7.25.7': + dependencies: + '@babel/template': 7.25.7 + '@babel/types': 7.25.7 + '@babel/highlight@7.24.5': dependencies: '@babel/helper-validator-identifier': 7.24.5 @@ -4060,537 +5026,1225 @@ snapshots: js-tokens: 4.0.0 picocolors: 1.0.0 - '@babel/parser@7.24.5': + '@babel/highlight@7.25.7': dependencies: - '@babel/types': 7.24.5 + '@babel/helper-validator-identifier': 7.25.7 + chalk: 2.4.2 + js-tokens: 4.0.0 + picocolors: 1.0.0 + + '@babel/parser@7.25.7': + dependencies: + '@babel/types': 7.25.7 + + '@babel/plugin-bugfix-firefox-class-in-computed-class-key@7.25.7(@babel/core@7.25.2)': + dependencies: + '@babel/core': 7.25.2 + '@babel/helper-plugin-utils': 7.25.7 + '@babel/traverse': 7.25.7 + transitivePeerDependencies: + - supports-color + + '@babel/plugin-bugfix-firefox-class-in-computed-class-key@7.25.7(@babel/core@7.25.7)': + dependencies: + '@babel/core': 7.25.7 + '@babel/helper-plugin-utils': 7.25.7 + '@babel/traverse': 7.25.7 + transitivePeerDependencies: + - supports-color + + '@babel/plugin-bugfix-safari-class-field-initializer-scope@7.25.7(@babel/core@7.25.2)': + dependencies: + '@babel/core': 7.25.2 + '@babel/helper-plugin-utils': 7.25.7 + + '@babel/plugin-bugfix-safari-class-field-initializer-scope@7.25.7(@babel/core@7.25.7)': + dependencies: + '@babel/core': 7.25.7 + '@babel/helper-plugin-utils': 7.25.7 + + '@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression@7.25.7(@babel/core@7.25.2)': + dependencies: + '@babel/core': 7.25.2 + '@babel/helper-plugin-utils': 7.25.7 + + '@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression@7.25.7(@babel/core@7.25.7)': + dependencies: + '@babel/core': 7.25.7 + '@babel/helper-plugin-utils': 7.25.7 + + '@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining@7.25.7(@babel/core@7.25.2)': + dependencies: + '@babel/core': 7.25.2 + '@babel/helper-plugin-utils': 7.25.7 + '@babel/helper-skip-transparent-expression-wrappers': 7.25.7 + '@babel/plugin-transform-optional-chaining': 7.25.7(@babel/core@7.25.2) + transitivePeerDependencies: + - supports-color + + '@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining@7.25.7(@babel/core@7.25.7)': + dependencies: + '@babel/core': 7.25.7 + '@babel/helper-plugin-utils': 7.25.7 + '@babel/helper-skip-transparent-expression-wrappers': 7.25.7 + '@babel/plugin-transform-optional-chaining': 7.25.7(@babel/core@7.25.7) + transitivePeerDependencies: + - supports-color + + '@babel/plugin-bugfix-v8-static-class-fields-redefine-readonly@7.25.7(@babel/core@7.25.2)': + dependencies: + '@babel/core': 7.25.2 + '@babel/helper-plugin-utils': 7.25.7 + '@babel/traverse': 7.25.7 + transitivePeerDependencies: + - supports-color + + '@babel/plugin-bugfix-v8-static-class-fields-redefine-readonly@7.25.7(@babel/core@7.25.7)': + dependencies: + '@babel/core': 7.25.7 + '@babel/helper-plugin-utils': 7.25.7 + '@babel/traverse': 7.25.7 + transitivePeerDependencies: + - supports-color + + '@babel/plugin-proposal-decorators@7.24.7(@babel/core@7.25.2)': + dependencies: + '@babel/core': 7.25.2 + '@babel/helper-create-class-features-plugin': 7.25.7(@babel/core@7.25.2) + '@babel/helper-plugin-utils': 7.25.7 + '@babel/plugin-syntax-decorators': 7.25.7(@babel/core@7.25.2) + transitivePeerDependencies: + - supports-color + + '@babel/plugin-proposal-private-property-in-object@7.21.0-placeholder-for-preset-env.2(@babel/core@7.25.2)': + dependencies: + '@babel/core': 7.25.2 + + '@babel/plugin-proposal-private-property-in-object@7.21.0-placeholder-for-preset-env.2(@babel/core@7.25.7)': + dependencies: + '@babel/core': 7.25.7 + + '@babel/plugin-syntax-async-generators@7.8.4(@babel/core@7.25.2)': + dependencies: + '@babel/core': 7.25.2 + '@babel/helper-plugin-utils': 7.25.7 + + '@babel/plugin-syntax-async-generators@7.8.4(@babel/core@7.25.7)': + dependencies: + '@babel/core': 7.25.7 + '@babel/helper-plugin-utils': 7.25.7 + + '@babel/plugin-syntax-class-properties@7.12.13(@babel/core@7.25.2)': + dependencies: + '@babel/core': 7.25.2 + '@babel/helper-plugin-utils': 7.25.7 + + '@babel/plugin-syntax-class-properties@7.12.13(@babel/core@7.25.7)': + dependencies: + '@babel/core': 7.25.7 + '@babel/helper-plugin-utils': 7.25.7 + + '@babel/plugin-syntax-class-static-block@7.14.5(@babel/core@7.25.2)': + dependencies: + '@babel/core': 7.25.2 + '@babel/helper-plugin-utils': 7.25.7 + + '@babel/plugin-syntax-class-static-block@7.14.5(@babel/core@7.25.7)': + dependencies: + '@babel/core': 7.25.7 + '@babel/helper-plugin-utils': 7.25.7 + + '@babel/plugin-syntax-decorators@7.25.7(@babel/core@7.25.2)': + dependencies: + '@babel/core': 7.25.2 + '@babel/helper-plugin-utils': 7.25.7 + + '@babel/plugin-syntax-dynamic-import@7.8.3(@babel/core@7.25.2)': + dependencies: + '@babel/core': 7.25.2 + '@babel/helper-plugin-utils': 7.25.7 + + '@babel/plugin-syntax-dynamic-import@7.8.3(@babel/core@7.25.7)': + dependencies: + '@babel/core': 7.25.7 + '@babel/helper-plugin-utils': 7.25.7 + + '@babel/plugin-syntax-export-namespace-from@7.8.3(@babel/core@7.25.2)': + dependencies: + '@babel/core': 7.25.2 + '@babel/helper-plugin-utils': 7.25.7 + + '@babel/plugin-syntax-export-namespace-from@7.8.3(@babel/core@7.25.7)': + dependencies: + '@babel/core': 7.25.7 + '@babel/helper-plugin-utils': 7.25.7 + + '@babel/plugin-syntax-flow@7.25.7(@babel/core@7.25.2)': + dependencies: + '@babel/core': 7.25.2 + '@babel/helper-plugin-utils': 7.25.7 + + '@babel/plugin-syntax-import-assertions@7.25.7(@babel/core@7.25.2)': + dependencies: + '@babel/core': 7.25.2 + '@babel/helper-plugin-utils': 7.25.7 + + '@babel/plugin-syntax-import-assertions@7.25.7(@babel/core@7.25.7)': + dependencies: + '@babel/core': 7.25.7 + '@babel/helper-plugin-utils': 7.25.7 + + '@babel/plugin-syntax-import-attributes@7.25.7(@babel/core@7.25.2)': + dependencies: + '@babel/core': 7.25.2 + '@babel/helper-plugin-utils': 7.25.7 + + '@babel/plugin-syntax-import-attributes@7.25.7(@babel/core@7.25.7)': + dependencies: + '@babel/core': 7.25.7 + '@babel/helper-plugin-utils': 7.25.7 + + '@babel/plugin-syntax-import-meta@7.10.4(@babel/core@7.25.2)': + dependencies: + '@babel/core': 7.25.2 + '@babel/helper-plugin-utils': 7.25.7 + + '@babel/plugin-syntax-import-meta@7.10.4(@babel/core@7.25.7)': + dependencies: + '@babel/core': 7.25.7 + '@babel/helper-plugin-utils': 7.25.7 + + '@babel/plugin-syntax-json-strings@7.8.3(@babel/core@7.25.2)': + dependencies: + '@babel/core': 7.25.2 + '@babel/helper-plugin-utils': 7.25.7 + + '@babel/plugin-syntax-json-strings@7.8.3(@babel/core@7.25.7)': + dependencies: + '@babel/core': 7.25.7 + '@babel/helper-plugin-utils': 7.25.7 + + '@babel/plugin-syntax-jsx@7.25.7(@babel/core@7.25.2)': + dependencies: + '@babel/core': 7.25.2 + '@babel/helper-plugin-utils': 7.25.7 + + '@babel/plugin-syntax-logical-assignment-operators@7.10.4(@babel/core@7.25.2)': + dependencies: + '@babel/core': 7.25.2 + '@babel/helper-plugin-utils': 7.25.7 + + '@babel/plugin-syntax-logical-assignment-operators@7.10.4(@babel/core@7.25.7)': + dependencies: + '@babel/core': 7.25.7 + '@babel/helper-plugin-utils': 7.25.7 + + '@babel/plugin-syntax-nullish-coalescing-operator@7.8.3(@babel/core@7.25.2)': + dependencies: + '@babel/core': 7.25.2 + '@babel/helper-plugin-utils': 7.25.7 + + '@babel/plugin-syntax-nullish-coalescing-operator@7.8.3(@babel/core@7.25.7)': + dependencies: + '@babel/core': 7.25.7 + '@babel/helper-plugin-utils': 7.25.7 + + '@babel/plugin-syntax-numeric-separator@7.10.4(@babel/core@7.25.2)': + dependencies: + '@babel/core': 7.25.2 + '@babel/helper-plugin-utils': 7.25.7 + + '@babel/plugin-syntax-numeric-separator@7.10.4(@babel/core@7.25.7)': + dependencies: + '@babel/core': 7.25.7 + '@babel/helper-plugin-utils': 7.25.7 + + '@babel/plugin-syntax-object-rest-spread@7.8.3(@babel/core@7.25.2)': + dependencies: + '@babel/core': 7.25.2 + '@babel/helper-plugin-utils': 7.25.7 + + '@babel/plugin-syntax-object-rest-spread@7.8.3(@babel/core@7.25.7)': + dependencies: + '@babel/core': 7.25.7 + '@babel/helper-plugin-utils': 7.25.7 + + '@babel/plugin-syntax-optional-catch-binding@7.8.3(@babel/core@7.25.2)': + dependencies: + '@babel/core': 7.25.2 + '@babel/helper-plugin-utils': 7.25.7 + + '@babel/plugin-syntax-optional-catch-binding@7.8.3(@babel/core@7.25.7)': + dependencies: + '@babel/core': 7.25.7 + '@babel/helper-plugin-utils': 7.25.7 + + '@babel/plugin-syntax-optional-chaining@7.8.3(@babel/core@7.25.2)': + dependencies: + '@babel/core': 7.25.2 + '@babel/helper-plugin-utils': 7.25.7 + + '@babel/plugin-syntax-optional-chaining@7.8.3(@babel/core@7.25.7)': + dependencies: + '@babel/core': 7.25.7 + '@babel/helper-plugin-utils': 7.25.7 + + '@babel/plugin-syntax-private-property-in-object@7.14.5(@babel/core@7.25.2)': + dependencies: + '@babel/core': 7.25.2 + '@babel/helper-plugin-utils': 7.25.7 + + '@babel/plugin-syntax-private-property-in-object@7.14.5(@babel/core@7.25.7)': + dependencies: + '@babel/core': 7.25.7 + '@babel/helper-plugin-utils': 7.25.7 + + '@babel/plugin-syntax-top-level-await@7.14.5(@babel/core@7.25.2)': + dependencies: + '@babel/core': 7.25.2 + '@babel/helper-plugin-utils': 7.25.7 + + '@babel/plugin-syntax-top-level-await@7.14.5(@babel/core@7.25.7)': + dependencies: + '@babel/core': 7.25.7 + '@babel/helper-plugin-utils': 7.25.7 + + '@babel/plugin-syntax-unicode-sets-regex@7.18.6(@babel/core@7.25.2)': + dependencies: + '@babel/core': 7.25.2 + '@babel/helper-create-regexp-features-plugin': 7.22.15(@babel/core@7.25.2) + '@babel/helper-plugin-utils': 7.25.7 + + '@babel/plugin-syntax-unicode-sets-regex@7.18.6(@babel/core@7.25.7)': + dependencies: + '@babel/core': 7.25.7 + '@babel/helper-create-regexp-features-plugin': 7.22.15(@babel/core@7.25.7) + '@babel/helper-plugin-utils': 7.25.7 + + '@babel/plugin-transform-arrow-functions@7.25.7(@babel/core@7.25.2)': + dependencies: + '@babel/core': 7.25.2 + '@babel/helper-plugin-utils': 7.25.7 + + '@babel/plugin-transform-arrow-functions@7.25.7(@babel/core@7.25.7)': + dependencies: + '@babel/core': 7.25.7 + '@babel/helper-plugin-utils': 7.25.7 + + '@babel/plugin-transform-async-generator-functions@7.25.7(@babel/core@7.25.2)': + dependencies: + '@babel/core': 7.25.2 + '@babel/helper-plugin-utils': 7.25.7 + '@babel/helper-remap-async-to-generator': 7.25.7(@babel/core@7.25.2) + '@babel/plugin-syntax-async-generators': 7.8.4(@babel/core@7.25.2) + '@babel/traverse': 7.25.7 + transitivePeerDependencies: + - supports-color + + '@babel/plugin-transform-async-generator-functions@7.25.7(@babel/core@7.25.7)': + dependencies: + '@babel/core': 7.25.7 + '@babel/helper-plugin-utils': 7.25.7 + '@babel/helper-remap-async-to-generator': 7.25.7(@babel/core@7.25.7) + '@babel/plugin-syntax-async-generators': 7.8.4(@babel/core@7.25.7) + '@babel/traverse': 7.25.7 + transitivePeerDependencies: + - supports-color + + '@babel/plugin-transform-async-to-generator@7.25.7(@babel/core@7.25.2)': + dependencies: + '@babel/core': 7.25.2 + '@babel/helper-module-imports': 7.25.7 + '@babel/helper-plugin-utils': 7.25.7 + '@babel/helper-remap-async-to-generator': 7.25.7(@babel/core@7.25.2) + transitivePeerDependencies: + - supports-color + + '@babel/plugin-transform-async-to-generator@7.25.7(@babel/core@7.25.7)': + dependencies: + '@babel/core': 7.25.7 + '@babel/helper-module-imports': 7.25.7 + '@babel/helper-plugin-utils': 7.25.7 + '@babel/helper-remap-async-to-generator': 7.25.7(@babel/core@7.25.7) + transitivePeerDependencies: + - supports-color + + '@babel/plugin-transform-block-scoped-functions@7.25.7(@babel/core@7.25.2)': + dependencies: + '@babel/core': 7.25.2 + '@babel/helper-plugin-utils': 7.25.7 + + '@babel/plugin-transform-block-scoped-functions@7.25.7(@babel/core@7.25.7)': + dependencies: + '@babel/core': 7.25.7 + '@babel/helper-plugin-utils': 7.25.7 + + '@babel/plugin-transform-block-scoping@7.25.7(@babel/core@7.25.2)': + dependencies: + '@babel/core': 7.25.2 + '@babel/helper-plugin-utils': 7.25.7 + + '@babel/plugin-transform-block-scoping@7.25.7(@babel/core@7.25.7)': + dependencies: + '@babel/core': 7.25.7 + '@babel/helper-plugin-utils': 7.25.7 + + '@babel/plugin-transform-class-properties@7.25.7(@babel/core@7.25.2)': + dependencies: + '@babel/core': 7.25.2 + '@babel/helper-create-class-features-plugin': 7.25.7(@babel/core@7.25.2) + '@babel/helper-plugin-utils': 7.25.7 + transitivePeerDependencies: + - supports-color + + '@babel/plugin-transform-class-properties@7.25.7(@babel/core@7.25.7)': + dependencies: + '@babel/core': 7.25.7 + '@babel/helper-create-class-features-plugin': 7.25.7(@babel/core@7.25.7) + '@babel/helper-plugin-utils': 7.25.7 + transitivePeerDependencies: + - supports-color + + '@babel/plugin-transform-class-static-block@7.25.7(@babel/core@7.25.2)': + dependencies: + '@babel/core': 7.25.2 + '@babel/helper-create-class-features-plugin': 7.25.7(@babel/core@7.25.2) + '@babel/helper-plugin-utils': 7.25.7 + '@babel/plugin-syntax-class-static-block': 7.14.5(@babel/core@7.25.2) + transitivePeerDependencies: + - supports-color + + '@babel/plugin-transform-class-static-block@7.25.7(@babel/core@7.25.7)': + dependencies: + '@babel/core': 7.25.7 + '@babel/helper-create-class-features-plugin': 7.25.7(@babel/core@7.25.7) + '@babel/helper-plugin-utils': 7.25.7 + '@babel/plugin-syntax-class-static-block': 7.14.5(@babel/core@7.25.7) + transitivePeerDependencies: + - supports-color + + '@babel/plugin-transform-classes@7.25.7(@babel/core@7.25.2)': + dependencies: + '@babel/core': 7.25.2 + '@babel/helper-annotate-as-pure': 7.25.7 + '@babel/helper-compilation-targets': 7.25.7 + '@babel/helper-plugin-utils': 7.25.7 + '@babel/helper-replace-supers': 7.25.7(@babel/core@7.25.2) + '@babel/traverse': 7.25.7 + globals: 11.12.0 + transitivePeerDependencies: + - supports-color + + '@babel/plugin-transform-classes@7.25.7(@babel/core@7.25.7)': + dependencies: + '@babel/core': 7.25.7 + '@babel/helper-annotate-as-pure': 7.25.7 + '@babel/helper-compilation-targets': 7.25.7 + '@babel/helper-plugin-utils': 7.25.7 + '@babel/helper-replace-supers': 7.25.7(@babel/core@7.25.7) + '@babel/traverse': 7.25.7 + globals: 11.12.0 + transitivePeerDependencies: + - supports-color + + '@babel/plugin-transform-computed-properties@7.25.7(@babel/core@7.25.2)': + dependencies: + '@babel/core': 7.25.2 + '@babel/helper-plugin-utils': 7.25.7 + '@babel/template': 7.25.7 + + '@babel/plugin-transform-computed-properties@7.25.7(@babel/core@7.25.7)': + dependencies: + '@babel/core': 7.25.7 + '@babel/helper-plugin-utils': 7.25.7 + '@babel/template': 7.25.7 + + '@babel/plugin-transform-destructuring@7.25.7(@babel/core@7.25.2)': + dependencies: + '@babel/core': 7.25.2 + '@babel/helper-plugin-utils': 7.25.7 + + '@babel/plugin-transform-destructuring@7.25.7(@babel/core@7.25.7)': + dependencies: + '@babel/core': 7.25.7 + '@babel/helper-plugin-utils': 7.25.7 + + '@babel/plugin-transform-dotall-regex@7.25.7(@babel/core@7.25.2)': + dependencies: + '@babel/core': 7.25.2 + '@babel/helper-create-regexp-features-plugin': 7.25.7(@babel/core@7.25.2) + '@babel/helper-plugin-utils': 7.25.7 + + '@babel/plugin-transform-dotall-regex@7.25.7(@babel/core@7.25.7)': + dependencies: + '@babel/core': 7.25.7 + '@babel/helper-create-regexp-features-plugin': 7.25.7(@babel/core@7.25.7) + '@babel/helper-plugin-utils': 7.25.7 + + '@babel/plugin-transform-duplicate-keys@7.25.7(@babel/core@7.25.2)': + dependencies: + '@babel/core': 7.25.2 + '@babel/helper-plugin-utils': 7.25.7 + + '@babel/plugin-transform-duplicate-keys@7.25.7(@babel/core@7.25.7)': + dependencies: + '@babel/core': 7.25.7 + '@babel/helper-plugin-utils': 7.25.7 + + '@babel/plugin-transform-duplicate-named-capturing-groups-regex@7.25.7(@babel/core@7.25.2)': + dependencies: + '@babel/core': 7.25.2 + '@babel/helper-create-regexp-features-plugin': 7.25.7(@babel/core@7.25.2) + '@babel/helper-plugin-utils': 7.25.7 + + '@babel/plugin-transform-duplicate-named-capturing-groups-regex@7.25.7(@babel/core@7.25.7)': + dependencies: + '@babel/core': 7.25.7 + '@babel/helper-create-regexp-features-plugin': 7.25.7(@babel/core@7.25.7) + '@babel/helper-plugin-utils': 7.25.7 + + '@babel/plugin-transform-dynamic-import@7.25.7(@babel/core@7.25.2)': + dependencies: + '@babel/core': 7.25.2 + '@babel/helper-plugin-utils': 7.25.7 + '@babel/plugin-syntax-dynamic-import': 7.8.3(@babel/core@7.25.2) + + '@babel/plugin-transform-dynamic-import@7.25.7(@babel/core@7.25.7)': + dependencies: + '@babel/core': 7.25.7 + '@babel/helper-plugin-utils': 7.25.7 + '@babel/plugin-syntax-dynamic-import': 7.8.3(@babel/core@7.25.7) + + '@babel/plugin-transform-exponentiation-operator@7.25.7(@babel/core@7.25.2)': + dependencies: + '@babel/core': 7.25.2 + '@babel/helper-builder-binary-assignment-operator-visitor': 7.25.7 + '@babel/helper-plugin-utils': 7.25.7 + transitivePeerDependencies: + - supports-color + + '@babel/plugin-transform-exponentiation-operator@7.25.7(@babel/core@7.25.7)': + dependencies: + '@babel/core': 7.25.7 + '@babel/helper-builder-binary-assignment-operator-visitor': 7.25.7 + '@babel/helper-plugin-utils': 7.25.7 + transitivePeerDependencies: + - supports-color + + '@babel/plugin-transform-export-namespace-from@7.25.7(@babel/core@7.25.2)': + dependencies: + '@babel/core': 7.25.2 + '@babel/helper-plugin-utils': 7.25.7 + '@babel/plugin-syntax-export-namespace-from': 7.8.3(@babel/core@7.25.2) + + '@babel/plugin-transform-export-namespace-from@7.25.7(@babel/core@7.25.7)': + dependencies: + '@babel/core': 7.25.7 + '@babel/helper-plugin-utils': 7.25.7 + '@babel/plugin-syntax-export-namespace-from': 7.8.3(@babel/core@7.25.7) + + '@babel/plugin-transform-flow-strip-types@7.25.7(@babel/core@7.25.2)': + dependencies: + '@babel/core': 7.25.2 + '@babel/helper-plugin-utils': 7.25.7 + '@babel/plugin-syntax-flow': 7.25.7(@babel/core@7.25.2) - '@babel/plugin-bugfix-firefox-class-in-computed-class-key@7.24.5(@babel/core@7.24.5)': + '@babel/plugin-transform-for-of@7.25.7(@babel/core@7.25.2)': dependencies: - '@babel/core': 7.24.5 - '@babel/helper-environment-visitor': 7.22.20 - '@babel/helper-plugin-utils': 7.24.5 + '@babel/core': 7.25.2 + '@babel/helper-plugin-utils': 7.25.7 + '@babel/helper-skip-transparent-expression-wrappers': 7.25.7 + transitivePeerDependencies: + - supports-color - '@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression@7.24.1(@babel/core@7.24.5)': + '@babel/plugin-transform-for-of@7.25.7(@babel/core@7.25.7)': dependencies: - '@babel/core': 7.24.5 - '@babel/helper-plugin-utils': 7.24.5 + '@babel/core': 7.25.7 + '@babel/helper-plugin-utils': 7.25.7 + '@babel/helper-skip-transparent-expression-wrappers': 7.25.7 + transitivePeerDependencies: + - supports-color - '@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining@7.24.1(@babel/core@7.24.5)': + '@babel/plugin-transform-function-name@7.25.7(@babel/core@7.25.2)': dependencies: - '@babel/core': 7.24.5 - '@babel/helper-plugin-utils': 7.24.5 - '@babel/helper-skip-transparent-expression-wrappers': 7.22.5 - '@babel/plugin-transform-optional-chaining': 7.24.5(@babel/core@7.24.5) + '@babel/core': 7.25.2 + '@babel/helper-compilation-targets': 7.25.7 + '@babel/helper-plugin-utils': 7.25.7 + '@babel/traverse': 7.25.7 + transitivePeerDependencies: + - supports-color - '@babel/plugin-bugfix-v8-static-class-fields-redefine-readonly@7.24.1(@babel/core@7.24.5)': + '@babel/plugin-transform-function-name@7.25.7(@babel/core@7.25.7)': dependencies: - '@babel/core': 7.24.5 - '@babel/helper-environment-visitor': 7.22.20 - '@babel/helper-plugin-utils': 7.24.5 + '@babel/core': 7.25.7 + '@babel/helper-compilation-targets': 7.25.7 + '@babel/helper-plugin-utils': 7.25.7 + '@babel/traverse': 7.25.7 + transitivePeerDependencies: + - supports-color - '@babel/plugin-proposal-private-property-in-object@7.21.0-placeholder-for-preset-env.2(@babel/core@7.24.5)': + '@babel/plugin-transform-json-strings@7.25.7(@babel/core@7.25.2)': dependencies: - '@babel/core': 7.24.5 + '@babel/core': 7.25.2 + '@babel/helper-plugin-utils': 7.25.7 + '@babel/plugin-syntax-json-strings': 7.8.3(@babel/core@7.25.2) - '@babel/plugin-syntax-async-generators@7.8.4(@babel/core@7.24.5)': + '@babel/plugin-transform-json-strings@7.25.7(@babel/core@7.25.7)': dependencies: - '@babel/core': 7.24.5 - '@babel/helper-plugin-utils': 7.24.5 + '@babel/core': 7.25.7 + '@babel/helper-plugin-utils': 7.25.7 + '@babel/plugin-syntax-json-strings': 7.8.3(@babel/core@7.25.7) - '@babel/plugin-syntax-class-properties@7.12.13(@babel/core@7.24.5)': + '@babel/plugin-transform-literals@7.25.7(@babel/core@7.25.2)': dependencies: - '@babel/core': 7.24.5 - '@babel/helper-plugin-utils': 7.24.5 + '@babel/core': 7.25.2 + '@babel/helper-plugin-utils': 7.25.7 - '@babel/plugin-syntax-class-static-block@7.14.5(@babel/core@7.24.5)': + '@babel/plugin-transform-literals@7.25.7(@babel/core@7.25.7)': dependencies: - '@babel/core': 7.24.5 - '@babel/helper-plugin-utils': 7.24.5 + '@babel/core': 7.25.7 + '@babel/helper-plugin-utils': 7.25.7 - '@babel/plugin-syntax-dynamic-import@7.8.3(@babel/core@7.24.5)': + '@babel/plugin-transform-logical-assignment-operators@7.25.7(@babel/core@7.25.2)': dependencies: - '@babel/core': 7.24.5 - '@babel/helper-plugin-utils': 7.24.5 + '@babel/core': 7.25.2 + '@babel/helper-plugin-utils': 7.25.7 + '@babel/plugin-syntax-logical-assignment-operators': 7.10.4(@babel/core@7.25.2) - '@babel/plugin-syntax-export-namespace-from@7.8.3(@babel/core@7.24.5)': + '@babel/plugin-transform-logical-assignment-operators@7.25.7(@babel/core@7.25.7)': dependencies: - '@babel/core': 7.24.5 - '@babel/helper-plugin-utils': 7.24.5 + '@babel/core': 7.25.7 + '@babel/helper-plugin-utils': 7.25.7 + '@babel/plugin-syntax-logical-assignment-operators': 7.10.4(@babel/core@7.25.7) - '@babel/plugin-syntax-import-assertions@7.24.1(@babel/core@7.24.5)': + '@babel/plugin-transform-member-expression-literals@7.25.7(@babel/core@7.25.2)': dependencies: - '@babel/core': 7.24.5 - '@babel/helper-plugin-utils': 7.24.5 + '@babel/core': 7.25.2 + '@babel/helper-plugin-utils': 7.25.7 - '@babel/plugin-syntax-import-attributes@7.24.1(@babel/core@7.24.5)': + '@babel/plugin-transform-member-expression-literals@7.25.7(@babel/core@7.25.7)': dependencies: - '@babel/core': 7.24.5 - '@babel/helper-plugin-utils': 7.24.5 + '@babel/core': 7.25.7 + '@babel/helper-plugin-utils': 7.25.7 - '@babel/plugin-syntax-import-meta@7.10.4(@babel/core@7.24.5)': + '@babel/plugin-transform-modules-amd@7.25.7(@babel/core@7.25.2)': dependencies: - '@babel/core': 7.24.5 - '@babel/helper-plugin-utils': 7.24.5 + '@babel/core': 7.25.2 + '@babel/helper-module-transforms': 7.25.7(@babel/core@7.25.2) + '@babel/helper-plugin-utils': 7.25.7 + transitivePeerDependencies: + - supports-color - '@babel/plugin-syntax-json-strings@7.8.3(@babel/core@7.24.5)': + '@babel/plugin-transform-modules-amd@7.25.7(@babel/core@7.25.7)': dependencies: - '@babel/core': 7.24.5 - '@babel/helper-plugin-utils': 7.24.5 + '@babel/core': 7.25.7 + '@babel/helper-module-transforms': 7.25.7(@babel/core@7.25.7) + '@babel/helper-plugin-utils': 7.25.7 + transitivePeerDependencies: + - supports-color - '@babel/plugin-syntax-logical-assignment-operators@7.10.4(@babel/core@7.24.5)': + '@babel/plugin-transform-modules-commonjs@7.25.7(@babel/core@7.25.2)': dependencies: - '@babel/core': 7.24.5 - '@babel/helper-plugin-utils': 7.24.5 + '@babel/core': 7.25.2 + '@babel/helper-module-transforms': 7.25.7(@babel/core@7.25.2) + '@babel/helper-plugin-utils': 7.25.7 + '@babel/helper-simple-access': 7.25.7 + transitivePeerDependencies: + - supports-color - '@babel/plugin-syntax-nullish-coalescing-operator@7.8.3(@babel/core@7.24.5)': + '@babel/plugin-transform-modules-commonjs@7.25.7(@babel/core@7.25.7)': dependencies: - '@babel/core': 7.24.5 - '@babel/helper-plugin-utils': 7.24.5 + '@babel/core': 7.25.7 + '@babel/helper-module-transforms': 7.25.7(@babel/core@7.25.7) + '@babel/helper-plugin-utils': 7.25.7 + '@babel/helper-simple-access': 7.25.7 + transitivePeerDependencies: + - supports-color - '@babel/plugin-syntax-numeric-separator@7.10.4(@babel/core@7.24.5)': + '@babel/plugin-transform-modules-systemjs@7.25.7(@babel/core@7.25.2)': dependencies: - '@babel/core': 7.24.5 - '@babel/helper-plugin-utils': 7.24.5 + '@babel/core': 7.25.2 + '@babel/helper-module-transforms': 7.25.7(@babel/core@7.25.2) + '@babel/helper-plugin-utils': 7.25.7 + '@babel/helper-validator-identifier': 7.25.7 + '@babel/traverse': 7.25.7 + transitivePeerDependencies: + - supports-color - '@babel/plugin-syntax-object-rest-spread@7.8.3(@babel/core@7.24.5)': + '@babel/plugin-transform-modules-systemjs@7.25.7(@babel/core@7.25.7)': dependencies: - '@babel/core': 7.24.5 - '@babel/helper-plugin-utils': 7.24.5 + '@babel/core': 7.25.7 + '@babel/helper-module-transforms': 7.25.7(@babel/core@7.25.7) + '@babel/helper-plugin-utils': 7.25.7 + '@babel/helper-validator-identifier': 7.25.7 + '@babel/traverse': 7.25.7 + transitivePeerDependencies: + - supports-color - '@babel/plugin-syntax-optional-catch-binding@7.8.3(@babel/core@7.24.5)': + '@babel/plugin-transform-modules-umd@7.25.7(@babel/core@7.25.2)': dependencies: - '@babel/core': 7.24.5 - '@babel/helper-plugin-utils': 7.24.5 + '@babel/core': 7.25.2 + '@babel/helper-module-transforms': 7.25.7(@babel/core@7.25.2) + '@babel/helper-plugin-utils': 7.25.7 + transitivePeerDependencies: + - supports-color - '@babel/plugin-syntax-optional-chaining@7.8.3(@babel/core@7.24.5)': + '@babel/plugin-transform-modules-umd@7.25.7(@babel/core@7.25.7)': dependencies: - '@babel/core': 7.24.5 - '@babel/helper-plugin-utils': 7.24.5 + '@babel/core': 7.25.7 + '@babel/helper-module-transforms': 7.25.7(@babel/core@7.25.7) + '@babel/helper-plugin-utils': 7.25.7 + transitivePeerDependencies: + - supports-color - '@babel/plugin-syntax-private-property-in-object@7.14.5(@babel/core@7.24.5)': + '@babel/plugin-transform-named-capturing-groups-regex@7.25.7(@babel/core@7.25.2)': dependencies: - '@babel/core': 7.24.5 - '@babel/helper-plugin-utils': 7.24.5 + '@babel/core': 7.25.2 + '@babel/helper-create-regexp-features-plugin': 7.25.7(@babel/core@7.25.2) + '@babel/helper-plugin-utils': 7.25.7 - '@babel/plugin-syntax-top-level-await@7.14.5(@babel/core@7.24.5)': + '@babel/plugin-transform-named-capturing-groups-regex@7.25.7(@babel/core@7.25.7)': dependencies: - '@babel/core': 7.24.5 - '@babel/helper-plugin-utils': 7.24.5 + '@babel/core': 7.25.7 + '@babel/helper-create-regexp-features-plugin': 7.25.7(@babel/core@7.25.7) + '@babel/helper-plugin-utils': 7.25.7 - '@babel/plugin-syntax-unicode-sets-regex@7.18.6(@babel/core@7.24.5)': + '@babel/plugin-transform-new-target@7.25.7(@babel/core@7.25.2)': dependencies: - '@babel/core': 7.24.5 - '@babel/helper-create-regexp-features-plugin': 7.22.15(@babel/core@7.24.5) - '@babel/helper-plugin-utils': 7.24.5 + '@babel/core': 7.25.2 + '@babel/helper-plugin-utils': 7.25.7 - '@babel/plugin-transform-arrow-functions@7.24.1(@babel/core@7.24.5)': + '@babel/plugin-transform-new-target@7.25.7(@babel/core@7.25.7)': dependencies: - '@babel/core': 7.24.5 - '@babel/helper-plugin-utils': 7.24.5 + '@babel/core': 7.25.7 + '@babel/helper-plugin-utils': 7.25.7 - '@babel/plugin-transform-async-generator-functions@7.24.3(@babel/core@7.24.5)': + '@babel/plugin-transform-nullish-coalescing-operator@7.25.7(@babel/core@7.25.2)': dependencies: - '@babel/core': 7.24.5 - '@babel/helper-environment-visitor': 7.22.20 - '@babel/helper-plugin-utils': 7.24.5 - '@babel/helper-remap-async-to-generator': 7.22.20(@babel/core@7.24.5) - '@babel/plugin-syntax-async-generators': 7.8.4(@babel/core@7.24.5) + '@babel/core': 7.25.2 + '@babel/helper-plugin-utils': 7.25.7 + '@babel/plugin-syntax-nullish-coalescing-operator': 7.8.3(@babel/core@7.25.2) - '@babel/plugin-transform-async-to-generator@7.24.1(@babel/core@7.24.5)': + '@babel/plugin-transform-nullish-coalescing-operator@7.25.7(@babel/core@7.25.7)': dependencies: - '@babel/core': 7.24.5 - '@babel/helper-module-imports': 7.24.3 - '@babel/helper-plugin-utils': 7.24.5 - '@babel/helper-remap-async-to-generator': 7.22.20(@babel/core@7.24.5) + '@babel/core': 7.25.7 + '@babel/helper-plugin-utils': 7.25.7 + '@babel/plugin-syntax-nullish-coalescing-operator': 7.8.3(@babel/core@7.25.7) - '@babel/plugin-transform-block-scoped-functions@7.24.1(@babel/core@7.24.5)': + '@babel/plugin-transform-numeric-separator@7.25.7(@babel/core@7.25.2)': dependencies: - '@babel/core': 7.24.5 - '@babel/helper-plugin-utils': 7.24.5 + '@babel/core': 7.25.2 + '@babel/helper-plugin-utils': 7.25.7 + '@babel/plugin-syntax-numeric-separator': 7.10.4(@babel/core@7.25.2) - '@babel/plugin-transform-block-scoping@7.24.5(@babel/core@7.24.5)': + '@babel/plugin-transform-numeric-separator@7.25.7(@babel/core@7.25.7)': dependencies: - '@babel/core': 7.24.5 - '@babel/helper-plugin-utils': 7.24.5 + '@babel/core': 7.25.7 + '@babel/helper-plugin-utils': 7.25.7 + '@babel/plugin-syntax-numeric-separator': 7.10.4(@babel/core@7.25.7) - '@babel/plugin-transform-class-properties@7.24.1(@babel/core@7.24.5)': + '@babel/plugin-transform-object-rest-spread@7.25.7(@babel/core@7.25.2)': dependencies: - '@babel/core': 7.24.5 - '@babel/helper-create-class-features-plugin': 7.24.5(@babel/core@7.24.5) - '@babel/helper-plugin-utils': 7.24.5 + '@babel/core': 7.25.2 + '@babel/helper-compilation-targets': 7.25.7 + '@babel/helper-plugin-utils': 7.25.7 + '@babel/plugin-syntax-object-rest-spread': 7.8.3(@babel/core@7.25.2) + '@babel/plugin-transform-parameters': 7.25.7(@babel/core@7.25.2) - '@babel/plugin-transform-class-static-block@7.24.4(@babel/core@7.24.5)': + '@babel/plugin-transform-object-rest-spread@7.25.7(@babel/core@7.25.7)': dependencies: - '@babel/core': 7.24.5 - '@babel/helper-create-class-features-plugin': 7.24.5(@babel/core@7.24.5) - '@babel/helper-plugin-utils': 7.24.5 - '@babel/plugin-syntax-class-static-block': 7.14.5(@babel/core@7.24.5) + '@babel/core': 7.25.7 + '@babel/helper-compilation-targets': 7.25.7 + '@babel/helper-plugin-utils': 7.25.7 + '@babel/plugin-syntax-object-rest-spread': 7.8.3(@babel/core@7.25.7) + '@babel/plugin-transform-parameters': 7.25.7(@babel/core@7.25.7) - '@babel/plugin-transform-classes@7.24.5(@babel/core@7.24.5)': + '@babel/plugin-transform-object-super@7.25.7(@babel/core@7.25.2)': dependencies: - '@babel/core': 7.24.5 - '@babel/helper-annotate-as-pure': 7.22.5 - '@babel/helper-compilation-targets': 7.23.6 - '@babel/helper-environment-visitor': 7.22.20 - '@babel/helper-function-name': 7.23.0 - '@babel/helper-plugin-utils': 7.24.5 - '@babel/helper-replace-supers': 7.24.1(@babel/core@7.24.5) - '@babel/helper-split-export-declaration': 7.24.5 - globals: 11.12.0 + '@babel/core': 7.25.2 + '@babel/helper-plugin-utils': 7.25.7 + '@babel/helper-replace-supers': 7.25.7(@babel/core@7.25.2) + transitivePeerDependencies: + - supports-color - '@babel/plugin-transform-computed-properties@7.24.1(@babel/core@7.24.5)': + '@babel/plugin-transform-object-super@7.25.7(@babel/core@7.25.7)': dependencies: - '@babel/core': 7.24.5 - '@babel/helper-plugin-utils': 7.24.5 - '@babel/template': 7.24.0 + '@babel/core': 7.25.7 + '@babel/helper-plugin-utils': 7.25.7 + '@babel/helper-replace-supers': 7.25.7(@babel/core@7.25.7) + transitivePeerDependencies: + - supports-color - '@babel/plugin-transform-destructuring@7.24.5(@babel/core@7.24.5)': + '@babel/plugin-transform-optional-catch-binding@7.25.7(@babel/core@7.25.2)': dependencies: - '@babel/core': 7.24.5 - '@babel/helper-plugin-utils': 7.24.5 + '@babel/core': 7.25.2 + '@babel/helper-plugin-utils': 7.25.7 + '@babel/plugin-syntax-optional-catch-binding': 7.8.3(@babel/core@7.25.2) - '@babel/plugin-transform-dotall-regex@7.24.1(@babel/core@7.24.5)': + '@babel/plugin-transform-optional-catch-binding@7.25.7(@babel/core@7.25.7)': dependencies: - '@babel/core': 7.24.5 - '@babel/helper-create-regexp-features-plugin': 7.22.15(@babel/core@7.24.5) - '@babel/helper-plugin-utils': 7.24.5 + '@babel/core': 7.25.7 + '@babel/helper-plugin-utils': 7.25.7 + '@babel/plugin-syntax-optional-catch-binding': 7.8.3(@babel/core@7.25.7) - '@babel/plugin-transform-duplicate-keys@7.24.1(@babel/core@7.24.5)': + '@babel/plugin-transform-optional-chaining@7.25.7(@babel/core@7.25.2)': dependencies: - '@babel/core': 7.24.5 - '@babel/helper-plugin-utils': 7.24.5 + '@babel/core': 7.25.2 + '@babel/helper-plugin-utils': 7.25.7 + '@babel/helper-skip-transparent-expression-wrappers': 7.25.7 + '@babel/plugin-syntax-optional-chaining': 7.8.3(@babel/core@7.25.2) + transitivePeerDependencies: + - supports-color - '@babel/plugin-transform-dynamic-import@7.24.1(@babel/core@7.24.5)': + '@babel/plugin-transform-optional-chaining@7.25.7(@babel/core@7.25.7)': dependencies: - '@babel/core': 7.24.5 - '@babel/helper-plugin-utils': 7.24.5 - '@babel/plugin-syntax-dynamic-import': 7.8.3(@babel/core@7.24.5) + '@babel/core': 7.25.7 + '@babel/helper-plugin-utils': 7.25.7 + '@babel/helper-skip-transparent-expression-wrappers': 7.25.7 + '@babel/plugin-syntax-optional-chaining': 7.8.3(@babel/core@7.25.7) + transitivePeerDependencies: + - supports-color - '@babel/plugin-transform-exponentiation-operator@7.24.1(@babel/core@7.24.5)': + '@babel/plugin-transform-parameters@7.25.7(@babel/core@7.25.2)': dependencies: - '@babel/core': 7.24.5 - '@babel/helper-builder-binary-assignment-operator-visitor': 7.22.15 - '@babel/helper-plugin-utils': 7.24.5 + '@babel/core': 7.25.2 + '@babel/helper-plugin-utils': 7.25.7 - '@babel/plugin-transform-export-namespace-from@7.24.1(@babel/core@7.24.5)': + '@babel/plugin-transform-parameters@7.25.7(@babel/core@7.25.7)': dependencies: - '@babel/core': 7.24.5 - '@babel/helper-plugin-utils': 7.24.5 - '@babel/plugin-syntax-export-namespace-from': 7.8.3(@babel/core@7.24.5) + '@babel/core': 7.25.7 + '@babel/helper-plugin-utils': 7.25.7 - '@babel/plugin-transform-for-of@7.24.1(@babel/core@7.24.5)': + '@babel/plugin-transform-private-methods@7.25.7(@babel/core@7.25.2)': dependencies: - '@babel/core': 7.24.5 - '@babel/helper-plugin-utils': 7.24.5 - '@babel/helper-skip-transparent-expression-wrappers': 7.22.5 + '@babel/core': 7.25.2 + '@babel/helper-create-class-features-plugin': 7.25.7(@babel/core@7.25.2) + '@babel/helper-plugin-utils': 7.25.7 + transitivePeerDependencies: + - supports-color - '@babel/plugin-transform-function-name@7.24.1(@babel/core@7.24.5)': + '@babel/plugin-transform-private-methods@7.25.7(@babel/core@7.25.7)': dependencies: - '@babel/core': 7.24.5 - '@babel/helper-compilation-targets': 7.23.6 - '@babel/helper-function-name': 7.23.0 - '@babel/helper-plugin-utils': 7.24.5 + '@babel/core': 7.25.7 + '@babel/helper-create-class-features-plugin': 7.25.7(@babel/core@7.25.7) + '@babel/helper-plugin-utils': 7.25.7 + transitivePeerDependencies: + - supports-color - '@babel/plugin-transform-json-strings@7.24.1(@babel/core@7.24.5)': + '@babel/plugin-transform-private-property-in-object@7.25.7(@babel/core@7.25.2)': dependencies: - '@babel/core': 7.24.5 - '@babel/helper-plugin-utils': 7.24.5 - '@babel/plugin-syntax-json-strings': 7.8.3(@babel/core@7.24.5) + '@babel/core': 7.25.2 + '@babel/helper-annotate-as-pure': 7.25.7 + '@babel/helper-create-class-features-plugin': 7.25.7(@babel/core@7.25.2) + '@babel/helper-plugin-utils': 7.25.7 + '@babel/plugin-syntax-private-property-in-object': 7.14.5(@babel/core@7.25.2) + transitivePeerDependencies: + - supports-color - '@babel/plugin-transform-literals@7.24.1(@babel/core@7.24.5)': + '@babel/plugin-transform-private-property-in-object@7.25.7(@babel/core@7.25.7)': dependencies: - '@babel/core': 7.24.5 - '@babel/helper-plugin-utils': 7.24.5 + '@babel/core': 7.25.7 + '@babel/helper-annotate-as-pure': 7.25.7 + '@babel/helper-create-class-features-plugin': 7.25.7(@babel/core@7.25.7) + '@babel/helper-plugin-utils': 7.25.7 + '@babel/plugin-syntax-private-property-in-object': 7.14.5(@babel/core@7.25.7) + transitivePeerDependencies: + - supports-color - '@babel/plugin-transform-logical-assignment-operators@7.24.1(@babel/core@7.24.5)': + '@babel/plugin-transform-property-literals@7.25.7(@babel/core@7.25.2)': dependencies: - '@babel/core': 7.24.5 - '@babel/helper-plugin-utils': 7.24.5 - '@babel/plugin-syntax-logical-assignment-operators': 7.10.4(@babel/core@7.24.5) + '@babel/core': 7.25.2 + '@babel/helper-plugin-utils': 7.25.7 - '@babel/plugin-transform-member-expression-literals@7.24.1(@babel/core@7.24.5)': + '@babel/plugin-transform-property-literals@7.25.7(@babel/core@7.25.7)': dependencies: - '@babel/core': 7.24.5 - '@babel/helper-plugin-utils': 7.24.5 + '@babel/core': 7.25.7 + '@babel/helper-plugin-utils': 7.25.7 - '@babel/plugin-transform-modules-amd@7.24.1(@babel/core@7.24.5)': + '@babel/plugin-transform-react-display-name@7.25.7(@babel/core@7.25.2)': dependencies: - '@babel/core': 7.24.5 - '@babel/helper-module-transforms': 7.24.5(@babel/core@7.24.5) - '@babel/helper-plugin-utils': 7.24.5 + '@babel/core': 7.25.2 + '@babel/helper-plugin-utils': 7.25.7 - '@babel/plugin-transform-modules-commonjs@7.24.1(@babel/core@7.24.5)': + '@babel/plugin-transform-react-jsx-development@7.25.7(@babel/core@7.25.2)': dependencies: - '@babel/core': 7.24.5 - '@babel/helper-module-transforms': 7.24.5(@babel/core@7.24.5) - '@babel/helper-plugin-utils': 7.24.5 - '@babel/helper-simple-access': 7.24.5 + '@babel/core': 7.25.2 + '@babel/plugin-transform-react-jsx': 7.25.7(@babel/core@7.25.2) + transitivePeerDependencies: + - supports-color - '@babel/plugin-transform-modules-systemjs@7.24.1(@babel/core@7.24.5)': + '@babel/plugin-transform-react-jsx@7.25.7(@babel/core@7.25.2)': dependencies: - '@babel/core': 7.24.5 - '@babel/helper-hoist-variables': 7.22.5 - '@babel/helper-module-transforms': 7.24.5(@babel/core@7.24.5) - '@babel/helper-plugin-utils': 7.24.5 - '@babel/helper-validator-identifier': 7.24.5 + '@babel/core': 7.25.2 + '@babel/helper-annotate-as-pure': 7.25.7 + '@babel/helper-module-imports': 7.25.7 + '@babel/helper-plugin-utils': 7.25.7 + '@babel/plugin-syntax-jsx': 7.25.7(@babel/core@7.25.2) + '@babel/types': 7.25.7 + transitivePeerDependencies: + - supports-color - '@babel/plugin-transform-modules-umd@7.24.1(@babel/core@7.24.5)': + '@babel/plugin-transform-react-pure-annotations@7.25.7(@babel/core@7.25.2)': dependencies: - '@babel/core': 7.24.5 - '@babel/helper-module-transforms': 7.24.5(@babel/core@7.24.5) - '@babel/helper-plugin-utils': 7.24.5 + '@babel/core': 7.25.2 + '@babel/helper-annotate-as-pure': 7.25.7 + '@babel/helper-plugin-utils': 7.25.7 - '@babel/plugin-transform-named-capturing-groups-regex@7.22.5(@babel/core@7.24.5)': + '@babel/plugin-transform-regenerator@7.25.7(@babel/core@7.25.2)': dependencies: - '@babel/core': 7.24.5 - '@babel/helper-create-regexp-features-plugin': 7.22.15(@babel/core@7.24.5) - '@babel/helper-plugin-utils': 7.24.5 + '@babel/core': 7.25.2 + '@babel/helper-plugin-utils': 7.25.7 + regenerator-transform: 0.15.2 - '@babel/plugin-transform-new-target@7.24.1(@babel/core@7.24.5)': + '@babel/plugin-transform-regenerator@7.25.7(@babel/core@7.25.7)': dependencies: - '@babel/core': 7.24.5 - '@babel/helper-plugin-utils': 7.24.5 + '@babel/core': 7.25.7 + '@babel/helper-plugin-utils': 7.25.7 + regenerator-transform: 0.15.2 - '@babel/plugin-transform-nullish-coalescing-operator@7.24.1(@babel/core@7.24.5)': + '@babel/plugin-transform-reserved-words@7.25.7(@babel/core@7.25.2)': dependencies: - '@babel/core': 7.24.5 - '@babel/helper-plugin-utils': 7.24.5 - '@babel/plugin-syntax-nullish-coalescing-operator': 7.8.3(@babel/core@7.24.5) + '@babel/core': 7.25.2 + '@babel/helper-plugin-utils': 7.25.7 - '@babel/plugin-transform-numeric-separator@7.24.1(@babel/core@7.24.5)': + '@babel/plugin-transform-reserved-words@7.25.7(@babel/core@7.25.7)': dependencies: - '@babel/core': 7.24.5 - '@babel/helper-plugin-utils': 7.24.5 - '@babel/plugin-syntax-numeric-separator': 7.10.4(@babel/core@7.24.5) + '@babel/core': 7.25.7 + '@babel/helper-plugin-utils': 7.25.7 - '@babel/plugin-transform-object-rest-spread@7.24.5(@babel/core@7.24.5)': + '@babel/plugin-transform-shorthand-properties@7.25.7(@babel/core@7.25.2)': dependencies: - '@babel/core': 7.24.5 - '@babel/helper-compilation-targets': 7.23.6 - '@babel/helper-plugin-utils': 7.24.5 - '@babel/plugin-syntax-object-rest-spread': 7.8.3(@babel/core@7.24.5) - '@babel/plugin-transform-parameters': 7.24.5(@babel/core@7.24.5) + '@babel/core': 7.25.2 + '@babel/helper-plugin-utils': 7.25.7 - '@babel/plugin-transform-object-super@7.24.1(@babel/core@7.24.5)': + '@babel/plugin-transform-shorthand-properties@7.25.7(@babel/core@7.25.7)': dependencies: - '@babel/core': 7.24.5 - '@babel/helper-plugin-utils': 7.24.5 - '@babel/helper-replace-supers': 7.24.1(@babel/core@7.24.5) + '@babel/core': 7.25.7 + '@babel/helper-plugin-utils': 7.25.7 - '@babel/plugin-transform-optional-catch-binding@7.24.1(@babel/core@7.24.5)': + '@babel/plugin-transform-spread@7.25.7(@babel/core@7.25.2)': dependencies: - '@babel/core': 7.24.5 - '@babel/helper-plugin-utils': 7.24.5 - '@babel/plugin-syntax-optional-catch-binding': 7.8.3(@babel/core@7.24.5) + '@babel/core': 7.25.2 + '@babel/helper-plugin-utils': 7.25.7 + '@babel/helper-skip-transparent-expression-wrappers': 7.25.7 + transitivePeerDependencies: + - supports-color - '@babel/plugin-transform-optional-chaining@7.24.5(@babel/core@7.24.5)': + '@babel/plugin-transform-spread@7.25.7(@babel/core@7.25.7)': dependencies: - '@babel/core': 7.24.5 - '@babel/helper-plugin-utils': 7.24.5 - '@babel/helper-skip-transparent-expression-wrappers': 7.22.5 - '@babel/plugin-syntax-optional-chaining': 7.8.3(@babel/core@7.24.5) + '@babel/core': 7.25.7 + '@babel/helper-plugin-utils': 7.25.7 + '@babel/helper-skip-transparent-expression-wrappers': 7.25.7 + transitivePeerDependencies: + - supports-color - '@babel/plugin-transform-parameters@7.24.5(@babel/core@7.24.5)': + '@babel/plugin-transform-sticky-regex@7.25.7(@babel/core@7.25.2)': dependencies: - '@babel/core': 7.24.5 - '@babel/helper-plugin-utils': 7.24.5 + '@babel/core': 7.25.2 + '@babel/helper-plugin-utils': 7.25.7 - '@babel/plugin-transform-private-methods@7.24.1(@babel/core@7.24.5)': + '@babel/plugin-transform-sticky-regex@7.25.7(@babel/core@7.25.7)': dependencies: - '@babel/core': 7.24.5 - '@babel/helper-create-class-features-plugin': 7.24.5(@babel/core@7.24.5) - '@babel/helper-plugin-utils': 7.24.5 + '@babel/core': 7.25.7 + '@babel/helper-plugin-utils': 7.25.7 - '@babel/plugin-transform-private-property-in-object@7.24.5(@babel/core@7.24.5)': + '@babel/plugin-transform-template-literals@7.25.7(@babel/core@7.25.2)': dependencies: - '@babel/core': 7.24.5 - '@babel/helper-annotate-as-pure': 7.22.5 - '@babel/helper-create-class-features-plugin': 7.24.5(@babel/core@7.24.5) - '@babel/helper-plugin-utils': 7.24.5 - '@babel/plugin-syntax-private-property-in-object': 7.14.5(@babel/core@7.24.5) + '@babel/core': 7.25.2 + '@babel/helper-plugin-utils': 7.25.7 - '@babel/plugin-transform-property-literals@7.24.1(@babel/core@7.24.5)': + '@babel/plugin-transform-template-literals@7.25.7(@babel/core@7.25.7)': dependencies: - '@babel/core': 7.24.5 - '@babel/helper-plugin-utils': 7.24.5 + '@babel/core': 7.25.7 + '@babel/helper-plugin-utils': 7.25.7 - '@babel/plugin-transform-regenerator@7.24.1(@babel/core@7.24.5)': + '@babel/plugin-transform-typeof-symbol@7.25.7(@babel/core@7.25.2)': dependencies: - '@babel/core': 7.24.5 - '@babel/helper-plugin-utils': 7.24.5 - regenerator-transform: 0.15.2 + '@babel/core': 7.25.2 + '@babel/helper-plugin-utils': 7.25.7 + + '@babel/plugin-transform-typeof-symbol@7.25.7(@babel/core@7.25.7)': + dependencies: + '@babel/core': 7.25.7 + '@babel/helper-plugin-utils': 7.25.7 + + '@babel/plugin-transform-unicode-escapes@7.25.7(@babel/core@7.25.2)': + dependencies: + '@babel/core': 7.25.2 + '@babel/helper-plugin-utils': 7.25.7 + + '@babel/plugin-transform-unicode-escapes@7.25.7(@babel/core@7.25.7)': + dependencies: + '@babel/core': 7.25.7 + '@babel/helper-plugin-utils': 7.25.7 + + '@babel/plugin-transform-unicode-property-regex@7.25.7(@babel/core@7.25.2)': + dependencies: + '@babel/core': 7.25.2 + '@babel/helper-create-regexp-features-plugin': 7.25.7(@babel/core@7.25.2) + '@babel/helper-plugin-utils': 7.25.7 + + '@babel/plugin-transform-unicode-property-regex@7.25.7(@babel/core@7.25.7)': + dependencies: + '@babel/core': 7.25.7 + '@babel/helper-create-regexp-features-plugin': 7.25.7(@babel/core@7.25.7) + '@babel/helper-plugin-utils': 7.25.7 + + '@babel/plugin-transform-unicode-regex@7.25.7(@babel/core@7.25.2)': + dependencies: + '@babel/core': 7.25.2 + '@babel/helper-create-regexp-features-plugin': 7.25.7(@babel/core@7.25.2) + '@babel/helper-plugin-utils': 7.25.7 + + '@babel/plugin-transform-unicode-regex@7.25.7(@babel/core@7.25.7)': + dependencies: + '@babel/core': 7.25.7 + '@babel/helper-create-regexp-features-plugin': 7.25.7(@babel/core@7.25.7) + '@babel/helper-plugin-utils': 7.25.7 + + '@babel/plugin-transform-unicode-sets-regex@7.25.7(@babel/core@7.25.2)': + dependencies: + '@babel/core': 7.25.2 + '@babel/helper-create-regexp-features-plugin': 7.25.7(@babel/core@7.25.2) + '@babel/helper-plugin-utils': 7.25.7 + + '@babel/plugin-transform-unicode-sets-regex@7.25.7(@babel/core@7.25.7)': + dependencies: + '@babel/core': 7.25.7 + '@babel/helper-create-regexp-features-plugin': 7.25.7(@babel/core@7.25.7) + '@babel/helper-plugin-utils': 7.25.7 + + '@babel/preset-env@7.25.4(@babel/core@7.25.2)': + dependencies: + '@babel/compat-data': 7.25.7 + '@babel/core': 7.25.2 + '@babel/helper-compilation-targets': 7.25.7 + '@babel/helper-plugin-utils': 7.25.7 + '@babel/helper-validator-option': 7.25.7 + '@babel/plugin-bugfix-firefox-class-in-computed-class-key': 7.25.7(@babel/core@7.25.2) + '@babel/plugin-bugfix-safari-class-field-initializer-scope': 7.25.7(@babel/core@7.25.2) + '@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression': 7.25.7(@babel/core@7.25.2) + '@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining': 7.25.7(@babel/core@7.25.2) + '@babel/plugin-bugfix-v8-static-class-fields-redefine-readonly': 7.25.7(@babel/core@7.25.2) + '@babel/plugin-proposal-private-property-in-object': 7.21.0-placeholder-for-preset-env.2(@babel/core@7.25.2) + '@babel/plugin-syntax-async-generators': 7.8.4(@babel/core@7.25.2) + '@babel/plugin-syntax-class-properties': 7.12.13(@babel/core@7.25.2) + '@babel/plugin-syntax-class-static-block': 7.14.5(@babel/core@7.25.2) + '@babel/plugin-syntax-dynamic-import': 7.8.3(@babel/core@7.25.2) + '@babel/plugin-syntax-export-namespace-from': 7.8.3(@babel/core@7.25.2) + '@babel/plugin-syntax-import-assertions': 7.25.7(@babel/core@7.25.2) + '@babel/plugin-syntax-import-attributes': 7.25.7(@babel/core@7.25.2) + '@babel/plugin-syntax-import-meta': 7.10.4(@babel/core@7.25.2) + '@babel/plugin-syntax-json-strings': 7.8.3(@babel/core@7.25.2) + '@babel/plugin-syntax-logical-assignment-operators': 7.10.4(@babel/core@7.25.2) + '@babel/plugin-syntax-nullish-coalescing-operator': 7.8.3(@babel/core@7.25.2) + '@babel/plugin-syntax-numeric-separator': 7.10.4(@babel/core@7.25.2) + '@babel/plugin-syntax-object-rest-spread': 7.8.3(@babel/core@7.25.2) + '@babel/plugin-syntax-optional-catch-binding': 7.8.3(@babel/core@7.25.2) + '@babel/plugin-syntax-optional-chaining': 7.8.3(@babel/core@7.25.2) + '@babel/plugin-syntax-private-property-in-object': 7.14.5(@babel/core@7.25.2) + '@babel/plugin-syntax-top-level-await': 7.14.5(@babel/core@7.25.2) + '@babel/plugin-syntax-unicode-sets-regex': 7.18.6(@babel/core@7.25.2) + '@babel/plugin-transform-arrow-functions': 7.25.7(@babel/core@7.25.2) + '@babel/plugin-transform-async-generator-functions': 7.25.7(@babel/core@7.25.2) + '@babel/plugin-transform-async-to-generator': 7.25.7(@babel/core@7.25.2) + '@babel/plugin-transform-block-scoped-functions': 7.25.7(@babel/core@7.25.2) + '@babel/plugin-transform-block-scoping': 7.25.7(@babel/core@7.25.2) + '@babel/plugin-transform-class-properties': 7.25.7(@babel/core@7.25.2) + '@babel/plugin-transform-class-static-block': 7.25.7(@babel/core@7.25.2) + '@babel/plugin-transform-classes': 7.25.7(@babel/core@7.25.2) + '@babel/plugin-transform-computed-properties': 7.25.7(@babel/core@7.25.2) + '@babel/plugin-transform-destructuring': 7.25.7(@babel/core@7.25.2) + '@babel/plugin-transform-dotall-regex': 7.25.7(@babel/core@7.25.2) + '@babel/plugin-transform-duplicate-keys': 7.25.7(@babel/core@7.25.2) + '@babel/plugin-transform-duplicate-named-capturing-groups-regex': 7.25.7(@babel/core@7.25.2) + '@babel/plugin-transform-dynamic-import': 7.25.7(@babel/core@7.25.2) + '@babel/plugin-transform-exponentiation-operator': 7.25.7(@babel/core@7.25.2) + '@babel/plugin-transform-export-namespace-from': 7.25.7(@babel/core@7.25.2) + '@babel/plugin-transform-for-of': 7.25.7(@babel/core@7.25.2) + '@babel/plugin-transform-function-name': 7.25.7(@babel/core@7.25.2) + '@babel/plugin-transform-json-strings': 7.25.7(@babel/core@7.25.2) + '@babel/plugin-transform-literals': 7.25.7(@babel/core@7.25.2) + '@babel/plugin-transform-logical-assignment-operators': 7.25.7(@babel/core@7.25.2) + '@babel/plugin-transform-member-expression-literals': 7.25.7(@babel/core@7.25.2) + '@babel/plugin-transform-modules-amd': 7.25.7(@babel/core@7.25.2) + '@babel/plugin-transform-modules-commonjs': 7.25.7(@babel/core@7.25.2) + '@babel/plugin-transform-modules-systemjs': 7.25.7(@babel/core@7.25.2) + '@babel/plugin-transform-modules-umd': 7.25.7(@babel/core@7.25.2) + '@babel/plugin-transform-named-capturing-groups-regex': 7.25.7(@babel/core@7.25.2) + '@babel/plugin-transform-new-target': 7.25.7(@babel/core@7.25.2) + '@babel/plugin-transform-nullish-coalescing-operator': 7.25.7(@babel/core@7.25.2) + '@babel/plugin-transform-numeric-separator': 7.25.7(@babel/core@7.25.2) + '@babel/plugin-transform-object-rest-spread': 7.25.7(@babel/core@7.25.2) + '@babel/plugin-transform-object-super': 7.25.7(@babel/core@7.25.2) + '@babel/plugin-transform-optional-catch-binding': 7.25.7(@babel/core@7.25.2) + '@babel/plugin-transform-optional-chaining': 7.25.7(@babel/core@7.25.2) + '@babel/plugin-transform-parameters': 7.25.7(@babel/core@7.25.2) + '@babel/plugin-transform-private-methods': 7.25.7(@babel/core@7.25.2) + '@babel/plugin-transform-private-property-in-object': 7.25.7(@babel/core@7.25.2) + '@babel/plugin-transform-property-literals': 7.25.7(@babel/core@7.25.2) + '@babel/plugin-transform-regenerator': 7.25.7(@babel/core@7.25.2) + '@babel/plugin-transform-reserved-words': 7.25.7(@babel/core@7.25.2) + '@babel/plugin-transform-shorthand-properties': 7.25.7(@babel/core@7.25.2) + '@babel/plugin-transform-spread': 7.25.7(@babel/core@7.25.2) + '@babel/plugin-transform-sticky-regex': 7.25.7(@babel/core@7.25.2) + '@babel/plugin-transform-template-literals': 7.25.7(@babel/core@7.25.2) + '@babel/plugin-transform-typeof-symbol': 7.25.7(@babel/core@7.25.2) + '@babel/plugin-transform-unicode-escapes': 7.25.7(@babel/core@7.25.2) + '@babel/plugin-transform-unicode-property-regex': 7.25.7(@babel/core@7.25.2) + '@babel/plugin-transform-unicode-regex': 7.25.7(@babel/core@7.25.2) + '@babel/plugin-transform-unicode-sets-regex': 7.25.7(@babel/core@7.25.2) + '@babel/preset-modules': 0.1.6-no-external-plugins(@babel/core@7.25.2) + babel-plugin-polyfill-corejs2: 0.4.11(@babel/core@7.25.2) + babel-plugin-polyfill-corejs3: 0.10.6(@babel/core@7.25.2) + babel-plugin-polyfill-regenerator: 0.6.2(@babel/core@7.25.2) + core-js-compat: 3.38.1 + semver: 6.3.1 + transitivePeerDependencies: + - supports-color - '@babel/plugin-transform-reserved-words@7.24.1(@babel/core@7.24.5)': - dependencies: - '@babel/core': 7.24.5 - '@babel/helper-plugin-utils': 7.24.5 - - '@babel/plugin-transform-shorthand-properties@7.24.1(@babel/core@7.24.5)': - dependencies: - '@babel/core': 7.24.5 - '@babel/helper-plugin-utils': 7.24.5 - - '@babel/plugin-transform-spread@7.24.1(@babel/core@7.24.5)': - dependencies: - '@babel/core': 7.24.5 - '@babel/helper-plugin-utils': 7.24.5 - '@babel/helper-skip-transparent-expression-wrappers': 7.22.5 - - '@babel/plugin-transform-sticky-regex@7.24.1(@babel/core@7.24.5)': - dependencies: - '@babel/core': 7.24.5 - '@babel/helper-plugin-utils': 7.24.5 - - '@babel/plugin-transform-template-literals@7.24.1(@babel/core@7.24.5)': - dependencies: - '@babel/core': 7.24.5 - '@babel/helper-plugin-utils': 7.24.5 - - '@babel/plugin-transform-typeof-symbol@7.24.5(@babel/core@7.24.5)': - dependencies: - '@babel/core': 7.24.5 - '@babel/helper-plugin-utils': 7.24.5 - - '@babel/plugin-transform-unicode-escapes@7.24.1(@babel/core@7.24.5)': - dependencies: - '@babel/core': 7.24.5 - '@babel/helper-plugin-utils': 7.24.5 - - '@babel/plugin-transform-unicode-property-regex@7.24.1(@babel/core@7.24.5)': - dependencies: - '@babel/core': 7.24.5 - '@babel/helper-create-regexp-features-plugin': 7.22.15(@babel/core@7.24.5) - '@babel/helper-plugin-utils': 7.24.5 - - '@babel/plugin-transform-unicode-regex@7.24.1(@babel/core@7.24.5)': - dependencies: - '@babel/core': 7.24.5 - '@babel/helper-create-regexp-features-plugin': 7.22.15(@babel/core@7.24.5) - '@babel/helper-plugin-utils': 7.24.5 - - '@babel/plugin-transform-unicode-sets-regex@7.24.1(@babel/core@7.24.5)': - dependencies: - '@babel/core': 7.24.5 - '@babel/helper-create-regexp-features-plugin': 7.22.15(@babel/core@7.24.5) - '@babel/helper-plugin-utils': 7.24.5 - - '@babel/preset-env@7.24.5(@babel/core@7.24.5)': - dependencies: - '@babel/compat-data': 7.24.4 - '@babel/core': 7.24.5 - '@babel/helper-compilation-targets': 7.23.6 - '@babel/helper-plugin-utils': 7.24.5 - '@babel/helper-validator-option': 7.23.5 - '@babel/plugin-bugfix-firefox-class-in-computed-class-key': 7.24.5(@babel/core@7.24.5) - '@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression': 7.24.1(@babel/core@7.24.5) - '@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining': 7.24.1(@babel/core@7.24.5) - '@babel/plugin-bugfix-v8-static-class-fields-redefine-readonly': 7.24.1(@babel/core@7.24.5) - '@babel/plugin-proposal-private-property-in-object': 7.21.0-placeholder-for-preset-env.2(@babel/core@7.24.5) - '@babel/plugin-syntax-async-generators': 7.8.4(@babel/core@7.24.5) - '@babel/plugin-syntax-class-properties': 7.12.13(@babel/core@7.24.5) - '@babel/plugin-syntax-class-static-block': 7.14.5(@babel/core@7.24.5) - '@babel/plugin-syntax-dynamic-import': 7.8.3(@babel/core@7.24.5) - '@babel/plugin-syntax-export-namespace-from': 7.8.3(@babel/core@7.24.5) - '@babel/plugin-syntax-import-assertions': 7.24.1(@babel/core@7.24.5) - '@babel/plugin-syntax-import-attributes': 7.24.1(@babel/core@7.24.5) - '@babel/plugin-syntax-import-meta': 7.10.4(@babel/core@7.24.5) - '@babel/plugin-syntax-json-strings': 7.8.3(@babel/core@7.24.5) - '@babel/plugin-syntax-logical-assignment-operators': 7.10.4(@babel/core@7.24.5) - '@babel/plugin-syntax-nullish-coalescing-operator': 7.8.3(@babel/core@7.24.5) - '@babel/plugin-syntax-numeric-separator': 7.10.4(@babel/core@7.24.5) - '@babel/plugin-syntax-object-rest-spread': 7.8.3(@babel/core@7.24.5) - '@babel/plugin-syntax-optional-catch-binding': 7.8.3(@babel/core@7.24.5) - '@babel/plugin-syntax-optional-chaining': 7.8.3(@babel/core@7.24.5) - '@babel/plugin-syntax-private-property-in-object': 7.14.5(@babel/core@7.24.5) - '@babel/plugin-syntax-top-level-await': 7.14.5(@babel/core@7.24.5) - '@babel/plugin-syntax-unicode-sets-regex': 7.18.6(@babel/core@7.24.5) - '@babel/plugin-transform-arrow-functions': 7.24.1(@babel/core@7.24.5) - '@babel/plugin-transform-async-generator-functions': 7.24.3(@babel/core@7.24.5) - '@babel/plugin-transform-async-to-generator': 7.24.1(@babel/core@7.24.5) - '@babel/plugin-transform-block-scoped-functions': 7.24.1(@babel/core@7.24.5) - '@babel/plugin-transform-block-scoping': 7.24.5(@babel/core@7.24.5) - '@babel/plugin-transform-class-properties': 7.24.1(@babel/core@7.24.5) - '@babel/plugin-transform-class-static-block': 7.24.4(@babel/core@7.24.5) - '@babel/plugin-transform-classes': 7.24.5(@babel/core@7.24.5) - '@babel/plugin-transform-computed-properties': 7.24.1(@babel/core@7.24.5) - '@babel/plugin-transform-destructuring': 7.24.5(@babel/core@7.24.5) - '@babel/plugin-transform-dotall-regex': 7.24.1(@babel/core@7.24.5) - '@babel/plugin-transform-duplicate-keys': 7.24.1(@babel/core@7.24.5) - '@babel/plugin-transform-dynamic-import': 7.24.1(@babel/core@7.24.5) - '@babel/plugin-transform-exponentiation-operator': 7.24.1(@babel/core@7.24.5) - '@babel/plugin-transform-export-namespace-from': 7.24.1(@babel/core@7.24.5) - '@babel/plugin-transform-for-of': 7.24.1(@babel/core@7.24.5) - '@babel/plugin-transform-function-name': 7.24.1(@babel/core@7.24.5) - '@babel/plugin-transform-json-strings': 7.24.1(@babel/core@7.24.5) - '@babel/plugin-transform-literals': 7.24.1(@babel/core@7.24.5) - '@babel/plugin-transform-logical-assignment-operators': 7.24.1(@babel/core@7.24.5) - '@babel/plugin-transform-member-expression-literals': 7.24.1(@babel/core@7.24.5) - '@babel/plugin-transform-modules-amd': 7.24.1(@babel/core@7.24.5) - '@babel/plugin-transform-modules-commonjs': 7.24.1(@babel/core@7.24.5) - '@babel/plugin-transform-modules-systemjs': 7.24.1(@babel/core@7.24.5) - '@babel/plugin-transform-modules-umd': 7.24.1(@babel/core@7.24.5) - '@babel/plugin-transform-named-capturing-groups-regex': 7.22.5(@babel/core@7.24.5) - '@babel/plugin-transform-new-target': 7.24.1(@babel/core@7.24.5) - '@babel/plugin-transform-nullish-coalescing-operator': 7.24.1(@babel/core@7.24.5) - '@babel/plugin-transform-numeric-separator': 7.24.1(@babel/core@7.24.5) - '@babel/plugin-transform-object-rest-spread': 7.24.5(@babel/core@7.24.5) - '@babel/plugin-transform-object-super': 7.24.1(@babel/core@7.24.5) - '@babel/plugin-transform-optional-catch-binding': 7.24.1(@babel/core@7.24.5) - '@babel/plugin-transform-optional-chaining': 7.24.5(@babel/core@7.24.5) - '@babel/plugin-transform-parameters': 7.24.5(@babel/core@7.24.5) - '@babel/plugin-transform-private-methods': 7.24.1(@babel/core@7.24.5) - '@babel/plugin-transform-private-property-in-object': 7.24.5(@babel/core@7.24.5) - '@babel/plugin-transform-property-literals': 7.24.1(@babel/core@7.24.5) - '@babel/plugin-transform-regenerator': 7.24.1(@babel/core@7.24.5) - '@babel/plugin-transform-reserved-words': 7.24.1(@babel/core@7.24.5) - '@babel/plugin-transform-shorthand-properties': 7.24.1(@babel/core@7.24.5) - '@babel/plugin-transform-spread': 7.24.1(@babel/core@7.24.5) - '@babel/plugin-transform-sticky-regex': 7.24.1(@babel/core@7.24.5) - '@babel/plugin-transform-template-literals': 7.24.1(@babel/core@7.24.5) - '@babel/plugin-transform-typeof-symbol': 7.24.5(@babel/core@7.24.5) - '@babel/plugin-transform-unicode-escapes': 7.24.1(@babel/core@7.24.5) - '@babel/plugin-transform-unicode-property-regex': 7.24.1(@babel/core@7.24.5) - '@babel/plugin-transform-unicode-regex': 7.24.1(@babel/core@7.24.5) - '@babel/plugin-transform-unicode-sets-regex': 7.24.1(@babel/core@7.24.5) - '@babel/preset-modules': 0.1.6-no-external-plugins(@babel/core@7.24.5) - babel-plugin-polyfill-corejs2: 0.4.11(@babel/core@7.24.5) - babel-plugin-polyfill-corejs3: 0.10.4(@babel/core@7.24.5) - babel-plugin-polyfill-regenerator: 0.6.2(@babel/core@7.24.5) - core-js-compat: 3.37.0 + '@babel/preset-env@7.25.7(@babel/core@7.25.7)': + dependencies: + '@babel/compat-data': 7.25.7 + '@babel/core': 7.25.7 + '@babel/helper-compilation-targets': 7.25.7 + '@babel/helper-plugin-utils': 7.25.7 + '@babel/helper-validator-option': 7.25.7 + '@babel/plugin-bugfix-firefox-class-in-computed-class-key': 7.25.7(@babel/core@7.25.7) + '@babel/plugin-bugfix-safari-class-field-initializer-scope': 7.25.7(@babel/core@7.25.7) + '@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression': 7.25.7(@babel/core@7.25.7) + '@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining': 7.25.7(@babel/core@7.25.7) + '@babel/plugin-bugfix-v8-static-class-fields-redefine-readonly': 7.25.7(@babel/core@7.25.7) + '@babel/plugin-proposal-private-property-in-object': 7.21.0-placeholder-for-preset-env.2(@babel/core@7.25.7) + '@babel/plugin-syntax-async-generators': 7.8.4(@babel/core@7.25.7) + '@babel/plugin-syntax-class-properties': 7.12.13(@babel/core@7.25.7) + '@babel/plugin-syntax-class-static-block': 7.14.5(@babel/core@7.25.7) + '@babel/plugin-syntax-dynamic-import': 7.8.3(@babel/core@7.25.7) + '@babel/plugin-syntax-export-namespace-from': 7.8.3(@babel/core@7.25.7) + '@babel/plugin-syntax-import-assertions': 7.25.7(@babel/core@7.25.7) + '@babel/plugin-syntax-import-attributes': 7.25.7(@babel/core@7.25.7) + '@babel/plugin-syntax-import-meta': 7.10.4(@babel/core@7.25.7) + '@babel/plugin-syntax-json-strings': 7.8.3(@babel/core@7.25.7) + '@babel/plugin-syntax-logical-assignment-operators': 7.10.4(@babel/core@7.25.7) + '@babel/plugin-syntax-nullish-coalescing-operator': 7.8.3(@babel/core@7.25.7) + '@babel/plugin-syntax-numeric-separator': 7.10.4(@babel/core@7.25.7) + '@babel/plugin-syntax-object-rest-spread': 7.8.3(@babel/core@7.25.7) + '@babel/plugin-syntax-optional-catch-binding': 7.8.3(@babel/core@7.25.7) + '@babel/plugin-syntax-optional-chaining': 7.8.3(@babel/core@7.25.7) + '@babel/plugin-syntax-private-property-in-object': 7.14.5(@babel/core@7.25.7) + '@babel/plugin-syntax-top-level-await': 7.14.5(@babel/core@7.25.7) + '@babel/plugin-syntax-unicode-sets-regex': 7.18.6(@babel/core@7.25.7) + '@babel/plugin-transform-arrow-functions': 7.25.7(@babel/core@7.25.7) + '@babel/plugin-transform-async-generator-functions': 7.25.7(@babel/core@7.25.7) + '@babel/plugin-transform-async-to-generator': 7.25.7(@babel/core@7.25.7) + '@babel/plugin-transform-block-scoped-functions': 7.25.7(@babel/core@7.25.7) + '@babel/plugin-transform-block-scoping': 7.25.7(@babel/core@7.25.7) + '@babel/plugin-transform-class-properties': 7.25.7(@babel/core@7.25.7) + '@babel/plugin-transform-class-static-block': 7.25.7(@babel/core@7.25.7) + '@babel/plugin-transform-classes': 7.25.7(@babel/core@7.25.7) + '@babel/plugin-transform-computed-properties': 7.25.7(@babel/core@7.25.7) + '@babel/plugin-transform-destructuring': 7.25.7(@babel/core@7.25.7) + '@babel/plugin-transform-dotall-regex': 7.25.7(@babel/core@7.25.7) + '@babel/plugin-transform-duplicate-keys': 7.25.7(@babel/core@7.25.7) + '@babel/plugin-transform-duplicate-named-capturing-groups-regex': 7.25.7(@babel/core@7.25.7) + '@babel/plugin-transform-dynamic-import': 7.25.7(@babel/core@7.25.7) + '@babel/plugin-transform-exponentiation-operator': 7.25.7(@babel/core@7.25.7) + '@babel/plugin-transform-export-namespace-from': 7.25.7(@babel/core@7.25.7) + '@babel/plugin-transform-for-of': 7.25.7(@babel/core@7.25.7) + '@babel/plugin-transform-function-name': 7.25.7(@babel/core@7.25.7) + '@babel/plugin-transform-json-strings': 7.25.7(@babel/core@7.25.7) + '@babel/plugin-transform-literals': 7.25.7(@babel/core@7.25.7) + '@babel/plugin-transform-logical-assignment-operators': 7.25.7(@babel/core@7.25.7) + '@babel/plugin-transform-member-expression-literals': 7.25.7(@babel/core@7.25.7) + '@babel/plugin-transform-modules-amd': 7.25.7(@babel/core@7.25.7) + '@babel/plugin-transform-modules-commonjs': 7.25.7(@babel/core@7.25.7) + '@babel/plugin-transform-modules-systemjs': 7.25.7(@babel/core@7.25.7) + '@babel/plugin-transform-modules-umd': 7.25.7(@babel/core@7.25.7) + '@babel/plugin-transform-named-capturing-groups-regex': 7.25.7(@babel/core@7.25.7) + '@babel/plugin-transform-new-target': 7.25.7(@babel/core@7.25.7) + '@babel/plugin-transform-nullish-coalescing-operator': 7.25.7(@babel/core@7.25.7) + '@babel/plugin-transform-numeric-separator': 7.25.7(@babel/core@7.25.7) + '@babel/plugin-transform-object-rest-spread': 7.25.7(@babel/core@7.25.7) + '@babel/plugin-transform-object-super': 7.25.7(@babel/core@7.25.7) + '@babel/plugin-transform-optional-catch-binding': 7.25.7(@babel/core@7.25.7) + '@babel/plugin-transform-optional-chaining': 7.25.7(@babel/core@7.25.7) + '@babel/plugin-transform-parameters': 7.25.7(@babel/core@7.25.7) + '@babel/plugin-transform-private-methods': 7.25.7(@babel/core@7.25.7) + '@babel/plugin-transform-private-property-in-object': 7.25.7(@babel/core@7.25.7) + '@babel/plugin-transform-property-literals': 7.25.7(@babel/core@7.25.7) + '@babel/plugin-transform-regenerator': 7.25.7(@babel/core@7.25.7) + '@babel/plugin-transform-reserved-words': 7.25.7(@babel/core@7.25.7) + '@babel/plugin-transform-shorthand-properties': 7.25.7(@babel/core@7.25.7) + '@babel/plugin-transform-spread': 7.25.7(@babel/core@7.25.7) + '@babel/plugin-transform-sticky-regex': 7.25.7(@babel/core@7.25.7) + '@babel/plugin-transform-template-literals': 7.25.7(@babel/core@7.25.7) + '@babel/plugin-transform-typeof-symbol': 7.25.7(@babel/core@7.25.7) + '@babel/plugin-transform-unicode-escapes': 7.25.7(@babel/core@7.25.7) + '@babel/plugin-transform-unicode-property-regex': 7.25.7(@babel/core@7.25.7) + '@babel/plugin-transform-unicode-regex': 7.25.7(@babel/core@7.25.7) + '@babel/plugin-transform-unicode-sets-regex': 7.25.7(@babel/core@7.25.7) + '@babel/preset-modules': 0.1.6-no-external-plugins(@babel/core@7.25.7) + babel-plugin-polyfill-corejs2: 0.4.11(@babel/core@7.25.7) + babel-plugin-polyfill-corejs3: 0.10.6(@babel/core@7.25.7) + babel-plugin-polyfill-regenerator: 0.6.2(@babel/core@7.25.7) + core-js-compat: 3.38.1 semver: 6.3.1 transitivePeerDependencies: - supports-color - '@babel/preset-modules@0.1.6-no-external-plugins(@babel/core@7.24.5)': + '@babel/preset-flow@7.24.7(@babel/core@7.25.2)': + dependencies: + '@babel/core': 7.25.2 + '@babel/helper-plugin-utils': 7.25.7 + '@babel/helper-validator-option': 7.25.7 + '@babel/plugin-transform-flow-strip-types': 7.25.7(@babel/core@7.25.2) + + '@babel/preset-modules@0.1.6-no-external-plugins(@babel/core@7.25.2)': + dependencies: + '@babel/core': 7.25.2 + '@babel/helper-plugin-utils': 7.25.7 + '@babel/types': 7.24.5 + esutils: 2.0.3 + + '@babel/preset-modules@0.1.6-no-external-plugins(@babel/core@7.25.7)': dependencies: - '@babel/core': 7.24.5 - '@babel/helper-plugin-utils': 7.24.5 + '@babel/core': 7.25.7 + '@babel/helper-plugin-utils': 7.25.7 '@babel/types': 7.24.5 esutils: 2.0.3 + '@babel/preset-react@7.24.7(@babel/core@7.25.2)': + dependencies: + '@babel/core': 7.25.2 + '@babel/helper-plugin-utils': 7.25.7 + '@babel/helper-validator-option': 7.25.7 + '@babel/plugin-transform-react-display-name': 7.25.7(@babel/core@7.25.2) + '@babel/plugin-transform-react-jsx': 7.25.7(@babel/core@7.25.2) + '@babel/plugin-transform-react-jsx-development': 7.25.7(@babel/core@7.25.2) + '@babel/plugin-transform-react-pure-annotations': 7.25.7(@babel/core@7.25.2) + transitivePeerDependencies: + - supports-color + '@babel/regjsgen@0.8.0': {} '@babel/runtime@7.24.5': dependencies: regenerator-runtime: 0.14.1 - '@babel/template@7.24.0': + '@babel/template@7.25.7': dependencies: - '@babel/code-frame': 7.24.2 - '@babel/parser': 7.24.5 - '@babel/types': 7.24.5 + '@babel/code-frame': 7.25.7 + '@babel/parser': 7.25.7 + '@babel/types': 7.25.7 - '@babel/traverse@7.24.5': + '@babel/traverse@7.25.7': dependencies: - '@babel/code-frame': 7.24.2 - '@babel/generator': 7.24.5 - '@babel/helper-environment-visitor': 7.22.20 - '@babel/helper-function-name': 7.23.0 - '@babel/helper-hoist-variables': 7.22.5 - '@babel/helper-split-export-declaration': 7.24.5 - '@babel/parser': 7.24.5 - '@babel/types': 7.24.5 - debug: 4.3.4(supports-color@8.1.1) + '@babel/code-frame': 7.25.7 + '@babel/generator': 7.25.7 + '@babel/parser': 7.25.7 + '@babel/template': 7.25.7 + '@babel/types': 7.25.7 + debug: 4.3.4 globals: 11.12.0 transitivePeerDependencies: - supports-color @@ -4601,33 +6255,57 @@ snapshots: '@babel/helper-validator-identifier': 7.24.5 to-fast-properties: 2.0.0 + '@babel/types@7.25.7': + dependencies: + '@babel/helper-string-parser': 7.25.7 + '@babel/helper-validator-identifier': 7.25.7 + to-fast-properties: 2.0.0 + '@bcoe/v8-coverage@0.2.3': {} '@blueoak/list@9.0.0': {} - '@brettz9/eslint-plugin@1.0.4(eslint@8.57.0)': + '@brettz9/eslint-plugin@3.0.0(eslint@9.12.0)': dependencies: - eslint: 8.57.0 + eslint: 9.12.0 - '@es-joy/jsdoccomment@0.42.0': + '@es-joy/jsdoccomment@0.48.0': dependencies: comment-parser: 1.4.1 - esquery: 1.5.0 - jsdoc-type-pratt-parser: 4.0.0 + esquery: 1.6.0 + jsdoc-type-pratt-parser: 4.1.0 + + '@eslint-community/eslint-plugin-eslint-comments@4.4.0(eslint@9.12.0)': + dependencies: + escape-string-regexp: 4.0.0 + eslint: 9.12.0 + ignore: 5.3.1 - '@eslint-community/eslint-utils@4.4.0(eslint@8.57.0)': + '@eslint-community/eslint-utils@4.4.0(eslint@9.12.0)': dependencies: - eslint: 8.57.0 + eslint: 9.12.0 eslint-visitor-keys: 3.4.3 '@eslint-community/regexpp@4.10.0': {} - '@eslint/eslintrc@2.1.4': + '@eslint-community/regexpp@4.11.1': {} + + '@eslint/config-array@0.18.0': + dependencies: + '@eslint/object-schema': 2.1.4 + debug: 4.3.4 + minimatch: 3.1.2 + transitivePeerDependencies: + - supports-color + + '@eslint/core@0.6.0': {} + + '@eslint/eslintrc@3.1.0': dependencies: ajv: 6.12.6 - debug: 4.3.4(supports-color@8.1.1) - espree: 9.6.1 - globals: 13.24.0 + debug: 4.3.4 + espree: 10.2.0 + globals: 14.0.0 ignore: 5.3.1 import-fresh: 3.3.0 js-yaml: 4.1.0 @@ -4636,21 +6314,37 @@ snapshots: transitivePeerDependencies: - supports-color - '@eslint/js@8.57.0': {} - - '@gar/promisify@1.1.3': {} + '@eslint/js@9.12.0': {} - '@humanwhocodes/config-array@0.11.14': + '@eslint/markdown@6.2.0': dependencies: - '@humanwhocodes/object-schema': 2.0.3 - debug: 4.3.4(supports-color@8.1.1) - minimatch: 3.1.2 + '@eslint/plugin-kit': 0.2.0 + mdast-util-from-markdown: 2.0.1 + mdast-util-gfm: 3.0.0 + micromark-extension-gfm: 3.0.0 transitivePeerDependencies: - supports-color + '@eslint/object-schema@2.1.4': {} + + '@eslint/plugin-kit@0.2.0': + dependencies: + levn: 0.4.1 + + '@fintechstudios/eslint-plugin-chai-as-promised@3.1.0': {} + + '@gar/promisify@1.1.3': {} + + '@humanfs/core@0.19.0': {} + + '@humanfs/node@0.16.5': + dependencies: + '@humanfs/core': 0.19.0 + '@humanwhocodes/retry': 0.3.1 + '@humanwhocodes/module-importer@1.0.1': {} - '@humanwhocodes/object-schema@2.0.3': {} + '@humanwhocodes/retry@0.3.1': {} '@isaacs/cliui@8.0.2': dependencies: @@ -4695,15 +6389,19 @@ snapshots: '@jridgewell/resolve-uri': 3.1.2 '@jridgewell/sourcemap-codec': 1.4.15 - '@jsep-plugin/assignment@1.2.1(jsep@1.3.8)': + '@jsep-plugin/assignment@1.2.1(jsep@1.3.9)': dependencies: - jsep: 1.3.8 + jsep: 1.3.9 - '@jsep-plugin/regex@1.0.3(jsep@1.3.8)': + '@jsep-plugin/regex@1.0.3(jsep@1.3.9)': dependencies: - jsep: 1.3.8 + jsep: 1.3.9 - '@mdn/browser-compat-data@5.5.24': {} + '@mdn/browser-compat-data@5.6.4': {} + + '@nicolo-ribaudo/eslint-scope-5-internals@5.1.1-v1': + dependencies: + eslint-scope: 5.1.1 '@nodelib/fs.scandir@2.1.5': dependencies: @@ -4717,6 +6415,8 @@ snapshots: '@nodelib/fs.scandir': 2.1.5 fastq: 1.17.1 + '@nolyfill/is-core-module@1.0.39': {} + '@npmcli/arborist@6.5.1': dependencies: '@isaacs/string-locale-compare': 1.1.0 @@ -4843,6 +6543,8 @@ snapshots: '@pkgjs/parseargs@0.11.0': optional: true + '@pkgr/core@0.1.1': {} + '@pnpm/config.env-replace@1.1.0': {} '@pnpm/network.ca-file@1.0.2': @@ -4855,74 +6557,86 @@ snapshots: '@pnpm/network.ca-file': 1.0.2 config-chain: 1.1.13 - '@rollup/plugin-babel@6.0.4(@babel/core@7.24.5)(rollup@4.12.0)': + '@rollup/plugin-babel@6.0.4(@babel/core@7.25.7)(rollup@4.24.0)': dependencies: - '@babel/core': 7.24.5 + '@babel/core': 7.25.7 '@babel/helper-module-imports': 7.24.3 - '@rollup/pluginutils': 5.1.0(rollup@4.12.0) - rollup: 4.12.0 + '@rollup/pluginutils': 5.1.0(rollup@4.24.0) + optionalDependencies: + rollup: 4.24.0 - '@rollup/plugin-node-resolve@15.2.3(rollup@4.12.0)': + '@rollup/plugin-node-resolve@15.3.0(rollup@4.24.0)': dependencies: - '@rollup/pluginutils': 5.1.0(rollup@4.12.0) + '@rollup/pluginutils': 5.1.0(rollup@4.24.0) '@types/resolve': 1.20.2 deepmerge: 4.3.1 - is-builtin-module: 3.2.1 is-module: 1.0.0 resolve: 1.22.8 - rollup: 4.12.0 + optionalDependencies: + rollup: 4.24.0 - '@rollup/plugin-terser@0.4.4(rollup@4.12.0)': + '@rollup/plugin-terser@0.4.4(rollup@4.24.0)': dependencies: - rollup: 4.12.0 serialize-javascript: 6.0.2 smob: 1.5.0 terser: 5.31.0 + optionalDependencies: + rollup: 4.24.0 - '@rollup/pluginutils@5.1.0(rollup@4.12.0)': + '@rollup/pluginutils@5.1.0(rollup@4.24.0)': dependencies: '@types/estree': 1.0.5 estree-walker: 2.0.2 picomatch: 2.3.1 - rollup: 4.12.0 + optionalDependencies: + rollup: 4.24.0 + + '@rollup/rollup-android-arm-eabi@4.24.0': + optional: true + + '@rollup/rollup-android-arm64@4.24.0': + optional: true + + '@rollup/rollup-darwin-arm64@4.24.0': + optional: true - '@rollup/rollup-android-arm-eabi@4.12.0': + '@rollup/rollup-darwin-x64@4.24.0': optional: true - '@rollup/rollup-android-arm64@4.12.0': + '@rollup/rollup-linux-arm-gnueabihf@4.24.0': optional: true - '@rollup/rollup-darwin-arm64@4.12.0': + '@rollup/rollup-linux-arm-musleabihf@4.24.0': optional: true - '@rollup/rollup-darwin-x64@4.12.0': + '@rollup/rollup-linux-arm64-gnu@4.24.0': optional: true - '@rollup/rollup-linux-arm-gnueabihf@4.12.0': + '@rollup/rollup-linux-arm64-musl@4.24.0': optional: true - '@rollup/rollup-linux-arm64-gnu@4.12.0': + '@rollup/rollup-linux-powerpc64le-gnu@4.24.0': optional: true - '@rollup/rollup-linux-arm64-musl@4.12.0': + '@rollup/rollup-linux-riscv64-gnu@4.24.0': optional: true - '@rollup/rollup-linux-riscv64-gnu@4.12.0': + '@rollup/rollup-linux-s390x-gnu@4.24.0': optional: true - '@rollup/rollup-linux-x64-gnu@4.12.0': + '@rollup/rollup-linux-x64-gnu@4.24.0': optional: true - '@rollup/rollup-linux-x64-musl@4.12.0': + '@rollup/rollup-linux-x64-musl@4.24.0': optional: true - '@rollup/rollup-win32-arm64-msvc@4.12.0': + '@rollup/rollup-win32-arm64-msvc@4.24.0': optional: true - '@rollup/rollup-win32-ia32-msvc@4.12.0': + '@rollup/rollup-win32-ia32-msvc@4.24.0': optional: true - '@rollup/rollup-win32-x64-msvc@4.12.0': + '@rollup/rollup-win32-x64-msvc@4.24.0': optional: true '@rpl/badge-up@3.0.0': @@ -4931,6 +6645,35 @@ snapshots: dot: 1.1.3 svgo: 2.6.0 + '@rtsao/scc@1.1.0': {} + + '@shikijs/core@1.22.0': + dependencies: + '@shikijs/engine-javascript': 1.22.0 + '@shikijs/engine-oniguruma': 1.22.0 + '@shikijs/types': 1.22.0 + '@shikijs/vscode-textmate': 9.3.0 + '@types/hast': 3.0.4 + hast-util-to-html: 9.0.3 + + '@shikijs/engine-javascript@1.22.0': + dependencies: + '@shikijs/types': 1.22.0 + '@shikijs/vscode-textmate': 9.3.0 + oniguruma-to-js: 0.4.3 + + '@shikijs/engine-oniguruma@1.22.0': + dependencies: + '@shikijs/types': 1.22.0 + '@shikijs/vscode-textmate': 9.3.0 + + '@shikijs/types@1.22.0': + dependencies: + '@shikijs/vscode-textmate': 9.3.0 + '@types/hast': 3.0.4 + + '@shikijs/vscode-textmate@9.3.0': {} + '@sigstore/bundle@1.1.0': dependencies: '@sigstore/protobuf-specs': 0.2.1 @@ -4954,50 +6697,16 @@ snapshots: '@sindresorhus/is@5.6.0': {} - '@stylistic/eslint-plugin-js@1.8.0(eslint@8.57.0)': - dependencies: - '@types/eslint': 8.56.10 - acorn: 8.11.3 - escape-string-regexp: 4.0.0 - eslint: 8.57.0 - eslint-visitor-keys: 3.4.3 - espree: 9.6.1 + '@sindresorhus/merge-streams@2.3.0': {} - '@stylistic/eslint-plugin-jsx@1.8.0(eslint@8.57.0)': + '@stylistic/eslint-plugin@2.9.0(eslint@9.12.0)(typescript@5.6.2)': dependencies: - '@stylistic/eslint-plugin-js': 1.8.0(eslint@8.57.0) - '@types/eslint': 8.56.10 - eslint: 8.57.0 + '@typescript-eslint/utils': 8.8.0(eslint@9.12.0)(typescript@5.6.2) + eslint: 9.12.0 + eslint-visitor-keys: 4.1.0 + espree: 10.2.0 estraverse: 5.3.0 picomatch: 4.0.2 - - '@stylistic/eslint-plugin-plus@1.8.0(eslint@8.57.0)(typescript@5.4.5)': - dependencies: - '@types/eslint': 8.56.10 - '@typescript-eslint/utils': 6.21.0(eslint@8.57.0)(typescript@5.4.5) - eslint: 8.57.0 - transitivePeerDependencies: - - supports-color - - typescript - - '@stylistic/eslint-plugin-ts@1.8.0(eslint@8.57.0)(typescript@5.4.5)': - dependencies: - '@stylistic/eslint-plugin-js': 1.8.0(eslint@8.57.0) - '@types/eslint': 8.56.10 - '@typescript-eslint/utils': 6.21.0(eslint@8.57.0)(typescript@5.4.5) - eslint: 8.57.0 - transitivePeerDependencies: - - supports-color - - typescript - - '@stylistic/eslint-plugin@1.8.0(eslint@8.57.0)(typescript@5.4.5)': - dependencies: - '@stylistic/eslint-plugin-js': 1.8.0(eslint@8.57.0) - '@stylistic/eslint-plugin-jsx': 1.8.0(eslint@8.57.0) - '@stylistic/eslint-plugin-plus': 1.8.0(eslint@8.57.0)(typescript@5.4.5) - '@stylistic/eslint-plugin-ts': 1.8.0(eslint@8.57.0)(typescript@5.4.5) - '@types/eslint': 8.56.10 - eslint: 8.57.0 transitivePeerDependencies: - supports-color - typescript @@ -5019,13 +6728,18 @@ snapshots: '@tufjs/canonical-json': 1.0.0 minimatch: 9.0.4 - '@types/eslint@8.56.10': + '@types/debug@4.1.12': dependencies: - '@types/estree': 1.0.5 - '@types/json-schema': 7.0.15 + '@types/ms': 0.7.34 '@types/estree@1.0.5': {} + '@types/estree@1.0.6': {} + + '@types/hast@3.0.4': + dependencies: + '@types/unist': 2.0.10 + '@types/http-cache-semantics@4.0.4': {} '@types/istanbul-lib-coverage@2.0.6': {} @@ -5034,56 +6748,175 @@ snapshots: '@types/json5@0.0.29': {} - '@types/mdast@3.0.15': + '@types/mdast@4.0.4': dependencies: - '@types/unist': 2.0.10 + '@types/unist': 3.0.3 + + '@types/ms@0.7.34': {} '@types/normalize-package-data@2.4.4': {} '@types/resolve@1.20.2': {} - '@types/semver@7.5.8': {} - '@types/unist@2.0.10': {} - '@typescript-eslint/scope-manager@6.21.0': + '@types/unist@3.0.3': {} + + '@typescript-eslint/eslint-plugin@7.16.1(@typescript-eslint/parser@7.18.0(eslint@9.12.0)(typescript@5.6.2))(eslint@9.12.0)(typescript@5.6.2)': + dependencies: + '@eslint-community/regexpp': 4.11.1 + '@typescript-eslint/parser': 7.18.0(eslint@9.12.0)(typescript@5.6.2) + '@typescript-eslint/scope-manager': 7.16.1 + '@typescript-eslint/type-utils': 7.16.1(eslint@9.12.0)(typescript@5.6.2) + '@typescript-eslint/utils': 7.16.1(eslint@9.12.0)(typescript@5.6.2) + '@typescript-eslint/visitor-keys': 7.16.1 + eslint: 9.12.0 + graphemer: 1.4.0 + ignore: 5.3.1 + natural-compare: 1.4.0 + ts-api-utils: 1.3.0(typescript@5.6.2) + optionalDependencies: + typescript: 5.6.2 + transitivePeerDependencies: + - supports-color + + '@typescript-eslint/parser@7.18.0(eslint@9.12.0)(typescript@5.6.2)': + dependencies: + '@typescript-eslint/scope-manager': 7.18.0 + '@typescript-eslint/types': 7.18.0 + '@typescript-eslint/typescript-estree': 7.18.0(typescript@5.6.2) + '@typescript-eslint/visitor-keys': 7.18.0 + debug: 4.3.4 + eslint: 9.12.0 + optionalDependencies: + typescript: 5.6.2 + transitivePeerDependencies: + - supports-color + + '@typescript-eslint/scope-manager@7.16.1': + dependencies: + '@typescript-eslint/types': 7.16.1 + '@typescript-eslint/visitor-keys': 7.16.1 + + '@typescript-eslint/scope-manager@7.18.0': + dependencies: + '@typescript-eslint/types': 7.18.0 + '@typescript-eslint/visitor-keys': 7.18.0 + + '@typescript-eslint/scope-manager@8.8.0': + dependencies: + '@typescript-eslint/types': 8.8.0 + '@typescript-eslint/visitor-keys': 8.8.0 + + '@typescript-eslint/type-utils@7.16.1(eslint@9.12.0)(typescript@5.6.2)': dependencies: - '@typescript-eslint/types': 6.21.0 - '@typescript-eslint/visitor-keys': 6.21.0 + '@typescript-eslint/typescript-estree': 7.16.1(typescript@5.6.2) + '@typescript-eslint/utils': 7.16.1(eslint@9.12.0)(typescript@5.6.2) + debug: 4.3.4 + eslint: 9.12.0 + ts-api-utils: 1.3.0(typescript@5.6.2) + optionalDependencies: + typescript: 5.6.2 + transitivePeerDependencies: + - supports-color + + '@typescript-eslint/types@7.16.1': {} + + '@typescript-eslint/types@7.18.0': {} - '@typescript-eslint/types@6.21.0': {} + '@typescript-eslint/types@8.8.0': {} - '@typescript-eslint/typescript-estree@6.21.0(typescript@5.4.5)': + '@typescript-eslint/typescript-estree@7.16.1(typescript@5.6.2)': dependencies: - '@typescript-eslint/types': 6.21.0 - '@typescript-eslint/visitor-keys': 6.21.0 - debug: 4.3.4(supports-color@8.1.1) + '@typescript-eslint/types': 7.16.1 + '@typescript-eslint/visitor-keys': 7.16.1 + debug: 4.3.4 globby: 11.1.0 is-glob: 4.0.3 - minimatch: 9.0.3 - semver: 7.6.0 - ts-api-utils: 1.3.0(typescript@5.4.5) - typescript: 5.4.5 + minimatch: 9.0.4 + semver: 7.6.3 + ts-api-utils: 1.3.0(typescript@5.6.2) + optionalDependencies: + typescript: 5.6.2 transitivePeerDependencies: - supports-color - '@typescript-eslint/utils@6.21.0(eslint@8.57.0)(typescript@5.4.5)': + '@typescript-eslint/typescript-estree@7.18.0(typescript@5.6.2)': dependencies: - '@eslint-community/eslint-utils': 4.4.0(eslint@8.57.0) - '@types/json-schema': 7.0.15 - '@types/semver': 7.5.8 - '@typescript-eslint/scope-manager': 6.21.0 - '@typescript-eslint/types': 6.21.0 - '@typescript-eslint/typescript-estree': 6.21.0(typescript@5.4.5) - eslint: 8.57.0 - semver: 7.6.0 + '@typescript-eslint/types': 7.18.0 + '@typescript-eslint/visitor-keys': 7.18.0 + debug: 4.3.4 + globby: 11.1.0 + is-glob: 4.0.3 + minimatch: 9.0.4 + semver: 7.6.3 + ts-api-utils: 1.3.0(typescript@5.6.2) + optionalDependencies: + typescript: 5.6.2 + transitivePeerDependencies: + - supports-color + + '@typescript-eslint/typescript-estree@8.8.0(typescript@5.6.2)': + dependencies: + '@typescript-eslint/types': 8.8.0 + '@typescript-eslint/visitor-keys': 8.8.0 + debug: 4.3.4 + fast-glob: 3.3.2 + is-glob: 4.0.3 + minimatch: 9.0.4 + semver: 7.6.3 + ts-api-utils: 1.3.0(typescript@5.6.2) + optionalDependencies: + typescript: 5.6.2 + transitivePeerDependencies: + - supports-color + + '@typescript-eslint/utils@7.16.1(eslint@9.12.0)(typescript@5.6.2)': + dependencies: + '@eslint-community/eslint-utils': 4.4.0(eslint@9.12.0) + '@typescript-eslint/scope-manager': 7.16.1 + '@typescript-eslint/types': 7.16.1 + '@typescript-eslint/typescript-estree': 7.16.1(typescript@5.6.2) + eslint: 9.12.0 + transitivePeerDependencies: + - supports-color + - typescript + + '@typescript-eslint/utils@7.18.0(eslint@9.12.0)(typescript@5.6.2)': + dependencies: + '@eslint-community/eslint-utils': 4.4.0(eslint@9.12.0) + '@typescript-eslint/scope-manager': 7.18.0 + '@typescript-eslint/types': 7.18.0 + '@typescript-eslint/typescript-estree': 7.18.0(typescript@5.6.2) + eslint: 9.12.0 + transitivePeerDependencies: + - supports-color + - typescript + + '@typescript-eslint/utils@8.8.0(eslint@9.12.0)(typescript@5.6.2)': + dependencies: + '@eslint-community/eslint-utils': 4.4.0(eslint@9.12.0) + '@typescript-eslint/scope-manager': 8.8.0 + '@typescript-eslint/types': 8.8.0 + '@typescript-eslint/typescript-estree': 8.8.0(typescript@5.6.2) + eslint: 9.12.0 transitivePeerDependencies: - supports-color - typescript - '@typescript-eslint/visitor-keys@6.21.0': + '@typescript-eslint/visitor-keys@7.16.1': + dependencies: + '@typescript-eslint/types': 7.16.1 + eslint-visitor-keys: 3.4.3 + + '@typescript-eslint/visitor-keys@7.18.0': + dependencies: + '@typescript-eslint/types': 7.18.0 + eslint-visitor-keys: 3.4.3 + + '@typescript-eslint/visitor-keys@8.8.0': dependencies: - '@typescript-eslint/types': 6.21.0 + '@typescript-eslint/types': 8.8.0 eslint-visitor-keys: 3.4.3 '@ungap/structured-clone@1.2.0': {} @@ -5092,15 +6925,25 @@ snapshots: abbrev@2.0.0: {} + abort-controller@3.0.0: + dependencies: + event-target-shim: 5.0.1 + acorn-jsx@5.3.2(acorn@8.11.3): dependencies: acorn: 8.11.3 + acorn-jsx@5.3.2(acorn@8.12.1): + dependencies: + acorn: 8.12.1 + acorn@8.11.3: {} + acorn@8.12.1: {} + agent-base@6.0.2: dependencies: - debug: 4.3.4(supports-color@8.1.1) + debug: 4.3.4 transitivePeerDependencies: - supports-color @@ -5124,14 +6967,12 @@ snapshots: dependencies: string-width: 4.2.3 - ansi-colors@4.1.1: {} + ansi-colors@4.1.3: {} ansi-regex@5.0.1: {} ansi-regex@6.0.1: {} - ansi-sequence-parser@1.1.1: {} - ansi-styles@3.2.1: dependencies: color-convert: 1.9.3 @@ -5164,6 +7005,10 @@ snapshots: argparse@2.0.1: {} + aria-query@5.1.3: + dependencies: + deep-equal: 2.2.3 + array-back@3.1.0: {} array-back@4.0.2: {} @@ -5190,6 +7035,15 @@ snapshots: array-union@2.1.0: {} + array.prototype.findlast@1.2.5: + dependencies: + call-bind: 1.0.7 + define-properties: 1.2.1 + es-abstract: 1.23.3 + es-errors: 1.3.0 + es-object-atoms: 1.0.0 + es-shim-unscopables: 1.0.2 + array.prototype.findlastindex@1.2.5: dependencies: call-bind: 1.0.7 @@ -5213,6 +7067,14 @@ snapshots: es-abstract: 1.23.3 es-shim-unscopables: 1.0.2 + array.prototype.tosorted@1.1.4: + dependencies: + call-bind: 1.0.7 + define-properties: 1.2.1 + es-abstract: 1.23.3 + es-errors: 1.3.0 + es-shim-unscopables: 1.0.2 + arraybuffer.prototype.slice@1.0.3: dependencies: array-buffer-byte-length: 1.0.1 @@ -5228,7 +7090,9 @@ snapshots: ast-metadata-inferer@0.8.0: dependencies: - '@mdn/browser-compat-data': 5.5.24 + '@mdn/browser-compat-data': 5.6.4 + + ast-types-flow@0.0.8: {} async@2.6.4: dependencies: @@ -5238,32 +7102,62 @@ snapshots: dependencies: possible-typed-array-names: 1.0.0 - babel-plugin-polyfill-corejs2@0.4.11(@babel/core@7.24.5): + axe-core@4.10.0: {} + + axobject-query@4.1.0: {} + + babel-plugin-polyfill-corejs2@0.4.11(@babel/core@7.25.2): + dependencies: + '@babel/compat-data': 7.25.7 + '@babel/core': 7.25.2 + '@babel/helper-define-polyfill-provider': 0.6.2(@babel/core@7.25.2) + semver: 6.3.1 + transitivePeerDependencies: + - supports-color + + babel-plugin-polyfill-corejs2@0.4.11(@babel/core@7.25.7): dependencies: - '@babel/compat-data': 7.24.4 - '@babel/core': 7.24.5 - '@babel/helper-define-polyfill-provider': 0.6.2(@babel/core@7.24.5) + '@babel/compat-data': 7.25.7 + '@babel/core': 7.25.7 + '@babel/helper-define-polyfill-provider': 0.6.2(@babel/core@7.25.7) semver: 6.3.1 transitivePeerDependencies: - supports-color - babel-plugin-polyfill-corejs3@0.10.4(@babel/core@7.24.5): + babel-plugin-polyfill-corejs3@0.10.6(@babel/core@7.25.2): + dependencies: + '@babel/core': 7.25.2 + '@babel/helper-define-polyfill-provider': 0.6.2(@babel/core@7.25.2) + core-js-compat: 3.38.1 + transitivePeerDependencies: + - supports-color + + babel-plugin-polyfill-corejs3@0.10.6(@babel/core@7.25.7): + dependencies: + '@babel/core': 7.25.7 + '@babel/helper-define-polyfill-provider': 0.6.2(@babel/core@7.25.7) + core-js-compat: 3.38.1 + transitivePeerDependencies: + - supports-color + + babel-plugin-polyfill-regenerator@0.6.2(@babel/core@7.25.2): dependencies: - '@babel/core': 7.24.5 - '@babel/helper-define-polyfill-provider': 0.6.2(@babel/core@7.24.5) - core-js-compat: 3.37.0 + '@babel/core': 7.25.2 + '@babel/helper-define-polyfill-provider': 0.6.2(@babel/core@7.25.2) transitivePeerDependencies: - supports-color - babel-plugin-polyfill-regenerator@0.6.2(@babel/core@7.24.5): + babel-plugin-polyfill-regenerator@0.6.2(@babel/core@7.25.7): dependencies: - '@babel/core': 7.24.5 - '@babel/helper-define-polyfill-provider': 0.6.2(@babel/core@7.24.5) + '@babel/core': 7.25.7 + '@babel/helper-define-polyfill-provider': 0.6.2(@babel/core@7.25.7) transitivePeerDependencies: - supports-color balanced-match@1.0.2: {} + base64-js@1.5.1: {} + basic-auth@2.0.1: dependencies: safe-buffer: 5.1.2 @@ -5305,15 +7199,20 @@ snapshots: browser-stdout@1.3.1: {} - browserslist@4.23.0: + browserslist@4.24.0: dependencies: - caniuse-lite: 1.0.30001615 - electron-to-chromium: 1.4.756 - node-releases: 2.0.14 - update-browserslist-db: 1.0.14(browserslist@4.23.0) + caniuse-lite: 1.0.30001667 + electron-to-chromium: 1.5.32 + node-releases: 2.0.18 + update-browserslist-db: 1.1.1(browserslist@4.24.0) buffer-from@1.1.2: {} + buffer@6.0.3: + dependencies: + base64-js: 1.5.1 + ieee754: 1.2.1 + builtin-modules@3.3.0: {} builtins@5.1.0: @@ -5324,7 +7223,9 @@ snapshots: dependencies: run-applescript: 7.0.0 - c8@9.1.0: + bytes@3.1.2: {} + + c8@10.1.2: dependencies: '@bcoe/v8-coverage': 0.2.3 '@istanbuljs/schema': 0.1.3 @@ -5333,7 +7234,7 @@ snapshots: istanbul-lib-coverage: 3.2.2 istanbul-lib-report: 3.0.1 istanbul-reports: 3.1.7 - test-exclude: 6.0.0 + test-exclude: 7.0.1 v8-to-istanbul: 9.2.0 yargs: 17.7.2 yargs-parser: 21.1.1 @@ -5404,12 +7305,14 @@ snapshots: camelcase@7.0.1: {} - caniuse-lite@1.0.30001615: {} + caniuse-lite@1.0.30001667: {} - chai@5.1.0: + ccount@2.0.1: {} + + chai@5.1.1: dependencies: assertion-error: 2.0.1 - check-error: 2.0.0 + check-error: 2.1.1 deep-eql: 5.0.1 loupe: 3.1.0 pathval: 2.0.0 @@ -5431,13 +7334,13 @@ snapshots: chalk@5.3.0: {} - character-entities-legacy@1.1.4: {} + character-entities-html4@2.1.0: {} - character-entities@1.2.4: {} + character-entities-legacy@3.0.0: {} - character-reference-invalid@1.1.4: {} + character-entities@2.0.2: {} - check-error@2.0.0: {} + check-error@2.1.1: {} chokidar@3.5.3: dependencies: @@ -5495,6 +7398,8 @@ snapshots: colorette@1.4.0: {} + comma-separated-tokens@2.0.3: {} + command-line-args@5.2.1: dependencies: array-back: 3.1.0 @@ -5557,7 +7462,11 @@ snapshots: core-js-compat@3.37.0: dependencies: - browserslist: 4.23.0 + browserslist: 4.24.0 + + core-js-compat@3.38.1: + dependencies: + browserslist: 4.24.0 correct-license-metadata@1.4.0: dependencies: @@ -5612,6 +7521,8 @@ snapshots: es5-ext: 0.10.64 type: 2.7.2 + damerau-levenshtein@1.0.8: {} + data-view-buffer@1.0.1: dependencies: call-bind: 1.0.7 @@ -5634,19 +7545,49 @@ snapshots: dependencies: ms: 2.1.3 - debug@4.3.4(supports-color@8.1.1): + debug@4.3.4: dependencies: ms: 2.1.2 + + debug@4.3.7(supports-color@8.1.1): + dependencies: + ms: 2.1.3 + optionalDependencies: supports-color: 8.1.1 decamelize@4.0.0: {} + decode-named-character-reference@1.0.2: + dependencies: + character-entities: 2.0.2 + decompress-response@6.0.0: dependencies: mimic-response: 3.1.0 deep-eql@5.0.1: {} + deep-equal@2.2.3: + dependencies: + array-buffer-byte-length: 1.0.1 + call-bind: 1.0.7 + es-get-iterator: 1.1.3 + get-intrinsic: 1.2.4 + is-arguments: 1.1.1 + is-array-buffer: 3.0.4 + is-date-object: 1.0.5 + is-regex: 1.1.4 + is-shared-array-buffer: 1.0.3 + isarray: 2.0.5 + object-is: 1.1.6 + object-keys: 1.1.1 + object.assign: 4.1.5 + regexp.prototype.flags: 1.5.2 + side-channel: 1.0.6 + which-boxed-primitive: 1.0.2 + which-collection: 1.0.2 + which-typed-array: 1.1.15 + deep-extend@0.6.0: {} deep-is@0.1.4: {} @@ -5678,7 +7619,13 @@ snapshots: delegates@1.0.0: {} - diff@5.0.0: {} + dequal@2.0.3: {} + + devlop@1.1.0: + dependencies: + dequal: 2.0.3 + + diff@5.2.0: {} dir-glob@3.0.1: dependencies: @@ -5690,10 +7637,6 @@ snapshots: dependencies: esutils: 2.0.3 - doctrine@3.0.0: - dependencies: - esutils: 2.0.3 - dom-serializer@1.4.1: dependencies: domelementtype: 2.3.0 @@ -5736,7 +7679,7 @@ snapshots: eastasianwidth@0.2.0: {} - electron-to-chromium@1.4.756: {} + electron-to-chromium@1.5.32: {} emoji-regex@8.0.0: {} @@ -5747,6 +7690,11 @@ snapshots: iconv-lite: 0.6.3 optional: true + enhanced-resolve@5.17.1: + dependencies: + graceful-fs: 4.2.11 + tapable: 2.2.1 + entities@2.2.0: {} entities@4.5.0: {} @@ -5814,6 +7762,60 @@ snapshots: es-errors@1.3.0: {} + es-file-traverse@1.2.0(@babel/core@7.25.7)(@typescript-eslint/parser@7.18.0(eslint@9.12.0)(typescript@5.6.2))(eslint-plugin-import@2.31.0(@typescript-eslint/parser@7.18.0(eslint@9.12.0)(typescript@5.6.2))(eslint@9.12.0))(eslint@9.12.0): + dependencies: + '@babel/eslint-parser': 7.25.7(@babel/core@7.25.7)(eslint@9.12.0) + command-line-basics: 2.0.1 + eslint-import-resolver-typescript: 3.6.3(@typescript-eslint/parser@7.18.0(eslint@9.12.0)(typescript@5.6.2))(eslint-plugin-import@2.31.0(@typescript-eslint/parser@7.18.0(eslint@9.12.0)(typescript@5.6.2))(eslint@9.12.0))(eslint@9.12.0) + esquery: 1.5.0 + file-fetch: 2.0.0 + find-package-json: 1.2.0 + globby: 14.0.2 + htmlparser2: 9.1.0 + is-builtin-module: 3.2.1 + resolve: 1.22.8 + resolve.exports: 2.0.2 + transitivePeerDependencies: + - '@babel/core' + - '@typescript-eslint/parser' + - eslint + - eslint-import-resolver-node + - eslint-import-resolver-webpack + - eslint-plugin-import + - eslint-plugin-import-x + - supports-color + + es-get-iterator@1.1.3: + dependencies: + call-bind: 1.0.7 + get-intrinsic: 1.2.4 + has-symbols: 1.0.3 + is-arguments: 1.1.1 + is-map: 2.0.3 + is-set: 2.0.3 + is-string: 1.0.7 + isarray: 2.0.5 + stop-iteration-iterator: 1.0.0 + + es-iterator-helpers@1.0.19: + dependencies: + call-bind: 1.0.7 + define-properties: 1.2.1 + es-abstract: 1.23.3 + es-errors: 1.3.0 + es-set-tostringtag: 2.0.3 + function-bind: 1.1.2 + get-intrinsic: 1.2.4 + globalthis: 1.0.4 + has-property-descriptors: 1.0.2 + has-proto: 1.0.3 + has-symbols: 1.0.3 + internal-slot: 1.0.7 + iterator.prototype: 1.1.2 + safe-array-concat: 1.1.2 + + es-module-lexer@1.5.4: {} + es-object-atoms@1.0.0: dependencies: es-errors: 1.3.0 @@ -5859,196 +7861,336 @@ snapshots: escalade@3.1.2: {} + escalade@3.2.0: {} + escape-goat@4.0.0: {} escape-string-regexp@1.0.5: {} escape-string-regexp@4.0.0: {} - eslint-compat-utils@0.5.0(eslint@8.57.0): - dependencies: - eslint: 8.57.0 - semver: 7.6.0 - - eslint-config-ash-nazg@35.4.0(@brettz9/eslint-plugin@1.0.4)(@stylistic/eslint-plugin@1.8.0)(eslint-config-standard@17.1.0)(eslint-plugin-array-func@4.0.0)(eslint-plugin-compat@4.2.0)(eslint-plugin-eslint-comments@3.2.0)(eslint-plugin-html@7.1.0)(eslint-plugin-import@2.29.1)(eslint-plugin-jsdoc@48.2.3)(eslint-plugin-markdown@3.0.1)(eslint-plugin-n@16.6.2)(eslint-plugin-no-unsanitized@4.0.2)(eslint-plugin-no-use-extend-native@0.5.0)(eslint-plugin-promise@6.1.1)(eslint-plugin-sonarjs@0.23.0)(eslint-plugin-unicorn@50.0.1)(eslint@8.57.0): - dependencies: - '@brettz9/eslint-plugin': 1.0.4(eslint@8.57.0) - '@stylistic/eslint-plugin': 1.8.0(eslint@8.57.0)(typescript@5.4.5) - eslint: 8.57.0 - eslint-config-standard: 17.1.0(eslint-plugin-import@2.29.1)(eslint-plugin-n@16.6.2)(eslint-plugin-promise@6.1.1)(eslint@8.57.0) - eslint-plugin-array-func: 4.0.0(eslint@8.57.0) - eslint-plugin-compat: 4.2.0(eslint@8.57.0) - eslint-plugin-eslint-comments: 3.2.0(eslint@8.57.0) - eslint-plugin-html: 7.1.0 - eslint-plugin-import: 2.29.1(eslint@8.57.0) - eslint-plugin-jsdoc: 48.2.3(eslint@8.57.0) - eslint-plugin-markdown: 3.0.1(eslint@8.57.0) - eslint-plugin-n: 16.6.2(eslint@8.57.0) - eslint-plugin-no-unsanitized: 4.0.2(eslint@8.57.0) - eslint-plugin-no-use-extend-native: 0.5.0 - eslint-plugin-promise: 6.1.1(eslint@8.57.0) - eslint-plugin-sonarjs: 0.23.0(eslint@8.57.0) - eslint-plugin-unicorn: 50.0.1(eslint@8.57.0) - semver: 7.6.0 - - eslint-config-standard@17.1.0(eslint-plugin-import@2.29.1)(eslint-plugin-n@16.6.2)(eslint-plugin-promise@6.1.1)(eslint@8.57.0): - dependencies: - eslint: 8.57.0 - eslint-plugin-import: 2.29.1(eslint@8.57.0) - eslint-plugin-n: 16.6.2(eslint@8.57.0) - eslint-plugin-promise: 6.1.1(eslint@8.57.0) + escape-string-regexp@5.0.0: {} + + eslint-compat-utils@0.5.0(eslint@9.12.0): + dependencies: + eslint: 9.12.0 + semver: 7.6.3 + + eslint-config-ash-nazg@36.19.0(@babel/core@7.25.7)(@typescript-eslint/parser@7.18.0(eslint@9.12.0)(typescript@5.6.2))(eslint@9.12.0)(typescript@5.6.2): + dependencies: + '@babel/eslint-parser': 7.25.7(@babel/core@7.25.7)(eslint@9.12.0) + '@babel/eslint-plugin': 7.25.7(@babel/eslint-parser@7.25.7(@babel/core@7.25.7)(eslint@9.12.0))(eslint@9.12.0) + '@babel/plugin-syntax-import-attributes': 7.25.7(@babel/core@7.25.7) + '@brettz9/eslint-plugin': 3.0.0(eslint@9.12.0) + '@eslint-community/eslint-plugin-eslint-comments': 4.4.0(eslint@9.12.0) + '@eslint/eslintrc': 3.1.0 + '@eslint/js': 9.12.0 + '@eslint/markdown': 6.2.0 + '@fintechstudios/eslint-plugin-chai-as-promised': 3.1.0 + '@stylistic/eslint-plugin': 2.9.0(eslint@9.12.0)(typescript@5.6.2) + browserslist: 4.24.0 + es-file-traverse: 1.2.0(@babel/core@7.25.7)(@typescript-eslint/parser@7.18.0(eslint@9.12.0)(typescript@5.6.2))(eslint-plugin-import@2.31.0(@typescript-eslint/parser@7.18.0(eslint@9.12.0)(typescript@5.6.2))(eslint@9.12.0))(eslint@9.12.0) + eslint: 9.12.0 + eslint-plugin-array-func: 5.0.2(eslint@9.12.0) + eslint-plugin-chai-expect: 3.1.0(eslint@9.12.0) + eslint-plugin-chai-expect-keywords: 3.1.0 + eslint-plugin-chai-friendly: 1.0.1(eslint@9.12.0) + eslint-plugin-compat: 6.0.1(eslint@9.12.0) + eslint-plugin-cypress: 3.5.0(eslint@9.12.0) + eslint-plugin-escompat: 3.11.3(eslint@9.12.0) + eslint-plugin-html: 8.1.2 + eslint-plugin-import: 2.31.0(@typescript-eslint/parser@7.18.0(eslint@9.12.0)(typescript@5.6.2))(eslint@9.12.0) + eslint-plugin-jsdoc: 50.3.1(eslint@9.12.0) + eslint-plugin-mocha: 10.5.0(eslint@9.12.0) + eslint-plugin-mocha-cleanup: 1.11.3(eslint@9.12.0) + eslint-plugin-n: 17.10.3(eslint@9.12.0) + eslint-plugin-no-unsanitized: 4.1.2(eslint@9.12.0) + eslint-plugin-no-use-extend-native: 0.7.2(eslint@9.12.0) + eslint-plugin-promise: 7.1.0(eslint@9.12.0) + eslint-plugin-sonarjs: 2.0.3(@typescript-eslint/parser@7.18.0(eslint@9.12.0)(typescript@5.6.2))(eslint@9.12.0) + eslint-plugin-unicorn: 55.0.0(eslint@9.12.0) + globals: 15.10.0 + semver: 7.6.3 + transitivePeerDependencies: + - '@babel/core' + - '@typescript-eslint/parser' + - eslint-import-resolver-node + - eslint-import-resolver-typescript + - eslint-import-resolver-webpack + - eslint-plugin-import-x + - supports-color + - typescript eslint-import-resolver-node@0.3.9: dependencies: debug: 3.2.7 - is-core-module: 2.13.1 + is-core-module: 2.15.1 resolve: 1.22.8 transitivePeerDependencies: - supports-color - eslint-module-utils@2.8.1(eslint-import-resolver-node@0.3.9)(eslint@8.57.0): + eslint-import-resolver-typescript@3.6.3(@typescript-eslint/parser@7.18.0(eslint@9.12.0)(typescript@5.6.2))(eslint-plugin-import@2.31.0(@typescript-eslint/parser@7.18.0(eslint@9.12.0)(typescript@5.6.2))(eslint@9.12.0))(eslint@9.12.0): + dependencies: + '@nolyfill/is-core-module': 1.0.39 + debug: 4.3.7(supports-color@8.1.1) + enhanced-resolve: 5.17.1 + eslint: 9.12.0 + eslint-module-utils: 2.8.1(@typescript-eslint/parser@7.18.0(eslint@9.12.0)(typescript@5.6.2))(eslint-import-resolver-typescript@3.6.3(@typescript-eslint/parser@7.18.0(eslint@9.12.0)(typescript@5.6.2))(eslint-plugin-import@2.31.0(@typescript-eslint/parser@7.18.0(eslint@9.12.0)(typescript@5.6.2))(eslint@9.12.0))(eslint@9.12.0))(eslint@9.12.0) + fast-glob: 3.3.2 + get-tsconfig: 4.8.1 + is-bun-module: 1.2.1 + is-glob: 4.0.3 + optionalDependencies: + eslint-plugin-import: 2.31.0(@typescript-eslint/parser@7.18.0(eslint@9.12.0)(typescript@5.6.2))(eslint@9.12.0) + transitivePeerDependencies: + - '@typescript-eslint/parser' + - eslint-import-resolver-node + - eslint-import-resolver-webpack + - supports-color + + eslint-module-utils@2.12.0(@typescript-eslint/parser@7.18.0(eslint@9.12.0)(typescript@5.6.2))(eslint-import-resolver-node@0.3.9)(eslint@9.12.0): dependencies: debug: 3.2.7 - eslint: 8.57.0 + optionalDependencies: + '@typescript-eslint/parser': 7.18.0(eslint@9.12.0)(typescript@5.6.2) + eslint: 9.12.0 eslint-import-resolver-node: 0.3.9 transitivePeerDependencies: - supports-color - eslint-plugin-array-func@4.0.0(eslint@8.57.0): + eslint-module-utils@2.8.1(@typescript-eslint/parser@7.18.0(eslint@9.12.0)(typescript@5.6.2))(eslint-import-resolver-typescript@3.6.3(@typescript-eslint/parser@7.18.0(eslint@9.12.0)(typescript@5.6.2))(eslint-plugin-import@2.31.0(@typescript-eslint/parser@7.18.0(eslint@9.12.0)(typescript@5.6.2))(eslint@9.12.0))(eslint@9.12.0))(eslint@9.12.0): + dependencies: + debug: 3.2.7 + optionalDependencies: + '@typescript-eslint/parser': 7.18.0(eslint@9.12.0)(typescript@5.6.2) + eslint: 9.12.0 + eslint-import-resolver-typescript: 3.6.3(@typescript-eslint/parser@7.18.0(eslint@9.12.0)(typescript@5.6.2))(eslint-plugin-import@2.31.0(@typescript-eslint/parser@7.18.0(eslint@9.12.0)(typescript@5.6.2))(eslint@9.12.0))(eslint@9.12.0) + transitivePeerDependencies: + - supports-color + + eslint-plugin-array-func@5.0.2(eslint@9.12.0): + dependencies: + eslint: 9.12.0 + + eslint-plugin-chai-expect-keywords@3.1.0: dependencies: - eslint: 8.57.0 + globals: 15.10.0 - eslint-plugin-chai-expect@3.0.0(eslint@8.57.0): + eslint-plugin-chai-expect@3.1.0(eslint@9.12.0): dependencies: - eslint: 8.57.0 + eslint: 9.12.0 - eslint-plugin-chai-friendly@0.7.4(eslint@8.57.0): + eslint-plugin-chai-friendly@1.0.1(eslint@9.12.0): dependencies: - eslint: 8.57.0 + eslint: 9.12.0 - eslint-plugin-compat@4.2.0(eslint@8.57.0): + eslint-plugin-compat@6.0.1(eslint@9.12.0): dependencies: - '@mdn/browser-compat-data': 5.5.24 + '@mdn/browser-compat-data': 5.6.4 ast-metadata-inferer: 0.8.0 - browserslist: 4.23.0 - caniuse-lite: 1.0.30001615 - eslint: 8.57.0 + browserslist: 4.24.0 + caniuse-lite: 1.0.30001667 + eslint: 9.12.0 find-up: 5.0.0 + globals: 15.10.0 lodash.memoize: 4.1.2 - semver: 7.6.0 + semver: 7.6.3 + + eslint-plugin-cypress@3.5.0(eslint@9.12.0): + dependencies: + eslint: 9.12.0 + globals: 13.24.0 - eslint-plugin-es-x@7.6.0(eslint@8.57.0): + eslint-plugin-es-x@7.6.0(eslint@9.12.0): dependencies: - '@eslint-community/eslint-utils': 4.4.0(eslint@8.57.0) + '@eslint-community/eslint-utils': 4.4.0(eslint@9.12.0) '@eslint-community/regexpp': 4.10.0 - eslint: 8.57.0 - eslint-compat-utils: 0.5.0(eslint@8.57.0) + eslint: 9.12.0 + eslint-compat-utils: 0.5.0(eslint@9.12.0) - eslint-plugin-eslint-comments@3.2.0(eslint@8.57.0): + eslint-plugin-escompat@3.11.3(eslint@9.12.0): dependencies: - escape-string-regexp: 1.0.5 - eslint: 8.57.0 - ignore: 5.3.1 + browserslist: 4.24.0 + eslint: 9.12.0 - eslint-plugin-html@7.1.0: + eslint-plugin-html@8.1.2: dependencies: - htmlparser2: 8.0.2 + htmlparser2: 9.1.0 - eslint-plugin-import@2.29.1(eslint@8.57.0): + eslint-plugin-import@2.31.0(@typescript-eslint/parser@7.18.0(eslint@9.12.0)(typescript@5.6.2))(eslint@9.12.0): dependencies: + '@rtsao/scc': 1.1.0 array-includes: 3.1.8 array.prototype.findlastindex: 1.2.5 array.prototype.flat: 1.3.2 array.prototype.flatmap: 1.3.2 debug: 3.2.7 doctrine: 2.1.0 - eslint: 8.57.0 + eslint: 9.12.0 eslint-import-resolver-node: 0.3.9 - eslint-module-utils: 2.8.1(eslint-import-resolver-node@0.3.9)(eslint@8.57.0) + eslint-module-utils: 2.12.0(@typescript-eslint/parser@7.18.0(eslint@9.12.0)(typescript@5.6.2))(eslint-import-resolver-node@0.3.9)(eslint@9.12.0) hasown: 2.0.2 - is-core-module: 2.13.1 + is-core-module: 2.15.1 is-glob: 4.0.3 minimatch: 3.1.2 object.fromentries: 2.0.8 object.groupby: 1.0.3 object.values: 1.2.0 semver: 6.3.1 + string.prototype.trimend: 1.0.8 tsconfig-paths: 3.15.0 + optionalDependencies: + '@typescript-eslint/parser': 7.18.0(eslint@9.12.0)(typescript@5.6.2) transitivePeerDependencies: - eslint-import-resolver-typescript - eslint-import-resolver-webpack - supports-color - eslint-plugin-jsdoc@48.2.3(eslint@8.57.0): + eslint-plugin-jsdoc@50.3.1(eslint@9.12.0): dependencies: - '@es-joy/jsdoccomment': 0.42.0 + '@es-joy/jsdoccomment': 0.48.0 are-docs-informative: 0.0.2 comment-parser: 1.4.1 - debug: 4.3.4(supports-color@8.1.1) + debug: 4.3.7(supports-color@8.1.1) escape-string-regexp: 4.0.0 - eslint: 8.57.0 - esquery: 1.5.0 - is-builtin-module: 3.2.1 - semver: 7.6.0 + eslint: 9.12.0 + espree: 10.2.0 + esquery: 1.6.0 + parse-imports: 2.2.1 + semver: 7.6.3 spdx-expression-parse: 4.0.0 + synckit: 0.9.2 transitivePeerDependencies: - supports-color - eslint-plugin-markdown@3.0.1(eslint@8.57.0): + eslint-plugin-jsx-a11y@6.10.0(eslint@9.12.0): dependencies: - eslint: 8.57.0 - mdast-util-from-markdown: 0.8.5 - transitivePeerDependencies: - - supports-color + aria-query: 5.1.3 + array-includes: 3.1.8 + array.prototype.flatmap: 1.3.2 + ast-types-flow: 0.0.8 + axe-core: 4.10.0 + axobject-query: 4.1.0 + damerau-levenshtein: 1.0.8 + emoji-regex: 9.2.2 + es-iterator-helpers: 1.0.19 + eslint: 9.12.0 + hasown: 2.0.2 + jsx-ast-utils: 3.3.5 + language-tags: 1.0.9 + minimatch: 3.1.2 + object.fromentries: 2.0.8 + safe-regex-test: 1.0.3 + string.prototype.includes: 2.0.0 - eslint-plugin-n@16.6.2(eslint@8.57.0): + eslint-plugin-mocha-cleanup@1.11.3(eslint@9.12.0): dependencies: - '@eslint-community/eslint-utils': 4.4.0(eslint@8.57.0) - builtins: 5.1.0 - eslint: 8.57.0 - eslint-plugin-es-x: 7.6.0(eslint@8.57.0) - get-tsconfig: 4.7.3 + eslint: 9.12.0 + requireindex: 1.2.0 + + eslint-plugin-mocha@10.5.0(eslint@9.12.0): + dependencies: + eslint: 9.12.0 + eslint-utils: 3.0.0(eslint@9.12.0) globals: 13.24.0 + rambda: 7.5.0 + + eslint-plugin-n@17.10.3(eslint@9.12.0): + dependencies: + '@eslint-community/eslint-utils': 4.4.0(eslint@9.12.0) + enhanced-resolve: 5.17.1 + eslint: 9.12.0 + eslint-plugin-es-x: 7.6.0(eslint@9.12.0) + get-tsconfig: 4.7.3 + globals: 15.10.0 ignore: 5.3.1 - is-builtin-module: 3.2.1 - is-core-module: 2.13.1 - minimatch: 3.1.2 - resolve: 1.22.8 - semver: 7.6.0 + minimatch: 9.0.5 + semver: 7.6.3 - eslint-plugin-no-unsanitized@4.0.2(eslint@8.57.0): + eslint-plugin-no-unsanitized@4.1.2(eslint@9.12.0): dependencies: - eslint: 8.57.0 + eslint: 9.12.0 - eslint-plugin-no-use-extend-native@0.5.0: + eslint-plugin-no-use-extend-native@0.7.2(eslint@9.12.0): dependencies: - is-get-set-prop: 1.0.0 - is-js-type: 2.0.0 - is-obj-prop: 1.0.0 - is-proto-prop: 2.0.0 + eslint: 9.12.0 + is-get-set-prop: 2.0.0 + is-js-type: 3.0.0 + is-obj-prop: 2.0.0 + is-proto-prop: 3.0.1 - eslint-plugin-promise@6.1.1(eslint@8.57.0): + eslint-plugin-promise@7.1.0(eslint@9.12.0): dependencies: - eslint: 8.57.0 + eslint: 9.12.0 - eslint-plugin-sonarjs@0.23.0(eslint@8.57.0): + eslint-plugin-react-hooks@4.6.2(eslint@9.12.0): dependencies: - eslint: 8.57.0 + eslint: 9.12.0 - eslint-plugin-standard@4.1.0(eslint@8.57.0): + eslint-plugin-react@7.37.1(eslint@9.12.0): dependencies: - eslint: 8.57.0 + array-includes: 3.1.8 + array.prototype.findlast: 1.2.5 + array.prototype.flatmap: 1.3.2 + array.prototype.tosorted: 1.1.4 + doctrine: 2.1.0 + es-iterator-helpers: 1.0.19 + eslint: 9.12.0 + estraverse: 5.3.0 + hasown: 2.0.2 + jsx-ast-utils: 3.3.5 + minimatch: 3.1.2 + object.entries: 1.1.8 + object.fromentries: 2.0.8 + object.values: 1.2.0 + prop-types: 15.8.1 + resolve: 2.0.0-next.5 + semver: 6.3.1 + string.prototype.matchall: 4.0.11 + string.prototype.repeat: 1.0.0 + + eslint-plugin-sonarjs@2.0.3(@typescript-eslint/parser@7.18.0(eslint@9.12.0)(typescript@5.6.2))(eslint@9.12.0): + dependencies: + '@babel/core': 7.25.2 + '@babel/eslint-parser': 7.25.1(@babel/core@7.25.2)(eslint@9.12.0) + '@babel/plugin-proposal-decorators': 7.24.7(@babel/core@7.25.2) + '@babel/preset-env': 7.25.4(@babel/core@7.25.2) + '@babel/preset-flow': 7.24.7(@babel/core@7.25.2) + '@babel/preset-react': 7.24.7(@babel/core@7.25.2) + '@eslint-community/regexpp': 4.11.1 + '@typescript-eslint/eslint-plugin': 7.16.1(@typescript-eslint/parser@7.18.0(eslint@9.12.0)(typescript@5.6.2))(eslint@9.12.0)(typescript@5.6.2) + '@typescript-eslint/utils': 7.18.0(eslint@9.12.0)(typescript@5.6.2) + builtin-modules: 3.3.0 + bytes: 3.1.2 + eslint: 9.12.0 + eslint-plugin-import: 2.31.0(@typescript-eslint/parser@7.18.0(eslint@9.12.0)(typescript@5.6.2))(eslint@9.12.0) + eslint-plugin-jsx-a11y: 6.10.0(eslint@9.12.0) + eslint-plugin-react: 7.37.1(eslint@9.12.0) + eslint-plugin-react-hooks: 4.6.2(eslint@9.12.0) + eslint-scope: 8.0.2 + functional-red-black-tree: 1.0.1 + jsx-ast-utils: 3.3.5 + minimatch: 10.0.1 + scslre: 0.3.0 + semver: 7.6.3 + typescript: 5.6.2 + vue-eslint-parser: 9.4.3(eslint@9.12.0) + transitivePeerDependencies: + - '@typescript-eslint/parser' + - eslint-import-resolver-typescript + - eslint-import-resolver-webpack + - supports-color - eslint-plugin-unicorn@50.0.1(eslint@8.57.0): + eslint-plugin-unicorn@55.0.0(eslint@9.12.0): dependencies: '@babel/helper-validator-identifier': 7.24.5 - '@eslint-community/eslint-utils': 4.4.0(eslint@8.57.0) - '@eslint/eslintrc': 2.1.4 + '@eslint-community/eslint-utils': 4.4.0(eslint@9.12.0) ci-info: 4.0.0 clean-regexp: 1.0.0 core-js-compat: 3.37.0 - eslint: 8.57.0 + eslint: 9.12.0 esquery: 1.5.0 + globals: 15.10.0 indent-string: 4.0.0 is-builtin-module: 3.2.1 jsesc: 3.0.2 @@ -6056,57 +8198,78 @@ snapshots: read-pkg-up: 7.0.1 regexp-tree: 0.1.27 regjsparser: 0.10.0 - semver: 7.6.0 + semver: 7.6.3 strip-indent: 3.0.0 - transitivePeerDependencies: - - supports-color + + eslint-rule-composer@0.3.0: {} + + eslint-scope@5.1.1: + dependencies: + esrecurse: 4.3.0 + estraverse: 4.3.0 eslint-scope@7.2.2: dependencies: esrecurse: 4.3.0 estraverse: 5.3.0 + eslint-scope@8.0.2: + dependencies: + esrecurse: 4.3.0 + estraverse: 5.3.0 + + eslint-scope@8.1.0: + dependencies: + esrecurse: 4.3.0 + estraverse: 5.3.0 + + eslint-utils@3.0.0(eslint@9.12.0): + dependencies: + eslint: 9.12.0 + eslint-visitor-keys: 2.1.0 + + eslint-visitor-keys@2.1.0: {} + eslint-visitor-keys@3.4.3: {} - eslint@8.57.0: + eslint-visitor-keys@4.1.0: {} + + eslint@9.12.0: dependencies: - '@eslint-community/eslint-utils': 4.4.0(eslint@8.57.0) - '@eslint-community/regexpp': 4.10.0 - '@eslint/eslintrc': 2.1.4 - '@eslint/js': 8.57.0 - '@humanwhocodes/config-array': 0.11.14 + '@eslint-community/eslint-utils': 4.4.0(eslint@9.12.0) + '@eslint-community/regexpp': 4.11.1 + '@eslint/config-array': 0.18.0 + '@eslint/core': 0.6.0 + '@eslint/eslintrc': 3.1.0 + '@eslint/js': 9.12.0 + '@eslint/plugin-kit': 0.2.0 + '@humanfs/node': 0.16.5 '@humanwhocodes/module-importer': 1.0.1 - '@nodelib/fs.walk': 1.2.8 - '@ungap/structured-clone': 1.2.0 + '@humanwhocodes/retry': 0.3.1 + '@types/estree': 1.0.6 + '@types/json-schema': 7.0.15 ajv: 6.12.6 chalk: 4.1.2 cross-spawn: 7.0.3 - debug: 4.3.4(supports-color@8.1.1) - doctrine: 3.0.0 + debug: 4.3.4 escape-string-regexp: 4.0.0 - eslint-scope: 7.2.2 - eslint-visitor-keys: 3.4.3 - espree: 9.6.1 + eslint-scope: 8.1.0 + eslint-visitor-keys: 4.1.0 + espree: 10.2.0 esquery: 1.5.0 esutils: 2.0.3 fast-deep-equal: 3.1.3 - file-entry-cache: 6.0.1 + file-entry-cache: 8.0.0 find-up: 5.0.0 glob-parent: 6.0.2 - globals: 13.24.0 - graphemer: 1.4.0 ignore: 5.3.1 imurmurhash: 0.1.4 is-glob: 4.0.3 - is-path-inside: 3.0.3 - js-yaml: 4.1.0 json-stable-stringify-without-jsonify: 1.0.1 - levn: 0.4.1 lodash.merge: 4.6.2 minimatch: 3.1.2 natural-compare: 1.4.0 optionator: 0.9.4 - strip-ansi: 6.0.1 text-table: 0.2.0 transitivePeerDependencies: - supports-color @@ -6123,6 +8286,12 @@ snapshots: event-emitter: 0.3.5 type: 2.7.2 + espree@10.2.0: + dependencies: + acorn: 8.12.1 + acorn-jsx: 5.3.2(acorn@8.12.1) + eslint-visitor-keys: 4.1.0 + espree@9.6.1: dependencies: acorn: 8.11.3 @@ -6135,10 +8304,16 @@ snapshots: dependencies: estraverse: 5.3.0 + esquery@1.6.0: + dependencies: + estraverse: 5.3.0 + esrecurse@4.3.0: dependencies: estraverse: 5.3.0 + estraverse@4.3.0: {} + estraverse@5.3.0: {} estree-walker@2.0.2: {} @@ -6150,8 +8325,12 @@ snapshots: d: 1.0.2 es5-ext: 0.10.64 + event-target-shim@5.0.1: {} + eventemitter3@4.0.7: {} + events@3.3.0: {} + exponential-backoff@3.1.1: {} ext@1.7.0: @@ -6176,9 +8355,15 @@ snapshots: dependencies: reusify: 1.0.4 - file-entry-cache@6.0.1: + file-entry-cache@8.0.0: dependencies: - flat-cache: 3.2.0 + flat-cache: 4.0.1 + + file-fetch@2.0.0: + dependencies: + mime-types: 2.1.35 + readable-stream: 4.5.2 + stream-chunks: 1.0.0 file-type@18.7.0: dependencies: @@ -6190,6 +8375,8 @@ snapshots: dependencies: to-regex-range: 5.0.1 + find-package-json@1.2.0: {} + find-replace@3.0.0: dependencies: array-back: 3.1.0 @@ -6204,11 +8391,10 @@ snapshots: locate-path: 6.0.0 path-exists: 4.0.0 - flat-cache@3.2.0: + flat-cache@4.0.1: dependencies: flatted: 3.3.1 keyv: 4.5.4 - rimraf: 3.0.2 flat@5.0.2: {} @@ -6249,6 +8435,8 @@ snapshots: es-abstract: 1.23.3 functions-have-names: 1.2.3 + functional-red-black-tree@1.0.1: {} + functions-have-names@1.2.3: {} gauge@4.0.4: @@ -6289,7 +8477,7 @@ snapshots: get-package-type@0.1.0: {} - get-set-props@0.1.0: {} + get-set-props@0.2.0: {} get-stdin@9.0.0: {} @@ -6305,6 +8493,10 @@ snapshots: dependencies: resolve-pkg-maps: 1.0.0 + get-tsconfig@4.8.1: + dependencies: + resolve-pkg-maps: 1.0.0 + glob-parent@5.1.2: dependencies: is-glob: 4.0.3 @@ -6321,6 +8513,15 @@ snapshots: minipass: 7.0.4 path-scurry: 1.10.2 + glob@10.4.5: + dependencies: + foreground-child: 3.1.1 + jackspeak: 3.4.3 + minimatch: 9.0.4 + minipass: 7.1.2 + package-json-from-dist: 1.0.1 + path-scurry: 1.11.1 + glob@7.2.3: dependencies: fs.realpath: 1.0.0 @@ -6348,6 +8549,10 @@ snapshots: dependencies: type-fest: 0.20.2 + globals@14.0.0: {} + + globals@15.10.0: {} + globalthis@1.0.4: dependencies: define-properties: 1.2.1 @@ -6362,6 +8567,15 @@ snapshots: merge2: 1.4.1 slash: 3.0.0 + globby@14.0.2: + dependencies: + '@sindresorhus/merge-streams': 2.3.0 + fast-glob: 3.3.2 + ignore: 5.3.1 + path-type: 5.0.0 + slash: 5.1.0 + unicorn-magic: 0.1.0 + gopd@1.0.1: dependencies: get-intrinsic: 1.2.4 @@ -6414,6 +8628,24 @@ snapshots: dependencies: function-bind: 1.1.2 + hast-util-to-html@9.0.3: + dependencies: + '@types/hast': 3.0.4 + '@types/unist': 3.0.3 + ccount: 2.0.1 + comma-separated-tokens: 2.0.3 + hast-util-whitespace: 3.0.0 + html-void-elements: 3.0.0 + mdast-util-to-hast: 13.2.0 + property-information: 6.5.0 + space-separated-tokens: 2.0.2 + stringify-entities: 4.0.4 + zwitch: 2.0.4 + + hast-util-whitespace@3.0.0: + dependencies: + '@types/hast': 3.0.4 + he@1.2.0: {} hosted-git-info@2.8.9: {} @@ -6428,7 +8660,9 @@ snapshots: html-escaper@2.0.2: {} - htmlparser2@8.0.2: + html-void-elements@3.0.0: {} + + htmlparser2@9.1.0: dependencies: domelementtype: 2.3.0 domhandler: 5.0.3 @@ -6441,7 +8675,7 @@ snapshots: dependencies: '@tootallnate/once': 2.0.0 agent-base: 6.0.2 - debug: 4.3.4(supports-color@8.1.1) + debug: 4.3.4 transitivePeerDependencies: - supports-color @@ -6480,7 +8714,7 @@ snapshots: https-proxy-agent@5.0.1: dependencies: agent-base: 6.0.2 - debug: 4.3.4(supports-color@8.1.1) + debug: 4.3.4 transitivePeerDependencies: - supports-color @@ -6535,12 +8769,10 @@ snapshots: jsbn: 1.1.0 sprintf-js: 1.1.3 - is-alphabetical@1.0.4: {} - - is-alphanumerical@1.0.4: + is-arguments@1.1.1: dependencies: - is-alphabetical: 1.0.4 - is-decimal: 1.0.4 + call-bind: 1.0.7 + has-tostringtag: 1.0.2 is-array-buffer@3.0.4: dependencies: @@ -6549,6 +8781,10 @@ snapshots: is-arrayish@0.2.1: {} + is-async-function@2.0.0: + dependencies: + has-tostringtag: 1.0.2 + is-bigint@1.0.4: dependencies: has-bigints: 1.0.2 @@ -6566,6 +8802,10 @@ snapshots: dependencies: builtin-modules: 3.3.0 + is-bun-module@1.2.1: + dependencies: + semver: 7.6.3 + is-callable@1.2.7: {} is-ci@3.0.1: @@ -6576,6 +8816,10 @@ snapshots: dependencies: hasown: 2.0.2 + is-core-module@2.15.1: + dependencies: + hasown: 2.0.2 + is-data-view@1.0.1: dependencies: is-typed-array: 1.1.13 @@ -6584,25 +8828,29 @@ snapshots: dependencies: has-tostringtag: 1.0.2 - is-decimal@1.0.4: {} - is-docker@3.0.0: {} is-extglob@2.1.1: {} + is-finalizationregistry@1.0.2: + dependencies: + call-bind: 1.0.7 + is-fullwidth-code-point@3.0.0: {} - is-get-set-prop@1.0.0: + is-generator-function@1.0.10: + dependencies: + has-tostringtag: 1.0.2 + + is-get-set-prop@2.0.0: dependencies: - get-set-props: 0.1.0 - lowercase-keys: 1.0.1 + get-set-props: 0.2.0 + lowercase-keys: 3.0.0 is-glob@4.0.3: dependencies: is-extglob: 2.1.1 - is-hexadecimal@1.0.4: {} - is-in-ci@0.1.0: {} is-inside-container@1.0.0: @@ -6614,12 +8862,14 @@ snapshots: global-dirs: 3.0.1 is-path-inside: 3.0.3 - is-js-type@2.0.0: + is-js-type@3.0.0: dependencies: - js-types: 1.0.0 + js-types: 4.0.0 is-lambda@1.0.1: {} + is-map@2.0.3: {} + is-module@1.0.0: {} is-negative-zero@2.0.3: {} @@ -6632,10 +8882,10 @@ snapshots: is-number@7.0.0: {} - is-obj-prop@1.0.0: + is-obj-prop@2.0.0: dependencies: - lowercase-keys: 1.0.1 - obj-props: 1.4.0 + lowercase-keys: 3.0.0 + obj-props: 2.0.0 is-obj@2.0.0: {} @@ -6643,16 +8893,18 @@ snapshots: is-plain-obj@2.1.0: {} - is-proto-prop@2.0.0: + is-proto-prop@3.0.1: dependencies: - lowercase-keys: 1.0.1 - proto-props: 2.0.0 + lowercase-keys: 3.0.0 + prototype-properties: 5.0.0 is-regex@1.1.4: dependencies: call-bind: 1.0.7 has-tostringtag: 1.0.2 + is-set@2.0.3: {} + is-shared-array-buffer@1.0.3: dependencies: call-bind: 1.0.7 @@ -6675,10 +8927,17 @@ snapshots: is-unicode-supported@0.1.0: {} + is-weakmap@2.0.2: {} + is-weakref@1.0.2: dependencies: call-bind: 1.0.7 + is-weakset@2.0.3: + dependencies: + call-bind: 1.0.7 + get-intrinsic: 1.2.4 + is-wsl@3.1.0: dependencies: is-inside-container: 1.0.0 @@ -6702,15 +8961,29 @@ snapshots: html-escaper: 2.0.2 istanbul-lib-report: 3.0.1 + iterator.prototype@1.1.2: + dependencies: + define-properties: 1.2.1 + get-intrinsic: 1.2.4 + has-symbols: 1.0.3 + reflect.getprototypeof: 1.0.6 + set-function-name: 2.0.2 + jackspeak@2.3.6: dependencies: '@isaacs/cliui': 8.0.2 optionalDependencies: '@pkgjs/parseargs': 0.11.0 + jackspeak@3.4.3: + dependencies: + '@isaacs/cliui': 8.0.2 + optionalDependencies: + '@pkgjs/parseargs': 0.11.0 + js-tokens@4.0.0: {} - js-types@1.0.0: {} + js-types@4.0.0: {} js-yaml@3.14.1: dependencies: @@ -6723,14 +8996,12 @@ snapshots: jsbn@1.1.0: {} - jsdoc-type-pratt-parser@4.0.0: {} + jsdoc-type-pratt-parser@4.1.0: {} - jsep@1.3.8: {} + jsep@1.3.9: {} jsesc@0.5.0: {} - jsesc@2.5.2: {} - jsesc@3.0.2: {} json-buffer@3.0.1: {} @@ -6751,10 +9022,15 @@ snapshots: json5@2.2.3: {} - jsonc-parser@3.2.1: {} - jsonparse@1.3.1: {} + jsx-ast-utils@3.3.5: + dependencies: + array-includes: 3.1.8 + array.prototype.flat: 1.3.2 + object.assign: 4.1.5 + object.values: 1.2.0 + just-diff-apply@5.5.0: {} just-diff@6.0.2: {} @@ -6763,6 +9039,12 @@ snapshots: dependencies: json-buffer: 3.0.1 + language-subtag-registry@0.3.23: {} + + language-tags@1.0.9: + dependencies: + language-subtag-registry: 0.3.23 + latest-version@7.0.0: dependencies: package-json: 8.1.1 @@ -6808,6 +9090,10 @@ snapshots: lines-and-columns@1.2.4: {} + linkify-it@5.0.0: + dependencies: + uc.micro: 2.1.0 + locate-path@5.0.0: dependencies: p-locate: 4.1.0 @@ -6833,12 +9119,16 @@ snapshots: chalk: 4.1.2 is-unicode-supported: 0.1.0 + longest-streak@3.1.0: {} + + loose-envify@1.4.0: + dependencies: + js-tokens: 4.0.0 + loupe@3.1.0: dependencies: get-func-name: 2.0.2 - lowercase-keys@1.0.1: {} - lowercase-keys@3.0.0: {} lru-cache@10.2.2: {} @@ -6901,30 +9191,326 @@ snapshots: transitivePeerDependencies: - supports-color - marked@4.3.0: {} + markdown-it@14.1.0: + dependencies: + argparse: 2.0.1 + entities: 4.5.0 + linkify-it: 5.0.0 + mdurl: 2.0.0 + punycode.js: 2.3.1 + uc.micro: 2.1.0 + + markdown-table@3.0.3: {} + + mdast-util-find-and-replace@3.0.1: + dependencies: + '@types/mdast': 4.0.4 + escape-string-regexp: 5.0.0 + unist-util-is: 6.0.0 + unist-util-visit-parents: 6.0.1 + + mdast-util-from-markdown@2.0.1: + dependencies: + '@types/mdast': 4.0.4 + '@types/unist': 3.0.3 + decode-named-character-reference: 1.0.2 + devlop: 1.1.0 + mdast-util-to-string: 4.0.0 + micromark: 4.0.0 + micromark-util-decode-numeric-character-reference: 2.0.1 + micromark-util-decode-string: 2.0.0 + micromark-util-normalize-identifier: 2.0.0 + micromark-util-symbol: 2.0.0 + micromark-util-types: 2.0.0 + unist-util-stringify-position: 4.0.0 + transitivePeerDependencies: + - supports-color + + mdast-util-gfm-autolink-literal@2.0.1: + dependencies: + '@types/mdast': 4.0.4 + ccount: 2.0.1 + devlop: 1.1.0 + mdast-util-find-and-replace: 3.0.1 + micromark-util-character: 2.1.0 + + mdast-util-gfm-footnote@2.0.0: + dependencies: + '@types/mdast': 4.0.4 + devlop: 1.1.0 + mdast-util-from-markdown: 2.0.1 + mdast-util-to-markdown: 2.1.0 + micromark-util-normalize-identifier: 2.0.0 + transitivePeerDependencies: + - supports-color + + mdast-util-gfm-strikethrough@2.0.0: + dependencies: + '@types/mdast': 4.0.4 + mdast-util-from-markdown: 2.0.1 + mdast-util-to-markdown: 2.1.0 + transitivePeerDependencies: + - supports-color + + mdast-util-gfm-table@2.0.0: + dependencies: + '@types/mdast': 4.0.4 + devlop: 1.1.0 + markdown-table: 3.0.3 + mdast-util-from-markdown: 2.0.1 + mdast-util-to-markdown: 2.1.0 + transitivePeerDependencies: + - supports-color + + mdast-util-gfm-task-list-item@2.0.0: + dependencies: + '@types/mdast': 4.0.4 + devlop: 1.1.0 + mdast-util-from-markdown: 2.0.1 + mdast-util-to-markdown: 2.1.0 + transitivePeerDependencies: + - supports-color - mdast-util-from-markdown@0.8.5: + mdast-util-gfm@3.0.0: dependencies: - '@types/mdast': 3.0.15 - mdast-util-to-string: 2.0.0 - micromark: 2.11.4 - parse-entities: 2.0.0 - unist-util-stringify-position: 2.0.3 + mdast-util-from-markdown: 2.0.1 + mdast-util-gfm-autolink-literal: 2.0.1 + mdast-util-gfm-footnote: 2.0.0 + mdast-util-gfm-strikethrough: 2.0.0 + mdast-util-gfm-table: 2.0.0 + mdast-util-gfm-task-list-item: 2.0.0 + mdast-util-to-markdown: 2.1.0 transitivePeerDependencies: - supports-color - mdast-util-to-string@2.0.0: {} + mdast-util-phrasing@4.1.0: + dependencies: + '@types/mdast': 4.0.4 + unist-util-is: 6.0.0 + + mdast-util-to-hast@13.2.0: + dependencies: + '@types/hast': 3.0.4 + '@types/mdast': 4.0.4 + '@ungap/structured-clone': 1.2.0 + devlop: 1.1.0 + micromark-util-sanitize-uri: 2.0.0 + trim-lines: 3.0.1 + unist-util-position: 5.0.0 + unist-util-visit: 5.0.0 + vfile: 6.0.3 + + mdast-util-to-markdown@2.1.0: + dependencies: + '@types/mdast': 4.0.4 + '@types/unist': 3.0.3 + longest-streak: 3.1.0 + mdast-util-phrasing: 4.1.0 + mdast-util-to-string: 4.0.0 + micromark-util-decode-string: 2.0.0 + unist-util-visit: 5.0.0 + zwitch: 2.0.4 + + mdast-util-to-string@4.0.0: + dependencies: + '@types/mdast': 4.0.4 mdn-data@2.0.14: {} + mdurl@2.0.0: {} + meow@12.1.1: {} merge2@1.4.1: {} - micromark@2.11.4: + micromark-core-commonmark@2.0.1: + dependencies: + decode-named-character-reference: 1.0.2 + devlop: 1.1.0 + micromark-factory-destination: 2.0.0 + micromark-factory-label: 2.0.0 + micromark-factory-space: 2.0.0 + micromark-factory-title: 2.0.0 + micromark-factory-whitespace: 2.0.0 + micromark-util-character: 2.1.0 + micromark-util-chunked: 2.0.0 + micromark-util-classify-character: 2.0.0 + micromark-util-html-tag-name: 2.0.0 + micromark-util-normalize-identifier: 2.0.0 + micromark-util-resolve-all: 2.0.0 + micromark-util-subtokenize: 2.0.1 + micromark-util-symbol: 2.0.0 + micromark-util-types: 2.0.0 + + micromark-extension-gfm-autolink-literal@2.1.0: + dependencies: + micromark-util-character: 2.1.0 + micromark-util-sanitize-uri: 2.0.0 + micromark-util-symbol: 2.0.0 + micromark-util-types: 2.0.0 + + micromark-extension-gfm-footnote@2.1.0: + dependencies: + devlop: 1.1.0 + micromark-core-commonmark: 2.0.1 + micromark-factory-space: 2.0.0 + micromark-util-character: 2.1.0 + micromark-util-normalize-identifier: 2.0.0 + micromark-util-sanitize-uri: 2.0.0 + micromark-util-symbol: 2.0.0 + micromark-util-types: 2.0.0 + + micromark-extension-gfm-strikethrough@2.1.0: + dependencies: + devlop: 1.1.0 + micromark-util-chunked: 2.0.0 + micromark-util-classify-character: 2.0.0 + micromark-util-resolve-all: 2.0.0 + micromark-util-symbol: 2.0.0 + micromark-util-types: 2.0.0 + + micromark-extension-gfm-table@2.1.0: + dependencies: + devlop: 1.1.0 + micromark-factory-space: 2.0.0 + micromark-util-character: 2.1.0 + micromark-util-symbol: 2.0.0 + micromark-util-types: 2.0.0 + + micromark-extension-gfm-tagfilter@2.0.0: + dependencies: + micromark-util-types: 2.0.0 + + micromark-extension-gfm-task-list-item@2.1.0: + dependencies: + devlop: 1.1.0 + micromark-factory-space: 2.0.0 + micromark-util-character: 2.1.0 + micromark-util-symbol: 2.0.0 + micromark-util-types: 2.0.0 + + micromark-extension-gfm@3.0.0: + dependencies: + micromark-extension-gfm-autolink-literal: 2.1.0 + micromark-extension-gfm-footnote: 2.1.0 + micromark-extension-gfm-strikethrough: 2.1.0 + micromark-extension-gfm-table: 2.1.0 + micromark-extension-gfm-tagfilter: 2.0.0 + micromark-extension-gfm-task-list-item: 2.1.0 + micromark-util-combine-extensions: 2.0.0 + micromark-util-types: 2.0.0 + + micromark-factory-destination@2.0.0: + dependencies: + micromark-util-character: 2.1.0 + micromark-util-symbol: 2.0.0 + micromark-util-types: 2.0.0 + + micromark-factory-label@2.0.0: + dependencies: + devlop: 1.1.0 + micromark-util-character: 2.1.0 + micromark-util-symbol: 2.0.0 + micromark-util-types: 2.0.0 + + micromark-factory-space@2.0.0: + dependencies: + micromark-util-character: 2.1.0 + micromark-util-types: 2.0.0 + + micromark-factory-title@2.0.0: + dependencies: + micromark-factory-space: 2.0.0 + micromark-util-character: 2.1.0 + micromark-util-symbol: 2.0.0 + micromark-util-types: 2.0.0 + + micromark-factory-whitespace@2.0.0: + dependencies: + micromark-factory-space: 2.0.0 + micromark-util-character: 2.1.0 + micromark-util-symbol: 2.0.0 + micromark-util-types: 2.0.0 + + micromark-util-character@2.1.0: + dependencies: + micromark-util-symbol: 2.0.0 + micromark-util-types: 2.0.0 + + micromark-util-chunked@2.0.0: + dependencies: + micromark-util-symbol: 2.0.0 + + micromark-util-classify-character@2.0.0: + dependencies: + micromark-util-character: 2.1.0 + micromark-util-symbol: 2.0.0 + micromark-util-types: 2.0.0 + + micromark-util-combine-extensions@2.0.0: + dependencies: + micromark-util-chunked: 2.0.0 + micromark-util-types: 2.0.0 + + micromark-util-decode-numeric-character-reference@2.0.1: + dependencies: + micromark-util-symbol: 2.0.0 + + micromark-util-decode-string@2.0.0: + dependencies: + decode-named-character-reference: 1.0.2 + micromark-util-character: 2.1.0 + micromark-util-decode-numeric-character-reference: 2.0.1 + micromark-util-symbol: 2.0.0 + + micromark-util-encode@2.0.0: {} + + micromark-util-html-tag-name@2.0.0: {} + + micromark-util-normalize-identifier@2.0.0: + dependencies: + micromark-util-symbol: 2.0.0 + + micromark-util-resolve-all@2.0.0: + dependencies: + micromark-util-types: 2.0.0 + + micromark-util-sanitize-uri@2.0.0: + dependencies: + micromark-util-character: 2.1.0 + micromark-util-encode: 2.0.0 + micromark-util-symbol: 2.0.0 + + micromark-util-subtokenize@2.0.1: + dependencies: + devlop: 1.1.0 + micromark-util-chunked: 2.0.0 + micromark-util-symbol: 2.0.0 + micromark-util-types: 2.0.0 + + micromark-util-symbol@2.0.0: {} + + micromark-util-types@2.0.0: {} + + micromark@4.0.0: dependencies: - debug: 4.3.4(supports-color@8.1.1) - parse-entities: 2.0.0 + '@types/debug': 4.1.12 + debug: 4.3.4 + decode-named-character-reference: 1.0.2 + devlop: 1.1.0 + micromark-core-commonmark: 2.0.1 + micromark-factory-space: 2.0.0 + micromark-util-character: 2.1.0 + micromark-util-chunked: 2.0.0 + micromark-util-combine-extensions: 2.0.0 + micromark-util-decode-numeric-character-reference: 2.0.1 + micromark-util-encode: 2.0.0 + micromark-util-normalize-identifier: 2.0.0 + micromark-util-resolve-all: 2.0.0 + micromark-util-sanitize-uri: 2.0.0 + micromark-util-subtokenize: 2.0.1 + micromark-util-symbol: 2.0.0 + micromark-util-types: 2.0.0 transitivePeerDependencies: - supports-color @@ -6933,6 +9519,12 @@ snapshots: braces: 3.0.2 picomatch: 2.3.1 + mime-db@1.52.0: {} + + mime-types@2.1.35: + dependencies: + mime-db: 1.52.0 + mime@1.6.0: {} mimic-response@3.1.0: {} @@ -6941,6 +9533,10 @@ snapshots: min-indent@1.0.1: {} + minimatch@10.0.1: + dependencies: + brace-expansion: 2.0.1 + minimatch@3.1.2: dependencies: brace-expansion: 1.1.11 @@ -6949,7 +9545,7 @@ snapshots: dependencies: brace-expansion: 2.0.1 - minimatch@9.0.3: + minimatch@5.1.6: dependencies: brace-expansion: 2.0.1 @@ -6957,6 +9553,10 @@ snapshots: dependencies: brace-expansion: 2.0.1 + minimatch@9.0.5: + dependencies: + brace-expansion: 2.0.1 + minimist@1.2.8: {} minipass-collect@1.0.2: @@ -7004,6 +9604,8 @@ snapshots: minipass@7.0.4: {} + minipass@7.1.2: {} + minizlib@2.1.2: dependencies: minipass: 3.3.6 @@ -7022,35 +9624,35 @@ snapshots: es6-template-strings: 2.0.1 fast-glob: 3.3.2 - mocha-multi-reporters@1.5.1(mocha@10.4.0): + mocha-multi-reporters@1.5.1(mocha@10.7.3): dependencies: - debug: 4.3.4(supports-color@8.1.1) + debug: 4.3.4 lodash: 4.17.21 - mocha: 10.4.0 + mocha: 10.7.3 transitivePeerDependencies: - supports-color - mocha@10.4.0: + mocha@10.7.3: dependencies: - ansi-colors: 4.1.1 + ansi-colors: 4.1.3 browser-stdout: 1.3.1 chokidar: 3.5.3 - debug: 4.3.4(supports-color@8.1.1) - diff: 5.0.0 + debug: 4.3.7(supports-color@8.1.1) + diff: 5.2.0 escape-string-regexp: 4.0.0 find-up: 5.0.0 glob: 8.1.0 he: 1.2.0 js-yaml: 4.1.0 log-symbols: 4.1.0 - minimatch: 5.0.1 + minimatch: 5.1.6 ms: 2.1.3 - serialize-javascript: 6.0.0 + serialize-javascript: 6.0.2 strip-json-comments: 3.1.1 supports-color: 8.1.1 - workerpool: 6.2.1 + workerpool: 6.5.1 yargs: 16.2.0 - yargs-parser: 20.2.4 + yargs-parser: 20.2.9 yargs-unparser: 2.0.0 ms@2.1.2: {} @@ -7080,7 +9682,7 @@ snapshots: - bluebird - supports-color - node-releases@2.0.14: {} + node-releases@2.0.18: {} nopt@6.0.0: dependencies: @@ -7168,10 +9770,17 @@ snapshots: dependencies: boolbase: 1.0.0 - obj-props@1.4.0: {} + obj-props@2.0.0: {} + + object-assign@4.1.1: {} object-inspect@1.13.1: {} + object-is@1.1.6: + dependencies: + call-bind: 1.0.7 + define-properties: 1.2.1 + object-keys@1.1.1: {} object.assign@4.1.5: @@ -7181,6 +9790,12 @@ snapshots: has-symbols: 1.0.3 object-keys: 1.1.1 + object.entries@1.1.8: + dependencies: + call-bind: 1.0.7 + define-properties: 1.2.1 + es-object-atoms: 1.0.0 + object.fromentries@2.0.8: dependencies: call-bind: 1.0.7 @@ -7204,6 +9819,10 @@ snapshots: dependencies: wrappy: 1.0.2 + oniguruma-to-js@0.4.3: + dependencies: + regex: 4.3.3 + open-cli@8.0.0: dependencies: file-type: 18.7.0 @@ -7254,6 +9873,8 @@ snapshots: p-try@2.2.0: {} + package-json-from-dist@1.0.1: {} + package-json@8.1.1: dependencies: got: 12.6.1 @@ -7295,14 +9916,10 @@ snapshots: just-diff: 6.0.2 just-diff-apply: 5.5.0 - parse-entities@2.0.0: + parse-imports@2.2.1: dependencies: - character-entities: 1.2.4 - character-entities-legacy: 1.1.4 - character-reference-invalid: 1.1.4 - is-alphanumerical: 1.0.4 - is-decimal: 1.0.4 - is-hexadecimal: 1.0.4 + es-module-lexer: 1.5.4 + slashes: 3.0.12 parse-json@5.2.0: dependencies: @@ -7324,14 +9941,23 @@ snapshots: lru-cache: 10.2.2 minipass: 7.0.4 + path-scurry@1.11.1: + dependencies: + lru-cache: 10.2.2 + minipass: 7.1.2 + path-type@4.0.0: {} + path-type@5.0.0: {} + pathval@2.0.0: {} peek-readable@5.0.0: {} picocolors@1.0.0: {} + picocolors@1.1.0: {} + picomatch@2.3.1: {} picomatch@4.0.2: {} @@ -7357,6 +9983,8 @@ snapshots: proc-log@3.0.0: {} + process@0.11.10: {} + promise-all-reject-late@1.0.1: {} promise-call-limit@1.0.2: {} @@ -7368,9 +9996,19 @@ snapshots: err-code: 2.0.3 retry: 0.12.0 + prop-types@15.8.1: + dependencies: + loose-envify: 1.4.0 + object-assign: 4.1.1 + react-is: 16.13.1 + + property-information@6.5.0: {} + proto-list@1.2.4: {} - proto-props@2.0.0: {} + prototype-properties@5.0.0: {} + + punycode.js@2.3.1: {} punycode@2.3.1: {} @@ -7386,6 +10024,8 @@ snapshots: quick-lru@5.1.1: {} + rambda@7.5.0: {} + randombytes@2.1.0: dependencies: safe-buffer: 5.2.1 @@ -7397,6 +10037,8 @@ snapshots: minimist: 1.2.8 strip-json-comments: 2.0.1 + react-is@16.13.1: {} + read-cmd-shim@4.0.0: {} read-package-json-fast@3.0.2: @@ -7430,6 +10072,14 @@ snapshots: string_decoder: 1.3.0 util-deprecate: 1.0.2 + readable-stream@4.5.2: + dependencies: + abort-controller: 3.0.0 + buffer: 6.0.3 + events: 3.3.0 + process: 0.11.10 + string_decoder: 1.3.0 + readable-web-to-node-stream@3.0.2: dependencies: readable-stream: 3.6.2 @@ -7440,10 +10090,28 @@ snapshots: reduce-flatten@2.0.0: {} + refa@0.12.1: + dependencies: + '@eslint-community/regexpp': 4.11.1 + + reflect.getprototypeof@1.0.6: + dependencies: + call-bind: 1.0.7 + define-properties: 1.2.1 + es-abstract: 1.23.3 + es-errors: 1.3.0 + get-intrinsic: 1.2.4 + globalthis: 1.0.4 + which-builtin-type: 1.1.4 + regenerate-unicode-properties@10.1.1: dependencies: regenerate: 1.4.2 + regenerate-unicode-properties@10.2.0: + dependencies: + regenerate: 1.4.2 + regenerate@1.4.2: {} regenerator-runtime@0.14.1: {} @@ -7452,6 +10120,13 @@ snapshots: dependencies: '@babel/runtime': 7.24.5 + regex@4.3.3: {} + + regexp-ast-analysis@0.7.1: + dependencies: + '@eslint-community/regexpp': 4.11.1 + refa: 0.12.1 + regexp-tree@0.1.27: {} regexp.prototype.flags@1.5.2: @@ -7470,6 +10145,15 @@ snapshots: unicode-match-property-ecmascript: 2.0.0 unicode-match-property-value-ecmascript: 2.1.0 + regexpu-core@6.1.1: + dependencies: + regenerate: 1.4.2 + regenerate-unicode-properties: 10.2.0 + regjsgen: 0.8.0 + regjsparser: 0.11.1 + unicode-match-property-ecmascript: 2.0.0 + unicode-match-property-value-ecmascript: 2.1.0 + registry-auth-token@5.0.2: dependencies: '@pnpm/npm-conf': 2.2.2 @@ -7478,16 +10162,24 @@ snapshots: dependencies: rc: 1.2.8 + regjsgen@0.8.0: {} + regjsparser@0.10.0: dependencies: jsesc: 0.5.0 + regjsparser@0.11.1: + dependencies: + jsesc: 3.0.2 + regjsparser@0.9.1: dependencies: jsesc: 0.5.0 require-directory@2.1.1: {} + requireindex@1.2.0: {} + requires-port@1.0.0: {} resolve-alpn@1.2.1: {} @@ -7498,12 +10190,20 @@ snapshots: resolve-pkg-maps@1.0.0: {} + resolve.exports@2.0.2: {} + resolve@1.22.8: dependencies: is-core-module: 2.13.1 path-parse: 1.0.7 supports-preserve-symlinks-flag: 1.0.0 + resolve@2.0.0-next.5: + dependencies: + is-core-module: 2.13.1 + path-parse: 1.0.7 + supports-preserve-symlinks-flag: 1.0.0 + responselike@3.0.0: dependencies: lowercase-keys: 3.0.0 @@ -7516,23 +10216,26 @@ snapshots: dependencies: glob: 7.2.3 - rollup@4.12.0: + rollup@4.24.0: dependencies: - '@types/estree': 1.0.5 + '@types/estree': 1.0.6 optionalDependencies: - '@rollup/rollup-android-arm-eabi': 4.12.0 - '@rollup/rollup-android-arm64': 4.12.0 - '@rollup/rollup-darwin-arm64': 4.12.0 - '@rollup/rollup-darwin-x64': 4.12.0 - '@rollup/rollup-linux-arm-gnueabihf': 4.12.0 - '@rollup/rollup-linux-arm64-gnu': 4.12.0 - '@rollup/rollup-linux-arm64-musl': 4.12.0 - '@rollup/rollup-linux-riscv64-gnu': 4.12.0 - '@rollup/rollup-linux-x64-gnu': 4.12.0 - '@rollup/rollup-linux-x64-musl': 4.12.0 - '@rollup/rollup-win32-arm64-msvc': 4.12.0 - '@rollup/rollup-win32-ia32-msvc': 4.12.0 - '@rollup/rollup-win32-x64-msvc': 4.12.0 + '@rollup/rollup-android-arm-eabi': 4.24.0 + '@rollup/rollup-android-arm64': 4.24.0 + '@rollup/rollup-darwin-arm64': 4.24.0 + '@rollup/rollup-darwin-x64': 4.24.0 + '@rollup/rollup-linux-arm-gnueabihf': 4.24.0 + '@rollup/rollup-linux-arm-musleabihf': 4.24.0 + '@rollup/rollup-linux-arm64-gnu': 4.24.0 + '@rollup/rollup-linux-arm64-musl': 4.24.0 + '@rollup/rollup-linux-powerpc64le-gnu': 4.24.0 + '@rollup/rollup-linux-riscv64-gnu': 4.24.0 + '@rollup/rollup-linux-s390x-gnu': 4.24.0 + '@rollup/rollup-linux-x64-gnu': 4.24.0 + '@rollup/rollup-linux-x64-musl': 4.24.0 + '@rollup/rollup-win32-arm64-msvc': 4.24.0 + '@rollup/rollup-win32-ia32-msvc': 4.24.0 + '@rollup/rollup-win32-x64-msvc': 4.24.0 fsevents: 2.3.3 run-applescript@7.0.0: {} @@ -7560,6 +10263,12 @@ snapshots: safer-buffer@2.1.2: {} + scslre@0.3.0: + dependencies: + '@eslint-community/regexpp': 4.11.1 + refa: 0.12.1 + regexp-ast-analysis: 0.7.1 + secure-compare@3.0.1: {} semver-diff@4.0.0: @@ -7574,9 +10283,7 @@ snapshots: dependencies: lru-cache: 6.0.0 - serialize-javascript@6.0.0: - dependencies: - randombytes: 2.1.0 + semver@7.6.3: {} serialize-javascript@6.0.2: dependencies: @@ -7606,12 +10313,14 @@ snapshots: shebang-regex@3.0.0: {} - shiki@0.14.7: + shiki@1.22.0: dependencies: - ansi-sequence-parser: 1.1.1 - jsonc-parser: 3.2.1 - vscode-oniguruma: 1.7.0 - vscode-textmate: 8.0.0 + '@shikijs/core': 1.22.0 + '@shikijs/engine-javascript': 1.22.0 + '@shikijs/engine-oniguruma': 1.22.0 + '@shikijs/types': 1.22.0 + '@shikijs/vscode-textmate': 9.3.0 + '@types/hast': 3.0.4 side-channel@1.0.6: dependencies: @@ -7636,6 +10345,10 @@ snapshots: slash@3.0.0: {} + slash@5.1.0: {} + + slashes@3.0.12: {} + smart-buffer@4.2.0: {} smob@1.5.0: {} @@ -7643,7 +10356,7 @@ snapshots: socks-proxy-agent@7.0.0: dependencies: agent-base: 6.0.2 - debug: 4.3.4(supports-color@8.1.1) + debug: 4.3.4 socks: 2.8.3 transitivePeerDependencies: - supports-color @@ -7660,6 +10373,8 @@ snapshots: source-map@0.6.1: {} + space-separated-tokens@2.0.2: {} + spdx-compare@1.0.0: dependencies: array-find-index: 1.0.2 @@ -7718,6 +10433,15 @@ snapshots: stable@0.1.8: {} + stop-iteration-iterator@1.0.0: + dependencies: + internal-slot: 1.0.7 + + stream-chunks@1.0.0: + dependencies: + buffer: 6.0.3 + string_decoder: 1.3.0 + stream-read-all@3.0.1: {} string-width@4.2.3: @@ -7732,6 +10456,31 @@ snapshots: emoji-regex: 9.2.2 strip-ansi: 7.1.0 + string.prototype.includes@2.0.0: + dependencies: + define-properties: 1.2.1 + es-abstract: 1.23.3 + + string.prototype.matchall@4.0.11: + dependencies: + call-bind: 1.0.7 + define-properties: 1.2.1 + es-abstract: 1.23.3 + es-errors: 1.3.0 + es-object-atoms: 1.0.0 + get-intrinsic: 1.2.4 + gopd: 1.0.1 + has-symbols: 1.0.3 + internal-slot: 1.0.7 + regexp.prototype.flags: 1.5.2 + set-function-name: 2.0.2 + side-channel: 1.0.6 + + string.prototype.repeat@1.0.0: + dependencies: + define-properties: 1.2.1 + es-abstract: 1.23.3 + string.prototype.trim@1.2.9: dependencies: call-bind: 1.0.7 @@ -7755,6 +10504,11 @@ snapshots: dependencies: safe-buffer: 5.2.1 + stringify-entities@4.0.4: + dependencies: + character-entities-html4: 2.1.0 + character-entities-legacy: 3.0.0 + strip-ansi@6.0.1: dependencies: ansi-regex: 5.0.1 @@ -7802,6 +10556,11 @@ snapshots: csso: 4.2.0 stable: 0.1.8 + synckit@0.9.2: + dependencies: + '@pkgr/core': 0.1.1 + tslib: 2.7.0 + table-layout@1.0.2: dependencies: array-back: 4.0.2 @@ -7819,6 +10578,8 @@ snapshots: typical: 7.1.1 wordwrapjs: 5.1.0 + tapable@2.2.1: {} + tar@6.2.1: dependencies: chownr: 2.0.0 @@ -7844,11 +10605,11 @@ snapshots: commander: 2.20.3 source-map-support: 0.5.21 - test-exclude@6.0.0: + test-exclude@7.0.1: dependencies: '@istanbuljs/schema': 0.1.3 - glob: 7.2.3 - minimatch: 3.1.2 + glob: 10.4.5 + minimatch: 9.0.4 text-table@0.2.0: {} @@ -7865,9 +10626,11 @@ snapshots: treeverse@3.0.0: {} - ts-api-utils@1.3.0(typescript@5.4.5): + trim-lines@3.0.1: {} + + ts-api-utils@1.3.0(typescript@5.6.2): dependencies: - typescript: 5.4.5 + typescript: 5.6.2 tsconfig-paths@3.15.0: dependencies: @@ -7876,10 +10639,12 @@ snapshots: minimist: 1.2.8 strip-bom: 3.0.0 + tslib@2.7.0: {} + tuf-js@1.1.7: dependencies: '@tufjs/models': 1.0.4 - debug: 4.3.4(supports-color@8.1.1) + debug: 4.3.4 make-fetch-happen: 11.1.1 transitivePeerDependencies: - supports-color @@ -7936,15 +10701,16 @@ snapshots: dependencies: is-typedarray: 1.0.0 - typedoc@0.25.13(typescript@5.4.5): + typedoc@0.26.8(typescript@5.6.2): dependencies: lunr: 2.3.9 - marked: 4.3.0 - minimatch: 9.0.4 - shiki: 0.14.7 - typescript: 5.4.5 + markdown-it: 14.1.0 + minimatch: 9.0.5 + shiki: 1.22.0 + typescript: 5.6.2 + yaml: 2.5.1 - typescript@5.4.5: {} + typescript@5.6.2: {} typical@4.0.0: {} @@ -7952,6 +10718,8 @@ snapshots: typical@7.1.1: {} + uc.micro@2.1.0: {} + unbox-primitive@1.0.2: dependencies: call-bind: 1.0.7 @@ -7970,6 +10738,8 @@ snapshots: unicode-property-aliases-ecmascript@2.1.0: {} + unicorn-magic@0.1.0: {} + union@0.5.0: dependencies: qs: 6.12.1 @@ -7994,15 +10764,34 @@ snapshots: dependencies: crypto-random-string: 4.0.0 - unist-util-stringify-position@2.0.3: + unist-util-is@6.0.0: dependencies: - '@types/unist': 2.0.10 + '@types/unist': 3.0.3 - update-browserslist-db@1.0.14(browserslist@4.23.0): + unist-util-position@5.0.0: dependencies: - browserslist: 4.23.0 - escalade: 3.1.2 - picocolors: 1.0.0 + '@types/unist': 3.0.3 + + unist-util-stringify-position@4.0.0: + dependencies: + '@types/unist': 3.0.3 + + unist-util-visit-parents@6.0.1: + dependencies: + '@types/unist': 3.0.3 + unist-util-is: 6.0.0 + + unist-util-visit@5.0.0: + dependencies: + '@types/unist': 3.0.3 + unist-util-is: 6.0.0 + unist-util-visit-parents: 6.0.1 + + update-browserslist-db@1.1.1(browserslist@4.24.0): + dependencies: + browserslist: 4.24.0 + escalade: 3.2.0 + picocolors: 1.1.0 update-notifier@6.0.2: dependencies: @@ -8059,9 +10848,28 @@ snapshots: dependencies: builtins: 5.1.0 - vscode-oniguruma@1.7.0: {} + vfile-message@4.0.2: + dependencies: + '@types/unist': 3.0.3 + unist-util-stringify-position: 4.0.0 + + vfile@6.0.3: + dependencies: + '@types/unist': 3.0.3 + vfile-message: 4.0.2 - vscode-textmate@8.0.0: {} + vue-eslint-parser@9.4.3(eslint@9.12.0): + dependencies: + debug: 4.3.4 + eslint: 9.12.0 + eslint-scope: 7.2.2 + eslint-visitor-keys: 3.4.3 + espree: 9.6.1 + esquery: 1.5.0 + lodash: 4.17.21 + semver: 7.6.3 + transitivePeerDependencies: + - supports-color walk-up-path@3.0.1: {} @@ -8077,6 +10885,28 @@ snapshots: is-string: 1.0.7 is-symbol: 1.0.4 + which-builtin-type@1.1.4: + dependencies: + function.prototype.name: 1.1.6 + has-tostringtag: 1.0.2 + is-async-function: 2.0.0 + is-date-object: 1.0.5 + is-finalizationregistry: 1.0.2 + is-generator-function: 1.0.10 + is-regex: 1.1.4 + is-weakref: 1.0.2 + isarray: 2.0.5 + which-boxed-primitive: 1.0.2 + which-collection: 1.0.2 + which-typed-array: 1.1.15 + + which-collection@1.0.2: + dependencies: + is-map: 2.0.3 + is-set: 2.0.3 + is-weakmap: 2.0.2 + is-weakset: 2.0.3 + which-typed-array@1.1.15: dependencies: available-typed-arrays: 1.0.7 @@ -8110,7 +10940,7 @@ snapshots: wordwrapjs@5.1.0: {} - workerpool@6.2.1: {} + workerpool@6.5.1: {} wrap-ansi@7.0.0: dependencies: @@ -8146,7 +10976,9 @@ snapshots: yallist@4.0.0: {} - yargs-parser@20.2.4: {} + yaml@2.5.1: {} + + yargs-parser@20.2.9: {} yargs-parser@21.1.1: {} @@ -8165,7 +10997,7 @@ snapshots: require-directory: 2.1.1 string-width: 4.2.3 y18n: 5.0.8 - yargs-parser: 20.2.4 + yargs-parser: 20.2.9 yargs@17.7.2: dependencies: @@ -8178,3 +11010,5 @@ snapshots: yargs-parser: 21.1.1 yocto-queue@0.1.0: {} + + zwitch@2.0.4: {} diff --git a/rollup.config.js b/rollup.config.js index f08aa8d..89c0b6c 100644 --- a/rollup.config.js +++ b/rollup.config.js @@ -22,7 +22,6 @@ const pkg = JSON.parse(await readFile('./package.json')); */ function getRollupObject ({ input, minifying, environment, - // eslint-disable-next-line no-shadow external, format = 'umd' }) { @@ -72,7 +71,6 @@ function getRollupObject ({ function getRollupObjectByEnv ({minifying, environment}) { const input = `src/jsonpath-${environment}.js`; if (environment === 'node') { - // eslint-disable-next-line no-shadow const external = ['vm']; return [ getRollupObject({ diff --git a/src/jsonpath-browser.js b/src/jsonpath-browser.js index 55ebd30..bca627f 100644 --- a/src/jsonpath-browser.js +++ b/src/jsonpath-browser.js @@ -31,6 +31,8 @@ const moveToAnotherArray = function (source, target, conditionCb) { for (let i = 0; i < il; i++) { const item = source[i]; if (conditionCb(item)) { + // eslint-disable-next-line @stylistic/max-len -- Long + // eslint-disable-next-line sonarjs/updated-loop-counter -- Convenient target.push(source.splice(i--, 1)[0]); } } @@ -113,6 +115,8 @@ const SafeEval = { ) { // var x=2; is detected as // [{Identifier var}, {AssignmentExpression x=2}] + // eslint-disable-next-line @stylistic/max-len -- Long + // eslint-disable-next-line sonarjs/updated-loop-counter -- Convenient i += 1; } const expr = ast.body[i]; diff --git a/src/jsonpath.js b/src/jsonpath.js index 731219d..4179e72 100644 --- a/src/jsonpath.js +++ b/src/jsonpath.js @@ -572,6 +572,8 @@ JSONPath.prototype._trace = function ( ret[t] = tmp[0]; const tl = tmp.length; for (let tt = 1; tt < tl; tt++) { + // eslint-disable-next-line @stylistic/max-len -- Long + // eslint-disable-next-line sonarjs/updated-loop-counter -- Convenient t++; ret.splice(t, 0, tmp[tt]); } diff --git a/test/test.at_and_dollar.js b/test/test.at_and_dollar.js index 7561efc..c69d871 100644 --- a/test/test.at_and_dollar.js +++ b/test/test.at_and_dollar.js @@ -28,7 +28,7 @@ describe('JSONPath - At and Dollar sign', function () { assert.strictEqual(jsonpath({json: t1, path: 'a$a'})[0], t1.a$a); assert.strictEqual(jsonpath({json: t1, path: '`@'})[0], t1['@']); assert.strictEqual(jsonpath({json: t1, path: '$.`$.`@'})[0], t1.$['@']); - assert.strictEqual(jsonpath({json: t1, path: '\\@'})[1], undefined); + assert.strictEqual(jsonpath({json: t1, path: String.raw`\@`})[1], undefined); }); it('@ as false', () => { diff --git a/test/test.cli.js b/test/test.cli.js index 63ef8e6..3bbb22c 100644 --- a/test/test.cli.js +++ b/test/test.cli.js @@ -12,9 +12,12 @@ describe("JSONPath - cli", () => { it("invalid arguments", async () => { const binPath = path.resolve("bin/jsonpath-cli.js"); - const out = await exec("bin/jsonpath-cli.js wrong-file.json").catch( - (e) => e - ); + let out; + try { + out = await exec("bin/jsonpath-cli.js wrong-file.json"); + } catch (err) { + out = err; + } expect(out).to.have.property("code", 1); expect(out).to.have.property("stderr"); expect(out.stderr).to.include(`usage: ${binPath} \n\n`); diff --git a/test/test.errors.js b/test/test.errors.js index fefd300..4bc27f0 100644 --- a/test/test.errors.js +++ b/test/test.errors.js @@ -50,7 +50,7 @@ checkBuiltInVMAndNodeVM(function (vmType, setBuiltInState) { }).to.throw(Error, 'Eval [?(expr)] prevented in JSONPath expression.'); }); - it('should throw with `eval: false` and [?()] filtering expression', () => { + it('should throw with `eval: false` and [?()] filtering expression (@.length)', () => { expect(() => { const json = { datafield: [ diff --git a/test/test.performance.js b/test/test.performance.js index 9753c1f..1c69774 100644 --- a/test/test.performance.js +++ b/test/test.performance.js @@ -19,6 +19,7 @@ describe('JSONPath - Performance', function () { const items = []; for (i = 0; i < itemCount; i++) { + // eslint-disable-next-line unicorn/prefer-structured-clone -- Want JSON items[i] = JSON.parse(JSON.stringify({a: {b: 0, c: 0}, s: {b: {c: bigArray}}})); }