From d281c128800f10ee66eef332e93eda3f3d853bfe Mon Sep 17 00:00:00 2001 From: lopatnov Date: Thu, 12 Feb 2026 15:10:51 +0200 Subject: [PATCH 01/18] Update packages --- .claude/settings.local.json | 13 + .github/workflows/nodejs.yml | 28 +- .github/workflows/npmpublish.yml | 29 +- .jshintrc | 3 - .travis.yml | 6 - biome.json | 54 + dist/javascripttostring.es5.js | 4 +- dist/javascripttostring.es5.js.map | 2 +- dist/javascripttostring.umd.js | 4 +- dist/javascripttostring.umd.js.map | 2 +- dist/lib/javascripttostring.js | 763 +- dist/lib/javascripttostring.js.map | 2 +- dist/types/javascripttostring.d.ts | 30 +- docs/assets/hierarchy.js | 1 + docs/assets/highlight.css | 48 +- docs/assets/icons.css | 1043 --- docs/assets/icons.js | 18 + docs/assets/icons.png | Bin 9615 -> 0 bytes docs/assets/icons.svg | 1 + docs/assets/icons@2x.png | Bin 28144 -> 0 bytes docs/assets/main.js | 112 +- docs/assets/navigation.js | 1 + docs/assets/search.js | 2 +- docs/assets/style.css | 2745 ++++--- docs/assets/widgets.png | Bin 480 -> 0 bytes docs/assets/widgets@2x.png | Bin 855 -> 0 bytes docs/functions/default.html | 4 + docs/hierarchy.html | 1 + docs/index.html | 101 +- docs/interfaces/ij2soptions.html | 8 +- docs/modules.html | 8 +- jest.config.js | 176 +- package-lock.json | 11016 +++++++++++---------------- package.json | 43 +- rollup.config.ts | 22 +- src/javascripttostring.ts | 936 ++- test/generator.test.js | 4 +- test/javascripttostring.test.ts | 1309 ++-- 38 files changed, 7816 insertions(+), 10723 deletions(-) create mode 100644 .claude/settings.local.json delete mode 100644 .jshintrc delete mode 100644 .travis.yml create mode 100644 biome.json create mode 100644 docs/assets/hierarchy.js delete mode 100644 docs/assets/icons.css create mode 100644 docs/assets/icons.js delete mode 100644 docs/assets/icons.png create mode 100644 docs/assets/icons.svg delete mode 100644 docs/assets/icons@2x.png create mode 100644 docs/assets/navigation.js delete mode 100644 docs/assets/widgets.png delete mode 100644 docs/assets/widgets@2x.png create mode 100644 docs/functions/default.html create mode 100644 docs/hierarchy.html diff --git a/.claude/settings.local.json b/.claude/settings.local.json new file mode 100644 index 0000000..a399fa3 --- /dev/null +++ b/.claude/settings.local.json @@ -0,0 +1,13 @@ +{ + "permissions": { + "allow": [ + "Bash(npm run build:*)", + "Bash(npm test:*)", + "Bash(npm run check:*)", + "Bash(npx biome:*)", + "Bash(npm view:*)", + "Bash(npm install:*)", + "Bash(npm outdated:*)" + ] + } +} diff --git a/.github/workflows/nodejs.yml b/.github/workflows/nodejs.yml index 43acec4..a79a3f8 100644 --- a/.github/workflows/nodejs.yml +++ b/.github/workflows/nodejs.yml @@ -1,26 +1,34 @@ name: Node CI -on: [push] +on: [push, pull_request] jobs: build: - runs-on: ubuntu-latest strategy: matrix: - node-version: [12.x] + node-version: [18.x, 20.x, 22.x] steps: - - uses: actions/checkout@v1 + - uses: actions/checkout@v4 + - name: Use Node.js ${{ matrix.node-version }} - uses: actions/setup-node@v1 + uses: actions/setup-node@v4 with: node-version: ${{ matrix.node-version }} - - name: npm install, build, and test - run: | - npm i - npm run build --if-present - npm test + cache: 'npm' + + - name: Install dependencies + run: npm ci + + - name: Lint and format check + run: npm run check + + - name: Build + run: npm run build + + - name: Test + run: npm test env: CI: true diff --git a/.github/workflows/npmpublish.yml b/.github/workflows/npmpublish.yml index f44b6f8..e80d8b0 100644 --- a/.github/workflows/npmpublish.yml +++ b/.github/workflows/npmpublish.yml @@ -8,11 +8,13 @@ jobs: build: runs-on: ubuntu-latest steps: - - uses: actions/checkout@v1 - - uses: actions/setup-node@v1 + - uses: actions/checkout@v4 + - uses: actions/setup-node@v4 with: - node-version: 12 + node-version: 20 + cache: 'npm' - run: npm ci + - run: npm run check - run: npm run build - run: npm test @@ -20,13 +22,15 @@ jobs: needs: build runs-on: ubuntu-latest steps: - - uses: actions/checkout@v1 + - uses: actions/checkout@v4 - run: npm run configure-npm - - uses: actions/setup-node@v1 + - uses: actions/setup-node@v4 with: - node-version: '12.x' + node-version: 20 registry-url: 'https://registry.npmjs.org' - - run: npm install + cache: 'npm' + - run: npm ci + - run: npm run build - run: npm publish --access=public env: NODE_AUTH_TOKEN: ${{ secrets.npm_token }} @@ -35,13 +39,16 @@ jobs: needs: build runs-on: ubuntu-latest steps: - - uses: actions/checkout@v1 - - uses: actions/setup-node@v1 + - uses: actions/checkout@v4 + - uses: actions/setup-node@v4 with: - node-version: '12.x' + node-version: 20 registry-url: 'https://npm.pkg.github.com' scope: '@lopatnov' + cache: 'npm' - run: npm run configure-gpr + - run: npm ci + - run: npm run build - run: npm publish --access=public env: - NODE_AUTH_TOKEN: ${{ secrets.GPR_PAT }} \ No newline at end of file + NODE_AUTH_TOKEN: ${{ secrets.GPR_PAT }} diff --git a/.jshintrc b/.jshintrc deleted file mode 100644 index 021cf75..0000000 --- a/.jshintrc +++ /dev/null @@ -1,3 +0,0 @@ -{ - "esversion": 9 -} \ No newline at end of file diff --git a/.travis.yml b/.travis.yml deleted file mode 100644 index 333d2c6..0000000 --- a/.travis.yml +++ /dev/null @@ -1,6 +0,0 @@ -language: node_js -node_js: - - 12 - -script: - - npm test diff --git a/biome.json b/biome.json new file mode 100644 index 0000000..be5dd6b --- /dev/null +++ b/biome.json @@ -0,0 +1,54 @@ +{ + "$schema": "https://biomejs.dev/schemas/2.3.14/schema.json", + "assist": { "actions": { "source": { "organizeImports": "on" } } }, + "linter": { + "enabled": true, + "rules": { + "recommended": true, + "suspicious": { + "noExplicitAny": "off", + "noPrototypeBuiltins": "off", + "noGlobalIsNan": "off", + "noVar": "off" + }, + "complexity": { + "noForEach": "off", + "noExtraBooleanCast": "off" + }, + "correctness": { + "noSwitchDeclarations": "off" + }, + "style": { + "useConst": "warn", + "useSingleVarDeclarator": "off", + "useTemplate": "off", + "noUselessElse": "off", + "noParameterAssign": "off", + "useExponentiationOperator": "off" + } + } + }, + "formatter": { + "enabled": true, + "indentStyle": "space", + "indentWidth": 2, + "lineWidth": 120 + }, + "javascript": { + "formatter": { + "quoteStyle": "double", + "semicolons": "always" + } + }, + "files": { + "includes": [ + "**/src/**/*.ts", + "**/test/**/*.ts", + "**/test/**/*.js", + "!**/dist/**", + "!**/node_modules/**", + "!**/docs/**", + "!**/coverage/**" + ] + } +} diff --git a/dist/javascripttostring.es5.js b/dist/javascripttostring.es5.js index 5f419af..3af5d49 100644 --- a/dist/javascripttostring.es5.js +++ b/dist/javascripttostring.es5.js @@ -1,6 +1,6 @@ -var types={},typesToString=types.toString,buildInList=["Boolean","Number","String","Function","Array","Date","RegExp","Object","Error","Promise","Generator","GeneratorFunction","ArrayBuffer","DataView"],typedArrays=["Int8Array","Uint8Array","Uint8ClampedArray","Int16Array","Uint16Array","Int32Array","Uint32Array","Float32Array","Float64Array","BigInt64Array","BigUint64Array"],maps=["Map","WeakMap"],sets=["Set","WeakSet"];function getInternalType(t){return null==t?t+"":"object"==typeof t||"function"==typeof t?types[typesToString.call(t)]||"object":typeof t}buildInList.forEach((function(t){types["[object "+t+"]"]=t.toLowerCase();})),maps.forEach((function(t){types["[object "+t+"]"]="map";})),sets.forEach((function(t){types["[object "+t+"]"]="set";})),typedArrays.forEach((function(t){types["[object "+t+"]"]="typedarray";})); +var types={},typesToString=types.toString,buildInList=["Boolean","Number","String","Function","Array","Date","RegExp","Object","Error","Promise","Generator","GeneratorFunction","ArrayBuffer","DataView"],typedArrays=["Int8Array","Uint8Array","Uint8ClampedArray","Int16Array","Uint16Array","Int32Array","Uint32Array","Float32Array","Float64Array","BigInt64Array","BigUint64Array"],maps=["Map","WeakMap"],sets=["Set","WeakSet"];function getInternalType(t){return null==t?t+"":"object"==typeof t||"function"==typeof t?types[typesToString.call(t)]||"object":typeof t}buildInList.forEach(function(t){types["[object "+t+"]"]=t.toLowerCase();}),maps.forEach(function(t){types["[object "+t+"]"]="map";}),sets.forEach(function(t){types["[object "+t+"]"]="set";}),typedArrays.forEach(function(t){types["[object "+t+"]"]="typedarray";}); -var refs=[],counter=0;function fillNativeFunctions(e,r,n,t){void 0===t&&(t=!0);for(var i=t?".prototype.":".",o=0,a=Object.getOwnPropertyNames(t?r.prototype:r);o0){var n="___j2s_"+(counter=counter++%Number.MAX_SAFE_INTEGER),t=e.reduce((function(e,r){var t=converToAction(n,r);return refs.splice(refs.indexOf(r),1),e+t}),"");return "(function(){ var "+n+" = "+r+"; "+t+" return "+n+"; }())"}return r}function converToAction(e,r){var n=r.historyRef.indexOf(r.source);if(n<0)return "";for(var t,i=r.historyRef.slice(n),o="",a=0;a-1&&a.length<100)for(var u in nativeFunctions)nativeFunctions[u]===e&&(a=u);return i||o?attachActions(getLocalRefs(e),"(function(){\n var "+t+" = "+String(a)+";\n "+i+"\n "+o+"\n return "+t+";\n}())"):a}function arrayBufferToString(e,r,n){return r.includeBuffers?"("+typedArrayToString(new Int8Array(e),r,n)+").buffer":"undefined"}function dataViewToString(e,r,n){return r.includeBuffers?"new DataView("+arrayBufferToString(e.buffer,r,n)+", "+e.byteOffset+", "+e.byteLength+")":"undefined"}function stringify(e,r,n){switch(getInternalType(e)){case"undefined":case"promise":case"generator":return "undefined";case"null":return "null";case"boolean":case"regexp":return String(e);default:return JSON.stringify(e);case"number":return numberToString(e);case"bigint":return "BigInt("+e+")";case"symbol":return symbolToString(e);case"date":return dateToString(e);case"error":return errorToString(e);case"array":return arrayToString(e,r,n);case"typedarray":return typedArrayToString(e,r,n);case"set":return setToString(e,r,n);case"map":return mapToString(e,r,n);case"object":return objectToString(e,r,n);case"function":case"generatorfunction":return functionToString(e,r,n);case"arraybuffer":return arrayBufferToString(e,r,n);case"dataview":return dataViewToString(e,r,n)}}function stringifyRef(e,r,n){var t=n.references.indexOf(e);if(t<0||"string"==typeof n.references[t]){var i=getInternalType(e),o=n.references.length;switch(n.references.push(e),i){case"object":if(n.nestedObjectsLeft<=0)return "undefined";n.nestedObjectsLeft--;break;case"array":case"typedarray":if(n.nestedArraysLeft<=0)return "undefined";n.nestedArraysLeft--;break;case"function":case"generatorfunction":if(n.nestedFunctionsLeft<=0)return "undefined";n.nestedFunctionsLeft--;}var a=stringify(e,r,n);switch(n.references.splice(o),i){case"object":n.nestedObjectsLeft++;break;case"array":case"typedarray":n.nestedArraysLeft++;break;case"function":case"generatorfunction":n.nestedFunctionsLeft++;}return a}return refs.push({historyRef:n.references.slice(0),source:e}),"null"}function javaScriptToString(e,r){var n={includeFunctionProperties:void 0===(r=r||{}).includeFunctionProperties||r.includeFunctionProperties,includeFunctionPrototype:void 0===r.includeFunctionPrototype||r.includeFunctionPrototype,includeBuffers:void 0===r.includeBuffers||r.includeBuffers,nestedObjectsAmount:void 0===r.nestedObjectsAmount?Number.POSITIVE_INFINITY:r.nestedObjectsAmount,nestedArraysAmount:void 0===r.nestedArraysAmount?Number.POSITIVE_INFINITY:r.nestedArraysAmount,nestedFunctionsAmount:void 0===r.nestedFunctionsAmount?Number.POSITIVE_INFINITY:r.nestedFunctionsAmount};return stringify(e,n,{references:[e],nestedObjectsLeft:n.nestedObjectsAmount,nestedArraysLeft:n.nestedArraysAmount,nestedFunctionsLeft:n.nestedFunctionsAmount})} +var refs=[],counter=0;function fillNativeFunctions(e,n,t,r){ void 0===r&&(r=true);for(var c=r?".prototype.":".",o=0,a=Object.getOwnPropertyNames(r?n.prototype:n);o0){counter=counter++%Number.MAX_SAFE_INTEGER;var t="___j2s_".concat(counter),r=e.reduce(function(e,n){var r=converToAction(t,n);return refs.splice(refs.indexOf(n),1),e+r},"");return "(function(){ var ".concat(t," = ").concat(n,"; ").concat(r," return ").concat(t,"; }())")}return n}function converToAction(e,n){var t=n.historyRef.indexOf(n.source);if(t<0)return "";for(var r,c=n.historyRef.slice(t),o="",a=0;a-1&&a.length<100)for(var i in nativeFunctions)nativeFunctions[i]===e&&(a=i);return c||o?attachActions(getLocalRefs(e),"(function(){\n var ".concat(r," = ").concat(String(a),";\n ").concat(c,"\n ").concat(o,"\n return ").concat(r,";\n}())")):a}function arrayBufferToString(e,n,t){if(!n.includeBuffers)return "undefined";var r=typedArrayToString(new Int8Array(e),n,t);return "(".concat(r,").buffer")}function dataViewToString(e,n,t){if(!n.includeBuffers)return "undefined";var r=arrayBufferToString(e.buffer,n,t);return "new DataView(".concat(r,", ").concat(e.byteOffset,", ").concat(e.byteLength,")")}function stringify(e,n,t){switch(getInternalType(e)){case "undefined":case "promise":case "generator":return "undefined";case "null":return "null";case "boolean":case "regexp":return String(e);case "string":default:return JSON.stringify(e);case "number":return numberToString(e);case "bigint":return "BigInt(".concat(e,")");case "symbol":return symbolToString(e);case "date":return dateToString(e);case "error":return errorToString(e);case "array":return arrayToString(e,n,t);case "typedarray":return typedArrayToString(e,n,t);case "set":return setToString(e,n,t);case "map":return mapToString(e,n,t);case "object":return objectToString(e,n,t);case "function":case "generatorfunction":return functionToString(e,n,t);case "arraybuffer":return arrayBufferToString(e,n,t);case "dataview":return dataViewToString(e,n,t)}}function stringifyRef(e,n,t){var r=t.references.indexOf(e);if(r<0||"string"==typeof t.references[r]){var c=getInternalType(e),o=t.references.length;switch(t.references.push(e),c){case "object":if(t.nestedObjectsLeft<=0)return "undefined";t.nestedObjectsLeft--;break;case "array":case "typedarray":if(t.nestedArraysLeft<=0)return "undefined";t.nestedArraysLeft--;break;case "function":case "generatorfunction":if(t.nestedFunctionsLeft<=0)return "undefined";t.nestedFunctionsLeft--;}var a=stringify(e,n,t);switch(t.references.splice(o),c){case "object":t.nestedObjectsLeft++;break;case "array":case "typedarray":t.nestedArraysLeft++;break;case "function":case "generatorfunction":t.nestedFunctionsLeft++;}return a}return refs.push({historyRef:t.references.slice(0),source:e}),"null"}function javaScriptToString(e,n){var t={includeFunctionProperties:void 0===(n=n||{}).includeFunctionProperties||n.includeFunctionProperties,includeFunctionPrototype:void 0===n.includeFunctionPrototype||n.includeFunctionPrototype,includeBuffers:void 0===n.includeBuffers||n.includeBuffers,nestedObjectsAmount:void 0===n.nestedObjectsAmount?Number.POSITIVE_INFINITY:n.nestedObjectsAmount,nestedArraysAmount:void 0===n.nestedArraysAmount?Number.POSITIVE_INFINITY:n.nestedArraysAmount,nestedFunctionsAmount:void 0===n.nestedFunctionsAmount?Number.POSITIVE_INFINITY:n.nestedFunctionsAmount};refs=[],counter=0;var r=stringify(e,t,{references:[e],nestedObjectsLeft:t.nestedObjectsAmount,nestedArraysLeft:t.nestedArraysAmount,nestedFunctionsLeft:t.nestedFunctionsAmount});return attachActions(getLocalRefs(e),r)} export { javaScriptToString as default }; //# sourceMappingURL=javascripttostring.es5.js.map diff --git a/dist/javascripttostring.es5.js.map b/dist/javascripttostring.es5.js.map index fe1a120..90489b1 100644 --- a/dist/javascripttostring.es5.js.map +++ b/dist/javascripttostring.es5.js.map @@ -1 +1 @@ -{"version":3,"file":"javascripttostring.es5.js","sources":["../src/javascripttostring.ts"],"sourcesContent":["import getObjectType from \"@lopatnov/get-internal-type\";\r\n\r\nexport interface IJ2SOptions {\r\n includeFunctionProperties?: boolean; // default true\r\n includeFunctionPrototype?: boolean; // default true\r\n includeBuffers?: boolean; // default true\r\n nestedObjectsAmount?: number; // default Number.POSITIVE_INFINITY\r\n nestedArraysAmount?: number; // default Number.POSITIVE_INFINITY\r\n nestedFunctionsAmount?: number; // default Number.POSITIVE_INFINITY\r\n}\r\n\r\ninterface RefInstance {\r\n historyRef: Array,\r\n source: any\r\n}\r\n\r\nvar refs: RefInstance[] = [];\r\nvar counter = 0;\r\n\r\ninterface IJ2SHistory {\r\n references: any[];\r\n nestedObjectsLeft: number;\r\n nestedArraysLeft: number;\r\n nestedFunctionsLeft: number;\r\n}\r\n\r\nfunction fillNativeFunctions(ext: any, obj: any, objName: string, fromPrototype: boolean = true) {\r\n const arrNames = Object.getOwnPropertyNames(fromPrototype ? obj.prototype: obj);\r\n const protoPath = fromPrototype ? '.prototype.' : '.';\r\n for (let name of arrNames) {\r\n if (['caller', 'callee', 'arguments'].indexOf(name) < 0) {\r\n ext[`${objName}${protoPath}${name}`] = fromPrototype ? obj.prototype[name as any] : obj[name as any];\r\n }\r\n }\r\n}\r\n\r\nconst nativeFunctions = (function(){\r\n const functions: any = {};\r\n fillNativeFunctions(functions, Array, 'Array', false);\r\n fillNativeFunctions(functions, Array, 'Array');\r\n fillNativeFunctions(functions, JSON, 'JSON', false);\r\n fillNativeFunctions(functions, Object, 'Object', false);\r\n fillNativeFunctions(functions, Object, 'Object');\r\n fillNativeFunctions(functions, Function, 'Function', false);\r\n fillNativeFunctions(functions, Function, 'Function');\r\n fillNativeFunctions(functions, Date, 'Date', false);\r\n fillNativeFunctions(functions, String, 'String');\r\n functions.Function = Function;\r\n return functions;\r\n}());\r\n\r\nfunction numberToString(value: number): string {\r\n if (Number.isNaN(value)) {\r\n return \"Number.NaN\";\r\n }\r\n switch (value) {\r\n case Number.POSITIVE_INFINITY:\r\n return \"Number.POSITIVE_INFINITY\";\r\n case Number.NEGATIVE_INFINITY:\r\n return \"Number.NEGATIVE_INFINITY\";\r\n case Number.EPSILON:\r\n return \"Number.EPSILON\";\r\n case Number.MAX_SAFE_INTEGER:\r\n return \"Number.MAX_SAFE_INTEGER\";\r\n case Number.MIN_SAFE_INTEGER:\r\n return \"Number.MIN_SAFE_INTEGER\";\r\n case Number.MAX_VALUE:\r\n return \"Number.MAX_VALUE\";\r\n case Number.MIN_VALUE:\r\n return \"Number.MIN_VALUE\";\r\n case Math.PI:\r\n return \"Math.PI\";\r\n case Math.E:\r\n return \"Math.E\";\r\n case Math.LN10:\r\n return \"Math.LN10\";\r\n case Math.LN2:\r\n return \"Math.LN2\";\r\n case Math.LOG10E:\r\n return \"Math.LOG10E\";\r\n case Math.LOG2E:\r\n return \"Math.LOG2E\";\r\n case Math.SQRT1_2:\r\n return \"Math.SQRT1_2\";\r\n case Math.SQRT2:\r\n return \"Math.SQRT2\";\r\n default:\r\n return String(value);\r\n }\r\n}\r\n\r\nfunction symbolToString(value: any): string {\r\n switch (value) {\r\n case Symbol.asyncIterator:\r\n case Symbol.hasInstance:\r\n case Symbol.isConcatSpreadable:\r\n case Symbol.iterator:\r\n case Symbol.match:\r\n case Symbol.prototype:\r\n case Symbol.replace:\r\n case Symbol.search:\r\n case Symbol.species:\r\n case Symbol.split:\r\n case Symbol.toPrimitive:\r\n case Symbol.toStringTag:\r\n case Symbol.unscopables:\r\n return value.description;\r\n default:\r\n let description = value.description ? `\"${value.description}\"` : \"\";\r\n return `Symbol(${description})`;\r\n }\r\n}\r\n\r\nfunction dateToString(value: Date): string {\r\n if (isNaN(value.getTime())) {\r\n return `new Date(${value.toString()})`;\r\n }\r\n return `new Date(${value.toISOString()})`;\r\n}\r\n\r\nfunction errorToString(value: any): string {\r\n let message = JSON.stringify(value.message),\r\n fileName = JSON.stringify(value.fileName),\r\n lineNumber = JSON.stringify(value.lineNumber);\r\n return `new Error(${message}, ${fileName}, ${lineNumber})`;\r\n}\r\n\r\nfunction arrayToString(\r\n value: Array,\r\n options: IJ2SOptions,\r\n history: IJ2SHistory\r\n): string {\r\n if (value.length === 0) return \"[]\";\r\n let arrayValues = value.reduce(\r\n (x1: any, x2: any, index: number) => {\r\n history.references.push(index.toString());\r\n let str = !!x1 ? `${x1}, ` : '';\r\n str += stringifyRef(x2,options,history);\r\n history.references.pop();\r\n return str;\r\n }, '');\r\n return attachActions(getLocalRefs(value), `[${arrayValues}]`);\r\n}\r\n\r\nfunction getLocalRefs(value: any) {\r\n return refs.filter(x => x.source === value)\r\n}\r\n\r\nfunction attachActions(localRefs: RefInstance[], result: string) {\r\n if (localRefs.length > 0) {\r\n counter = (counter++) % Number.MAX_SAFE_INTEGER;\r\n const localName = `___j2s_${counter}`;\r\n const actions = localRefs.reduce((x1: string, x2: RefInstance) => {\r\n const action = converToAction(localName, x2);\r\n refs.splice(refs.indexOf(x2), 1);\r\n return x1 + action;\r\n }, '');\r\n return `(function(){ var ${localName} = ${result}; ${actions} return ${localName}; }())`;\r\n }\r\n return result;\r\n}\r\n\r\nfunction converToAction(localName: string, r: RefInstance) {\r\n const destIndex = r.historyRef.indexOf(r.source);\r\n if (destIndex < 0) {\r\n return '';\r\n }\r\n\r\n const dest = r.historyRef.slice(destIndex);\r\n let sourceObj: any;\r\n let path = '';\r\n for (let i = 0; i < dest.length; i++) {\r\n const destObj = dest[i];\r\n if (destObj === r.source) {\r\n path = localName;\r\n sourceObj = r.source;\r\n } else if (typeof destObj === 'string') {\r\n path += `['${destObj.replace(/'/gi, '\\\\\\'')}']`;\r\n sourceObj = sourceObj[destObj];\r\n } else if (destObj !== sourceObj) {\r\n return '';\r\n }\r\n }\r\n\r\n return `${path} = ${localName}; `;\r\n}\r\n\r\nfunction typedArrayToString(\r\n value: any,\r\n options: IJ2SOptions,\r\n history: IJ2SHistory\r\n): string {\r\n let arr = Array.from(value),\r\n arrString = arrayToString(arr, options, history),\r\n constructorName = value.constructor.name;\r\n return `new ${constructorName}(${arrString})`;\r\n}\r\n\r\nfunction setToString(\r\n value: Set,\r\n options: IJ2SOptions,\r\n history: IJ2SHistory\r\n): string {\r\n let setValues: string[] = [];\r\n\r\n value.forEach((value1: any, value2: any, set: Set) => {\r\n setValues.push(stringifyRef(value2, options, history));\r\n });\r\n\r\n if (setValues.length === 0) return \"new Set()\";\r\n\r\n return `new Set([${setValues.join(\", \")}])`;\r\n}\r\n\r\nfunction mapToString(\r\n value: Map,\r\n options: IJ2SOptions,\r\n history: IJ2SHistory\r\n): string {\r\n let mapValues: string[] = [];\r\n\r\n value.forEach((indexValue: any, key: any) => {\r\n mapValues.push(\r\n `[${stringifyRef(key, options, history)}, ${stringifyRef(\r\n indexValue,\r\n options,\r\n history\r\n )}]`\r\n );\r\n });\r\n\r\n if (mapValues.length === 0) return \"new Map()\";\r\n\r\n return `new Map([${mapValues.join(\", \")}])`;\r\n}\r\n\r\nfunction objectToString(\r\n value: any,\r\n options: IJ2SOptions,\r\n history: IJ2SHistory\r\n): string {\r\n let objectValues = [];\r\n\r\n for (let propertyName in value) {\r\n if (value.hasOwnProperty(propertyName)) {\r\n history.references.push(propertyName);\r\n let propertyValue = stringifyRef(value[propertyName], options, history);\r\n history.references.pop();\r\n if (propertyValue !== \"undefined\") {\r\n if (!(/^[a-zA-Z]+$/).test(propertyName)) {\r\n propertyName = `\"${propertyName}\"`;\r\n }\r\n objectValues.push(`${propertyName}: ${propertyValue}`);\r\n }\r\n }\r\n }\r\n\r\n if (objectValues.length === 0) return \"{}\";\r\n\r\n return attachActions(getLocalRefs(value), `{\\n${objectValues.join(\",\\n\")}\\n}`);\r\n}\r\n\r\nfunction functionPropertiesToString(\r\n functionName: string,\r\n value: any,\r\n options: IJ2SOptions,\r\n history: IJ2SHistory\r\n): string {\r\n let result = \"\";\r\n for (let propertyName in value) {\r\n if (value.hasOwnProperty(propertyName)) {\r\n history.references.push(propertyName);\r\n let propertyValue = stringifyRef(value[propertyName], options, history);\r\n history.references.pop();\r\n if (propertyValue !== \"undefined\") {\r\n result += `${functionName}.${propertyName} = ${propertyValue};\\n`;\r\n }\r\n }\r\n }\r\n return result;\r\n}\r\n\r\nfunction functionToString(\r\n value: any,\r\n options: IJ2SOptions,\r\n history: IJ2SHistory\r\n): string {\r\n let functionName = value.name || \"anonymousFunction\";\r\n let functionObject = options.includeFunctionProperties\r\n ? functionPropertiesToString(functionName, value, options, history)\r\n : \"\";\r\n history.references.push('prototype');\r\n let functionPrototype = options.includeFunctionPrototype\r\n ? functionPropertiesToString(\r\n `${functionName}.prototype`,\r\n value.prototype,\r\n options,\r\n history\r\n )\r\n : \"\";\r\n history.references.pop();\r\n\r\n let functionStr = String(value);\r\n if (functionStr.indexOf('[native code]') > -1 && functionStr.length < 100) {\r\n for (const nfName in nativeFunctions) {\r\n if (nativeFunctions[nfName] === value) {\r\n functionStr = nfName\r\n }\r\n }\r\n }\r\n if (!functionObject && !functionPrototype) {\r\n return functionStr;\r\n }\r\n\r\n return attachActions(getLocalRefs(value), `(function(){\\n var ${functionName} = ${String(\r\n functionStr\r\n )};\\n ${functionObject}\\n ${functionPrototype}\\n return ${functionName};\\n}())`);\r\n}\r\n\r\nfunction arrayBufferToString(\r\n value: ArrayBuffer,\r\n options: IJ2SOptions,\r\n history: IJ2SHistory\r\n): string {\r\n if (!options.includeBuffers) return \"undefined\";\r\n let str = typedArrayToString(new Int8Array(value), options, history);\r\n return `(${str}).buffer`;\r\n}\r\n\r\nfunction dataViewToString(\r\n value: DataView,\r\n options: IJ2SOptions,\r\n history: IJ2SHistory\r\n): string {\r\n if (!options.includeBuffers) return \"undefined\";\r\n let bufString = arrayBufferToString(value.buffer, options, history);\r\n return `new DataView(${bufString}, ${value.byteOffset}, ${value.byteLength})`;\r\n}\r\n\r\n/**\r\n * Converts to string the value, if it wasn't before\r\n * @param value the value, that converts to string\r\n * @param references the references to stringified objects\r\n */\r\nfunction stringify(\r\n value: any,\r\n options: IJ2SOptions,\r\n history: IJ2SHistory\r\n): string {\r\n switch (getObjectType(value)) {\r\n case \"undefined\":\r\n return \"undefined\";\r\n case \"null\":\r\n return \"null\";\r\n case \"boolean\":\r\n return String(value);\r\n case \"regexp\":\r\n return String(value);\r\n case \"string\":\r\n return JSON.stringify(value);\r\n case \"number\":\r\n return numberToString(value);\r\n case \"bigint\":\r\n return `BigInt(${value})`;\r\n case \"symbol\":\r\n return symbolToString(value);\r\n case \"date\":\r\n return dateToString(value);\r\n case \"error\":\r\n return errorToString(value);\r\n case \"array\":\r\n return arrayToString(value, options, history);\r\n case \"typedarray\":\r\n return typedArrayToString(value, options, history);\r\n case \"set\":\r\n return setToString(value, options, history);\r\n case \"map\":\r\n return mapToString(value, options, history);\r\n case \"object\":\r\n return objectToString(value, options, history);\r\n case \"function\":\r\n case \"generatorfunction\":\r\n return functionToString(value, options, history);\r\n case \"arraybuffer\":\r\n return arrayBufferToString(value, options, history);\r\n case \"dataview\":\r\n return dataViewToString(value, options, history);\r\n case \"promise\":\r\n case \"generator\":\r\n return \"undefined\";\r\n default:\r\n return JSON.stringify(value);\r\n }\r\n}\r\n\r\n/**\r\n * Stringify the value, if it wasn't before\r\n * @param value the value, that converts to string\r\n * @param references the references to stringified objects\r\n */\r\nfunction stringifyRef(\r\n value: any,\r\n options: IJ2SOptions,\r\n history: IJ2SHistory\r\n): string {\r\n const index = history.references.indexOf(value);\r\n if (index < 0 || typeof(history.references[index]) === 'string') {\r\n let objectType = getObjectType(value);\r\n let referencesLength = history.references.length;\r\n history.references.push(value);\r\n switch (objectType) {\r\n case \"object\":\r\n if (history.nestedObjectsLeft <= 0) return \"undefined\";\r\n history.nestedObjectsLeft--;\r\n break;\r\n case \"array\":\r\n case \"typedarray\":\r\n if (history.nestedArraysLeft <= 0) return \"undefined\";\r\n history.nestedArraysLeft--;\r\n break;\r\n case \"function\":\r\n case \"generatorfunction\":\r\n if (history.nestedFunctionsLeft <= 0) return \"undefined\";\r\n history.nestedFunctionsLeft--;\r\n break;\r\n }\r\n\r\n let refString = stringify(value, options, history);\r\n\r\n history.references.splice(referencesLength);\r\n switch (objectType) {\r\n case \"object\":\r\n history.nestedObjectsLeft++;\r\n break;\r\n case \"array\":\r\n case \"typedarray\":\r\n history.nestedArraysLeft++;\r\n break;\r\n case \"function\":\r\n case \"generatorfunction\":\r\n history.nestedFunctionsLeft++;\r\n break;\r\n }\r\n\r\n return refString;\r\n } else {\r\n refs.push({\r\n historyRef: history.references.slice(0),\r\n source: value\r\n })\r\n }\r\n return \"null\";\r\n}\r\n\r\n/**\r\n * Converts JavaScript value to string\r\n * @param value the value of any type\r\n * @param options [optional] The options of conversion\r\n */\r\nfunction javaScriptToString(value: any, options?: IJ2SOptions): string {\r\n options = options || {};\r\n let concreteOptions: IJ2SOptions = {\r\n includeFunctionProperties:\r\n options.includeFunctionProperties === undefined\r\n ? true\r\n : options.includeFunctionProperties,\r\n includeFunctionPrototype:\r\n options.includeFunctionPrototype === undefined\r\n ? true\r\n : options.includeFunctionPrototype,\r\n includeBuffers:\r\n options.includeBuffers === undefined ? true : options.includeBuffers,\r\n nestedObjectsAmount:\r\n options.nestedObjectsAmount === undefined\r\n ? Number.POSITIVE_INFINITY\r\n : options.nestedObjectsAmount,\r\n nestedArraysAmount:\r\n options.nestedArraysAmount === undefined\r\n ? Number.POSITIVE_INFINITY\r\n : options.nestedArraysAmount,\r\n nestedFunctionsAmount:\r\n options.nestedFunctionsAmount === undefined\r\n ? Number.POSITIVE_INFINITY\r\n : options.nestedFunctionsAmount\r\n };\r\n\r\n return stringify(value, concreteOptions, {\r\n references: [value],\r\n nestedObjectsLeft: concreteOptions.nestedObjectsAmount as number,\r\n nestedArraysLeft: concreteOptions.nestedArraysAmount as number,\r\n nestedFunctionsLeft: concreteOptions.nestedFunctionsAmount as number\r\n });\r\n}\r\n\r\nexport default javaScriptToString;\r\n"],"names":["refs","counter","fillNativeFunctions","ext","obj","objName","fromPrototype","protoPath","arrNames_1","Object","getOwnPropertyNames","prototype","_i","name_1","indexOf","nativeFunctions","functions","Array","JSON","Function","Date","String","numberToString","value","Number","isNaN","POSITIVE_INFINITY","NEGATIVE_INFINITY","EPSILON","MAX_SAFE_INTEGER","MIN_SAFE_INTEGER","MAX_VALUE","MIN_VALUE","Math","PI","E","LN10","LN2","LOG10E","LOG2E","SQRT1_2","SQRT2","symbolToString","Symbol","asyncIterator","hasInstance","isConcatSpreadable","iterator","match","replace","search","species","split","toPrimitive","toStringTag","unscopables","description","dateToString","getTime","toString","toISOString","errorToString","stringify","message","fileName","lineNumber","arrayToString","options","history","length","arrayValues","reduce","x1","x2","index","references","push","str","stringifyRef","pop","attachActions","getLocalRefs","filter","x","source","localRefs","result","localName_1","actions","action","converToAction","splice","localName","r","destIndex","historyRef","sourceObj","dest","slice","path","i","destObj","typedArrayToString","arrString","from","constructor","name","setToString","setValues","forEach","value1","value2","set","join","mapToString","mapValues","indexValue","key","objectToString","objectValues","propertyName","hasOwnProperty","propertyValue","test","functionPropertiesToString","functionName","functionToString","functionObject","includeFunctionProperties","functionPrototype","includeFunctionPrototype","functionStr","nfName","arrayBufferToString","includeBuffers","Int8Array","dataViewToString","buffer","byteOffset","byteLength","getObjectType","objectType","referencesLength","nestedObjectsLeft","nestedArraysLeft","nestedFunctionsLeft","refString","javaScriptToString","concreteOptions","undefined","nestedObjectsAmount","nestedArraysAmount","nestedFunctionsAmount"],"mappings":"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"} \ No newline at end of file +{"version":3,"file":"javascripttostring.es5.js","sources":["../node_modules/@lopatnov/get-internal-type/dist/get-internal-type.es.js","../src/javascripttostring.ts"],"sourcesContent":["var types = {}, typesToString = types.toString, buildInList = [\r\n \"Boolean\",\r\n \"Number\",\r\n \"String\",\r\n \"Function\",\r\n \"Array\",\r\n \"Date\",\r\n \"RegExp\",\r\n \"Object\",\r\n \"Error\",\r\n \"Promise\",\r\n \"Generator\",\r\n \"GeneratorFunction\",\r\n \"ArrayBuffer\",\r\n \"DataView\"\r\n], typedArrays = [\r\n \"Int8Array\",\r\n \"Uint8Array\",\r\n \"Uint8ClampedArray\",\r\n \"Int16Array\",\r\n \"Uint16Array\",\r\n \"Int32Array\",\r\n \"Uint32Array\",\r\n \"Float32Array\",\r\n \"Float64Array\",\r\n \"BigInt64Array\",\r\n \"BigUint64Array\"\r\n], maps = [\"Map\", \"WeakMap\"], sets = [\"Set\", \"WeakSet\"];\r\nbuildInList.forEach(function (name) {\r\n types[\"[object \" + name + \"]\"] = name.toLowerCase();\r\n});\r\nmaps.forEach(function (name) {\r\n types[\"[object \" + name + \"]\"] = \"map\";\r\n});\r\nsets.forEach(function (name) {\r\n types[\"[object \" + name + \"]\"] = \"set\";\r\n});\r\ntypedArrays.forEach(function (name) {\r\n types[\"[object \" + name + \"]\"] = \"typedarray\";\r\n});\r\nfunction getInternalType(obj) {\r\n return obj == null\r\n ? obj + \"\"\r\n : typeof obj === \"object\" || typeof obj === \"function\"\r\n ? types[typesToString.call(obj)] || \"object\"\r\n : typeof obj;\r\n}\n\nexport default getInternalType;\n//# sourceMappingURL=get-internal-type.es.js.map\n",null],"names":["types","typesToString","toString","buildInList","typedArrays","maps","sets","getInternalType","obj","call","forEach","name","toLowerCase","refs","counter","fillNativeFunctions","ext","objName","fromPrototype","protoPath","_i","arrNames_1","Object","getOwnPropertyNames","prototype","name_1","indexOf","concat","nativeFunctions","functions","Array","JSON","Function","Date","String","numberToString","value","Number","isNaN","POSITIVE_INFINITY","NEGATIVE_INFINITY","EPSILON","MAX_SAFE_INTEGER","MIN_SAFE_INTEGER","MAX_VALUE","MIN_VALUE","Math","PI","E","LN10","LN2","LOG10E","LOG2E","SQRT1_2","SQRT2","symbolToString","Symbol","asyncIterator","hasInstance","isConcatSpreadable","iterator","match","replace","search","species","split","toPrimitive","toStringTag","unscopables","description","dateToString","getTime","toISOString","errorToString","message","stringify","fileName","lineNumber","arrayToString","options","history","length","arrayValues","reduce","x1","x2","index","references","push","str","stringifyRef","pop","attachActions","getLocalRefs","filter","x","source","localRefs","result","localName_1","actions","action","converToAction","splice","localName","r","destIndex","historyRef","sourceObj","dest","slice","path","i","destObj","typedArrayToString","arrString","from","constructorName","constructor","setToString","setValues","value1","value2","set","join","mapToString","mapValues","indexValue","key","objectToString","objectValues","propertyName","hasOwnProperty","propertyValue","test","functionPropertiesToString","functionName","functionToString","functionObject","includeFunctionProperties","functionPrototype","includeFunctionPrototype","functionStr","nfName","arrayBufferToString","includeBuffers","Int8Array","dataViewToString","bufString","buffer","byteOffset","byteLength","getObjectType","objectType","referencesLength","nestedObjectsLeft","nestedArraysLeft","nestedFunctionsLeft","refString","javaScriptToString","concreteOptions","undefined","nestedObjectsAmount","nestedArraysAmount","nestedFunctionsAmount"],"mappings":"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","x_google_ignoreList":[0]} \ No newline at end of file diff --git a/dist/javascripttostring.umd.js b/dist/javascripttostring.umd.js index c483ed6..e8fbfac 100644 --- a/dist/javascripttostring.umd.js +++ b/dist/javascripttostring.umd.js @@ -4,9 +4,9 @@ (global = typeof globalThis !== 'undefined' ? globalThis : global || self, global.javaScriptToString = factory()); })(this, (function () { 'use strict'; - var types={},typesToString=types.toString,buildInList=["Boolean","Number","String","Function","Array","Date","RegExp","Object","Error","Promise","Generator","GeneratorFunction","ArrayBuffer","DataView"],typedArrays=["Int8Array","Uint8Array","Uint8ClampedArray","Int16Array","Uint16Array","Int32Array","Uint32Array","Float32Array","Float64Array","BigInt64Array","BigUint64Array"],maps=["Map","WeakMap"],sets=["Set","WeakSet"];function getInternalType(t){return null==t?t+"":"object"==typeof t||"function"==typeof t?types[typesToString.call(t)]||"object":typeof t}buildInList.forEach((function(t){types["[object "+t+"]"]=t.toLowerCase();})),maps.forEach((function(t){types["[object "+t+"]"]="map";})),sets.forEach((function(t){types["[object "+t+"]"]="set";})),typedArrays.forEach((function(t){types["[object "+t+"]"]="typedarray";})); + var types={},typesToString=types.toString,buildInList=["Boolean","Number","String","Function","Array","Date","RegExp","Object","Error","Promise","Generator","GeneratorFunction","ArrayBuffer","DataView"],typedArrays=["Int8Array","Uint8Array","Uint8ClampedArray","Int16Array","Uint16Array","Int32Array","Uint32Array","Float32Array","Float64Array","BigInt64Array","BigUint64Array"],maps=["Map","WeakMap"],sets=["Set","WeakSet"];function getInternalType(t){return null==t?t+"":"object"==typeof t||"function"==typeof t?types[typesToString.call(t)]||"object":typeof t}buildInList.forEach(function(t){types["[object "+t+"]"]=t.toLowerCase();}),maps.forEach(function(t){types["[object "+t+"]"]="map";}),sets.forEach(function(t){types["[object "+t+"]"]="set";}),typedArrays.forEach(function(t){types["[object "+t+"]"]="typedarray";}); - var refs=[],counter=0;function fillNativeFunctions(e,r,n,t){void 0===t&&(t=!0);for(var i=t?".prototype.":".",o=0,a=Object.getOwnPropertyNames(t?r.prototype:r);o0){var n="___j2s_"+(counter=counter++%Number.MAX_SAFE_INTEGER),t=e.reduce((function(e,r){var t=converToAction(n,r);return refs.splice(refs.indexOf(r),1),e+t}),"");return "(function(){ var "+n+" = "+r+"; "+t+" return "+n+"; }())"}return r}function converToAction(e,r){var n=r.historyRef.indexOf(r.source);if(n<0)return "";for(var t,i=r.historyRef.slice(n),o="",a=0;a-1&&a.length<100)for(var u in nativeFunctions)nativeFunctions[u]===e&&(a=u);return i||o?attachActions(getLocalRefs(e),"(function(){\n var "+t+" = "+String(a)+";\n "+i+"\n "+o+"\n return "+t+";\n}())"):a}function arrayBufferToString(e,r,n){return r.includeBuffers?"("+typedArrayToString(new Int8Array(e),r,n)+").buffer":"undefined"}function dataViewToString(e,r,n){return r.includeBuffers?"new DataView("+arrayBufferToString(e.buffer,r,n)+", "+e.byteOffset+", "+e.byteLength+")":"undefined"}function stringify(e,r,n){switch(getInternalType(e)){case"undefined":case"promise":case"generator":return "undefined";case"null":return "null";case"boolean":case"regexp":return String(e);default:return JSON.stringify(e);case"number":return numberToString(e);case"bigint":return "BigInt("+e+")";case"symbol":return symbolToString(e);case"date":return dateToString(e);case"error":return errorToString(e);case"array":return arrayToString(e,r,n);case"typedarray":return typedArrayToString(e,r,n);case"set":return setToString(e,r,n);case"map":return mapToString(e,r,n);case"object":return objectToString(e,r,n);case"function":case"generatorfunction":return functionToString(e,r,n);case"arraybuffer":return arrayBufferToString(e,r,n);case"dataview":return dataViewToString(e,r,n)}}function stringifyRef(e,r,n){var t=n.references.indexOf(e);if(t<0||"string"==typeof n.references[t]){var i=getInternalType(e),o=n.references.length;switch(n.references.push(e),i){case"object":if(n.nestedObjectsLeft<=0)return "undefined";n.nestedObjectsLeft--;break;case"array":case"typedarray":if(n.nestedArraysLeft<=0)return "undefined";n.nestedArraysLeft--;break;case"function":case"generatorfunction":if(n.nestedFunctionsLeft<=0)return "undefined";n.nestedFunctionsLeft--;}var a=stringify(e,r,n);switch(n.references.splice(o),i){case"object":n.nestedObjectsLeft++;break;case"array":case"typedarray":n.nestedArraysLeft++;break;case"function":case"generatorfunction":n.nestedFunctionsLeft++;}return a}return refs.push({historyRef:n.references.slice(0),source:e}),"null"}function javaScriptToString(e,r){var n={includeFunctionProperties:void 0===(r=r||{}).includeFunctionProperties||r.includeFunctionProperties,includeFunctionPrototype:void 0===r.includeFunctionPrototype||r.includeFunctionPrototype,includeBuffers:void 0===r.includeBuffers||r.includeBuffers,nestedObjectsAmount:void 0===r.nestedObjectsAmount?Number.POSITIVE_INFINITY:r.nestedObjectsAmount,nestedArraysAmount:void 0===r.nestedArraysAmount?Number.POSITIVE_INFINITY:r.nestedArraysAmount,nestedFunctionsAmount:void 0===r.nestedFunctionsAmount?Number.POSITIVE_INFINITY:r.nestedFunctionsAmount};return stringify(e,n,{references:[e],nestedObjectsLeft:n.nestedObjectsAmount,nestedArraysLeft:n.nestedArraysAmount,nestedFunctionsLeft:n.nestedFunctionsAmount})} + var refs=[],counter=0;function fillNativeFunctions(e,n,t,r){ void 0===r&&(r=true);for(var c=r?".prototype.":".",o=0,a=Object.getOwnPropertyNames(r?n.prototype:n);o0){counter=counter++%Number.MAX_SAFE_INTEGER;var t="___j2s_".concat(counter),r=e.reduce(function(e,n){var r=converToAction(t,n);return refs.splice(refs.indexOf(n),1),e+r},"");return "(function(){ var ".concat(t," = ").concat(n,"; ").concat(r," return ").concat(t,"; }())")}return n}function converToAction(e,n){var t=n.historyRef.indexOf(n.source);if(t<0)return "";for(var r,c=n.historyRef.slice(t),o="",a=0;a-1&&a.length<100)for(var i in nativeFunctions)nativeFunctions[i]===e&&(a=i);return c||o?attachActions(getLocalRefs(e),"(function(){\n var ".concat(r," = ").concat(String(a),";\n ").concat(c,"\n ").concat(o,"\n return ").concat(r,";\n}())")):a}function arrayBufferToString(e,n,t){if(!n.includeBuffers)return "undefined";var r=typedArrayToString(new Int8Array(e),n,t);return "(".concat(r,").buffer")}function dataViewToString(e,n,t){if(!n.includeBuffers)return "undefined";var r=arrayBufferToString(e.buffer,n,t);return "new DataView(".concat(r,", ").concat(e.byteOffset,", ").concat(e.byteLength,")")}function stringify(e,n,t){switch(getInternalType(e)){case "undefined":case "promise":case "generator":return "undefined";case "null":return "null";case "boolean":case "regexp":return String(e);case "string":default:return JSON.stringify(e);case "number":return numberToString(e);case "bigint":return "BigInt(".concat(e,")");case "symbol":return symbolToString(e);case "date":return dateToString(e);case "error":return errorToString(e);case "array":return arrayToString(e,n,t);case "typedarray":return typedArrayToString(e,n,t);case "set":return setToString(e,n,t);case "map":return mapToString(e,n,t);case "object":return objectToString(e,n,t);case "function":case "generatorfunction":return functionToString(e,n,t);case "arraybuffer":return arrayBufferToString(e,n,t);case "dataview":return dataViewToString(e,n,t)}}function stringifyRef(e,n,t){var r=t.references.indexOf(e);if(r<0||"string"==typeof t.references[r]){var c=getInternalType(e),o=t.references.length;switch(t.references.push(e),c){case "object":if(t.nestedObjectsLeft<=0)return "undefined";t.nestedObjectsLeft--;break;case "array":case "typedarray":if(t.nestedArraysLeft<=0)return "undefined";t.nestedArraysLeft--;break;case "function":case "generatorfunction":if(t.nestedFunctionsLeft<=0)return "undefined";t.nestedFunctionsLeft--;}var a=stringify(e,n,t);switch(t.references.splice(o),c){case "object":t.nestedObjectsLeft++;break;case "array":case "typedarray":t.nestedArraysLeft++;break;case "function":case "generatorfunction":t.nestedFunctionsLeft++;}return a}return refs.push({historyRef:t.references.slice(0),source:e}),"null"}function javaScriptToString(e,n){var t={includeFunctionProperties:void 0===(n=n||{}).includeFunctionProperties||n.includeFunctionProperties,includeFunctionPrototype:void 0===n.includeFunctionPrototype||n.includeFunctionPrototype,includeBuffers:void 0===n.includeBuffers||n.includeBuffers,nestedObjectsAmount:void 0===n.nestedObjectsAmount?Number.POSITIVE_INFINITY:n.nestedObjectsAmount,nestedArraysAmount:void 0===n.nestedArraysAmount?Number.POSITIVE_INFINITY:n.nestedArraysAmount,nestedFunctionsAmount:void 0===n.nestedFunctionsAmount?Number.POSITIVE_INFINITY:n.nestedFunctionsAmount};refs=[],counter=0;var r=stringify(e,t,{references:[e],nestedObjectsLeft:t.nestedObjectsAmount,nestedArraysLeft:t.nestedArraysAmount,nestedFunctionsLeft:t.nestedFunctionsAmount});return attachActions(getLocalRefs(e),r)} return javaScriptToString; diff --git a/dist/javascripttostring.umd.js.map b/dist/javascripttostring.umd.js.map index 8c2d484..4b270d5 100644 --- a/dist/javascripttostring.umd.js.map +++ b/dist/javascripttostring.umd.js.map @@ -1 +1 @@ -{"version":3,"file":"javascripttostring.umd.js","sources":["../src/javascripttostring.ts"],"sourcesContent":["import getObjectType from \"@lopatnov/get-internal-type\";\r\n\r\nexport interface IJ2SOptions {\r\n includeFunctionProperties?: boolean; // default true\r\n includeFunctionPrototype?: boolean; // default true\r\n includeBuffers?: boolean; // default true\r\n nestedObjectsAmount?: number; // default Number.POSITIVE_INFINITY\r\n nestedArraysAmount?: number; // default Number.POSITIVE_INFINITY\r\n nestedFunctionsAmount?: number; // default Number.POSITIVE_INFINITY\r\n}\r\n\r\ninterface RefInstance {\r\n historyRef: Array,\r\n source: any\r\n}\r\n\r\nvar refs: RefInstance[] = [];\r\nvar counter = 0;\r\n\r\ninterface IJ2SHistory {\r\n references: any[];\r\n nestedObjectsLeft: number;\r\n nestedArraysLeft: number;\r\n nestedFunctionsLeft: number;\r\n}\r\n\r\nfunction fillNativeFunctions(ext: any, obj: any, objName: string, fromPrototype: boolean = true) {\r\n const arrNames = Object.getOwnPropertyNames(fromPrototype ? obj.prototype: obj);\r\n const protoPath = fromPrototype ? '.prototype.' : '.';\r\n for (let name of arrNames) {\r\n if (['caller', 'callee', 'arguments'].indexOf(name) < 0) {\r\n ext[`${objName}${protoPath}${name}`] = fromPrototype ? obj.prototype[name as any] : obj[name as any];\r\n }\r\n }\r\n}\r\n\r\nconst nativeFunctions = (function(){\r\n const functions: any = {};\r\n fillNativeFunctions(functions, Array, 'Array', false);\r\n fillNativeFunctions(functions, Array, 'Array');\r\n fillNativeFunctions(functions, JSON, 'JSON', false);\r\n fillNativeFunctions(functions, Object, 'Object', false);\r\n fillNativeFunctions(functions, Object, 'Object');\r\n fillNativeFunctions(functions, Function, 'Function', false);\r\n fillNativeFunctions(functions, Function, 'Function');\r\n fillNativeFunctions(functions, Date, 'Date', false);\r\n fillNativeFunctions(functions, String, 'String');\r\n functions.Function = Function;\r\n return functions;\r\n}());\r\n\r\nfunction numberToString(value: number): string {\r\n if (Number.isNaN(value)) {\r\n return \"Number.NaN\";\r\n }\r\n switch (value) {\r\n case Number.POSITIVE_INFINITY:\r\n return \"Number.POSITIVE_INFINITY\";\r\n case Number.NEGATIVE_INFINITY:\r\n return \"Number.NEGATIVE_INFINITY\";\r\n case Number.EPSILON:\r\n return \"Number.EPSILON\";\r\n case Number.MAX_SAFE_INTEGER:\r\n return \"Number.MAX_SAFE_INTEGER\";\r\n case Number.MIN_SAFE_INTEGER:\r\n return \"Number.MIN_SAFE_INTEGER\";\r\n case Number.MAX_VALUE:\r\n return \"Number.MAX_VALUE\";\r\n case Number.MIN_VALUE:\r\n return \"Number.MIN_VALUE\";\r\n case Math.PI:\r\n return \"Math.PI\";\r\n case Math.E:\r\n return \"Math.E\";\r\n case Math.LN10:\r\n return \"Math.LN10\";\r\n case Math.LN2:\r\n return \"Math.LN2\";\r\n case Math.LOG10E:\r\n return \"Math.LOG10E\";\r\n case Math.LOG2E:\r\n return \"Math.LOG2E\";\r\n case Math.SQRT1_2:\r\n return \"Math.SQRT1_2\";\r\n case Math.SQRT2:\r\n return \"Math.SQRT2\";\r\n default:\r\n return String(value);\r\n }\r\n}\r\n\r\nfunction symbolToString(value: any): string {\r\n switch (value) {\r\n case Symbol.asyncIterator:\r\n case Symbol.hasInstance:\r\n case Symbol.isConcatSpreadable:\r\n case Symbol.iterator:\r\n case Symbol.match:\r\n case Symbol.prototype:\r\n case Symbol.replace:\r\n case Symbol.search:\r\n case Symbol.species:\r\n case Symbol.split:\r\n case Symbol.toPrimitive:\r\n case Symbol.toStringTag:\r\n case Symbol.unscopables:\r\n return value.description;\r\n default:\r\n let description = value.description ? `\"${value.description}\"` : \"\";\r\n return `Symbol(${description})`;\r\n }\r\n}\r\n\r\nfunction dateToString(value: Date): string {\r\n if (isNaN(value.getTime())) {\r\n return `new Date(${value.toString()})`;\r\n }\r\n return `new Date(${value.toISOString()})`;\r\n}\r\n\r\nfunction errorToString(value: any): string {\r\n let message = JSON.stringify(value.message),\r\n fileName = JSON.stringify(value.fileName),\r\n lineNumber = JSON.stringify(value.lineNumber);\r\n return `new Error(${message}, ${fileName}, ${lineNumber})`;\r\n}\r\n\r\nfunction arrayToString(\r\n value: Array,\r\n options: IJ2SOptions,\r\n history: IJ2SHistory\r\n): string {\r\n if (value.length === 0) return \"[]\";\r\n let arrayValues = value.reduce(\r\n (x1: any, x2: any, index: number) => {\r\n history.references.push(index.toString());\r\n let str = !!x1 ? `${x1}, ` : '';\r\n str += stringifyRef(x2,options,history);\r\n history.references.pop();\r\n return str;\r\n }, '');\r\n return attachActions(getLocalRefs(value), `[${arrayValues}]`);\r\n}\r\n\r\nfunction getLocalRefs(value: any) {\r\n return refs.filter(x => x.source === value)\r\n}\r\n\r\nfunction attachActions(localRefs: RefInstance[], result: string) {\r\n if (localRefs.length > 0) {\r\n counter = (counter++) % Number.MAX_SAFE_INTEGER;\r\n const localName = `___j2s_${counter}`;\r\n const actions = localRefs.reduce((x1: string, x2: RefInstance) => {\r\n const action = converToAction(localName, x2);\r\n refs.splice(refs.indexOf(x2), 1);\r\n return x1 + action;\r\n }, '');\r\n return `(function(){ var ${localName} = ${result}; ${actions} return ${localName}; }())`;\r\n }\r\n return result;\r\n}\r\n\r\nfunction converToAction(localName: string, r: RefInstance) {\r\n const destIndex = r.historyRef.indexOf(r.source);\r\n if (destIndex < 0) {\r\n return '';\r\n }\r\n\r\n const dest = r.historyRef.slice(destIndex);\r\n let sourceObj: any;\r\n let path = '';\r\n for (let i = 0; i < dest.length; i++) {\r\n const destObj = dest[i];\r\n if (destObj === r.source) {\r\n path = localName;\r\n sourceObj = r.source;\r\n } else if (typeof destObj === 'string') {\r\n path += `['${destObj.replace(/'/gi, '\\\\\\'')}']`;\r\n sourceObj = sourceObj[destObj];\r\n } else if (destObj !== sourceObj) {\r\n return '';\r\n }\r\n }\r\n\r\n return `${path} = ${localName}; `;\r\n}\r\n\r\nfunction typedArrayToString(\r\n value: any,\r\n options: IJ2SOptions,\r\n history: IJ2SHistory\r\n): string {\r\n let arr = Array.from(value),\r\n arrString = arrayToString(arr, options, history),\r\n constructorName = value.constructor.name;\r\n return `new ${constructorName}(${arrString})`;\r\n}\r\n\r\nfunction setToString(\r\n value: Set,\r\n options: IJ2SOptions,\r\n history: IJ2SHistory\r\n): string {\r\n let setValues: string[] = [];\r\n\r\n value.forEach((value1: any, value2: any, set: Set) => {\r\n setValues.push(stringifyRef(value2, options, history));\r\n });\r\n\r\n if (setValues.length === 0) return \"new Set()\";\r\n\r\n return `new Set([${setValues.join(\", \")}])`;\r\n}\r\n\r\nfunction mapToString(\r\n value: Map,\r\n options: IJ2SOptions,\r\n history: IJ2SHistory\r\n): string {\r\n let mapValues: string[] = [];\r\n\r\n value.forEach((indexValue: any, key: any) => {\r\n mapValues.push(\r\n `[${stringifyRef(key, options, history)}, ${stringifyRef(\r\n indexValue,\r\n options,\r\n history\r\n )}]`\r\n );\r\n });\r\n\r\n if (mapValues.length === 0) return \"new Map()\";\r\n\r\n return `new Map([${mapValues.join(\", \")}])`;\r\n}\r\n\r\nfunction objectToString(\r\n value: any,\r\n options: IJ2SOptions,\r\n history: IJ2SHistory\r\n): string {\r\n let objectValues = [];\r\n\r\n for (let propertyName in value) {\r\n if (value.hasOwnProperty(propertyName)) {\r\n history.references.push(propertyName);\r\n let propertyValue = stringifyRef(value[propertyName], options, history);\r\n history.references.pop();\r\n if (propertyValue !== \"undefined\") {\r\n if (!(/^[a-zA-Z]+$/).test(propertyName)) {\r\n propertyName = `\"${propertyName}\"`;\r\n }\r\n objectValues.push(`${propertyName}: ${propertyValue}`);\r\n }\r\n }\r\n }\r\n\r\n if (objectValues.length === 0) return \"{}\";\r\n\r\n return attachActions(getLocalRefs(value), `{\\n${objectValues.join(\",\\n\")}\\n}`);\r\n}\r\n\r\nfunction functionPropertiesToString(\r\n functionName: string,\r\n value: any,\r\n options: IJ2SOptions,\r\n history: IJ2SHistory\r\n): string {\r\n let result = \"\";\r\n for (let propertyName in value) {\r\n if (value.hasOwnProperty(propertyName)) {\r\n history.references.push(propertyName);\r\n let propertyValue = stringifyRef(value[propertyName], options, history);\r\n history.references.pop();\r\n if (propertyValue !== \"undefined\") {\r\n result += `${functionName}.${propertyName} = ${propertyValue};\\n`;\r\n }\r\n }\r\n }\r\n return result;\r\n}\r\n\r\nfunction functionToString(\r\n value: any,\r\n options: IJ2SOptions,\r\n history: IJ2SHistory\r\n): string {\r\n let functionName = value.name || \"anonymousFunction\";\r\n let functionObject = options.includeFunctionProperties\r\n ? functionPropertiesToString(functionName, value, options, history)\r\n : \"\";\r\n history.references.push('prototype');\r\n let functionPrototype = options.includeFunctionPrototype\r\n ? functionPropertiesToString(\r\n `${functionName}.prototype`,\r\n value.prototype,\r\n options,\r\n history\r\n )\r\n : \"\";\r\n history.references.pop();\r\n\r\n let functionStr = String(value);\r\n if (functionStr.indexOf('[native code]') > -1 && functionStr.length < 100) {\r\n for (const nfName in nativeFunctions) {\r\n if (nativeFunctions[nfName] === value) {\r\n functionStr = nfName\r\n }\r\n }\r\n }\r\n if (!functionObject && !functionPrototype) {\r\n return functionStr;\r\n }\r\n\r\n return attachActions(getLocalRefs(value), `(function(){\\n var ${functionName} = ${String(\r\n functionStr\r\n )};\\n ${functionObject}\\n ${functionPrototype}\\n return ${functionName};\\n}())`);\r\n}\r\n\r\nfunction arrayBufferToString(\r\n value: ArrayBuffer,\r\n options: IJ2SOptions,\r\n history: IJ2SHistory\r\n): string {\r\n if (!options.includeBuffers) return \"undefined\";\r\n let str = typedArrayToString(new Int8Array(value), options, history);\r\n return `(${str}).buffer`;\r\n}\r\n\r\nfunction dataViewToString(\r\n value: DataView,\r\n options: IJ2SOptions,\r\n history: IJ2SHistory\r\n): string {\r\n if (!options.includeBuffers) return \"undefined\";\r\n let bufString = arrayBufferToString(value.buffer, options, history);\r\n return `new DataView(${bufString}, ${value.byteOffset}, ${value.byteLength})`;\r\n}\r\n\r\n/**\r\n * Converts to string the value, if it wasn't before\r\n * @param value the value, that converts to string\r\n * @param references the references to stringified objects\r\n */\r\nfunction stringify(\r\n value: any,\r\n options: IJ2SOptions,\r\n history: IJ2SHistory\r\n): string {\r\n switch (getObjectType(value)) {\r\n case \"undefined\":\r\n return \"undefined\";\r\n case \"null\":\r\n return \"null\";\r\n case \"boolean\":\r\n return String(value);\r\n case \"regexp\":\r\n return String(value);\r\n case \"string\":\r\n return JSON.stringify(value);\r\n case \"number\":\r\n return numberToString(value);\r\n case \"bigint\":\r\n return `BigInt(${value})`;\r\n case \"symbol\":\r\n return symbolToString(value);\r\n case \"date\":\r\n return dateToString(value);\r\n case \"error\":\r\n return errorToString(value);\r\n case \"array\":\r\n return arrayToString(value, options, history);\r\n case \"typedarray\":\r\n return typedArrayToString(value, options, history);\r\n case \"set\":\r\n return setToString(value, options, history);\r\n case \"map\":\r\n return mapToString(value, options, history);\r\n case \"object\":\r\n return objectToString(value, options, history);\r\n case \"function\":\r\n case \"generatorfunction\":\r\n return functionToString(value, options, history);\r\n case \"arraybuffer\":\r\n return arrayBufferToString(value, options, history);\r\n case \"dataview\":\r\n return dataViewToString(value, options, history);\r\n case \"promise\":\r\n case \"generator\":\r\n return \"undefined\";\r\n default:\r\n return JSON.stringify(value);\r\n }\r\n}\r\n\r\n/**\r\n * Stringify the value, if it wasn't before\r\n * @param value the value, that converts to string\r\n * @param references the references to stringified objects\r\n */\r\nfunction stringifyRef(\r\n value: any,\r\n options: IJ2SOptions,\r\n history: IJ2SHistory\r\n): string {\r\n const index = history.references.indexOf(value);\r\n if (index < 0 || typeof(history.references[index]) === 'string') {\r\n let objectType = getObjectType(value);\r\n let referencesLength = history.references.length;\r\n history.references.push(value);\r\n switch (objectType) {\r\n case \"object\":\r\n if (history.nestedObjectsLeft <= 0) return \"undefined\";\r\n history.nestedObjectsLeft--;\r\n break;\r\n case \"array\":\r\n case \"typedarray\":\r\n if (history.nestedArraysLeft <= 0) return \"undefined\";\r\n history.nestedArraysLeft--;\r\n break;\r\n case \"function\":\r\n case \"generatorfunction\":\r\n if (history.nestedFunctionsLeft <= 0) return \"undefined\";\r\n history.nestedFunctionsLeft--;\r\n break;\r\n }\r\n\r\n let refString = stringify(value, options, history);\r\n\r\n history.references.splice(referencesLength);\r\n switch (objectType) {\r\n case \"object\":\r\n history.nestedObjectsLeft++;\r\n break;\r\n case \"array\":\r\n case \"typedarray\":\r\n history.nestedArraysLeft++;\r\n break;\r\n case \"function\":\r\n case \"generatorfunction\":\r\n history.nestedFunctionsLeft++;\r\n break;\r\n }\r\n\r\n return refString;\r\n } else {\r\n refs.push({\r\n historyRef: history.references.slice(0),\r\n source: value\r\n })\r\n }\r\n return \"null\";\r\n}\r\n\r\n/**\r\n * Converts JavaScript value to string\r\n * @param value the value of any type\r\n * @param options [optional] The options of conversion\r\n */\r\nfunction javaScriptToString(value: any, options?: IJ2SOptions): string {\r\n options = options || {};\r\n let concreteOptions: IJ2SOptions = {\r\n includeFunctionProperties:\r\n options.includeFunctionProperties === undefined\r\n ? true\r\n : options.includeFunctionProperties,\r\n includeFunctionPrototype:\r\n options.includeFunctionPrototype === undefined\r\n ? true\r\n : options.includeFunctionPrototype,\r\n includeBuffers:\r\n options.includeBuffers === undefined ? true : options.includeBuffers,\r\n nestedObjectsAmount:\r\n options.nestedObjectsAmount === undefined\r\n ? Number.POSITIVE_INFINITY\r\n : options.nestedObjectsAmount,\r\n nestedArraysAmount:\r\n options.nestedArraysAmount === undefined\r\n ? Number.POSITIVE_INFINITY\r\n : options.nestedArraysAmount,\r\n nestedFunctionsAmount:\r\n options.nestedFunctionsAmount === undefined\r\n ? Number.POSITIVE_INFINITY\r\n : options.nestedFunctionsAmount\r\n };\r\n\r\n return stringify(value, concreteOptions, {\r\n references: [value],\r\n nestedObjectsLeft: concreteOptions.nestedObjectsAmount as number,\r\n nestedArraysLeft: concreteOptions.nestedArraysAmount as number,\r\n nestedFunctionsLeft: concreteOptions.nestedFunctionsAmount as number\r\n });\r\n}\r\n\r\nexport default javaScriptToString;\r\n"],"names":["refs","counter","fillNativeFunctions","ext","obj","objName","fromPrototype","protoPath","arrNames_1","Object","getOwnPropertyNames","prototype","_i","name_1","indexOf","nativeFunctions","functions","Array","JSON","Function","Date","String","numberToString","value","Number","isNaN","POSITIVE_INFINITY","NEGATIVE_INFINITY","EPSILON","MAX_SAFE_INTEGER","MIN_SAFE_INTEGER","MAX_VALUE","MIN_VALUE","Math","PI","E","LN10","LN2","LOG10E","LOG2E","SQRT1_2","SQRT2","symbolToString","Symbol","asyncIterator","hasInstance","isConcatSpreadable","iterator","match","replace","search","species","split","toPrimitive","toStringTag","unscopables","description","dateToString","getTime","toString","toISOString","errorToString","stringify","message","fileName","lineNumber","arrayToString","options","history","length","arrayValues","reduce","x1","x2","index","references","push","str","stringifyRef","pop","attachActions","getLocalRefs","filter","x","source","localRefs","result","localName_1","actions","action","converToAction","splice","localName","r","destIndex","historyRef","sourceObj","dest","slice","path","i","destObj","typedArrayToString","arrString","from","constructor","name","setToString","setValues","forEach","value1","value2","set","join","mapToString","mapValues","indexValue","key","objectToString","objectValues","propertyName","hasOwnProperty","propertyValue","test","functionPropertiesToString","functionName","functionToString","functionObject","includeFunctionProperties","functionPrototype","includeFunctionPrototype","functionStr","nfName","arrayBufferToString","includeBuffers","Int8Array","dataViewToString","buffer","byteOffset","byteLength","getObjectType","objectType","referencesLength","nestedObjectsLeft","nestedArraysLeft","nestedFunctionsLeft","refString","javaScriptToString","concreteOptions","undefined","nestedObjectsAmount","nestedArraysAmount","nestedFunctionsAmount"],"mappings":"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"} \ No newline at end of file +{"version":3,"file":"javascripttostring.umd.js","sources":["../node_modules/@lopatnov/get-internal-type/dist/get-internal-type.es.js","../src/javascripttostring.ts"],"sourcesContent":["var types = {}, typesToString = types.toString, buildInList = [\r\n \"Boolean\",\r\n \"Number\",\r\n \"String\",\r\n \"Function\",\r\n \"Array\",\r\n \"Date\",\r\n \"RegExp\",\r\n \"Object\",\r\n \"Error\",\r\n \"Promise\",\r\n \"Generator\",\r\n \"GeneratorFunction\",\r\n \"ArrayBuffer\",\r\n \"DataView\"\r\n], typedArrays = [\r\n \"Int8Array\",\r\n \"Uint8Array\",\r\n \"Uint8ClampedArray\",\r\n \"Int16Array\",\r\n \"Uint16Array\",\r\n \"Int32Array\",\r\n \"Uint32Array\",\r\n \"Float32Array\",\r\n \"Float64Array\",\r\n \"BigInt64Array\",\r\n \"BigUint64Array\"\r\n], maps = [\"Map\", \"WeakMap\"], sets = [\"Set\", \"WeakSet\"];\r\nbuildInList.forEach(function (name) {\r\n types[\"[object \" + name + \"]\"] = name.toLowerCase();\r\n});\r\nmaps.forEach(function (name) {\r\n types[\"[object \" + name + \"]\"] = \"map\";\r\n});\r\nsets.forEach(function (name) {\r\n types[\"[object \" + name + \"]\"] = \"set\";\r\n});\r\ntypedArrays.forEach(function (name) {\r\n types[\"[object \" + name + \"]\"] = \"typedarray\";\r\n});\r\nfunction getInternalType(obj) {\r\n return obj == null\r\n ? obj + \"\"\r\n : typeof obj === \"object\" || typeof obj === \"function\"\r\n ? types[typesToString.call(obj)] || \"object\"\r\n : typeof obj;\r\n}\n\nexport default getInternalType;\n//# sourceMappingURL=get-internal-type.es.js.map\n",null],"names":["types","typesToString","toString","buildInList","typedArrays","maps","sets","getInternalType","obj","call","forEach","name","toLowerCase","refs","counter","fillNativeFunctions","ext","objName","fromPrototype","protoPath","_i","arrNames_1","Object","getOwnPropertyNames","prototype","name_1","indexOf","concat","nativeFunctions","functions","Array","JSON","Function","Date","String","numberToString","value","Number","isNaN","POSITIVE_INFINITY","NEGATIVE_INFINITY","EPSILON","MAX_SAFE_INTEGER","MIN_SAFE_INTEGER","MAX_VALUE","MIN_VALUE","Math","PI","E","LN10","LN2","LOG10E","LOG2E","SQRT1_2","SQRT2","symbolToString","Symbol","asyncIterator","hasInstance","isConcatSpreadable","iterator","match","replace","search","species","split","toPrimitive","toStringTag","unscopables","description","dateToString","getTime","toISOString","errorToString","message","stringify","fileName","lineNumber","arrayToString","options","history","length","arrayValues","reduce","x1","x2","index","references","push","str","stringifyRef","pop","attachActions","getLocalRefs","filter","x","source","localRefs","result","localName_1","actions","action","converToAction","splice","localName","r","destIndex","historyRef","sourceObj","dest","slice","path","i","destObj","typedArrayToString","arrString","from","constructorName","constructor","setToString","setValues","value1","value2","set","join","mapToString","mapValues","indexValue","key","objectToString","objectValues","propertyName","hasOwnProperty","propertyValue","test","functionPropertiesToString","functionName","functionToString","functionObject","includeFunctionProperties","functionPrototype","includeFunctionPrototype","functionStr","nfName","arrayBufferToString","includeBuffers","Int8Array","dataViewToString","bufString","buffer","byteOffset","byteLength","getObjectType","objectType","referencesLength","nestedObjectsLeft","nestedArraysLeft","nestedFunctionsLeft","refString","javaScriptToString","concreteOptions","undefined","nestedObjectsAmount","nestedArraysAmount","nestedFunctionsAmount"],"mappings":";;;;;;IAAA,IAAIA,KAAAA,CAAQ,EAAC,CAAGC,aAAAA,CAAgBD,MAAME,QAAAA,CAAUC,WAAAA,CAAc,CAC1D,SAAA,CACA,QAAA,CACA,QAAA,CACA,WACA,OAAA,CACA,MAAA,CACA,SACA,QAAA,CACA,OAAA,CACA,UACA,WAAA,CACA,mBAAA,CACA,aAAA,CACA,UAAA,CAAA,CACDC,WAAAA,CAAc,CACb,YACA,YAAA,CACA,mBAAA,CACA,aACA,aAAA,CACA,YAAA,CACA,cACA,cAAA,CACA,cAAA,CACA,eAAA,CACA,gBAAA,CAAA,CACDC,IAAAA,CAAO,CAAC,MAAO,SAAA,CAAA,CAAYC,IAAAA,CAAO,CAAC,KAAA,CAAO,SAAA,CAAA,CAa7C,SAASC,gBAAgBC,CAAAA,CAAAA,CACrB,OAAc,IAAA,EAAPA,CAAAA,CACDA,CAAAA,CAAM,EAAA,CACS,iBAARA,CAAAA,EAAmC,UAAA,EAAA,OAARA,EAC9BR,KAAAA,CAAMC,aAAAA,CAAcQ,KAAKD,CAAAA,CAAAA,CAAAA,EAAS,QAAA,CAAA,OAC3BA,CACrB,CAlBAL,WAAAA,CAAYO,OAAAA,CAAQ,SAAUC,CAAAA,CAAAA,CAC1BX,KAAAA,CAAM,WAAaW,CAAAA,CAAO,GAAA,CAAA,CAAOA,EAAKC,WAAAA,GAC1C,CAAA,CAAA,CACAP,IAAAA,CAAKK,OAAAA,CAAQ,SAAUC,CAAAA,CAAAA,CACnBX,MAAM,UAAA,CAAaW,CAAAA,CAAO,KAAO,MACrC,CAAA,CAAA,CACAL,KAAKI,OAAAA,CAAQ,SAAUC,CAAAA,CAAAA,CACnBX,KAAAA,CAAM,UAAA,CAAaW,CAAAA,CAAO,KAAO,MACrC,CAAA,CAAA,CACAP,WAAAA,CAAYM,OAAAA,CAAQ,SAAUC,CAAAA,CAAAA,CAC1BX,MAAM,UAAA,CAAaW,CAAAA,CAAO,GAAA,CAAA,CAAO,aACrC,CAAA,CAAA;;ICvBA,IAAIE,IAAAA,CAAsB,EAAA,CACtBC,QAAU,CAAA,CASd,SAASC,mBAAAA,CAAoBC,CAAAA,CAAUR,CAAAA,CAAUS,CAAAA,CAAiBC,CAAAA,CAAAA,CAAAA,OAAA,GAAAA,IAAAA,CAAAA,CAAAA,IAAA,CAAA,CAGhE,IAFA,IACMC,CAAAA,CAAYD,CAAAA,CAAgB,aAAA,CAAgB,GAAA,CAC/BE,EAAA,CAAA,CAAAC,CAAAA,CAFFC,MAAAA,CAAOC,mBAAAA,CAAoBL,EAAgBV,CAAAA,CAAIgB,SAAAA,CAAYhB,CAAAA,CAAAA,CAEzDY,CAAAA,UAAAA,CAAAA,EAAAA,CAAU,CAAxB,IAAMK,CAAAA,CAAIJ,CAAAA,CAAAD,CAAAA,CAAAA,CACT,CAAC,SAAU,QAAA,CAAU,WAAA,CAAA,CAAaM,OAAAA,CAAQD,CAAAA,CAAAA,CAAQ,CAAA,GACpDT,CAAAA,CAAI,EAAA,CAAAW,MAAAA,CAAGV,GAAOU,MAAAA,CAAGR,CAAAA,CAAAA,CAASQ,MAAAA,CAAGF,CAAAA,CAAAA,CAAAA,CAAUP,CAAAA,CAAgBV,CAAAA,CAAIgB,SAAAA,CAAUC,CAAAA,CAAAA,CAAejB,EAAIiB,CAAAA,CAAAA,EAE5F,CACF,CAEA,IAAMG,gBAAkB,UAAA,CACtB,IAAMC,CAAAA,CAAiB,GAWvB,OAVAd,mBAAAA,CAAoBc,CAAAA,CAAWC,KAAAA,CAAO,OAAA,CAAA,KAAS,CAAA,CAC/Cf,mBAAAA,CAAoBc,CAAAA,CAAWC,MAAO,OAAA,CAAA,CACtCf,mBAAAA,CAAoBc,CAAAA,CAAWE,IAAAA,CAAM,MAAA,CAAA,KAAQ,CAAA,CAC7ChB,mBAAAA,CAAoBc,CAAAA,CAAWP,OAAQ,QAAA,CAAA,KAAU,CAAA,CACjDP,mBAAAA,CAAoBc,CAAAA,CAAWP,MAAAA,CAAQ,QAAA,CAAA,CACvCP,mBAAAA,CAAoBc,CAAAA,CAAWG,SAAU,UAAA,CAAA,KAAY,CAAA,CACrDjB,mBAAAA,CAAoBc,CAAAA,CAAWG,SAAU,UAAA,CAAA,CACzCjB,mBAAAA,CAAoBc,CAAAA,CAAWI,IAAAA,CAAM,YAAQ,CAAA,CAC7ClB,mBAAAA,CAAoBc,CAAAA,CAAWK,MAAAA,CAAQ,QAAA,CAAA,CACvCL,CAAAA,CAAUG,QAAAA,CAAWA,QAAAA,CACdH,CACR,CAbuB,EAAA,CAexB,SAASM,cAAAA,CAAeC,GACtB,GAAIC,MAAAA,CAAOC,KAAAA,CAAMF,CAAAA,CAAAA,CACf,OAAO,YAAA,CAET,OAAQA,CAAAA,EACN,KAAKC,MAAAA,CAAOE,iBAAAA,CACV,OAAO,0BAAA,CACT,KAAKF,MAAAA,CAAOG,iBAAAA,CACV,OAAO,0BAAA,CACT,KAAKH,MAAAA,CAAOI,OAAAA,CACV,OAAO,gBAAA,CACT,KAAKJ,MAAAA,CAAOK,gBAAAA,CACV,OAAO,yBAAA,CACT,KAAKL,MAAAA,CAAOM,gBAAAA,CACV,OAAO,0BACT,KAAKN,MAAAA,CAAOO,SAAAA,CACV,OAAO,kBAAA,CACT,KAAKP,MAAAA,CAAOQ,SAAAA,CACV,OAAO,kBAAA,CACT,KAAKC,IAAAA,CAAKC,EAAAA,CACR,OAAO,SAAA,CACT,KAAKD,IAAAA,CAAKE,EACR,OAAO,QAAA,CACT,KAAKF,IAAAA,CAAKG,KACR,OAAO,WAAA,CACT,KAAKH,IAAAA,CAAKI,IACR,OAAO,UAAA,CACT,KAAKJ,IAAAA,CAAKK,MAAAA,CACR,OAAO,aAAA,CACT,KAAKL,KAAKM,KAAAA,CACR,OAAO,YAAA,CACT,KAAKN,IAAAA,CAAKO,OAAAA,CACR,OAAO,cAAA,CACT,KAAKP,IAAAA,CAAKQ,KAAAA,CACR,OAAO,YAAA,CACT,QACE,OAAOpB,MAAAA,CAAOE,CAAAA,CAAAA,CAEpB,CAEA,SAASmB,cAAAA,CAAenB,CAAAA,CAAAA,CACtB,OAAQA,GACN,KAAKoB,MAAAA,CAAOC,aAAAA,CACZ,KAAKD,OAAOE,WAAAA,CACZ,KAAKF,MAAAA,CAAOG,kBAAAA,CACZ,KAAKH,MAAAA,CAAOI,QAAAA,CACZ,KAAKJ,OAAOK,KAAAA,CACZ,KAAKL,MAAAA,CAAOhC,SAAAA,CACZ,KAAKgC,MAAAA,CAAOM,OAAAA,CACZ,KAAKN,OAAOO,MAAAA,CACZ,KAAKP,MAAAA,CAAOQ,OAAAA,CACZ,KAAKR,MAAAA,CAAOS,KAAAA,CACZ,KAAKT,OAAOU,WAAAA,CACZ,KAAKV,MAAAA,CAAOW,WAAAA,CACZ,KAAKX,MAAAA,CAAOY,WAAAA,CACV,OAAOhC,CAAAA,CAAMiC,YACf,QACE,IAAMA,CAAAA,CAAcjC,CAAAA,CAAMiC,WAAAA,CAAc,GAAA,CAAA1C,MAAAA,CAAIS,CAAAA,CAAMiC,YAAW,GAAA,CAAA,CAAM,EAAA,CACnE,OAAO,SAAA,CAAA1C,OAAU0C,CAAAA,CAAW,GAAA,CAAA,CAElC,CAEA,SAASC,aAAalC,CAAAA,CAAAA,CACpB,OAAIE,KAAAA,CAAMF,CAAAA,CAAMmC,OAAAA,EAAAA,CAAAA,CACP,WAAA,QAAYnC,CAAAA,CAAMlC,gBAEpB,WAAA,QAAYkC,CAAAA,CAAMoC,kBAC3B,CAEA,SAASC,aAAAA,CAAcrC,GACrB,IAAMsC,CAAAA,CAAU3C,IAAAA,CAAK4C,SAAAA,CAAUvC,CAAAA,CAAMsC,OAAAA,CAAAA,CACnCE,CAAAA,CAAW7C,IAAAA,CAAK4C,UAAUvC,CAAAA,CAAMwC,QAAAA,CAAAA,CAChCC,CAAAA,CAAa9C,IAAAA,CAAK4C,SAAAA,CAAUvC,CAAAA,CAAMyC,UAAAA,CAAAA,CACpC,OAAO,oBAAaH,CAAAA,CAAO,IAAA,CAAA,CAAA/C,MAAAA,CAAKiD,CAAAA,CAAQ,IAAA,CAAA,CAAAjD,MAAAA,CAAKkD,CAAAA,KAC/C,CAEA,SAASC,aAAAA,CAAc1C,CAAAA,CAAmB2C,EAAsBC,CAAAA,CAAAA,CAC9D,GAAqB,CAAA,GAAjB5C,CAAAA,CAAM6C,OAAc,OAAO,IAAA,CAC/B,IAAMC,CAAAA,CAAc9C,CAAAA,CAAM+C,MAAAA,CAAO,SAACC,CAAAA,CAASC,EAASC,CAAAA,CAAAA,CAClDN,CAAAA,CAAQO,UAAAA,CAAWC,IAAAA,CAAKF,CAAAA,CAAMpF,QAAAA,EAAAA,CAAAA,CAC9B,IAAIuF,CAAAA,CAAQL,EAAK,EAAA,CAAAzD,MAAAA,CAAGyD,CAAAA,CAAE,IAAA,CAAA,CAAO,EAAA,CAG7B,OAFAK,CAAAA,EAAOC,YAAAA,CAAaL,EAAIN,CAAAA,CAASC,CAAAA,CAAAA,CACjCA,CAAAA,CAAQO,UAAAA,CAAWI,MACZF,CACT,CAAA,CAAG,EAAA,CAAA,CACH,OAAOG,cAAcC,YAAAA,CAAazD,CAAAA,CAAAA,CAAQ,GAAA,CAAAT,MAAAA,CAAIuD,CAAAA,CAAW,GAAA,CAAA,CAC3D,CAEA,SAASW,aAAazD,CAAAA,CAAAA,CACpB,OAAOvB,IAAAA,CAAKiF,MAAAA,CAAO,SAACC,CAAAA,CAAAA,CAAM,OAAAA,CAAAA,CAAEC,SAAW5D,CAAb,CAAA,CAC5B,CAEA,SAASwD,aAAAA,CAAcK,CAAAA,CAA0BC,CAAAA,CAAAA,CAC/C,GAAID,EAAUhB,MAAAA,CAAS,CAAA,CAAG,CACxBnE,OAAAA,CAAUA,UAAYuB,MAAAA,CAAOK,gBAAAA,CAC7B,IAAMyD,CAAAA,CAAY,UAAAxE,MAAAA,CAAUb,OAAAA,CAAAA,CACtBsF,CAAAA,CAAUH,CAAAA,CAAUd,MAAAA,CAAO,SAACC,CAAAA,CAAYC,CAAAA,CAAAA,CAC5C,IAAMgB,CAAAA,CAASC,cAAAA,CAAeH,CAAAA,CAAWd,CAAAA,CAAAA,CAEzC,OADAxE,IAAAA,CAAK0F,MAAAA,CAAO1F,IAAAA,CAAKa,OAAAA,CAAQ2D,GAAK,CAAA,CAAA,CACvBD,CAAAA,CAAKiB,CACd,CAAA,CAAG,EAAA,CAAA,CACH,OAAO,mBAAA,CAAA1E,MAAAA,CAAoBwE,EAAS,KAAA,CAAA,CAAAxE,MAAAA,CAAMuE,CAAAA,cAAWE,CAAAA,CAAO,UAAA,CAAA,CAAAzE,MAAAA,CAAWwE,CAAAA,CAAS,SAClF,CACA,OAAOD,CACT,CAEA,SAASI,cAAAA,CAAeE,CAAAA,CAAmBC,CAAAA,CAAAA,CACzC,IAAMC,CAAAA,CAAYD,CAAAA,CAAEE,UAAAA,CAAWjF,OAAAA,CAAQ+E,CAAAA,CAAET,MAAAA,CAAAA,CACzC,GAAIU,CAAAA,CAAY,EACd,OAAO,EAAA,CAMT,IAHA,IACIE,CAAAA,CADEC,CAAAA,CAAOJ,CAAAA,CAAEE,UAAAA,CAAWG,MAAMJ,CAAAA,CAAAA,CAE5BK,CAAAA,CAAO,EAAA,CACFC,CAAAA,CAAI,EAAGA,CAAAA,CAAIH,CAAAA,CAAK5B,MAAAA,CAAQ+B,CAAAA,EAAAA,CAAK,CACpC,IAAMC,CAAAA,CAAUJ,CAAAA,CAAKG,CAAAA,CAAAA,CACrB,GAAIC,CAAAA,GAAYR,CAAAA,CAAET,MAAAA,CAChBe,EAAOP,CAAAA,CACPI,CAAAA,CAAYH,CAAAA,CAAET,MAAAA,CAAAA,KACT,GAAuB,QAAA,EAAA,OAAZiB,CAAAA,CAChBF,CAAAA,EAAQ,IAAA,CAAApF,OAAKsF,CAAAA,CAAQnD,OAAAA,CAAQ,KAAA,CAAO,KAAA,CAAA,CAAM,IAAA,CAAA,CAC1C8C,CAAAA,CAAYA,CAAAA,CAAUK,CAAAA,CAAAA,CAAAA,KACjB,GAAIA,CAAAA,GAAYL,CAAAA,CACrB,OAAO,EAEX,CAEA,OAAO,EAAA,CAAAjF,MAAAA,CAAGoF,CAAAA,CAAI,OAAApF,MAAAA,CAAM6E,CAAAA,MACtB,CAEA,SAASU,kBAAAA,CAAmB9E,CAAAA,CAAY2C,CAAAA,CAAsBC,GAC5D,IACEmC,CAAAA,CAAYrC,aAAAA,CADFhD,KAAAA,CAAMsF,IAAAA,CAAKhF,CAAAA,CAAAA,CACU2C,CAAAA,CAASC,CAAAA,CAAAA,CACxCqC,EAAkBjF,CAAAA,CAAMkF,WAAAA,CAAY3G,IAAAA,CACtC,OAAO,MAAA,CAAAgB,MAAAA,CAAO0F,CAAAA,CAAe,GAAA,CAAA,CAAA1F,OAAIwF,CAAAA,KACnC,CAEA,SAASI,YAAYnF,CAAAA,CAAiB2C,CAAAA,CAAsBC,CAAAA,CAAAA,CAC1D,IAAMwC,EAAsB,EAAA,CAM5B,OAJApF,CAAAA,CAAM1B,OAAAA,CAAQ,SAAC+G,CAAAA,CAAaC,CAAAA,CAAaC,CAAAA,CAAAA,CACvCH,EAAUhC,IAAAA,CAAKE,YAAAA,CAAagC,CAAAA,CAAQ3C,CAAAA,CAASC,IAC/C,CAAA,CAAA,CAEyB,CAAA,GAArBwC,CAAAA,CAAUvC,MAAAA,CAAqB,YAE5B,WAAA,CAAAtD,MAAAA,CAAY6F,CAAAA,CAAUI,IAAAA,CAAK,IAAA,CAAA,MACpC,CAEA,SAASC,YAAYzF,CAAAA,CAAsB2C,CAAAA,CAAsBC,CAAAA,CAAAA,CAC/D,IAAM8C,EAAsB,EAAA,CAM5B,OAJA1F,CAAAA,CAAM1B,OAAAA,CAAQ,SAACqH,CAAAA,CAAiBC,CAAAA,CAAAA,CAC9BF,CAAAA,CAAUtC,IAAAA,CAAK,GAAA,CAAA7D,MAAAA,CAAI+D,YAAAA,CAAasC,CAAAA,CAAKjD,EAASC,CAAAA,CAAAA,CAAQ,IAAA,CAAA,CAAArD,MAAAA,CAAK+D,YAAAA,CAAaqC,CAAAA,CAAYhD,CAAAA,CAASC,CAAAA,CAAAA,CAAQ,GAAA,CAAA,EACvG,GAEyB,CAAA,GAArB8C,CAAAA,CAAU7C,MAAAA,CAAqB,WAAA,CAE5B,WAAA,CAAAtD,MAAAA,CAAYmG,CAAAA,CAAUF,IAAAA,CAAK,WACpC,CAEA,SAASK,cAAAA,CAAe7F,EAAY2C,CAAAA,CAAsBC,CAAAA,CAAAA,CACxD,IAAMkD,CAAAA,CAAe,GAErB,IAAK,IAAIC,CAAAA,IAAgB/F,CAAAA,CACvB,GAAIA,CAAAA,CAAMgG,cAAAA,CAAeD,CAAAA,CAAAA,CAAe,CACtCnD,CAAAA,CAAQO,UAAAA,CAAWC,IAAAA,CAAK2C,CAAAA,CAAAA,CACxB,IAAME,CAAAA,CAAgB3C,YAAAA,CAAatD,CAAAA,CAAM+F,GAAepD,CAAAA,CAASC,CAAAA,CAAAA,CACjEA,CAAAA,CAAQO,UAAAA,CAAWI,GAAAA,EAAAA,CACG,WAAA,GAAlB0C,CAAAA,GACG,aAAA,CAAcC,KAAKH,CAAAA,CAAAA,GACtBA,CAAAA,CAAe,GAAA,CAAAxG,MAAAA,CAAIwG,EAAY,GAAA,CAAA,CAAA,CAEjCD,CAAAA,CAAa1C,IAAAA,CAAK,EAAA,CAAA7D,OAAGwG,CAAAA,CAAY,IAAA,CAAA,CAAAxG,MAAAA,CAAK0G,CAAAA,CAAAA,CAAAA,EAE1C,CAGF,OAA4B,CAAA,GAAxBH,CAAAA,CAAajD,OAAqB,IAAA,CAE/BW,aAAAA,CAAcC,YAAAA,CAAazD,CAAAA,CAAAA,CAAQ,KAAA,CAAAT,MAAAA,CAAMuG,CAAAA,CAAaN,IAAAA,CAAK,OAAM,KAAA,CAAA,CAC1E,CAEA,SAASW,0BAAAA,CACPC,CAAAA,CACApG,CAAAA,CACA2C,CAAAA,CACAC,CAAAA,CAAAA,CAEA,IAAIkB,CAAAA,CAAS,EAAA,CACb,IAAK,IAAMiC,KAAgB/F,CAAAA,CACzB,GAAIA,CAAAA,CAAMgG,cAAAA,CAAeD,GAAe,CACtCnD,CAAAA,CAAQO,UAAAA,CAAWC,IAAAA,CAAK2C,CAAAA,CAAAA,CACxB,IAAME,CAAAA,CAAgB3C,YAAAA,CAAatD,EAAM+F,CAAAA,CAAAA,CAAepD,CAAAA,CAASC,CAAAA,CAAAA,CACjEA,CAAAA,CAAQO,WAAWI,GAAAA,EAAAA,CACG,WAAA,GAAlB0C,CAAAA,GACFnC,CAAAA,EAAU,UAAGsC,CAAAA,CAAY,GAAA,CAAA,CAAA7G,MAAAA,CAAIwG,CAAAA,CAAY,KAAA,CAAA,CAAAxG,MAAAA,CAAM0G,CAAAA,SAEnD,CAEF,OAAOnC,CACT,CAEA,SAASuC,gBAAAA,CAAiBrG,CAAAA,CAAY2C,CAAAA,CAAsBC,CAAAA,CAAAA,CAC1D,IAAMwD,CAAAA,CAAepG,CAAAA,CAAMzB,IAAAA,EAAQ,mBAAA,CAC7B+H,CAAAA,CAAiB3D,CAAAA,CAAQ4D,yBAAAA,CAC3BJ,0BAAAA,CAA2BC,EAAcpG,CAAAA,CAAO2C,CAAAA,CAASC,CAAAA,CAAAA,CACzD,EAAA,CACJA,CAAAA,CAAQO,UAAAA,CAAWC,IAAAA,CAAK,WAAA,CAAA,CACxB,IAAMoD,CAAAA,CAAoB7D,CAAAA,CAAQ8D,wBAAAA,CAC9BN,0BAAAA,CAA2B,EAAA,CAAA5G,MAAAA,CAAG6G,CAAAA,CAAY,YAAA,CAAA,CAAcpG,EAAMZ,SAAAA,CAAWuD,CAAAA,CAASC,CAAAA,CAAAA,CAClF,EAAA,CACJA,EAAQO,UAAAA,CAAWI,GAAAA,EAAAA,CAEnB,IAAImD,CAAAA,CAAc5G,OAAOE,CAAAA,CAAAA,CACzB,GAAI0G,CAAAA,CAAYpH,OAAAA,CAAQ,eAAA,CAAA,CAAA,EAAoB,EAAKoH,CAAAA,CAAY7D,MAAAA,CAAS,IACpE,IAAK,IAAM8D,CAAAA,IAAUnH,eAAAA,CACfA,gBAAgBmH,CAAAA,CAAAA,GAAY3G,CAAAA,GAC9B0G,CAAAA,CAAcC,CAAAA,CAAAA,CAIpB,OAAKL,CAAAA,EAAmBE,CAAAA,CAIjBhD,aAAAA,CACLC,YAAAA,CAAazD,CAAAA,CAAAA,CACb,qBAAA,CAAAT,MAAAA,CAAsB6G,CAAAA,CAAY,OAAA7G,MAAAA,CAAMO,MAAAA,CACtC4G,CAAAA,CAAAA,gBACMJ,CAAAA,CAAc,KAAA,CAAA,CAAA/G,MAAAA,CAAMiH,CAAAA,CAAiB,cAAAjH,MAAAA,CAAa6G,CAAAA,CAAY,SAAA,CAAA,CAAA,CAP/DM,CASX,CAEA,SAASE,mBAAAA,CAAoB5G,CAAAA,CAAoB2C,EAAsBC,CAAAA,CAAAA,CACrE,GAAA,CAAKD,CAAAA,CAAQkE,cAAAA,CAAgB,OAAO,WAAA,CACpC,IAAMxD,CAAAA,CAAMyB,mBAAmB,IAAIgC,SAAAA,CAAU9G,CAAAA,CAAAA,CAAQ2C,CAAAA,CAASC,CAAAA,CAAAA,CAC9D,OAAO,GAAA,CAAArD,MAAAA,CAAI8D,EAAG,UAAA,CAChB,CAEA,SAAS0D,gBAAAA,CAAiB/G,EAAiB2C,CAAAA,CAAsBC,CAAAA,CAAAA,CAC/D,GAAA,CAAKD,CAAAA,CAAQkE,eAAgB,OAAO,WAAA,CACpC,IAAMG,CAAAA,CAAYJ,mBAAAA,CAAoB5G,CAAAA,CAAMiH,MAAAA,CAAuBtE,CAAAA,CAASC,GAC5E,OAAO,eAAA,CAAArD,MAAAA,CAAgByH,CAAAA,CAAS,MAAAzH,MAAAA,CAAKS,CAAAA,CAAMkH,UAAAA,CAAU,IAAA,CAAA,CAAA3H,OAAKS,CAAAA,CAAMmH,UAAAA,CAAU,GAAA,CAC5E,CAOA,SAAS5E,SAAAA,CAAUvC,CAAAA,CAAY2C,CAAAA,CAAsBC,GACnD,OAAQwE,eAAAA,CAAcpH,CAAAA,CAAAA,EACpB,KAAK,YAqCL,KAAK,SAAA,CACL,KAAK,WAAA,CACH,OAAO,WAAA,CArCT,KAAK,MAAA,CACH,OAAO,MAAA,CACT,KAAK,SAAA,CAEL,KAAK,SACH,OAAOF,MAAAA,CAAOE,CAAAA,CAAAA,CAChB,KAAK,QAAA,CAgCL,QACE,OAAOL,IAAAA,CAAK4C,UAAUvC,CAAAA,CAAAA,CA/BxB,KAAK,QAAA,CACH,OAAOD,cAAAA,CAAeC,CAAAA,CAAAA,CACxB,KAAK,QAAA,CACH,OAAO,SAAA,CAAAT,MAAAA,CAAUS,CAAAA,CAAK,GAAA,CAAA,CACxB,KAAK,QAAA,CACH,OAAOmB,cAAAA,CAAenB,CAAAA,CAAAA,CACxB,KAAK,MAAA,CACH,OAAOkC,YAAAA,CAAalC,CAAAA,CAAAA,CACtB,KAAK,OAAA,CACH,OAAOqC,aAAAA,CAAcrC,GACvB,KAAK,OAAA,CACH,OAAO0C,aAAAA,CAAc1C,CAAAA,CAAO2C,CAAAA,CAASC,CAAAA,CAAAA,CACvC,KAAK,aACH,OAAOkC,kBAAAA,CAAmB9E,CAAAA,CAAO2C,CAAAA,CAASC,CAAAA,CAAAA,CAC5C,KAAK,KAAA,CACH,OAAOuC,YAAYnF,CAAAA,CAAO2C,CAAAA,CAASC,CAAAA,CAAAA,CACrC,KAAK,MACH,OAAO6C,WAAAA,CAAYzF,CAAAA,CAAO2C,CAAAA,CAASC,GACrC,KAAK,QAAA,CACH,OAAOiD,cAAAA,CAAe7F,CAAAA,CAAO2C,CAAAA,CAASC,CAAAA,CAAAA,CACxC,KAAK,WACL,KAAK,mBAAA,CACH,OAAOyD,gBAAAA,CAAiBrG,CAAAA,CAAO2C,CAAAA,CAASC,CAAAA,CAAAA,CAC1C,KAAK,cACH,OAAOgE,mBAAAA,CAAoB5G,CAAAA,CAAO2C,CAAAA,CAASC,CAAAA,CAAAA,CAC7C,KAAK,UAAA,CACH,OAAOmE,iBAAiB/G,CAAAA,CAAO2C,CAAAA,CAASC,CAAAA,CAAAA,CAO9C,CAOA,SAASU,YAAAA,CAAatD,CAAAA,CAAY2C,CAAAA,CAAsBC,CAAAA,CAAAA,CACtD,IAAMM,CAAAA,CAAQN,CAAAA,CAAQO,UAAAA,CAAW7D,OAAAA,CAAQU,CAAAA,CAAAA,CACzC,GAAIkD,CAAAA,CAAQ,CAAA,EAA0C,iBAA9BN,CAAAA,CAAQO,UAAAA,CAAWD,CAAAA,CAAAA,CAAqB,CAC9D,IAAMmE,CAAAA,CAAaD,eAAAA,CAAcpH,CAAAA,CAAAA,CAC3BsH,CAAAA,CAAmB1E,EAAQO,UAAAA,CAAWN,MAAAA,CAE5C,OADAD,CAAAA,CAAQO,UAAAA,CAAWC,IAAAA,CAAKpD,CAAAA,CAAAA,CAChBqH,CAAAA,EACN,KAAK,QAAA,CACH,GAAIzE,CAAAA,CAAQ2E,iBAAAA,EAAqB,EAAG,OAAO,WAAA,CAC3C3E,CAAAA,CAAQ2E,iBAAAA,EAAAA,CACR,MACF,KAAK,OAAA,CACL,KAAK,YAAA,CACH,GAAI3E,CAAAA,CAAQ4E,gBAAAA,EAAoB,CAAA,CAAG,OAAO,WAAA,CAC1C5E,CAAAA,CAAQ4E,gBAAAA,EAAAA,CACR,MACF,KAAK,UAAA,CACL,KAAK,mBAAA,CACH,GAAI5E,CAAAA,CAAQ6E,mBAAAA,EAAuB,CAAA,CAAG,OAAO,WAAA,CAC7C7E,CAAAA,CAAQ6E,mBAAAA,GAAAA,CAIZ,IAAMC,EAAYnF,SAAAA,CAAUvC,CAAAA,CAAO2C,CAAAA,CAASC,CAAAA,CAAAA,CAG5C,OADAA,CAAAA,CAAQO,UAAAA,CAAWgB,MAAAA,CAAOmD,CAAAA,CAAAA,CAClBD,GACN,KAAK,QAAA,CACHzE,CAAAA,CAAQ2E,iBAAAA,EAAAA,CACR,MACF,KAAK,OAAA,CACL,KAAK,aACH3E,CAAAA,CAAQ4E,gBAAAA,EAAAA,CACR,MACF,KAAK,WACL,KAAK,mBAAA,CACH5E,CAAAA,CAAQ6E,mBAAAA,GAAAA,CAIZ,OAAOC,CACT,CAMA,OALEjJ,IAAAA,CAAK2E,IAAAA,CAAK,CACRmB,UAAAA,CAAY3B,CAAAA,CAAQO,WAAWuB,KAAAA,CAAM,CAAA,CAAA,CACrCd,MAAAA,CAAQ5D,CAAAA,CAAAA,CAAAA,CAGL,MACT,CAOA,SAAS2H,kBAAAA,CAAmB3H,CAAAA,CAAY2C,GAEtC,IAAMiF,CAAAA,CAA+B,CACnCrB,yBAAAA,CAAAA,MACwCsB,GAAAA,CAH1ClF,CAAAA,CAAUA,CAAAA,EAAW,IAGT4D,yBAAAA,EAAiD5D,CAAAA,CAAQ4D,yBAAAA,CACnEE,wBAAAA,CAAAA,MAA+DoB,GAArClF,CAAAA,CAAQ8D,wBAAAA,EAAgD9D,CAAAA,CAAQ8D,yBAC1FI,cAAAA,CAAAA,MAA2CgB,GAA3BlF,CAAAA,CAAQkE,cAAAA,EAAsClE,CAAAA,CAAQkE,cAAAA,CACtEiB,mBAAAA,CAAAA,MACkCD,GAAhClF,EAAQmF,mBAAAA,CAAoC7H,MAAAA,CAAOE,iBAAAA,CAAoBwC,CAAAA,CAAQmF,oBACjFC,kBAAAA,CAAAA,MACiCF,GAA/BlF,CAAAA,CAAQoF,kBAAAA,CAAmC9H,OAAOE,iBAAAA,CAAoBwC,CAAAA,CAAQoF,kBAAAA,CAChFC,qBAAAA,CAAAA,MACoCH,GAAlClF,CAAAA,CAAQqF,qBAAAA,CAAsC/H,MAAAA,CAAOE,kBAAoBwC,CAAAA,CAAQqF,qBAAAA,CAAAA,CAIrFvJ,IAAAA,CAAO,EAAA,CACPC,QAAU,CAAA,CAEV,IAAMoF,CAAAA,CAASvB,SAAAA,CAAUvC,EAAO4H,CAAAA,CAAiB,CAC/CzE,UAAAA,CAAY,CAACnD,CAAAA,CAAAA,CACbuH,iBAAAA,CAAmBK,CAAAA,CAAgBE,mBAAAA,CACnCN,iBAAkBI,CAAAA,CAAgBG,kBAAAA,CAClCN,mBAAAA,CAAqBG,CAAAA,CAAgBI,wBAIvC,OAAOxE,aAAAA,CAAcC,YAAAA,CAAazD,CAAAA,CAAAA,CAAQ8D,EAC5C;;;;;;;;","x_google_ignoreList":[0]} \ No newline at end of file diff --git a/dist/lib/javascripttostring.js b/dist/lib/javascripttostring.js index e892bbd..2b635a8 100644 --- a/dist/lib/javascripttostring.js +++ b/dist/lib/javascripttostring.js @@ -1,385 +1,380 @@ -"use strict"; -var __importDefault = (this && this.__importDefault) || function (mod) { - return (mod && mod.__esModule) ? mod : { "default": mod }; -}; -Object.defineProperty(exports, "__esModule", { value: true }); -var get_internal_type_1 = __importDefault(require("@lopatnov/get-internal-type")); -var refs = []; -var counter = 0; -function fillNativeFunctions(ext, obj, objName, fromPrototype) { - if (fromPrototype === void 0) { fromPrototype = true; } - var arrNames = Object.getOwnPropertyNames(fromPrototype ? obj.prototype : obj); - var protoPath = fromPrototype ? '.prototype.' : '.'; - for (var _i = 0, arrNames_1 = arrNames; _i < arrNames_1.length; _i++) { - var name_1 = arrNames_1[_i]; - if (['caller', 'callee', 'arguments'].indexOf(name_1) < 0) { - ext["" + objName + protoPath + name_1] = fromPrototype ? obj.prototype[name_1] : obj[name_1]; - } - } -} -var nativeFunctions = (function () { - var functions = {}; - fillNativeFunctions(functions, Array, 'Array', false); - fillNativeFunctions(functions, Array, 'Array'); - fillNativeFunctions(functions, JSON, 'JSON', false); - fillNativeFunctions(functions, Object, 'Object', false); - fillNativeFunctions(functions, Object, 'Object'); - fillNativeFunctions(functions, Function, 'Function', false); - fillNativeFunctions(functions, Function, 'Function'); - fillNativeFunctions(functions, Date, 'Date', false); - fillNativeFunctions(functions, String, 'String'); - functions.Function = Function; - return functions; -}()); -function numberToString(value) { - if (Number.isNaN(value)) { - return "Number.NaN"; - } - switch (value) { - case Number.POSITIVE_INFINITY: - return "Number.POSITIVE_INFINITY"; - case Number.NEGATIVE_INFINITY: - return "Number.NEGATIVE_INFINITY"; - case Number.EPSILON: - return "Number.EPSILON"; - case Number.MAX_SAFE_INTEGER: - return "Number.MAX_SAFE_INTEGER"; - case Number.MIN_SAFE_INTEGER: - return "Number.MIN_SAFE_INTEGER"; - case Number.MAX_VALUE: - return "Number.MAX_VALUE"; - case Number.MIN_VALUE: - return "Number.MIN_VALUE"; - case Math.PI: - return "Math.PI"; - case Math.E: - return "Math.E"; - case Math.LN10: - return "Math.LN10"; - case Math.LN2: - return "Math.LN2"; - case Math.LOG10E: - return "Math.LOG10E"; - case Math.LOG2E: - return "Math.LOG2E"; - case Math.SQRT1_2: - return "Math.SQRT1_2"; - case Math.SQRT2: - return "Math.SQRT2"; - default: - return String(value); - } -} -function symbolToString(value) { - switch (value) { - case Symbol.asyncIterator: - case Symbol.hasInstance: - case Symbol.isConcatSpreadable: - case Symbol.iterator: - case Symbol.match: - case Symbol.prototype: - case Symbol.replace: - case Symbol.search: - case Symbol.species: - case Symbol.split: - case Symbol.toPrimitive: - case Symbol.toStringTag: - case Symbol.unscopables: - return value.description; - default: - var description = value.description ? "\"" + value.description + "\"" : ""; - return "Symbol(" + description + ")"; - } -} -function dateToString(value) { - if (isNaN(value.getTime())) { - return "new Date(" + value.toString() + ")"; - } - return "new Date(" + value.toISOString() + ")"; -} -function errorToString(value) { - var message = JSON.stringify(value.message), fileName = JSON.stringify(value.fileName), lineNumber = JSON.stringify(value.lineNumber); - return "new Error(" + message + ", " + fileName + ", " + lineNumber + ")"; -} -function arrayToString(value, options, history) { - if (value.length === 0) - return "[]"; - var arrayValues = value.reduce(function (x1, x2, index) { - history.references.push(index.toString()); - var str = !!x1 ? x1 + ", " : ''; - str += stringifyRef(x2, options, history); - history.references.pop(); - return str; - }, ''); - return attachActions(getLocalRefs(value), "[" + arrayValues + "]"); -} -function getLocalRefs(value) { - return refs.filter(function (x) { return x.source === value; }); -} -function attachActions(localRefs, result) { - if (localRefs.length > 0) { - counter = (counter++) % Number.MAX_SAFE_INTEGER; - var localName_1 = "___j2s_" + counter; - var actions = localRefs.reduce(function (x1, x2) { - var action = converToAction(localName_1, x2); - refs.splice(refs.indexOf(x2), 1); - return x1 + action; - }, ''); - return "(function(){ var " + localName_1 + " = " + result + "; " + actions + " return " + localName_1 + "; }())"; - } - return result; -} -function converToAction(localName, r) { - var destIndex = r.historyRef.indexOf(r.source); - if (destIndex < 0) { - return ''; - } - var dest = r.historyRef.slice(destIndex); - var sourceObj; - var path = ''; - for (var i = 0; i < dest.length; i++) { - var destObj = dest[i]; - if (destObj === r.source) { - path = localName; - sourceObj = r.source; - } - else if (typeof destObj === 'string') { - path += "['" + destObj.replace(/'/gi, '\\\'') + "']"; - sourceObj = sourceObj[destObj]; - } - else if (destObj !== sourceObj) { - return ''; - } - } - return path + " = " + localName + "; "; -} -function typedArrayToString(value, options, history) { - var arr = Array.from(value), arrString = arrayToString(arr, options, history), constructorName = value.constructor.name; - return "new " + constructorName + "(" + arrString + ")"; -} -function setToString(value, options, history) { - var setValues = []; - value.forEach(function (value1, value2, set) { - setValues.push(stringifyRef(value2, options, history)); - }); - if (setValues.length === 0) - return "new Set()"; - return "new Set([" + setValues.join(", ") + "])"; -} -function mapToString(value, options, history) { - var mapValues = []; - value.forEach(function (indexValue, key) { - mapValues.push("[" + stringifyRef(key, options, history) + ", " + stringifyRef(indexValue, options, history) + "]"); - }); - if (mapValues.length === 0) - return "new Map()"; - return "new Map([" + mapValues.join(", ") + "])"; -} -function objectToString(value, options, history) { - var objectValues = []; - for (var propertyName in value) { - if (value.hasOwnProperty(propertyName)) { - history.references.push(propertyName); - var propertyValue = stringifyRef(value[propertyName], options, history); - history.references.pop(); - if (propertyValue !== "undefined") { - if (!(/^[a-zA-Z]+$/).test(propertyName)) { - propertyName = "\"" + propertyName + "\""; - } - objectValues.push(propertyName + ": " + propertyValue); - } - } - } - if (objectValues.length === 0) - return "{}"; - return attachActions(getLocalRefs(value), "{\n" + objectValues.join(",\n") + "\n}"); -} -function functionPropertiesToString(functionName, value, options, history) { - var result = ""; - for (var propertyName in value) { - if (value.hasOwnProperty(propertyName)) { - history.references.push(propertyName); - var propertyValue = stringifyRef(value[propertyName], options, history); - history.references.pop(); - if (propertyValue !== "undefined") { - result += functionName + "." + propertyName + " = " + propertyValue + ";\n"; - } - } - } - return result; -} -function functionToString(value, options, history) { - var functionName = value.name || "anonymousFunction"; - var functionObject = options.includeFunctionProperties - ? functionPropertiesToString(functionName, value, options, history) - : ""; - history.references.push('prototype'); - var functionPrototype = options.includeFunctionPrototype - ? functionPropertiesToString(functionName + ".prototype", value.prototype, options, history) - : ""; - history.references.pop(); - var functionStr = String(value); - if (functionStr.indexOf('[native code]') > -1 && functionStr.length < 100) { - for (var nfName in nativeFunctions) { - if (nativeFunctions[nfName] === value) { - functionStr = nfName; - } - } - } - if (!functionObject && !functionPrototype) { - return functionStr; - } - return attachActions(getLocalRefs(value), "(function(){\n var " + functionName + " = " + String(functionStr) + ";\n " + functionObject + "\n " + functionPrototype + "\n return " + functionName + ";\n}())"); -} -function arrayBufferToString(value, options, history) { - if (!options.includeBuffers) - return "undefined"; - var str = typedArrayToString(new Int8Array(value), options, history); - return "(" + str + ").buffer"; -} -function dataViewToString(value, options, history) { - if (!options.includeBuffers) - return "undefined"; - var bufString = arrayBufferToString(value.buffer, options, history); - return "new DataView(" + bufString + ", " + value.byteOffset + ", " + value.byteLength + ")"; -} -/** - * Converts to string the value, if it wasn't before - * @param value the value, that converts to string - * @param references the references to stringified objects - */ -function stringify(value, options, history) { - switch ((0, get_internal_type_1.default)(value)) { - case "undefined": - return "undefined"; - case "null": - return "null"; - case "boolean": - return String(value); - case "regexp": - return String(value); - case "string": - return JSON.stringify(value); - case "number": - return numberToString(value); - case "bigint": - return "BigInt(" + value + ")"; - case "symbol": - return symbolToString(value); - case "date": - return dateToString(value); - case "error": - return errorToString(value); - case "array": - return arrayToString(value, options, history); - case "typedarray": - return typedArrayToString(value, options, history); - case "set": - return setToString(value, options, history); - case "map": - return mapToString(value, options, history); - case "object": - return objectToString(value, options, history); - case "function": - case "generatorfunction": - return functionToString(value, options, history); - case "arraybuffer": - return arrayBufferToString(value, options, history); - case "dataview": - return dataViewToString(value, options, history); - case "promise": - case "generator": - return "undefined"; - default: - return JSON.stringify(value); - } -} -/** - * Stringify the value, if it wasn't before - * @param value the value, that converts to string - * @param references the references to stringified objects - */ -function stringifyRef(value, options, history) { - var index = history.references.indexOf(value); - if (index < 0 || typeof (history.references[index]) === 'string') { - var objectType = (0, get_internal_type_1.default)(value); - var referencesLength = history.references.length; - history.references.push(value); - switch (objectType) { - case "object": - if (history.nestedObjectsLeft <= 0) - return "undefined"; - history.nestedObjectsLeft--; - break; - case "array": - case "typedarray": - if (history.nestedArraysLeft <= 0) - return "undefined"; - history.nestedArraysLeft--; - break; - case "function": - case "generatorfunction": - if (history.nestedFunctionsLeft <= 0) - return "undefined"; - history.nestedFunctionsLeft--; - break; - } - var refString = stringify(value, options, history); - history.references.splice(referencesLength); - switch (objectType) { - case "object": - history.nestedObjectsLeft++; - break; - case "array": - case "typedarray": - history.nestedArraysLeft++; - break; - case "function": - case "generatorfunction": - history.nestedFunctionsLeft++; - break; - } - return refString; - } - else { - refs.push({ - historyRef: history.references.slice(0), - source: value - }); - } - return "null"; -} -/** - * Converts JavaScript value to string - * @param value the value of any type - * @param options [optional] The options of conversion - */ -function javaScriptToString(value, options) { - options = options || {}; - var concreteOptions = { - includeFunctionProperties: options.includeFunctionProperties === undefined - ? true - : options.includeFunctionProperties, - includeFunctionPrototype: options.includeFunctionPrototype === undefined - ? true - : options.includeFunctionPrototype, - includeBuffers: options.includeBuffers === undefined ? true : options.includeBuffers, - nestedObjectsAmount: options.nestedObjectsAmount === undefined - ? Number.POSITIVE_INFINITY - : options.nestedObjectsAmount, - nestedArraysAmount: options.nestedArraysAmount === undefined - ? Number.POSITIVE_INFINITY - : options.nestedArraysAmount, - nestedFunctionsAmount: options.nestedFunctionsAmount === undefined - ? Number.POSITIVE_INFINITY - : options.nestedFunctionsAmount - }; - return stringify(value, concreteOptions, { - references: [value], - nestedObjectsLeft: concreteOptions.nestedObjectsAmount, - nestedArraysLeft: concreteOptions.nestedArraysAmount, - nestedFunctionsLeft: concreteOptions.nestedFunctionsAmount - }); -} -exports.default = javaScriptToString; +"use strict"; +var __importDefault = (this && this.__importDefault) || function (mod) { + return (mod && mod.__esModule) ? mod : { "default": mod }; +}; +Object.defineProperty(exports, "__esModule", { value: true }); +var get_internal_type_1 = __importDefault(require("@lopatnov/get-internal-type")); +var refs = []; +var counter = 0; +function fillNativeFunctions(ext, obj, objName, fromPrototype) { + if (fromPrototype === void 0) { fromPrototype = true; } + var arrNames = Object.getOwnPropertyNames(fromPrototype ? obj.prototype : obj); + var protoPath = fromPrototype ? ".prototype." : "."; + for (var _i = 0, arrNames_1 = arrNames; _i < arrNames_1.length; _i++) { + var name_1 = arrNames_1[_i]; + if (["caller", "callee", "arguments"].indexOf(name_1) < 0) { + ext["".concat(objName).concat(protoPath).concat(name_1)] = fromPrototype ? obj.prototype[name_1] : obj[name_1]; + } + } +} +var nativeFunctions = (function () { + var functions = {}; + fillNativeFunctions(functions, Array, "Array", false); + fillNativeFunctions(functions, Array, "Array"); + fillNativeFunctions(functions, JSON, "JSON", false); + fillNativeFunctions(functions, Object, "Object", false); + fillNativeFunctions(functions, Object, "Object"); + fillNativeFunctions(functions, Function, "Function", false); + fillNativeFunctions(functions, Function, "Function"); + fillNativeFunctions(functions, Date, "Date", false); + fillNativeFunctions(functions, String, "String"); + functions.Function = Function; + return functions; +})(); +function numberToString(value) { + if (Number.isNaN(value)) { + return "Number.NaN"; + } + switch (value) { + case Number.POSITIVE_INFINITY: + return "Number.POSITIVE_INFINITY"; + case Number.NEGATIVE_INFINITY: + return "Number.NEGATIVE_INFINITY"; + case Number.EPSILON: + return "Number.EPSILON"; + case Number.MAX_SAFE_INTEGER: + return "Number.MAX_SAFE_INTEGER"; + case Number.MIN_SAFE_INTEGER: + return "Number.MIN_SAFE_INTEGER"; + case Number.MAX_VALUE: + return "Number.MAX_VALUE"; + case Number.MIN_VALUE: + return "Number.MIN_VALUE"; + case Math.PI: + return "Math.PI"; + case Math.E: + return "Math.E"; + case Math.LN10: + return "Math.LN10"; + case Math.LN2: + return "Math.LN2"; + case Math.LOG10E: + return "Math.LOG10E"; + case Math.LOG2E: + return "Math.LOG2E"; + case Math.SQRT1_2: + return "Math.SQRT1_2"; + case Math.SQRT2: + return "Math.SQRT2"; + default: + return String(value); + } +} +function symbolToString(value) { + switch (value) { + case Symbol.asyncIterator: + case Symbol.hasInstance: + case Symbol.isConcatSpreadable: + case Symbol.iterator: + case Symbol.match: + case Symbol.prototype: + case Symbol.replace: + case Symbol.search: + case Symbol.species: + case Symbol.split: + case Symbol.toPrimitive: + case Symbol.toStringTag: + case Symbol.unscopables: + return value.description; + default: + var description = value.description ? "\"".concat(value.description, "\"") : ""; + return "Symbol(".concat(description, ")"); + } +} +function dateToString(value) { + if (isNaN(value.getTime())) { + return "new Date(".concat(value.toString(), ")"); + } + return "new Date(".concat(value.toISOString(), ")"); +} +function errorToString(value) { + var message = JSON.stringify(value.message), fileName = JSON.stringify(value.fileName), lineNumber = JSON.stringify(value.lineNumber); + return "new Error(".concat(message, ", ").concat(fileName, ", ").concat(lineNumber, ")"); +} +function arrayToString(value, options, history) { + if (value.length === 0) + return "[]"; + var arrayValues = value.reduce(function (x1, x2, index) { + history.references.push(index.toString()); + var str = !!x1 ? "".concat(x1, ", ") : ""; + str += stringifyRef(x2, options, history); + history.references.pop(); + return str; + }, ""); + return attachActions(getLocalRefs(value), "[".concat(arrayValues, "]")); +} +function getLocalRefs(value) { + return refs.filter(function (x) { return x.source === value; }); +} +function attachActions(localRefs, result) { + if (localRefs.length > 0) { + counter = counter++ % Number.MAX_SAFE_INTEGER; + var localName_1 = "___j2s_".concat(counter); + var actions = localRefs.reduce(function (x1, x2) { + var action = converToAction(localName_1, x2); + refs.splice(refs.indexOf(x2), 1); + return x1 + action; + }, ""); + return "(function(){ var ".concat(localName_1, " = ").concat(result, "; ").concat(actions, " return ").concat(localName_1, "; }())"); + } + return result; +} +function converToAction(localName, r) { + var destIndex = r.historyRef.indexOf(r.source); + if (destIndex < 0) { + return ""; + } + var dest = r.historyRef.slice(destIndex); + var sourceObj; + var path = ""; + for (var i = 0; i < dest.length; i++) { + var destObj = dest[i]; + if (destObj === r.source) { + path = localName; + sourceObj = r.source; + } + else if (typeof destObj === "string") { + path += "['".concat(destObj.replace(/'/gi, "\\'"), "']"); + sourceObj = sourceObj[destObj]; + } + else if (destObj !== sourceObj) { + return ""; + } + } + return "".concat(path, " = ").concat(localName, "; "); +} +function typedArrayToString(value, options, history) { + var arr = Array.from(value), arrString = arrayToString(arr, options, history), constructorName = value.constructor.name; + return "new ".concat(constructorName, "(").concat(arrString, ")"); +} +function setToString(value, options, history) { + var setValues = []; + value.forEach(function (value1, value2, set) { + setValues.push(stringifyRef(value2, options, history)); + }); + if (setValues.length === 0) + return "new Set()"; + return "new Set([".concat(setValues.join(", "), "])"); +} +function mapToString(value, options, history) { + var mapValues = []; + value.forEach(function (indexValue, key) { + mapValues.push("[".concat(stringifyRef(key, options, history), ", ").concat(stringifyRef(indexValue, options, history), "]")); + }); + if (mapValues.length === 0) + return "new Map()"; + return "new Map([".concat(mapValues.join(", "), "])"); +} +function objectToString(value, options, history) { + var objectValues = []; + for (var propertyName in value) { + if (value.hasOwnProperty(propertyName)) { + history.references.push(propertyName); + var propertyValue = stringifyRef(value[propertyName], options, history); + history.references.pop(); + if (propertyValue !== "undefined") { + if (!/^[a-zA-Z]+$/.test(propertyName)) { + propertyName = "\"".concat(propertyName, "\""); + } + objectValues.push("".concat(propertyName, ": ").concat(propertyValue)); + } + } + } + if (objectValues.length === 0) + return "{}"; + return attachActions(getLocalRefs(value), "{\n".concat(objectValues.join(",\n"), "\n}")); +} +function functionPropertiesToString(functionName, value, options, history) { + var result = ""; + for (var propertyName in value) { + if (value.hasOwnProperty(propertyName)) { + history.references.push(propertyName); + var propertyValue = stringifyRef(value[propertyName], options, history); + history.references.pop(); + if (propertyValue !== "undefined") { + result += "".concat(functionName, ".").concat(propertyName, " = ").concat(propertyValue, ";\n"); + } + } + } + return result; +} +function functionToString(value, options, history) { + var functionName = value.name || "anonymousFunction"; + var functionObject = options.includeFunctionProperties + ? functionPropertiesToString(functionName, value, options, history) + : ""; + history.references.push("prototype"); + var functionPrototype = options.includeFunctionPrototype + ? functionPropertiesToString("".concat(functionName, ".prototype"), value.prototype, options, history) + : ""; + history.references.pop(); + var functionStr = String(value); + if (functionStr.indexOf("[native code]") > -1 && functionStr.length < 100) { + for (var nfName in nativeFunctions) { + if (nativeFunctions[nfName] === value) { + functionStr = nfName; + } + } + } + if (!functionObject && !functionPrototype) { + return functionStr; + } + return attachActions(getLocalRefs(value), "(function(){\n var ".concat(functionName, " = ").concat(String(functionStr), ";\n ").concat(functionObject, "\n ").concat(functionPrototype, "\n return ").concat(functionName, ";\n}())")); +} +function arrayBufferToString(value, options, history) { + if (!options.includeBuffers) + return "undefined"; + var str = typedArrayToString(new Int8Array(value), options, history); + return "(".concat(str, ").buffer"); +} +function dataViewToString(value, options, history) { + if (!options.includeBuffers) + return "undefined"; + var bufString = arrayBufferToString(value.buffer, options, history); + return "new DataView(".concat(bufString, ", ").concat(value.byteOffset, ", ").concat(value.byteLength, ")"); +} +/** + * Converts to string the value, if it wasn't before + * @param value the value, that converts to string + * @param references the references to stringified objects + */ +function stringify(value, options, history) { + switch ((0, get_internal_type_1.default)(value)) { + case "undefined": + return "undefined"; + case "null": + return "null"; + case "boolean": + return String(value); + case "regexp": + return String(value); + case "string": + return JSON.stringify(value); + case "number": + return numberToString(value); + case "bigint": + return "BigInt(".concat(value, ")"); + case "symbol": + return symbolToString(value); + case "date": + return dateToString(value); + case "error": + return errorToString(value); + case "array": + return arrayToString(value, options, history); + case "typedarray": + return typedArrayToString(value, options, history); + case "set": + return setToString(value, options, history); + case "map": + return mapToString(value, options, history); + case "object": + return objectToString(value, options, history); + case "function": + case "generatorfunction": + return functionToString(value, options, history); + case "arraybuffer": + return arrayBufferToString(value, options, history); + case "dataview": + return dataViewToString(value, options, history); + case "promise": + case "generator": + return "undefined"; + default: + return JSON.stringify(value); + } +} +/** + * Stringify the value, if it wasn't before + * @param value the value, that converts to string + * @param references the references to stringified objects + */ +function stringifyRef(value, options, history) { + var index = history.references.indexOf(value); + if (index < 0 || typeof history.references[index] === "string") { + var objectType = (0, get_internal_type_1.default)(value); + var referencesLength = history.references.length; + history.references.push(value); + switch (objectType) { + case "object": + if (history.nestedObjectsLeft <= 0) + return "undefined"; + history.nestedObjectsLeft--; + break; + case "array": + case "typedarray": + if (history.nestedArraysLeft <= 0) + return "undefined"; + history.nestedArraysLeft--; + break; + case "function": + case "generatorfunction": + if (history.nestedFunctionsLeft <= 0) + return "undefined"; + history.nestedFunctionsLeft--; + break; + } + var refString = stringify(value, options, history); + history.references.splice(referencesLength); + switch (objectType) { + case "object": + history.nestedObjectsLeft++; + break; + case "array": + case "typedarray": + history.nestedArraysLeft++; + break; + case "function": + case "generatorfunction": + history.nestedFunctionsLeft++; + break; + } + return refString; + } + else { + refs.push({ + historyRef: history.references.slice(0), + source: value, + }); + } + return "null"; +} +/** + * Converts JavaScript value to string + * @param value the value of any type + * @param options [optional] The options of conversion + */ +function javaScriptToString(value, options) { + options = options || {}; + var concreteOptions = { + includeFunctionProperties: options.includeFunctionProperties === undefined ? true : options.includeFunctionProperties, + includeFunctionPrototype: options.includeFunctionPrototype === undefined ? true : options.includeFunctionPrototype, + includeBuffers: options.includeBuffers === undefined ? true : options.includeBuffers, + nestedObjectsAmount: options.nestedObjectsAmount === undefined ? Number.POSITIVE_INFINITY : options.nestedObjectsAmount, + nestedArraysAmount: options.nestedArraysAmount === undefined ? Number.POSITIVE_INFINITY : options.nestedArraysAmount, + nestedFunctionsAmount: options.nestedFunctionsAmount === undefined ? Number.POSITIVE_INFINITY : options.nestedFunctionsAmount, + }; + // Clear global state before conversion to ensure thread safety + refs = []; + counter = 0; + var result = stringify(value, concreteOptions, { + references: [value], + nestedObjectsLeft: concreteOptions.nestedObjectsAmount, + nestedArraysLeft: concreteOptions.nestedArraysAmount, + nestedFunctionsLeft: concreteOptions.nestedFunctionsAmount, + }); + // Handle remaining circular references at the top level (Issue #1 fix) + return attachActions(getLocalRefs(value), result); +} +exports.default = javaScriptToString; //# sourceMappingURL=javascripttostring.js.map \ No newline at end of file diff --git a/dist/lib/javascripttostring.js.map b/dist/lib/javascripttostring.js.map index f62cc31..f6534ec 100644 --- a/dist/lib/javascripttostring.js.map +++ b/dist/lib/javascripttostring.js.map @@ -1 +1 @@ -{"version":3,"file":"javascripttostring.js","sourceRoot":"","sources":["../../src/javascripttostring.ts"],"names":[],"mappings":"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"} \ No newline at end of file +{"version":3,"file":"javascripttostring.js","sourceRoot":"","sources":["../../src/javascripttostring.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/types/javascripttostring.d.ts b/dist/types/javascripttostring.d.ts index 431e7e5..030dd49 100644 --- a/dist/types/javascripttostring.d.ts +++ b/dist/types/javascripttostring.d.ts @@ -1,15 +1,15 @@ -export interface IJ2SOptions { - includeFunctionProperties?: boolean; - includeFunctionPrototype?: boolean; - includeBuffers?: boolean; - nestedObjectsAmount?: number; - nestedArraysAmount?: number; - nestedFunctionsAmount?: number; -} -/** - * Converts JavaScript value to string - * @param value the value of any type - * @param options [optional] The options of conversion - */ -declare function javaScriptToString(value: any, options?: IJ2SOptions): string; -export default javaScriptToString; +export interface IJ2SOptions { + includeFunctionProperties?: boolean; + includeFunctionPrototype?: boolean; + includeBuffers?: boolean; + nestedObjectsAmount?: number; + nestedArraysAmount?: number; + nestedFunctionsAmount?: number; +} +/** + * Converts JavaScript value to string + * @param value the value of any type + * @param options [optional] The options of conversion + */ +declare function javaScriptToString(value: any, options?: IJ2SOptions): string; +export default javaScriptToString; diff --git a/docs/assets/hierarchy.js b/docs/assets/hierarchy.js new file mode 100644 index 0000000..fb85f0a --- /dev/null +++ b/docs/assets/hierarchy.js @@ -0,0 +1 @@ +window.hierarchyData = "eJyrVirKzy8pVrKKjtVRKkpNy0lNLsnMzytWsqqurQUAmx4Kpg==" \ No newline at end of file diff --git a/docs/assets/highlight.css b/docs/assets/highlight.css index 3e29fa6..f01fc9d 100644 --- a/docs/assets/highlight.css +++ b/docs/assets/highlight.css @@ -1,26 +1,26 @@ :root { - --light-hl-0: #000000; - --dark-hl-0: #D4D4D4; - --light-hl-1: #800000; - --dark-hl-1: #808080; - --light-hl-2: #800000; - --dark-hl-2: #569CD6; - --light-hl-3: #000000FF; - --dark-hl-3: #D4D4D4; - --light-hl-4: #FF0000; - --dark-hl-4: #9CDCFE; - --light-hl-5: #0000FF; - --dark-hl-5: #CE9178; - --light-hl-6: #AF00DB; - --dark-hl-6: #C586C0; - --light-hl-7: #001080; - --dark-hl-7: #9CDCFE; - --light-hl-8: #A31515; - --dark-hl-8: #CE9178; - --light-hl-9: #0000FF; - --dark-hl-9: #569CD6; - --light-hl-10: #795E26; - --dark-hl-10: #DCDCAA; + --light-hl-0: #795E26; + --dark-hl-0: #DCDCAA; + --light-hl-1: #000000; + --dark-hl-1: #D4D4D4; + --light-hl-2: #A31515; + --dark-hl-2: #CE9178; + --light-hl-3: #800000; + --dark-hl-3: #808080; + --light-hl-4: #800000; + --dark-hl-4: #569CD6; + --light-hl-5: #000000FF; + --dark-hl-5: #D4D4D4; + --light-hl-6: #E50000; + --dark-hl-6: #9CDCFE; + --light-hl-7: #0000FF; + --dark-hl-7: #CE9178; + --light-hl-8: #AF00DB; + --dark-hl-8: #C586C0; + --light-hl-9: #001080; + --dark-hl-9: #9CDCFE; + --light-hl-10: #0000FF; + --dark-hl-10: #569CD6; --light-hl-11: #267F99; --dark-hl-11: #4EC9B0; --light-hl-12: #008000; @@ -67,7 +67,7 @@ --code-background: var(--dark-code-background); } } -body.light { +:root[data-theme='light'] { --hl-0: var(--light-hl-0); --hl-1: var(--light-hl-1); --hl-2: var(--light-hl-2); @@ -85,7 +85,7 @@ body.light { --code-background: var(--light-code-background); } -body.dark { +:root[data-theme='dark'] { --hl-0: var(--dark-hl-0); --hl-1: var(--dark-hl-1); --hl-2: var(--dark-hl-2); diff --git a/docs/assets/icons.css b/docs/assets/icons.css deleted file mode 100644 index 776a356..0000000 --- a/docs/assets/icons.css +++ /dev/null @@ -1,1043 +0,0 @@ -.tsd-kind-icon { - display: block; - position: relative; - padding-left: 20px; - text-indent: -20px; -} -.tsd-kind-icon:before { - content: ""; - display: inline-block; - vertical-align: middle; - width: 17px; - height: 17px; - margin: 0 3px 2px 0; - background-image: url(./icons.png); -} -@media (-webkit-min-device-pixel-ratio: 1.5), (min-resolution: 144dpi) { - .tsd-kind-icon:before { - background-image: url(./icons@2x.png); - background-size: 238px 204px; - } -} - -.tsd-signature.tsd-kind-icon:before { - background-position: 0 -153px; -} - -.tsd-kind-object-literal > .tsd-kind-icon:before { - background-position: 0px -17px; -} -.tsd-kind-object-literal.tsd-is-protected > .tsd-kind-icon:before { - background-position: -17px -17px; -} -.tsd-kind-object-literal.tsd-is-private > .tsd-kind-icon:before { - background-position: -34px -17px; -} - -.tsd-kind-class > .tsd-kind-icon:before { - background-position: 0px -34px; -} -.tsd-kind-class.tsd-is-protected > .tsd-kind-icon:before { - background-position: -17px -34px; -} -.tsd-kind-class.tsd-is-private > .tsd-kind-icon:before { - background-position: -34px -34px; -} - -.tsd-kind-class.tsd-has-type-parameter > .tsd-kind-icon:before { - background-position: 0px -51px; -} -.tsd-kind-class.tsd-has-type-parameter.tsd-is-protected - > .tsd-kind-icon:before { - background-position: -17px -51px; -} -.tsd-kind-class.tsd-has-type-parameter.tsd-is-private > .tsd-kind-icon:before { - background-position: -34px -51px; -} - -.tsd-kind-interface > .tsd-kind-icon:before { - background-position: 0px -68px; -} -.tsd-kind-interface.tsd-is-protected > .tsd-kind-icon:before { - background-position: -17px -68px; -} -.tsd-kind-interface.tsd-is-private > .tsd-kind-icon:before { - background-position: -34px -68px; -} - -.tsd-kind-interface.tsd-has-type-parameter > .tsd-kind-icon:before { - background-position: 0px -85px; -} -.tsd-kind-interface.tsd-has-type-parameter.tsd-is-protected - > .tsd-kind-icon:before { - background-position: -17px -85px; -} -.tsd-kind-interface.tsd-has-type-parameter.tsd-is-private - > .tsd-kind-icon:before { - background-position: -34px -85px; -} - -.tsd-kind-namespace > .tsd-kind-icon:before { - background-position: 0px -102px; -} -.tsd-kind-namespace.tsd-is-protected > .tsd-kind-icon:before { - background-position: -17px -102px; -} -.tsd-kind-namespace.tsd-is-private > .tsd-kind-icon:before { - background-position: -34px -102px; -} - -.tsd-kind-module > .tsd-kind-icon:before { - background-position: 0px -102px; -} -.tsd-kind-module.tsd-is-protected > .tsd-kind-icon:before { - background-position: -17px -102px; -} -.tsd-kind-module.tsd-is-private > .tsd-kind-icon:before { - background-position: -34px -102px; -} - -.tsd-kind-enum > .tsd-kind-icon:before { - background-position: 0px -119px; -} -.tsd-kind-enum.tsd-is-protected > .tsd-kind-icon:before { - background-position: -17px -119px; -} -.tsd-kind-enum.tsd-is-private > .tsd-kind-icon:before { - background-position: -34px -119px; -} - -.tsd-kind-enum-member > .tsd-kind-icon:before { - background-position: 0px -136px; -} -.tsd-kind-enum-member.tsd-is-protected > .tsd-kind-icon:before { - background-position: -17px -136px; -} -.tsd-kind-enum-member.tsd-is-private > .tsd-kind-icon:before { - background-position: -34px -136px; -} - -.tsd-kind-signature > .tsd-kind-icon:before { - background-position: 0px -153px; -} -.tsd-kind-signature.tsd-is-protected > .tsd-kind-icon:before { - background-position: -17px -153px; -} -.tsd-kind-signature.tsd-is-private > .tsd-kind-icon:before { - background-position: -34px -153px; -} - -.tsd-kind-type-alias > .tsd-kind-icon:before { - background-position: 0px -170px; -} -.tsd-kind-type-alias.tsd-is-protected > .tsd-kind-icon:before { - background-position: -17px -170px; -} -.tsd-kind-type-alias.tsd-is-private > .tsd-kind-icon:before { - background-position: -34px -170px; -} - -.tsd-kind-type-alias.tsd-has-type-parameter > .tsd-kind-icon:before { - background-position: 0px -187px; -} -.tsd-kind-type-alias.tsd-has-type-parameter.tsd-is-protected - > .tsd-kind-icon:before { - background-position: -17px -187px; -} -.tsd-kind-type-alias.tsd-has-type-parameter.tsd-is-private - > .tsd-kind-icon:before { - background-position: -34px -187px; -} - -.tsd-kind-variable > .tsd-kind-icon:before { - background-position: -136px -0px; -} -.tsd-kind-variable.tsd-is-protected > .tsd-kind-icon:before { - background-position: -153px -0px; -} -.tsd-kind-variable.tsd-is-private > .tsd-kind-icon:before { - background-position: -119px -0px; -} -.tsd-kind-variable.tsd-parent-kind-class > .tsd-kind-icon:before { - background-position: -51px -0px; -} -.tsd-kind-variable.tsd-parent-kind-class.tsd-is-inherited - > .tsd-kind-icon:before { - background-position: -68px -0px; -} -.tsd-kind-variable.tsd-parent-kind-class.tsd-is-protected - > .tsd-kind-icon:before { - background-position: -85px -0px; -} -.tsd-kind-variable.tsd-parent-kind-class.tsd-is-protected.tsd-is-inherited - > .tsd-kind-icon:before { - background-position: -102px -0px; -} -.tsd-kind-variable.tsd-parent-kind-class.tsd-is-private - > .tsd-kind-icon:before { - background-position: -119px -0px; -} -.tsd-kind-variable.tsd-parent-kind-enum > .tsd-kind-icon:before { - background-position: -170px -0px; -} -.tsd-kind-variable.tsd-parent-kind-enum.tsd-is-protected - > .tsd-kind-icon:before { - background-position: -187px -0px; -} -.tsd-kind-variable.tsd-parent-kind-enum.tsd-is-private > .tsd-kind-icon:before { - background-position: -119px -0px; -} -.tsd-kind-variable.tsd-parent-kind-interface > .tsd-kind-icon:before { - background-position: -204px -0px; -} -.tsd-kind-variable.tsd-parent-kind-interface.tsd-is-inherited - > .tsd-kind-icon:before { - background-position: -221px -0px; -} - -.tsd-kind-property > .tsd-kind-icon:before { - background-position: -136px -0px; -} -.tsd-kind-property.tsd-is-protected > .tsd-kind-icon:before { - background-position: -153px -0px; -} -.tsd-kind-property.tsd-is-private > .tsd-kind-icon:before { - background-position: -119px -0px; -} -.tsd-kind-property.tsd-parent-kind-class > .tsd-kind-icon:before { - background-position: -51px -0px; -} -.tsd-kind-property.tsd-parent-kind-class.tsd-is-inherited - > .tsd-kind-icon:before { - background-position: -68px -0px; -} -.tsd-kind-property.tsd-parent-kind-class.tsd-is-protected - > .tsd-kind-icon:before { - background-position: -85px -0px; -} -.tsd-kind-property.tsd-parent-kind-class.tsd-is-protected.tsd-is-inherited - > .tsd-kind-icon:before { - background-position: -102px -0px; -} -.tsd-kind-property.tsd-parent-kind-class.tsd-is-private - > .tsd-kind-icon:before { - background-position: -119px -0px; -} -.tsd-kind-property.tsd-parent-kind-enum > .tsd-kind-icon:before { - background-position: -170px -0px; -} -.tsd-kind-property.tsd-parent-kind-enum.tsd-is-protected - > .tsd-kind-icon:before { - background-position: -187px -0px; -} -.tsd-kind-property.tsd-parent-kind-enum.tsd-is-private > .tsd-kind-icon:before { - background-position: -119px -0px; -} -.tsd-kind-property.tsd-parent-kind-interface > .tsd-kind-icon:before { - background-position: -204px -0px; -} -.tsd-kind-property.tsd-parent-kind-interface.tsd-is-inherited - > .tsd-kind-icon:before { - background-position: -221px -0px; -} - -.tsd-kind-get-signature > .tsd-kind-icon:before { - background-position: -136px -17px; -} -.tsd-kind-get-signature.tsd-is-protected > .tsd-kind-icon:before { - background-position: -153px -17px; -} -.tsd-kind-get-signature.tsd-is-private > .tsd-kind-icon:before { - background-position: -119px -17px; -} -.tsd-kind-get-signature.tsd-parent-kind-class > .tsd-kind-icon:before { - background-position: -51px -17px; -} -.tsd-kind-get-signature.tsd-parent-kind-class.tsd-is-inherited - > .tsd-kind-icon:before { - background-position: -68px -17px; -} -.tsd-kind-get-signature.tsd-parent-kind-class.tsd-is-protected - > .tsd-kind-icon:before { - background-position: -85px -17px; -} -.tsd-kind-get-signature.tsd-parent-kind-class.tsd-is-protected.tsd-is-inherited - > .tsd-kind-icon:before { - background-position: -102px -17px; -} -.tsd-kind-get-signature.tsd-parent-kind-class.tsd-is-private - > .tsd-kind-icon:before { - background-position: -119px -17px; -} -.tsd-kind-get-signature.tsd-parent-kind-enum > .tsd-kind-icon:before { - background-position: -170px -17px; -} -.tsd-kind-get-signature.tsd-parent-kind-enum.tsd-is-protected - > .tsd-kind-icon:before { - background-position: -187px -17px; -} -.tsd-kind-get-signature.tsd-parent-kind-enum.tsd-is-private - > .tsd-kind-icon:before { - background-position: -119px -17px; -} -.tsd-kind-get-signature.tsd-parent-kind-interface > .tsd-kind-icon:before { - background-position: -204px -17px; -} -.tsd-kind-get-signature.tsd-parent-kind-interface.tsd-is-inherited - > .tsd-kind-icon:before { - background-position: -221px -17px; -} - -.tsd-kind-set-signature > .tsd-kind-icon:before { - background-position: -136px -34px; -} -.tsd-kind-set-signature.tsd-is-protected > .tsd-kind-icon:before { - background-position: -153px -34px; -} -.tsd-kind-set-signature.tsd-is-private > .tsd-kind-icon:before { - background-position: -119px -34px; -} -.tsd-kind-set-signature.tsd-parent-kind-class > .tsd-kind-icon:before { - background-position: -51px -34px; -} -.tsd-kind-set-signature.tsd-parent-kind-class.tsd-is-inherited - > .tsd-kind-icon:before { - background-position: -68px -34px; -} -.tsd-kind-set-signature.tsd-parent-kind-class.tsd-is-protected - > .tsd-kind-icon:before { - background-position: -85px -34px; -} -.tsd-kind-set-signature.tsd-parent-kind-class.tsd-is-protected.tsd-is-inherited - > .tsd-kind-icon:before { - background-position: -102px -34px; -} -.tsd-kind-set-signature.tsd-parent-kind-class.tsd-is-private - > .tsd-kind-icon:before { - background-position: -119px -34px; -} -.tsd-kind-set-signature.tsd-parent-kind-enum > .tsd-kind-icon:before { - background-position: -170px -34px; -} -.tsd-kind-set-signature.tsd-parent-kind-enum.tsd-is-protected - > .tsd-kind-icon:before { - background-position: -187px -34px; -} -.tsd-kind-set-signature.tsd-parent-kind-enum.tsd-is-private - > .tsd-kind-icon:before { - background-position: -119px -34px; -} -.tsd-kind-set-signature.tsd-parent-kind-interface > .tsd-kind-icon:before { - background-position: -204px -34px; -} -.tsd-kind-set-signature.tsd-parent-kind-interface.tsd-is-inherited - > .tsd-kind-icon:before { - background-position: -221px -34px; -} - -.tsd-kind-accessor > .tsd-kind-icon:before { - background-position: -136px -51px; -} -.tsd-kind-accessor.tsd-is-protected > .tsd-kind-icon:before { - background-position: -153px -51px; -} -.tsd-kind-accessor.tsd-is-private > .tsd-kind-icon:before { - background-position: -119px -51px; -} -.tsd-kind-accessor.tsd-parent-kind-class > .tsd-kind-icon:before { - background-position: -51px -51px; -} -.tsd-kind-accessor.tsd-parent-kind-class.tsd-is-inherited - > .tsd-kind-icon:before { - background-position: -68px -51px; -} -.tsd-kind-accessor.tsd-parent-kind-class.tsd-is-protected - > .tsd-kind-icon:before { - background-position: -85px -51px; -} -.tsd-kind-accessor.tsd-parent-kind-class.tsd-is-protected.tsd-is-inherited - > .tsd-kind-icon:before { - background-position: -102px -51px; -} -.tsd-kind-accessor.tsd-parent-kind-class.tsd-is-private - > .tsd-kind-icon:before { - background-position: -119px -51px; -} -.tsd-kind-accessor.tsd-parent-kind-enum > .tsd-kind-icon:before { - background-position: -170px -51px; -} -.tsd-kind-accessor.tsd-parent-kind-enum.tsd-is-protected - > .tsd-kind-icon:before { - background-position: -187px -51px; -} -.tsd-kind-accessor.tsd-parent-kind-enum.tsd-is-private > .tsd-kind-icon:before { - background-position: -119px -51px; -} -.tsd-kind-accessor.tsd-parent-kind-interface > .tsd-kind-icon:before { - background-position: -204px -51px; -} -.tsd-kind-accessor.tsd-parent-kind-interface.tsd-is-inherited - > .tsd-kind-icon:before { - background-position: -221px -51px; -} - -.tsd-kind-function > .tsd-kind-icon:before { - background-position: -136px -68px; -} -.tsd-kind-function.tsd-is-protected > .tsd-kind-icon:before { - background-position: -153px -68px; -} -.tsd-kind-function.tsd-is-private > .tsd-kind-icon:before { - background-position: -119px -68px; -} -.tsd-kind-function.tsd-parent-kind-class > .tsd-kind-icon:before { - background-position: -51px -68px; -} -.tsd-kind-function.tsd-parent-kind-class.tsd-is-inherited - > .tsd-kind-icon:before { - background-position: -68px -68px; -} -.tsd-kind-function.tsd-parent-kind-class.tsd-is-protected - > .tsd-kind-icon:before { - background-position: -85px -68px; -} -.tsd-kind-function.tsd-parent-kind-class.tsd-is-protected.tsd-is-inherited - > .tsd-kind-icon:before { - background-position: -102px -68px; -} -.tsd-kind-function.tsd-parent-kind-class.tsd-is-private - > .tsd-kind-icon:before { - background-position: -119px -68px; -} -.tsd-kind-function.tsd-parent-kind-enum > .tsd-kind-icon:before { - background-position: -170px -68px; -} -.tsd-kind-function.tsd-parent-kind-enum.tsd-is-protected - > .tsd-kind-icon:before { - background-position: -187px -68px; -} -.tsd-kind-function.tsd-parent-kind-enum.tsd-is-private > .tsd-kind-icon:before { - background-position: -119px -68px; -} -.tsd-kind-function.tsd-parent-kind-interface > .tsd-kind-icon:before { - background-position: -204px -68px; -} -.tsd-kind-function.tsd-parent-kind-interface.tsd-is-inherited - > .tsd-kind-icon:before { - background-position: -221px -68px; -} - -.tsd-kind-method > .tsd-kind-icon:before { - background-position: -136px -68px; -} -.tsd-kind-method.tsd-is-protected > .tsd-kind-icon:before { - background-position: -153px -68px; -} -.tsd-kind-method.tsd-is-private > .tsd-kind-icon:before { - background-position: -119px -68px; -} -.tsd-kind-method.tsd-parent-kind-class > .tsd-kind-icon:before { - background-position: -51px -68px; -} -.tsd-kind-method.tsd-parent-kind-class.tsd-is-inherited - > .tsd-kind-icon:before { - background-position: -68px -68px; -} -.tsd-kind-method.tsd-parent-kind-class.tsd-is-protected - > .tsd-kind-icon:before { - background-position: -85px -68px; -} -.tsd-kind-method.tsd-parent-kind-class.tsd-is-protected.tsd-is-inherited - > .tsd-kind-icon:before { - background-position: -102px -68px; -} -.tsd-kind-method.tsd-parent-kind-class.tsd-is-private > .tsd-kind-icon:before { - background-position: -119px -68px; -} -.tsd-kind-method.tsd-parent-kind-enum > .tsd-kind-icon:before { - background-position: -170px -68px; -} -.tsd-kind-method.tsd-parent-kind-enum.tsd-is-protected > .tsd-kind-icon:before { - background-position: -187px -68px; -} -.tsd-kind-method.tsd-parent-kind-enum.tsd-is-private > .tsd-kind-icon:before { - background-position: -119px -68px; -} -.tsd-kind-method.tsd-parent-kind-interface > .tsd-kind-icon:before { - background-position: -204px -68px; -} -.tsd-kind-method.tsd-parent-kind-interface.tsd-is-inherited - > .tsd-kind-icon:before { - background-position: -221px -68px; -} - -.tsd-kind-call-signature > .tsd-kind-icon:before { - background-position: -136px -68px; -} -.tsd-kind-call-signature.tsd-is-protected > .tsd-kind-icon:before { - background-position: -153px -68px; -} -.tsd-kind-call-signature.tsd-is-private > .tsd-kind-icon:before { - background-position: -119px -68px; -} -.tsd-kind-call-signature.tsd-parent-kind-class > .tsd-kind-icon:before { - background-position: -51px -68px; -} -.tsd-kind-call-signature.tsd-parent-kind-class.tsd-is-inherited - > .tsd-kind-icon:before { - background-position: -68px -68px; -} -.tsd-kind-call-signature.tsd-parent-kind-class.tsd-is-protected - > .tsd-kind-icon:before { - background-position: -85px -68px; -} -.tsd-kind-call-signature.tsd-parent-kind-class.tsd-is-protected.tsd-is-inherited - > .tsd-kind-icon:before { - background-position: -102px -68px; -} -.tsd-kind-call-signature.tsd-parent-kind-class.tsd-is-private - > .tsd-kind-icon:before { - background-position: -119px -68px; -} -.tsd-kind-call-signature.tsd-parent-kind-enum > .tsd-kind-icon:before { - background-position: -170px -68px; -} -.tsd-kind-call-signature.tsd-parent-kind-enum.tsd-is-protected - > .tsd-kind-icon:before { - background-position: -187px -68px; -} -.tsd-kind-call-signature.tsd-parent-kind-enum.tsd-is-private - > .tsd-kind-icon:before { - background-position: -119px -68px; -} -.tsd-kind-call-signature.tsd-parent-kind-interface > .tsd-kind-icon:before { - background-position: -204px -68px; -} -.tsd-kind-call-signature.tsd-parent-kind-interface.tsd-is-inherited - > .tsd-kind-icon:before { - background-position: -221px -68px; -} - -.tsd-kind-function.tsd-has-type-parameter > .tsd-kind-icon:before { - background-position: -136px -85px; -} -.tsd-kind-function.tsd-has-type-parameter.tsd-is-protected - > .tsd-kind-icon:before { - background-position: -153px -85px; -} -.tsd-kind-function.tsd-has-type-parameter.tsd-is-private - > .tsd-kind-icon:before { - background-position: -119px -85px; -} -.tsd-kind-function.tsd-has-type-parameter.tsd-parent-kind-class - > .tsd-kind-icon:before { - background-position: -51px -85px; -} -.tsd-kind-function.tsd-has-type-parameter.tsd-parent-kind-class.tsd-is-inherited - > .tsd-kind-icon:before { - background-position: -68px -85px; -} -.tsd-kind-function.tsd-has-type-parameter.tsd-parent-kind-class.tsd-is-protected - > .tsd-kind-icon:before { - background-position: -85px -85px; -} -.tsd-kind-function.tsd-has-type-parameter.tsd-parent-kind-class.tsd-is-protected.tsd-is-inherited - > .tsd-kind-icon:before { - background-position: -102px -85px; -} -.tsd-kind-function.tsd-has-type-parameter.tsd-parent-kind-class.tsd-is-private - > .tsd-kind-icon:before { - background-position: -119px -85px; -} -.tsd-kind-function.tsd-has-type-parameter.tsd-parent-kind-enum - > .tsd-kind-icon:before { - background-position: -170px -85px; -} -.tsd-kind-function.tsd-has-type-parameter.tsd-parent-kind-enum.tsd-is-protected - > .tsd-kind-icon:before { - background-position: -187px -85px; -} -.tsd-kind-function.tsd-has-type-parameter.tsd-parent-kind-enum.tsd-is-private - > .tsd-kind-icon:before { - background-position: -119px -85px; -} -.tsd-kind-function.tsd-has-type-parameter.tsd-parent-kind-interface - > .tsd-kind-icon:before { - background-position: -204px -85px; -} -.tsd-kind-function.tsd-has-type-parameter.tsd-parent-kind-interface.tsd-is-inherited - > .tsd-kind-icon:before { - background-position: -221px -85px; -} - -.tsd-kind-method.tsd-has-type-parameter > .tsd-kind-icon:before { - background-position: -136px -85px; -} -.tsd-kind-method.tsd-has-type-parameter.tsd-is-protected - > .tsd-kind-icon:before { - background-position: -153px -85px; -} -.tsd-kind-method.tsd-has-type-parameter.tsd-is-private > .tsd-kind-icon:before { - background-position: -119px -85px; -} -.tsd-kind-method.tsd-has-type-parameter.tsd-parent-kind-class - > .tsd-kind-icon:before { - background-position: -51px -85px; -} -.tsd-kind-method.tsd-has-type-parameter.tsd-parent-kind-class.tsd-is-inherited - > .tsd-kind-icon:before { - background-position: -68px -85px; -} -.tsd-kind-method.tsd-has-type-parameter.tsd-parent-kind-class.tsd-is-protected - > .tsd-kind-icon:before { - background-position: -85px -85px; -} -.tsd-kind-method.tsd-has-type-parameter.tsd-parent-kind-class.tsd-is-protected.tsd-is-inherited - > .tsd-kind-icon:before { - background-position: -102px -85px; -} -.tsd-kind-method.tsd-has-type-parameter.tsd-parent-kind-class.tsd-is-private - > .tsd-kind-icon:before { - background-position: -119px -85px; -} -.tsd-kind-method.tsd-has-type-parameter.tsd-parent-kind-enum - > .tsd-kind-icon:before { - background-position: -170px -85px; -} -.tsd-kind-method.tsd-has-type-parameter.tsd-parent-kind-enum.tsd-is-protected - > .tsd-kind-icon:before { - background-position: -187px -85px; -} -.tsd-kind-method.tsd-has-type-parameter.tsd-parent-kind-enum.tsd-is-private - > .tsd-kind-icon:before { - background-position: -119px -85px; -} -.tsd-kind-method.tsd-has-type-parameter.tsd-parent-kind-interface - > .tsd-kind-icon:before { - background-position: -204px -85px; -} -.tsd-kind-method.tsd-has-type-parameter.tsd-parent-kind-interface.tsd-is-inherited - > .tsd-kind-icon:before { - background-position: -221px -85px; -} - -.tsd-kind-constructor > .tsd-kind-icon:before { - background-position: -136px -102px; -} -.tsd-kind-constructor.tsd-is-protected > .tsd-kind-icon:before { - background-position: -153px -102px; -} -.tsd-kind-constructor.tsd-is-private > .tsd-kind-icon:before { - background-position: -119px -102px; -} -.tsd-kind-constructor.tsd-parent-kind-class > .tsd-kind-icon:before { - background-position: -51px -102px; -} -.tsd-kind-constructor.tsd-parent-kind-class.tsd-is-inherited - > .tsd-kind-icon:before { - background-position: -68px -102px; -} -.tsd-kind-constructor.tsd-parent-kind-class.tsd-is-protected - > .tsd-kind-icon:before { - background-position: -85px -102px; -} -.tsd-kind-constructor.tsd-parent-kind-class.tsd-is-protected.tsd-is-inherited - > .tsd-kind-icon:before { - background-position: -102px -102px; -} -.tsd-kind-constructor.tsd-parent-kind-class.tsd-is-private - > .tsd-kind-icon:before { - background-position: -119px -102px; -} -.tsd-kind-constructor.tsd-parent-kind-enum > .tsd-kind-icon:before { - background-position: -170px -102px; -} -.tsd-kind-constructor.tsd-parent-kind-enum.tsd-is-protected - > .tsd-kind-icon:before { - background-position: -187px -102px; -} -.tsd-kind-constructor.tsd-parent-kind-enum.tsd-is-private - > .tsd-kind-icon:before { - background-position: -119px -102px; -} -.tsd-kind-constructor.tsd-parent-kind-interface > .tsd-kind-icon:before { - background-position: -204px -102px; -} -.tsd-kind-constructor.tsd-parent-kind-interface.tsd-is-inherited - > .tsd-kind-icon:before { - background-position: -221px -102px; -} - -.tsd-kind-constructor-signature > .tsd-kind-icon:before { - background-position: -136px -102px; -} -.tsd-kind-constructor-signature.tsd-is-protected > .tsd-kind-icon:before { - background-position: -153px -102px; -} -.tsd-kind-constructor-signature.tsd-is-private > .tsd-kind-icon:before { - background-position: -119px -102px; -} -.tsd-kind-constructor-signature.tsd-parent-kind-class > .tsd-kind-icon:before { - background-position: -51px -102px; -} -.tsd-kind-constructor-signature.tsd-parent-kind-class.tsd-is-inherited - > .tsd-kind-icon:before { - background-position: -68px -102px; -} -.tsd-kind-constructor-signature.tsd-parent-kind-class.tsd-is-protected - > .tsd-kind-icon:before { - background-position: -85px -102px; -} -.tsd-kind-constructor-signature.tsd-parent-kind-class.tsd-is-protected.tsd-is-inherited - > .tsd-kind-icon:before { - background-position: -102px -102px; -} -.tsd-kind-constructor-signature.tsd-parent-kind-class.tsd-is-private - > .tsd-kind-icon:before { - background-position: -119px -102px; -} -.tsd-kind-constructor-signature.tsd-parent-kind-enum > .tsd-kind-icon:before { - background-position: -170px -102px; -} -.tsd-kind-constructor-signature.tsd-parent-kind-enum.tsd-is-protected - > .tsd-kind-icon:before { - background-position: -187px -102px; -} -.tsd-kind-constructor-signature.tsd-parent-kind-enum.tsd-is-private - > .tsd-kind-icon:before { - background-position: -119px -102px; -} -.tsd-kind-constructor-signature.tsd-parent-kind-interface - > .tsd-kind-icon:before { - background-position: -204px -102px; -} -.tsd-kind-constructor-signature.tsd-parent-kind-interface.tsd-is-inherited - > .tsd-kind-icon:before { - background-position: -221px -102px; -} - -.tsd-kind-index-signature > .tsd-kind-icon:before { - background-position: -136px -119px; -} -.tsd-kind-index-signature.tsd-is-protected > .tsd-kind-icon:before { - background-position: -153px -119px; -} -.tsd-kind-index-signature.tsd-is-private > .tsd-kind-icon:before { - background-position: -119px -119px; -} -.tsd-kind-index-signature.tsd-parent-kind-class > .tsd-kind-icon:before { - background-position: -51px -119px; -} -.tsd-kind-index-signature.tsd-parent-kind-class.tsd-is-inherited - > .tsd-kind-icon:before { - background-position: -68px -119px; -} -.tsd-kind-index-signature.tsd-parent-kind-class.tsd-is-protected - > .tsd-kind-icon:before { - background-position: -85px -119px; -} -.tsd-kind-index-signature.tsd-parent-kind-class.tsd-is-protected.tsd-is-inherited - > .tsd-kind-icon:before { - background-position: -102px -119px; -} -.tsd-kind-index-signature.tsd-parent-kind-class.tsd-is-private - > .tsd-kind-icon:before { - background-position: -119px -119px; -} -.tsd-kind-index-signature.tsd-parent-kind-enum > .tsd-kind-icon:before { - background-position: -170px -119px; -} -.tsd-kind-index-signature.tsd-parent-kind-enum.tsd-is-protected - > .tsd-kind-icon:before { - background-position: -187px -119px; -} -.tsd-kind-index-signature.tsd-parent-kind-enum.tsd-is-private - > .tsd-kind-icon:before { - background-position: -119px -119px; -} -.tsd-kind-index-signature.tsd-parent-kind-interface > .tsd-kind-icon:before { - background-position: -204px -119px; -} -.tsd-kind-index-signature.tsd-parent-kind-interface.tsd-is-inherited - > .tsd-kind-icon:before { - background-position: -221px -119px; -} - -.tsd-kind-event > .tsd-kind-icon:before { - background-position: -136px -136px; -} -.tsd-kind-event.tsd-is-protected > .tsd-kind-icon:before { - background-position: -153px -136px; -} -.tsd-kind-event.tsd-is-private > .tsd-kind-icon:before { - background-position: -119px -136px; -} -.tsd-kind-event.tsd-parent-kind-class > .tsd-kind-icon:before { - background-position: -51px -136px; -} -.tsd-kind-event.tsd-parent-kind-class.tsd-is-inherited > .tsd-kind-icon:before { - background-position: -68px -136px; -} -.tsd-kind-event.tsd-parent-kind-class.tsd-is-protected > .tsd-kind-icon:before { - background-position: -85px -136px; -} -.tsd-kind-event.tsd-parent-kind-class.tsd-is-protected.tsd-is-inherited - > .tsd-kind-icon:before { - background-position: -102px -136px; -} -.tsd-kind-event.tsd-parent-kind-class.tsd-is-private > .tsd-kind-icon:before { - background-position: -119px -136px; -} -.tsd-kind-event.tsd-parent-kind-enum > .tsd-kind-icon:before { - background-position: -170px -136px; -} -.tsd-kind-event.tsd-parent-kind-enum.tsd-is-protected > .tsd-kind-icon:before { - background-position: -187px -136px; -} -.tsd-kind-event.tsd-parent-kind-enum.tsd-is-private > .tsd-kind-icon:before { - background-position: -119px -136px; -} -.tsd-kind-event.tsd-parent-kind-interface > .tsd-kind-icon:before { - background-position: -204px -136px; -} -.tsd-kind-event.tsd-parent-kind-interface.tsd-is-inherited - > .tsd-kind-icon:before { - background-position: -221px -136px; -} - -.tsd-is-static > .tsd-kind-icon:before { - background-position: -136px -153px; -} -.tsd-is-static.tsd-is-protected > .tsd-kind-icon:before { - background-position: -153px -153px; -} -.tsd-is-static.tsd-is-private > .tsd-kind-icon:before { - background-position: -119px -153px; -} -.tsd-is-static.tsd-parent-kind-class > .tsd-kind-icon:before { - background-position: -51px -153px; -} -.tsd-is-static.tsd-parent-kind-class.tsd-is-inherited > .tsd-kind-icon:before { - background-position: -68px -153px; -} -.tsd-is-static.tsd-parent-kind-class.tsd-is-protected > .tsd-kind-icon:before { - background-position: -85px -153px; -} -.tsd-is-static.tsd-parent-kind-class.tsd-is-protected.tsd-is-inherited - > .tsd-kind-icon:before { - background-position: -102px -153px; -} -.tsd-is-static.tsd-parent-kind-class.tsd-is-private > .tsd-kind-icon:before { - background-position: -119px -153px; -} -.tsd-is-static.tsd-parent-kind-enum > .tsd-kind-icon:before { - background-position: -170px -153px; -} -.tsd-is-static.tsd-parent-kind-enum.tsd-is-protected > .tsd-kind-icon:before { - background-position: -187px -153px; -} -.tsd-is-static.tsd-parent-kind-enum.tsd-is-private > .tsd-kind-icon:before { - background-position: -119px -153px; -} -.tsd-is-static.tsd-parent-kind-interface > .tsd-kind-icon:before { - background-position: -204px -153px; -} -.tsd-is-static.tsd-parent-kind-interface.tsd-is-inherited - > .tsd-kind-icon:before { - background-position: -221px -153px; -} - -.tsd-is-static.tsd-kind-function > .tsd-kind-icon:before { - background-position: -136px -170px; -} -.tsd-is-static.tsd-kind-function.tsd-is-protected > .tsd-kind-icon:before { - background-position: -153px -170px; -} -.tsd-is-static.tsd-kind-function.tsd-is-private > .tsd-kind-icon:before { - background-position: -119px -170px; -} -.tsd-is-static.tsd-kind-function.tsd-parent-kind-class > .tsd-kind-icon:before { - background-position: -51px -170px; -} -.tsd-is-static.tsd-kind-function.tsd-parent-kind-class.tsd-is-inherited - > .tsd-kind-icon:before { - background-position: -68px -170px; -} -.tsd-is-static.tsd-kind-function.tsd-parent-kind-class.tsd-is-protected - > .tsd-kind-icon:before { - background-position: -85px -170px; -} -.tsd-is-static.tsd-kind-function.tsd-parent-kind-class.tsd-is-protected.tsd-is-inherited - > .tsd-kind-icon:before { - background-position: -102px -170px; -} -.tsd-is-static.tsd-kind-function.tsd-parent-kind-class.tsd-is-private - > .tsd-kind-icon:before { - background-position: -119px -170px; -} -.tsd-is-static.tsd-kind-function.tsd-parent-kind-enum > .tsd-kind-icon:before { - background-position: -170px -170px; -} -.tsd-is-static.tsd-kind-function.tsd-parent-kind-enum.tsd-is-protected - > .tsd-kind-icon:before { - background-position: -187px -170px; -} -.tsd-is-static.tsd-kind-function.tsd-parent-kind-enum.tsd-is-private - > .tsd-kind-icon:before { - background-position: -119px -170px; -} -.tsd-is-static.tsd-kind-function.tsd-parent-kind-interface - > .tsd-kind-icon:before { - background-position: -204px -170px; -} -.tsd-is-static.tsd-kind-function.tsd-parent-kind-interface.tsd-is-inherited - > .tsd-kind-icon:before { - background-position: -221px -170px; -} - -.tsd-is-static.tsd-kind-method > .tsd-kind-icon:before { - background-position: -136px -170px; -} -.tsd-is-static.tsd-kind-method.tsd-is-protected > .tsd-kind-icon:before { - background-position: -153px -170px; -} -.tsd-is-static.tsd-kind-method.tsd-is-private > .tsd-kind-icon:before { - background-position: -119px -170px; -} -.tsd-is-static.tsd-kind-method.tsd-parent-kind-class > .tsd-kind-icon:before { - background-position: -51px -170px; -} -.tsd-is-static.tsd-kind-method.tsd-parent-kind-class.tsd-is-inherited - > .tsd-kind-icon:before { - background-position: -68px -170px; -} -.tsd-is-static.tsd-kind-method.tsd-parent-kind-class.tsd-is-protected - > .tsd-kind-icon:before { - background-position: -85px -170px; -} -.tsd-is-static.tsd-kind-method.tsd-parent-kind-class.tsd-is-protected.tsd-is-inherited - > .tsd-kind-icon:before { - background-position: -102px -170px; -} -.tsd-is-static.tsd-kind-method.tsd-parent-kind-class.tsd-is-private - > .tsd-kind-icon:before { - background-position: -119px -170px; -} -.tsd-is-static.tsd-kind-method.tsd-parent-kind-enum > .tsd-kind-icon:before { - background-position: -170px -170px; -} -.tsd-is-static.tsd-kind-method.tsd-parent-kind-enum.tsd-is-protected - > .tsd-kind-icon:before { - background-position: -187px -170px; -} -.tsd-is-static.tsd-kind-method.tsd-parent-kind-enum.tsd-is-private - > .tsd-kind-icon:before { - background-position: -119px -170px; -} -.tsd-is-static.tsd-kind-method.tsd-parent-kind-interface - > .tsd-kind-icon:before { - background-position: -204px -170px; -} -.tsd-is-static.tsd-kind-method.tsd-parent-kind-interface.tsd-is-inherited - > .tsd-kind-icon:before { - background-position: -221px -170px; -} - -.tsd-is-static.tsd-kind-call-signature > .tsd-kind-icon:before { - background-position: -136px -170px; -} -.tsd-is-static.tsd-kind-call-signature.tsd-is-protected - > .tsd-kind-icon:before { - background-position: -153px -170px; -} -.tsd-is-static.tsd-kind-call-signature.tsd-is-private > .tsd-kind-icon:before { - background-position: -119px -170px; -} -.tsd-is-static.tsd-kind-call-signature.tsd-parent-kind-class - > .tsd-kind-icon:before { - background-position: -51px -170px; -} -.tsd-is-static.tsd-kind-call-signature.tsd-parent-kind-class.tsd-is-inherited - > .tsd-kind-icon:before { - background-position: -68px -170px; -} -.tsd-is-static.tsd-kind-call-signature.tsd-parent-kind-class.tsd-is-protected - > .tsd-kind-icon:before { - background-position: -85px -170px; -} -.tsd-is-static.tsd-kind-call-signature.tsd-parent-kind-class.tsd-is-protected.tsd-is-inherited - > .tsd-kind-icon:before { - background-position: -102px -170px; -} -.tsd-is-static.tsd-kind-call-signature.tsd-parent-kind-class.tsd-is-private - > .tsd-kind-icon:before { - background-position: -119px -170px; -} -.tsd-is-static.tsd-kind-call-signature.tsd-parent-kind-enum - > .tsd-kind-icon:before { - background-position: -170px -170px; -} -.tsd-is-static.tsd-kind-call-signature.tsd-parent-kind-enum.tsd-is-protected - > .tsd-kind-icon:before { - background-position: -187px -170px; -} -.tsd-is-static.tsd-kind-call-signature.tsd-parent-kind-enum.tsd-is-private - > .tsd-kind-icon:before { - background-position: -119px -170px; -} -.tsd-is-static.tsd-kind-call-signature.tsd-parent-kind-interface - > .tsd-kind-icon:before { - background-position: -204px -170px; -} -.tsd-is-static.tsd-kind-call-signature.tsd-parent-kind-interface.tsd-is-inherited - > .tsd-kind-icon:before { - background-position: -221px -170px; -} - -.tsd-is-static.tsd-kind-event > .tsd-kind-icon:before { - background-position: -136px -187px; -} -.tsd-is-static.tsd-kind-event.tsd-is-protected > .tsd-kind-icon:before { - background-position: -153px -187px; -} -.tsd-is-static.tsd-kind-event.tsd-is-private > .tsd-kind-icon:before { - background-position: -119px -187px; -} -.tsd-is-static.tsd-kind-event.tsd-parent-kind-class > .tsd-kind-icon:before { - background-position: -51px -187px; -} -.tsd-is-static.tsd-kind-event.tsd-parent-kind-class.tsd-is-inherited - > .tsd-kind-icon:before { - background-position: -68px -187px; -} -.tsd-is-static.tsd-kind-event.tsd-parent-kind-class.tsd-is-protected - > .tsd-kind-icon:before { - background-position: -85px -187px; -} -.tsd-is-static.tsd-kind-event.tsd-parent-kind-class.tsd-is-protected.tsd-is-inherited - > .tsd-kind-icon:before { - background-position: -102px -187px; -} -.tsd-is-static.tsd-kind-event.tsd-parent-kind-class.tsd-is-private - > .tsd-kind-icon:before { - background-position: -119px -187px; -} -.tsd-is-static.tsd-kind-event.tsd-parent-kind-enum > .tsd-kind-icon:before { - background-position: -170px -187px; -} -.tsd-is-static.tsd-kind-event.tsd-parent-kind-enum.tsd-is-protected - > .tsd-kind-icon:before { - background-position: -187px -187px; -} -.tsd-is-static.tsd-kind-event.tsd-parent-kind-enum.tsd-is-private - > .tsd-kind-icon:before { - background-position: -119px -187px; -} -.tsd-is-static.tsd-kind-event.tsd-parent-kind-interface - > .tsd-kind-icon:before { - background-position: -204px -187px; -} -.tsd-is-static.tsd-kind-event.tsd-parent-kind-interface.tsd-is-inherited - > .tsd-kind-icon:before { - background-position: -221px -187px; -} diff --git a/docs/assets/icons.js b/docs/assets/icons.js new file mode 100644 index 0000000..3ae8f55 --- /dev/null +++ b/docs/assets/icons.js @@ -0,0 +1,18 @@ +(function() { + addIcons(); + function addIcons() { + if (document.readyState === "loading") return document.addEventListener("DOMContentLoaded", addIcons); + const svg = document.body.appendChild(document.createElementNS("http://www.w3.org/2000/svg", "svg")); + svg.innerHTML = `MMNEPVFCICPMFPCPTTAAATR`; + svg.style.display = "none"; + if (location.protocol === "file:") updateUseElements(); + } + + function updateUseElements() { + document.querySelectorAll("use").forEach(el => { + if (el.getAttribute("href").includes("#icon-")) { + el.setAttribute("href", el.getAttribute("href").replace(/.*#/, "#")); + } + }); + } +})() \ No newline at end of file diff --git a/docs/assets/icons.png b/docs/assets/icons.png deleted file mode 100644 index 3836d5fe46e48bbe186116855aae879c23935327..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 9615 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 NZmR35l_G4O{0}dcmS_L~ diff --git a/docs/assets/icons.svg b/docs/assets/icons.svg new file mode 100644 index 0000000..10db10b --- /dev/null +++ b/docs/assets/icons.svg @@ -0,0 +1 @@ +MMNEPVFCICPMFPCPTTAAATR \ No newline at end of file diff --git a/docs/assets/icons@2x.png b/docs/assets/icons@2x.png deleted file mode 100644 index 5a209e2f6d7f915cc9cb6fe7a4264c8be4db87b0..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 28144 zcmeFZcUTka`>%_-5TzIqq$xo`r3nZ`iiBRG(z{ZnN$)K|ii-3S5u{fmRRNLEoAh2n z@4X|01dtAA(50@mzH5K?{+)CF+}EWTz2eMdW-{;n-p}WG1C$hCWW;pD1Ox#ad~k9g4`y4!oVfq@3c(iW~uhy*`T7_0aH7`>`EnYuXVq#+YC==3#rnNM4TqqzM zpi2Elr!3hl!ZdK#y0bV+yVc8rwFEtAX3=QlvJ&e-EsBp)Q`0yKXbNuf-yYw7kh0CD z|Flk1UuHgvoR+*QR0ee&IDUfUzE7*`A=P$6nC;BPI@VJs|F#`Xc>X!`<6%M7XXNok zw^unt1h0m>-&2{GiIGsByulr92XZRrazZs&&M3jJintF7A}cE^uW4zt_r81yHt1I! z6-_gmO@78G3$})kfyhR0^qk?zev_%4R$qSjQI3MAg0)9EM#TOAD=_tf(*)S$7yiiR z&5v>wk3Bn**iD9S_I#2%^vi(^O+gpv2i^A);6^AcH%VC>0nH8|O!jN*L<#RtT z@aF9HMNu*d(BdiZq(LBO%(qsjSot+ZXQd{zLYh#CvOrK(?#u+|XYRylqcXOLk=m!) zBp`~~1dg7kF(Q#m)I8ZHMOD5%m&U)5jGOW@7+sm1N+O~^j*zRG;e4x@OteV=T4yo9 zSG`^0j^S)ZYp2DT>}AR|n$S)4FPI#8#(R~;Y**AZ9`&yqT;p`rks7Nhz;)dn-TgXU zw!^Bo@W6|jfp@}ijsSEFo#x3LnG;`o_yXK@2KuG8cTv&K@=dU?_PK*6=YU9!Ix8l;<_!y*Qc2phVpLM}&t|CuHBv&{M$K?VXtTabi(7kUMwV zl!>5cDNNqK6`Br*B~EcVh#5Z!FgiJZBN5nzpC7?UdAc+&AT0ivd;DA2$@YXMPK6=< z+#U~?*!R0i`3uu|#zDrRRN&j-j>ZOu#h-n#7WO^)@0> zCT6a$LGWwFLcPfN=(3#6`*UIS%uIT=LIXV-RbGE&!!+8)q~dkx`l{aKCe1`{J<5&< zlhRo;JX-UC>5)X;mwR+W96`@&ucHp$jIb~B_w_=mH>In?BLume!Wta=`ca+&7~pek zBVD?f5{nelCaje~EtZn+g3%5GJF}R_b`q}IH$Iom2IRD$^h*R)Cid8Q5~4Dzm!P&Q z<`iI)4wA#l@TwjPL)*9k5Vc!!;`9;bf?HRMm86wi9LI8A%*NGep3g11H{aP)>%l2Q zRMMQU!*0J$hJI5Qs3b=6?}qR7O;BU%Yzufc*ZKBV`}ro7zm=C?OY6Vlabc^r6r7P> z?1c^jD{e4n*Ou441V=Pd1eE8utX@)G5gq72HQAXLZ4l2wKd@yIYC+s) z-mu`E`kj=B!)a^B;pecv4W5oh>_tpj>^NU8L*eH4EhcOxQ|);$x(z(Yb5^tudSptV z%8z{(h@_t`chWkvFX=r!p~Vjhf1AdM>uGK05$1fyLb5D7m0!MUKW=JTZv)bXz9~*F z$yP@U3UE0=$;yjWr8b7C(1^oNDMZVxYYeMtL}ZnvQDkm>S0)=r_ugabEZ}AJ<<_Fu z{I^KKIz+V8K|pK811W5r##z8^S*2fr9Ln zlRG?Zzz8;xu9VSE8s+=(!^TGi1P2hC7%7MUqF=cZqFBtJNW9BROV ziv0cjsUmVvsU^X!`1UivK|dy+fSG$3YH8W0`q${`)taBT9jV{Hfh|&RIaJVvqRIFh zC*Rmvl&3*;XcMiJZ-+Mvfe0xN4N?AvJeABnNdgs(BYb!fK5<1)5UvM!Tz4_aojmUX z#Ymoh)m%fN(>6|#*RP~Lxt1?5);w}yT_lftje3sidO&MxNgcMg9@S+>M%s~y)0i`8 zT_+7LrZ~d<7V^K^C^~ast~@nM04^c5dw*&660^p%^R>n4xzd&jo)Y@ z1r=F09>jFOr%wsj^a3;>N!{rvf(qpkAdWM*5IYCsuwNwoJh7;9I$#`T6-NUIEKsiS;OylQ(XY zQtCiR1dyEGJV=~|zaFOEveB&szAVx*wsyuY?hiBGWR{h0!D zv;G`;F9cnib*YxugasrI^%uy@i)>BvC4V8@! zwy5#iHC#Qar(i0EPA3CuMQbaKy4m$CLjLSNwJs!13b%h{&x7479bv{SjC&3?SO&)3 z6q4nRRP(zOfw-mQrmx@Z64~o}GNXa9YCE$vD-(CLseaF%6HH+WZz4 zbRiJ~zAtA6*i9;z!+zZ?9~V0Lr66|Ae;}U1e#6D^hMhB6XJNHZi{t>DgU&jb=#rPK z@s04Hr_SOr%UCRY_SdDuSw^D*Rzre~4PCqgc)DBYam}@G^TxsTqX%w-yWtYU-Q2IX-a2Z4Kz_-yIe`m;x2bY1F?XZoIH=`uW{$R)ICXxqU$- zG#M6s!fDZwUOA_cs|PXe1T@XN3^UdYyR*t}943A1dTvXp!=%8c%)(s)5y@OJ@@%1a ztlq}Uvhfo3^ZO>ZO|NKfu37JMRRmXfJ_*VOBVnxFFmbq!zc%A+R+w|={11?sJpmca zCeCi;;-*yO)ywzKxa#q?E%@U-+LGH4{=2|reRd-Kz*Ps1$u6sPFO>{K9^k2Y!@=h7rZt472^BCU& z|0MZmbh1HlC3#bcjoX#m73R?H>6oW=45{gu0$S>j`v?``ch#0kGur}QbO_gO3XrB- zS4pz-Yrnqqt-k_LE-&~ox9gd#^n&HE%Z~grM;N@Das8-#U304PA$v*rj36j~qQzYN zsX>8?%q9DhpxrWR@M>30YI^WUDh4bcn+*bYn;~zt_g`$3{#G+=lBmWE;j}5e&vlDa zjsdE(Xg^o(Z|3$Tx>~-q5NrZ}^$y0eMd|h`7Y4OWkgF0(Cu&CfJV03AKfzSGBhMU4bqd4kc`qE!CH4Q^FdOCtUHaZW3R&>S}$! zhk=OYL~3fch$-?wa0)OEkynDzJR=vc^vuUQ$hF(>E(q3{7{4uhC^f@bzHUZT>k%%R zsekA}E`OlGE(x+lP1smp0;Ba7{C$F=@Pp~i$AsJkc)x+3Vf9xQB=aSN>D!T;Y5iU~39#6yoQuj6Bj%kdYC z`72YjnSoF_A)d#@S`|;~F|6TOn%b{4?MWJC4uG&NK=D zqd0rU$A@62MtWD$=Gg>TgO6)b6Vf41#Au&Zq<@p1RG!t}NG8kv#>%{bHuCdAeIao2 zkWX{dyO`XCdv`FlK?jS{48~Uaz;oD6PtoFF0u6HBTHCHh<)5wP<r?9UIw%{psu)`l~*PK0?1^oH}d{D_wF{En-ejdBHTK|(*2$K?xVkG zwYXl8^HAjVOqKQj0f6s~O`)Slp+alXd8@#4Iw?pHys|MW1|l%ipCPeN)|fLB$Dc(9s}LNw@?8G{ zU>U(Vid5}ltIy~zNv>o09)rC()g8O`<5~!qF*Z_?L;+2Sy!WSv=}|67mnOPb!A*2; z^f>okkk+f3+9?Tg&6NBMX%;BtB3Ds#(PZ6E4`X0e`~amc=9QGw3J-$!nw6)l1A8;m zFdl>D?g@J3P-41+3N`R32d*Hq0GWj!{3n&rVA)dpcB+|5`XZFFZI1bKA7d;-x=0wt zy;$6nvCJ$_&JDjWa%`LQYq&(6LqBP7G_+`+4$|qk7IlS4wK{qnP-3!yFO%_fw(8(Q(#|htD?ECEYPeT&anf%0GjGQC<0)vR3x=4pq`@gX z{0?*O(e3p_zu@N9G2O%!F8j&|FRhF(c@BWMxZTpdW0xv^K!`2L39%+Hs0#R>a@n-J#u*kF6~?DIhPrUi@$pR0tS?5wF%PE z(-eYCc#{7tVRzd>j~xO&LBPK62xxwmxrdd{N6!G1hfD0H?fV)_B^PBIm|@~CZXnpdaM=<+?&D8Md^RL00JfP zK|cm@`4bB6muuN!Zck2>k+wh^8kM73#1(%6#^TG;42H{?eTC(h^zB32g{Skc%t3Dn zcHX3$TQhR}n9xXCd$?igvlBH@ZU~p4OO*Gf=$@=w?9vYs)!RYa9V@}xVt8Sr4y_!< zGjn5?gnlSKhqS-YW^o#@NScez6I3x{ zv>meTLLYSK!pa+|kqQI8rWST7_)jL~mqQ}Ou*!V2U-g|ZR+pB%Z@w|HnZrV~uY*w?_gMhSp+4fY?hMmdNXYD(iruAlj0&qga8nQ1=c#y* zgYc@oWp>=|LQ+s})zQ5kv*UF?QMJ2|FN1CzjX$x&TwGJ!4VjOiZxVDVz#r28{^WRn z{o1SYRs*^Nt9(ZX`wad=44v--X~h#aROW$yKE=n-VWRfhI&wn|_X6(` z_WPK(bt4Q8gxJ=b%BW_nNj&h;H;2z`{vi`~)tCBk(zGYBp?f;(Ua+^@+rKm53ld9S zPP#A^Wv7>F7c36IAp7(%S716|mr9fnL?n&Q*?OcmX7>@shP*98yVXmJ{1{z!s;@_D zt0}M~j-0t@?)wY>a9PxzCVtBiTKiS1<;-&hv5CHiv=8d$IOnl?aI_>zR3eW}l*}`T zd7%jWK1w(iqAjU37u~dz-4@O^=PWhD7_yL+z1;-hnPx|je;QFR?I_x6McEg|;`Zuf z_}_7>V@hb=%%^H&>8W{N&Ud5bKD%p(B6#&l@nN^wOdQizb`@g}g1c|qGqGr^c>a1w z|5;G!BbS8(8#mlqM+re6&;L0Ba$evPxRGW!koG@-z@*c+8&^U^7Q+0jgUtgB$)Bh)OGD5oa(ju zL&w{}@q-4qVXtvRtXul%gWH0DxXe$&?MN>z2jh1!ElU%a2;fz@xaTyfs`lnr<` zLv5teGAw`KJIh))Wg8JzoRNMyP>X1rhr)=#Y8O6Nf7>}xLS8!@+&6k0h#H>Nn{`&~ z<h^0MI*wtWWT)UGMw#$-to|sCF?yXL$;_=8T>RsAI7ks*W{$R-UI&M5a3{Gda?9J z3PeWSws3vp1$(`F*+<1X7B6hG<6u)lqr|?N&1Up;Si*MeoRFeRNGZa1=`C?4ZaPvJ zuHL9EQ^d$jd1pu9n6iBgWPMtJyxmfJGQf{a*eag-%E@KZ$^*2_&F#h|LL)2_l*QS9(#5T>)&wtE8a=@FF+vG8N zk>*kU^97;}tRP6EGf5HKhlr6@^Nb7N1`_>QnnYF9-8tncspx59kcfE)TtFun#cCjn zEU2;}6Xu~xx+Bv+O;tKLcuo?~kQbcPghcWdz4-^H!wQOhQukRZRMRk>kfMa~V;A;p zSqpR3D87(4X}j4Awfr<~7h4dgK)pzpZf{bn z^yt`yH4+85n%*$3rL0fWi>l^4|J{Qess(a2+0W-O>gl%xIaVi`l9N3Nq}{$Q?o$#6 zP(6};On20~O*x}!V+=9YO)zz4yeTv@_04tEzA@Muc((5aTR+rHpa6@RymHX{a%Ss{ z+ZVey@TSCpCZq6G3WNWPfd3Z(|HlaUnQ37#)!hnd5VH}%lQbK+^qVrFox87bV{eTd zMjY@0wT+?ndYzV$vST&K{gWpow&Zbq;%=a$(B%@MLh@v!P|L4U zgM9JBN_Gb)g+}3@K$8-*b+GGuC&@6v)Fomd?4){kVQ)620*%U<8saNfLM+ndN~1z> zV$;~rU}Fc&M@|;i!@q(ZqbHdoB(EYYOs>u5jd5A-M`}}pr;g+_B5o2kj-|Pa zF8qc!e5d+kUV>;ih=57(*r24g=6@)>+c%LfGLw_-Bbm7r_`az+tag}5rqG&jrg(-W~CJFkaxZTf@_Ofx@ zzxqF#<4|HKKBpc&B9R1r8t{!k_=WNfzbR?aogs939=bT|!c4N>91ai-wsc4|JdG9y zGpB1A4i1ueuSS{R3h}0^YLpx`pB;Ok2-R5 zZzHya))4+|xc0QJ*&1>3;@0$RcgE3M_rt55cZ9<51j!pV&i`8js3v%e$CG{I{X+yj zruhC$iN%UA-Y%u_?FQq!rBg;{`8h`ZCg^bG&OC=733*%4cUW`DPGqp|OgNy?)-Lky zuY7>yw$@M~Jl&X?9MI2RqOdsWZwzFd6{P)UF5-=GVh z;$}}BvAUMs#V{T@TweGxI7dhuIzFqotm&oQreos6)^Nt1G4l8ce%&u1F<%WFM9t;W zBAEtq#1FS}e7Gq{9nzJ-0@1fhx^+w)&5)h+@I@?kv+h4xs>`xqTMB()kR)QH0W6ODL=b|ea)CmcTzPItT=KH66{L4@p}bW9=F z=+(cM#QUgiq$M^X08=_kUPU7sf!8j#4rN7NO0#TX0-;8=ySO&T7v$C}*`++cHZu0; zRv+{Je*j9;z>+TGv1i76Qc^1lu^>XXp&w}t;MzI_nTpY_m?O?J|UF!?x>j)zIZZ*}uTg|S?56^~@P4iEAwq#7&c^D#OmVAeT^&ib{UcAER@k$$X; zQdR$NNz=G^;6|aY!VuP>0e2>_I^ymyjmC*~Oj(aU>lb7XxoNc&mR~HbdffiYw#m3DLJ)nb-vczmSGI=PaP=yOJ4mrW01pSsP02=(ym z!R+#8VFsL>Puje-hBZZ0gY`?oFt44R6Z--pJ~w8q7te$W<+z`WB)mKtrOR>%f~{*2 z8>hh;3|%NPQq8-xDbWw`*n5*Ni7GB0zr7D?q`b1s^a4*X%Jk>EYA*r$va{t*S$Wk8 zL^lqaL9$a?PVadKA#e`-ocbsFKC1awpXsVmMxs^Fnz9Tb*6tD1sa`;k~@OqRo@ub(|hVwu)j^O#EQmIetE!ma(-|!O<`ZRqJb<$^dia$W5ARK;F@n)=G zXY|L|OhQ88G?ay6&;=(qqYF;O$NJ7x1?PPHYJC`UButfql;CF9^Z@N$9e`rgvKY7- zzkY{r^gSjplQ4S;+v7}YOOB)q;im)xJ8Tb}^>Fe{+E{o<&QW1zc~g`vO5=ii`UUW? zZp)~%d!YRLs1P5Gsp1zs3gc8)u&mU&?P*XcG+Tr-__K7L+$}7WQfV_Ngi(tq_9feK zK+m&sYg9Dt?NYYIX6$uOy3OW4i<~fWv+Cf(7LSO2Cy{IK;1#Y8C_5@I{l+TY*=I|v zB849$N`$Qn3)Wezrk#N{(Sj^ujO*o{#sa4oD_O8zmLim4B{5HQWLd}YpB(b z4G-q~15C`KQcuBSO|^7AHPTM2RneHT?`cv7UxhiJ{_{;Q;kGe05x5xg&K3|_>$pD_a&U>aXaI13$(JL50d8Z5nu7>Swu zA*$V;mYnn2)kI5c`a29y*`L60#8U8YzlVb^NVbZO*AIlUcC6{g-vYStoB)oYa(>HrRpU$_+Fu$?E^-+?mgq9i+l>lZ?b zT6(Rs*ytr2RlqzPAC<(}aFaO~EuqFiP9Nk%5YV?9#t-?A=4jtCuRhpfZRc5{uXo+q z=LI8vUYPpMT}NAmAiT1T|Lra-gEjft1a;1k`{Oe~KvJy%Wz~FR@vzsl)Hj`G)zsap zD0(^YuCzHguv&0Ryn%gl!eek+ywQej&`(Qef(ql7EcAYQoG}tAUY=Ns0uhUO05V)*ND z@*NLrHqhR{%JlU-nMJbBbn#Q$0gDOt;1glG|M6dhX@zoq#PRvcMk<`}n-dBYPlDbf zY2&o+<&J4^>4Q557tWSxa)1M;mS}X$!JFe6+N_0AI?erp9CdjDGuyvnelpc04y2u#n8-PU5wo6P&9?ZpnONA+t}Ucy z&nD(V>H%M8avRC7jdV$uW8n|L5W6kw7|(e8$j>_ZLqe`6y!1fWM}{tJ3t7HmzB894QuSOpNj=&WDT3e5Or0)3wFwasb4%9_M@6)K z&l3J-@<{!8U7lZ%P!XZsO|ejU04NSjBEBESP4Ff6+T}!&pxTCxBG{W z{I$5gyC-P##k--2l=5r77AsRg@o4?Q7zqe%7Y9-kbSnK|KDcKK;nZqb@o$i(QzUtW z4FlkIku@T67|OO;)}XWaHSwT$i->~}#O|Bld^q?M%%`d*s2x9BKP zZo$OD?q27J1NAg#Nd(Fn?4I|PbI>nwdR&!F6YOHC^L#n$QG{zQGnjL8QL{~TyS%sy zMT%4c%BbJPXL6?WNg|O1-c<>qUm^=RW`+5)eH2jAI{T^M6-_natW57V(D?*MKT4n;I#vjkQ1Y~X{0hj4% zF}qYRzy8zJX(%d$`X$XgPvDafqM65Qw_;|~(JO*m8-*q1ir0~W4cd`@#KX3_GEp5t z5?rPAGz%$L?%(5dRFgw~R^|tdxXDGF>^=J2drvtC0;nBNt)$2d+>6A}c}i_~ef`fu zywIKq{Tp+H@09h2i{+Dn7?p7~8D%gZ+<(bq<1f|tL;Qy~w3}O7WX))3Ej+(psj!1- zrlt&tNKU|u?sySN{!ByuYY@P5bL5@7&Uld^k~iLzJaP7WDAI|JZrsHHT>hmAC?xw& zC!c!IBNTzL7K;wAXR3vVTe1i(oYdqoy3H0Zw{@>?*4UcFaMCNHwib2efs0(Ync=2q zwM72#(Cn=nv2ablw^j({)fdng^E-(uP|5UD8@CzqpKlZ^=HH}?5{kmM7vLAoAatc; zwH5KZJkkdhh8C1p5+HZgC}LE+Xu}KIn7|*#?;j-8^-VaZ5jOW{JA#*;g5p`(xTiDd zKkPnW*IU@QEsE%-JWbaZU2+aF3<-bfklBU}TCC{E-~c1suP&!}=v`e&X_xF{wro+L zcgxt?1af+ArOGprbI<(>!E99@GkN&7?#q=uz{(bMN@|0qqxcTr07b2;i>k6W8Za(r zOGe?77{mF3SVV_<+hIDRNdbE)(lSDJU|Bf|swOh*8)pQ6AizER8M>1xnN1+Qcqhg$ z&ak{6PD5v75^-mAcvoOH6*!9Hkzpt)*#Ip_vNoGk)^|nj*9+w7+7R(=j4q>aw<4Wc z=nBx)kd4$ER29&>bnknJ`n4)pOczJMPJ! z0)p$AgO&S=`T1(PYN?P}4cSJ%&R?iNexQp^N$*`-AbTP7WfZIW#P4d}}S2|=#O7ke0mzh*aEWQE)y!|#~iGCKXe zpzrFFL$pk!^d8pUI(IfGO<%TTQHsrDXLDNnMC6*d0wT9m7x6Ft7V=_OlTqkuj{x>p z;1kpB_NxE04RdYk)Y!laqUU=rfZJ$T5)`7`QV?5(Ltg_xlECcjtEa{J!@6Brx);>b zl?P)xrifEIfWi;~!Hgrq*7bz~i3BH#^2_mOIb$vnOz3yqef|S?NrX2~aMzcrlIGhJ zJ57YYnbrjk0gMXNJsZ;3!GV3+U0eN7l{dNPN>2^D{M%{F_n#@Jh)M2G9pb6tlT&F# zzc){OFWO&LCDH1cNMGR@X9VA+vt>EiQ|#sD{Y6sIh0eE(T5g#Bhn{L{CgdEL#dtrL zC>~e(BtwcN6QdM$0h>v5cu{@BvleO1d{z*-w8N(k$wHP$AXwvfT1)EL-?E&6nLdTq zFA@*HmwLR__b301zkRRgd(MeG6hCvppG6OwFv=2NKQVx_rQX$Z3q-DFDcOMHtbuC2 zb}=nSGqv$BlXjj(ahhid7ECVPglKaK;z#;LgZZ+OisWYuKBPX7xpErFk*@EYkKqg2 ze61oYkPXBN#&}jK`c6OUoF{pGlCOmyvi0VbqIH)+GaMDJ>Eg{$20?GwP~=nbph7n3wT-iS@IWTjG!q<-}5nJdNKFs75SDJ`2N60FM#00h+c!NU0ufy*_DlHj73t z5%X`Hqe$xxtHUL9%+{FK#XTYqf1a`&Lh=``4pOX3cy239FO^N zfStakz4XYa-?AppcGY?%Pj@WYmLvxBlKhq06UyFTy`Dj|YO2D`3uG#B$$f7PEjp~U zN;XAx*Xx;j?A}%@n)?=Uw67Bf^MPlLUonDdnT0whr^OXyCbtVRp^N&tL4I{~Dg4l+ zvxK9}?_3)Y$>n?i!054VsQ<#MMZ=Q@luen-sz=N_VC}l?`zNJtA`krH?K@>?REBq0S+(}^2UlFWDqHi30Pa~uu05d$T+-JrcJV1?aXOg(}Rs zl`@li5%>|PHxJjZT#h6)u5#ukqU%dvk;$HYi|x;L7naNA&)c1zj7(iIm+BYA&tK7r zwW0zwzaX`x0|CVQVi4}J(N#ScVIBUXBSyY%CN{!aH)SJ(GEwpFU}-yF{d#w05hL=m zqA}!Sf^U&%EPmu~34)ZMEMWZ|Z{ zf+Da%zhehlo-wY?=x^Nensm)O!dR`~B96^wloNE6>dRY#u#pQB(ftm&2{0{aPw);3 zLS~XJegtuFdsZ#-4}Yw<2z1ya*ZublDU*Ut>&i)(l$<$AW-E7gWuf>Kh>nR@=~Jgg zYVeI|2kH%1E@)ScwTRMO*HTWJ!AcdT*o-xoiH_PF%JHNE29RfRx{{W~Mn)HwZeR53 z{~74suQ)4?@;WN79bIYU3yi%hNhnxTu7in4w>kOLA9 z^_cPfyxl`BO^Jaqzdl`|Ez%y3HTE#{dbqX?j$5k&zQxN?z*CZw+vAZV-WEk=-9oI^ zi>;EFv9pBIbUMsM{{@)yaWwa#nUxs`jEZa5y%dJ~ZYpxpbwF;r5KM9NBrtI6bS49Z z{7GcMaXGAxDfXDD;60Li!JF~fHPwUU&ynr@B*@3ChF52>+Zzj(2PL6C2Mor0xpcaX zJz8ihH2PY@>!))WZIW^vV%K*vW$Xw?vcF2|dP9n=qCP9;7B^IZhW=jxJ&T%Ztkc=ADNzA zsx*6uOG(O5$(&<*ti|J7dW)DtZjKZ4%;`A)POZf?A4Jh3X-N5M*8W<2T>+@m+RM zso4=f_o0cfhnM$+auk~mI=kVgHZ;l-+V`UB8DLApLi~fqxxCu82ZpTHwuvkJ zMaL0c$(fK#3^%@^>W3#TVHR`5ZG3y0Clb5K47#1K#yLmQyhW_55~ZZn&H*`)Kcz#xCRQCFdlucHx%dY1wZPf=tL$KK^-_TTkBlg%SX#-AMe8 zDRJaA`0SE_!0FPPn@x{0rimZQd9k+}88MLx`S?6fu6=l1Y@h3fs<=&*q;z=urTS=C zK%}u|(8k5e&Y-zSmoYb|zD$^cY}p6(t?!f9J6m?2>Tc-Xy34Rp*Ug6P;_=3oS~ z%u;Q7%I5MiGqZ{d!-pEl{0|+1NTm+haNN1M^6$Gh!|V@!B;}D{h3pn(C{xBk%}#IR zO1TK6*^j5|!U4^zB>Fw$Ab?>qDPT1M^Jx#~^C&2cPdIB_0;KSVNk9r$##HLTSD_Z& zz)jE%*Gj)7d9uVMl=+HdJ8%e}9%lwaY;_kEvV>UsLHx;mMC@f3lzq5Iv&y8{w)@Z#?E z$bXT?tyF)?<3bugVVY6(e@Vg`2i>|)$^m~$WioLwW}oXXZ}=w;=N0{LOx0{9*as^Bb{)>T@3m+vEip|GPIJDHTEO0j?I58}) z3~@%Q(7?0uCeHM#BsO=kytmWFVcmtD#HF#V$&{e5iF)nW6D|+WjJvd;&5ukcPLykI zL)z_SO#T-IEgtk{E$oT_$8EEJI%wS_Y2C(F)`01pzGC)%N-d}qrB@+6yelt`_?uuN zPMGYZCo678{Kdb+IPo{#IN(js1Ummj@!l19H8oPMb}r|M+d{D&z2T^r|!8rbRwlE=7j zz{QM`99y%o-F!wvWl#jR$l|ML^ohwPPlBQ~Vi{{yBOjvrhl~uf zK5Vk45;70o*YhtM&7#Sc2dfA3wZq@0ZZ6N~v6zg&MzJl<$ZNrwqf-$TiT@#W`2x6Mt;TiS4huyA5^}YIPTFF^l19VciDe9QgSuo770l zz$Fvs?0FY@_UtE2YE##{%dGmgZHHfzsU_`V*H`P4*F`ul(sYs9Jq*h6rbk1>eD34Z{2K;_cLbZ46halLc ze2%NUKU&GA!WwUqG&=coFm>87tCT*F4xGxo74O@5Y3xJVE!8F_1FP%~BdC2FS9Isf zXuW-CnGh!{^D*Drcrxc3Y`W9=5ZVYqn-rEs?8_&q}IoEx+VFS zRga(VCYV$<=Zq#wk?;b+las#o#HsNw*`FGFDeA^*xQuB(cE3~CcEUYt6MjgdL|p=P z2+pPgOZ0Zk#7FPiJV}Wb={;89-U46uTu_QI1&b)P=+se1|88_^!5Um>o)Nj!lfI}_ zA{$}3*734@W4yItj?m zLJCa$`Rn$L_lRPSglt!uro*Wg-e^WHi@NW8q5zxYdq%ULx=%RZ(Ry~zKFHmgD!x8n_+?xj`!7VyZLb@!Ht zcyvx*=Ox|L<#!iwxI;b}HqA-#(_&c7eI; zh0-~Nl>BWL;lGfbd$~ThM~0`;bnAxA&t^Bg46A9F67?ijVTmmSHXl37dKJH@X%pJ( zv;J34-$9e2BLwPjbgdS-#g6)O&a!wuZ-4?=C;(W1fb*oq3F7!&Q;TDT{dSIuAJ0r( zTYW}1z5Y^?(IYRkcvPK{&UNZ!DTD2NG^^l4v6pZ*x!@0~FW+zs*VWLZvD5?b&529v zzAIr#Blpmqud6Eze&qzM(zwET6WE`YFdmz$)SiInkY`uE9 z2W8d!Z|P-BLFnbp3rcnGlI9P_{}G(V#2CJpq^&-OF7u(-e@`ex!`4!J7AZxIWjne$ z*}p)Oo)D;<^YCfczySXZ)mxzJ%Trh$e@@Xs6YI$UjQXTpMM3=OD}yJh-k2t_G}69%^Fr!Z2HQA5*4M*x@spn| zrheG^IKj0ez3X@*QK}PLKen)$lLlOFZ8tSxuEOsfZ4ZBRv~f7a=7}eY0qYvDhVUkw zZOeCWJKZrO(yrm9v!+wYKhPp+8sVTN>nKBQt1)2z7ZTr41?oJxD3UIFa*^`;bD2FhRFQI1$)e-S7>YM&OE5M83i$Yg1gC4XbSB(3HY$XeKc0w~r|t-}85eyvq znGOcAFmP`I@uNFB6D-U3R7zi&HI?4$T$XBCYp7jyF2hIU++&75Z}~Yj0lG(o!Q{%x zle@H4z=iwQ^%fFV}$@P%l|Q*S||Fc=aU(OuYN7&dFa}V3Nc7J*3pGRNHysT zpl1qYqD}+z4udN>1yr0@uF3~3%~hGND|wBbU_IaPN$MmzOSBa(DV?!lmqJAFWhao7 z6XK-N{+v`HO%=al&V4z}>Sa|@+Qf8!nk9bZMS#vdzl+RDih{^-@~-07nqb7URdH*R+DD=7!&A9Oi{-a*?F%R^?_>z|&W zHQ+4C_b)3pp#^K(qJHO8s1UDOMw^aDYOOebgZD{HMbGVDVk$+=PF2;lVmdaX96DD( z2>^x9360&?xbJ=C?ww+GUzY7mi#yf$i@Zi^^Y}?DA8FLB1O|#d@$jX3gICv(QdzlV&8dxsHV(c+LsK>QTvzU6_ zYb0#5dCxZ%c~~}R7+|_=M1NiJ;GL(M6jlh!W$wT&BZz#^;TRxOvOoC5av{aK*jUdB zEJTT7g$OLq7j%VOxq7lBmjswrMs{Cq4i_QLuY?I-R*l_PX%)WEauEF6LE{{cM%g#Z zY=g9-pHTq4-?B_^ws)ot(CdUT(Q;?3ZgB%&0-LSJk}S~oODd0f;gmE$LNlWC)*SZw zTF2tWUDe>}3GAgFzfUW{@fr-5%+TXNF!#@u3xLK#M@{^pJ@RwHxR(mQv$rbM^u)yF zp7gc4+^-scO=w4GnLoUHm&|*G%B4)zdnT-@sLAXD{t?qVWoK?M#QmO7ZDZYumcROM zT0RXq?@|A$uOb2&0IX>Ab9ty?U)lM3)bo7LPM+d~0IDZ9U)9X4Pt|IhEccrc4$Yqg zxN&t9niz^0H@V{LX*57HW5=4LcVn`mZrtz!m-E4LWa#a&|ZE=ZeR z_be>uWC0uQotqmp(+ySAn|+s`Jh^?c#?)U-^^qVEROY9akEY4F$EfL{d=!)6%BG-- zzxb^*e?e$Rf1Wl1QT?k8F>OCoXwv?=Ung`f@oR`*z|{D)G%5h9(2EXaoVg^$f5Zm< zKZTunJXG!9$1R~Oja|ej${K1yXo$j8_FcA;rjQxV!J)?|Gj8yk6(bnRAXg-|KsQuFvOvU}1Q)$#BKFf7rFv3#c^C6nuM& zOO0Gft$Kq{^uZk+fBQMx4ywF#eZ10jN%@}^6Trc3hCtkr5v?qLPeTBZoa}i>5KfE4m^W45!H&tNIy2!R)_bi2pfs)oyorVbu+nl5 ziVqIJzcjU0;LWSXA>n4vmdvWwz`nJ(vB0=#2PO^BiHo&%ecgXrM@U_;#^7aMCflK* zu?J85J`Tl@CXG@Gz9}c1FQwCP4okOwbBpS37P8a>qfV`z9k+`X5YFPzTfu%UP!6y`Fvr_P9?4V5;X6Bf8{U9#rCkAZ zM&uVB!n66B@`9(+a&}!KKRfCf^oQNN+6$^tHoMIK!>*$7-0ZFr=x>*b-P5X-LgxBY zo2Ug*pNH%q>8qqJmtk=~7g&DYcueN3PcuE3&z~%j0gUYgSS9wn57tV0QdV~{+bxEnx{U^j4&k6Tg_t{mX$_Yq$xe=@q|jc4#`MB^ zJT!tidMB9LT+XqKk3JFN=!_dS0?dknKn##1>;EeT2o)}9LyEIBz=e4SFuw9d_vq)Y znKx|vFBXdWkaNz_)-AYMGNnQ9zLj_f%C}~7N!N>u)Lf+CfEIdIU7czh$QbcAide4T zZQJy*?<2fUv(SP%PV21I_X1kz7G8vO5oI)0xCIvcYt6{A`!}bwQlGSad^&0sE+dig ztCN-J!D2iYgG*FJ2{BPzy1^u&y=FXDd67a8y7BGP|L)Sh_Z*1ci7meUFD~utdnA|k z%FkshXa7&|yHfQ-cZaL9*88w++@nx&uAPsEVL*=wVw{~gi>(snR7!xUfN3m@nIRqe z$bxi@pG5F$L=in`nIEOo82`J5h_9j*7~_4)pr(1ea&G+SOCoJiMKDK#1^!`Tmo zu(KAj$s(@Ez}~eSFWD$y#q zslU<&-b60sArh0MhfMd8Ut(rM_CQZ8FfKQivy3;fi)0|#R9eO4o~zDAw8`&mCJBRl zL+V<9>B#dX+=Ch6E=t$PUla#aJlOiq<<`$o@7t~|m@_8YX~f5JPr8|q*x0k}KKaw) zlj4s{p!Bb0(O2I@&cJP`BT4v(=^IBCC}>G;6Pl`dvTGO(u1uHZFzBch#Oi5#?{oUA zMDhff&?FU9`${$qfOt^aXNUDLXp}!L8o++(*YdqI@rZ`e_9q$WGiZtk%BdwBGNUQLOvKhbHU?bZL0ypyF6t66gl zm;}?$LvW7=cpykxJulrHg1_Tybvk9?!FUgQFW7)ZjiG5RKh5P)A-N+a_IR~*prd%Jub(3dwV#iE zEZRnitmR!zrZDwcFZbI$fi zpQ#2NyF^|ZZxhg}_2{p|uY5RbnD8K6ZJ*(Qw2)?}wekp&yaRA|Qo#DxsS?SeI+jqSMG)is9$_pX3e;QRCk`w z6Eyf}-+>ptnm-5fB$ja02cI*FiDNlWz6!au(Hs}CGqc@Mmic~|=QFFJrG1@1hjtXy z4~e%c+1cVu*QrSvt}^-J7&3CYOFA(;0v#pDtP1!!v4p;BvW*`n{US>q(dX{NUrV`ti>sUd7L3MP0-oP`aRTgYw5brGKhov{JH8&ZnR)OJ2X6Hj z*N%E-g5%w9Tu(o3p@Ox209&F)dqM|)8ypzq@>_T7)U{4lXM#FbS?FxaC!G^bZMM9+ z4tmuQbQP|}fWbv^^L6{ks3C9Ej)`TTPs7Rx%f;*+b8A$!FHS$N0rHb7YlE-;Os=Pr zQ{twGcgc=sfxFbo@AZ<0v(i)mIIN>SayZmhz4f%!>5C|cW!)L%h17s1v)z*m@qbN( zLIG`HP@`-xc!<{bo61SZlQWVZ1OuYl!Sb-gF-ru;V-o?-65R4%f%6Z;4dlCb<*tm4 zT`7ejX`!VvI;>13$7YHQz%+8p7l(Tpo$_JB4f^W={o?Bv;zK3iLCjqj{gvE5lo;fd zHH{q|VzJ(ecLFb~dW44K((lhkhDQ$2inQ@ZcRq7Y>-^*1b>gOVEt)4}ovdHpbt^K@ z|3sf`Dm|bJwcZkK{pP34+PPS-&Y(HzYpQh%%*U0(ohJ^qYv&SPhZse79v3M#nTUb? zTTjUjU*9&)0S1{kUx6pKuPYG_c~z}evFZy5xUz{>?k8wd2OGRLnS6!W@2E;KWyJGkUt&UFTh*2NVjj=kW%jj~V001z!4 z=ACav4hf=_2vC25z)FK{a-HCIF%1b@(>NH^N7$**yWUBYO61yA32R`g-kGrQqT2&s zZ1aW~`>zx~03Uhl@0bL?Vul+mpc)cp64nzfU1rpi*eG&?8WU7Xl4Pf1!!_iKpK_${ zC;xLY0h})InNl8x8hkL6Jpz7odsa%}^mCw|17HWPhf{dC+kQ}x((i~n?<}jL=p9a@ z<9^KPtHyuVYuBL`*B7H;P2iVO8ICwx_P&$c40y;=GC7R)u@F`J-|`;#me&bZ9#xFU zJg^Th!=rFfc{Bw+ujIxWBM>U0T(6i0?6X&W^QWn?a#<*foA?<)RQJ+am_wkw5~pN- z7sfTpB>PChT4dEn1d;2VMl0o-hg^bZeAQZSZ%fT*?fK_jkzO;p1^Kn_+yjstFP#ra zNvx;BrMYSMj?`B;0sS zFuJaW4L~Ou?IWxSIxyrDP0$laaSx}5DtUOzHO?=y^m2JYfcOG)&~ws}entE=bCT7$ z=#rYt?lU1eR^i}WaqU8Z0rKPflqR^`l!q|k(Zo+khOK+ubx;hXEPh&3dhXVaKhK_5 zEWuW;iN*%L+&b5&xM}Dl-pY8w8~S%KsSYAxoEeE0RatjS6)vupzw^Mi4zR4J9^a9vEO zGsL1|=&T;B!-Hc|XANCOT4+&_Am}oQeN;)!5I#Ng%dGfD89Z`xzBJfQ5Uq?0g3AeUS9@IhE|>w~}OV)8>HvkoV#COPN{LT#vk8 zt2Z)j@{a(~lW*kv*4-rOL6sffa^(OAYdJ-0AsgF9gwSQe2wH&X@4yh*TSHt#%TNt1(?*1p$1*$&WoXj%(3D- zcQ5QJ#PkYUg9UjMs?vZCI$TX&{X=JmqECeM2>uCx|CpLx$`!gYuDe(vVX}YRkFG^k zURe>tw{_d=^mg9nvS?KtpkI=2?(iG$tPXR5QosdvzxGoCt z$$I=Gfzpq+2F3?10L^~%hk|tHo!byiu28i+0-PzrVDKCekd-_eW}(>Fp}Ancc191J z%LV{ozGVXd7!U|yD)X?cRj`u12B#u~Q22#>5x;tCwV54R+A8Kzk+(poe&f<5a*v*K zT2oU&Cy_LPGej(sedjw!v3{YylrY}sxYF)>cfp<-T!xEu)CFu&YJe?D)I%N!%*L!8 zEi#ZVi4r-oMksMF`zOoUUiq(+KVL}Vgk4zs|M2{i%LBzJSShuf5=6EJK+gfbJ})q= zG0GhyJ>s|)s`}>jgj5{06DiB8;CT5#UeEFuCDRNU65yFEh+SOUYPR?{idoz^hcctc z&442k_wYk5d(L7ZTKmy)4^n0o##7c6!_jl_B86&KbNSP0;&tq_AS1DeI66n%PR*pX zi2%0k-ZNP@3`AaRb)vJ?W}XEv*Z1a+PPd6tY;c0IY-s0=Iw-*C*soU) zC=bBofdMQRHt;f`m;%bDO+Q@6&hS8dvdDDe(V_H-k2t&!J`FL&9w2#0bHLqd5+>n8)4e;ua%TPUO&4#d!TjvD`IHe+m+wqABkj zoNs5r+GI!s>cQZx77EF%7%V;lk~d43R$%h9**@|sc6SSR>J07Anld(@sT0nyR>Qu_ zPhkc@Fj;M*AKsf3%f|p*H1HyY%3g7T%cCKt?y8k0=-`j0laL`{!mVH11jZ{=3)Zbo z21^05#asw*jiv?Hew&@KV*;teNz-jz?UZ2y0k!l8DBW^9Rj~0!uD>Ft|27Lg;_|N} z*?vvL_xnuig>$EG@^@kLoJ?zdbt0stXU1YVLJO_W zCv!h-*}a>}{Q3SZv`DX6-2%p&B;T>R%A72KsxXP5VK54m2trhI`mBmx(#zV{ zInu6zS{==2l?XBO^i7UsOK?Fk{?ekyEXECjxn| ze`kRpJim|8Q}?3d(XG1>vcoX%zs<(_g-QWYTElLe@&5AL%%^F!{2#PFiop zRz~d(ix56>b@e=g)qGNk>2`{de6Q_WxRCIF*6yQFR#bxy#Qy{EQ~~2n-V>tkL{`UY z&0Rmmuj2DpeT)jObl<7A@des_b`d1V25nwoq~e9M<^f>hHSU>co8g(*{m}-YwofiI z-mkS=3Wl~O+8MFVW{YqX8E6K**_pPc`QNK@m~X8Hg&Kle5qX4L!dd6!IWdLU*Nlkc zGiH(n$H6or(h^BfuCPB&?kP`30z;2(u1 zR+FQfD9dIbldYlRvSLo87bRrF5U656yei7F$Z+uFv&!-!9(3wD{QY)By0oUJmuQ{- zU}FV=;Y7LSZ1uxnRdzVY10dxWlIkcKoJet_HxrwC@n~W6^hFyQekJ5|pV<4XQj zka1?kZLfD%g`ld(`_Jln6>AAWt9jnwML-$NI@O($<9KJ{W`C%l?Zl4-L0J7Mr!-?21u}Dy5k;D zu}!eeZ*3?R;L}9xDghYu?{zNJxF-U5o>7it>+~T~$v2ua{;7P)^J*yJ6~TT02(a@l_L<@JIZo3wOYJ9t9BNNUnvpIZ184_1fah;Vh@r1saB z^4y@`7jq3dxmVlsiow+%)C~5)FovY6v>3pvw$J%t@r@7cp&Ec@j$@T1u-i81-!`X5 z*u0~!^hDZq+7k7};*;b~0?h1x(q(|(>8OIVD1hr(THoGWk=iwDyIPzQf69sA=(J+o zn#EcLV}QPlry2xM(Oe*&QuTxz|DO({_ui&T9ig&XSsUK?V&dy)5>MGnr6uw&*J)SR z4O5d0C2t!+(VG{Y3fFU3G4!F~;z`0^Zy$VT zlJGjGSF&$3BUtfc03n5Fp1KQfb~InA&8`q*1q&GG=||Hzpy6L2H1f*;LpyQht{w?} zDZ2kUk>FaSr)>&iD|Z|7sH6U!z%}z@JhB~OedrN<`}Lfq^UV}Y43>cn?*zZ0AOM2< zpX5w(`QSQaEYTvqHz~=NXHUjQf0o%dBkQfeAN31lR&xxOEgYHTdZp%bVXN280=Ana z^M=FH$n=5rl?&BI)^08Qe_`>YwGkkoEIR+Kv^%~Pb0k^b?3|sA#qp8cs#eTueeM2Q zRw=0&M&6mX$~YF!Y0ZBc@63#c7`f!9BKSXd@Voc{RoLU+XN*d^;RK${8T?=LBS%Bk z&gk{var Ce=Object.create;var J=Object.defineProperty;var Pe=Object.getOwnPropertyDescriptor;var Oe=Object.getOwnPropertyNames;var Re=Object.getPrototypeOf,_e=Object.prototype.hasOwnProperty;var Me=t=>J(t,"__esModule",{value:!0});var Fe=(t,e)=>()=>(e||t((e={exports:{}}).exports,e),e.exports);var De=(t,e,r)=>{if(e&&typeof e=="object"||typeof e=="function")for(let n of Oe(e))!_e.call(t,n)&&n!=="default"&&J(t,n,{get:()=>e[n],enumerable:!(r=Pe(e,n))||r.enumerable});return t},Ae=t=>De(Me(J(t!=null?Ce(Re(t)):{},"default",t&&t.__esModule&&"default"in t?{get:()=>t.default,enumerable:!0}:{value:t,enumerable:!0})),t);var de=Fe((ue,he)=>{(function(){var t=function(e){var r=new t.Builder;return r.pipeline.add(t.trimmer,t.stopWordFilter,t.stemmer),r.searchPipeline.add(t.stemmer),e.call(r,r),r.build()};t.version="2.3.9";t.utils={},t.utils.warn=function(e){return function(r){e.console&&console.warn&&console.warn(r)}}(this),t.utils.asString=function(e){return e==null?"":e.toString()},t.utils.clone=function(e){if(e==null)return e;for(var r=Object.create(null),n=Object.keys(e),i=0;i0){var h=t.utils.clone(r)||{};h.position=[a,l],h.index=s.length,s.push(new t.Token(n.slice(a,o),h))}a=o+1}}return s},t.tokenizer.separator=/[\s\-]+/;t.Pipeline=function(){this._stack=[]},t.Pipeline.registeredFunctions=Object.create(null),t.Pipeline.registerFunction=function(e,r){r in this.registeredFunctions&&t.utils.warn("Overwriting existing registered function: "+r),e.label=r,t.Pipeline.registeredFunctions[e.label]=e},t.Pipeline.warnIfFunctionNotRegistered=function(e){var r=e.label&&e.label in this.registeredFunctions;r||t.utils.warn(`Function is not registered with pipeline. This may cause problems when serialising the index. -`,e)},t.Pipeline.load=function(e){var r=new t.Pipeline;return e.forEach(function(n){var i=t.Pipeline.registeredFunctions[n];if(i)r.add(i);else throw new Error("Cannot load unregistered function: "+n)}),r},t.Pipeline.prototype.add=function(){var e=Array.prototype.slice.call(arguments);e.forEach(function(r){t.Pipeline.warnIfFunctionNotRegistered(r),this._stack.push(r)},this)},t.Pipeline.prototype.after=function(e,r){t.Pipeline.warnIfFunctionNotRegistered(r);var n=this._stack.indexOf(e);if(n==-1)throw new Error("Cannot find existingFn");n=n+1,this._stack.splice(n,0,r)},t.Pipeline.prototype.before=function(e,r){t.Pipeline.warnIfFunctionNotRegistered(r);var n=this._stack.indexOf(e);if(n==-1)throw new Error("Cannot find existingFn");this._stack.splice(n,0,r)},t.Pipeline.prototype.remove=function(e){var r=this._stack.indexOf(e);r!=-1&&this._stack.splice(r,1)},t.Pipeline.prototype.run=function(e){for(var r=this._stack.length,n=0;n1&&(oe&&(n=s),o!=e);)i=n-r,s=r+Math.floor(i/2),o=this.elements[s*2];if(o==e||o>e)return s*2;if(oc?h+=2:a==c&&(r+=n[l+1]*i[h+1],l+=2,h+=2);return r},t.Vector.prototype.similarity=function(e){return this.dot(e)/this.magnitude()||0},t.Vector.prototype.toArray=function(){for(var e=new Array(this.elements.length/2),r=1,n=0;r0){var o=s.str.charAt(0),a;o in s.node.edges?a=s.node.edges[o]:(a=new t.TokenSet,s.node.edges[o]=a),s.str.length==1&&(a.final=!0),i.push({node:a,editsRemaining:s.editsRemaining,str:s.str.slice(1)})}if(s.editsRemaining!=0){if("*"in s.node.edges)var c=s.node.edges["*"];else{var c=new t.TokenSet;s.node.edges["*"]=c}if(s.str.length==0&&(c.final=!0),i.push({node:c,editsRemaining:s.editsRemaining-1,str:s.str}),s.str.length>1&&i.push({node:s.node,editsRemaining:s.editsRemaining-1,str:s.str.slice(1)}),s.str.length==1&&(s.node.final=!0),s.str.length>=1){if("*"in s.node.edges)var l=s.node.edges["*"];else{var l=new t.TokenSet;s.node.edges["*"]=l}s.str.length==1&&(l.final=!0),i.push({node:l,editsRemaining:s.editsRemaining-1,str:s.str.slice(1)})}if(s.str.length>1){var h=s.str.charAt(0),f=s.str.charAt(1),v;f in s.node.edges?v=s.node.edges[f]:(v=new t.TokenSet,s.node.edges[f]=v),s.str.length==1&&(v.final=!0),i.push({node:v,editsRemaining:s.editsRemaining-1,str:h+s.str.slice(2)})}}}return n},t.TokenSet.fromString=function(e){for(var r=new t.TokenSet,n=r,i=0,s=e.length;i=e;r--){var n=this.uncheckedNodes[r],i=n.child.toString();i in this.minimizedNodes?n.parent.edges[n.char]=this.minimizedNodes[i]:(n.child._str=i,this.minimizedNodes[i]=n.child),this.uncheckedNodes.pop()}};t.Index=function(e){this.invertedIndex=e.invertedIndex,this.fieldVectors=e.fieldVectors,this.tokenSet=e.tokenSet,this.fields=e.fields,this.pipeline=e.pipeline},t.Index.prototype.search=function(e){return this.query(function(r){var n=new t.QueryParser(e,r);n.parse()})},t.Index.prototype.query=function(e){for(var r=new t.Query(this.fields),n=Object.create(null),i=Object.create(null),s=Object.create(null),o=Object.create(null),a=Object.create(null),c=0;c1?this._b=1:this._b=e},t.Builder.prototype.k1=function(e){this._k1=e},t.Builder.prototype.add=function(e,r){var n=e[this._ref],i=Object.keys(this._fields);this._documents[n]=r||{},this.documentCount+=1;for(var s=0;s=this.length)return t.QueryLexer.EOS;var e=this.str.charAt(this.pos);return this.pos+=1,e},t.QueryLexer.prototype.width=function(){return this.pos-this.start},t.QueryLexer.prototype.ignore=function(){this.start==this.pos&&(this.pos+=1),this.start=this.pos},t.QueryLexer.prototype.backup=function(){this.pos-=1},t.QueryLexer.prototype.acceptDigitRun=function(){var e,r;do e=this.next(),r=e.charCodeAt(0);while(r>47&&r<58);e!=t.QueryLexer.EOS&&this.backup()},t.QueryLexer.prototype.more=function(){return this.pos1&&(e.backup(),e.emit(t.QueryLexer.TERM)),e.ignore(),e.more())return t.QueryLexer.lexText},t.QueryLexer.lexEditDistance=function(e){return e.ignore(),e.acceptDigitRun(),e.emit(t.QueryLexer.EDIT_DISTANCE),t.QueryLexer.lexText},t.QueryLexer.lexBoost=function(e){return e.ignore(),e.acceptDigitRun(),e.emit(t.QueryLexer.BOOST),t.QueryLexer.lexText},t.QueryLexer.lexEOS=function(e){e.width()>0&&e.emit(t.QueryLexer.TERM)},t.QueryLexer.termSeparator=t.tokenizer.separator,t.QueryLexer.lexText=function(e){for(;;){var r=e.next();if(r==t.QueryLexer.EOS)return t.QueryLexer.lexEOS;if(r.charCodeAt(0)==92){e.escapeCharacter();continue}if(r==":")return t.QueryLexer.lexField;if(r=="~")return e.backup(),e.width()>0&&e.emit(t.QueryLexer.TERM),t.QueryLexer.lexEditDistance;if(r=="^")return e.backup(),e.width()>0&&e.emit(t.QueryLexer.TERM),t.QueryLexer.lexBoost;if(r=="+"&&e.width()===1||r=="-"&&e.width()===1)return e.emit(t.QueryLexer.PRESENCE),t.QueryLexer.lexText;if(r.match(t.QueryLexer.termSeparator))return t.QueryLexer.lexTerm}},t.QueryParser=function(e,r){this.lexer=new t.QueryLexer(e),this.query=r,this.currentClause={},this.lexemeIdx=0},t.QueryParser.prototype.parse=function(){this.lexer.run(),this.lexemes=this.lexer.lexemes;for(var e=t.QueryParser.parseClause;e;)e=e(this);return this.query},t.QueryParser.prototype.peekLexeme=function(){return this.lexemes[this.lexemeIdx]},t.QueryParser.prototype.consumeLexeme=function(){var e=this.peekLexeme();return this.lexemeIdx+=1,e},t.QueryParser.prototype.nextClause=function(){var e=this.currentClause;this.query.clause(e),this.currentClause={}},t.QueryParser.parseClause=function(e){var r=e.peekLexeme();if(r!=null)switch(r.type){case t.QueryLexer.PRESENCE:return t.QueryParser.parsePresence;case t.QueryLexer.FIELD:return t.QueryParser.parseField;case t.QueryLexer.TERM:return t.QueryParser.parseTerm;default:var n="expected either a field or a term, found "+r.type;throw r.str.length>=1&&(n+=" with value '"+r.str+"'"),new t.QueryParseError(n,r.start,r.end)}},t.QueryParser.parsePresence=function(e){var r=e.consumeLexeme();if(r!=null){switch(r.str){case"-":e.currentClause.presence=t.Query.presence.PROHIBITED;break;case"+":e.currentClause.presence=t.Query.presence.REQUIRED;break;default:var n="unrecognised presence operator'"+r.str+"'";throw new t.QueryParseError(n,r.start,r.end)}var i=e.peekLexeme();if(i==null){var n="expecting term or field, found nothing";throw new t.QueryParseError(n,r.start,r.end)}switch(i.type){case t.QueryLexer.FIELD:return t.QueryParser.parseField;case t.QueryLexer.TERM:return t.QueryParser.parseTerm;default:var n="expecting term or field, found '"+i.type+"'";throw new t.QueryParseError(n,i.start,i.end)}}},t.QueryParser.parseField=function(e){var r=e.consumeLexeme();if(r!=null){if(e.query.allFields.indexOf(r.str)==-1){var n=e.query.allFields.map(function(o){return"'"+o+"'"}).join(", "),i="unrecognised field '"+r.str+"', possible fields: "+n;throw new t.QueryParseError(i,r.start,r.end)}e.currentClause.fields=[r.str];var s=e.peekLexeme();if(s==null){var i="expecting term, found nothing";throw new t.QueryParseError(i,r.start,r.end)}switch(s.type){case t.QueryLexer.TERM:return t.QueryParser.parseTerm;default:var i="expecting term, found '"+s.type+"'";throw new t.QueryParseError(i,s.start,s.end)}}},t.QueryParser.parseTerm=function(e){var r=e.consumeLexeme();if(r!=null){e.currentClause.term=r.str.toLowerCase(),r.str.indexOf("*")!=-1&&(e.currentClause.usePipeline=!1);var n=e.peekLexeme();if(n==null){e.nextClause();return}switch(n.type){case t.QueryLexer.TERM:return e.nextClause(),t.QueryParser.parseTerm;case t.QueryLexer.FIELD:return e.nextClause(),t.QueryParser.parseField;case t.QueryLexer.EDIT_DISTANCE:return t.QueryParser.parseEditDistance;case t.QueryLexer.BOOST:return t.QueryParser.parseBoost;case t.QueryLexer.PRESENCE:return e.nextClause(),t.QueryParser.parsePresence;default:var i="Unexpected lexeme type '"+n.type+"'";throw new t.QueryParseError(i,n.start,n.end)}}},t.QueryParser.parseEditDistance=function(e){var r=e.consumeLexeme();if(r!=null){var n=parseInt(r.str,10);if(isNaN(n)){var i="edit distance must be numeric";throw new t.QueryParseError(i,r.start,r.end)}e.currentClause.editDistance=n;var s=e.peekLexeme();if(s==null){e.nextClause();return}switch(s.type){case t.QueryLexer.TERM:return e.nextClause(),t.QueryParser.parseTerm;case t.QueryLexer.FIELD:return e.nextClause(),t.QueryParser.parseField;case t.QueryLexer.EDIT_DISTANCE:return t.QueryParser.parseEditDistance;case t.QueryLexer.BOOST:return t.QueryParser.parseBoost;case t.QueryLexer.PRESENCE:return e.nextClause(),t.QueryParser.parsePresence;default:var i="Unexpected lexeme type '"+s.type+"'";throw new t.QueryParseError(i,s.start,s.end)}}},t.QueryParser.parseBoost=function(e){var r=e.consumeLexeme();if(r!=null){var n=parseInt(r.str,10);if(isNaN(n)){var i="boost must be numeric";throw new t.QueryParseError(i,r.start,r.end)}e.currentClause.boost=n;var s=e.peekLexeme();if(s==null){e.nextClause();return}switch(s.type){case t.QueryLexer.TERM:return e.nextClause(),t.QueryParser.parseTerm;case t.QueryLexer.FIELD:return e.nextClause(),t.QueryParser.parseField;case t.QueryLexer.EDIT_DISTANCE:return t.QueryParser.parseEditDistance;case t.QueryLexer.BOOST:return t.QueryParser.parseBoost;case t.QueryLexer.PRESENCE:return e.nextClause(),t.QueryParser.parsePresence;default:var i="Unexpected lexeme type '"+s.type+"'";throw new t.QueryParseError(i,s.start,s.end)}}},function(e,r){typeof define=="function"&&define.amd?define(r):typeof ue=="object"?he.exports=r():e.lunr=r()}(this,function(){return t})})()});var le=[];function N(t,e){le.push({selector:e,constructor:t})}var X=class{constructor(){this.createComponents(document.body)}createComponents(e){le.forEach(r=>{e.querySelectorAll(r.selector).forEach(n=>{n.dataset.hasInstance||(new r.constructor({el:n}),n.dataset.hasInstance=String(!0))})})}};var Q=class{constructor(e){this.el=e.el}};var Z=class{constructor(){this.listeners={}}addEventListener(e,r){e in this.listeners||(this.listeners[e]=[]),this.listeners[e].push(r)}removeEventListener(e,r){if(!(e in this.listeners))return;let n=this.listeners[e];for(let i=0,s=n.length;i{let r=Date.now();return(...n)=>{r+e-Date.now()<0&&(t(...n),r=Date.now())}};var ee=class extends Z{constructor(){super();this.scrollTop=0;this.lastY=0;this.width=0;this.height=0;this.showToolbar=!0;this.toolbar=document.querySelector(".tsd-page-toolbar"),this.secondaryNav=document.querySelector(".tsd-navigation.secondary"),window.addEventListener("scroll",K(()=>this.onScroll(),10)),window.addEventListener("resize",K(()=>this.onResize(),10)),this.onResize(),this.onScroll()}triggerResize(){let e=new CustomEvent("resize",{detail:{width:this.width,height:this.height}});this.dispatchEvent(e)}onResize(){this.width=window.innerWidth||0,this.height=window.innerHeight||0;let e=new CustomEvent("resize",{detail:{width:this.width,height:this.height}});this.dispatchEvent(e)}onScroll(){this.scrollTop=window.scrollY||0;let e=new CustomEvent("scroll",{detail:{scrollTop:this.scrollTop}});this.dispatchEvent(e),this.hideShowToolbar()}hideShowToolbar(){let e=this.showToolbar;this.showToolbar=this.lastY>=this.scrollTop||this.scrollTop<=0,e!==this.showToolbar&&(this.toolbar.classList.toggle("tsd-page-toolbar--hide"),this.secondaryNav.classList.toggle("tsd-navigation--toolbar-hide")),this.lastY=this.scrollTop}},I=ee;I.instance=new ee;var te=class extends Q{constructor(e){super(e);this.anchors=[];this.index=-1;I.instance.addEventListener("resize",()=>this.onResize()),I.instance.addEventListener("scroll",r=>this.onScroll(r)),this.createAnchors()}createAnchors(){let e=window.location.href;e.indexOf("#")!=-1&&(e=e.substr(0,e.indexOf("#"))),this.el.querySelectorAll("a").forEach(r=>{let n=r.href;if(n.indexOf("#")==-1||n.substr(0,e.length)!=e)return;let i=n.substr(n.indexOf("#")+1),s=document.querySelector("a.tsd-anchor[name="+i+"]"),o=r.parentNode;!s||!o||this.anchors.push({link:o,anchor:s,position:0})}),this.onResize()}onResize(){let e;for(let n=0,i=this.anchors.length;nn.position-i.position);let r=new CustomEvent("scroll",{detail:{scrollTop:I.instance.scrollTop}});this.onScroll(r)}onScroll(e){let r=e.detail.scrollTop+5,n=this.anchors,i=n.length-1,s=this.index;for(;s>-1&&n[s].position>r;)s-=1;for(;s-1&&this.anchors[this.index].link.classList.remove("focus"),this.index=s,this.index>-1&&this.anchors[this.index].link.classList.add("focus"))}};var ce=(t,e=100)=>{let r;return(...n)=>{clearTimeout(r),r=setTimeout(()=>t(n),e)}};var pe=Ae(de());function fe(){let t=document.getElementById("tsd-search");if(!t)return;let e=document.getElementById("search-script");t.classList.add("loading"),e&&(e.addEventListener("error",()=>{t.classList.remove("loading"),t.classList.add("failure")}),e.addEventListener("load",()=>{t.classList.remove("loading"),t.classList.add("ready")}),window.searchData&&t.classList.remove("loading"));let r=document.querySelector("#tsd-search input"),n=document.querySelector("#tsd-search .results");if(!r||!n)throw new Error("The input field or the result list wrapper was not found");let i=!1;n.addEventListener("mousedown",()=>i=!0),n.addEventListener("mouseup",()=>{i=!1,t.classList.remove("has-focus")}),r.addEventListener("focus",()=>t.classList.add("has-focus")),r.addEventListener("blur",()=>{i||(i=!1,t.classList.remove("has-focus"))});let s={base:t.dataset.base+"/"};Ve(t,n,r,s)}function Ve(t,e,r,n){r.addEventListener("input",ce(()=>{ze(t,e,r,n)},200));let i=!1;r.addEventListener("keydown",s=>{i=!0,s.key=="Enter"?Ne(e,r):s.key=="Escape"?r.blur():s.key=="ArrowUp"?me(e,-1):s.key==="ArrowDown"?me(e,1):i=!1}),r.addEventListener("keypress",s=>{i&&s.preventDefault()}),document.body.addEventListener("keydown",s=>{s.altKey||s.ctrlKey||s.metaKey||!r.matches(":focus")&&s.key==="/"&&(r.focus(),s.preventDefault())})}function He(t,e){t.index||window.searchData&&(e.classList.remove("loading"),e.classList.add("ready"),t.data=window.searchData,t.index=pe.Index.load(window.searchData.index))}function ze(t,e,r,n){if(He(n,t),!n.index||!n.data)return;e.textContent="";let i=r.value.trim(),s=n.index.search(`*${i}*`);for(let o=0,a=Math.min(10,s.length);o${ve(c.parent,i)}.${l}`);let h=document.createElement("li");h.classList.value=c.classes;let f=document.createElement("a");f.href=n.base+c.url,f.classList.add("tsd-kind-icon"),f.innerHTML=l,h.append(f),e.appendChild(h)}}function me(t,e){let r=t.querySelector(".current");if(!r)r=t.querySelector(e==1?"li:first-child":"li:last-child"),r&&r.classList.add("current");else{let n=r;if(e===1)do n=n.nextElementSibling;while(n instanceof HTMLElement&&n.offsetParent==null);else do n=n.previousElementSibling;while(n instanceof HTMLElement&&n.offsetParent==null);n&&(r.classList.remove("current"),n.classList.add("current"))}}function Ne(t,e){let r=t.querySelector(".current");if(r||(r=t.querySelector("li:first-child")),r){let n=r.querySelector("a");n&&(window.location.href=n.href),e.blur()}}function ve(t,e){if(e==="")return t;let r=t.toLocaleLowerCase(),n=e.toLocaleLowerCase(),i=[],s=0,o=r.indexOf(n);for(;o!=-1;)i.push(re(t.substring(s,o)),`${re(t.substring(o,o+n.length))}`),s=o+n.length,o=r.indexOf(n,s);return i.push(re(t.substring(s))),i.join("")}var je={"&":"&","<":"<",">":">","'":"'",'"':"""};function re(t){return t.replace(/[&<>"'"]/g,e=>je[e])}var ge=class{constructor(e,r){this.signature=e,this.description=r}addClass(e){return this.signature.classList.add(e),this.description.classList.add(e),this}removeClass(e){return this.signature.classList.remove(e),this.description.classList.remove(e),this}},ne=class extends Q{constructor(e){super(e);this.groups=[];this.index=-1;this.createGroups(),this.container&&(this.el.classList.add("active"),Array.from(this.el.children).forEach(r=>{r.addEventListener("touchstart",n=>this.onClick(n)),r.addEventListener("click",n=>this.onClick(n))}),this.container.classList.add("active"),this.setIndex(0))}setIndex(e){if(e<0&&(e=0),e>this.groups.length-1&&(e=this.groups.length-1),this.index==e)return;let r=this.groups[e];if(this.index>-1){let n=this.groups[this.index];n.removeClass("current").addClass("fade-out"),r.addClass("current"),r.addClass("fade-in"),I.instance.triggerResize(),setTimeout(()=>{n.removeClass("fade-out"),r.removeClass("fade-in")},300)}else r.addClass("current"),I.instance.triggerResize();this.index=e}createGroups(){let e=this.el.children;if(e.length<2)return;this.container=this.el.nextElementSibling;let r=this.container.children;this.groups=[];for(let n=0;n{r.signature===e.currentTarget&&this.setIndex(n)})}};var C="mousedown",ye="mousemove",_="mouseup",G={x:0,y:0},xe=!1,ie=!1,Be=!1,A=!1,Le=/Android|webOS|iPhone|iPad|iPod|BlackBerry|IEMobile|Opera Mini/i.test(navigator.userAgent);document.documentElement.classList.add(Le?"is-mobile":"not-mobile");Le&&"ontouchstart"in document.documentElement&&(Be=!0,C="touchstart",ye="touchmove",_="touchend");document.addEventListener(C,t=>{ie=!0,A=!1;let e=C=="touchstart"?t.targetTouches[0]:t;G.y=e.pageY||0,G.x=e.pageX||0});document.addEventListener(ye,t=>{if(!!ie&&!A){let e=C=="touchstart"?t.targetTouches[0]:t,r=G.x-(e.pageX||0),n=G.y-(e.pageY||0);A=Math.sqrt(r*r+n*n)>10}});document.addEventListener(_,()=>{ie=!1});document.addEventListener("click",t=>{xe&&(t.preventDefault(),t.stopImmediatePropagation(),xe=!1)});var se=class extends Q{constructor(e){super(e);this.className=this.el.dataset.toggle||"",this.el.addEventListener(_,r=>this.onPointerUp(r)),this.el.addEventListener("click",r=>r.preventDefault()),document.addEventListener(C,r=>this.onDocumentPointerDown(r)),document.addEventListener(_,r=>this.onDocumentPointerUp(r))}setActive(e){if(this.active==e)return;this.active=e,document.documentElement.classList.toggle("has-"+this.className,e),this.el.classList.toggle("active",e);let r=(this.active?"to-has-":"from-has-")+this.className;document.documentElement.classList.add(r),setTimeout(()=>document.documentElement.classList.remove(r),500)}onPointerUp(e){A||(this.setActive(!0),e.preventDefault())}onDocumentPointerDown(e){if(this.active){if(e.target.closest(".col-menu, .tsd-filter-group"))return;this.setActive(!1)}}onDocumentPointerUp(e){if(!A&&this.active&&e.target.closest(".col-menu")){let r=e.target.closest("a");if(r){let n=window.location.href;n.indexOf("#")!=-1&&(n=n.substr(0,n.indexOf("#"))),r.href.substr(0,n.length)==n&&setTimeout(()=>this.setActive(!1),250)}}}};var oe=class{constructor(e,r){this.key=e,this.value=r,this.defaultValue=r,this.initialize(),window.localStorage[this.key]&&this.setValue(this.fromLocalStorage(window.localStorage[this.key]))}initialize(){}setValue(e){if(this.value==e)return;let r=this.value;this.value=e,window.localStorage[this.key]=this.toLocalStorage(e),this.handleValueChange(r,e)}},ae=class extends oe{initialize(){let e=document.querySelector("#tsd-filter-"+this.key);!e||(this.checkbox=e,this.checkbox.addEventListener("change",()=>{this.setValue(this.checkbox.checked)}))}handleValueChange(e,r){!this.checkbox||(this.checkbox.checked=this.value,document.documentElement.classList.toggle("toggle-"+this.key,this.value!=this.defaultValue))}fromLocalStorage(e){return e=="true"}toLocalStorage(e){return e?"true":"false"}},Ee=class extends oe{initialize(){document.documentElement.classList.add("toggle-"+this.key+this.value);let e=document.querySelector("#tsd-filter-"+this.key);if(!e)return;this.select=e;let r=()=>{this.select.classList.add("active")},n=()=>{this.select.classList.remove("active")};this.select.addEventListener(C,r),this.select.addEventListener("mouseover",r),this.select.addEventListener("mouseleave",n),this.select.querySelectorAll("li").forEach(i=>{i.addEventListener(_,s=>{e.classList.remove("active"),this.setValue(s.target.dataset.value||"")})}),document.addEventListener(C,i=>{this.select.contains(i.target)||this.select.classList.remove("active")})}handleValueChange(e,r){this.select.querySelectorAll("li.selected").forEach(s=>{s.classList.remove("selected")});let n=this.select.querySelector('li[data-value="'+r+'"]'),i=this.select.querySelector(".tsd-select-label");n&&i&&(n.classList.add("selected"),i.textContent=n.textContent),document.documentElement.classList.remove("toggle-"+e),document.documentElement.classList.add("toggle-"+r)}fromLocalStorage(e){return e}toLocalStorage(e){return e}},Y=class extends Q{constructor(e){super(e);this.optionVisibility=new Ee("visibility","private"),this.optionInherited=new ae("inherited",!0),this.optionExternals=new ae("externals",!0)}static isSupported(){try{return typeof window.localStorage!="undefined"}catch(e){return!1}}};function be(t){let e=localStorage.getItem("tsd-theme")||"os";t.value=e,we(e),t.addEventListener("change",()=>{localStorage.setItem("tsd-theme",t.value),we(t.value)})}function we(t){switch(t){case"os":document.body.classList.remove("light","dark");break;case"light":document.body.classList.remove("dark"),document.body.classList.add("light");break;case"dark":document.body.classList.remove("light"),document.body.classList.add("dark");break}}fe();N(te,".menu-highlight");N(ne,".tsd-signatures");N(se,"a[data-toggle]");Y.isSupported()?N(Y,"#tsd-filter"):document.documentElement.classList.add("no-filter");var Te=document.getElementById("theme");Te&&be(Te);var qe=new X;Object.defineProperty(window,"app",{value:qe});})(); -/*! - * lunr.Builder - * Copyright (C) 2020 Oliver Nightingale - */ -/*! - * lunr.Index - * Copyright (C) 2020 Oliver Nightingale - */ -/*! - * lunr.Pipeline - * Copyright (C) 2020 Oliver Nightingale - */ -/*! - * lunr.Set - * Copyright (C) 2020 Oliver Nightingale - */ -/*! - * lunr.TokenSet - * Copyright (C) 2020 Oliver Nightingale - */ -/*! - * lunr.Vector - * Copyright (C) 2020 Oliver Nightingale - */ -/*! - * lunr.stemmer - * Copyright (C) 2020 Oliver Nightingale - * Includes code from - http://tartarus.org/~martin/PorterStemmer/js.txt - */ -/*! - * lunr.stopWordFilter - * Copyright (C) 2020 Oliver Nightingale - */ -/*! - * lunr.tokenizer - * Copyright (C) 2020 Oliver Nightingale - */ -/*! - * lunr.trimmer - * Copyright (C) 2020 Oliver Nightingale - */ -/*! - * lunr.utils - * Copyright (C) 2020 Oliver Nightingale - */ -/** - * lunr - http://lunrjs.com - A bit like Solr, but much smaller and not as bright - 2.3.9 - * Copyright (C) 2020 Oliver Nightingale - * @license MIT - */ +"use strict"; +window.translations={"copy":"Copy","copied":"Copied!","normally_hidden":"This member is normally hidden due to your filter settings.","hierarchy_expand":"Expand","hierarchy_collapse":"Collapse","folder":"Folder","search_index_not_available":"The search index is not available","search_no_results_found_for_0":"No results found for {0}","kind_1":"Project","kind_2":"Module","kind_4":"Namespace","kind_8":"Enumeration","kind_16":"Enumeration Member","kind_32":"Variable","kind_64":"Function","kind_128":"Class","kind_256":"Interface","kind_512":"Constructor","kind_1024":"Property","kind_2048":"Method","kind_4096":"Call Signature","kind_8192":"Index Signature","kind_16384":"Constructor Signature","kind_32768":"Parameter","kind_65536":"Type Literal","kind_131072":"Type Parameter","kind_262144":"Accessor","kind_524288":"Get Signature","kind_1048576":"Set Signature","kind_2097152":"Type Alias","kind_4194304":"Reference","kind_8388608":"Document"}; +"use strict";(()=>{var Ke=Object.create;var he=Object.defineProperty;var Ge=Object.getOwnPropertyDescriptor;var Ze=Object.getOwnPropertyNames;var Xe=Object.getPrototypeOf,Ye=Object.prototype.hasOwnProperty;var et=(t,e)=>()=>(e||t((e={exports:{}}).exports,e),e.exports);var tt=(t,e,n,r)=>{if(e&&typeof e=="object"||typeof e=="function")for(let i of Ze(e))!Ye.call(t,i)&&i!==n&&he(t,i,{get:()=>e[i],enumerable:!(r=Ge(e,i))||r.enumerable});return t};var nt=(t,e,n)=>(n=t!=null?Ke(Xe(t)):{},tt(e||!t||!t.__esModule?he(n,"default",{value:t,enumerable:!0}):n,t));var ye=et((me,ge)=>{(function(){var t=function(e){var n=new t.Builder;return n.pipeline.add(t.trimmer,t.stopWordFilter,t.stemmer),n.searchPipeline.add(t.stemmer),e.call(n,n),n.build()};t.version="2.3.9";t.utils={},t.utils.warn=(function(e){return function(n){e.console&&console.warn&&console.warn(n)}})(this),t.utils.asString=function(e){return e==null?"":e.toString()},t.utils.clone=function(e){if(e==null)return e;for(var n=Object.create(null),r=Object.keys(e),i=0;i0){var d=t.utils.clone(n)||{};d.position=[a,l],d.index=s.length,s.push(new t.Token(r.slice(a,o),d))}a=o+1}}return s},t.tokenizer.separator=/[\s\-]+/;t.Pipeline=function(){this._stack=[]},t.Pipeline.registeredFunctions=Object.create(null),t.Pipeline.registerFunction=function(e,n){n in this.registeredFunctions&&t.utils.warn("Overwriting existing registered function: "+n),e.label=n,t.Pipeline.registeredFunctions[e.label]=e},t.Pipeline.warnIfFunctionNotRegistered=function(e){var n=e.label&&e.label in this.registeredFunctions;n||t.utils.warn(`Function is not registered with pipeline. This may cause problems when serialising the index. +`,e)},t.Pipeline.load=function(e){var n=new t.Pipeline;return e.forEach(function(r){var i=t.Pipeline.registeredFunctions[r];if(i)n.add(i);else throw new Error("Cannot load unregistered function: "+r)}),n},t.Pipeline.prototype.add=function(){var e=Array.prototype.slice.call(arguments);e.forEach(function(n){t.Pipeline.warnIfFunctionNotRegistered(n),this._stack.push(n)},this)},t.Pipeline.prototype.after=function(e,n){t.Pipeline.warnIfFunctionNotRegistered(n);var r=this._stack.indexOf(e);if(r==-1)throw new Error("Cannot find existingFn");r=r+1,this._stack.splice(r,0,n)},t.Pipeline.prototype.before=function(e,n){t.Pipeline.warnIfFunctionNotRegistered(n);var r=this._stack.indexOf(e);if(r==-1)throw new Error("Cannot find existingFn");this._stack.splice(r,0,n)},t.Pipeline.prototype.remove=function(e){var n=this._stack.indexOf(e);n!=-1&&this._stack.splice(n,1)},t.Pipeline.prototype.run=function(e){for(var n=this._stack.length,r=0;r1&&(oe&&(r=s),o!=e);)i=r-n,s=n+Math.floor(i/2),o=this.elements[s*2];if(o==e||o>e)return s*2;if(oc?d+=2:a==c&&(n+=r[l+1]*i[d+1],l+=2,d+=2);return n},t.Vector.prototype.similarity=function(e){return this.dot(e)/this.magnitude()||0},t.Vector.prototype.toArray=function(){for(var e=new Array(this.elements.length/2),n=1,r=0;n0){var o=s.str.charAt(0),a;o in s.node.edges?a=s.node.edges[o]:(a=new t.TokenSet,s.node.edges[o]=a),s.str.length==1&&(a.final=!0),i.push({node:a,editsRemaining:s.editsRemaining,str:s.str.slice(1)})}if(s.editsRemaining!=0){if("*"in s.node.edges)var c=s.node.edges["*"];else{var c=new t.TokenSet;s.node.edges["*"]=c}if(s.str.length==0&&(c.final=!0),i.push({node:c,editsRemaining:s.editsRemaining-1,str:s.str}),s.str.length>1&&i.push({node:s.node,editsRemaining:s.editsRemaining-1,str:s.str.slice(1)}),s.str.length==1&&(s.node.final=!0),s.str.length>=1){if("*"in s.node.edges)var l=s.node.edges["*"];else{var l=new t.TokenSet;s.node.edges["*"]=l}s.str.length==1&&(l.final=!0),i.push({node:l,editsRemaining:s.editsRemaining-1,str:s.str.slice(1)})}if(s.str.length>1){var d=s.str.charAt(0),f=s.str.charAt(1),p;f in s.node.edges?p=s.node.edges[f]:(p=new t.TokenSet,s.node.edges[f]=p),s.str.length==1&&(p.final=!0),i.push({node:p,editsRemaining:s.editsRemaining-1,str:d+s.str.slice(2)})}}}return r},t.TokenSet.fromString=function(e){for(var n=new t.TokenSet,r=n,i=0,s=e.length;i=e;n--){var r=this.uncheckedNodes[n],i=r.child.toString();i in this.minimizedNodes?r.parent.edges[r.char]=this.minimizedNodes[i]:(r.child._str=i,this.minimizedNodes[i]=r.child),this.uncheckedNodes.pop()}};t.Index=function(e){this.invertedIndex=e.invertedIndex,this.fieldVectors=e.fieldVectors,this.tokenSet=e.tokenSet,this.fields=e.fields,this.pipeline=e.pipeline},t.Index.prototype.search=function(e){return this.query(function(n){var r=new t.QueryParser(e,n);r.parse()})},t.Index.prototype.query=function(e){for(var n=new t.Query(this.fields),r=Object.create(null),i=Object.create(null),s=Object.create(null),o=Object.create(null),a=Object.create(null),c=0;c1?this._b=1:this._b=e},t.Builder.prototype.k1=function(e){this._k1=e},t.Builder.prototype.add=function(e,n){var r=e[this._ref],i=Object.keys(this._fields);this._documents[r]=n||{},this.documentCount+=1;for(var s=0;s=this.length)return t.QueryLexer.EOS;var e=this.str.charAt(this.pos);return this.pos+=1,e},t.QueryLexer.prototype.width=function(){return this.pos-this.start},t.QueryLexer.prototype.ignore=function(){this.start==this.pos&&(this.pos+=1),this.start=this.pos},t.QueryLexer.prototype.backup=function(){this.pos-=1},t.QueryLexer.prototype.acceptDigitRun=function(){var e,n;do e=this.next(),n=e.charCodeAt(0);while(n>47&&n<58);e!=t.QueryLexer.EOS&&this.backup()},t.QueryLexer.prototype.more=function(){return this.pos1&&(e.backup(),e.emit(t.QueryLexer.TERM)),e.ignore(),e.more())return t.QueryLexer.lexText},t.QueryLexer.lexEditDistance=function(e){return e.ignore(),e.acceptDigitRun(),e.emit(t.QueryLexer.EDIT_DISTANCE),t.QueryLexer.lexText},t.QueryLexer.lexBoost=function(e){return e.ignore(),e.acceptDigitRun(),e.emit(t.QueryLexer.BOOST),t.QueryLexer.lexText},t.QueryLexer.lexEOS=function(e){e.width()>0&&e.emit(t.QueryLexer.TERM)},t.QueryLexer.termSeparator=t.tokenizer.separator,t.QueryLexer.lexText=function(e){for(;;){var n=e.next();if(n==t.QueryLexer.EOS)return t.QueryLexer.lexEOS;if(n.charCodeAt(0)==92){e.escapeCharacter();continue}if(n==":")return t.QueryLexer.lexField;if(n=="~")return e.backup(),e.width()>0&&e.emit(t.QueryLexer.TERM),t.QueryLexer.lexEditDistance;if(n=="^")return e.backup(),e.width()>0&&e.emit(t.QueryLexer.TERM),t.QueryLexer.lexBoost;if(n=="+"&&e.width()===1||n=="-"&&e.width()===1)return e.emit(t.QueryLexer.PRESENCE),t.QueryLexer.lexText;if(n.match(t.QueryLexer.termSeparator))return t.QueryLexer.lexTerm}},t.QueryParser=function(e,n){this.lexer=new t.QueryLexer(e),this.query=n,this.currentClause={},this.lexemeIdx=0},t.QueryParser.prototype.parse=function(){this.lexer.run(),this.lexemes=this.lexer.lexemes;for(var e=t.QueryParser.parseClause;e;)e=e(this);return this.query},t.QueryParser.prototype.peekLexeme=function(){return this.lexemes[this.lexemeIdx]},t.QueryParser.prototype.consumeLexeme=function(){var e=this.peekLexeme();return this.lexemeIdx+=1,e},t.QueryParser.prototype.nextClause=function(){var e=this.currentClause;this.query.clause(e),this.currentClause={}},t.QueryParser.parseClause=function(e){var n=e.peekLexeme();if(n!=null)switch(n.type){case t.QueryLexer.PRESENCE:return t.QueryParser.parsePresence;case t.QueryLexer.FIELD:return t.QueryParser.parseField;case t.QueryLexer.TERM:return t.QueryParser.parseTerm;default:var r="expected either a field or a term, found "+n.type;throw n.str.length>=1&&(r+=" with value '"+n.str+"'"),new t.QueryParseError(r,n.start,n.end)}},t.QueryParser.parsePresence=function(e){var n=e.consumeLexeme();if(n!=null){switch(n.str){case"-":e.currentClause.presence=t.Query.presence.PROHIBITED;break;case"+":e.currentClause.presence=t.Query.presence.REQUIRED;break;default:var r="unrecognised presence operator'"+n.str+"'";throw new t.QueryParseError(r,n.start,n.end)}var i=e.peekLexeme();if(i==null){var r="expecting term or field, found nothing";throw new t.QueryParseError(r,n.start,n.end)}switch(i.type){case t.QueryLexer.FIELD:return t.QueryParser.parseField;case t.QueryLexer.TERM:return t.QueryParser.parseTerm;default:var r="expecting term or field, found '"+i.type+"'";throw new t.QueryParseError(r,i.start,i.end)}}},t.QueryParser.parseField=function(e){var n=e.consumeLexeme();if(n!=null){if(e.query.allFields.indexOf(n.str)==-1){var r=e.query.allFields.map(function(o){return"'"+o+"'"}).join(", "),i="unrecognised field '"+n.str+"', possible fields: "+r;throw new t.QueryParseError(i,n.start,n.end)}e.currentClause.fields=[n.str];var s=e.peekLexeme();if(s==null){var i="expecting term, found nothing";throw new t.QueryParseError(i,n.start,n.end)}switch(s.type){case t.QueryLexer.TERM:return t.QueryParser.parseTerm;default:var i="expecting term, found '"+s.type+"'";throw new t.QueryParseError(i,s.start,s.end)}}},t.QueryParser.parseTerm=function(e){var n=e.consumeLexeme();if(n!=null){e.currentClause.term=n.str.toLowerCase(),n.str.indexOf("*")!=-1&&(e.currentClause.usePipeline=!1);var r=e.peekLexeme();if(r==null){e.nextClause();return}switch(r.type){case t.QueryLexer.TERM:return e.nextClause(),t.QueryParser.parseTerm;case t.QueryLexer.FIELD:return e.nextClause(),t.QueryParser.parseField;case t.QueryLexer.EDIT_DISTANCE:return t.QueryParser.parseEditDistance;case t.QueryLexer.BOOST:return t.QueryParser.parseBoost;case t.QueryLexer.PRESENCE:return e.nextClause(),t.QueryParser.parsePresence;default:var i="Unexpected lexeme type '"+r.type+"'";throw new t.QueryParseError(i,r.start,r.end)}}},t.QueryParser.parseEditDistance=function(e){var n=e.consumeLexeme();if(n!=null){var r=parseInt(n.str,10);if(isNaN(r)){var i="edit distance must be numeric";throw new t.QueryParseError(i,n.start,n.end)}e.currentClause.editDistance=r;var s=e.peekLexeme();if(s==null){e.nextClause();return}switch(s.type){case t.QueryLexer.TERM:return e.nextClause(),t.QueryParser.parseTerm;case t.QueryLexer.FIELD:return e.nextClause(),t.QueryParser.parseField;case t.QueryLexer.EDIT_DISTANCE:return t.QueryParser.parseEditDistance;case t.QueryLexer.BOOST:return t.QueryParser.parseBoost;case t.QueryLexer.PRESENCE:return e.nextClause(),t.QueryParser.parsePresence;default:var i="Unexpected lexeme type '"+s.type+"'";throw new t.QueryParseError(i,s.start,s.end)}}},t.QueryParser.parseBoost=function(e){var n=e.consumeLexeme();if(n!=null){var r=parseInt(n.str,10);if(isNaN(r)){var i="boost must be numeric";throw new t.QueryParseError(i,n.start,n.end)}e.currentClause.boost=r;var s=e.peekLexeme();if(s==null){e.nextClause();return}switch(s.type){case t.QueryLexer.TERM:return e.nextClause(),t.QueryParser.parseTerm;case t.QueryLexer.FIELD:return e.nextClause(),t.QueryParser.parseField;case t.QueryLexer.EDIT_DISTANCE:return t.QueryParser.parseEditDistance;case t.QueryLexer.BOOST:return t.QueryParser.parseBoost;case t.QueryLexer.PRESENCE:return e.nextClause(),t.QueryParser.parsePresence;default:var i="Unexpected lexeme type '"+s.type+"'";throw new t.QueryParseError(i,s.start,s.end)}}},(function(e,n){typeof define=="function"&&define.amd?define(n):typeof me=="object"?ge.exports=n():e.lunr=n()})(this,function(){return t})})()});var M,G={getItem(){return null},setItem(){}},K;try{K=localStorage,M=K}catch{K=G,M=G}var S={getItem:t=>M.getItem(t),setItem:(t,e)=>M.setItem(t,e),disableWritingLocalStorage(){M=G},disable(){localStorage.clear(),M=G},enable(){M=K}};window.TypeDoc||={disableWritingLocalStorage(){S.disableWritingLocalStorage()},disableLocalStorage:()=>{S.disable()},enableLocalStorage:()=>{S.enable()}};window.translations||={copy:"Copy",copied:"Copied!",normally_hidden:"This member is normally hidden due to your filter settings.",hierarchy_expand:"Expand",hierarchy_collapse:"Collapse",search_index_not_available:"The search index is not available",search_no_results_found_for_0:"No results found for {0}",folder:"Folder",kind_1:"Project",kind_2:"Module",kind_4:"Namespace",kind_8:"Enumeration",kind_16:"Enumeration Member",kind_32:"Variable",kind_64:"Function",kind_128:"Class",kind_256:"Interface",kind_512:"Constructor",kind_1024:"Property",kind_2048:"Method",kind_4096:"Call Signature",kind_8192:"Index Signature",kind_16384:"Constructor Signature",kind_32768:"Parameter",kind_65536:"Type Literal",kind_131072:"Type Parameter",kind_262144:"Accessor",kind_524288:"Get Signature",kind_1048576:"Set Signature",kind_2097152:"Type Alias",kind_4194304:"Reference",kind_8388608:"Document"};var pe=[];function X(t,e){pe.push({selector:e,constructor:t})}var Z=class{alwaysVisibleMember=null;constructor(){this.createComponents(document.body),this.ensureFocusedElementVisible(),this.listenForCodeCopies(),window.addEventListener("hashchange",()=>this.ensureFocusedElementVisible()),document.body.style.display||(this.ensureFocusedElementVisible(),this.updateIndexVisibility(),this.scrollToHash())}createComponents(e){pe.forEach(n=>{e.querySelectorAll(n.selector).forEach(r=>{r.dataset.hasInstance||(new n.constructor({el:r,app:this}),r.dataset.hasInstance=String(!0))})})}filterChanged(){this.ensureFocusedElementVisible()}showPage(){document.body.style.display&&(document.body.style.removeProperty("display"),this.ensureFocusedElementVisible(),this.updateIndexVisibility(),this.scrollToHash())}scrollToHash(){if(location.hash){let e=document.getElementById(location.hash.substring(1));if(!e)return;e.scrollIntoView({behavior:"instant",block:"start"})}}ensureActivePageVisible(){let e=document.querySelector(".tsd-navigation .current"),n=e?.parentElement;for(;n&&!n.classList.contains(".tsd-navigation");)n instanceof HTMLDetailsElement&&(n.open=!0),n=n.parentElement;if(e&&!rt(e)){let r=e.getBoundingClientRect().top-document.documentElement.clientHeight/4;document.querySelector(".site-menu").scrollTop=r,document.querySelector(".col-sidebar").scrollTop=r}}updateIndexVisibility(){let e=document.querySelector(".tsd-index-content"),n=e?.open;e&&(e.open=!0),document.querySelectorAll(".tsd-index-section").forEach(r=>{r.style.display="block";let i=Array.from(r.querySelectorAll(".tsd-index-link")).every(s=>s.offsetParent==null);r.style.display=i?"none":"block"}),e&&(e.open=n)}ensureFocusedElementVisible(){if(this.alwaysVisibleMember&&(this.alwaysVisibleMember.classList.remove("always-visible"),this.alwaysVisibleMember.firstElementChild.remove(),this.alwaysVisibleMember=null),!location.hash)return;let e=document.getElementById(location.hash.substring(1));if(!e)return;let n=e.parentElement;for(;n&&n.tagName!=="SECTION";)n=n.parentElement;if(!n)return;let r=n.offsetParent==null,i=n;for(;i!==document.body;)i instanceof HTMLDetailsElement&&(i.open=!0),i=i.parentElement;if(n.offsetParent==null){this.alwaysVisibleMember=n,n.classList.add("always-visible");let s=document.createElement("p");s.classList.add("warning"),s.textContent=window.translations.normally_hidden,n.prepend(s)}r&&e.scrollIntoView()}listenForCodeCopies(){document.querySelectorAll("pre > button").forEach(e=>{let n;e.addEventListener("click",()=>{e.previousElementSibling instanceof HTMLElement&&navigator.clipboard.writeText(e.previousElementSibling.innerText.trim()),e.textContent=window.translations.copied,e.classList.add("visible"),clearTimeout(n),n=setTimeout(()=>{e.classList.remove("visible"),n=setTimeout(()=>{e.textContent=window.translations.copy},100)},1e3)})})}};function rt(t){let e=t.getBoundingClientRect(),n=Math.max(document.documentElement.clientHeight,window.innerHeight);return!(e.bottom<0||e.top-n>=0)}var fe=(t,e=100)=>{let n;return()=>{clearTimeout(n),n=setTimeout(()=>t(),e)}};var Ie=nt(ye(),1);async function R(t){let e=Uint8Array.from(atob(t),s=>s.charCodeAt(0)),r=new Blob([e]).stream().pipeThrough(new DecompressionStream("deflate")),i=await new Response(r).text();return JSON.parse(i)}var Y="closing",ae="tsd-overlay";function it(){let t=Math.abs(window.innerWidth-document.documentElement.clientWidth);document.body.style.overflow="hidden",document.body.style.paddingRight=`${t}px`}function st(){document.body.style.removeProperty("overflow"),document.body.style.removeProperty("padding-right")}function xe(t,e){t.addEventListener("animationend",()=>{t.classList.contains(Y)&&(t.classList.remove(Y),document.getElementById(ae)?.remove(),t.close(),st())}),t.addEventListener("cancel",n=>{n.preventDefault(),ve(t)}),e?.closeOnClick&&document.addEventListener("click",n=>{t.open&&!t.contains(n.target)&&ve(t)},!0)}function Ee(t){if(t.open)return;let e=document.createElement("div");e.id=ae,document.body.appendChild(e),t.showModal(),it()}function ve(t){if(!t.open)return;document.getElementById(ae)?.classList.add(Y),t.classList.add(Y)}var I=class{el;app;constructor(e){this.el=e.el,this.app=e.app}};var be=document.head.appendChild(document.createElement("style"));be.dataset.for="filters";var le={};function we(t){for(let e of t.split(/\s+/))if(le.hasOwnProperty(e)&&!le[e])return!0;return!1}var ee=class extends I{key;value;constructor(e){super(e),this.key=`filter-${this.el.name}`,this.value=this.el.checked,this.el.addEventListener("change",()=>{this.setLocalStorage(this.el.checked)}),this.setLocalStorage(this.fromLocalStorage()),be.innerHTML+=`html:not(.${this.key}) .tsd-is-${this.el.name} { display: none; } +`,this.app.updateIndexVisibility()}fromLocalStorage(){let e=S.getItem(this.key);return e?e==="true":this.el.checked}setLocalStorage(e){S.setItem(this.key,e.toString()),this.value=e,this.handleValueChange()}handleValueChange(){this.el.checked=this.value,document.documentElement.classList.toggle(this.key,this.value),le[`tsd-is-${this.el.name}`]=this.value,this.app.filterChanged(),this.app.updateIndexVisibility()}};var Le=0;async function Se(t,e){if(!window.searchData)return;let n=await R(window.searchData);t.data=n,t.index=Ie.Index.load(n.index),e.innerHTML=""}function _e(){let t=document.getElementById("tsd-search-trigger"),e=document.getElementById("tsd-search"),n=document.getElementById("tsd-search-input"),r=document.getElementById("tsd-search-results"),i=document.getElementById("tsd-search-script"),s=document.getElementById("tsd-search-status");if(!(t&&e&&n&&r&&i&&s))throw new Error("Search controls missing");let o={base:document.documentElement.dataset.base};o.base.endsWith("/")||(o.base+="/"),i.addEventListener("error",()=>{let a=window.translations.search_index_not_available;Pe(s,a)}),i.addEventListener("load",()=>{Se(o,s)}),Se(o,s),ot({trigger:t,searchEl:e,results:r,field:n,status:s},o)}function ot(t,e){let{field:n,results:r,searchEl:i,status:s,trigger:o}=t;xe(i,{closeOnClick:!0});function a(){Ee(i),n.setSelectionRange(0,n.value.length)}o.addEventListener("click",a),n.addEventListener("input",fe(()=>{at(r,n,s,e)},200)),n.addEventListener("keydown",l=>{if(r.childElementCount===0||l.ctrlKey||l.metaKey||l.altKey)return;let d=n.getAttribute("aria-activedescendant"),f=d?document.getElementById(d):null;if(f){let p=!1,v=!1;switch(l.key){case"Home":case"End":case"ArrowLeft":case"ArrowRight":v=!0;break;case"ArrowDown":case"ArrowUp":p=l.shiftKey;break}(p||v)&&ke(n)}if(!l.shiftKey)switch(l.key){case"Enter":f?.querySelector("a")?.click();break;case"ArrowUp":Te(r,n,f,-1),l.preventDefault();break;case"ArrowDown":Te(r,n,f,1),l.preventDefault();break}});function c(){ke(n)}n.addEventListener("change",c),n.addEventListener("blur",c),n.addEventListener("click",c),document.body.addEventListener("keydown",l=>{if(l.altKey||l.metaKey||l.shiftKey)return;let d=l.ctrlKey&&l.key==="k",f=!l.ctrlKey&&!ut()&&l.key==="/";(d||f)&&(l.preventDefault(),a())})}function at(t,e,n,r){if(!r.index||!r.data)return;t.innerHTML="",n.innerHTML="",Le+=1;let i=e.value.trim(),s;if(i){let a=i.split(" ").map(c=>c.length?`*${c}*`:"").join(" ");s=r.index.search(a).filter(({ref:c})=>{let l=r.data.rows[Number(c)].classes;return!l||!we(l)})}else s=[];if(s.length===0&&i){let a=window.translations.search_no_results_found_for_0.replace("{0}",` "${te(i)}" `);Pe(n,a);return}for(let a=0;ac.score-a.score);let o=Math.min(10,s.length);for(let a=0;a`,f=Ce(c.name,i);globalThis.DEBUG_SEARCH_WEIGHTS&&(f+=` (score: ${s[a].score.toFixed(2)})`),c.parent&&(f=` + ${Ce(c.parent,i)}.${f}`);let p=document.createElement("li");p.id=`tsd-search:${Le}-${a}`,p.role="option",p.ariaSelected="false",p.classList.value=c.classes??"";let v=document.createElement("a");v.tabIndex=-1,v.href=r.base+c.url,v.innerHTML=d+`${f}`,p.append(v),t.appendChild(p)}}function Te(t,e,n,r){let i;if(r===1?i=n?.nextElementSibling||t.firstElementChild:i=n?.previousElementSibling||t.lastElementChild,i!==n){if(!i||i.role!=="option"){console.error("Option missing");return}i.ariaSelected="true",i.scrollIntoView({behavior:"smooth",block:"nearest"}),e.setAttribute("aria-activedescendant",i.id),n?.setAttribute("aria-selected","false")}}function ke(t){let e=t.getAttribute("aria-activedescendant");(e?document.getElementById(e):null)?.setAttribute("aria-selected","false"),t.setAttribute("aria-activedescendant","")}function Ce(t,e){if(e==="")return t;let n=t.toLocaleLowerCase(),r=e.toLocaleLowerCase(),i=[],s=0,o=n.indexOf(r);for(;o!=-1;)i.push(te(t.substring(s,o)),`${te(t.substring(o,o+r.length))}`),s=o+r.length,o=n.indexOf(r,s);return i.push(te(t.substring(s))),i.join("")}var lt={"&":"&","<":"<",">":">","'":"'",'"':"""};function te(t){return t.replace(/[&<>"'"]/g,e=>lt[e])}function Pe(t,e){t.innerHTML=e?`
${e}
`:""}var ct=["button","checkbox","file","hidden","image","radio","range","reset","submit"];function ut(){let t=document.activeElement;return t?t.isContentEditable||t.tagName==="TEXTAREA"||t.tagName==="SEARCH"?!0:t.tagName==="INPUT"&&!ct.includes(t.type):!1}var D="mousedown",Me="mousemove",$="mouseup",ne={x:0,y:0},Qe=!1,ce=!1,dt=!1,F=!1,Oe=/Android|webOS|iPhone|iPad|iPod|BlackBerry|IEMobile|Opera Mini/i.test(navigator.userAgent);document.documentElement.classList.add(Oe?"is-mobile":"not-mobile");Oe&&"ontouchstart"in document.documentElement&&(dt=!0,D="touchstart",Me="touchmove",$="touchend");document.addEventListener(D,t=>{ce=!0,F=!1;let e=D=="touchstart"?t.targetTouches[0]:t;ne.y=e.pageY||0,ne.x=e.pageX||0});document.addEventListener(Me,t=>{if(ce&&!F){let e=D=="touchstart"?t.targetTouches[0]:t,n=ne.x-(e.pageX||0),r=ne.y-(e.pageY||0);F=Math.sqrt(n*n+r*r)>10}});document.addEventListener($,()=>{ce=!1});document.addEventListener("click",t=>{Qe&&(t.preventDefault(),t.stopImmediatePropagation(),Qe=!1)});var re=class extends I{active;className;constructor(e){super(e),this.className=this.el.dataset.toggle||"",this.el.addEventListener($,n=>this.onPointerUp(n)),this.el.addEventListener("click",n=>n.preventDefault()),document.addEventListener(D,n=>this.onDocumentPointerDown(n)),document.addEventListener($,n=>this.onDocumentPointerUp(n))}setActive(e){if(this.active==e)return;this.active=e,document.documentElement.classList.toggle("has-"+this.className,e),this.el.classList.toggle("active",e);let n=(this.active?"to-has-":"from-has-")+this.className;document.documentElement.classList.add(n),setTimeout(()=>document.documentElement.classList.remove(n),500)}onPointerUp(e){F||(this.setActive(!0),e.preventDefault())}onDocumentPointerDown(e){if(this.active){if(e.target.closest(".col-sidebar, .tsd-filter-group"))return;this.setActive(!1)}}onDocumentPointerUp(e){if(!F&&this.active&&e.target.closest(".col-sidebar")){let n=e.target.closest("a");if(n){let r=window.location.href;r.indexOf("#")!=-1&&(r=r.substring(0,r.indexOf("#"))),n.href.substring(0,r.length)==r&&setTimeout(()=>this.setActive(!1),250)}}}};var ue=new Map,de=class{open;accordions=[];key;constructor(e,n){this.key=e,this.open=n}add(e){this.accordions.push(e),e.open=this.open,e.addEventListener("toggle",()=>{this.toggle(e.open)})}toggle(e){for(let n of this.accordions)n.open=e;S.setItem(this.key,e.toString())}},ie=class extends I{constructor(e){super(e);let n=this.el.querySelector("summary"),r=n.querySelector("a");r&&r.addEventListener("click",()=>{location.assign(r.href)});let i=`tsd-accordion-${n.dataset.key??n.textContent.trim().replace(/\s+/g,"-").toLowerCase()}`,s;if(ue.has(i))s=ue.get(i);else{let o=S.getItem(i),a=o?o==="true":this.el.open;s=new de(i,a),ue.set(i,s)}s.add(this.el)}};function He(t){let e=S.getItem("tsd-theme")||"os";t.value=e,Ae(e),t.addEventListener("change",()=>{S.setItem("tsd-theme",t.value),Ae(t.value)})}function Ae(t){document.documentElement.dataset.theme=t}var se;function Ne(){let t=document.getElementById("tsd-nav-script");t&&(t.addEventListener("load",Re),Re())}async function Re(){let t=document.getElementById("tsd-nav-container");if(!t||!window.navigationData)return;let e=await R(window.navigationData);se=document.documentElement.dataset.base,se.endsWith("/")||(se+="/"),t.innerHTML="";for(let n of e)Be(n,t,[]);window.app.createComponents(t),window.app.showPage(),window.app.ensureActivePageVisible()}function Be(t,e,n){let r=e.appendChild(document.createElement("li"));if(t.children){let i=[...n,t.text],s=r.appendChild(document.createElement("details"));s.className=t.class?`${t.class} tsd-accordion`:"tsd-accordion";let o=s.appendChild(document.createElement("summary"));o.className="tsd-accordion-summary",o.dataset.key=i.join("$"),o.innerHTML='',De(t,o);let a=s.appendChild(document.createElement("div"));a.className="tsd-accordion-details";let c=a.appendChild(document.createElement("ul"));c.className="tsd-nested-navigation";for(let l of t.children)Be(l,c,i)}else De(t,r,t.class)}function De(t,e,n){if(t.path){let r=e.appendChild(document.createElement("a"));if(r.href=se+t.path,n&&(r.className=n),location.pathname===r.pathname&&!r.href.includes("#")&&(r.classList.add("current"),r.ariaCurrent="page"),t.kind){let i=window.translations[`kind_${t.kind}`].replaceAll('"',""");r.innerHTML=``}r.appendChild(Fe(t.text,document.createElement("span")))}else{let r=e.appendChild(document.createElement("span")),i=window.translations.folder.replaceAll('"',""");r.innerHTML=``,r.appendChild(Fe(t.text,document.createElement("span")))}}function Fe(t,e){let n=t.split(/(?<=[^A-Z])(?=[A-Z])|(?<=[A-Z])(?=[A-Z][a-z])|(?<=[_-])(?=[^_-])/);for(let r=0;r{let i=r.target;for(;i.parentElement&&i.parentElement.tagName!="LI";)i=i.parentElement;i.dataset.dropdown&&(i.dataset.dropdown=String(i.dataset.dropdown!=="true"))});let t=new Map,e=new Set;for(let r of document.querySelectorAll(".tsd-full-hierarchy [data-refl]")){let i=r.querySelector("ul");t.has(r.dataset.refl)?e.add(r.dataset.refl):i&&t.set(r.dataset.refl,i)}for(let r of e)n(r);function n(r){let i=t.get(r).cloneNode(!0);i.querySelectorAll("[id]").forEach(s=>{s.removeAttribute("id")}),i.querySelectorAll("[data-dropdown]").forEach(s=>{s.dataset.dropdown="false"});for(let s of document.querySelectorAll(`[data-refl="${r}"]`)){let o=gt(),a=s.querySelector("ul");s.insertBefore(o,a),o.dataset.dropdown=String(!!a),a||s.appendChild(i.cloneNode(!0))}}}function pt(){let t=document.getElementById("tsd-hierarchy-script");t&&(t.addEventListener("load",Ve),Ve())}async function Ve(){let t=document.querySelector(".tsd-panel.tsd-hierarchy:has(h4 a)");if(!t||!window.hierarchyData)return;let e=+t.dataset.refl,n=await R(window.hierarchyData),r=t.querySelector("ul"),i=document.createElement("ul");if(i.classList.add("tsd-hierarchy"),ft(i,n,e),r.querySelectorAll("li").length==i.querySelectorAll("li").length)return;let s=document.createElement("span");s.classList.add("tsd-hierarchy-toggle"),s.textContent=window.translations.hierarchy_expand,t.querySelector("h4 a")?.insertAdjacentElement("afterend",s),s.insertAdjacentText("beforebegin",", "),s.addEventListener("click",()=>{s.textContent===window.translations.hierarchy_expand?(r.insertAdjacentElement("afterend",i),r.remove(),s.textContent=window.translations.hierarchy_collapse):(i.insertAdjacentElement("afterend",r),i.remove(),s.textContent=window.translations.hierarchy_expand)})}function ft(t,e,n){let r=e.roots.filter(i=>mt(e,i,n));for(let i of r)t.appendChild(je(e,i,n))}function je(t,e,n,r=new Set){if(r.has(e))return;r.add(e);let i=t.reflections[e],s=document.createElement("li");if(s.classList.add("tsd-hierarchy-item"),e===n){let o=s.appendChild(document.createElement("span"));o.textContent=i.name,o.classList.add("tsd-hierarchy-target")}else{for(let a of i.uniqueNameParents||[]){let c=t.reflections[a],l=s.appendChild(document.createElement("a"));l.textContent=c.name,l.href=oe+c.url,l.className=c.class+" tsd-signature-type",s.append(document.createTextNode("."))}let o=s.appendChild(document.createElement("a"));o.textContent=t.reflections[e].name,o.href=oe+i.url,o.className=i.class+" tsd-signature-type"}if(i.children){let o=s.appendChild(document.createElement("ul"));o.classList.add("tsd-hierarchy");for(let a of i.children){let c=je(t,a,n,r);c&&o.appendChild(c)}}return r.delete(e),s}function mt(t,e,n){if(e===n)return!0;let r=new Set,i=[t.reflections[e]];for(;i.length;){let s=i.pop();if(!r.has(s)){r.add(s);for(let o of s.children||[]){if(o===n)return!0;i.push(t.reflections[o])}}}return!1}function gt(){let t=document.createElementNS("http://www.w3.org/2000/svg","svg");return t.setAttribute("width","20"),t.setAttribute("height","20"),t.setAttribute("viewBox","0 0 24 24"),t.setAttribute("fill","none"),t.innerHTML='',t}X(re,"a[data-toggle]");X(ie,".tsd-accordion");X(ee,".tsd-filter-item input[type=checkbox]");var qe=document.getElementById("tsd-theme");qe&&He(qe);var yt=new Z;Object.defineProperty(window,"app",{value:yt});_e();Ne();$e();"virtualKeyboard"in navigator&&(navigator.virtualKeyboard.overlaysContent=!0);})(); +/*! Bundled license information: + +lunr/lunr.js: + (** + * lunr - http://lunrjs.com - A bit like Solr, but much smaller and not as bright - 2.3.9 + * Copyright (C) 2020 Oliver Nightingale + * @license MIT + *) + (*! + * lunr.utils + * Copyright (C) 2020 Oliver Nightingale + *) + (*! + * lunr.Set + * Copyright (C) 2020 Oliver Nightingale + *) + (*! + * lunr.tokenizer + * Copyright (C) 2020 Oliver Nightingale + *) + (*! + * lunr.Pipeline + * Copyright (C) 2020 Oliver Nightingale + *) + (*! + * lunr.Vector + * Copyright (C) 2020 Oliver Nightingale + *) + (*! + * lunr.stemmer + * Copyright (C) 2020 Oliver Nightingale + * Includes code from - http://tartarus.org/~martin/PorterStemmer/js.txt + *) + (*! + * lunr.stopWordFilter + * Copyright (C) 2020 Oliver Nightingale + *) + (*! + * lunr.trimmer + * Copyright (C) 2020 Oliver Nightingale + *) + (*! + * lunr.TokenSet + * Copyright (C) 2020 Oliver Nightingale + *) + (*! + * lunr.Index + * Copyright (C) 2020 Oliver Nightingale + *) + (*! + * lunr.Builder + * Copyright (C) 2020 Oliver Nightingale + *) +*/ diff --git a/docs/assets/navigation.js b/docs/assets/navigation.js new file mode 100644 index 0000000..3c6af70 --- /dev/null +++ b/docs/assets/navigation.js @@ -0,0 +1 @@ +window.navigationData = "eJyLrlYqSa0oUbJS8vQyCvYvKMnMzytW0lEqSCzJULJSyswrSS1KS0xOLdZHktfLKMnNUdJRys7MS1GyMjI1q9WBG5OSmpZYmlOCMCKtNC8ZrEsfKoWq28ykNhYAq1Ussw==" \ No newline at end of file diff --git a/docs/assets/search.js b/docs/assets/search.js index d43073a..7816687 100644 --- a/docs/assets/search.js +++ b/docs/assets/search.js @@ -1 +1 @@ -window.searchData = {"kinds":{"64":"Function","256":"Interface","1024":"Property"},"rows":[{"id":0,"kind":256,"name":"IJ2SOptions","url":"interfaces/IJ2SOptions.html","classes":"tsd-kind-interface"},{"id":1,"kind":1024,"name":"includeFunctionProperties","url":"interfaces/IJ2SOptions.html#includeFunctionProperties","classes":"tsd-kind-property tsd-parent-kind-interface","parent":"IJ2SOptions"},{"id":2,"kind":1024,"name":"includeFunctionPrototype","url":"interfaces/IJ2SOptions.html#includeFunctionPrototype","classes":"tsd-kind-property tsd-parent-kind-interface","parent":"IJ2SOptions"},{"id":3,"kind":1024,"name":"includeBuffers","url":"interfaces/IJ2SOptions.html#includeBuffers","classes":"tsd-kind-property tsd-parent-kind-interface","parent":"IJ2SOptions"},{"id":4,"kind":1024,"name":"nestedObjectsAmount","url":"interfaces/IJ2SOptions.html#nestedObjectsAmount","classes":"tsd-kind-property tsd-parent-kind-interface","parent":"IJ2SOptions"},{"id":5,"kind":1024,"name":"nestedArraysAmount","url":"interfaces/IJ2SOptions.html#nestedArraysAmount","classes":"tsd-kind-property tsd-parent-kind-interface","parent":"IJ2SOptions"},{"id":6,"kind":1024,"name":"nestedFunctionsAmount","url":"interfaces/IJ2SOptions.html#nestedFunctionsAmount","classes":"tsd-kind-property tsd-parent-kind-interface","parent":"IJ2SOptions"},{"id":7,"kind":64,"name":"default","url":"modules.html#default","classes":"tsd-kind-function"}],"index":{"version":"2.3.9","fields":["name","parent"],"fieldVectors":[["name/0",[0,1.823]],["parent/0",[]],["name/1",[1,17.918]],["parent/1",[0,0.16]],["name/2",[2,17.918]],["parent/2",[0,0.16]],["name/3",[3,17.918]],["parent/3",[0,0.16]],["name/4",[4,17.918]],["parent/4",[0,0.16]],["name/5",[5,17.918]],["parent/5",[0,0.16]],["name/6",[6,17.918]],["parent/6",[0,0.16]],["name/7",[7,17.918]],["parent/7",[]]],"invertedIndex":[["default",{"_index":7,"name":{"7":{}},"parent":{}}],["ij2soptions",{"_index":0,"name":{"0":{}},"parent":{"1":{},"2":{},"3":{},"4":{},"5":{},"6":{}}}],["includebuffers",{"_index":3,"name":{"3":{}},"parent":{}}],["includefunctionproperties",{"_index":1,"name":{"1":{}},"parent":{}}],["includefunctionprototype",{"_index":2,"name":{"2":{}},"parent":{}}],["nestedarraysamount",{"_index":5,"name":{"5":{}},"parent":{}}],["nestedfunctionsamount",{"_index":6,"name":{"6":{}},"parent":{}}],["nestedobjectsamount",{"_index":4,"name":{"4":{}},"parent":{}}]],"pipeline":[]}} \ No newline at end of file +window.searchData = "eJytlU1vnDAQhv/L9GrtgvlqfEsPldJLKlXqxUIVgUF1CjYyJm2E+O8VX+tlQemyzQ3Zfp55sYahBa1+18B4C7+EzIDRICQgkxKBwcMX+u2xMkLJGgg0ugAGQhrUeZJifTzbPvw0ZQEE0iKpa6yBAXRkVroO9U9OIdOiyfBTk+eor9J+mJCnE3JWhUCVaJTmIu3bxT83Mu3PfdWqQm0E7sqRT3R1Tr9jJKPMa4U3JjrBNweSWBvM7rVOXuv7UjXSXBVlxJIBS2bsP0PMl7I/x3wj7xbl8ekZU7M/iBq5m2KENkSGedIUtvDp/Y7TztYHGBMQMsM/wFp4QV0LJYEBPXiHOyCQCyyy/ssfaxBIVVniEDJTaTM8xtOx75gapfvD4+mjA4Q7xI0Od+7HOCZ8hoeNYWF22JUBdIFwdwt0V6C7ACkQTrdAugLpAvSAcG8L9FagtwB9INzfAv0V6C/AAAgPtsBgBQYLMATCwy0wXIHhAoyA8GgLjFbguDK0xgtqg9nD2CKc2yZr4cfUONHcgS1EwNqus23C2u6sU/q9vo54prWafxnW41iPc53nYuZblWtV7h7V1ti2Vmqt9EbrPHqt1LNS7yrp1hC1Ot/q/B261Sy0xsAagx3Gi6FmfaH1hf/2xQQqUWEhJALjcdf9BTY121A="; \ No newline at end of file diff --git a/docs/assets/style.css b/docs/assets/style.css index ff48819..44328e9 100644 --- a/docs/assets/style.css +++ b/docs/assets/style.css @@ -1,1384 +1,1633 @@ -@import url("./icons.css"); - -:root { - /* Light */ - --light-color-background: #fcfcfc; - --light-color-secondary-background: #fff; - --light-color-text: #222; - --light-color-text-aside: #707070; - --light-color-link: #4da6ff; - --light-color-menu-divider: #eee; - --light-color-menu-divider-focus: #000; - --light-color-menu-label: #707070; - --light-color-panel: var(--light-color-secondary-background); - --light-color-panel-divider: #eee; - --light-color-comment-tag: #707070; - --light-color-comment-tag-text: #fff; - --light-color-ts: #9600ff; - --light-color-ts-interface: #647f1b; - --light-color-ts-enum: #937210; - --light-color-ts-class: #0672de; - --light-color-ts-private: #707070; - --light-color-toolbar: #fff; - --light-color-toolbar-text: #333; - --light-icon-filter: invert(0); - --light-external-icon: url("data:image/svg+xml;utf8,"); - - /* Dark */ - --dark-color-background: #36393f; - --dark-color-secondary-background: #2f3136; - --dark-color-text: #ffffff; - --dark-color-text-aside: #e6e4e4; - --dark-color-link: #00aff4; - --dark-color-menu-divider: #eee; - --dark-color-menu-divider-focus: #000; - --dark-color-menu-label: #707070; - --dark-color-panel: var(--dark-color-secondary-background); - --dark-color-panel-divider: #818181; - --dark-color-comment-tag: #dcddde; - --dark-color-comment-tag-text: #2f3136; - --dark-color-ts: #c97dff; - --dark-color-ts-interface: #9cbe3c; - --dark-color-ts-enum: #d6ab29; - --dark-color-ts-class: #3695f3; - --dark-color-ts-private: #e2e2e2; - --dark-color-toolbar: #34373c; - --dark-color-toolbar-text: #ffffff; - --dark-icon-filter: invert(1); - --dark-external-icon: url("data:image/svg+xml;utf8,"); -} +@layer typedoc { + :root { + --dim-toolbar-contents-height: 2.5rem; + --dim-toolbar-border-bottom-width: 1px; + --dim-header-height: calc( + var(--dim-toolbar-border-bottom-width) + + var(--dim-toolbar-contents-height) + ); + + /* 0rem For mobile; unit is required for calculation in `calc` */ + --dim-container-main-margin-y: 0rem; + + --dim-footer-height: 3.5rem; + + --modal-animation-duration: 0.2s; + } + + :root { + /* Light */ + --light-color-background: #f2f4f8; + --light-color-background-secondary: #eff0f1; + /* Not to be confused with [:active](https://developer.mozilla.org/en-US/docs/Web/CSS/:active) */ + --light-color-background-active: #d6d8da; + --light-color-background-warning: #e6e600; + --light-color-warning-text: #222; + --light-color-accent: #c5c7c9; + --light-color-active-menu-item: var(--light-color-background-active); + --light-color-text: #222; + --light-color-contrast-text: #000; + --light-color-text-aside: #5e5e5e; + + --light-color-icon-background: var(--light-color-background); + --light-color-icon-text: var(--light-color-text); + + --light-color-comment-tag-text: var(--light-color-text); + --light-color-comment-tag: var(--light-color-background); + + --light-color-link: #1f70c2; + --light-color-focus-outline: #3584e4; + + --light-color-ts-keyword: #056bd6; + --light-color-ts-project: #b111c9; + --light-color-ts-module: var(--light-color-ts-project); + --light-color-ts-namespace: var(--light-color-ts-project); + --light-color-ts-enum: #7e6f15; + --light-color-ts-enum-member: var(--light-color-ts-enum); + --light-color-ts-variable: #4760ec; + --light-color-ts-function: #572be7; + --light-color-ts-class: #1f70c2; + --light-color-ts-interface: #108024; + --light-color-ts-constructor: var(--light-color-ts-class); + --light-color-ts-property: #9f5f30; + --light-color-ts-method: #be3989; + --light-color-ts-reference: #ff4d82; + --light-color-ts-call-signature: var(--light-color-ts-method); + --light-color-ts-index-signature: var(--light-color-ts-property); + --light-color-ts-constructor-signature: var( + --light-color-ts-constructor + ); + --light-color-ts-parameter: var(--light-color-ts-variable); + /* type literal not included as links will never be generated to it */ + --light-color-ts-type-parameter: #a55c0e; + --light-color-ts-accessor: #c73c3c; + --light-color-ts-get-signature: var(--light-color-ts-accessor); + --light-color-ts-set-signature: var(--light-color-ts-accessor); + --light-color-ts-type-alias: #d51270; + /* reference not included as links will be colored with the kind that it points to */ + --light-color-document: #000000; + + --light-color-alert-note: #0969d9; + --light-color-alert-tip: #1a7f37; + --light-color-alert-important: #8250df; + --light-color-alert-warning: #9a6700; + --light-color-alert-caution: #cf222e; + + --light-external-icon: url("data:image/svg+xml;utf8,"); + --light-color-scheme: light; + } -@media (prefers-color-scheme: light) { :root { + /* Dark */ + --dark-color-background: #2b2e33; + --dark-color-background-secondary: #1e2024; + /* Not to be confused with [:active](https://developer.mozilla.org/en-US/docs/Web/CSS/:active) */ + --dark-color-background-active: #5d5d6a; + --dark-color-background-warning: #bebe00; + --dark-color-warning-text: #222; + --dark-color-accent: #9096a2; + --dark-color-active-menu-item: var(--dark-color-background-active); + --dark-color-text: #f5f5f5; + --dark-color-contrast-text: #ffffff; + --dark-color-text-aside: #dddddd; + + --dark-color-icon-background: var(--dark-color-background-secondary); + --dark-color-icon-text: var(--dark-color-text); + + --dark-color-comment-tag-text: var(--dark-color-text); + --dark-color-comment-tag: var(--dark-color-background); + + --dark-color-link: #00aff4; + --dark-color-focus-outline: #4c97f2; + + --dark-color-ts-keyword: #3399ff; + --dark-color-ts-project: #e358ff; + --dark-color-ts-module: var(--dark-color-ts-project); + --dark-color-ts-namespace: var(--dark-color-ts-project); + --dark-color-ts-enum: #f4d93e; + --dark-color-ts-enum-member: var(--dark-color-ts-enum); + --dark-color-ts-variable: #798dff; + --dark-color-ts-function: #a280ff; + --dark-color-ts-class: #8ac4ff; + --dark-color-ts-interface: #6cff87; + --dark-color-ts-constructor: var(--dark-color-ts-class); + --dark-color-ts-property: #ff984d; + --dark-color-ts-method: #ff4db8; + --dark-color-ts-reference: #ff4d82; + --dark-color-ts-call-signature: var(--dark-color-ts-method); + --dark-color-ts-index-signature: var(--dark-color-ts-property); + --dark-color-ts-constructor-signature: var(--dark-color-ts-constructor); + --dark-color-ts-parameter: var(--dark-color-ts-variable); + /* type literal not included as links will never be generated to it */ + --dark-color-ts-type-parameter: #e07d13; + --dark-color-ts-accessor: #ff6060; + --dark-color-ts-get-signature: var(--dark-color-ts-accessor); + --dark-color-ts-set-signature: var(--dark-color-ts-accessor); + --dark-color-ts-type-alias: #ff6492; + /* reference not included as links will be colored with the kind that it points to */ + --dark-color-document: #ffffff; + + --dark-color-alert-note: #0969d9; + --dark-color-alert-tip: #1a7f37; + --dark-color-alert-important: #8250df; + --dark-color-alert-warning: #9a6700; + --dark-color-alert-caution: #cf222e; + + --dark-external-icon: url("data:image/svg+xml;utf8,"); + --dark-color-scheme: dark; + } + + @media (prefers-color-scheme: light) { + :root { + --color-background: var(--light-color-background); + --color-background-secondary: var( + --light-color-background-secondary + ); + --color-background-active: var(--light-color-background-active); + --color-background-warning: var(--light-color-background-warning); + --color-warning-text: var(--light-color-warning-text); + --color-accent: var(--light-color-accent); + --color-active-menu-item: var(--light-color-active-menu-item); + --color-text: var(--light-color-text); + --color-contrast-text: var(--light-color-contrast-text); + --color-text-aside: var(--light-color-text-aside); + + --color-icon-background: var(--light-color-icon-background); + --color-icon-text: var(--light-color-icon-text); + + --color-comment-tag-text: var(--light-color-text); + --color-comment-tag: var(--light-color-background); + + --color-link: var(--light-color-link); + --color-focus-outline: var(--light-color-focus-outline); + + --color-ts-keyword: var(--light-color-ts-keyword); + --color-ts-project: var(--light-color-ts-project); + --color-ts-module: var(--light-color-ts-module); + --color-ts-namespace: var(--light-color-ts-namespace); + --color-ts-enum: var(--light-color-ts-enum); + --color-ts-enum-member: var(--light-color-ts-enum-member); + --color-ts-variable: var(--light-color-ts-variable); + --color-ts-function: var(--light-color-ts-function); + --color-ts-class: var(--light-color-ts-class); + --color-ts-interface: var(--light-color-ts-interface); + --color-ts-constructor: var(--light-color-ts-constructor); + --color-ts-property: var(--light-color-ts-property); + --color-ts-method: var(--light-color-ts-method); + --color-ts-reference: var(--light-color-ts-reference); + --color-ts-call-signature: var(--light-color-ts-call-signature); + --color-ts-index-signature: var(--light-color-ts-index-signature); + --color-ts-constructor-signature: var( + --light-color-ts-constructor-signature + ); + --color-ts-parameter: var(--light-color-ts-parameter); + --color-ts-type-parameter: var(--light-color-ts-type-parameter); + --color-ts-accessor: var(--light-color-ts-accessor); + --color-ts-get-signature: var(--light-color-ts-get-signature); + --color-ts-set-signature: var(--light-color-ts-set-signature); + --color-ts-type-alias: var(--light-color-ts-type-alias); + --color-document: var(--light-color-document); + + --color-alert-note: var(--light-color-alert-note); + --color-alert-tip: var(--light-color-alert-tip); + --color-alert-important: var(--light-color-alert-important); + --color-alert-warning: var(--light-color-alert-warning); + --color-alert-caution: var(--light-color-alert-caution); + + --external-icon: var(--light-external-icon); + --color-scheme: var(--light-color-scheme); + } + } + + @media (prefers-color-scheme: dark) { + :root { + --color-background: var(--dark-color-background); + --color-background-secondary: var( + --dark-color-background-secondary + ); + --color-background-active: var(--dark-color-background-active); + --color-background-warning: var(--dark-color-background-warning); + --color-warning-text: var(--dark-color-warning-text); + --color-accent: var(--dark-color-accent); + --color-active-menu-item: var(--dark-color-active-menu-item); + --color-text: var(--dark-color-text); + --color-contrast-text: var(--dark-color-contrast-text); + --color-text-aside: var(--dark-color-text-aside); + + --color-icon-background: var(--dark-color-icon-background); + --color-icon-text: var(--dark-color-icon-text); + + --color-comment-tag-text: var(--dark-color-text); + --color-comment-tag: var(--dark-color-background); + + --color-link: var(--dark-color-link); + --color-focus-outline: var(--dark-color-focus-outline); + + --color-ts-keyword: var(--dark-color-ts-keyword); + --color-ts-project: var(--dark-color-ts-project); + --color-ts-module: var(--dark-color-ts-module); + --color-ts-namespace: var(--dark-color-ts-namespace); + --color-ts-enum: var(--dark-color-ts-enum); + --color-ts-enum-member: var(--dark-color-ts-enum-member); + --color-ts-variable: var(--dark-color-ts-variable); + --color-ts-function: var(--dark-color-ts-function); + --color-ts-class: var(--dark-color-ts-class); + --color-ts-interface: var(--dark-color-ts-interface); + --color-ts-constructor: var(--dark-color-ts-constructor); + --color-ts-property: var(--dark-color-ts-property); + --color-ts-method: var(--dark-color-ts-method); + --color-ts-reference: var(--dark-color-ts-reference); + --color-ts-call-signature: var(--dark-color-ts-call-signature); + --color-ts-index-signature: var(--dark-color-ts-index-signature); + --color-ts-constructor-signature: var( + --dark-color-ts-constructor-signature + ); + --color-ts-parameter: var(--dark-color-ts-parameter); + --color-ts-type-parameter: var(--dark-color-ts-type-parameter); + --color-ts-accessor: var(--dark-color-ts-accessor); + --color-ts-get-signature: var(--dark-color-ts-get-signature); + --color-ts-set-signature: var(--dark-color-ts-set-signature); + --color-ts-type-alias: var(--dark-color-ts-type-alias); + --color-document: var(--dark-color-document); + + --color-alert-note: var(--dark-color-alert-note); + --color-alert-tip: var(--dark-color-alert-tip); + --color-alert-important: var(--dark-color-alert-important); + --color-alert-warning: var(--dark-color-alert-warning); + --color-alert-caution: var(--dark-color-alert-caution); + + --external-icon: var(--dark-external-icon); + --color-scheme: var(--dark-color-scheme); + } + } + + :root[data-theme="light"] { --color-background: var(--light-color-background); - --color-secondary-background: var(--light-color-secondary-background); + --color-background-secondary: var(--light-color-background-secondary); + --color-background-active: var(--light-color-background-active); + --color-background-warning: var(--light-color-background-warning); + --color-warning-text: var(--light-color-warning-text); + --color-icon-background: var(--light-color-icon-background); + --color-accent: var(--light-color-accent); + --color-active-menu-item: var(--light-color-active-menu-item); --color-text: var(--light-color-text); + --color-contrast-text: var(--light-color-contrast-text); --color-text-aside: var(--light-color-text-aside); + --color-icon-text: var(--light-color-icon-text); + + --color-comment-tag-text: var(--light-color-text); + --color-comment-tag: var(--light-color-background); + --color-link: var(--light-color-link); - --color-menu-divider: var(--light-color-menu-divider); - --color-menu-divider-focus: var(--light-color-menu-divider-focus); - --color-menu-label: var(--light-color-menu-label); - --color-panel: var(--light-color-panel); - --color-panel-divider: var(--light-color-panel-divider); - --color-comment-tag: var(--light-color-comment-tag); - --color-comment-tag-text: var(--light-color-comment-tag-text); - --color-ts: var(--light-color-ts); - --color-ts-interface: var(--light-color-ts-interface); + --color-focus-outline: var(--light-color-focus-outline); + + --color-ts-keyword: var(--light-color-ts-keyword); + --color-ts-project: var(--light-color-ts-project); + --color-ts-module: var(--light-color-ts-module); + --color-ts-namespace: var(--light-color-ts-namespace); --color-ts-enum: var(--light-color-ts-enum); + --color-ts-enum-member: var(--light-color-ts-enum-member); + --color-ts-variable: var(--light-color-ts-variable); + --color-ts-function: var(--light-color-ts-function); --color-ts-class: var(--light-color-ts-class); - --color-ts-private: var(--light-color-ts-private); - --color-toolbar: var(--light-color-toolbar); - --color-toolbar-text: var(--light-color-toolbar-text); - --icon-filter: var(--light-icon-filter); + --color-ts-interface: var(--light-color-ts-interface); + --color-ts-constructor: var(--light-color-ts-constructor); + --color-ts-property: var(--light-color-ts-property); + --color-ts-method: var(--light-color-ts-method); + --color-ts-reference: var(--light-color-ts-reference); + --color-ts-call-signature: var(--light-color-ts-call-signature); + --color-ts-index-signature: var(--light-color-ts-index-signature); + --color-ts-constructor-signature: var( + --light-color-ts-constructor-signature + ); + --color-ts-parameter: var(--light-color-ts-parameter); + --color-ts-type-parameter: var(--light-color-ts-type-parameter); + --color-ts-accessor: var(--light-color-ts-accessor); + --color-ts-get-signature: var(--light-color-ts-get-signature); + --color-ts-set-signature: var(--light-color-ts-set-signature); + --color-ts-type-alias: var(--light-color-ts-type-alias); + --color-document: var(--light-color-document); + + --color-note: var(--light-color-note); + --color-tip: var(--light-color-tip); + --color-important: var(--light-color-important); + --color-warning: var(--light-color-warning); + --color-caution: var(--light-color-caution); + --external-icon: var(--light-external-icon); + --color-scheme: var(--light-color-scheme); } -} -@media (prefers-color-scheme: dark) { - :root { + :root[data-theme="dark"] { --color-background: var(--dark-color-background); - --color-secondary-background: var(--dark-color-secondary-background); + --color-background-secondary: var(--dark-color-background-secondary); + --color-background-active: var(--dark-color-background-active); + --color-background-warning: var(--dark-color-background-warning); + --color-warning-text: var(--dark-color-warning-text); + --color-icon-background: var(--dark-color-icon-background); + --color-accent: var(--dark-color-accent); + --color-active-menu-item: var(--dark-color-active-menu-item); --color-text: var(--dark-color-text); + --color-contrast-text: var(--dark-color-contrast-text); --color-text-aside: var(--dark-color-text-aside); + --color-icon-text: var(--dark-color-icon-text); + + --color-comment-tag-text: var(--dark-color-text); + --color-comment-tag: var(--dark-color-background); + --color-link: var(--dark-color-link); - --color-menu-divider: var(--dark-color-menu-divider); - --color-menu-divider-focus: var(--dark-color-menu-divider-focus); - --color-menu-label: var(--dark-color-menu-label); - --color-panel: var(--dark-color-panel); - --color-panel-divider: var(--dark-color-panel-divider); - --color-comment-tag: var(--dark-color-comment-tag); - --color-comment-tag-text: var(--dark-color-comment-tag-text); - --color-ts: var(--dark-color-ts); - --color-ts-interface: var(--dark-color-ts-interface); + --color-focus-outline: var(--dark-color-focus-outline); + + --color-ts-keyword: var(--dark-color-ts-keyword); + --color-ts-project: var(--dark-color-ts-project); + --color-ts-module: var(--dark-color-ts-module); + --color-ts-namespace: var(--dark-color-ts-namespace); --color-ts-enum: var(--dark-color-ts-enum); + --color-ts-enum-member: var(--dark-color-ts-enum-member); + --color-ts-variable: var(--dark-color-ts-variable); + --color-ts-function: var(--dark-color-ts-function); --color-ts-class: var(--dark-color-ts-class); - --color-ts-private: var(--dark-color-ts-private); - --color-toolbar: var(--dark-color-toolbar); - --color-toolbar-text: var(--dark-color-toolbar-text); - --icon-filter: var(--dark-icon-filter); + --color-ts-interface: var(--dark-color-ts-interface); + --color-ts-constructor: var(--dark-color-ts-constructor); + --color-ts-property: var(--dark-color-ts-property); + --color-ts-method: var(--dark-color-ts-method); + --color-ts-reference: var(--dark-color-ts-reference); + --color-ts-call-signature: var(--dark-color-ts-call-signature); + --color-ts-index-signature: var(--dark-color-ts-index-signature); + --color-ts-constructor-signature: var( + --dark-color-ts-constructor-signature + ); + --color-ts-parameter: var(--dark-color-ts-parameter); + --color-ts-type-parameter: var(--dark-color-ts-type-parameter); + --color-ts-accessor: var(--dark-color-ts-accessor); + --color-ts-get-signature: var(--dark-color-ts-get-signature); + --color-ts-set-signature: var(--dark-color-ts-set-signature); + --color-ts-type-alias: var(--dark-color-ts-type-alias); + --color-document: var(--dark-color-document); + + --color-note: var(--dark-color-note); + --color-tip: var(--dark-color-tip); + --color-important: var(--dark-color-important); + --color-warning: var(--dark-color-warning); + --color-caution: var(--dark-color-caution); + --external-icon: var(--dark-external-icon); + --color-scheme: var(--dark-color-scheme); } -} -body { - margin: 0; -} + html { + color-scheme: var(--color-scheme); + @media (prefers-reduced-motion: no-preference) { + scroll-behavior: smooth; + } + } -body.light { - --color-background: var(--light-color-background); - --color-secondary-background: var(--light-color-secondary-background); - --color-text: var(--light-color-text); - --color-text-aside: var(--light-color-text-aside); - --color-link: var(--light-color-link); - --color-menu-divider: var(--light-color-menu-divider); - --color-menu-divider-focus: var(--light-color-menu-divider-focus); - --color-menu-label: var(--light-color-menu-label); - --color-panel: var(--light-color-panel); - --color-panel-divider: var(--light-color-panel-divider); - --color-comment-tag: var(--light-color-comment-tag); - --color-comment-tag-text: var(--light-color-comment-tag-text); - --color-ts: var(--light-color-ts); - --color-ts-interface: var(--light-color-ts-interface); - --color-ts-enum: var(--light-color-ts-enum); - --color-ts-class: var(--light-color-ts-class); - --color-ts-private: var(--light-color-ts-private); - --color-toolbar: var(--light-color-toolbar); - --color-toolbar-text: var(--light-color-toolbar-text); - --icon-filter: var(--light-icon-filter); - --external-icon: var(--light-external-icon); -} + *:focus-visible, + .tsd-accordion-summary:focus-visible svg { + outline: 2px solid var(--color-focus-outline); + } -body.dark { - --color-background: var(--dark-color-background); - --color-secondary-background: var(--dark-color-secondary-background); - --color-text: var(--dark-color-text); - --color-text-aside: var(--dark-color-text-aside); - --color-link: var(--dark-color-link); - --color-menu-divider: var(--dark-color-menu-divider); - --color-menu-divider-focus: var(--dark-color-menu-divider-focus); - --color-menu-label: var(--dark-color-menu-label); - --color-panel: var(--dark-color-panel); - --color-panel-divider: var(--dark-color-panel-divider); - --color-comment-tag: var(--dark-color-comment-tag); - --color-comment-tag-text: var(--dark-color-comment-tag-text); - --color-ts: var(--dark-color-ts); - --color-ts-interface: var(--dark-color-ts-interface); - --color-ts-enum: var(--dark-color-ts-enum); - --color-ts-class: var(--dark-color-ts-class); - --color-ts-private: var(--dark-color-ts-private); - --color-toolbar: var(--dark-color-toolbar); - --color-toolbar-text: var(--dark-color-toolbar-text); - --icon-filter: var(--dark-icon-filter); - --external-icon: var(--dark-external-icon); -} + .always-visible, + .always-visible .tsd-signatures { + display: inherit !important; + } -h1 { - font-size: 2em; - margin: 0.67em 0; -} + h1, + h2, + h3, + h4, + h5, + h6 { + line-height: 1.2; + } -h2 { - font-size: 1.5em; - margin: 0.83em 0; -} + h1 { + font-size: 1.875rem; + margin: 0.67rem 0; + } -h3 { - font-size: 1.17em; - margin: 1em 0; -} + h2 { + font-size: 1.5rem; + margin: 0.83rem 0; + } -h4, -.tsd-index-panel h3 { - font-size: 1em; - margin: 1.33em 0; -} + h3 { + font-size: 1.25rem; + margin: 1rem 0; + } -h5 { - font-size: 0.83em; - margin: 1.67em 0; -} + h4 { + font-size: 1.05rem; + margin: 1.33rem 0; + } -h6 { - font-size: 0.67em; - margin: 2.33em 0; -} + h5 { + font-size: 1rem; + margin: 1.5rem 0; + } -pre { - white-space: pre; - white-space: pre-wrap; - word-wrap: break-word; -} + h6 { + font-size: 0.875rem; + margin: 2.33rem 0; + } -dl, -menu, -ol, -ul { - margin: 1em 0; -} + dl, + menu, + ol, + ul { + margin: 1em 0; + } -dd { - margin: 0 0 0 40px; -} + dd { + margin: 0 0 0 34px; + } -.container { - max-width: 1200px; - margin: 0 auto; - padding: 0 40px; -} -@media (max-width: 640px) { .container { - padding: 0 20px; + max-width: 1700px; + padding: 0 2rem; } -} -.container-main { - padding-bottom: 200px; -} + /* Footer */ + footer { + border-top: 1px solid var(--color-accent); + padding-top: 1rem; + padding-bottom: 1rem; + max-height: var(--dim-footer-height); + } + footer > p { + margin: 0 1em; + } -.row { - display: flex; - position: relative; - margin: 0 -10px; -} -.row:after { - visibility: hidden; - display: block; - content: ""; - clear: both; - height: 0; -} + .container-main { + margin: var(--dim-container-main-margin-y) auto; + /* toolbar, footer, margin */ + min-height: calc( + 100svh - var(--dim-header-height) - var(--dim-footer-height) - + 2 * var(--dim-container-main-margin-y) + ); + } -.col-4, -.col-8 { - box-sizing: border-box; - float: left; - padding: 0 10px; -} + @keyframes fade-in { + from { + opacity: 0; + } + to { + opacity: 1; + } + } + @keyframes fade-out { + from { + opacity: 1; + visibility: visible; + } + to { + opacity: 0; + } + } + @keyframes pop-in-from-right { + from { + transform: translate(100%, 0); + } + to { + transform: translate(0, 0); + } + } + @keyframes pop-out-to-right { + from { + transform: translate(0, 0); + visibility: visible; + } + to { + transform: translate(100%, 0); + } + } + body { + background: var(--color-background); + font-family: + -apple-system, BlinkMacSystemFont, "Segoe UI", "Noto Sans", + Helvetica, Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji"; + font-size: 16px; + color: var(--color-text); + margin: 0; + } -.col-4 { - width: 33.3333333333%; -} -.col-8 { - width: 66.6666666667%; -} + a { + color: var(--color-link); + text-decoration: none; + } + a:hover { + text-decoration: underline; + } + a.external[target="_blank"] { + background-image: var(--external-icon); + background-position: top 3px right; + background-repeat: no-repeat; + padding-right: 13px; + } + a.tsd-anchor-link { + color: var(--color-text); + } + :target { + scroll-margin-block: calc(var(--dim-header-height) + 0.5rem); + } -ul.tsd-descriptions > li > :first-child, -.tsd-panel > :first-child, -.col-8 > :first-child, -.col-4 > :first-child, -ul.tsd-descriptions > li > :first-child > :first-child, -.tsd-panel > :first-child > :first-child, -.col-8 > :first-child > :first-child, -.col-4 > :first-child > :first-child, -ul.tsd-descriptions > li > :first-child > :first-child > :first-child, -.tsd-panel > :first-child > :first-child > :first-child, -.col-8 > :first-child > :first-child > :first-child, -.col-4 > :first-child > :first-child > :first-child { - margin-top: 0; -} -ul.tsd-descriptions > li > :last-child, -.tsd-panel > :last-child, -.col-8 > :last-child, -.col-4 > :last-child, -ul.tsd-descriptions > li > :last-child > :last-child, -.tsd-panel > :last-child > :last-child, -.col-8 > :last-child > :last-child, -.col-4 > :last-child > :last-child, -ul.tsd-descriptions > li > :last-child > :last-child > :last-child, -.tsd-panel > :last-child > :last-child > :last-child, -.col-8 > :last-child > :last-child > :last-child, -.col-4 > :last-child > :last-child > :last-child { - margin-bottom: 0; -} + code, + pre { + font-family: Menlo, Monaco, Consolas, "Courier New", monospace; + padding: 0.2em; + margin: 0; + font-size: 0.875rem; + border-radius: 0.8em; + } -@keyframes fade-in { - from { + pre { + position: relative; + white-space: pre-wrap; + word-wrap: break-word; + padding: 10px; + border: 1px solid var(--color-accent); + margin-bottom: 8px; + } + pre code { + padding: 0; + font-size: 100%; + } + pre > button { + position: absolute; + top: 10px; + right: 10px; opacity: 0; + transition: opacity 0.1s; + box-sizing: border-box; } - to { + pre:hover > button, + pre > button.visible, + pre > button:focus-visible { opacity: 1; } -} -@keyframes fade-out { - from { - opacity: 1; - visibility: visible; + + blockquote { + margin: 1em 0; + padding-left: 1em; + border-left: 4px solid gray; } - to { - opacity: 0; + + img { + max-width: 100%; } -} -@keyframes fade-in-delayed { - 0% { - opacity: 0; + + * { + scrollbar-width: thin; + scrollbar-color: var(--color-accent) var(--color-icon-background); } - 33% { - opacity: 0; + + *::-webkit-scrollbar { + width: 0.75rem; } - 100% { - opacity: 1; + + *::-webkit-scrollbar-track { + background: var(--color-icon-background); } -} -@keyframes fade-out-delayed { - 0% { - opacity: 1; - visibility: visible; + + *::-webkit-scrollbar-thumb { + background-color: var(--color-accent); + border-radius: 999rem; + border: 0.25rem solid var(--color-icon-background); } - 66% { - opacity: 0; + + dialog { + border: none; + outline: none; + padding: 0; + background-color: var(--color-background); } - 100% { - opacity: 0; + dialog::backdrop { + display: none; } -} -@keyframes shift-to-left { - from { - transform: translate(0, 0); + #tsd-overlay { + background-color: rgba(0, 0, 0, 0.5); + position: fixed; + z-index: 9999; + top: 0; + left: 0; + right: 0; + bottom: 0; + animation: fade-in var(--modal-animation-duration) forwards; } - to { - transform: translate(-25%, 0); + #tsd-overlay.closing { + animation-name: fade-out; } -} -@keyframes unshift-to-left { - from { - transform: translate(-25%, 0); + + .tsd-typography { + line-height: 1.333em; } - to { - transform: translate(0, 0); + .tsd-typography ul { + list-style: square; + padding: 0 0 0 20px; + margin: 0; } -} -@keyframes pop-in-from-right { - from { - transform: translate(100%, 0); + .tsd-typography .tsd-index-panel h3, + .tsd-index-panel .tsd-typography h3, + .tsd-typography h4, + .tsd-typography h5, + .tsd-typography h6 { + font-size: 1em; } - to { - transform: translate(0, 0); + .tsd-typography h5, + .tsd-typography h6 { + font-weight: normal; } -} -@keyframes pop-out-to-right { - from { - transform: translate(0, 0); - visibility: visible; + .tsd-typography p, + .tsd-typography ul, + .tsd-typography ol { + margin: 1em 0; } - to { - transform: translate(100%, 0); + .tsd-typography table { + border-collapse: collapse; + border: none; + } + .tsd-typography td, + .tsd-typography th { + padding: 6px 13px; + border: 1px solid var(--color-accent); + } + .tsd-typography thead, + .tsd-typography tr:nth-child(even) { + background-color: var(--color-background-secondary); } -} -body { - background: var(--color-background); - font-family: "Segoe UI", sans-serif; - font-size: 16px; - color: var(--color-text); -} -a { - color: var(--color-link); - text-decoration: none; -} -a:hover { - text-decoration: underline; -} -a.external[target="_blank"] { - background-image: var(--external-icon); - background-position: top 3px right; - background-repeat: no-repeat; - padding-right: 13px; -} + .tsd-alert { + padding: 8px 16px; + margin-bottom: 16px; + border-left: 0.25em solid var(--alert-color); + } + .tsd-alert blockquote > :last-child, + .tsd-alert > :last-child { + margin-bottom: 0; + } + .tsd-alert-title { + color: var(--alert-color); + display: inline-flex; + align-items: center; + } + .tsd-alert-title span { + margin-left: 4px; + } -code, -pre { - font-family: Menlo, Monaco, Consolas, "Courier New", monospace; - padding: 0.2em; - margin: 0; - font-size: 14px; -} + .tsd-alert-note { + --alert-color: var(--color-alert-note); + } + .tsd-alert-tip { + --alert-color: var(--color-alert-tip); + } + .tsd-alert-important { + --alert-color: var(--color-alert-important); + } + .tsd-alert-warning { + --alert-color: var(--color-alert-warning); + } + .tsd-alert-caution { + --alert-color: var(--color-alert-caution); + } -pre { - padding: 10px; -} -pre code { - padding: 0; - font-size: 100%; -} + .tsd-breadcrumb { + margin: 0; + margin-top: 1rem; + padding: 0; + color: var(--color-text-aside); + } + .tsd-breadcrumb a { + color: var(--color-text-aside); + text-decoration: none; + } + .tsd-breadcrumb a:hover { + text-decoration: underline; + } + .tsd-breadcrumb li { + display: inline; + } + .tsd-breadcrumb li:after { + content: " / "; + } -blockquote { - margin: 1em 0; - padding-left: 1em; - border-left: 4px solid gray; -} + .tsd-comment-tags { + display: flex; + flex-direction: column; + } + dl.tsd-comment-tag-group { + display: flex; + align-items: center; + overflow: hidden; + margin: 0.5em 0; + } + dl.tsd-comment-tag-group dt { + display: flex; + margin-right: 0.5em; + font-size: 0.875em; + font-weight: normal; + } + dl.tsd-comment-tag-group dd { + margin: 0; + } + code.tsd-tag { + padding: 0.25em 0.4em; + border: 0.1em solid var(--color-accent); + margin-right: 0.25em; + font-size: 70%; + } + h1 code.tsd-tag:first-of-type { + margin-left: 0.25em; + } -.tsd-typography { - line-height: 1.333em; -} -.tsd-typography ul { - list-style: square; - padding: 0 0 0 20px; - margin: 0; -} -.tsd-typography h4, -.tsd-typography .tsd-index-panel h3, -.tsd-index-panel .tsd-typography h3, -.tsd-typography h5, -.tsd-typography h6 { - font-size: 1em; - margin: 0; -} -.tsd-typography h5, -.tsd-typography h6 { - font-weight: normal; -} -.tsd-typography p, -.tsd-typography ul, -.tsd-typography ol { - margin: 1em 0; -} + dl.tsd-comment-tag-group dd:before, + dl.tsd-comment-tag-group dd:after { + content: " "; + } + dl.tsd-comment-tag-group dd pre, + dl.tsd-comment-tag-group dd:after { + clear: both; + } + dl.tsd-comment-tag-group p { + margin: 0; + } -@media (min-width: 901px) and (max-width: 1024px) { - html .col-content { - width: 72%; + .tsd-panel.tsd-comment .lead { + font-size: 1.1em; + line-height: 1.333em; + margin-bottom: 2em; } - html .col-menu { - width: 28%; + .tsd-panel.tsd-comment .lead:last-child { + margin-bottom: 0; } - html .tsd-navigation { - padding-left: 10px; + + .tsd-filter-visibility h4 { + font-size: 1rem; + padding-top: 0.75rem; + padding-bottom: 0.5rem; + margin: 0; } -} -@media (max-width: 900px) { - html .col-content { - float: none; - width: 100%; + .tsd-filter-item:not(:last-child) { + margin-bottom: 0.5rem; } - html .col-menu { - position: fixed !important; - overflow: auto; - -webkit-overflow-scrolling: touch; - z-index: 1024; - top: 0 !important; - bottom: 0 !important; - left: auto !important; - right: 0 !important; - width: 100%; - padding: 20px 20px 0 0; - max-width: 450px; - visibility: hidden; - background-color: var(--color-panel); - transform: translate(100%, 0); + .tsd-filter-input { + display: flex; + width: -moz-fit-content; + width: fit-content; + align-items: center; + -webkit-user-select: none; + -moz-user-select: none; + -ms-user-select: none; + user-select: none; + cursor: pointer; } - html .col-menu > *:last-child { - padding-bottom: 20px; + .tsd-filter-input input[type="checkbox"] { + cursor: pointer; + position: absolute; + width: 1.5em; + height: 1.5em; + opacity: 0; } - html .overlay { - content: ""; - display: block; - position: fixed; - z-index: 1023; - top: 0; - left: 0; - right: 0; - bottom: 0; - background-color: rgba(0, 0, 0, 0.75); - visibility: hidden; + .tsd-filter-input input[type="checkbox"]:disabled { + pointer-events: none; } - - .to-has-menu .overlay { - animation: fade-in 0.4s; + .tsd-filter-input svg { + cursor: pointer; + width: 1.5em; + height: 1.5em; + margin-right: 0.5em; + border-radius: 0.33em; + /* Leaving this at full opacity breaks event listeners on Firefox. + Don't remove unless you know what you're doing. */ + opacity: 0.99; + } + .tsd-filter-input input[type="checkbox"]:focus-visible + svg { + outline: 2px solid var(--color-focus-outline); + } + .tsd-checkbox-background { + fill: var(--color-accent); + } + input[type="checkbox"]:checked ~ svg .tsd-checkbox-checkmark { + stroke: var(--color-text); + } + .tsd-filter-input input:disabled ~ svg > .tsd-checkbox-background { + fill: var(--color-background); + stroke: var(--color-accent); + stroke-width: 0.25rem; + } + .tsd-filter-input input:disabled ~ svg > .tsd-checkbox-checkmark { + stroke: var(--color-accent); } - .to-has-menu :is(header, footer, .col-content) { - animation: shift-to-left 0.4s; + .settings-label { + font-weight: bold; + text-transform: uppercase; + display: inline-block; } - .to-has-menu .col-menu { - animation: pop-in-from-right 0.4s; + .tsd-filter-visibility .settings-label { + margin: 0.75rem 0 0.5rem 0; } - .from-has-menu .overlay { - animation: fade-out 0.4s; + .tsd-theme-toggle .settings-label { + margin: 0.75rem 0.75rem 0 0; } - .from-has-menu :is(header, footer, .col-content) { - animation: unshift-to-left 0.4s; + .tsd-hierarchy h4 label:hover span { + text-decoration: underline; } - .from-has-menu .col-menu { - animation: pop-out-to-right 0.4s; + .tsd-hierarchy { + list-style: square; + margin: 0; + } + .tsd-hierarchy-target { + font-weight: bold; + } + .tsd-hierarchy-toggle { + color: var(--color-link); + cursor: pointer; } - .has-menu body { - overflow: hidden; + .tsd-full-hierarchy:not(:last-child) { + margin-bottom: 1em; + padding-bottom: 1em; + border-bottom: 1px solid var(--color-accent); } - .has-menu .overlay { - visibility: visible; + .tsd-full-hierarchy, + .tsd-full-hierarchy ul { + list-style: none; + margin: 0; + padding: 0; } - .has-menu :is(header, footer, .col-content) { - transform: translate(-25%, 0); + .tsd-full-hierarchy ul { + padding-left: 1.5rem; } - .has-menu .col-menu { - visibility: visible; - transform: translate(0, 0); - display: grid; - grid-template-rows: auto 1fr; - max-height: 100vh; + .tsd-full-hierarchy a { + padding: 0.25rem 0 !important; + font-size: 1rem; + display: inline-flex; + align-items: center; + color: var(--color-text); } - .has-menu .tsd-navigation { - max-height: 100%; + .tsd-full-hierarchy svg[data-dropdown] { + cursor: pointer; + } + .tsd-full-hierarchy svg[data-dropdown="false"] { + transform: rotate(-90deg); + } + .tsd-full-hierarchy svg[data-dropdown="false"] ~ ul { + display: none; } -} - -.tsd-page-title { - padding: 70px 0 20px 0; - margin: 0 0 40px 0; - background: var(--color-panel); - box-shadow: 0 0 5px rgba(0, 0, 0, 0.35); -} -.tsd-page-title h1 { - margin: 0; -} -.tsd-breadcrumb { - margin: 0; - padding: 0; - color: var(--color-text-aside); -} -.tsd-breadcrumb a { - color: var(--color-text-aside); - text-decoration: none; -} -.tsd-breadcrumb a:hover { - text-decoration: underline; -} -.tsd-breadcrumb li { - display: inline; -} -.tsd-breadcrumb li:after { - content: " / "; -} + .tsd-panel-group.tsd-index-group { + margin-bottom: 0; + } + .tsd-index-panel .tsd-index-list { + list-style: none; + line-height: 1.333em; + margin: 0; + padding: 0.25rem 0 0 0; + overflow: hidden; + display: grid; + grid-template-columns: repeat(3, 1fr); + column-gap: 1rem; + grid-template-rows: auto; + } + @media (max-width: 1024px) { + .tsd-index-panel .tsd-index-list { + grid-template-columns: repeat(2, 1fr); + } + } + @media (max-width: 768px) { + .tsd-index-panel .tsd-index-list { + grid-template-columns: repeat(1, 1fr); + } + } + .tsd-index-panel .tsd-index-list li { + -webkit-page-break-inside: avoid; + -moz-page-break-inside: avoid; + -ms-page-break-inside: avoid; + -o-page-break-inside: avoid; + page-break-inside: avoid; + } -dl.tsd-comment-tags { - overflow: hidden; -} -dl.tsd-comment-tags dt { - float: left; - padding: 1px 5px; - margin: 0 10px 0 0; - border-radius: 4px; - border: 1px solid var(--color-comment-tag); - color: var(--color-comment-tag); - font-size: 0.8em; - font-weight: normal; -} -dl.tsd-comment-tags dd { - margin: 0 0 10px 0; -} -dl.tsd-comment-tags dd:before, -dl.tsd-comment-tags dd:after { - display: table; - content: " "; -} -dl.tsd-comment-tags dd pre, -dl.tsd-comment-tags dd:after { - clear: both; -} -dl.tsd-comment-tags p { - margin: 0; -} + .tsd-flag { + display: inline-block; + padding: 0.25em 0.4em; + border-radius: 4px; + color: var(--color-comment-tag-text); + background-color: var(--color-comment-tag); + text-indent: 0; + font-size: 75%; + line-height: 1; + font-weight: normal; + } -.tsd-panel.tsd-comment .lead { - font-size: 1.1em; - line-height: 1.333em; - margin-bottom: 2em; -} -.tsd-panel.tsd-comment .lead:last-child { - margin-bottom: 0; -} + .tsd-anchor { + position: relative; + top: -100px; + } -.toggle-protected .tsd-is-private { - display: none; -} + .tsd-member { + position: relative; + } + .tsd-member .tsd-anchor + h3 { + display: flex; + align-items: center; + margin-top: 0; + margin-bottom: 0; + border-bottom: none; + } -.toggle-public .tsd-is-private, -.toggle-public .tsd-is-protected, -.toggle-public .tsd-is-private-protected { - display: none; -} + .tsd-navigation.settings { + margin: 0; + margin-bottom: 1rem; + } + .tsd-navigation > a, + .tsd-navigation .tsd-accordion-summary { + width: calc(100% - 0.25rem); + display: flex; + align-items: center; + } + .tsd-navigation a, + .tsd-navigation summary > span, + .tsd-page-navigation a { + display: flex; + width: calc(100% - 0.25rem); + align-items: center; + padding: 0.25rem; + color: var(--color-text); + text-decoration: none; + box-sizing: border-box; + } + .tsd-navigation a.current, + .tsd-page-navigation a.current { + background: var(--color-active-menu-item); + color: var(--color-contrast-text); + } + .tsd-navigation a:hover, + .tsd-page-navigation a:hover { + text-decoration: underline; + } + .tsd-navigation ul, + .tsd-page-navigation ul { + margin-top: 0; + margin-bottom: 0; + padding: 0; + list-style: none; + } + .tsd-navigation li, + .tsd-page-navigation li { + padding: 0; + max-width: 100%; + } + .tsd-navigation .tsd-nav-link { + display: none; + } + .tsd-nested-navigation { + margin-left: 3rem; + } + .tsd-nested-navigation > li > details { + margin-left: -1.5rem; + } + .tsd-small-nested-navigation { + margin-left: 1.5rem; + } + .tsd-small-nested-navigation > li > details { + margin-left: -1.5rem; + } -.toggle-inherited .tsd-is-inherited { - display: none; -} + .tsd-page-navigation-section > summary { + padding: 0.25rem; + } + .tsd-page-navigation-section > summary > svg { + margin-right: 0.25rem; + } + .tsd-page-navigation-section > div { + margin-left: 30px; + } + .tsd-page-navigation ul { + padding-left: 1.75rem; + } -.toggle-externals .tsd-is-external { - display: none; -} + #tsd-sidebar-links a { + margin-top: 0; + margin-bottom: 0.5rem; + line-height: 1.25rem; + } + #tsd-sidebar-links a:last-of-type { + margin-bottom: 0; + } -#tsd-filter { - position: relative; - display: inline-block; - height: 40px; - vertical-align: bottom; -} -.no-filter #tsd-filter { - display: none; -} -#tsd-filter .tsd-filter-group { - display: inline-block; - height: 40px; - vertical-align: bottom; - white-space: nowrap; -} -#tsd-filter input { - display: none; -} -@media (max-width: 900px) { - #tsd-filter .tsd-filter-group { - display: block; - position: absolute; - top: 40px; - right: 20px; - height: auto; - background-color: var(--color-panel); - visibility: hidden; - transform: translate(50%, 0); - box-shadow: 0 0 4px rgba(0, 0, 0, 0.25); + a.tsd-index-link { + padding: 0.25rem 0 !important; + font-size: 1rem; + line-height: 1.25rem; + display: inline-flex; + align-items: center; + color: var(--color-text); } - .has-options #tsd-filter .tsd-filter-group { - visibility: visible; + .tsd-accordion-summary { + list-style-type: none; /* hide marker on non-safari */ + outline: none; /* broken on safari, so just hide it */ + display: flex; + align-items: center; + gap: 0.25rem; + box-sizing: border-box; } - .to-has-options #tsd-filter .tsd-filter-group { - animation: fade-in 0.2s; + .tsd-accordion-summary::-webkit-details-marker { + display: none; /* hide marker on safari */ } - .from-has-options #tsd-filter .tsd-filter-group { - animation: fade-out 0.2s; + .tsd-accordion-summary, + .tsd-accordion-summary a { + -moz-user-select: none; + -webkit-user-select: none; + -ms-user-select: none; + user-select: none; + + cursor: pointer; } - #tsd-filter label, - #tsd-filter .tsd-select { - display: block; - padding-right: 20px; + .tsd-accordion-summary a { + width: calc(100% - 1.5rem); } -} - -footer { - border-top: 1px solid var(--color-panel-divider); - background-color: var(--color-panel); -} -footer.with-border-bottom { - border-bottom: 1px solid var(--color-panel-divider); -} -footer .tsd-legend-group { - font-size: 0; -} -footer .tsd-legend { - display: inline-block; - width: 25%; - padding: 0; - font-size: 16px; - list-style: none; - line-height: 1.333em; - vertical-align: top; -} -@media (max-width: 900px) { - footer .tsd-legend { - width: 50%; + .tsd-accordion-summary > * { + margin-top: 0; + margin-bottom: 0; + padding-top: 0; + padding-bottom: 0; + } + /* + * We need to be careful to target the arrow indicating whether the accordion + * is open, but not any other SVGs included in the details element. + */ + .tsd-accordion:not([open]) > .tsd-accordion-summary > svg:first-child { + transform: rotate(-90deg); + } + .tsd-index-content > :not(:first-child) { + margin-top: 0.75rem; + } + .tsd-index-summary { + margin-top: 1.5rem; + margin-bottom: 0.75rem; + display: flex; + align-content: center; } -} - -.tsd-hierarchy { - list-style: square; - padding: 0 0 0 20px; - margin: 0; -} -.tsd-hierarchy .target { - font-weight: bold; -} -.tsd-index-panel .tsd-index-content { - margin-bottom: -30px !important; -} -.tsd-index-panel .tsd-index-section { - margin-bottom: 30px !important; -} -.tsd-index-panel h3 { - margin: 0 -20px 10px -20px; - padding: 0 20px 10px 20px; - border-bottom: 1px solid var(--color-panel-divider); -} -.tsd-index-panel ul.tsd-index-list { - -webkit-column-count: 3; - -moz-column-count: 3; - -ms-column-count: 3; - -o-column-count: 3; - column-count: 3; - -webkit-column-gap: 20px; - -moz-column-gap: 20px; - -ms-column-gap: 20px; - -o-column-gap: 20px; - column-gap: 20px; - padding: 0; - list-style: none; - line-height: 1.333em; -} -@media (max-width: 900px) { - .tsd-index-panel ul.tsd-index-list { - -webkit-column-count: 1; - -moz-column-count: 1; - -ms-column-count: 1; - -o-column-count: 1; - column-count: 1; + .tsd-no-select { + -webkit-user-select: none; + -moz-user-select: none; + -ms-user-select: none; + user-select: none; } -} -@media (min-width: 901px) and (max-width: 1024px) { - .tsd-index-panel ul.tsd-index-list { - -webkit-column-count: 2; - -moz-column-count: 2; - -ms-column-count: 2; - -o-column-count: 2; - column-count: 2; + .tsd-kind-icon { + margin-right: 0.5rem; + width: 1.25rem; + height: 1.25rem; + min-width: 1.25rem; + min-height: 1.25rem; + } + .tsd-signature > .tsd-kind-icon { + margin-right: 0.8rem; } -} -.tsd-index-panel ul.tsd-index-list li { - -webkit-page-break-inside: avoid; - -moz-page-break-inside: avoid; - -ms-page-break-inside: avoid; - -o-page-break-inside: avoid; - page-break-inside: avoid; -} -.tsd-index-panel a, -.tsd-index-panel .tsd-parent-kind-module a { - color: var(--color-ts); -} -.tsd-index-panel .tsd-parent-kind-interface a { - color: var(--color-ts-interface); -} -.tsd-index-panel .tsd-parent-kind-enum a { - color: var(--color-ts-enum); -} -.tsd-index-panel .tsd-parent-kind-class a { - color: var(--color-ts-class); -} -.tsd-index-panel .tsd-kind-module a { - color: var(--color-ts); -} -.tsd-index-panel .tsd-kind-interface a { - color: var(--color-ts-interface); -} -.tsd-index-panel .tsd-kind-enum a { - color: var(--color-ts-enum); -} -.tsd-index-panel .tsd-kind-class a { - color: var(--color-ts-class); -} -.tsd-index-panel .tsd-is-private a { - color: var(--color-ts-private); -} -.tsd-flag { - display: inline-block; - padding: 1px 5px; - border-radius: 4px; - color: var(--color-comment-tag-text); - background-color: var(--color-comment-tag); - text-indent: 0; - font-size: 14px; - font-weight: normal; -} + .tsd-panel { + margin-bottom: 2.5rem; + } + .tsd-panel.tsd-member { + margin-bottom: 4rem; + } + .tsd-panel:empty { + display: none; + } + .tsd-panel > h1, + .tsd-panel > h2, + .tsd-panel > h3 { + margin: 1.5rem -1.5rem 0.75rem -1.5rem; + padding: 0 1.5rem 0.75rem 1.5rem; + } + .tsd-panel > h1.tsd-before-signature, + .tsd-panel > h2.tsd-before-signature, + .tsd-panel > h3.tsd-before-signature { + margin-bottom: 0; + border-bottom: none; + } -.tsd-anchor { - position: absolute; - top: -100px; -} + .tsd-panel-group { + margin: 2rem 0; + } + .tsd-panel-group.tsd-index-group { + margin: 2rem 0; + } + .tsd-panel-group.tsd-index-group details { + margin: 2rem 0; + } + .tsd-panel-group > .tsd-accordion-summary { + margin-bottom: 1rem; + } -.tsd-member { - position: relative; -} -.tsd-member .tsd-anchor + h3 { - margin-top: 0; - margin-bottom: 0; - border-bottom: none; -} -.tsd-member [data-tsd-kind] { - color: var(--color-ts); -} -.tsd-member [data-tsd-kind="Interface"] { - color: var(--color-ts-interface); -} -.tsd-member [data-tsd-kind="Enum"] { - color: var(--color-ts-enum); -} -.tsd-member [data-tsd-kind="Class"] { - color: var(--color-ts-class); -} -.tsd-member [data-tsd-kind="Private"] { - color: var(--color-ts-private); -} + #tsd-search[open] { + animation: fade-in var(--modal-animation-duration) ease-out forwards; + } + #tsd-search[open].closing { + animation-name: fade-out; + } -.tsd-navigation { - margin: 0 0 0 40px; -} -.tsd-navigation a { - display: block; - padding-top: 2px; - padding-bottom: 2px; - border-left: 2px solid transparent; - color: var(--color-text); - text-decoration: none; - transition: border-left-color 0.1s; -} -.tsd-navigation a:hover { - text-decoration: underline; -} -.tsd-navigation ul { - margin: 0; - padding: 0; - list-style: none; -} -.tsd-navigation li { - padding: 0; -} + /* Avoid setting `display` on closed dialog */ + #tsd-search[open] { + display: flex; + flex-direction: column; + padding: 1rem; + width: 32rem; + max-width: 90vw; + max-height: calc(100vh - env(keyboard-inset-height, 0px) - 25vh); + /* Anchor dialog to top */ + margin-top: 10vh; + border-radius: 6px; + will-change: max-height; + } + #tsd-search-input { + box-sizing: border-box; + width: 100%; + padding: 0 0.625rem; /* 10px */ + outline: 0; + border: 2px solid var(--color-accent); + background-color: transparent; + color: var(--color-text); + border-radius: 4px; + height: 2.5rem; + flex: 0 0 auto; + font-size: 0.875rem; + transition: border-color 0.2s, background-color 0.2s; + } + #tsd-search-input:focus-visible { + background-color: var(--color-background-active); + border-color: transparent; + color: var(--color-contrast-text); + } + #tsd-search-input::placeholder { + color: inherit; + opacity: 0.8; + } + #tsd-search-results { + margin: 0; + padding: 0; + list-style: none; + flex: 1 1 auto; + display: flex; + flex-direction: column; + overflow-y: auto; + } + #tsd-search-results:not(:empty) { + margin-top: 0.5rem; + } + #tsd-search-results > li { + background-color: var(--color-background); + line-height: 1.5; + box-sizing: border-box; + border-radius: 4px; + } + #tsd-search-results > li:nth-child(even) { + background-color: var(--color-background-secondary); + } + #tsd-search-results > li:is(:hover, [aria-selected="true"]) { + background-color: var(--color-background-active); + color: var(--color-contrast-text); + } + /* It's important that this takes full size of parent `li`, to capture a click on `li` */ + #tsd-search-results > li > a { + display: flex; + align-items: center; + padding: 0.5rem 0.25rem; + box-sizing: border-box; + width: 100%; + } + #tsd-search-results > li > a > .text { + flex: 1 1 auto; + min-width: 0; + overflow-wrap: anywhere; + } + #tsd-search-results > li > a .parent { + color: var(--color-text-aside); + } + #tsd-search-results > li > a mark { + color: inherit; + background-color: inherit; + font-weight: bold; + } + #tsd-search-status { + flex: 1; + display: grid; + place-content: center; + text-align: center; + overflow-wrap: anywhere; + } + #tsd-search-status:not(:empty) { + min-height: 6rem; + } -.tsd-navigation.primary { - padding-bottom: 40px; -} -.tsd-navigation.primary a { - display: block; - padding-top: 6px; - padding-bottom: 6px; -} -.tsd-navigation.primary ul li a { - padding-left: 5px; -} -.tsd-navigation.primary ul li li a { - padding-left: 25px; -} -.tsd-navigation.primary ul li li li a { - padding-left: 45px; -} -.tsd-navigation.primary ul li li li li a { - padding-left: 65px; -} -.tsd-navigation.primary ul li li li li li a { - padding-left: 85px; -} -.tsd-navigation.primary ul li li li li li li a { - padding-left: 105px; -} -.tsd-navigation.primary > ul { - border-bottom: 1px solid var(--color-panel-divider); -} -.tsd-navigation.primary li { - border-top: 1px solid var(--color-panel-divider); -} -.tsd-navigation.primary li.current > a { - font-weight: bold; -} -.tsd-navigation.primary li.label span { - display: block; - padding: 20px 0 6px 5px; - color: var(--color-menu-label); -} -.tsd-navigation.primary li.globals + li > span, -.tsd-navigation.primary li.globals + li > a { - padding-top: 20px; -} + .tsd-signature { + margin: 0 0 1rem 0; + padding: 1rem 0.5rem; + border: 1px solid var(--color-accent); + font-family: Menlo, Monaco, Consolas, "Courier New", monospace; + font-size: 14px; + overflow-x: auto; + } -.tsd-navigation.secondary { - max-height: calc(100vh - 1rem - 40px); - overflow: auto; - position: sticky; - top: calc(0.5rem + 40px); - transition: 0.3s; -} -.tsd-navigation.secondary.tsd-navigation--toolbar-hide { - max-height: calc(100vh - 1rem); - top: 0.5rem; -} -.tsd-navigation.secondary ul { - transition: opacity 0.2s; -} -.tsd-navigation.secondary ul li a { - padding-left: 25px; -} -.tsd-navigation.secondary ul li li a { - padding-left: 45px; -} -.tsd-navigation.secondary ul li li li a { - padding-left: 65px; -} -.tsd-navigation.secondary ul li li li li a { - padding-left: 85px; -} -.tsd-navigation.secondary ul li li li li li a { - padding-left: 105px; -} -.tsd-navigation.secondary ul li li li li li li a { - padding-left: 125px; -} -.tsd-navigation.secondary ul.current a { - border-left-color: var(--color-panel-divider); -} -.tsd-navigation.secondary li.focus > a, -.tsd-navigation.secondary ul.current li.focus > a { - border-left-color: var(--color-menu-divider-focus); -} -.tsd-navigation.secondary li.current { - margin-top: 20px; - margin-bottom: 20px; - border-left-color: var(--color-panel-divider); -} -.tsd-navigation.secondary li.current > a { - font-weight: bold; -} + .tsd-signature-keyword { + color: var(--color-ts-keyword); + font-weight: normal; + } -@media (min-width: 901px) { - .menu-sticky-wrap { - position: static; + .tsd-signature-symbol { + color: var(--color-text-aside); + font-weight: normal; } -} -.tsd-panel { - margin: 20px 0; - padding: 20px; - background-color: var(--color-panel); - box-shadow: 0 0 4px rgba(0, 0, 0, 0.25); -} -.tsd-panel:empty { - display: none; -} -.tsd-panel > h1, -.tsd-panel > h2, -.tsd-panel > h3 { - margin: 1.5em -20px 10px -20px; - padding: 0 20px 10px 20px; - border-bottom: 1px solid var(--color-panel-divider); -} -.tsd-panel > h1.tsd-before-signature, -.tsd-panel > h2.tsd-before-signature, -.tsd-panel > h3.tsd-before-signature { - margin-bottom: 0; - border-bottom: 0; -} -.tsd-panel table { - display: block; - width: 100%; - overflow: auto; - margin-top: 10px; - word-break: normal; - word-break: keep-all; - border-collapse: collapse; -} -.tsd-panel table th { - font-weight: bold; -} -.tsd-panel table th, -.tsd-panel table td { - padding: 6px 13px; - border: 1px solid var(--color-panel-divider); -} -.tsd-panel table tr { - background: var(--color-background); -} -.tsd-panel table tr:nth-child(even) { - background: var(--color-secondary-background); -} + .tsd-signature-type { + font-style: italic; + font-weight: normal; + } -.tsd-panel-group { - margin: 60px 0; -} -.tsd-panel-group > h1, -.tsd-panel-group > h2, -.tsd-panel-group > h3 { - padding-left: 20px; - padding-right: 20px; -} + .tsd-signatures { + padding: 0; + margin: 0 0 1em 0; + list-style-type: none; + } + .tsd-signatures .tsd-signature { + margin: 0; + border-color: var(--color-accent); + border-width: 1px 0; + transition: background-color 0.1s; + } + .tsd-signatures .tsd-index-signature:not(:last-child) { + margin-bottom: 1em; + } + .tsd-signatures .tsd-index-signature .tsd-signature { + border-width: 1px; + } + .tsd-description .tsd-signatures .tsd-signature { + border-width: 1px; + } -#tsd-search { - transition: background-color 0.2s; -} -#tsd-search .title { - position: relative; - z-index: 2; -} -#tsd-search .field { - position: absolute; - left: 0; - top: 0; - right: 40px; - height: 40px; -} -#tsd-search .field input { - box-sizing: border-box; - position: relative; - top: -50px; - z-index: 1; - width: 100%; - padding: 0 10px; - opacity: 0; - outline: 0; - border: 0; - background: transparent; - color: var(--color-text); -} -#tsd-search .field label { - position: absolute; - overflow: hidden; - right: -40px; -} -#tsd-search .field input, -#tsd-search .title { - transition: opacity 0.2s; -} -#tsd-search .results { - position: absolute; - visibility: hidden; - top: 40px; - width: 100%; - margin: 0; - padding: 0; - list-style: none; - box-shadow: 0 0 4px rgba(0, 0, 0, 0.25); -} -#tsd-search .results li { - padding: 0 10px; - background-color: var(--color-background); -} -#tsd-search .results li:nth-child(even) { - background-color: var(--color-panel); -} -#tsd-search .results li.state { - display: none; -} -#tsd-search .results li.current, -#tsd-search .results li:hover { - background-color: var(--color-panel-divider); -} -#tsd-search .results a { - display: block; -} -#tsd-search .results a:before { - top: 10px; -} -#tsd-search .results span.parent { - color: var(--color-text-aside); - font-weight: normal; -} -#tsd-search.has-focus { - background-color: var(--color-panel-divider); -} -#tsd-search.has-focus .field input { - top: 0; - opacity: 1; -} -#tsd-search.has-focus .title { - z-index: 0; - opacity: 0; -} -#tsd-search.has-focus .results { - visibility: visible; -} -#tsd-search.loading .results li.state.loading { - display: block; -} -#tsd-search.failure .results li.state.failure { - display: block; -} + ul.tsd-parameter-list, + ul.tsd-type-parameter-list { + list-style: square; + margin: 0; + padding-left: 20px; + } + ul.tsd-parameter-list > li.tsd-parameter-signature, + ul.tsd-type-parameter-list > li.tsd-parameter-signature { + list-style: none; + margin-left: -20px; + } + ul.tsd-parameter-list h5, + ul.tsd-type-parameter-list h5 { + font-size: 16px; + margin: 1em 0 0.5em 0; + } + .tsd-sources { + margin-top: 1rem; + font-size: 0.875em; + } + .tsd-sources a { + color: var(--color-text-aside); + text-decoration: underline; + } + .tsd-sources ul { + list-style: none; + padding: 0; + } -.tsd-signature { - margin: 0 0 1em 0; - padding: 10px; - border: 1px solid var(--color-panel-divider); - font-family: Menlo, Monaco, Consolas, "Courier New", monospace; - font-size: 14px; - overflow-x: auto; -} -.tsd-signature.tsd-kind-icon { - padding-left: 30px; -} -.tsd-signature.tsd-kind-icon:before { - top: 10px; - left: 10px; -} -.tsd-panel > .tsd-signature { - margin-left: -20px; - margin-right: -20px; - border-width: 1px 0; -} -.tsd-panel > .tsd-signature.tsd-kind-icon { - padding-left: 40px; -} -.tsd-panel > .tsd-signature.tsd-kind-icon:before { - left: 20px; -} + .tsd-page-toolbar { + position: sticky; + z-index: 1; + top: 0; + left: 0; + width: 100%; + color: var(--color-text); + background: var(--color-background-secondary); + border-bottom: var(--dim-toolbar-border-bottom-width) + var(--color-accent) solid; + transition: transform 0.3s ease-in-out; + } + .tsd-page-toolbar a { + color: var(--color-text); + } + .tsd-toolbar-contents { + display: flex; + align-items: center; + height: var(--dim-toolbar-contents-height); + margin: 0 auto; + } + .tsd-toolbar-contents > .title { + font-weight: bold; + margin-right: auto; + } + #tsd-toolbar-links { + display: flex; + align-items: center; + gap: 1.5rem; + margin-right: 1rem; + } -.tsd-signature-symbol { - color: var(--color-text-aside); - font-weight: normal; -} + .tsd-widget { + box-sizing: border-box; + display: inline-block; + opacity: 0.8; + height: 2.5rem; + width: 2.5rem; + transition: opacity 0.1s, background-color 0.1s; + text-align: center; + cursor: pointer; + border: none; + background-color: transparent; + } + .tsd-widget:hover { + opacity: 0.9; + } + .tsd-widget:active { + opacity: 1; + background-color: var(--color-accent); + } + #tsd-toolbar-menu-trigger { + display: none; + } -.tsd-signature-type { - font-style: italic; - font-weight: normal; -} + .tsd-member-summary-name { + display: inline-flex; + align-items: center; + padding: 0.25rem; + text-decoration: none; + } -.tsd-signatures { - padding: 0; - margin: 0 0 1em 0; - border: 1px solid var(--color-panel-divider); -} -.tsd-signatures .tsd-signature { - margin: 0; - border-width: 1px 0 0 0; - transition: background-color 0.1s; -} -.tsd-signatures .tsd-signature:first-child { - border-top-width: 0; -} -.tsd-signatures .tsd-signature.current { - background-color: var(--color-panel-divider); -} -.tsd-signatures.active > .tsd-signature { - cursor: pointer; -} -.tsd-panel > .tsd-signatures { - margin-left: -20px; - margin-right: -20px; - border-width: 1px 0; -} -.tsd-panel > .tsd-signatures .tsd-signature.tsd-kind-icon { - padding-left: 40px; -} -.tsd-panel > .tsd-signatures .tsd-signature.tsd-kind-icon:before { - left: 20px; -} -.tsd-panel > a.anchor + .tsd-signatures { - border-top-width: 0; - margin-top: -20px; -} + .tsd-anchor-icon { + display: inline-flex; + align-items: center; + margin-left: 0.5rem; + color: var(--color-text); + vertical-align: middle; + } -ul.tsd-descriptions { - position: relative; - overflow: hidden; - padding: 0; - list-style: none; -} -ul.tsd-descriptions.active > .tsd-description { - display: none; -} -ul.tsd-descriptions.active > .tsd-description.current { - display: block; -} -ul.tsd-descriptions.active > .tsd-description.fade-in { - animation: fade-in-delayed 0.3s; -} -ul.tsd-descriptions.active > .tsd-description.fade-out { - animation: fade-out-delayed 0.3s; - position: absolute; - display: block; - top: 0; - left: 0; - right: 0; - opacity: 0; - visibility: hidden; -} -ul.tsd-descriptions h4, -ul.tsd-descriptions .tsd-index-panel h3, -.tsd-index-panel ul.tsd-descriptions h3 { - font-size: 16px; - margin: 1em 0 0.5em 0; -} + .tsd-anchor-icon svg { + width: 1em; + height: 1em; + visibility: hidden; + } -ul.tsd-parameters, -ul.tsd-type-parameters { - list-style: square; - margin: 0; - padding-left: 20px; -} -ul.tsd-parameters > li.tsd-parameter-signature, -ul.tsd-type-parameters > li.tsd-parameter-signature { - list-style: none; - margin-left: -20px; -} -ul.tsd-parameters h5, -ul.tsd-type-parameters h5 { - font-size: 16px; - margin: 1em 0 0.5em 0; -} -ul.tsd-parameters .tsd-comment, -ul.tsd-type-parameters .tsd-comment { - margin-top: -0.5em; -} + .tsd-member-summary-name:hover > .tsd-anchor-icon svg, + .tsd-anchor-link:hover > .tsd-anchor-icon svg, + .tsd-anchor-icon:focus-visible svg { + visibility: visible; + } -.tsd-sources { - font-size: 14px; - color: var(--color-text-aside); - margin: 0 0 1em 0; -} -.tsd-sources a { - color: var(--color-text-aside); - text-decoration: underline; -} -.tsd-sources ul, -.tsd-sources p { - margin: 0 !important; -} -.tsd-sources ul { - list-style: none; - padding: 0; -} + .deprecated { + text-decoration: line-through !important; + } -.tsd-page-toolbar { - position: fixed; - z-index: 1; - top: 0; - left: 0; - width: 100%; - height: 40px; - color: var(--color-toolbar-text); - background: var(--color-toolbar); - border-bottom: 1px solid var(--color-panel-divider); - transition: transform 0.3s linear; -} -.tsd-page-toolbar a { - color: var(--color-toolbar-text); - text-decoration: none; -} -.tsd-page-toolbar a.title { - font-weight: bold; -} -.tsd-page-toolbar a.title:hover { - text-decoration: underline; -} -.tsd-page-toolbar .table-wrap { - display: table; - width: 100%; - height: 40px; -} -.tsd-page-toolbar .table-cell { - display: table-cell; - position: relative; - white-space: nowrap; - line-height: 40px; -} -.tsd-page-toolbar .table-cell:first-child { - width: 100%; -} + .warning { + padding: 1rem; + color: var(--color-warning-text); + background: var(--color-background-warning); + } -.tsd-page-toolbar--hide { - transform: translateY(-100%); -} + .tsd-kind-project { + color: var(--color-ts-project); + } + .tsd-kind-module { + color: var(--color-ts-module); + } + .tsd-kind-namespace { + color: var(--color-ts-namespace); + } + .tsd-kind-enum { + color: var(--color-ts-enum); + } + .tsd-kind-enum-member { + color: var(--color-ts-enum-member); + } + .tsd-kind-variable { + color: var(--color-ts-variable); + } + .tsd-kind-function { + color: var(--color-ts-function); + } + .tsd-kind-class { + color: var(--color-ts-class); + } + .tsd-kind-interface { + color: var(--color-ts-interface); + } + .tsd-kind-constructor { + color: var(--color-ts-constructor); + } + .tsd-kind-property { + color: var(--color-ts-property); + } + .tsd-kind-method { + color: var(--color-ts-method); + } + .tsd-kind-reference { + color: var(--color-ts-reference); + } + .tsd-kind-call-signature { + color: var(--color-ts-call-signature); + } + .tsd-kind-index-signature { + color: var(--color-ts-index-signature); + } + .tsd-kind-constructor-signature { + color: var(--color-ts-constructor-signature); + } + .tsd-kind-parameter { + color: var(--color-ts-parameter); + } + .tsd-kind-type-parameter { + color: var(--color-ts-type-parameter); + } + .tsd-kind-accessor { + color: var(--color-ts-accessor); + } + .tsd-kind-get-signature { + color: var(--color-ts-get-signature); + } + .tsd-kind-set-signature { + color: var(--color-ts-set-signature); + } + .tsd-kind-type-alias { + color: var(--color-ts-type-alias); + } -.tsd-select .tsd-select-list li:before, -.tsd-select .tsd-select-label:before, -.tsd-widget:before { - content: ""; - display: inline-block; - width: 40px; - height: 40px; - margin: 0 -8px 0 0; - background-image: url(./widgets.png); - background-repeat: no-repeat; - text-indent: -1024px; - vertical-align: bottom; - filter: var(--icon-filter); -} -@media (-webkit-min-device-pixel-ratio: 1.5), (min-resolution: 144dpi) { - .tsd-select .tsd-select-list li:before, - .tsd-select .tsd-select-label:before, - .tsd-widget:before { - background-image: url(./widgets@2x.png); - background-size: 320px 40px; + /* if we have a kind icon, don't color the text by kind */ + .tsd-kind-icon ~ span { + color: var(--color-text); } -} -.tsd-widget { - display: inline-block; - overflow: hidden; - opacity: 0.8; - height: 40px; - transition: opacity 0.1s, background-color 0.2s; - vertical-align: bottom; - cursor: pointer; -} -.tsd-widget:hover { - opacity: 0.9; -} -.tsd-widget.active { - opacity: 1; - background-color: var(--color-panel-divider); -} -.tsd-widget.no-caption { - width: 40px; -} -.tsd-widget.no-caption:before { - margin: 0; -} -.tsd-widget.search:before { - background-position: 0 0; -} -.tsd-widget.menu:before { - background-position: -40px 0; -} -.tsd-widget.options:before { - background-position: -80px 0; -} -.tsd-widget.options, -.tsd-widget.menu { - display: none; -} -@media (max-width: 900px) { - .tsd-widget.options, - .tsd-widget.menu { - display: inline-block; + /* mobile */ + @media (max-width: 769px) { + #tsd-toolbar-menu-trigger { + display: inline-block; + /* temporary fix to vertically align, for compatibility */ + line-height: 2.5; + } + #tsd-toolbar-links { + display: none; + } + + .container-main { + display: flex; + } + .col-content { + float: none; + max-width: 100%; + width: 100%; + } + .col-sidebar { + position: fixed !important; + overflow-y: auto; + -webkit-overflow-scrolling: touch; + z-index: 1024; + top: 0 !important; + bottom: 0 !important; + left: auto !important; + right: 0 !important; + padding: 1.5rem 1.5rem 0 0; + width: 75vw; + visibility: hidden; + background-color: var(--color-background); + transform: translate(100%, 0); + } + .col-sidebar > *:last-child { + padding-bottom: 20px; + } + .overlay { + content: ""; + display: block; + position: fixed; + z-index: 1023; + top: 0; + left: 0; + right: 0; + bottom: 0; + background-color: rgba(0, 0, 0, 0.75); + visibility: hidden; + } + + .to-has-menu .overlay { + animation: fade-in 0.4s; + } + + .to-has-menu .col-sidebar { + animation: pop-in-from-right 0.4s; + } + + .from-has-menu .overlay { + animation: fade-out 0.4s; + } + + .from-has-menu .col-sidebar { + animation: pop-out-to-right 0.4s; + } + + .has-menu body { + overflow: hidden; + } + .has-menu .overlay { + visibility: visible; + } + .has-menu .col-sidebar { + visibility: visible; + transform: translate(0, 0); + display: flex; + flex-direction: column; + gap: 1.5rem; + max-height: 100vh; + padding: 1rem 2rem; + } + .has-menu .tsd-navigation { + max-height: 100%; + } + .tsd-navigation .tsd-nav-link { + display: flex; + } } -} -input[type="checkbox"] + .tsd-widget:before { - background-position: -120px 0; -} -input[type="checkbox"]:checked + .tsd-widget:before { - background-position: -160px 0; -} -.tsd-select { - position: relative; - display: inline-block; - height: 40px; - transition: opacity 0.1s, background-color 0.2s; - vertical-align: bottom; - cursor: pointer; -} -.tsd-select .tsd-select-label { - opacity: 0.6; - transition: opacity 0.2s; -} -.tsd-select .tsd-select-label:before { - background-position: -240px 0; -} -.tsd-select.active .tsd-select-label { - opacity: 0.8; -} -.tsd-select.active .tsd-select-list { - visibility: visible; - opacity: 1; - transition-delay: 0s; -} -.tsd-select .tsd-select-list { - position: absolute; - visibility: hidden; - top: 40px; - left: 0; - margin: 0; - padding: 0; - opacity: 0; - list-style: none; - box-shadow: 0 0 4px rgba(0, 0, 0, 0.25); - transition: visibility 0s 0.2s, opacity 0.2s; -} -.tsd-select .tsd-select-list li { - padding: 0 20px 0 0; - background-color: var(--color-background); -} -.tsd-select .tsd-select-list li:before { - background-position: 40px 0; -} -.tsd-select .tsd-select-list li:nth-child(even) { - background-color: var(--color-panel); -} -.tsd-select .tsd-select-list li:hover { - background-color: var(--color-panel-divider); -} -.tsd-select .tsd-select-list li.selected:before { - background-position: -200px 0; -} -@media (max-width: 900px) { - .tsd-select .tsd-select-list { - top: 0; - left: auto; - right: 100%; - margin-right: -5px; + /* one sidebar */ + @media (min-width: 770px) { + .container-main { + display: grid; + grid-template-columns: minmax(0, 1fr) minmax(0, 2fr); + grid-template-areas: "sidebar content"; + --dim-container-main-margin-y: 2rem; + } + + .tsd-breadcrumb { + margin-top: 0; + } + + .col-sidebar { + grid-area: sidebar; + } + .col-content { + grid-area: content; + padding: 0 1rem; + } } - .tsd-select .tsd-select-label:before { - background-position: -280px 0; + @media (min-width: 770px) and (max-width: 1399px) { + .col-sidebar { + max-height: calc( + 100vh - var(--dim-header-height) - var(--dim-footer-height) - + 2 * var(--dim-container-main-margin-y) + ); + overflow: auto; + position: sticky; + top: calc( + var(--dim-header-height) + var(--dim-container-main-margin-y) + ); + } + .site-menu { + margin-top: 1rem; + } } -} -img { - max-width: 100%; + /* two sidebars */ + @media (min-width: 1200px) { + .container-main { + grid-template-columns: + minmax(0, 1fr) minmax(0, 2.5fr) minmax( + 0, + 20rem + ); + grid-template-areas: "sidebar content toc"; + } + + .col-sidebar { + display: contents; + } + + .page-menu { + grid-area: toc; + padding-left: 1rem; + } + .site-menu { + grid-area: sidebar; + } + + .site-menu { + margin-top: 0rem; + } + + .page-menu, + .site-menu { + max-height: calc( + 100vh - var(--dim-header-height) - var(--dim-footer-height) - + 2 * var(--dim-container-main-margin-y) + ); + overflow: auto; + position: sticky; + top: calc( + var(--dim-header-height) + var(--dim-container-main-margin-y) + ); + } + } } diff --git a/docs/assets/widgets.png b/docs/assets/widgets.png deleted file mode 100644 index c7380532ac1b45400620011c37c4dcb7aec27a4c..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 480 zcmeAS@N?(olHy`uVBq!ia0y~yU~~YoH8@y+q^jrZML>b&o-U3d6^w6h1+IPUz|;DW zIZ;96kdsD>Qv^q=09&hp0GpEni<1IR%gvP3v%OR9*{MuRTKWHZyIbuBt)Ci`cU_&% z1T+i^Y)o{%281-<3TpPAUTzw5v;RY=>1rvxmPl96#kYc9hX!6V^nB|ad#(S+)}?8C zr_H+lT3B#So$T=?$(w3-{rbQ4R<@nsf$}$hwSO)A$8&`(j+wQf=Jwhb0`CvhR5DCf z^OgI)KQemrUFPH+UynC$Y~QHG%DbTVh-Skz{enNU)cV_hPu~{TD7TPZl>0&K>iuE| z7AYn$7)Jrb9GE&SfQW4q&G*@N|4cHI`VakFa5-C!ov&XD)J(qp$rJJ*9e z-sHv}#g*T7Cv048d1v~BEAzM5FztAse#q78WWC^BUCzQ U&wLp6h6BX&boFyt=akR{0G%$)mH+?% diff --git a/docs/assets/widgets@2x.png b/docs/assets/widgets@2x.png deleted file mode 100644 index 4bbbd57272f3b28f47527d4951ad10f950b8ad43..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 855 zcmeAS@N?(olHy`uVBq!ia0y~yU}^xe12~w0Jcmn z@(X6T|9^jgLcx21{)7exgY)a>N6m2F0<`Rqr;B4q1>>88jUdw-7W`c)zLE*mq8W2H z-<&Jl_Hco5BuC5n@AbF5GD82~-e8-v=#zCyUX0F-o}8pPfAv`!GN$ff+TL<~@kgt} z62eO?_|&+>xBmM$@p|z`tIKEdpPf8%qI>4r7@jn<=eta*{3~?g(zz{Ke9zc-G^gr? z-7foa?LcS!hmbwzru}ICvbWLlW8;+l-}!^=c32!^nV`+`C*;0-*Y%l94pC;Cb3GXz zzSf%a!{gVr{Y_lVuUj+a)*Ca+!-Hu%xmP&&X-2CuANY8^i{D7Kg6qzP zXz_ps9+lN8ESH{K4`yu&b~I>N9xGlE&;2u*b?+Go!AhN?m-bxlLvtC#MzDF2kFzfHJ1W7ybqdefSqVhbOykd*Yi%EDuhs z4wF{ft^bv2+DDnKb8gj1FuvcV`M}luS>lO<^)8x>y1#R;a=-ZKwWTQQb)ioBbi;zh zD!f5V)8581to1LL7c9!l^PSC$NBPYif!_vAZhmL4)v4U)4UsrLYiH_9rmQDd?)(e5 z^pcH>qvBg*i0dus2r*mp4;zKvu=P#s-ti;2obl`NjjwoYd>e(oo#j_uyRb<7Pv^If zzZ|mGHmV)8^tbO%^>eqMw(@7(&3g{jEp-Najo7V75xI_ZHK*FA`elF{r5}E*d7+j_R diff --git a/docs/functions/default.html b/docs/functions/default.html new file mode 100644 index 0000000..0a2a171 --- /dev/null +++ b/docs/functions/default.html @@ -0,0 +1,4 @@ +default | @lopatnov/javascripttostring
@lopatnov/javascripttostring
    Preparing search index...

    Function default

    • Converts JavaScript value to string

      +

      Parameters

      • value: any

        the value of any type

        +
      • Optionaloptions: IJ2SOptions

        [optional] The options of conversion

        +

      Returns string

    diff --git a/docs/hierarchy.html b/docs/hierarchy.html new file mode 100644 index 0000000..b271361 --- /dev/null +++ b/docs/hierarchy.html @@ -0,0 +1 @@ +@lopatnov/javascripttostring
    @lopatnov/javascripttostring
      Preparing search index...

      @lopatnov/javascripttostring

      Hierarchy Summary

      diff --git a/docs/index.html b/docs/index.html index b8f5890..a4a427e 100644 --- a/docs/index.html +++ b/docs/index.html @@ -1,7 +1,4 @@ -@lopatnov/javascripttostring
      Options
      All
      • Public
      • Public/Protected
      • All
      Menu

      @lopatnov/javascripttostring

      - -

      JavaScriptToString Twitter

      - +@lopatnov/javascripttostring
      @lopatnov/javascripttostring
        Preparing search index...

        @lopatnov/javascripttostring

        JavaScriptToString Twitter

        npm NPM version License @@ -10,71 +7,59 @@

        JavaScriptToString GitHub stars GitHub top language

        Patreon -sobe.ru -LinkedIn

        +sobe.ru +LinkedIn

        Build Status

        JavaScript value to string runtime converter. It converts a runtime value into string a value.

        +

        +

        https://nodei.co/npm/@lopatnov/javascripttostring.png?downloads=true&downloadRank=true&stars=true

        +
        npm install @lopatnov/javascripttostring
        +
        - -

        Install

        -
        -

        https://nodei.co/npm/@lopatnov/javascripttostring.png?downloads=true&downloadRank=true&stars=true

        -
        npm install @lopatnov/javascripttostring
        -

        Browser

        -
        <script src="//lopatnov.github.io/jsToString/dist/javascripttostring.umd.js"></script>
        -
        +
        <script src="//lopatnov.github.io/jsToString/dist/javascripttostring.umd.js"></script>
        +
        - -

        Import package to the project

        -
        + + +
        import javaScriptToString from '@lopatnov/javascripttostring';
        +
        - -

        TypeScript

        -
        -
        import javaScriptToString from '@lopatnov/javascripttostring';
        -
        + +
        var javaScriptToString = require("@lopatnov/javascripttostring");
        +
        - -

        JavaScript

        -
        -
        var javaScriptToString = require("@lopatnov/javascripttostring");
        -
        + +
        javaScriptToString(value: any, options?: IJ2SOptions) => string
        +
        - -

        Convert JavaScript values into string values

        -
        -
        javaScriptToString(value: any, options?: IJ2SOptions) => string
        -

        where

        -
        interface IJ2SOptions {
        includeFunctionProperties?: boolean; // default true
        includeFunctionPrototype?: boolean; // default true
        includeBuffers?: boolean; // default true
        nestedObjectsAmount?: number; // default Number.POSITIVE_INFINITY
        nestedArraysAmount?: number; // default Number.POSITIVE_INFINITY
        nestedFunctionsAmount?: number; // default Number.POSITIVE_INFINITY
        } -
        +
        interface IJ2SOptions {
        includeFunctionProperties?: boolean; // default true
        includeFunctionPrototype?: boolean; // default true
        includeBuffers?: boolean; // default true
        nestedObjectsAmount?: number; // default Number.POSITIVE_INFINITY
        nestedArraysAmount?: number; // default Number.POSITIVE_INFINITY
        nestedFunctionsAmount?: number; // default Number.POSITIVE_INFINITY
        } +
        - -

        Examples

        -
        -
        let myStringOfString = javaScriptToString('Hello world');
        console.log(myStringOfString);
        /* expected myStringOfString value: "\"Hello world\"" */ -
        -
        let myStringOfArray = javaScriptToString(["Hello", "World", ".", "How", "do", "you", "do", "?"]);
        console.log(myStringOfArray);
        /* expected myStringOfArray value: "[\"Hello\",\"World\",\".\",\"How\",\"do\",\"you\",\"do\",\"?\"]" */ -
        -
        let myObjectString = javaScriptToString({
        friend1: "Shurik",
        friend2: "Alex",
        friends: {
        friend3: 123456,
        friend4: {},
        friend5: ["Hola", "amigo"],
        friend6: () => {
        console.log("How you doing?");
        }
        }
        });

        console.log(myObjectString);
        /* expected myObjectString value:
        "{friend1: \"Shurik\",friend2: \"Alex\",friends: {friend3: 123456,friend4: {},friend5: [\"Hola\",\"amigo\"],friend6: () => {
        console.log(\"How you doing?\");
        }}}"
        */ -
        -
        let myFunctionString = javaScriptToString(function(a,b) {
        console.log("Just a function");
        })

        console.log(myFunctionString);
        /* expected myFunctionString:
        "function(a,b) {
        console.log(\"Just a function\");
        }"
        */ -
        -
        function Simple(title) {
        this.title = title || "world";
        }

        Simple.count = 0;

        Simple.prototype.show = function(){
        Simple.count++;
        console.log('title = ', this.title);
        console.log('count = ', Simple.count);
        }
        console.log(javaScriptToString(Simple));

        /* Expected:

        "(function(){
        var Simple = function Simple(title) {
        this.title = title || \"world\";
        };
        Simple.count = 0;

        Simple.prototype.show = function(){
        Simple.count++;
        console.log('title = ', this.title);
        console.log('count = ', Simple.count);
        };

        return Simple;
        }())"

        */ -
        -
        var x = [1,2,3];
        x[0] = x;
        console.log(javaScriptToString(x));

        /*
        "(function(){ var ___j2s_0 = [null, 2, 3]; ___j2s_0['0'] = ___j2s_0; return ___j2s_0; }())"
        */ -
        + +
        let myStringOfString = javaScriptToString('Hello world');
        console.log(myStringOfString);
        /* expected myStringOfString value: "\"Hello world\"" */ +
        - -

        Demo

        -
        -

        See, how it's working: https://runkit.com/lopatnov/javascripttostring-demo

        -

        Test it with a runkit: https://npm.runkit.com/%40lopatnov%2Fjavascripttostring

        +
        let myStringOfArray = javaScriptToString(["Hello", "World", ".", "How", "do", "you", "do", "?"]);
        console.log(myStringOfArray);
        /* expected myStringOfArray value: "[\"Hello\",\"World\",\".\",\"How\",\"do\",\"you\",\"do\",\"?\"]" */ +
        + +
        let myObjectString = javaScriptToString({
        friend1: "Shurik",
        friend2: "Alex",
        friends: {
        friend3: 123456,
        friend4: {},
        friend5: ["Hola", "amigo"],
        friend6: () => {
        console.log("How you doing?");
        }
        }
        });

        console.log(myObjectString);
        /* expected myObjectString value:
        "{friend1: \"Shurik\",friend2: \"Alex\",friends: {friend3: 123456,friend4: {},friend5: [\"Hola\",\"amigo\"],friend6: () => {
        console.log(\"How you doing?\");
        }}}"
        */ +
        + +
        let myFunctionString = javaScriptToString(function(a,b) {
        console.log("Just a function");
        })

        console.log(myFunctionString);
        /* expected myFunctionString:
        "function(a,b) {
        console.log(\"Just a function\");
        }"
        */ +
        - -

        Rights and Agreements

        -
        +
        function Simple(title) {
        this.title = title || "world";
        }

        Simple.count = 0;

        Simple.prototype.show = function(){
        Simple.count++;
        console.log('title = ', this.title);
        console.log('count = ', Simple.count);
        }
        console.log(javaScriptToString(Simple));

        /* Expected:

        "(function(){
        var Simple = function Simple(title) {
        this.title = title || \"world\";
        };
        Simple.count = 0;

        Simple.prototype.show = function(){
        Simple.count++;
        console.log('title = ', this.title);
        console.log('count = ', Simple.count);
        };

        return Simple;
        }())"

        */ +
        + +
        var x = [1,2,3];
        x[0] = x;
        console.log(javaScriptToString(x));

        /*
        "(function(){ var ___j2s_0 = [null, 2, 3]; ___j2s_0['0'] = ___j2s_0; return ___j2s_0; }())"
        */ +
        + + +

        See, how it's working: https://runkit.com/lopatnov/javascripttostring-demo

        +

        Test it with a runkit: https://npm.runkit.com/%40lopatnov%2Fjavascripttostring

        +

        License Apache-2.0

        Copyright 2019–2021 Oleksandr Lopatnov

        -

        Legend

        • Property

        Settings

        Theme

        Generated using TypeDoc

        \ No newline at end of file +
        diff --git a/docs/interfaces/ij2soptions.html b/docs/interfaces/ij2soptions.html index 759ff51..c80f61c 100644 --- a/docs/interfaces/ij2soptions.html +++ b/docs/interfaces/ij2soptions.html @@ -1 +1,7 @@ -IJ2SOptions | @lopatnov/javascripttostring
        Options
        All
        • Public
        • Public/Protected
        • All
        Menu

        Hierarchy

        • IJ2SOptions

        Index

        Properties

        Optional includeBuffers

        includeBuffers?: boolean

        Optional includeFunctionProperties

        includeFunctionProperties?: boolean

        Optional includeFunctionPrototype

        includeFunctionPrototype?: boolean

        Optional nestedArraysAmount

        nestedArraysAmount?: number

        Optional nestedFunctionsAmount

        nestedFunctionsAmount?: number

        Optional nestedObjectsAmount

        nestedObjectsAmount?: number

        Legend

        • Property

        Settings

        Theme

        Generated using TypeDoc

        \ No newline at end of file +IJ2SOptions | @lopatnov/javascripttostring
        @lopatnov/javascripttostring
          Preparing search index...

          Interface IJ2SOptions

          interface IJ2SOptions {
              includeBuffers?: boolean;
              includeFunctionProperties?: boolean;
              includeFunctionPrototype?: boolean;
              nestedArraysAmount?: number;
              nestedFunctionsAmount?: number;
              nestedObjectsAmount?: number;
          }
          Index

          Properties

          includeBuffers?: boolean
          includeFunctionProperties?: boolean
          includeFunctionPrototype?: boolean
          nestedArraysAmount?: number
          nestedFunctionsAmount?: number
          nestedObjectsAmount?: number
          diff --git a/docs/modules.html b/docs/modules.html index 96776fa..916b01d 100644 --- a/docs/modules.html +++ b/docs/modules.html @@ -1,7 +1 @@ -@lopatnov/javascripttostring
          Options
          All
          • Public
          • Public/Protected
          • All
          Menu

          @lopatnov/javascripttostring

          Index

          Interfaces

          Functions

          Functions

          default

          • -

            Converts JavaScript value to string

            -

            Parameters

            • value: any
              -

              the value of any type

              -
            • Optional options: IJ2SOptions
              -

              The options of conversion

              -

            Returns string

          Legend

          • Property

          Settings

          Theme

          Generated using TypeDoc

          \ No newline at end of file +@lopatnov/javascripttostring
          @lopatnov/javascripttostring
            Preparing search index...

              @lopatnov/javascripttostring

              Interfaces

              IJ2SOptions

              Functions

              default
              diff --git a/jest.config.js b/jest.config.js index 81b63f2..4f59819 100644 --- a/jest.config.js +++ b/jest.config.js @@ -2,190 +2,42 @@ // https://jestjs.io/docs/en/configuration.html module.exports = { - // All imported modules in your tests should be mocked automatically - // automock: false, - - // Stop running tests after `n` failures - // bail: 0, - - // Respect "browser" field in package.json when resolving modules - // browser: false, - - // The directory where Jest should store its cached dependency information - // cacheDirectory: "C:\\Users\\User\\AppData\\Local\\Temp\\jest", - // Automatically clear mock calls and instances between every test clearMocks: true, // Indicates whether the coverage information should be collected while executing the test - // collectCoverage: false, + collectCoverage: true, // An array of glob patterns indicating a set of files for which coverage information should be collected - // collectCoverageFrom: null, + collectCoverageFrom: ['src/**/*.ts'], // The directory where Jest should output its coverage files coverageDirectory: "coverage", - // An array of regexp pattern strings used to skip coverage collection - // coveragePathIgnorePatterns: [ - // "\\\\node_modules\\\\" - // ], - // A list of reporter names that Jest uses when writing coverage reports - // coverageReporters: [ - // "json", - // "text", - // "lcov", - // "clover" - // ], + coverageReporters: ["text", "lcov", "html"], // An object that configures minimum threshold enforcement for coverage results - // coverageThreshold: null, - - // A path to a custom dependency extractor - // dependencyExtractor: null, - - // Make calling deprecated APIs throw helpful error messages - // errorOnDeprecated: false, - - // Force coverage collection from ignored files using an array of glob patterns - // forceCoverageMatch: [], - - // A path to a module which exports an async function that is triggered once before all test suites - // globalSetup: null, - - // A path to a module which exports an async function that is triggered once after all test suites - // globalTeardown: null, - - // A set of global variables that need to be available in all test environments - // globals: {}, - - // The maximum amount of workers used to run your tests. Can be specified as % or a number. E.g. maxWorkers: 10% will use 10% of your CPU amount + 1 as the maximum worker number. maxWorkers: 2 will use a maximum of 2 workers. - // maxWorkers: "50%", - - // An array of directory names to be searched recursively up from the requiring module's location - // moduleDirectories: [ - // "node_modules" - // ], - - // An array of file extensions your modules use - // moduleFileExtensions: [ - // "js", - // "json", - // "jsx", - // "ts", - // "tsx", - // "node" - // ], - - // A map from regular expressions to module names that allow to stub out resources with a single module - // moduleNameMapper: {}, - - // An array of regexp pattern strings, matched against all module paths before considered 'visible' to the module loader - // modulePathIgnorePatterns: [], - - // Activates notifications for test results - // notify: false, - - // An enum that specifies notification mode. Requires { notify: true } - // notifyMode: "failure-change", - - // A preset that is used as a base for Jest's configuration - // preset: null, - - // Run tests from one or more projects - // projects: null, - - // Use this configuration option to add custom reporters to Jest - // reporters: undefined, - - // Automatically reset mock state between every test - // resetMocks: false, - - // Reset the module registry before running each individual test - // resetModules: false, - - // A path to a custom resolver - // resolver: null, - - // Automatically restore mock state between every test - // restoreMocks: false, - - // The root directory that Jest should scan for tests and modules within - // rootDir: null, + coverageThreshold: { + global: { + branches: 70, + functions: 80, + lines: 80, + statements: 80 + } + }, // A list of paths to directories that Jest should use to search for files in roots: [ - "./src", - "./test" + "./src", + "./test" ], - // Allows you to use a custom runner instead of Jest's default test runner - // runner: "jest-runner", - - // The paths to modules that run some code to configure or set up the testing environment before each test - // setupFiles: [], - - // A list of paths to modules that run some code to configure or set up the testing framework before each test - // setupFilesAfterEnv: [], - - // A list of paths to snapshot serializer modules Jest should use for snapshot testing - // snapshotSerializers: [], - // The test environment that will be used for testing testEnvironment: "node", - // Options that will be passed to the testEnvironment - // testEnvironmentOptions: {}, - - // Adds a location field to test results - // testLocationInResults: false, - - // The glob patterns Jest uses to detect test files - // testMatch: [ - // "**/__tests__/**/*.[jt]s?(x)", - // "**/?(*.)+(spec|test).[tj]s?(x)" - // ], - - // An array of regexp pattern strings that are matched against all test paths, matched tests are skipped - // testPathIgnorePatterns: [ - // "\\\\node_modules\\\\" - // ], - - // The regexp pattern or array of patterns that Jest uses to detect test files - // testRegex: [], - - // This option allows the use of a custom results processor - // testResultsProcessor: null, - - // This option allows use of a custom test runner - // testRunner: "jasmine2", - - // This option sets the URL for the jsdom environment. It is reflected in properties such as location.href - // testURL: "http://localhost", - - // Setting this value to "fake" allows the use of fake timers for functions such as "setTimeout" - // timers: "real", - // A map from regular expressions to paths to transformers - "transform": { + transform: { "^.+\\.tsx?$": "ts-jest" }, - - // An array of regexp pattern strings that are matched against all source file paths, matched files will skip transformation - // transformIgnorePatterns: [ - // "\\\\node_modules\\\\" - // ], - - // An array of regexp pattern strings that are matched against all modules before the module loader will automatically return a mock for them - // unmockedModulePathPatterns: undefined, - - // Indicates whether each individual test should be reported during the run - // verbose: null, - - // An array of regexp patterns that are matched against all source file paths before re-running tests in watch mode - // watchPathIgnorePatterns: [], - - // Whether to use watchman for file crawling - // watchman: true, }; diff --git a/package-lock.json b/package-lock.json index c20f366..d511ad7 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,7 +1,7 @@ { "name": "@lopatnov/javascripttostring", "version": "1.7.3", - "lockfileVersion": 2, + "lockfileVersion": 3, "requires": true, "packages": { "": { @@ -12,66 +12,76 @@ "@lopatnov/get-internal-type": "^1.5.7" }, "devDependencies": { - "@lopatnov/rollup-plugin-uglify": "^2.1.1", - "@types/jest": "^27.0.2", - "@types/node": "^16.10.2", - "jest": "^27.2.4", - "jest-config": "^27.2.4", + "@biomejs/biome": "^2.3.14", + "@lopatnov/rollup-plugin-uglify": "^3.0.0", + "@rollup/plugin-commonjs": "^29.0.0", + "@rollup/plugin-json": "^6.1.0", + "@rollup/plugin-node-resolve": "^16.0.0", + "@rollup/plugin-typescript": "^12.1.2", + "@types/jest": "^30.0.0", + "@types/node": "^25.2.3", + "jest": "^30.0.0", + "jest-config": "^30.0.0", "lodash.camelcase": "^4.3.0", - "rollup": "^2.58.0", - "rollup-plugin-commonjs": "^10.1.0", - "rollup-plugin-json": "^4.0.0", - "rollup-plugin-node-resolve": "^5.2.0", - "rollup-plugin-sourcemaps": "^0.6.3", - "rollup-plugin-typescript2": "^0.30.0", - "terser": "^5.9.0", - "ts-jest": "^27.0.5", - "typedoc": "^0.22.5", - "typescript": "^4.4.3" + "rollup": "^4.41.0", + "terser": "^5.39.0", + "ts-jest": "^29.3.4", + "tslib": "^2.8.1", + "typedoc": "^0.28.5", + "typescript": "^5.8.3" + }, + "engines": { + "node": ">=18.0.0" } }, "node_modules/@babel/code-frame": { - "version": "7.14.5", - "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.14.5.tgz", - "integrity": "sha512-9pzDqyc6OLDaqe+zbACgFkb6fKMNG6CObKpnYXChRsvYGyEdc7CA2BaqeOM+vOtCS5ndmJicPJhKAwYRI6UfFw==", + "version": "7.29.0", + "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.29.0.tgz", + "integrity": "sha512-9NhCeYjq9+3uxgdtp20LSiJXJvN0FeCtNGpJxuMFZ1Kv3cWUNb6DOhJwUvcVCzKGR66cw4njwM6hrJLqgOwbcw==", "dev": true, + "license": "MIT", "dependencies": { - "@babel/highlight": "^7.14.5" + "@babel/helper-validator-identifier": "^7.28.5", + "js-tokens": "^4.0.0", + "picocolors": "^1.1.1" }, "engines": { "node": ">=6.9.0" } }, "node_modules/@babel/compat-data": { - "version": "7.15.0", - "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.15.0.tgz", - "integrity": "sha512-0NqAC1IJE0S0+lL1SWFMxMkz1pKCNCjI4tr2Zx4LJSXxCLAdr6KyArnY+sno5m3yH9g737ygOyPABDsnXkpxiA==", + "version": "7.29.0", + "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.29.0.tgz", + "integrity": "sha512-T1NCJqT/j9+cn8fvkt7jtwbLBfLC/1y1c7NtCeXFRgzGTsafi68MRv8yzkYSapBnFA6L3U2VSc02ciDzoAJhJg==", "dev": true, + "license": "MIT", "engines": { "node": ">=6.9.0" } }, "node_modules/@babel/core": { - "version": "7.15.5", - "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.15.5.tgz", - "integrity": "sha512-pYgXxiwAgQpgM1bNkZsDEq85f0ggXMA5L7c+o3tskGMh2BunCI9QUwB9Z4jpvXUOuMdyGKiGKQiRe11VS6Jzvg==", - "dev": true, - "dependencies": { - "@babel/code-frame": "^7.14.5", - "@babel/generator": "^7.15.4", - "@babel/helper-compilation-targets": "^7.15.4", - "@babel/helper-module-transforms": "^7.15.4", - "@babel/helpers": "^7.15.4", - "@babel/parser": "^7.15.5", - "@babel/template": "^7.15.4", - "@babel/traverse": "^7.15.4", - "@babel/types": "^7.15.4", - "convert-source-map": "^1.7.0", + "version": "7.29.0", + "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.29.0.tgz", + "integrity": "sha512-CGOfOJqWjg2qW/Mb6zNsDm+u5vFQ8DxXfbM09z69p5Z6+mE1ikP2jUXw+j42Pf1XTYED2Rni5f95npYeuwMDQA==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "@babel/code-frame": "^7.29.0", + "@babel/generator": "^7.29.0", + "@babel/helper-compilation-targets": "^7.28.6", + "@babel/helper-module-transforms": "^7.28.6", + "@babel/helpers": "^7.28.6", + "@babel/parser": "^7.29.0", + "@babel/template": "^7.28.6", + "@babel/traverse": "^7.29.0", + "@babel/types": "^7.29.0", + "@jridgewell/remapping": "^2.3.5", + "convert-source-map": "^2.0.0", "debug": "^4.1.0", "gensync": "^1.0.0-beta.2", - "json5": "^2.1.2", - "semver": "^6.3.0", - "source-map": "^0.5.0" + "json5": "^2.2.3", + "semver": "^6.3.1" }, "engines": { "node": ">=6.9.0" @@ -81,319 +91,145 @@ "url": "https://opencollective.com/babel" } }, - "node_modules/@babel/core/node_modules/source-map": { - "version": "0.5.7", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz", - "integrity": "sha1-igOdLRAh0i0eoUyA2OpGi6LvP8w=", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, "node_modules/@babel/generator": { - "version": "7.15.4", - "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.15.4.tgz", - "integrity": "sha512-d3itta0tu+UayjEORPNz6e1T3FtvWlP5N4V5M+lhp/CxT4oAA7/NcScnpRyspUMLK6tu9MNHmQHxRykuN2R7hw==", + "version": "7.29.1", + "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.29.1.tgz", + "integrity": "sha512-qsaF+9Qcm2Qv8SRIMMscAvG4O3lJ0F1GuMo5HR/Bp02LopNgnZBC/EkbevHFeGs4ls/oPz9v+Bsmzbkbe+0dUw==", "dev": true, + "license": "MIT", "dependencies": { - "@babel/types": "^7.15.4", - "jsesc": "^2.5.1", - "source-map": "^0.5.0" + "@babel/parser": "^7.29.0", + "@babel/types": "^7.29.0", + "@jridgewell/gen-mapping": "^0.3.12", + "@jridgewell/trace-mapping": "^0.3.28", + "jsesc": "^3.0.2" }, "engines": { "node": ">=6.9.0" } }, - "node_modules/@babel/generator/node_modules/source-map": { - "version": "0.5.7", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz", - "integrity": "sha1-igOdLRAh0i0eoUyA2OpGi6LvP8w=", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, "node_modules/@babel/helper-compilation-targets": { - "version": "7.15.4", - "resolved": "https://registry.npmjs.org/@babel/helper-compilation-targets/-/helper-compilation-targets-7.15.4.tgz", - "integrity": "sha512-rMWPCirulnPSe4d+gwdWXLfAXTTBj8M3guAf5xFQJ0nvFY7tfNAFnWdqaHegHlgDZOCT4qvhF3BYlSJag8yhqQ==", - "dev": true, - "dependencies": { - "@babel/compat-data": "^7.15.0", - "@babel/helper-validator-option": "^7.14.5", - "browserslist": "^4.16.6", - "semver": "^6.3.0" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0" - } - }, - "node_modules/@babel/helper-function-name": { - "version": "7.15.4", - "resolved": "https://registry.npmjs.org/@babel/helper-function-name/-/helper-function-name-7.15.4.tgz", - "integrity": "sha512-Z91cOMM4DseLIGOnog+Z8OI6YseR9bua+HpvLAQ2XayUGU+neTtX+97caALaLdyu53I/fjhbeCnWnRH1O3jFOw==", - "dev": true, - "dependencies": { - "@babel/helper-get-function-arity": "^7.15.4", - "@babel/template": "^7.15.4", - "@babel/types": "^7.15.4" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/helper-get-function-arity": { - "version": "7.15.4", - "resolved": "https://registry.npmjs.org/@babel/helper-get-function-arity/-/helper-get-function-arity-7.15.4.tgz", - "integrity": "sha512-1/AlxSF92CmGZzHnC515hm4SirTxtpDnLEJ0UyEMgTMZN+6bxXKg04dKhiRx5Enel+SUA1G1t5Ed/yQia0efrA==", - "dev": true, - "dependencies": { - "@babel/types": "^7.15.4" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/helper-hoist-variables": { - "version": "7.15.4", - "resolved": "https://registry.npmjs.org/@babel/helper-hoist-variables/-/helper-hoist-variables-7.15.4.tgz", - "integrity": "sha512-VTy085egb3jUGVK9ycIxQiPbquesq0HUQ+tPO0uv5mPEBZipk+5FkRKiWq5apuyTE9FUrjENB0rCf8y+n+UuhA==", + "version": "7.28.6", + "resolved": "https://registry.npmjs.org/@babel/helper-compilation-targets/-/helper-compilation-targets-7.28.6.tgz", + "integrity": "sha512-JYtls3hqi15fcx5GaSNL7SCTJ2MNmjrkHXg4FSpOA/grxK8KwyZ5bubHsCq8FXCkua6xhuaaBit+3b7+VZRfcA==", "dev": true, + "license": "MIT", "dependencies": { - "@babel/types": "^7.15.4" + "@babel/compat-data": "^7.28.6", + "@babel/helper-validator-option": "^7.27.1", + "browserslist": "^4.24.0", + "lru-cache": "^5.1.1", + "semver": "^6.3.1" }, "engines": { "node": ">=6.9.0" } }, - "node_modules/@babel/helper-member-expression-to-functions": { - "version": "7.15.4", - "resolved": "https://registry.npmjs.org/@babel/helper-member-expression-to-functions/-/helper-member-expression-to-functions-7.15.4.tgz", - "integrity": "sha512-cokOMkxC/BTyNP1AlY25HuBWM32iCEsLPI4BHDpJCHHm1FU2E7dKWWIXJgQgSFiu4lp8q3bL1BIKwqkSUviqtA==", + "node_modules/@babel/helper-globals": { + "version": "7.28.0", + "resolved": "https://registry.npmjs.org/@babel/helper-globals/-/helper-globals-7.28.0.tgz", + "integrity": "sha512-+W6cISkXFa1jXsDEdYA8HeevQT/FULhxzR99pxphltZcVaugps53THCeiWA8SguxxpSp3gKPiuYfSWopkLQ4hw==", "dev": true, - "dependencies": { - "@babel/types": "^7.15.4" - }, + "license": "MIT", "engines": { "node": ">=6.9.0" } }, "node_modules/@babel/helper-module-imports": { - "version": "7.15.4", - "resolved": "https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.15.4.tgz", - "integrity": "sha512-jeAHZbzUwdW/xHgHQ3QmWR4Jg6j15q4w/gCfwZvtqOxoo5DKtLHk8Bsf4c5RZRC7NmLEs+ohkdq8jFefuvIxAA==", + "version": "7.28.6", + "resolved": "https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.28.6.tgz", + "integrity": "sha512-l5XkZK7r7wa9LucGw9LwZyyCUscb4x37JWTPz7swwFE/0FMQAGpiWUZn8u9DzkSBWEcK25jmvubfpw2dnAMdbw==", "dev": true, + "license": "MIT", "dependencies": { - "@babel/types": "^7.15.4" + "@babel/traverse": "^7.28.6", + "@babel/types": "^7.28.6" }, "engines": { "node": ">=6.9.0" } }, "node_modules/@babel/helper-module-transforms": { - "version": "7.15.7", - "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.15.7.tgz", - "integrity": "sha512-ZNqjjQG/AuFfekFTY+7nY4RgBSklgTu970c7Rj3m/JOhIu5KPBUuTA9AY6zaKcUvk4g6EbDXdBnhi35FAssdSw==", + "version": "7.28.6", + "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.28.6.tgz", + "integrity": "sha512-67oXFAYr2cDLDVGLXTEABjdBJZ6drElUSI7WKp70NrpyISso3plG9SAGEF6y7zbha/wOzUByWWTJvEDVNIUGcA==", "dev": true, + "license": "MIT", "dependencies": { - "@babel/helper-module-imports": "^7.15.4", - "@babel/helper-replace-supers": "^7.15.4", - "@babel/helper-simple-access": "^7.15.4", - "@babel/helper-split-export-declaration": "^7.15.4", - "@babel/helper-validator-identifier": "^7.15.7", - "@babel/template": "^7.15.4", - "@babel/traverse": "^7.15.4", - "@babel/types": "^7.15.6" + "@babel/helper-module-imports": "^7.28.6", + "@babel/helper-validator-identifier": "^7.28.5", + "@babel/traverse": "^7.28.6" }, "engines": { "node": ">=6.9.0" - } - }, - "node_modules/@babel/helper-optimise-call-expression": { - "version": "7.15.4", - "resolved": "https://registry.npmjs.org/@babel/helper-optimise-call-expression/-/helper-optimise-call-expression-7.15.4.tgz", - "integrity": "sha512-E/z9rfbAOt1vDW1DR7k4SzhzotVV5+qMciWV6LaG1g4jeFrkDlJedjtV4h0i4Q/ITnUu+Pk08M7fczsB9GXBDw==", - "dev": true, - "dependencies": { - "@babel/types": "^7.15.4" }, - "engines": { - "node": ">=6.9.0" + "peerDependencies": { + "@babel/core": "^7.0.0" } }, "node_modules/@babel/helper-plugin-utils": { - "version": "7.14.5", - "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.14.5.tgz", - "integrity": "sha512-/37qQCE3K0vvZKwoK4XU/irIJQdIfCJuhU5eKnNxpFDsOkgFaUAwbv+RYw6eYgsC0E4hS7r5KqGULUogqui0fQ==", + "version": "7.28.6", + "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.28.6.tgz", + "integrity": "sha512-S9gzZ/bz83GRysI7gAD4wPT/AI3uCnY+9xn+Mx/KPs2JwHJIz1W8PZkg2cqyt3RNOBM8ejcXhV6y8Og7ly/Dug==", "dev": true, + "license": "MIT", "engines": { "node": ">=6.9.0" } }, - "node_modules/@babel/helper-replace-supers": { - "version": "7.15.4", - "resolved": "https://registry.npmjs.org/@babel/helper-replace-supers/-/helper-replace-supers-7.15.4.tgz", - "integrity": "sha512-/ztT6khaXF37MS47fufrKvIsiQkx1LBRvSJNzRqmbyeZnTwU9qBxXYLaaT/6KaxfKhjs2Wy8kG8ZdsFUuWBjzw==", + "node_modules/@babel/helper-string-parser": { + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.27.1.tgz", + "integrity": "sha512-qMlSxKbpRlAridDExk92nSobyDdpPijUq2DW6oDnUqd0iOGxmQjyqhMIihI9+zv4LPyZdRje2cavWPbCbWm3eA==", "dev": true, - "dependencies": { - "@babel/helper-member-expression-to-functions": "^7.15.4", - "@babel/helper-optimise-call-expression": "^7.15.4", - "@babel/traverse": "^7.15.4", - "@babel/types": "^7.15.4" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/helper-simple-access": { - "version": "7.15.4", - "resolved": "https://registry.npmjs.org/@babel/helper-simple-access/-/helper-simple-access-7.15.4.tgz", - "integrity": "sha512-UzazrDoIVOZZcTeHHEPYrr1MvTR/K+wgLg6MY6e1CJyaRhbibftF6fR2KU2sFRtI/nERUZR9fBd6aKgBlIBaPg==", - "dev": true, - "dependencies": { - "@babel/types": "^7.15.4" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/helper-split-export-declaration": { - "version": "7.15.4", - "resolved": "https://registry.npmjs.org/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.15.4.tgz", - "integrity": "sha512-HsFqhLDZ08DxCpBdEVtKmywj6PQbwnF6HHybur0MAnkAKnlS6uHkwnmRIkElB2Owpfb4xL4NwDmDLFubueDXsw==", - "dev": true, - "dependencies": { - "@babel/types": "^7.15.4" - }, + "license": "MIT", "engines": { "node": ">=6.9.0" } }, "node_modules/@babel/helper-validator-identifier": { - "version": "7.15.7", - "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.15.7.tgz", - "integrity": "sha512-K4JvCtQqad9OY2+yTU8w+E82ywk/fe+ELNlt1G8z3bVGlZfn/hOcQQsUhGhW/N+tb3fxK800wLtKOE/aM0m72w==", + "version": "7.28.5", + "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.28.5.tgz", + "integrity": "sha512-qSs4ifwzKJSV39ucNjsvc6WVHs6b7S03sOh2OcHF9UHfVPqWWALUsNUVzhSBiItjRZoLHx7nIarVjqKVusUZ1Q==", "dev": true, + "license": "MIT", "engines": { "node": ">=6.9.0" } }, "node_modules/@babel/helper-validator-option": { - "version": "7.14.5", - "resolved": "https://registry.npmjs.org/@babel/helper-validator-option/-/helper-validator-option-7.14.5.tgz", - "integrity": "sha512-OX8D5eeX4XwcroVW45NMvoYaIuFI+GQpA2a8Gi+X/U/cDUIRsV37qQfF905F0htTRCREQIB4KqPeaveRJUl3Ow==", + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/helper-validator-option/-/helper-validator-option-7.27.1.tgz", + "integrity": "sha512-YvjJow9FxbhFFKDSuFnVCe2WxXk1zWc22fFePVNEaWJEu8IrZVlda6N0uHwzZrUM1il7NC9Mlp4MaJYbYd9JSg==", "dev": true, + "license": "MIT", "engines": { "node": ">=6.9.0" } }, "node_modules/@babel/helpers": { - "version": "7.15.4", - "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.15.4.tgz", - "integrity": "sha512-V45u6dqEJ3w2rlryYYXf6i9rQ5YMNu4FLS6ngs8ikblhu2VdR1AqAd6aJjBzmf2Qzh6KOLqKHxEN9+TFbAkAVQ==", - "dev": true, - "dependencies": { - "@babel/template": "^7.15.4", - "@babel/traverse": "^7.15.4", - "@babel/types": "^7.15.4" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/highlight": { - "version": "7.14.5", - "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.14.5.tgz", - "integrity": "sha512-qf9u2WFWVV0MppaL877j2dBtQIDgmidgjGk5VIMw3OadXvYaXn66U1BFlH2t4+t3i+8PhedppRv+i40ABzd+gg==", + "version": "7.28.6", + "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.28.6.tgz", + "integrity": "sha512-xOBvwq86HHdB7WUDTfKfT/Vuxh7gElQ+Sfti2Cy6yIWNW05P8iUslOVcZ4/sKbE+/jQaukQAdz/gf3724kYdqw==", "dev": true, + "license": "MIT", "dependencies": { - "@babel/helper-validator-identifier": "^7.14.5", - "chalk": "^2.0.0", - "js-tokens": "^4.0.0" + "@babel/template": "^7.28.6", + "@babel/types": "^7.28.6" }, "engines": { "node": ">=6.9.0" } }, - "node_modules/@babel/highlight/node_modules/ansi-styles": { - "version": "3.2.1", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", - "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", - "dev": true, - "dependencies": { - "color-convert": "^1.9.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/@babel/highlight/node_modules/chalk": { - "version": "2.4.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", - "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", - "dev": true, - "dependencies": { - "ansi-styles": "^3.2.1", - "escape-string-regexp": "^1.0.5", - "supports-color": "^5.3.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/@babel/highlight/node_modules/color-convert": { - "version": "1.9.3", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz", - "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", - "dev": true, - "dependencies": { - "color-name": "1.1.3" - } - }, - "node_modules/@babel/highlight/node_modules/color-name": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", - "integrity": "sha1-p9BVi9icQveV3UIyj3QIMcpTvCU=", - "dev": true - }, - "node_modules/@babel/highlight/node_modules/escape-string-regexp": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", - "integrity": "sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ=", - "dev": true, - "engines": { - "node": ">=0.8.0" - } - }, - "node_modules/@babel/highlight/node_modules/has-flag": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", - "integrity": "sha1-tdRU3CGZriJWmfNGfloH87lVuv0=", - "dev": true, - "engines": { - "node": ">=4" - } - }, - "node_modules/@babel/highlight/node_modules/supports-color": { - "version": "5.5.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", - "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", + "node_modules/@babel/parser": { + "version": "7.29.0", + "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.29.0.tgz", + "integrity": "sha512-IyDgFV5GeDUVX4YdF/3CPULtVGSXXMLh1xVIgdCgxApktqnQV0r7/8Nqthg+8YLGaAtdyIlo2qIdZrbCv4+7ww==", "dev": true, + "license": "MIT", "dependencies": { - "has-flag": "^3.0.0" + "@babel/types": "^7.29.0" }, - "engines": { - "node": ">=4" - } - }, - "node_modules/@babel/parser": { - "version": "7.15.7", - "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.15.7.tgz", - "integrity": "sha512-rycZXvQ+xS9QyIcJ9HXeDWf1uxqlbVFAUq0Rq0dbc50Zb/+wUe/ehyfzGfm9KZZF0kBejYgxltBXocP+gKdL2g==", - "dev": true, "bin": { "parser": "bin/babel-parser.js" }, @@ -406,6 +242,7 @@ "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-async-generators/-/plugin-syntax-async-generators-7.8.4.tgz", "integrity": "sha512-tycmZxkGfZaxhMRbXlPXuVFpdWlXpir2W4AMhSJgRKzk/eDlIXOhb2LHWoLpDF7TEHylV5zNhykX6KAgHJmTNw==", "dev": true, + "license": "MIT", "dependencies": { "@babel/helper-plugin-utils": "^7.8.0" }, @@ -418,6 +255,7 @@ "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-bigint/-/plugin-syntax-bigint-7.8.3.tgz", "integrity": "sha512-wnTnFlG+YxQm3vDxpGE57Pj0srRU4sHE/mDkt1qv2YJJSeUAec2ma4WLUnUPeKjyrfntVwe/N6dCXpU+zL3Npg==", "dev": true, + "license": "MIT", "dependencies": { "@babel/helper-plugin-utils": "^7.8.0" }, @@ -430,6 +268,7 @@ "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-class-properties/-/plugin-syntax-class-properties-7.12.13.tgz", "integrity": "sha512-fm4idjKla0YahUNgFNLCB0qySdsoPiZP3iQE3rky0mBUtMZ23yDJ9SJdg6dXTSDnulOVqiF3Hgr9nbXvXTQZYA==", "dev": true, + "license": "MIT", "dependencies": { "@babel/helper-plugin-utils": "^7.12.13" }, @@ -437,11 +276,44 @@ "@babel/core": "^7.0.0-0" } }, + "node_modules/@babel/plugin-syntax-class-static-block": { + "version": "7.14.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-class-static-block/-/plugin-syntax-class-static-block-7.14.5.tgz", + "integrity": "sha512-b+YyPmr6ldyNnM6sqYeMWE+bgJcJpO6yS4QD7ymxgH34GBPNDM/THBh8iunyvKIZztiwLH4CJZ0RxTk9emgpjw==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.14.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-import-attributes": { + "version": "7.28.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-import-attributes/-/plugin-syntax-import-attributes-7.28.6.tgz", + "integrity": "sha512-jiLC0ma9XkQT3TKJ9uYvlakm66Pamywo+qwL+oL8HJOvc6TWdZXVfhqJr8CCzbSGUAbDOzlGHJC1U+vRfLQDvw==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.28.6" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, "node_modules/@babel/plugin-syntax-import-meta": { "version": "7.10.4", "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-import-meta/-/plugin-syntax-import-meta-7.10.4.tgz", "integrity": "sha512-Yqfm+XDx0+Prh3VSeEQCPU81yC+JWZ2pDPFSS4ZdpfZhp4MkFMaDC1UqseovEKwSUpnIL7+vK+Clp7bfh0iD7g==", "dev": true, + "license": "MIT", "dependencies": { "@babel/helper-plugin-utils": "^7.10.4" }, @@ -454,6 +326,7 @@ "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-json-strings/-/plugin-syntax-json-strings-7.8.3.tgz", "integrity": "sha512-lY6kdGpWHvjoe2vk4WrAapEuBR69EMxZl+RoGRhrFGNYVK8mOPAW8VfbT/ZgrFbXlDNiiaxQnAtgVCZ6jv30EA==", "dev": true, + "license": "MIT", "dependencies": { "@babel/helper-plugin-utils": "^7.8.0" }, @@ -461,11 +334,28 @@ "@babel/core": "^7.0.0-0" } }, + "node_modules/@babel/plugin-syntax-jsx": { + "version": "7.28.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-jsx/-/plugin-syntax-jsx-7.28.6.tgz", + "integrity": "sha512-wgEmr06G6sIpqr8YDwA2dSRTE3bJ+V0IfpzfSY3Lfgd7YWOaAdlykvJi13ZKBt8cZHfgH1IXN+CL656W3uUa4w==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.28.6" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, "node_modules/@babel/plugin-syntax-logical-assignment-operators": { "version": "7.10.4", "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-logical-assignment-operators/-/plugin-syntax-logical-assignment-operators-7.10.4.tgz", "integrity": "sha512-d8waShlpFDinQ5MtvGU9xDAOzKH47+FFoney2baFIoMr952hKOLp1HR7VszoZvOsV/4+RRszNY7D17ba0te0ig==", "dev": true, + "license": "MIT", "dependencies": { "@babel/helper-plugin-utils": "^7.10.4" }, @@ -478,6 +368,7 @@ "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-nullish-coalescing-operator/-/plugin-syntax-nullish-coalescing-operator-7.8.3.tgz", "integrity": "sha512-aSff4zPII1u2QD7y+F8oDsz19ew4IGEJg9SVW+bqwpwtfFleiQDMdzA/R+UlWDzfnHFCxxleFT0PMIrR36XLNQ==", "dev": true, + "license": "MIT", "dependencies": { "@babel/helper-plugin-utils": "^7.8.0" }, @@ -490,6 +381,7 @@ "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-numeric-separator/-/plugin-syntax-numeric-separator-7.10.4.tgz", "integrity": "sha512-9H6YdfkcK/uOnY/K7/aA2xpzaAgkQn37yzWUMRK7OaPOqOpGS1+n0H5hxT9AUw9EsSjPW8SVyMJwYRtWs3X3ug==", "dev": true, + "license": "MIT", "dependencies": { "@babel/helper-plugin-utils": "^7.10.4" }, @@ -502,6 +394,7 @@ "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-object-rest-spread/-/plugin-syntax-object-rest-spread-7.8.3.tgz", "integrity": "sha512-XoqMijGZb9y3y2XskN+P1wUGiVwWZ5JmoDRwx5+3GmEplNyVM2s2Dg8ILFQm8rWM48orGy5YpI5Bl8U1y7ydlA==", "dev": true, + "license": "MIT", "dependencies": { "@babel/helper-plugin-utils": "^7.8.0" }, @@ -514,6 +407,7 @@ "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-optional-catch-binding/-/plugin-syntax-optional-catch-binding-7.8.3.tgz", "integrity": "sha512-6VPD0Pc1lpTqw0aKoeRTMiB+kWhAoT24PA+ksWSBrFtl5SIRVpZlwN3NNPQjehA2E/91FV3RjLWoVTglWcSV3Q==", "dev": true, + "license": "MIT", "dependencies": { "@babel/helper-plugin-utils": "^7.8.0" }, @@ -526,6 +420,7 @@ "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-optional-chaining/-/plugin-syntax-optional-chaining-7.8.3.tgz", "integrity": "sha512-KoK9ErH1MBlCPxV0VANkXW2/dw4vlbGDrFgz8bmUsBGYkFRcbRwMh6cIJubdPrkxRwuGdtCk0v/wPTKbQgBjkg==", "dev": true, + "license": "MIT", "dependencies": { "@babel/helper-plugin-utils": "^7.8.0" }, @@ -533,11 +428,28 @@ "@babel/core": "^7.0.0-0" } }, + "node_modules/@babel/plugin-syntax-private-property-in-object": { + "version": "7.14.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-private-property-in-object/-/plugin-syntax-private-property-in-object-7.14.5.tgz", + "integrity": "sha512-0wVnp9dxJ72ZUJDV27ZfbSj6iHLoytYZmh3rFcxNnvsJF3ktkzLDZPy/mA17HGsaQT3/DQsWYX1f1QGWkCoVUg==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.14.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, "node_modules/@babel/plugin-syntax-top-level-await": { "version": "7.14.5", "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-top-level-await/-/plugin-syntax-top-level-await-7.14.5.tgz", "integrity": "sha512-hx++upLv5U1rgYfwe1xBQUhRmU41NEvpUvrp8jkrSCdvGSnM5/qdRMtylJ6PG5OFkBaHkbTAKTnd3/YyESRHFw==", "dev": true, + "license": "MIT", "dependencies": { "@babel/helper-plugin-utils": "^7.14.5" }, @@ -549,12 +461,13 @@ } }, "node_modules/@babel/plugin-syntax-typescript": { - "version": "7.14.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-typescript/-/plugin-syntax-typescript-7.14.5.tgz", - "integrity": "sha512-u6OXzDaIXjEstBRRoBCQ/uKQKlbuaeE5in0RvWdA4pN6AhqxTIwUsnHPU1CFZA/amYObMsuWhYfRl3Ch90HD0Q==", + "version": "7.28.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-typescript/-/plugin-syntax-typescript-7.28.6.tgz", + "integrity": "sha512-+nDNmQye7nlnuuHDboPbGm00Vqg3oO8niRRL27/4LYHUsHYh0zJ1xWOz0uRwNFmM1Avzk8wZbc6rdiYhomzv/A==", "dev": true, + "license": "MIT", "dependencies": { - "@babel/helper-plugin-utils": "^7.14.5" + "@babel/helper-plugin-utils": "^7.28.6" }, "engines": { "node": ">=6.9.0" @@ -564,47 +477,48 @@ } }, "node_modules/@babel/template": { - "version": "7.15.4", - "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.15.4.tgz", - "integrity": "sha512-UgBAfEa1oGuYgDIPM2G+aHa4Nlo9Lh6mGD2bDBGMTbYnc38vulXPuC1MGjYILIEmlwl6Rd+BPR9ee3gm20CBtg==", + "version": "7.28.6", + "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.28.6.tgz", + "integrity": "sha512-YA6Ma2KsCdGb+WC6UpBVFJGXL58MDA6oyONbjyF/+5sBgxY/dwkhLogbMT2GXXyU84/IhRw/2D1Os1B/giz+BQ==", "dev": true, + "license": "MIT", "dependencies": { - "@babel/code-frame": "^7.14.5", - "@babel/parser": "^7.15.4", - "@babel/types": "^7.15.4" + "@babel/code-frame": "^7.28.6", + "@babel/parser": "^7.28.6", + "@babel/types": "^7.28.6" }, "engines": { "node": ">=6.9.0" } }, "node_modules/@babel/traverse": { - "version": "7.15.4", - "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.15.4.tgz", - "integrity": "sha512-W6lQD8l4rUbQR/vYgSuCAE75ADyyQvOpFVsvPPdkhf6lATXAsQIG9YdtOcu8BB1dZ0LKu+Zo3c1wEcbKeuhdlA==", - "dev": true, - "dependencies": { - "@babel/code-frame": "^7.14.5", - "@babel/generator": "^7.15.4", - "@babel/helper-function-name": "^7.15.4", - "@babel/helper-hoist-variables": "^7.15.4", - "@babel/helper-split-export-declaration": "^7.15.4", - "@babel/parser": "^7.15.4", - "@babel/types": "^7.15.4", - "debug": "^4.1.0", - "globals": "^11.1.0" + "version": "7.29.0", + "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.29.0.tgz", + "integrity": "sha512-4HPiQr0X7+waHfyXPZpWPfWL/J7dcN1mx9gL6WdQVMbPnF3+ZhSMs8tCxN7oHddJE9fhNE7+lxdnlyemKfJRuA==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/code-frame": "^7.29.0", + "@babel/generator": "^7.29.0", + "@babel/helper-globals": "^7.28.0", + "@babel/parser": "^7.29.0", + "@babel/template": "^7.28.6", + "@babel/types": "^7.29.0", + "debug": "^4.3.1" }, "engines": { "node": ">=6.9.0" } }, "node_modules/@babel/types": { - "version": "7.15.6", - "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.15.6.tgz", - "integrity": "sha512-BPU+7QhqNjmWyDO0/vitH/CuhpV8ZmK1wpKva8nuyNF5MJfuRNWMc+hc14+u9xT93kvykMdncrJT19h74uB1Ig==", + "version": "7.29.0", + "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.29.0.tgz", + "integrity": "sha512-LwdZHpScM4Qz8Xw2iKSzS+cfglZzJGvofQICy7W7v4caru4EaAmyUuO6BGrbyQ2mYV11W0U8j5mBhd14dd3B0A==", "dev": true, + "license": "MIT", "dependencies": { - "@babel/helper-validator-identifier": "^7.14.9", - "to-fast-properties": "^2.0.0" + "@babel/helper-string-parser": "^7.27.1", + "@babel/helper-validator-identifier": "^7.28.5" }, "engines": { "node": ">=6.9.0" @@ -614,176 +528,321 @@ "version": "0.2.3", "resolved": "https://registry.npmjs.org/@bcoe/v8-coverage/-/v8-coverage-0.2.3.tgz", "integrity": "sha512-0hYQ8SB4Db5zvZB4axdMHGwEaQjkZzFjQiN9LVYvIFB2nSUHW9tYpxWriPrWDASIxiaXax83REcLxuSdnGPZtw==", - "dev": true + "dev": true, + "license": "MIT" }, - "node_modules/@istanbuljs/load-nyc-config": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/@istanbuljs/load-nyc-config/-/load-nyc-config-1.1.0.tgz", - "integrity": "sha512-VjeHSlIzpv/NyD3N0YuHfXOPDIixcA1q2ZV98wsMqcYlPmv2n3Yb2lYP9XMElnaFVXg5A7YLTeLu6V84uQDjmQ==", + "node_modules/@biomejs/biome": { + "version": "2.3.14", + "resolved": "https://registry.npmjs.org/@biomejs/biome/-/biome-2.3.14.tgz", + "integrity": "sha512-QMT6QviX0WqXJCaiqVMiBUCr5WRQ1iFSjvOLoTk6auKukJMvnMzWucXpwZB0e8F00/1/BsS9DzcKgWH+CLqVuA==", "dev": true, - "dependencies": { - "camelcase": "^5.3.1", - "find-up": "^4.1.0", - "get-package-type": "^0.1.0", - "js-yaml": "^3.13.1", - "resolve-from": "^5.0.0" + "license": "MIT OR Apache-2.0", + "bin": { + "biome": "bin/biome" }, "engines": { - "node": ">=8" + "node": ">=14.21.3" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/biome" + }, + "optionalDependencies": { + "@biomejs/cli-darwin-arm64": "2.3.14", + "@biomejs/cli-darwin-x64": "2.3.14", + "@biomejs/cli-linux-arm64": "2.3.14", + "@biomejs/cli-linux-arm64-musl": "2.3.14", + "@biomejs/cli-linux-x64": "2.3.14", + "@biomejs/cli-linux-x64-musl": "2.3.14", + "@biomejs/cli-win32-arm64": "2.3.14", + "@biomejs/cli-win32-x64": "2.3.14" + } + }, + "node_modules/@biomejs/cli-darwin-arm64": { + "version": "2.3.14", + "resolved": "https://registry.npmjs.org/@biomejs/cli-darwin-arm64/-/cli-darwin-arm64-2.3.14.tgz", + "integrity": "sha512-UJGPpvWJMkLxSRtpCAKfKh41Q4JJXisvxZL8ChN1eNW3m/WlPFJ6EFDCE7YfUb4XS8ZFi3C1dFpxUJ0Ety5n+A==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT OR Apache-2.0", + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": ">=14.21.3" } }, - "node_modules/@istanbuljs/schema": { - "version": "0.1.3", - "resolved": "https://registry.npmjs.org/@istanbuljs/schema/-/schema-0.1.3.tgz", - "integrity": "sha512-ZXRY4jNvVgSVQ8DL3LTcakaAtXwTVUxE81hslsyD2AtoXW/wVob10HkOJ1X/pAlcI7D+2YoZKg5do8G/w6RYgA==", + "node_modules/@biomejs/cli-darwin-x64": { + "version": "2.3.14", + "resolved": "https://registry.npmjs.org/@biomejs/cli-darwin-x64/-/cli-darwin-x64-2.3.14.tgz", + "integrity": "sha512-PNkLNQG6RLo8lG7QoWe/hhnMxJIt1tEimoXpGQjwS/dkdNiKBLPv4RpeQl8o3s1OKI3ZOR5XPiYtmbGGHAOnLA==", + "cpu": [ + "x64" + ], "dev": true, + "license": "MIT OR Apache-2.0", + "optional": true, + "os": [ + "darwin" + ], "engines": { - "node": ">=8" + "node": ">=14.21.3" } }, - "node_modules/@jest/console": { - "version": "27.2.4", - "resolved": "https://registry.npmjs.org/@jest/console/-/console-27.2.4.tgz", - "integrity": "sha512-94znCKynPZpDpYHQ6esRJSc11AmONrVkBOBZiD7S+bSubHhrUfbS95EY5HIOxhm4PQO7cnvZkL3oJcY0oMA+Wg==", + "node_modules/@biomejs/cli-linux-arm64": { + "version": "2.3.14", + "resolved": "https://registry.npmjs.org/@biomejs/cli-linux-arm64/-/cli-linux-arm64-2.3.14.tgz", + "integrity": "sha512-KT67FKfzIw6DNnUNdYlBg+eU24Go3n75GWK6NwU4+yJmDYFe9i/MjiI+U/iEzKvo0g7G7MZqoyrhIYuND2w8QQ==", + "cpu": [ + "arm64" + ], "dev": true, - "dependencies": { - "@jest/types": "^27.2.4", - "@types/node": "*", - "chalk": "^4.0.0", - "jest-message-util": "^27.2.4", - "jest-util": "^27.2.4", - "slash": "^3.0.0" - }, + "license": "MIT OR Apache-2.0", + "optional": true, + "os": [ + "linux" + ], "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + "node": ">=14.21.3" } }, - "node_modules/@jest/core": { - "version": "27.2.4", - "resolved": "https://registry.npmjs.org/@jest/core/-/core-27.2.4.tgz", - "integrity": "sha512-UNQLyy+rXoojNm2MGlapgzWhZD1CT1zcHZQYeiD0xE7MtJfC19Q6J5D/Lm2l7i4V97T30usKDoEtjI8vKwWcLg==", + "node_modules/@biomejs/cli-linux-arm64-musl": { + "version": "2.3.14", + "resolved": "https://registry.npmjs.org/@biomejs/cli-linux-arm64-musl/-/cli-linux-arm64-musl-2.3.14.tgz", + "integrity": "sha512-LInRbXhYujtL3sH2TMCH/UBwJZsoGwfQjBrMfl84CD4hL/41C/EU5mldqf1yoFpsI0iPWuU83U+nB2TUUypWeg==", + "cpu": [ + "arm64" + ], "dev": true, - "dependencies": { - "@jest/console": "^27.2.4", - "@jest/reporters": "^27.2.4", - "@jest/test-result": "^27.2.4", - "@jest/transform": "^27.2.4", - "@jest/types": "^27.2.4", - "@types/node": "*", - "ansi-escapes": "^4.2.1", - "chalk": "^4.0.0", - "emittery": "^0.8.1", - "exit": "^0.1.2", - "graceful-fs": "^4.2.4", - "jest-changed-files": "^27.2.4", - "jest-config": "^27.2.4", - "jest-haste-map": "^27.2.4", - "jest-message-util": "^27.2.4", - "jest-regex-util": "^27.0.6", - "jest-resolve": "^27.2.4", - "jest-resolve-dependencies": "^27.2.4", - "jest-runner": "^27.2.4", - "jest-runtime": "^27.2.4", - "jest-snapshot": "^27.2.4", - "jest-util": "^27.2.4", - "jest-validate": "^27.2.4", - "jest-watcher": "^27.2.4", - "micromatch": "^4.0.4", - "rimraf": "^3.0.0", - "slash": "^3.0.0", - "strip-ansi": "^6.0.0" - }, + "license": "MIT OR Apache-2.0", + "optional": true, + "os": [ + "linux" + ], "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" - }, - "peerDependencies": { - "node-notifier": "^8.0.1 || ^9.0.0 || ^10.0.0" - }, - "peerDependenciesMeta": { - "node-notifier": { - "optional": true - } + "node": ">=14.21.3" } }, - "node_modules/@jest/environment": { - "version": "27.2.4", - "resolved": "https://registry.npmjs.org/@jest/environment/-/environment-27.2.4.tgz", - "integrity": "sha512-wkuui5yr3SSQW0XD0Qm3TATUbL/WE3LDEM3ulC+RCQhMf2yxhci8x7svGkZ4ivJ6Pc94oOzpZ6cdHBAMSYd1ew==", + "node_modules/@biomejs/cli-linux-x64": { + "version": "2.3.14", + "resolved": "https://registry.npmjs.org/@biomejs/cli-linux-x64/-/cli-linux-x64-2.3.14.tgz", + "integrity": "sha512-ZsZzQsl9U+wxFrGGS4f6UxREUlgHwmEfu1IrXlgNFrNnd5Th6lIJr8KmSzu/+meSa9f4rzFrbEW9LBBA6ScoMA==", + "cpu": [ + "x64" + ], "dev": true, - "dependencies": { - "@jest/fake-timers": "^27.2.4", - "@jest/types": "^27.2.4", - "@types/node": "*", - "jest-mock": "^27.2.4" - }, + "license": "MIT OR Apache-2.0", + "optional": true, + "os": [ + "linux" + ], "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + "node": ">=14.21.3" } }, - "node_modules/@jest/fake-timers": { - "version": "27.2.4", - "resolved": "https://registry.npmjs.org/@jest/fake-timers/-/fake-timers-27.2.4.tgz", - "integrity": "sha512-cs/TzvwWUM7kAA6Qm/890SK6JJ2pD5RfDNM3SSEom6BmdyV6OiWP1qf/pqo6ts6xwpcM36oN0wSEzcZWc6/B6w==", + "node_modules/@biomejs/cli-linux-x64-musl": { + "version": "2.3.14", + "resolved": "https://registry.npmjs.org/@biomejs/cli-linux-x64-musl/-/cli-linux-x64-musl-2.3.14.tgz", + "integrity": "sha512-KQU7EkbBBuHPW3/rAcoiVmhlPtDSGOGRPv9js7qJVpYTzjQmVR+C9Rfcz+ti8YCH+zT1J52tuBybtP4IodjxZQ==", + "cpu": [ + "x64" + ], "dev": true, - "dependencies": { - "@jest/types": "^27.2.4", - "@sinonjs/fake-timers": "^8.0.1", - "@types/node": "*", - "jest-message-util": "^27.2.4", - "jest-mock": "^27.2.4", - "jest-util": "^27.2.4" - }, + "license": "MIT OR Apache-2.0", + "optional": true, + "os": [ + "linux" + ], "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + "node": ">=14.21.3" } }, - "node_modules/@jest/globals": { - "version": "27.2.4", - "resolved": "https://registry.npmjs.org/@jest/globals/-/globals-27.2.4.tgz", - "integrity": "sha512-DRsRs5dh0i+fA9mGHylTU19+8fhzNJoEzrgsu+zgJoZth3x8/0juCQ8nVVdW1er4Cqifb/ET7/hACYVPD0dBEA==", + "node_modules/@biomejs/cli-win32-arm64": { + "version": "2.3.14", + "resolved": "https://registry.npmjs.org/@biomejs/cli-win32-arm64/-/cli-win32-arm64-2.3.14.tgz", + "integrity": "sha512-+IKYkj/pUBbnRf1G1+RlyA3LWiDgra1xpS7H2g4BuOzzRbRB+hmlw0yFsLprHhbbt7jUzbzAbAjK/Pn0FDnh1A==", + "cpu": [ + "arm64" + ], "dev": true, - "dependencies": { - "@jest/environment": "^27.2.4", - "@jest/types": "^27.2.4", - "expect": "^27.2.4" - }, + "license": "MIT OR Apache-2.0", + "optional": true, + "os": [ + "win32" + ], "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + "node": ">=14.21.3" } }, - "node_modules/@jest/reporters": { - "version": "27.2.4", - "resolved": "https://registry.npmjs.org/@jest/reporters/-/reporters-27.2.4.tgz", - "integrity": "sha512-LHeSdDnDZkDnJ8kvnjcqV8P1Yv/32yL4d4XfR5gBiy3xGO0onwll1QEbvtW96fIwhx2nejug0GTaEdNDoyr3fQ==", + "node_modules/@biomejs/cli-win32-x64": { + "version": "2.3.14", + "resolved": "https://registry.npmjs.org/@biomejs/cli-win32-x64/-/cli-win32-x64-2.3.14.tgz", + "integrity": "sha512-oizCjdyQ3WJEswpb3Chdngeat56rIdSYK12JI3iI11Mt5T5EXcZ7WLuowzEaFPNJ3zmOQFliMN8QY1Pi+qsfdQ==", + "cpu": [ + "x64" + ], "dev": true, - "dependencies": { - "@bcoe/v8-coverage": "^0.2.3", - "@jest/console": "^27.2.4", - "@jest/test-result": "^27.2.4", - "@jest/transform": "^27.2.4", - "@jest/types": "^27.2.4", - "chalk": "^4.0.0", - "collect-v8-coverage": "^1.0.0", - "exit": "^0.1.2", - "glob": "^7.1.2", - "graceful-fs": "^4.2.4", - "istanbul-lib-coverage": "^3.0.0", - "istanbul-lib-instrument": "^4.0.3", - "istanbul-lib-report": "^3.0.0", - "istanbul-lib-source-maps": "^4.0.0", - "istanbul-reports": "^3.0.2", - "jest-haste-map": "^27.2.4", - "jest-resolve": "^27.2.4", - "jest-util": "^27.2.4", - "jest-worker": "^27.2.4", - "slash": "^3.0.0", - "source-map": "^0.6.0", - "string-length": "^4.0.1", - "terminal-link": "^2.0.0", - "v8-to-istanbul": "^8.1.0" - }, + "license": "MIT OR Apache-2.0", + "optional": true, + "os": [ + "win32" + ], "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + "node": ">=14.21.3" + } + }, + "node_modules/@emnapi/core": { + "version": "1.8.1", + "resolved": "https://registry.npmjs.org/@emnapi/core/-/core-1.8.1.tgz", + "integrity": "sha512-AvT9QFpxK0Zd8J0jopedNm+w/2fIzvtPKPjqyw9jwvBaReTTqPBk9Hixaz7KbjimP+QNz605/XnjFcDAL2pqBg==", + "dev": true, + "license": "MIT", + "optional": true, + "dependencies": { + "@emnapi/wasi-threads": "1.1.0", + "tslib": "^2.4.0" + } + }, + "node_modules/@emnapi/runtime": { + "version": "1.8.1", + "resolved": "https://registry.npmjs.org/@emnapi/runtime/-/runtime-1.8.1.tgz", + "integrity": "sha512-mehfKSMWjjNol8659Z8KxEMrdSJDDot5SXMq00dM8BN4o+CLNXQ0xH2V7EchNHV4RmbZLmmPdEaXZc5H2FXmDg==", + "dev": true, + "license": "MIT", + "optional": true, + "dependencies": { + "tslib": "^2.4.0" + } + }, + "node_modules/@emnapi/wasi-threads": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/@emnapi/wasi-threads/-/wasi-threads-1.1.0.tgz", + "integrity": "sha512-WI0DdZ8xFSbgMjR1sFsKABJ/C5OnRrjT06JXbZKexJGrDuPTzZdDYfFlsgcCXCyf+suG5QU2e/y1Wo2V/OapLQ==", + "dev": true, + "license": "MIT", + "optional": true, + "dependencies": { + "tslib": "^2.4.0" + } + }, + "node_modules/@gerrit0/mini-shiki": { + "version": "3.22.0", + "resolved": "https://registry.npmjs.org/@gerrit0/mini-shiki/-/mini-shiki-3.22.0.tgz", + "integrity": "sha512-jMpciqEVUBKE1QwU64S4saNMzpsSza6diNCk4MWAeCxO2+LFi2FIFmL2S0VDLzEJCxuvCbU783xi8Hp/gkM5CQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "@shikijs/engine-oniguruma": "^3.22.0", + "@shikijs/langs": "^3.22.0", + "@shikijs/themes": "^3.22.0", + "@shikijs/types": "^3.22.0", + "@shikijs/vscode-textmate": "^10.0.2" + } + }, + "node_modules/@isaacs/cliui": { + "version": "8.0.2", + "resolved": "https://registry.npmjs.org/@isaacs/cliui/-/cliui-8.0.2.tgz", + "integrity": "sha512-O8jcjabXaleOG9DQ0+ARXWZBTfnP4WNAqzuiJK7ll44AmxGKv/J2M4TPjxjY3znBCfvBXFzucm1twdyFybFqEA==", + "dev": true, + "license": "ISC", + "dependencies": { + "string-width": "^5.1.2", + "string-width-cjs": "npm:string-width@^4.2.0", + "strip-ansi": "^7.0.1", + "strip-ansi-cjs": "npm:strip-ansi@^6.0.1", + "wrap-ansi": "^8.1.0", + "wrap-ansi-cjs": "npm:wrap-ansi@^7.0.0" + }, + "engines": { + "node": ">=12" + } + }, + "node_modules/@istanbuljs/load-nyc-config": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/@istanbuljs/load-nyc-config/-/load-nyc-config-1.1.0.tgz", + "integrity": "sha512-VjeHSlIzpv/NyD3N0YuHfXOPDIixcA1q2ZV98wsMqcYlPmv2n3Yb2lYP9XMElnaFVXg5A7YLTeLu6V84uQDjmQ==", + "dev": true, + "license": "ISC", + "dependencies": { + "camelcase": "^5.3.1", + "find-up": "^4.1.0", + "get-package-type": "^0.1.0", + "js-yaml": "^3.13.1", + "resolve-from": "^5.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/@istanbuljs/schema": { + "version": "0.1.3", + "resolved": "https://registry.npmjs.org/@istanbuljs/schema/-/schema-0.1.3.tgz", + "integrity": "sha512-ZXRY4jNvVgSVQ8DL3LTcakaAtXwTVUxE81hslsyD2AtoXW/wVob10HkOJ1X/pAlcI7D+2YoZKg5do8G/w6RYgA==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/@jest/console": { + "version": "30.2.0", + "resolved": "https://registry.npmjs.org/@jest/console/-/console-30.2.0.tgz", + "integrity": "sha512-+O1ifRjkvYIkBqASKWgLxrpEhQAAE7hY77ALLUufSk5717KfOShg6IbqLmdsLMPdUiFvA2kTs0R7YZy+l0IzZQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "@jest/types": "30.2.0", + "@types/node": "*", + "chalk": "^4.1.2", + "jest-message-util": "30.2.0", + "jest-util": "30.2.0", + "slash": "^3.0.0" + }, + "engines": { + "node": "^18.14.0 || ^20.0.0 || ^22.0.0 || >=24.0.0" + } + }, + "node_modules/@jest/core": { + "version": "30.2.0", + "resolved": "https://registry.npmjs.org/@jest/core/-/core-30.2.0.tgz", + "integrity": "sha512-03W6IhuhjqTlpzh/ojut/pDB2LPRygyWX8ExpgHtQA8H/3K7+1vKmcINx5UzeOX1se6YEsBsOHQ1CRzf3fOwTQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "@jest/console": "30.2.0", + "@jest/pattern": "30.0.1", + "@jest/reporters": "30.2.0", + "@jest/test-result": "30.2.0", + "@jest/transform": "30.2.0", + "@jest/types": "30.2.0", + "@types/node": "*", + "ansi-escapes": "^4.3.2", + "chalk": "^4.1.2", + "ci-info": "^4.2.0", + "exit-x": "^0.2.2", + "graceful-fs": "^4.2.11", + "jest-changed-files": "30.2.0", + "jest-config": "30.2.0", + "jest-haste-map": "30.2.0", + "jest-message-util": "30.2.0", + "jest-regex-util": "30.0.1", + "jest-resolve": "30.2.0", + "jest-resolve-dependencies": "30.2.0", + "jest-runner": "30.2.0", + "jest-runtime": "30.2.0", + "jest-snapshot": "30.2.0", + "jest-util": "30.2.0", + "jest-validate": "30.2.0", + "jest-watcher": "30.2.0", + "micromatch": "^4.0.8", + "pretty-format": "30.2.0", + "slash": "^3.0.0" + }, + "engines": { + "node": "^18.14.0 || ^20.0.0 || ^22.0.0 || >=24.0.0" }, "peerDependencies": { "node-notifier": "^8.0.1 || ^9.0.0 || ^10.0.0" @@ -794,5085 +853,2107 @@ } } }, - "node_modules/@jest/source-map": { - "version": "27.0.6", - "resolved": "https://registry.npmjs.org/@jest/source-map/-/source-map-27.0.6.tgz", - "integrity": "sha512-Fek4mi5KQrqmlY07T23JRi0e7Z9bXTOOD86V/uS0EIW4PClvPDqZOyFlLpNJheS6QI0FNX1CgmPjtJ4EA/2M+g==", + "node_modules/@jest/diff-sequences": { + "version": "30.0.1", + "resolved": "https://registry.npmjs.org/@jest/diff-sequences/-/diff-sequences-30.0.1.tgz", + "integrity": "sha512-n5H8QLDJ47QqbCNn5SuFjCRDrOLEZ0h8vAHCK5RL9Ls7Xa8AQLa/YxAc9UjFqoEDM48muwtBGjtMY5cr0PLDCw==", "dev": true, - "dependencies": { - "callsites": "^3.0.0", - "graceful-fs": "^4.2.4", - "source-map": "^0.6.0" - }, + "license": "MIT", "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + "node": "^18.14.0 || ^20.0.0 || ^22.0.0 || >=24.0.0" } }, - "node_modules/@jest/test-result": { - "version": "27.2.4", - "resolved": "https://registry.npmjs.org/@jest/test-result/-/test-result-27.2.4.tgz", - "integrity": "sha512-eU+PRo0+lIS01b0dTmMdVZ0TtcRSxEaYquZTRFMQz6CvsehGhx9bRzi9Zdw6VROviJyv7rstU+qAMX5pNBmnfQ==", + "node_modules/@jest/environment": { + "version": "30.2.0", + "resolved": "https://registry.npmjs.org/@jest/environment/-/environment-30.2.0.tgz", + "integrity": "sha512-/QPTL7OBJQ5ac09UDRa3EQes4gt1FTEG/8jZ/4v5IVzx+Cv7dLxlVIvfvSVRiiX2drWyXeBjkMSR8hvOWSog5g==", "dev": true, + "license": "MIT", "dependencies": { - "@jest/console": "^27.2.4", - "@jest/types": "^27.2.4", - "@types/istanbul-lib-coverage": "^2.0.0", - "collect-v8-coverage": "^1.0.0" + "@jest/fake-timers": "30.2.0", + "@jest/types": "30.2.0", + "@types/node": "*", + "jest-mock": "30.2.0" }, "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + "node": "^18.14.0 || ^20.0.0 || ^22.0.0 || >=24.0.0" } }, - "node_modules/@jest/test-sequencer": { - "version": "27.2.4", - "resolved": "https://registry.npmjs.org/@jest/test-sequencer/-/test-sequencer-27.2.4.tgz", - "integrity": "sha512-fpk5eknU3/DXE2QCCG1wv/a468+cfPo3Asu6d6yUtM9LOPh709ubZqrhuUOYfM8hXMrIpIdrv1CdCrWWabX0rQ==", + "node_modules/@jest/expect": { + "version": "30.2.0", + "resolved": "https://registry.npmjs.org/@jest/expect/-/expect-30.2.0.tgz", + "integrity": "sha512-V9yxQK5erfzx99Sf+7LbhBwNWEZ9eZay8qQ9+JSC0TrMR1pMDHLMY+BnVPacWU6Jamrh252/IKo4F1Xn/zfiqA==", "dev": true, + "license": "MIT", "dependencies": { - "@jest/test-result": "^27.2.4", - "graceful-fs": "^4.2.4", - "jest-haste-map": "^27.2.4", - "jest-runtime": "^27.2.4" + "expect": "30.2.0", + "jest-snapshot": "30.2.0" }, "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + "node": "^18.14.0 || ^20.0.0 || ^22.0.0 || >=24.0.0" } }, - "node_modules/@jest/transform": { - "version": "27.2.4", - "resolved": "https://registry.npmjs.org/@jest/transform/-/transform-27.2.4.tgz", - "integrity": "sha512-n5FlX2TH0oQGwyVDKPxdJ5nI2sO7TJBFe3u3KaAtt7TOiV4yL+Y+rSFDl+Ic5MpbiA/eqXmLAQxjnBmWgS2rEA==", - "dev": true, - "dependencies": { - "@babel/core": "^7.1.0", - "@jest/types": "^27.2.4", - "babel-plugin-istanbul": "^6.0.0", - "chalk": "^4.0.0", - "convert-source-map": "^1.4.0", - "fast-json-stable-stringify": "^2.0.0", - "graceful-fs": "^4.2.4", - "jest-haste-map": "^27.2.4", - "jest-regex-util": "^27.0.6", - "jest-util": "^27.2.4", - "micromatch": "^4.0.4", - "pirates": "^4.0.1", - "slash": "^3.0.0", - "source-map": "^0.6.1", - "write-file-atomic": "^3.0.0" + "node_modules/@jest/expect-utils": { + "version": "30.2.0", + "resolved": "https://registry.npmjs.org/@jest/expect-utils/-/expect-utils-30.2.0.tgz", + "integrity": "sha512-1JnRfhqpD8HGpOmQp180Fo9Zt69zNtC+9lR+kT7NVL05tNXIi+QC8Csz7lfidMoVLPD3FnOtcmp0CEFnxExGEA==", + "dev": true, + "license": "MIT", + "dependencies": { + "@jest/get-type": "30.1.0" }, "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + "node": "^18.14.0 || ^20.0.0 || ^22.0.0 || >=24.0.0" } }, - "node_modules/@jest/types": { - "version": "27.2.4", - "resolved": "https://registry.npmjs.org/@jest/types/-/types-27.2.4.tgz", - "integrity": "sha512-IDO2ezTxeMvQAHxzG/ZvEyA47q0aVfzT95rGFl7bZs/Go0aIucvfDbS2rmnoEdXxlLQhcolmoG/wvL/uKx4tKA==", + "node_modules/@jest/fake-timers": { + "version": "30.2.0", + "resolved": "https://registry.npmjs.org/@jest/fake-timers/-/fake-timers-30.2.0.tgz", + "integrity": "sha512-HI3tRLjRxAbBy0VO8dqqm7Hb2mIa8d5bg/NJkyQcOk7V118ObQML8RC5luTF/Zsg4474a+gDvhce7eTnP4GhYw==", "dev": true, + "license": "MIT", "dependencies": { - "@types/istanbul-lib-coverage": "^2.0.0", - "@types/istanbul-reports": "^3.0.0", + "@jest/types": "30.2.0", + "@sinonjs/fake-timers": "^13.0.0", "@types/node": "*", - "@types/yargs": "^16.0.0", - "chalk": "^4.0.0" + "jest-message-util": "30.2.0", + "jest-mock": "30.2.0", + "jest-util": "30.2.0" }, "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + "node": "^18.14.0 || ^20.0.0 || ^22.0.0 || >=24.0.0" } }, - "node_modules/@lopatnov/get-internal-type": { - "version": "1.5.7", - "resolved": "https://registry.npmjs.org/@lopatnov/get-internal-type/-/get-internal-type-1.5.7.tgz", - "integrity": "sha512-Mi5HQFtmhT4WGirsEfmBX7FmmnZQM1TWU0+HO/m3SeB3S4knjH9oyXkBv1hE9KGzEx8a3XeJ51rXUNh8c2l3XA==", - "license": "Apache-2.0" - }, - "node_modules/@lopatnov/rollup-plugin-uglify": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/@lopatnov/rollup-plugin-uglify/-/rollup-plugin-uglify-2.1.1.tgz", - "integrity": "sha512-nufaifR32KhQSdLURYgMQNUNjhpyIIeDE482ok/Oi4P4OItFfXQa/g6Td6YQvukwxFjJHi4MDDlN8cu3YQPKqA==", + "node_modules/@jest/get-type": { + "version": "30.1.0", + "resolved": "https://registry.npmjs.org/@jest/get-type/-/get-type-30.1.0.tgz", + "integrity": "sha512-eMbZE2hUnx1WV0pmURZY9XoXPkUYjpc55mb0CrhtdWLtzMQPFvu/rZkTLZFTsdaVQa+Tr4eWAteqcUzoawq/uA==", "dev": true, - "peerDependencies": { - "rollup": ">=1.0.0", - "terser": ">=4.0.0" + "license": "MIT", + "engines": { + "node": "^18.14.0 || ^20.0.0 || ^22.0.0 || >=24.0.0" } }, - "node_modules/@rollup/pluginutils": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/@rollup/pluginutils/-/pluginutils-3.1.0.tgz", - "integrity": "sha512-GksZ6pr6TpIjHm8h9lSQ8pi8BE9VeubNT0OMJ3B5uZJ8pz73NPiqOtCog/x2/QzM1ENChPKxMDhiQuRHsqc+lg==", + "node_modules/@jest/globals": { + "version": "30.2.0", + "resolved": "https://registry.npmjs.org/@jest/globals/-/globals-30.2.0.tgz", + "integrity": "sha512-b63wmnKPaK+6ZZfpYhz9K61oybvbI1aMcIs80++JI1O1rR1vaxHUCNqo3ITu6NU0d4V34yZFoHMn/uoKr/Rwfw==", "dev": true, + "license": "MIT", "dependencies": { - "@types/estree": "0.0.39", - "estree-walker": "^1.0.1", - "picomatch": "^2.2.2" + "@jest/environment": "30.2.0", + "@jest/expect": "30.2.0", + "@jest/types": "30.2.0", + "jest-mock": "30.2.0" }, "engines": { - "node": ">= 8.0.0" + "node": "^18.14.0 || ^20.0.0 || ^22.0.0 || >=24.0.0" } }, - "node_modules/@rollup/pluginutils/node_modules/estree-walker": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/estree-walker/-/estree-walker-1.0.1.tgz", - "integrity": "sha512-1fMXF3YP4pZZVozF8j/ZLfvnR8NSIljt56UhbZ5PeeDmmGHpgpdwQt7ITlGvYaQukCvuBRMLEiKiYC+oeIg4cg==", - "dev": true - }, - "node_modules/@sinonjs/commons": { - "version": "1.8.3", - "resolved": "https://registry.npmjs.org/@sinonjs/commons/-/commons-1.8.3.tgz", - "integrity": "sha512-xkNcLAn/wZaX14RPlwizcKicDk9G3F8m2nU3L7Ukm5zBgTwiT0wsoFAHx9Jq56fJA1z/7uKGtCRu16sOUCLIHQ==", + "node_modules/@jest/pattern": { + "version": "30.0.1", + "resolved": "https://registry.npmjs.org/@jest/pattern/-/pattern-30.0.1.tgz", + "integrity": "sha512-gWp7NfQW27LaBQz3TITS8L7ZCQ0TLvtmI//4OwlQRx4rnWxcPNIYjxZpDcN4+UlGxgm3jS5QPz8IPTCkb59wZA==", "dev": true, + "license": "MIT", "dependencies": { - "type-detect": "4.0.8" + "@types/node": "*", + "jest-regex-util": "30.0.1" + }, + "engines": { + "node": "^18.14.0 || ^20.0.0 || ^22.0.0 || >=24.0.0" } }, - "node_modules/@sinonjs/fake-timers": { - "version": "8.0.1", - "resolved": "https://registry.npmjs.org/@sinonjs/fake-timers/-/fake-timers-8.0.1.tgz", - "integrity": "sha512-AU7kwFxreVd6OAXcAFlKSmZquiRUU0FvYm44k1Y1QbK7Co4m0aqfGMhjykIeQp/H6rcl+nFmj0zfdUcGVs9Dew==", + "node_modules/@jest/reporters": { + "version": "30.2.0", + "resolved": "https://registry.npmjs.org/@jest/reporters/-/reporters-30.2.0.tgz", + "integrity": "sha512-DRyW6baWPqKMa9CzeiBjHwjd8XeAyco2Vt8XbcLFjiwCOEKOvy82GJ8QQnJE9ofsxCMPjH4MfH8fCWIHHDKpAQ==", "dev": true, + "license": "MIT", "dependencies": { - "@sinonjs/commons": "^1.7.0" + "@bcoe/v8-coverage": "^0.2.3", + "@jest/console": "30.2.0", + "@jest/test-result": "30.2.0", + "@jest/transform": "30.2.0", + "@jest/types": "30.2.0", + "@jridgewell/trace-mapping": "^0.3.25", + "@types/node": "*", + "chalk": "^4.1.2", + "collect-v8-coverage": "^1.0.2", + "exit-x": "^0.2.2", + "glob": "^10.3.10", + "graceful-fs": "^4.2.11", + "istanbul-lib-coverage": "^3.0.0", + "istanbul-lib-instrument": "^6.0.0", + "istanbul-lib-report": "^3.0.0", + "istanbul-lib-source-maps": "^5.0.0", + "istanbul-reports": "^3.1.3", + "jest-message-util": "30.2.0", + "jest-util": "30.2.0", + "jest-worker": "30.2.0", + "slash": "^3.0.0", + "string-length": "^4.0.2", + "v8-to-istanbul": "^9.0.1" + }, + "engines": { + "node": "^18.14.0 || ^20.0.0 || ^22.0.0 || >=24.0.0" + }, + "peerDependencies": { + "node-notifier": "^8.0.1 || ^9.0.0 || ^10.0.0" + }, + "peerDependenciesMeta": { + "node-notifier": { + "optional": true + } } }, - "node_modules/@tootallnate/once": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/@tootallnate/once/-/once-1.1.2.tgz", - "integrity": "sha512-RbzJvlNzmRq5c3O09UipeuXno4tA1FE6ikOjxZK0tuxVv3412l64l5t1W5pj4+rJq9vpkm/kwiR07aZXnsKPxw==", + "node_modules/@jest/schemas": { + "version": "30.0.5", + "resolved": "https://registry.npmjs.org/@jest/schemas/-/schemas-30.0.5.tgz", + "integrity": "sha512-DmdYgtezMkh3cpU8/1uyXakv3tJRcmcXxBOcO0tbaozPwpmh4YMsnWrQm9ZmZMfa5ocbxzbFk6O4bDPEc/iAnA==", "dev": true, + "license": "MIT", + "dependencies": { + "@sinclair/typebox": "^0.34.0" + }, "engines": { - "node": ">= 6" + "node": "^18.14.0 || ^20.0.0 || ^22.0.0 || >=24.0.0" } }, - "node_modules/@types/babel__core": { - "version": "7.1.16", - "resolved": "https://registry.npmjs.org/@types/babel__core/-/babel__core-7.1.16.tgz", - "integrity": "sha512-EAEHtisTMM+KaKwfWdC3oyllIqswlznXCIVCt7/oRNrh+DhgT4UEBNC/jlADNjvw7UnfbcdkGQcPVZ1xYiLcrQ==", + "node_modules/@jest/snapshot-utils": { + "version": "30.2.0", + "resolved": "https://registry.npmjs.org/@jest/snapshot-utils/-/snapshot-utils-30.2.0.tgz", + "integrity": "sha512-0aVxM3RH6DaiLcjj/b0KrIBZhSX1373Xci4l3cW5xiUWPctZ59zQ7jj4rqcJQ/Z8JuN/4wX3FpJSa3RssVvCug==", "dev": true, + "license": "MIT", "dependencies": { - "@babel/parser": "^7.1.0", - "@babel/types": "^7.0.0", - "@types/babel__generator": "*", - "@types/babel__template": "*", - "@types/babel__traverse": "*" + "@jest/types": "30.2.0", + "chalk": "^4.1.2", + "graceful-fs": "^4.2.11", + "natural-compare": "^1.4.0" + }, + "engines": { + "node": "^18.14.0 || ^20.0.0 || ^22.0.0 || >=24.0.0" } }, - "node_modules/@types/babel__generator": { - "version": "7.6.3", - "resolved": "https://registry.npmjs.org/@types/babel__generator/-/babel__generator-7.6.3.tgz", - "integrity": "sha512-/GWCmzJWqV7diQW54smJZzWbSFf4QYtF71WCKhcx6Ru/tFyQIY2eiiITcCAeuPbNSvT9YCGkVMqqvSk2Z0mXiA==", + "node_modules/@jest/source-map": { + "version": "30.0.1", + "resolved": "https://registry.npmjs.org/@jest/source-map/-/source-map-30.0.1.tgz", + "integrity": "sha512-MIRWMUUR3sdbP36oyNyhbThLHyJ2eEDClPCiHVbrYAe5g3CHRArIVpBw7cdSB5fr+ofSfIb2Tnsw8iEHL0PYQg==", "dev": true, + "license": "MIT", "dependencies": { - "@babel/types": "^7.0.0" + "@jridgewell/trace-mapping": "^0.3.25", + "callsites": "^3.1.0", + "graceful-fs": "^4.2.11" + }, + "engines": { + "node": "^18.14.0 || ^20.0.0 || ^22.0.0 || >=24.0.0" } }, - "node_modules/@types/babel__template": { - "version": "7.4.1", - "resolved": "https://registry.npmjs.org/@types/babel__template/-/babel__template-7.4.1.tgz", - "integrity": "sha512-azBFKemX6kMg5Io+/rdGT0dkGreboUVR0Cdm3fz9QJWpaQGJRQXl7C+6hOTCZcMll7KFyEQpgbYI2lHdsS4U7g==", + "node_modules/@jest/test-result": { + "version": "30.2.0", + "resolved": "https://registry.npmjs.org/@jest/test-result/-/test-result-30.2.0.tgz", + "integrity": "sha512-RF+Z+0CCHkARz5HT9mcQCBulb1wgCP3FBvl9VFokMX27acKphwyQsNuWH3c+ojd1LeWBLoTYoxF0zm6S/66mjg==", "dev": true, + "license": "MIT", "dependencies": { - "@babel/parser": "^7.1.0", - "@babel/types": "^7.0.0" + "@jest/console": "30.2.0", + "@jest/types": "30.2.0", + "@types/istanbul-lib-coverage": "^2.0.6", + "collect-v8-coverage": "^1.0.2" + }, + "engines": { + "node": "^18.14.0 || ^20.0.0 || ^22.0.0 || >=24.0.0" } }, - "node_modules/@types/babel__traverse": { - "version": "7.14.2", - "resolved": "https://registry.npmjs.org/@types/babel__traverse/-/babel__traverse-7.14.2.tgz", - "integrity": "sha512-K2waXdXBi2302XUdcHcR1jCeU0LL4TD9HRs/gk0N2Xvrht+G/BfJa4QObBQZfhMdxiCpV3COl5Nfq4uKTeTnJA==", + "node_modules/@jest/test-sequencer": { + "version": "30.2.0", + "resolved": "https://registry.npmjs.org/@jest/test-sequencer/-/test-sequencer-30.2.0.tgz", + "integrity": "sha512-wXKgU/lk8fKXMu/l5Hog1R61bL4q5GCdT6OJvdAFz1P+QrpoFuLU68eoKuVc4RbrTtNnTL5FByhWdLgOPSph+Q==", "dev": true, + "license": "MIT", "dependencies": { - "@babel/types": "^7.3.0" + "@jest/test-result": "30.2.0", + "graceful-fs": "^4.2.11", + "jest-haste-map": "30.2.0", + "slash": "^3.0.0" + }, + "engines": { + "node": "^18.14.0 || ^20.0.0 || ^22.0.0 || >=24.0.0" } }, - "node_modules/@types/estree": { - "version": "0.0.39", - "resolved": "https://registry.npmjs.org/@types/estree/-/estree-0.0.39.tgz", - "integrity": "sha512-EYNwp3bU+98cpU4lAWYYL7Zz+2gryWH1qbdDTidVd6hkiR6weksdbMadyXKXNPEkQFhXM+hVO9ZygomHXp+AIw==", - "dev": true + "node_modules/@jest/transform": { + "version": "30.2.0", + "resolved": "https://registry.npmjs.org/@jest/transform/-/transform-30.2.0.tgz", + "integrity": "sha512-XsauDV82o5qXbhalKxD7p4TZYYdwcaEXC77PPD2HixEFF+6YGppjrAAQurTl2ECWcEomHBMMNS9AH3kcCFx8jA==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/core": "^7.27.4", + "@jest/types": "30.2.0", + "@jridgewell/trace-mapping": "^0.3.25", + "babel-plugin-istanbul": "^7.0.1", + "chalk": "^4.1.2", + "convert-source-map": "^2.0.0", + "fast-json-stable-stringify": "^2.1.0", + "graceful-fs": "^4.2.11", + "jest-haste-map": "30.2.0", + "jest-regex-util": "30.0.1", + "jest-util": "30.2.0", + "micromatch": "^4.0.8", + "pirates": "^4.0.7", + "slash": "^3.0.0", + "write-file-atomic": "^5.0.1" + }, + "engines": { + "node": "^18.14.0 || ^20.0.0 || ^22.0.0 || >=24.0.0" + } }, - "node_modules/@types/graceful-fs": { - "version": "4.1.5", - "resolved": "https://registry.npmjs.org/@types/graceful-fs/-/graceful-fs-4.1.5.tgz", - "integrity": "sha512-anKkLmZZ+xm4p8JWBf4hElkM4XR+EZeA2M9BAkkTldmcyDY4mbdIJnRghDJH3Ov5ooY7/UAoENtmdMSkaAd7Cw==", + "node_modules/@jest/types": { + "version": "30.2.0", + "resolved": "https://registry.npmjs.org/@jest/types/-/types-30.2.0.tgz", + "integrity": "sha512-H9xg1/sfVvyfU7o3zMfBEjQ1gcsdeTMgqHoYdN79tuLqfTtuu7WckRA1R5whDwOzxaZAeMKTYWqP+WCAi0CHsg==", "dev": true, + "license": "MIT", "dependencies": { - "@types/node": "*" + "@jest/pattern": "30.0.1", + "@jest/schemas": "30.0.5", + "@types/istanbul-lib-coverage": "^2.0.6", + "@types/istanbul-reports": "^3.0.4", + "@types/node": "*", + "@types/yargs": "^17.0.33", + "chalk": "^4.1.2" + }, + "engines": { + "node": "^18.14.0 || ^20.0.0 || ^22.0.0 || >=24.0.0" } }, - "node_modules/@types/istanbul-lib-coverage": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/@types/istanbul-lib-coverage/-/istanbul-lib-coverage-2.0.3.tgz", - "integrity": "sha512-sz7iLqvVUg1gIedBOvlkxPlc8/uVzyS5OwGz1cKjXzkl3FpL3al0crU8YGU1WoHkxn0Wxbw5tyi6hvzJKNzFsw==", - "dev": true - }, - "node_modules/@types/istanbul-lib-report": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/@types/istanbul-lib-report/-/istanbul-lib-report-3.0.0.tgz", - "integrity": "sha512-plGgXAPfVKFoYfa9NpYDAkseG+g6Jr294RqeqcqDixSbU34MZVJRi/P+7Y8GDpzkEwLaGZZOpKIEmeVZNtKsrg==", + "node_modules/@jridgewell/gen-mapping": { + "version": "0.3.13", + "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.13.tgz", + "integrity": "sha512-2kkt/7niJ6MgEPxF0bYdQ6etZaA+fQvDcLKckhy1yIQOzaoKjBBjSj63/aLVjYE3qhRt5dvM+uUyfCg6UKCBbA==", "dev": true, + "license": "MIT", "dependencies": { - "@types/istanbul-lib-coverage": "*" + "@jridgewell/sourcemap-codec": "^1.5.0", + "@jridgewell/trace-mapping": "^0.3.24" } }, - "node_modules/@types/istanbul-reports": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/@types/istanbul-reports/-/istanbul-reports-3.0.1.tgz", - "integrity": "sha512-c3mAZEuK0lvBp8tmuL74XRKn1+y2dcwOUpH7x4WrF6gk1GIgiluDRgMYQtw2OFcBvAJWlt6ASU3tSqxp0Uu0Aw==", + "node_modules/@jridgewell/remapping": { + "version": "2.3.5", + "resolved": "https://registry.npmjs.org/@jridgewell/remapping/-/remapping-2.3.5.tgz", + "integrity": "sha512-LI9u/+laYG4Ds1TDKSJW2YPrIlcVYOwi2fUC6xB43lueCjgxV4lffOCZCtYFiH6TNOX+tQKXx97T4IKHbhyHEQ==", "dev": true, + "license": "MIT", "dependencies": { - "@types/istanbul-lib-report": "*" + "@jridgewell/gen-mapping": "^0.3.5", + "@jridgewell/trace-mapping": "^0.3.24" } }, - "node_modules/@types/jest": { - "version": "27.0.2", - "resolved": "https://registry.npmjs.org/@types/jest/-/jest-27.0.2.tgz", - "integrity": "sha512-4dRxkS/AFX0c5XW6IPMNOydLn2tEhNhJV7DnYK+0bjoJZ+QTmfucBlihX7aoEsh/ocYtkLC73UbnBXBXIxsULA==", + "node_modules/@jridgewell/resolve-uri": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/@jridgewell/resolve-uri/-/resolve-uri-3.1.2.tgz", + "integrity": "sha512-bRISgCIjP20/tbWSPWMEi54QVPRZExkuD9lJL+UIxUKtwVJA8wW1Trb1jMs1RFXo1CBTNZ/5hpC9QvmKWdopKw==", "dev": true, - "dependencies": { - "jest-diff": "^27.0.0", - "pretty-format": "^27.0.0" + "license": "MIT", + "engines": { + "node": ">=6.0.0" } }, - "node_modules/@types/node": { - "version": "16.10.2", - "resolved": "https://registry.npmjs.org/@types/node/-/node-16.10.2.tgz", - "integrity": "sha512-zCclL4/rx+W5SQTzFs9wyvvyCwoK9QtBpratqz2IYJ3O8Umrn0m3nsTv0wQBk9sRGpvUe9CwPDrQFB10f1FIjQ==", - "dev": true - }, - "node_modules/@types/prettier": { - "version": "2.4.1", - "resolved": "https://registry.npmjs.org/@types/prettier/-/prettier-2.4.1.tgz", - "integrity": "sha512-Fo79ojj3vdEZOHg3wR9ksAMRz4P3S5fDB5e/YWZiFnyFQI1WY2Vftu9XoXVVtJfxB7Bpce/QTqWSSntkz2Znrw==", - "dev": true - }, - "node_modules/@types/resolve": { - "version": "0.0.8", - "resolved": "https://registry.npmjs.org/@types/resolve/-/resolve-0.0.8.tgz", - "integrity": "sha512-auApPaJf3NPfe18hSoJkp8EbZzer2ISk7o8mCC3M9he/a04+gbMF97NkpD2S8riMGvm4BMRI59/SZQSaLTKpsQ==", + "node_modules/@jridgewell/source-map": { + "version": "0.3.11", + "resolved": "https://registry.npmjs.org/@jridgewell/source-map/-/source-map-0.3.11.tgz", + "integrity": "sha512-ZMp1V8ZFcPG5dIWnQLr3NSI1MiCU7UETdS/A0G8V/XWHvJv3ZsFqutJn1Y5RPmAPX6F3BiE397OqveU/9NCuIA==", "dev": true, + "license": "MIT", "dependencies": { - "@types/node": "*" + "@jridgewell/gen-mapping": "^0.3.5", + "@jridgewell/trace-mapping": "^0.3.25" } }, - "node_modules/@types/stack-utils": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/@types/stack-utils/-/stack-utils-2.0.1.tgz", - "integrity": "sha512-Hl219/BT5fLAaz6NDkSuhzasy49dwQS/DSdu4MdggFB8zcXv7vflBI3xp7FEmkmdDkBUI2bPUNeMttp2knYdxw==", - "dev": true + "node_modules/@jridgewell/sourcemap-codec": { + "version": "1.5.5", + "resolved": "https://registry.npmjs.org/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.5.5.tgz", + "integrity": "sha512-cYQ9310grqxueWbl+WuIUIaiUaDcj7WOq5fVhEljNVgRfOUhY9fy2zTvfoqWsnebh8Sl70VScFbICvJnLKB0Og==", + "dev": true, + "license": "MIT" }, - "node_modules/@types/yargs": { - "version": "16.0.4", - "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-16.0.4.tgz", - "integrity": "sha512-T8Yc9wt/5LbJyCaLiHPReJa0kApcIgJ7Bn735GjItUfh08Z1pJvu8QZqb9s+mMvKV6WUQRV7K2R46YbjMXTTJw==", + "node_modules/@jridgewell/trace-mapping": { + "version": "0.3.31", + "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.31.tgz", + "integrity": "sha512-zzNR+SdQSDJzc8joaeP8QQoCQr8NuYx2dIIytl1QeBEZHJ9uW6hebsrYgbz8hJwUQao3TWCMtmfV8Nu1twOLAw==", "dev": true, + "license": "MIT", "dependencies": { - "@types/yargs-parser": "*" + "@jridgewell/resolve-uri": "^3.1.0", + "@jridgewell/sourcemap-codec": "^1.4.14" } }, - "node_modules/@types/yargs-parser": { - "version": "20.2.1", - "resolved": "https://registry.npmjs.org/@types/yargs-parser/-/yargs-parser-20.2.1.tgz", - "integrity": "sha512-7tFImggNeNBVMsn0vLrpn1H1uPrUBdnARPTpZoitY37ZrdJREzf7I16tMrlK3hen349gr1NYh8CmZQa7CTG6Aw==", - "dev": true - }, - "node_modules/abab": { - "version": "2.0.5", - "resolved": "https://registry.npmjs.org/abab/-/abab-2.0.5.tgz", - "integrity": "sha512-9IK9EadsbHo6jLWIpxpR6pL0sazTXV6+SQv25ZB+F7Bj9mJNaOc4nCRabwd5M/JwmUa8idz6Eci6eKfJryPs6Q==", - "dev": true + "node_modules/@lopatnov/get-internal-type": { + "version": "1.5.7", + "resolved": "https://registry.npmjs.org/@lopatnov/get-internal-type/-/get-internal-type-1.5.7.tgz", + "integrity": "sha512-Mi5HQFtmhT4WGirsEfmBX7FmmnZQM1TWU0+HO/m3SeB3S4knjH9oyXkBv1hE9KGzEx8a3XeJ51rXUNh8c2l3XA==", + "license": "Apache-2.0" }, - "node_modules/acorn": { - "version": "8.5.0", - "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.5.0.tgz", - "integrity": "sha512-yXbYeFy+jUuYd3/CDcg2NkIYE991XYX/bje7LmjJigUciaeO1JR4XxXgCIV1/Zc/dRuFEyw1L0pbA+qynJkW5Q==", + "node_modules/@lopatnov/rollup-plugin-uglify": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/@lopatnov/rollup-plugin-uglify/-/rollup-plugin-uglify-3.0.0.tgz", + "integrity": "sha512-Kz62bEE7ggsolz8tmdFjU43qlaiRLyseGXzFF8/pkc5YR1JhX0js1vsAoQ/EzCxU29FZZ5g2fxznA/JFjj9tzA==", "dev": true, - "bin": { - "acorn": "bin/acorn" + "license": "Apache-2.0", + "dependencies": { + "@rollup/pluginutils": "^5.3.0", + "core-js": "^3.47.0" }, "engines": { - "node": ">=0.4.0" + "node": ">=18.0.0" + }, + "peerDependencies": { + "rollup": ">=4.0.0", + "terser": ">=4.0.0" } }, - "node_modules/acorn-globals": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/acorn-globals/-/acorn-globals-6.0.0.tgz", - "integrity": "sha512-ZQl7LOWaF5ePqqcX4hLuv/bLXYQNfNWw2c0/yX/TsPRKamzHcTGQnlCjHT3TsmkOUVEPS3crCxiPfdzE/Trlhg==", + "node_modules/@napi-rs/wasm-runtime": { + "version": "0.2.12", + "resolved": "https://registry.npmjs.org/@napi-rs/wasm-runtime/-/wasm-runtime-0.2.12.tgz", + "integrity": "sha512-ZVWUcfwY4E/yPitQJl481FjFo3K22D6qF0DuFH6Y/nbnE11GY5uguDxZMGXPQ8WQ0128MXQD7TnfHyK4oWoIJQ==", "dev": true, + "license": "MIT", + "optional": true, "dependencies": { - "acorn": "^7.1.1", - "acorn-walk": "^7.1.1" + "@emnapi/core": "^1.4.3", + "@emnapi/runtime": "^1.4.3", + "@tybys/wasm-util": "^0.10.0" } }, - "node_modules/acorn-globals/node_modules/acorn": { - "version": "7.4.1", - "resolved": "https://registry.npmjs.org/acorn/-/acorn-7.4.1.tgz", - "integrity": "sha512-nQyp0o1/mNdbTO1PO6kHkwSrmgZ0MT/jCCpNiwbUjGoRN4dlBhqJtoQuCnEOKzgTVwg0ZWiCoQy6SxMebQVh8A==", + "node_modules/@pkgjs/parseargs": { + "version": "0.11.0", + "resolved": "https://registry.npmjs.org/@pkgjs/parseargs/-/parseargs-0.11.0.tgz", + "integrity": "sha512-+1VkjdD0QBLPodGrJUeqarH8VAIvQODIbwh9XpP5Syisf7YoQgsJKPNFoqqLQlu+VQ/tVSshMR6loPMn8U+dPg==", "dev": true, - "bin": { - "acorn": "bin/acorn" - }, + "license": "MIT", + "optional": true, "engines": { - "node": ">=0.4.0" + "node": ">=14" } }, - "node_modules/acorn-walk": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/acorn-walk/-/acorn-walk-7.2.0.tgz", - "integrity": "sha512-OPdCF6GsMIP+Az+aWfAAOEt2/+iVDKE7oy6lJ098aoe59oAmK76qV6Gw60SbZ8jHuG2wH058GF4pLFbYamYrVA==", + "node_modules/@pkgr/core": { + "version": "0.2.9", + "resolved": "https://registry.npmjs.org/@pkgr/core/-/core-0.2.9.tgz", + "integrity": "sha512-QNqXyfVS2wm9hweSYD2O7F0G06uurj9kZ96TRQE5Y9hU7+tgdZwIkbAKc5Ocy1HxEY2kuDQa6cQ1WRs/O5LFKA==", "dev": true, + "license": "MIT", "engines": { - "node": ">=0.4.0" + "node": "^12.20.0 || ^14.18.0 || >=16.0.0" + }, + "funding": { + "url": "https://opencollective.com/pkgr" } }, - "node_modules/agent-base": { - "version": "6.0.2", - "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-6.0.2.tgz", - "integrity": "sha512-RZNwNclF7+MS/8bDg70amg32dyeZGZxiDuQmZxKLAlQjr3jGyLx+4Kkk58UO7D2QdgFIQCovuSuZESne6RG6XQ==", + "node_modules/@rollup/plugin-commonjs": { + "version": "29.0.0", + "resolved": "https://registry.npmjs.org/@rollup/plugin-commonjs/-/plugin-commonjs-29.0.0.tgz", + "integrity": "sha512-U2YHaxR2cU/yAiwKJtJRhnyLk7cifnQw0zUpISsocBDoHDJn+HTV74ABqnwr5bEgWUwFZC9oFL6wLe21lHu5eQ==", "dev": true, + "license": "MIT", "dependencies": { - "debug": "4" + "@rollup/pluginutils": "^5.0.1", + "commondir": "^1.0.1", + "estree-walker": "^2.0.2", + "fdir": "^6.2.0", + "is-reference": "1.2.1", + "magic-string": "^0.30.3", + "picomatch": "^4.0.2" }, "engines": { - "node": ">= 6.0.0" + "node": ">=16.0.0 || 14 >= 14.17" + }, + "peerDependencies": { + "rollup": "^2.68.0||^3.0.0||^4.0.0" + }, + "peerDependenciesMeta": { + "rollup": { + "optional": true + } } }, - "node_modules/ansi-escapes": { - "version": "4.3.2", - "resolved": "https://registry.npmjs.org/ansi-escapes/-/ansi-escapes-4.3.2.tgz", - "integrity": "sha512-gKXj5ALrKWQLsYG9jlTRmR/xKluxHV+Z9QEwNIgCfM1/uwPMCuzVVnh5mwTd+OuBZcwSIMbqssNWRm1lE51QaQ==", + "node_modules/@rollup/plugin-json": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/@rollup/plugin-json/-/plugin-json-6.1.0.tgz", + "integrity": "sha512-EGI2te5ENk1coGeADSIwZ7G2Q8CJS2sF120T7jLw4xFw9n7wIOXHo+kIYRAoVpJAN+kmqZSoO3Fp4JtoNF4ReA==", "dev": true, + "license": "MIT", "dependencies": { - "type-fest": "^0.21.3" + "@rollup/pluginutils": "^5.1.0" }, "engines": { - "node": ">=8" + "node": ">=14.0.0" }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "peerDependencies": { + "rollup": "^1.20.0||^2.0.0||^3.0.0||^4.0.0" + }, + "peerDependenciesMeta": { + "rollup": { + "optional": true + } } }, - "node_modules/ansi-regex": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", - "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", + "node_modules/@rollup/plugin-node-resolve": { + "version": "16.0.3", + "resolved": "https://registry.npmjs.org/@rollup/plugin-node-resolve/-/plugin-node-resolve-16.0.3.tgz", + "integrity": "sha512-lUYM3UBGuM93CnMPG1YocWu7X802BrNF3jW2zny5gQyLQgRFJhV1Sq0Zi74+dh/6NBx1DxFC4b4GXg9wUCG5Qg==", "dev": true, + "license": "MIT", + "dependencies": { + "@rollup/pluginutils": "^5.0.1", + "@types/resolve": "1.20.2", + "deepmerge": "^4.2.2", + "is-module": "^1.0.0", + "resolve": "^1.22.1" + }, "engines": { - "node": ">=8" + "node": ">=14.0.0" + }, + "peerDependencies": { + "rollup": "^2.78.0||^3.0.0||^4.0.0" + }, + "peerDependenciesMeta": { + "rollup": { + "optional": true + } } }, - "node_modules/ansi-styles": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "node_modules/@rollup/plugin-typescript": { + "version": "12.3.0", + "resolved": "https://registry.npmjs.org/@rollup/plugin-typescript/-/plugin-typescript-12.3.0.tgz", + "integrity": "sha512-7DP0/p7y3t67+NabT9f8oTBFE6gGkto4SA6Np2oudYmZE/m1dt8RB0SjL1msMxFpLo631qjRCcBlAbq1ml/Big==", "dev": true, + "license": "MIT", "dependencies": { - "color-convert": "^2.0.1" + "@rollup/pluginutils": "^5.1.0", + "resolve": "^1.22.1" }, "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/chalk/ansi-styles?sponsor=1" - } - }, - "node_modules/anymatch": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-3.1.2.tgz", - "integrity": "sha512-P43ePfOAIupkguHUycrc4qJ9kz8ZiuOUijaETwX7THt0Y/GNK7v0aa8rY816xWjZ7rJdA5XdMcpVFTKMq+RvWg==", - "dev": true, - "dependencies": { - "normalize-path": "^3.0.0", - "picomatch": "^2.0.4" - }, - "engines": { - "node": ">= 8" - } - }, - "node_modules/argparse": { - "version": "1.0.10", - "resolved": "https://registry.npmjs.org/argparse/-/argparse-1.0.10.tgz", - "integrity": "sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==", - "dev": true, - "dependencies": { - "sprintf-js": "~1.0.2" - } - }, - "node_modules/asynckit": { - "version": "0.4.0", - "resolved": "https://registry.npmjs.org/asynckit/-/asynckit-0.4.0.tgz", - "integrity": "sha1-x57Zf380y48robyXkLzDZkdLS3k=", - "dev": true - }, - "node_modules/atob": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/atob/-/atob-2.1.2.tgz", - "integrity": "sha512-Wm6ukoaOGJi/73p/cl2GvLjTI5JM1k/O14isD73YML8StrH/7/lRFgmg8nICZgD3bZZvjwCGxtMOD3wWNAu8cg==", - "dev": true, - "bin": { - "atob": "bin/atob.js" - }, - "engines": { - "node": ">= 4.5.0" - } - }, - "node_modules/babel-jest": { - "version": "27.2.4", - "resolved": "https://registry.npmjs.org/babel-jest/-/babel-jest-27.2.4.tgz", - "integrity": "sha512-f24OmxyWymk5jfgLdlCMu4fTs4ldxFBIdn5sJdhvGC1m08rSkJ5hYbWkNmfBSvE/DjhCVNSHXepxsI6THGfGsg==", - "dev": true, - "dependencies": { - "@jest/transform": "^27.2.4", - "@jest/types": "^27.2.4", - "@types/babel__core": "^7.1.14", - "babel-plugin-istanbul": "^6.0.0", - "babel-preset-jest": "^27.2.0", - "chalk": "^4.0.0", - "graceful-fs": "^4.2.4", - "slash": "^3.0.0" - }, - "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" - }, - "peerDependencies": { - "@babel/core": "^7.8.0" - } - }, - "node_modules/babel-plugin-istanbul": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/babel-plugin-istanbul/-/babel-plugin-istanbul-6.0.0.tgz", - "integrity": "sha512-AF55rZXpe7trmEylbaE1Gv54wn6rwU03aptvRoVIGP8YykoSxqdVLV1TfwflBCE/QtHmqtP8SWlTENqbK8GCSQ==", - "dev": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.0.0", - "@istanbuljs/load-nyc-config": "^1.0.0", - "@istanbuljs/schema": "^0.1.2", - "istanbul-lib-instrument": "^4.0.0", - "test-exclude": "^6.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/babel-plugin-jest-hoist": { - "version": "27.2.0", - "resolved": "https://registry.npmjs.org/babel-plugin-jest-hoist/-/babel-plugin-jest-hoist-27.2.0.tgz", - "integrity": "sha512-TOux9khNKdi64mW+0OIhcmbAn75tTlzKhxmiNXevQaPbrBYK7YKjP1jl6NHTJ6XR5UgUrJbCnWlKVnJn29dfjw==", - "dev": true, - "dependencies": { - "@babel/template": "^7.3.3", - "@babel/types": "^7.3.3", - "@types/babel__core": "^7.0.0", - "@types/babel__traverse": "^7.0.6" - }, - "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" - } - }, - "node_modules/babel-preset-current-node-syntax": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/babel-preset-current-node-syntax/-/babel-preset-current-node-syntax-1.0.1.tgz", - "integrity": "sha512-M7LQ0bxarkxQoN+vz5aJPsLBn77n8QgTFmo8WK0/44auK2xlCXrYcUxHFxgU7qW5Yzw/CjmLRK2uJzaCd7LvqQ==", - "dev": true, - "dependencies": { - "@babel/plugin-syntax-async-generators": "^7.8.4", - "@babel/plugin-syntax-bigint": "^7.8.3", - "@babel/plugin-syntax-class-properties": "^7.8.3", - "@babel/plugin-syntax-import-meta": "^7.8.3", - "@babel/plugin-syntax-json-strings": "^7.8.3", - "@babel/plugin-syntax-logical-assignment-operators": "^7.8.3", - "@babel/plugin-syntax-nullish-coalescing-operator": "^7.8.3", - "@babel/plugin-syntax-numeric-separator": "^7.8.3", - "@babel/plugin-syntax-object-rest-spread": "^7.8.3", - "@babel/plugin-syntax-optional-catch-binding": "^7.8.3", - "@babel/plugin-syntax-optional-chaining": "^7.8.3", - "@babel/plugin-syntax-top-level-await": "^7.8.3" - }, - "peerDependencies": { - "@babel/core": "^7.0.0" - } - }, - "node_modules/babel-preset-jest": { - "version": "27.2.0", - "resolved": "https://registry.npmjs.org/babel-preset-jest/-/babel-preset-jest-27.2.0.tgz", - "integrity": "sha512-z7MgQ3peBwN5L5aCqBKnF6iqdlvZvFUQynEhu0J+X9nHLU72jO3iY331lcYrg+AssJ8q7xsv5/3AICzVmJ/wvg==", - "dev": true, - "dependencies": { - "babel-plugin-jest-hoist": "^27.2.0", - "babel-preset-current-node-syntax": "^1.0.0" - }, - "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0" - } - }, - "node_modules/balanced-match": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.0.tgz", - "integrity": "sha1-ibTRmasr7kneFk6gK4nORi1xt2c=", - "dev": true - }, - "node_modules/brace-expansion": { - "version": "1.1.11", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", - "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", - "dev": true, - "dependencies": { - "balanced-match": "^1.0.0", - "concat-map": "0.0.1" - } - }, - "node_modules/braces": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.2.tgz", - "integrity": "sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==", - "dev": true, - "dependencies": { - "fill-range": "^7.0.1" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/browser-process-hrtime": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/browser-process-hrtime/-/browser-process-hrtime-1.0.0.tgz", - "integrity": "sha512-9o5UecI3GhkpM6DrXr69PblIuWxPKk9Y0jHBRhdocZ2y7YECBFCsHm79Pr3OyR2AvjhDkabFJaDJMYRazHgsow==", - "dev": true - }, - "node_modules/browserslist": { - "version": "4.17.2", - "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.17.2.tgz", - "integrity": "sha512-jSDZyqJmkKMEMi7SZAgX5UltFdR5NAO43vY0AwTpu4X3sGH7GLLQ83KiUomgrnvZRCeW0yPPnKqnxPqQOER9zQ==", - "dev": true, - "dependencies": { - "caniuse-lite": "^1.0.30001261", - "electron-to-chromium": "^1.3.854", - "escalade": "^3.1.1", - "nanocolors": "^0.2.12", - "node-releases": "^1.1.76" - }, - "bin": { - "browserslist": "cli.js" - }, - "engines": { - "node": "^6 || ^7 || ^8 || ^9 || ^10 || ^11 || ^12 || >=13.7" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/browserslist" - } - }, - "node_modules/bs-logger": { - "version": "0.2.6", - "resolved": "https://registry.npmjs.org/bs-logger/-/bs-logger-0.2.6.tgz", - "integrity": "sha512-pd8DCoxmbgc7hyPKOvxtqNcjYoOsABPQdcCUjGp3d42VR2CX1ORhk2A87oqqu5R1kk+76nsxZupkmyd+MVtCog==", - "dev": true, - "dependencies": { - "fast-json-stable-stringify": "2.x" - }, - "engines": { - "node": ">= 6" - } - }, - "node_modules/bser": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/bser/-/bser-2.1.1.tgz", - "integrity": "sha512-gQxTNE/GAfIIrmHLUE3oJyp5FO6HRBfhjnw4/wMmA63ZGDJnWBmgY/lyQBpnDUkGmAhbSe39tx2d/iTOAfglwQ==", - "dev": true, - "dependencies": { - "node-int64": "^0.4.0" - } - }, - "node_modules/buffer-from": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/buffer-from/-/buffer-from-1.1.1.tgz", - "integrity": "sha512-MQcXEUbCKtEo7bhqEs6560Hyd4XaovZlO/k9V3hjVUF/zwW7KBVdSK4gIt/bzwS9MbR5qob+F5jusZsb0YQK2A==", - "dev": true - }, - "node_modules/builtin-modules": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/builtin-modules/-/builtin-modules-3.1.0.tgz", - "integrity": "sha512-k0KL0aWZuBt2lrxrcASWDfwOLMnodeQjodT/1SxEQAXsHANgo6ZC/VEaSEHCXt7aSTZ4/4H5LKa+tBXmW7Vtvw==", - "dev": true, - "engines": { - "node": ">=6" - } - }, - "node_modules/callsites": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/callsites/-/callsites-3.1.0.tgz", - "integrity": "sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==", - "dev": true, - "engines": { - "node": ">=6" - } - }, - "node_modules/camelcase": { - "version": "5.3.1", - "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-5.3.1.tgz", - "integrity": "sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg==", - "dev": true, - "engines": { - "node": ">=6" - } - }, - "node_modules/caniuse-lite": { - "version": "1.0.30001263", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001263.tgz", - "integrity": "sha512-doiV5dft6yzWO1WwU19kt8Qz8R0/8DgEziz6/9n2FxUasteZNwNNYSmJO3GLBH8lCVE73AB1RPDPAeYbcO5Cvw==", - "dev": true, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/browserslist" - } - }, - "node_modules/chalk": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.1.tgz", - "integrity": "sha512-diHzdDKxcU+bAsUboHLPEDQiw0qEe0qd7SYUn3HgcFlWgbDcfLGswOHYeGrHKzG9z6UYf01d9VFMfZxPM1xZSg==", - "dev": true, - "dependencies": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/chalk/chalk?sponsor=1" - } - }, - "node_modules/char-regex": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/char-regex/-/char-regex-1.0.2.tgz", - "integrity": "sha512-kWWXztvZ5SBQV+eRgKFeh8q5sLuZY2+8WUIzlxWVTg+oGwY14qylx1KbKzHd8P6ZYkAg0xyIDU9JMHhyJMZ1jw==", - "dev": true, - "engines": { - "node": ">=10" - } - }, - "node_modules/ci-info": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/ci-info/-/ci-info-3.2.0.tgz", - "integrity": "sha512-dVqRX7fLUm8J6FgHJ418XuIgDLZDkYcDFTeL6TA2gt5WlIZUQrrH6EZrNClwT/H0FateUsZkGIOPRrLbP+PR9A==", - "dev": true - }, - "node_modules/cjs-module-lexer": { - "version": "1.2.2", - "resolved": "https://registry.npmjs.org/cjs-module-lexer/-/cjs-module-lexer-1.2.2.tgz", - "integrity": "sha512-cOU9usZw8/dXIXKtwa8pM0OTJQuJkxMN6w30csNRUerHfeQ5R6U3kkU/FtJeIf3M202OHfY2U8ccInBG7/xogA==", - "dev": true - }, - "node_modules/cliui": { - "version": "7.0.4", - "resolved": "https://registry.npmjs.org/cliui/-/cliui-7.0.4.tgz", - "integrity": "sha512-OcRE68cOsVMXp1Yvonl/fzkQOyjLSu/8bhPDfQt0e0/Eb283TKP20Fs2MqoPsr9SwA595rRCA+QMzYc9nBP+JQ==", - "dev": true, - "dependencies": { - "string-width": "^4.2.0", - "strip-ansi": "^6.0.0", - "wrap-ansi": "^7.0.0" - } - }, - "node_modules/co": { - "version": "4.6.0", - "resolved": "https://registry.npmjs.org/co/-/co-4.6.0.tgz", - "integrity": "sha1-bqa989hTrlTMuOR7+gvz+QMfsYQ=", - "dev": true, - "engines": { - "iojs": ">= 1.0.0", - "node": ">= 0.12.0" - } - }, - "node_modules/collect-v8-coverage": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/collect-v8-coverage/-/collect-v8-coverage-1.0.1.tgz", - "integrity": "sha512-iBPtljfCNcTKNAto0KEtDfZ3qzjJvqE3aTGZsbhjSBlorqpXJlaWWtPO35D+ZImoC3KWejX64o+yPGxhWSTzfg==", - "dev": true - }, - "node_modules/color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", - "dev": true, - "dependencies": { - "color-name": "~1.1.4" - }, - "engines": { - "node": ">=7.0.0" - } - }, - "node_modules/color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", - "dev": true - }, - "node_modules/combined-stream": { - "version": "1.0.8", - "resolved": "https://registry.npmjs.org/combined-stream/-/combined-stream-1.0.8.tgz", - "integrity": "sha512-FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg==", - "dev": true, - "dependencies": { - "delayed-stream": "~1.0.0" - }, - "engines": { - "node": ">= 0.8" - } - }, - "node_modules/commander": { - "version": "2.20.3", - "resolved": "https://registry.npmjs.org/commander/-/commander-2.20.3.tgz", - "integrity": "sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ==", - "dev": true - }, - "node_modules/commondir": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/commondir/-/commondir-1.0.1.tgz", - "integrity": "sha1-3dgA2gxmEnOTzKWVDqloo6rxJTs=", - "dev": true - }, - "node_modules/concat-map": { - "version": "0.0.1", - "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", - "integrity": "sha1-2Klr13/Wjfd5OnMDajug1UBdR3s=", - "dev": true - }, - "node_modules/convert-source-map": { - "version": "1.8.0", - "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-1.8.0.tgz", - "integrity": "sha512-+OQdjP49zViI/6i7nIJpA8rAl4sV/JdPfU9nZs3VqOwGIgizICvuN2ru6fMd+4llL0tar18UYJXfZ/TWtmhUjA==", - "dev": true, - "dependencies": { - "safe-buffer": "~5.1.1" - } - }, - "node_modules/cross-spawn": { - "version": "7.0.3", - "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.3.tgz", - "integrity": "sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w==", - "dev": true, - "dependencies": { - "path-key": "^3.1.0", - "shebang-command": "^2.0.0", - "which": "^2.0.1" - }, - "engines": { - "node": ">= 8" - } - }, - "node_modules/cssom": { - "version": "0.4.4", - "resolved": "https://registry.npmjs.org/cssom/-/cssom-0.4.4.tgz", - "integrity": "sha512-p3pvU7r1MyyqbTk+WbNJIgJjG2VmTIaB10rI93LzVPrmDJKkzKYMtxxyAvQXR/NS6otuzveI7+7BBq3SjBS2mw==", - "dev": true - }, - "node_modules/cssstyle": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/cssstyle/-/cssstyle-2.3.0.tgz", - "integrity": "sha512-AZL67abkUzIuvcHqk7c09cezpGNcxUxU4Ioi/05xHk4DQeTkWmGYftIE6ctU6AEt+Gn4n1lDStOtj7FKycP71A==", - "dev": true, - "dependencies": { - "cssom": "~0.3.6" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/cssstyle/node_modules/cssom": { - "version": "0.3.8", - "resolved": "https://registry.npmjs.org/cssom/-/cssom-0.3.8.tgz", - "integrity": "sha512-b0tGHbfegbhPJpxpiBPU2sCkigAqtM9O121le6bbOlgyV+NyGyCmVfJ6QW9eRjz8CpNfWEOYBIMIGRYkLwsIYg==", - "dev": true - }, - "node_modules/data-urls": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/data-urls/-/data-urls-2.0.0.tgz", - "integrity": "sha512-X5eWTSXO/BJmpdIKCRuKUgSCgAN0OwliVK3yPKbwIWU1Tdw5BRajxlzMidvh+gwko9AfQ9zIj52pzF91Q3YAvQ==", - "dev": true, - "dependencies": { - "abab": "^2.0.3", - "whatwg-mimetype": "^2.3.0", - "whatwg-url": "^8.0.0" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/debug": { - "version": "4.3.2", - "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.2.tgz", - "integrity": "sha512-mOp8wKcvj7XxC78zLgw/ZA+6TSgkoE2C/ienthhRD298T7UNwAg9diBpLRxC0mOezLl4B0xV7M0cCO6P/O0Xhw==", - "dev": true, - "dependencies": { - "ms": "2.1.2" - }, - "engines": { - "node": ">=6.0" - }, - "peerDependenciesMeta": { - "supports-color": { - "optional": true - } - } - }, - "node_modules/decimal.js": { - "version": "10.3.1", - "resolved": "https://registry.npmjs.org/decimal.js/-/decimal.js-10.3.1.tgz", - "integrity": "sha512-V0pfhfr8suzyPGOx3nmq4aHqabehUZn6Ch9kyFpV79TGDTWFmHqUqXdabR7QHqxzrYolF4+tVmJhUG4OURg5dQ==", - "dev": true - }, - "node_modules/decode-uri-component": { - "version": "0.2.0", - "resolved": "https://registry.npmjs.org/decode-uri-component/-/decode-uri-component-0.2.0.tgz", - "integrity": "sha1-6zkTMzRYd1y4TNGh+uBiEGu4dUU=", - "dev": true, - "engines": { - "node": ">=0.10" - } - }, - "node_modules/dedent": { - "version": "0.7.0", - "resolved": "https://registry.npmjs.org/dedent/-/dedent-0.7.0.tgz", - "integrity": "sha1-JJXduvbrh0q7Dhvp3yLS5aVEMmw=", - "dev": true - }, - "node_modules/deep-is": { - "version": "0.1.4", - "resolved": "https://registry.npmjs.org/deep-is/-/deep-is-0.1.4.tgz", - "integrity": "sha512-oIPzksmTg4/MriiaYGO+okXDT7ztn/w3Eptv/+gSIdMdKsJo0u4CfYNFJPy+4SKMuCqGw2wxnA+URMg3t8a/bQ==", - "dev": true - }, - "node_modules/deepmerge": { - "version": "4.2.2", - "resolved": "https://registry.npmjs.org/deepmerge/-/deepmerge-4.2.2.tgz", - "integrity": "sha512-FJ3UgI4gIl+PHZm53knsuSFpE+nESMr7M4v9QcgB7S63Kj/6WqMiFQJpBBYz1Pt+66bZpP3Q7Lye0Oo9MPKEdg==", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/delayed-stream": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/delayed-stream/-/delayed-stream-1.0.0.tgz", - "integrity": "sha1-3zrhmayt+31ECqrgsp4icrJOxhk=", - "dev": true, - "engines": { - "node": ">=0.4.0" - } - }, - "node_modules/detect-newline": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/detect-newline/-/detect-newline-3.1.0.tgz", - "integrity": "sha512-TLz+x/vEXm/Y7P7wn1EJFNLxYpUD4TgMosxY6fAVJUnJMbupHBOncxyWUG9OpTaH9EBD7uFI5LfEgmMOc54DsA==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/diff-sequences": { - "version": "27.0.6", - "resolved": "https://registry.npmjs.org/diff-sequences/-/diff-sequences-27.0.6.tgz", - "integrity": "sha512-ag6wfpBFyNXZ0p8pcuIDS//D8H062ZQJ3fzYxjpmeKjnz8W4pekL3AI8VohmyZmsWW2PWaHgjsmqR6L13101VQ==", - "dev": true, - "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" - } - }, - "node_modules/domexception": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/domexception/-/domexception-2.0.1.tgz", - "integrity": "sha512-yxJ2mFy/sibVQlu5qHjOkf9J3K6zgmCxgJ94u2EdvDOV09H+32LtRswEcUsmUWN72pVLOEnTSRaIVVzVQgS0dg==", - "dev": true, - "dependencies": { - "webidl-conversions": "^5.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/domexception/node_modules/webidl-conversions": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-5.0.0.tgz", - "integrity": "sha512-VlZwKPCkYKxQgeSbH5EyngOmRp7Ww7I9rQLERETtf5ofd9pGeswWiOtogpEO850jziPRarreGxn5QIiTqpb2wA==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/electron-to-chromium": { - "version": "1.3.857", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.3.857.tgz", - "integrity": "sha512-a5kIr2lajm4bJ5E4D3fp8Y/BRB0Dx2VOcCRE5Gtb679mXIME/OFhWler8Gy2ksrf8gFX+EFCSIGA33FB3gqYpg==", - "dev": true - }, - "node_modules/emittery": { - "version": "0.8.1", - "resolved": "https://registry.npmjs.org/emittery/-/emittery-0.8.1.tgz", - "integrity": "sha512-uDfvUjVrfGJJhymx/kz6prltenw1u7WrCg1oa94zYY8xxVpLLUu045LAT0dhDZdXG58/EpPL/5kA180fQ/qudg==", - "dev": true, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sindresorhus/emittery?sponsor=1" - } - }, - "node_modules/emoji-regex": { - "version": "8.0.0", - "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", - "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==", - "dev": true - }, - "node_modules/escalade": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/escalade/-/escalade-3.1.1.tgz", - "integrity": "sha512-k0er2gUkLf8O0zKJiAhmkTnJlTvINGv7ygDNPbeIsX/TJjGJZHuh9B2UxbsaEkmlEo9MfhrSzmhIlhRlI2GXnw==", - "dev": true, - "engines": { - "node": ">=6" - } - }, - "node_modules/escape-string-regexp": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-2.0.0.tgz", - "integrity": "sha512-UpzcLCXolUWcNu5HtVMHYdXJjArjsF9C0aNnquZYY4uW/Vu0miy5YoWvbV345HauVvcAUnpRuhMMcqTcGOY2+w==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/escodegen": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/escodegen/-/escodegen-2.0.0.tgz", - "integrity": "sha512-mmHKys/C8BFUGI+MAWNcSYoORYLMdPzjrknd2Vc+bUsjN5bXcr8EhrNB+UTqfL1y3I9c4fw2ihgtMPQLBRiQxw==", - "dev": true, - "dependencies": { - "esprima": "^4.0.1", - "estraverse": "^5.2.0", - "esutils": "^2.0.2", - "optionator": "^0.8.1" - }, - "bin": { - "escodegen": "bin/escodegen.js", - "esgenerate": "bin/esgenerate.js" - }, - "engines": { - "node": ">=6.0" - }, - "optionalDependencies": { - "source-map": "~0.6.1" - } - }, - "node_modules/esprima": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/esprima/-/esprima-4.0.1.tgz", - "integrity": "sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==", - "dev": true, - "bin": { - "esparse": "bin/esparse.js", - "esvalidate": "bin/esvalidate.js" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/estraverse": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.2.0.tgz", - "integrity": "sha512-BxbNGGNm0RyRYvUdHpIwv9IWzeM9XClbOxwoATuFdOE7ZE6wHL+HQ5T8hoPM+zHvmKzzsEqhgy0GrQ5X13afiQ==", - "dev": true, - "engines": { - "node": ">=4.0" - } - }, - "node_modules/estree-walker": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/estree-walker/-/estree-walker-0.6.1.tgz", - "integrity": "sha512-SqmZANLWS0mnatqbSfRP5g8OXZC12Fgg1IwNtLsyHDzJizORW4khDfjPqJZsemPWBB2uqykUah5YpQ6epsqC/w==", - "dev": true - }, - "node_modules/esutils": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/esutils/-/esutils-2.0.3.tgz", - "integrity": "sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/execa": { - "version": "5.1.1", - "resolved": "https://registry.npmjs.org/execa/-/execa-5.1.1.tgz", - "integrity": "sha512-8uSpZZocAZRBAPIEINJj3Lo9HyGitllczc27Eh5YYojjMFMn8yHMDMaUHE2Jqfq05D/wucwI4JGURyXt1vchyg==", - "dev": true, - "dependencies": { - "cross-spawn": "^7.0.3", - "get-stream": "^6.0.0", - "human-signals": "^2.1.0", - "is-stream": "^2.0.0", - "merge-stream": "^2.0.0", - "npm-run-path": "^4.0.1", - "onetime": "^5.1.2", - "signal-exit": "^3.0.3", - "strip-final-newline": "^2.0.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sindresorhus/execa?sponsor=1" - } - }, - "node_modules/exit": { - "version": "0.1.2", - "resolved": "https://registry.npmjs.org/exit/-/exit-0.1.2.tgz", - "integrity": "sha1-BjJjj42HfMghB9MKD/8aF8uhzQw=", - "dev": true, - "engines": { - "node": ">= 0.8.0" - } - }, - "node_modules/expect": { - "version": "27.2.4", - "resolved": "https://registry.npmjs.org/expect/-/expect-27.2.4.tgz", - "integrity": "sha512-gOtuonQ8TCnbNNCSw2fhVzRf8EFYDII4nB5NmG4IEV0rbUnW1I5zXvoTntU4iicB/Uh0oZr20NGlOLdJiwsOZA==", - "dev": true, - "dependencies": { - "@jest/types": "^27.2.4", - "ansi-styles": "^5.0.0", - "jest-get-type": "^27.0.6", - "jest-matcher-utils": "^27.2.4", - "jest-message-util": "^27.2.4", - "jest-regex-util": "^27.0.6" - }, - "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" - } - }, - "node_modules/expect/node_modules/ansi-styles": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-5.2.0.tgz", - "integrity": "sha512-Cxwpt2SfTzTtXcfOlzGEee8O+c+MmUgGrNiBcXnuWxuFJHe6a5Hz7qwhwe5OgaSYI0IJvkLqWX1ASG+cJOkEiA==", - "dev": true, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/chalk/ansi-styles?sponsor=1" - } - }, - "node_modules/fast-json-stable-stringify": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz", - "integrity": "sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==", - "dev": true - }, - "node_modules/fast-levenshtein": { - "version": "2.0.6", - "resolved": "https://registry.npmjs.org/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz", - "integrity": "sha1-PYpcZog6FqMMqGQ+hR8Zuqd5eRc=", - "dev": true - }, - "node_modules/fb-watchman": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/fb-watchman/-/fb-watchman-2.0.1.tgz", - "integrity": "sha512-DkPJKQeY6kKwmuMretBhr7G6Vodr7bFwDYTXIkfG1gjvNpaxBTQV3PbXg6bR1c1UP4jPOX0jHUbbHANL9vRjVg==", - "dev": true, - "dependencies": { - "bser": "2.1.1" - } - }, - "node_modules/fill-range": { - "version": "7.0.1", - "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.0.1.tgz", - "integrity": "sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==", - "dev": true, - "dependencies": { - "to-regex-range": "^5.0.1" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/find-cache-dir": { - "version": "3.3.1", - "resolved": "https://registry.npmjs.org/find-cache-dir/-/find-cache-dir-3.3.1.tgz", - "integrity": "sha512-t2GDMt3oGC/v+BMwzmllWDuJF/xcDtE5j/fCGbqDD7OLuJkj0cfh1YSA5VKPvwMeLFLNDBkwOKZ2X85jGLVftQ==", - "dev": true, - "dependencies": { - "commondir": "^1.0.1", - "make-dir": "^3.0.2", - "pkg-dir": "^4.1.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/find-up": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/find-up/-/find-up-4.1.0.tgz", - "integrity": "sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==", - "dev": true, - "dependencies": { - "locate-path": "^5.0.0", - "path-exists": "^4.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/form-data": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/form-data/-/form-data-3.0.1.tgz", - "integrity": "sha512-RHkBKtLWUVwd7SqRIvCZMEvAMoGUp0XU+seQiZejj0COz3RI3hWP4sCv3gZWWLjJTd7rGwcsF5eKZGii0r/hbg==", - "dev": true, - "dependencies": { - "asynckit": "^0.4.0", - "combined-stream": "^1.0.8", - "mime-types": "^2.1.12" - }, - "engines": { - "node": ">= 6" - } - }, - "node_modules/fs-extra": { - "version": "8.1.0", - "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-8.1.0.tgz", - "integrity": "sha512-yhlQgA6mnOJUKOsRUFsgJdQCvkKhcz8tlZG5HBQfReYZy46OwLcY+Zia0mtdHsOo9y/hP+CxMN0TU9QxoOtG4g==", - "dev": true, - "dependencies": { - "graceful-fs": "^4.2.0", - "jsonfile": "^4.0.0", - "universalify": "^0.1.0" - }, - "engines": { - "node": ">=6 <7 || >=8" - } - }, - "node_modules/fs.realpath": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz", - "integrity": "sha1-FQStJSMVjKpA20onh8sBQRmU6k8=", - "dev": true - }, - "node_modules/fsevents": { - "version": "2.3.2", - "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.2.tgz", - "integrity": "sha512-xiqMQR4xAeHTuB9uWm+fFRcIOgKBMiOBP+eXiyT7jsgVCq1bkVygt00oASowB7EdtpOHaaPgKt812P9ab+DDKA==", - "dev": true, - "hasInstallScript": true, - "optional": true, - "os": [ - "darwin" - ], - "engines": { - "node": "^8.16.0 || ^10.6.0 || >=11.0.0" - } - }, - "node_modules/function-bind": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.1.tgz", - "integrity": "sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A==", - "dev": true - }, - "node_modules/gensync": { - "version": "1.0.0-beta.2", - "resolved": "https://registry.npmjs.org/gensync/-/gensync-1.0.0-beta.2.tgz", - "integrity": "sha512-3hN7NaskYvMDLQY55gnW3NQ+mesEAepTqlg+VEbj7zzqEMBVNhzcGYYeqFo/TlYz6eQiFcp1HcsCZO+nGgS8zg==", - "dev": true, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/get-caller-file": { - "version": "2.0.5", - "resolved": "https://registry.npmjs.org/get-caller-file/-/get-caller-file-2.0.5.tgz", - "integrity": "sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==", - "dev": true, - "engines": { - "node": "6.* || 8.* || >= 10.*" - } - }, - "node_modules/get-package-type": { - "version": "0.1.0", - "resolved": "https://registry.npmjs.org/get-package-type/-/get-package-type-0.1.0.tgz", - "integrity": "sha512-pjzuKtY64GYfWizNAJ0fr9VqttZkNiK2iS430LtIHzjBEr6bX8Am2zm4sW4Ro5wjWW5cAlRL1qAMTcXbjNAO2Q==", - "dev": true, - "engines": { - "node": ">=8.0.0" - } - }, - "node_modules/get-stream": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-6.0.1.tgz", - "integrity": "sha512-ts6Wi+2j3jQjqi70w5AlN8DFnkSwC+MqmxEzdEALB2qXZYV3X/b1CTfgPLGJNMeAWxdPfU8FO1ms3NUfaHCPYg==", - "dev": true, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/glob": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.0.tgz", - "integrity": "sha512-lmLf6gtyrPq8tTjSmrO94wBeQbFR3HbLHbuyD69wuyQkImp2hWqMGB47OX65FBkPffO641IP9jWa1z4ivqG26Q==", - "dev": true, - "dependencies": { - "fs.realpath": "^1.0.0", - "inflight": "^1.0.4", - "inherits": "2", - "minimatch": "^3.0.4", - "once": "^1.3.0", - "path-is-absolute": "^1.0.0" - }, - "engines": { - "node": "*" - }, - "funding": { - "url": "https://github.com/sponsors/isaacs" - } - }, - "node_modules/globals": { - "version": "11.12.0", - "resolved": "https://registry.npmjs.org/globals/-/globals-11.12.0.tgz", - "integrity": "sha512-WOBp/EEGUiIsJSp7wcv/y6MO+lV9UoncWqxuFfm8eBwzWNgyfBd6Gz+IeKQ9jCmyhoH99g15M3T+QaVHFjizVA==", - "dev": true, - "engines": { - "node": ">=4" - } - }, - "node_modules/graceful-fs": { - "version": "4.2.4", - "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.4.tgz", - "integrity": "sha512-WjKPNJF79dtJAVniUlGGWHYGz2jWxT6VhN/4m1NdkbZ2nOsEF+cI1Edgql5zCRhs/VsQYRvrXctxktVXZUkixw==", - "dev": true - }, - "node_modules/has": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/has/-/has-1.0.3.tgz", - "integrity": "sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw==", - "dev": true, - "dependencies": { - "function-bind": "^1.1.1" - }, - "engines": { - "node": ">= 0.4.0" - } - }, - "node_modules/has-flag": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/html-encoding-sniffer": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/html-encoding-sniffer/-/html-encoding-sniffer-2.0.1.tgz", - "integrity": "sha512-D5JbOMBIR/TVZkubHT+OyT2705QvogUW4IBn6nHd756OwieSF9aDYFj4dv6HHEVGYbHaLETa3WggZYWWMyy3ZQ==", - "dev": true, - "dependencies": { - "whatwg-encoding": "^1.0.5" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/html-escaper": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/html-escaper/-/html-escaper-2.0.2.tgz", - "integrity": "sha512-H2iMtd0I4Mt5eYiapRdIDjp+XzelXQ0tFE4JS7YFwFevXXMmOp9myNrUvCg0D6ws8iqkRPBfKHgbwig1SmlLfg==", - "dev": true - }, - "node_modules/http-proxy-agent": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/http-proxy-agent/-/http-proxy-agent-4.0.1.tgz", - "integrity": "sha512-k0zdNgqWTGA6aeIRVpvfVob4fL52dTfaehylg0Y4UvSySvOq/Y+BOyPrgpUrA7HylqvU8vIZGsRuXmspskV0Tg==", - "dev": true, - "dependencies": { - "@tootallnate/once": "1", - "agent-base": "6", - "debug": "4" - }, - "engines": { - "node": ">= 6" - } - }, - "node_modules/https-proxy-agent": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/https-proxy-agent/-/https-proxy-agent-5.0.0.tgz", - "integrity": "sha512-EkYm5BcKUGiduxzSt3Eppko+PiNWNEpa4ySk9vTC6wDsQJW9rHSa+UhGNJoRYp7bz6Ht1eaRIa6QaJqO5rCFbA==", - "dev": true, - "dependencies": { - "agent-base": "6", - "debug": "4" - }, - "engines": { - "node": ">= 6" - } - }, - "node_modules/human-signals": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/human-signals/-/human-signals-2.1.0.tgz", - "integrity": "sha512-B4FFZ6q/T2jhhksgkbEW3HBvWIfDW85snkQgawt07S7J5QXTk6BkNV+0yAeZrM5QpMAdYlocGoljn0sJ/WQkFw==", - "dev": true, - "engines": { - "node": ">=10.17.0" - } - }, - "node_modules/iconv-lite": { - "version": "0.4.24", - "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.24.tgz", - "integrity": "sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA==", - "dev": true, - "dependencies": { - "safer-buffer": ">= 2.1.2 < 3" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/import-local": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/import-local/-/import-local-3.0.2.tgz", - "integrity": "sha512-vjL3+w0oulAVZ0hBHnxa/Nm5TAurf9YLQJDhqRZyqb+VKGOB6LU8t9H1Nr5CIo16vh9XfJTOoHwU0B71S557gA==", - "dev": true, - "dependencies": { - "pkg-dir": "^4.2.0", - "resolve-cwd": "^3.0.0" - }, - "bin": { - "import-local-fixture": "fixtures/cli.js" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/imurmurhash": { - "version": "0.1.4", - "resolved": "https://registry.npmjs.org/imurmurhash/-/imurmurhash-0.1.4.tgz", - "integrity": "sha1-khi5srkoojixPcT7a21XbyMUU+o=", - "dev": true, - "engines": { - "node": ">=0.8.19" - } - }, - "node_modules/inflight": { - "version": "1.0.6", - "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz", - "integrity": "sha1-Sb1jMdfQLQwJvJEKEHW6gWW1bfk=", - "dev": true, - "dependencies": { - "once": "^1.3.0", - "wrappy": "1" - } - }, - "node_modules/inherits": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz", - "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==", - "dev": true - }, - "node_modules/is-ci": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/is-ci/-/is-ci-3.0.0.tgz", - "integrity": "sha512-kDXyttuLeslKAHYL/K28F2YkM3x5jvFPEw3yXbRptXydjD9rpLEz+C5K5iutY9ZiUu6AP41JdvRQwF4Iqs4ZCQ==", - "dev": true, - "dependencies": { - "ci-info": "^3.1.1" - }, - "bin": { - "is-ci": "bin.js" - } - }, - "node_modules/is-core-module": { - "version": "2.4.0", - "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.4.0.tgz", - "integrity": "sha512-6A2fkfq1rfeQZjxrZJGerpLCTHRNEBiSgnu0+obeJpEPZRUooHgsizvzv0ZjJwOz3iWIHdJtVWJ/tmPr3D21/A==", - "dev": true, - "dependencies": { - "has": "^1.0.3" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/is-fullwidth-code-point": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", - "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/is-generator-fn": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/is-generator-fn/-/is-generator-fn-2.1.0.tgz", - "integrity": "sha512-cTIB4yPYL/Grw0EaSzASzg6bBy9gqCofvWN8okThAYIxKJZC+udlRAmGbM0XLeniEJSs8uEgHPGuHSe1XsOLSQ==", - "dev": true, - "engines": { - "node": ">=6" - } - }, - "node_modules/is-module": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-module/-/is-module-1.0.0.tgz", - "integrity": "sha1-Mlj7afeMFNW4FdZkM2tM/7ZEFZE=", - "dev": true - }, - "node_modules/is-number": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz", - "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==", - "dev": true, - "engines": { - "node": ">=0.12.0" - } - }, - "node_modules/is-potential-custom-element-name": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/is-potential-custom-element-name/-/is-potential-custom-element-name-1.0.1.tgz", - "integrity": "sha512-bCYeRA2rVibKZd+s2625gGnGF/t7DSqDs4dP7CrLA1m7jKWz6pps0LpYLJN8Q64HtmPKJ1hrN3nzPNKFEKOUiQ==", - "dev": true - }, - "node_modules/is-reference": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/is-reference/-/is-reference-1.1.4.tgz", - "integrity": "sha512-uJA/CDPO3Tao3GTrxYn6AwkM4nUPJiGGYu5+cB8qbC7WGFlrKZbiRo7SFKxUAEpFUfiHofWCXBUNhvYJMh+6zw==", - "dev": true, - "dependencies": { - "@types/estree": "0.0.39" - } - }, - "node_modules/is-stream": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-2.0.1.tgz", - "integrity": "sha512-hFoiJiTl63nn+kstHGBtewWSKnQLpyb155KHheA1l39uvtO9nWIop1p3udqPcUd/xbF1VLMO4n7OI6p7RbngDg==", - "dev": true, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/is-typedarray": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-typedarray/-/is-typedarray-1.0.0.tgz", - "integrity": "sha1-5HnICFjfDBsR3dppQPlgEfzaSpo=", - "dev": true - }, - "node_modules/isexe": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz", - "integrity": "sha1-6PvzdNxVb/iUehDcsFctYz8s+hA=", - "dev": true - }, - "node_modules/istanbul-lib-coverage": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/istanbul-lib-coverage/-/istanbul-lib-coverage-3.0.1.tgz", - "integrity": "sha512-GvCYYTxaCPqwMjobtVcVKvSHtAGe48MNhGjpK8LtVF8K0ISX7hCKl85LgtuaSneWVyQmaGcW3iXVV3GaZSLpmQ==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/istanbul-lib-instrument": { - "version": "4.0.3", - "resolved": "https://registry.npmjs.org/istanbul-lib-instrument/-/istanbul-lib-instrument-4.0.3.tgz", - "integrity": "sha512-BXgQl9kf4WTCPCCpmFGoJkz/+uhvm7h7PFKUYxh7qarQd3ER33vHG//qaE8eN25l07YqZPpHXU9I09l/RD5aGQ==", - "dev": true, - "dependencies": { - "@babel/core": "^7.7.5", - "@istanbuljs/schema": "^0.1.2", - "istanbul-lib-coverage": "^3.0.0", - "semver": "^6.3.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/istanbul-lib-report": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/istanbul-lib-report/-/istanbul-lib-report-3.0.0.tgz", - "integrity": "sha512-wcdi+uAKzfiGT2abPpKZ0hSU1rGQjUQnLvtY5MpQ7QCTahD3VODhcu4wcfY1YtkGaDD5yuydOLINXsfbus9ROw==", - "dev": true, - "dependencies": { - "istanbul-lib-coverage": "^3.0.0", - "make-dir": "^3.0.0", - "supports-color": "^7.1.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/istanbul-lib-source-maps": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/istanbul-lib-source-maps/-/istanbul-lib-source-maps-4.0.0.tgz", - "integrity": "sha512-c16LpFRkR8vQXyHZ5nLpY35JZtzj1PQY1iZmesUbf1FZHbIupcWfjgOXBY9YHkLEQ6puz1u4Dgj6qmU/DisrZg==", - "dev": true, - "dependencies": { - "debug": "^4.1.1", - "istanbul-lib-coverage": "^3.0.0", - "source-map": "^0.6.1" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/istanbul-reports": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/istanbul-reports/-/istanbul-reports-3.0.2.tgz", - "integrity": "sha512-9tZvz7AiR3PEDNGiV9vIouQ/EAcqMXFmkcA1CDFTwOB98OZVDL0PH9glHotf5Ugp6GCOTypfzGWI/OqjWNCRUw==", - "dev": true, - "dependencies": { - "html-escaper": "^2.0.0", - "istanbul-lib-report": "^3.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/jest": { - "version": "27.2.4", - "resolved": "https://registry.npmjs.org/jest/-/jest-27.2.4.tgz", - "integrity": "sha512-h4uqb1EQLfPulWyUFFWv9e9Nn8sCqsJ/j3wk/KCY0p4s4s0ICCfP3iMf6hRf5hEhsDyvyrCgKiZXma63gMz16A==", - "dev": true, - "dependencies": { - "@jest/core": "^27.2.4", - "import-local": "^3.0.2", - "jest-cli": "^27.2.4" - }, - "bin": { - "jest": "bin/jest.js" - }, - "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" - }, - "peerDependencies": { - "node-notifier": "^8.0.1 || ^9.0.0 || ^10.0.0" - }, - "peerDependenciesMeta": { - "node-notifier": { - "optional": true - } - } - }, - "node_modules/jest-changed-files": { - "version": "27.2.4", - "resolved": "https://registry.npmjs.org/jest-changed-files/-/jest-changed-files-27.2.4.tgz", - "integrity": "sha512-eeO1C1u4ex7pdTroYXezr+rbr957myyVoKGjcY4R1TJi3A+9v+4fu1Iv9J4eLq1bgFyT3O3iRWU9lZsEE7J72Q==", - "dev": true, - "dependencies": { - "@jest/types": "^27.2.4", - "execa": "^5.0.0", - "throat": "^6.0.1" - }, - "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" - } - }, - "node_modules/jest-circus": { - "version": "27.2.4", - "resolved": "https://registry.npmjs.org/jest-circus/-/jest-circus-27.2.4.tgz", - "integrity": "sha512-TtheheTElrGjlsY9VxkzUU1qwIx05ItIusMVKnvNkMt4o/PeegLRcjq3Db2Jz0GGdBalJdbzLZBgeulZAJxJWA==", - "dev": true, - "dependencies": { - "@jest/environment": "^27.2.4", - "@jest/test-result": "^27.2.4", - "@jest/types": "^27.2.4", - "@types/node": "*", - "chalk": "^4.0.0", - "co": "^4.6.0", - "dedent": "^0.7.0", - "expect": "^27.2.4", - "is-generator-fn": "^2.0.0", - "jest-each": "^27.2.4", - "jest-matcher-utils": "^27.2.4", - "jest-message-util": "^27.2.4", - "jest-runtime": "^27.2.4", - "jest-snapshot": "^27.2.4", - "jest-util": "^27.2.4", - "pretty-format": "^27.2.4", - "slash": "^3.0.0", - "stack-utils": "^2.0.3", - "throat": "^6.0.1" - }, - "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" - } - }, - "node_modules/jest-cli": { - "version": "27.2.4", - "resolved": "https://registry.npmjs.org/jest-cli/-/jest-cli-27.2.4.tgz", - "integrity": "sha512-4kpQQkg74HYLaXo3nzwtg4PYxSLgL7puz1LXHj5Tu85KmlIpxQFjRkXlx4V47CYFFIDoyl3rHA/cXOxUWyMpNg==", - "dev": true, - "dependencies": { - "@jest/core": "^27.2.4", - "@jest/test-result": "^27.2.4", - "@jest/types": "^27.2.4", - "chalk": "^4.0.0", - "exit": "^0.1.2", - "graceful-fs": "^4.2.4", - "import-local": "^3.0.2", - "jest-config": "^27.2.4", - "jest-util": "^27.2.4", - "jest-validate": "^27.2.4", - "prompts": "^2.0.1", - "yargs": "^16.2.0" - }, - "bin": { - "jest": "bin/jest.js" - }, - "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" - }, - "peerDependencies": { - "node-notifier": "^8.0.1 || ^9.0.0 || ^10.0.0" - }, - "peerDependenciesMeta": { - "node-notifier": { - "optional": true - } - } - }, - "node_modules/jest-config": { - "version": "27.2.4", - "resolved": "https://registry.npmjs.org/jest-config/-/jest-config-27.2.4.tgz", - "integrity": "sha512-tWy0UxhdzqiKyp4l5Vq4HxLyD+gH5td+GCF3c22/DJ0bYAOsMo+qi2XtbJI6oYMH5JOJQs9nLW/r34nvFCehjA==", - "dev": true, - "dependencies": { - "@babel/core": "^7.1.0", - "@jest/test-sequencer": "^27.2.4", - "@jest/types": "^27.2.4", - "babel-jest": "^27.2.4", - "chalk": "^4.0.0", - "deepmerge": "^4.2.2", - "glob": "^7.1.1", - "graceful-fs": "^4.2.4", - "is-ci": "^3.0.0", - "jest-circus": "^27.2.4", - "jest-environment-jsdom": "^27.2.4", - "jest-environment-node": "^27.2.4", - "jest-get-type": "^27.0.6", - "jest-jasmine2": "^27.2.4", - "jest-regex-util": "^27.0.6", - "jest-resolve": "^27.2.4", - "jest-runner": "^27.2.4", - "jest-util": "^27.2.4", - "jest-validate": "^27.2.4", - "micromatch": "^4.0.4", - "pretty-format": "^27.2.4" - }, - "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" - }, - "peerDependencies": { - "ts-node": ">=9.0.0" - }, - "peerDependenciesMeta": { - "ts-node": { - "optional": true - } - } - }, - "node_modules/jest-diff": { - "version": "27.2.4", - "resolved": "https://registry.npmjs.org/jest-diff/-/jest-diff-27.2.4.tgz", - "integrity": "sha512-bLAVlDSCR3gqUPGv+4nzVpEXGsHh98HjUL7Vb2hVyyuBDoQmja8eJb0imUABsuxBeUVmf47taJSAd9nDrwWKEg==", - "dev": true, - "dependencies": { - "chalk": "^4.0.0", - "diff-sequences": "^27.0.6", - "jest-get-type": "^27.0.6", - "pretty-format": "^27.2.4" - }, - "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" - } - }, - "node_modules/jest-docblock": { - "version": "27.0.6", - "resolved": "https://registry.npmjs.org/jest-docblock/-/jest-docblock-27.0.6.tgz", - "integrity": "sha512-Fid6dPcjwepTFraz0YxIMCi7dejjJ/KL9FBjPYhBp4Sv1Y9PdhImlKZqYU555BlN4TQKaTc+F2Av1z+anVyGkA==", - "dev": true, - "dependencies": { - "detect-newline": "^3.0.0" - }, - "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" - } - }, - "node_modules/jest-each": { - "version": "27.2.4", - "resolved": "https://registry.npmjs.org/jest-each/-/jest-each-27.2.4.tgz", - "integrity": "sha512-w9XVc+0EDBUTJS4xBNJ7N2JCcWItFd006lFjz77OarAQcQ10eFDBMrfDv2GBJMKlXe9aq0HrIIF51AXcZrRJyg==", - "dev": true, - "dependencies": { - "@jest/types": "^27.2.4", - "chalk": "^4.0.0", - "jest-get-type": "^27.0.6", - "jest-util": "^27.2.4", - "pretty-format": "^27.2.4" - }, - "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" - } - }, - "node_modules/jest-environment-jsdom": { - "version": "27.2.4", - "resolved": "https://registry.npmjs.org/jest-environment-jsdom/-/jest-environment-jsdom-27.2.4.tgz", - "integrity": "sha512-X70pTXFSypD7AIzKT1mLnDi5hP9w9mdTRcOGOmoDoBrNyNEg4rYm6d4LQWFLc9ps1VnMuDOkFSG0wjSNYGjkng==", - "dev": true, - "dependencies": { - "@jest/environment": "^27.2.4", - "@jest/fake-timers": "^27.2.4", - "@jest/types": "^27.2.4", - "@types/node": "*", - "jest-mock": "^27.2.4", - "jest-util": "^27.2.4", - "jsdom": "^16.6.0" - }, - "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" - } - }, - "node_modules/jest-environment-node": { - "version": "27.2.4", - "resolved": "https://registry.npmjs.org/jest-environment-node/-/jest-environment-node-27.2.4.tgz", - "integrity": "sha512-ZbVbFSnbzTvhLOIkqh5lcLuGCCFvtG4xTXIRPK99rV2KzQT3kNg16KZwfTnLNlIiWCE8do960eToeDfcqmpSAw==", - "dev": true, - "dependencies": { - "@jest/environment": "^27.2.4", - "@jest/fake-timers": "^27.2.4", - "@jest/types": "^27.2.4", - "@types/node": "*", - "jest-mock": "^27.2.4", - "jest-util": "^27.2.4" - }, - "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" - } - }, - "node_modules/jest-get-type": { - "version": "27.0.6", - "resolved": "https://registry.npmjs.org/jest-get-type/-/jest-get-type-27.0.6.tgz", - "integrity": "sha512-XTkK5exIeUbbveehcSR8w0bhH+c0yloW/Wpl+9vZrjzztCPWrxhHwkIFpZzCt71oRBsgxmuUfxEqOYoZI2macg==", - "dev": true, - "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" - } - }, - "node_modules/jest-haste-map": { - "version": "27.2.4", - "resolved": "https://registry.npmjs.org/jest-haste-map/-/jest-haste-map-27.2.4.tgz", - "integrity": "sha512-bkJ4bT00T2K+1NZXbRcyKnbJ42I6QBvoDNMTAQQDBhaGNnZreiQKUNqax0e6hLTx7E75pKDeltVu3V1HAdu+YA==", - "dev": true, - "dependencies": { - "@jest/types": "^27.2.4", - "@types/graceful-fs": "^4.1.2", - "@types/node": "*", - "anymatch": "^3.0.3", - "fb-watchman": "^2.0.0", - "graceful-fs": "^4.2.4", - "jest-regex-util": "^27.0.6", - "jest-serializer": "^27.0.6", - "jest-util": "^27.2.4", - "jest-worker": "^27.2.4", - "micromatch": "^4.0.4", - "walker": "^1.0.7" - }, - "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" - }, - "optionalDependencies": { - "fsevents": "^2.3.2" - } - }, - "node_modules/jest-jasmine2": { - "version": "27.2.4", - "resolved": "https://registry.npmjs.org/jest-jasmine2/-/jest-jasmine2-27.2.4.tgz", - "integrity": "sha512-fcffjO/xLWLVnW2ct3No4EksxM5RyPwHDYu9QU+90cC+/eSMLkFAxS55vkqsxexOO5zSsZ3foVpMQcg/amSeIQ==", - "dev": true, - "dependencies": { - "@babel/traverse": "^7.1.0", - "@jest/environment": "^27.2.4", - "@jest/source-map": "^27.0.6", - "@jest/test-result": "^27.2.4", - "@jest/types": "^27.2.4", - "@types/node": "*", - "chalk": "^4.0.0", - "co": "^4.6.0", - "expect": "^27.2.4", - "is-generator-fn": "^2.0.0", - "jest-each": "^27.2.4", - "jest-matcher-utils": "^27.2.4", - "jest-message-util": "^27.2.4", - "jest-runtime": "^27.2.4", - "jest-snapshot": "^27.2.4", - "jest-util": "^27.2.4", - "pretty-format": "^27.2.4", - "throat": "^6.0.1" - }, - "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" - } - }, - "node_modules/jest-leak-detector": { - "version": "27.2.4", - "resolved": "https://registry.npmjs.org/jest-leak-detector/-/jest-leak-detector-27.2.4.tgz", - "integrity": "sha512-SrcHWbe0EHg/bw2uBjVoHacTo5xosl068x2Q0aWsjr2yYuW2XwqrSkZV4lurUop0jhv1709ymG4or+8E4sH27Q==", - "dev": true, - "dependencies": { - "jest-get-type": "^27.0.6", - "pretty-format": "^27.2.4" - }, - "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" - } - }, - "node_modules/jest-matcher-utils": { - "version": "27.2.4", - "resolved": "https://registry.npmjs.org/jest-matcher-utils/-/jest-matcher-utils-27.2.4.tgz", - "integrity": "sha512-nQeLfFAIPPkyhkDfifAPfP/U5wm1x0fLtAzqXZSSKckXDNuk2aaOfQiDYv1Mgf5GY6yOsxfUnvNm3dDjXM+BXw==", - "dev": true, - "dependencies": { - "chalk": "^4.0.0", - "jest-diff": "^27.2.4", - "jest-get-type": "^27.0.6", - "pretty-format": "^27.2.4" - }, - "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" - } - }, - "node_modules/jest-message-util": { - "version": "27.2.4", - "resolved": "https://registry.npmjs.org/jest-message-util/-/jest-message-util-27.2.4.tgz", - "integrity": "sha512-wbKT/BNGnBVB9nzi+IoaLkXt6fbSvqUxx+IYY66YFh96J3goY33BAaNG3uPqaw/Sh/FR9YpXGVDfd5DJdbh4nA==", - "dev": true, - "dependencies": { - "@babel/code-frame": "^7.12.13", - "@jest/types": "^27.2.4", - "@types/stack-utils": "^2.0.0", - "chalk": "^4.0.0", - "graceful-fs": "^4.2.4", - "micromatch": "^4.0.4", - "pretty-format": "^27.2.4", - "slash": "^3.0.0", - "stack-utils": "^2.0.3" - }, - "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" - } - }, - "node_modules/jest-mock": { - "version": "27.2.4", - "resolved": "https://registry.npmjs.org/jest-mock/-/jest-mock-27.2.4.tgz", - "integrity": "sha512-iVRU905rutaAoUcrt5Tm1JoHHWi24YabqEGXjPJI4tAyA6wZ7mzDi3GrZ+M7ebgWBqUkZE93GAx1STk7yCMIQA==", - "dev": true, - "dependencies": { - "@jest/types": "^27.2.4", - "@types/node": "*" - }, - "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" - } - }, - "node_modules/jest-pnp-resolver": { - "version": "1.2.2", - "resolved": "https://registry.npmjs.org/jest-pnp-resolver/-/jest-pnp-resolver-1.2.2.tgz", - "integrity": "sha512-olV41bKSMm8BdnuMsewT4jqlZ8+3TCARAXjZGT9jcoSnrfUnRCqnMoF9XEeoWjbzObpqF9dRhHQj0Xb9QdF6/w==", - "dev": true, - "engines": { - "node": ">=6" - }, - "peerDependencies": { - "jest-resolve": "*" - }, - "peerDependenciesMeta": { - "jest-resolve": { - "optional": true - } - } - }, - "node_modules/jest-regex-util": { - "version": "27.0.6", - "resolved": "https://registry.npmjs.org/jest-regex-util/-/jest-regex-util-27.0.6.tgz", - "integrity": "sha512-SUhPzBsGa1IKm8hx2F4NfTGGp+r7BXJ4CulsZ1k2kI+mGLG+lxGrs76veN2LF/aUdGosJBzKgXmNCw+BzFqBDQ==", - "dev": true, - "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" - } - }, - "node_modules/jest-resolve": { - "version": "27.2.4", - "resolved": "https://registry.npmjs.org/jest-resolve/-/jest-resolve-27.2.4.tgz", - "integrity": "sha512-IsAO/3+3BZnKjI2I4f3835TBK/90dxR7Otgufn3mnrDFTByOSXclDi3G2XJsawGV4/18IMLARJ+V7Wm7t+J89Q==", - "dev": true, - "dependencies": { - "@jest/types": "^27.2.4", - "chalk": "^4.0.0", - "escalade": "^3.1.1", - "graceful-fs": "^4.2.4", - "jest-haste-map": "^27.2.4", - "jest-pnp-resolver": "^1.2.2", - "jest-util": "^27.2.4", - "jest-validate": "^27.2.4", - "resolve": "^1.20.0", - "slash": "^3.0.0" - }, - "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" - } - }, - "node_modules/jest-resolve-dependencies": { - "version": "27.2.4", - "resolved": "https://registry.npmjs.org/jest-resolve-dependencies/-/jest-resolve-dependencies-27.2.4.tgz", - "integrity": "sha512-i5s7Uh9B3Q6uwxLpMhNKlgBf6pcemvWaORxsW1zNF/YCY3jd5EftvnGBI+fxVwJ1CBxkVfxqCvm1lpZkbaoGmg==", - "dev": true, - "dependencies": { - "@jest/types": "^27.2.4", - "jest-regex-util": "^27.0.6", - "jest-snapshot": "^27.2.4" - }, - "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" - } - }, - "node_modules/jest-runner": { - "version": "27.2.4", - "resolved": "https://registry.npmjs.org/jest-runner/-/jest-runner-27.2.4.tgz", - "integrity": "sha512-hIo5PPuNUyVDidZS8EetntuuJbQ+4IHWxmHgYZz9FIDbG2wcZjrP6b52uMDjAEQiHAn8yn8ynNe+TL8UuGFYKg==", - "dev": true, - "dependencies": { - "@jest/console": "^27.2.4", - "@jest/environment": "^27.2.4", - "@jest/test-result": "^27.2.4", - "@jest/transform": "^27.2.4", - "@jest/types": "^27.2.4", - "@types/node": "*", - "chalk": "^4.0.0", - "emittery": "^0.8.1", - "exit": "^0.1.2", - "graceful-fs": "^4.2.4", - "jest-docblock": "^27.0.6", - "jest-environment-jsdom": "^27.2.4", - "jest-environment-node": "^27.2.4", - "jest-haste-map": "^27.2.4", - "jest-leak-detector": "^27.2.4", - "jest-message-util": "^27.2.4", - "jest-resolve": "^27.2.4", - "jest-runtime": "^27.2.4", - "jest-util": "^27.2.4", - "jest-worker": "^27.2.4", - "source-map-support": "^0.5.6", - "throat": "^6.0.1" - }, - "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" - } - }, - "node_modules/jest-runtime": { - "version": "27.2.4", - "resolved": "https://registry.npmjs.org/jest-runtime/-/jest-runtime-27.2.4.tgz", - "integrity": "sha512-ICKzzYdjIi70P17MZsLLIgIQFCQmIjMFf+xYww3aUySiUA/QBPUTdUqo5B2eg4HOn9/KkUsV0z6GVgaqAPBJvg==", - "dev": true, - "dependencies": { - "@jest/console": "^27.2.4", - "@jest/environment": "^27.2.4", - "@jest/fake-timers": "^27.2.4", - "@jest/globals": "^27.2.4", - "@jest/source-map": "^27.0.6", - "@jest/test-result": "^27.2.4", - "@jest/transform": "^27.2.4", - "@jest/types": "^27.2.4", - "@types/yargs": "^16.0.0", - "chalk": "^4.0.0", - "cjs-module-lexer": "^1.0.0", - "collect-v8-coverage": "^1.0.0", - "execa": "^5.0.0", - "exit": "^0.1.2", - "glob": "^7.1.3", - "graceful-fs": "^4.2.4", - "jest-haste-map": "^27.2.4", - "jest-message-util": "^27.2.4", - "jest-mock": "^27.2.4", - "jest-regex-util": "^27.0.6", - "jest-resolve": "^27.2.4", - "jest-snapshot": "^27.2.4", - "jest-util": "^27.2.4", - "jest-validate": "^27.2.4", - "slash": "^3.0.0", - "strip-bom": "^4.0.0", - "yargs": "^16.2.0" - }, - "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" - } - }, - "node_modules/jest-serializer": { - "version": "27.0.6", - "resolved": "https://registry.npmjs.org/jest-serializer/-/jest-serializer-27.0.6.tgz", - "integrity": "sha512-PtGdVK9EGC7dsaziskfqaAPib6wTViY3G8E5wz9tLVPhHyiDNTZn/xjZ4khAw+09QkoOVpn7vF5nPSN6dtBexA==", - "dev": true, - "dependencies": { - "@types/node": "*", - "graceful-fs": "^4.2.4" - }, - "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" - } - }, - "node_modules/jest-snapshot": { - "version": "27.2.4", - "resolved": "https://registry.npmjs.org/jest-snapshot/-/jest-snapshot-27.2.4.tgz", - "integrity": "sha512-5DFxK31rYS8X8C6WXsFx8XxrxW3PGa6+9IrUcZdTLg1aEyXDGIeiBh4jbwvh655bg/9vTETbEj/njfZicHTZZw==", - "dev": true, - "dependencies": { - "@babel/core": "^7.7.2", - "@babel/generator": "^7.7.2", - "@babel/parser": "^7.7.2", - "@babel/plugin-syntax-typescript": "^7.7.2", - "@babel/traverse": "^7.7.2", - "@babel/types": "^7.0.0", - "@jest/transform": "^27.2.4", - "@jest/types": "^27.2.4", - "@types/babel__traverse": "^7.0.4", - "@types/prettier": "^2.1.5", - "babel-preset-current-node-syntax": "^1.0.0", - "chalk": "^4.0.0", - "expect": "^27.2.4", - "graceful-fs": "^4.2.4", - "jest-diff": "^27.2.4", - "jest-get-type": "^27.0.6", - "jest-haste-map": "^27.2.4", - "jest-matcher-utils": "^27.2.4", - "jest-message-util": "^27.2.4", - "jest-resolve": "^27.2.4", - "jest-util": "^27.2.4", - "natural-compare": "^1.4.0", - "pretty-format": "^27.2.4", - "semver": "^7.3.2" - }, - "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" - } - }, - "node_modules/jest-snapshot/node_modules/lru-cache": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", - "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", - "dev": true, - "dependencies": { - "yallist": "^4.0.0" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/jest-snapshot/node_modules/semver": { - "version": "7.3.5", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.5.tgz", - "integrity": "sha512-PoeGJYh8HK4BTO/a9Tf6ZG3veo/A7ZVsYrSA6J8ny9nb3B1VrpkuN+z9OE5wfE5p6H4LchYZsegiQgbJD94ZFQ==", - "dev": true, - "dependencies": { - "lru-cache": "^6.0.0" - }, - "bin": { - "semver": "bin/semver.js" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/jest-snapshot/node_modules/yallist": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", - "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", - "dev": true - }, - "node_modules/jest-util": { - "version": "27.2.4", - "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-27.2.4.tgz", - "integrity": "sha512-mW++4u+fSvAt3YBWm5IpbmRAceUqa2B++JlUZTiuEt2AmNYn0Yw5oay4cP17TGsMINRNPSGiJ2zNnX60g+VbFg==", - "dev": true, - "dependencies": { - "@jest/types": "^27.2.4", - "@types/node": "*", - "chalk": "^4.0.0", - "graceful-fs": "^4.2.4", - "is-ci": "^3.0.0", - "picomatch": "^2.2.3" - }, - "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" - } - }, - "node_modules/jest-validate": { - "version": "27.2.4", - "resolved": "https://registry.npmjs.org/jest-validate/-/jest-validate-27.2.4.tgz", - "integrity": "sha512-VMtbxbkd7LHnIH7PChdDtrluCFRJ4b1YV2YJzNwwsASMWftq/HgqiqjvptBOWyWOtevgO3f14wPxkPcLlVBRog==", - "dev": true, - "dependencies": { - "@jest/types": "^27.2.4", - "camelcase": "^6.2.0", - "chalk": "^4.0.0", - "jest-get-type": "^27.0.6", - "leven": "^3.1.0", - "pretty-format": "^27.2.4" - }, - "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" - } - }, - "node_modules/jest-validate/node_modules/camelcase": { - "version": "6.2.0", - "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-6.2.0.tgz", - "integrity": "sha512-c7wVvbw3f37nuobQNtgsgG9POC9qMbNuMQmTCqZv23b6MIz0fcYpBiOlv9gEN/hdLdnZTDQhg6e9Dq5M1vKvfg==", - "dev": true, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/jest-watcher": { - "version": "27.2.4", - "resolved": "https://registry.npmjs.org/jest-watcher/-/jest-watcher-27.2.4.tgz", - "integrity": "sha512-LXC/0+dKxhK7cfF7reflRYlzDIaQE+fL4ynhKhzg8IMILNMuI4xcjXXfUJady7OR4/TZeMg7X8eHx8uan9vqaQ==", - "dev": true, - "dependencies": { - "@jest/test-result": "^27.2.4", - "@jest/types": "^27.2.4", - "@types/node": "*", - "ansi-escapes": "^4.2.1", - "chalk": "^4.0.0", - "jest-util": "^27.2.4", - "string-length": "^4.0.1" - }, - "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" - } - }, - "node_modules/jest-worker": { - "version": "27.2.4", - "resolved": "https://registry.npmjs.org/jest-worker/-/jest-worker-27.2.4.tgz", - "integrity": "sha512-Zq9A2Pw59KkVjBBKD1i3iE2e22oSjXhUKKuAK1HGX8flGwkm6NMozyEYzKd41hXc64dbd/0eWFeEEuxqXyhM+g==", - "dev": true, - "dependencies": { - "@types/node": "*", - "merge-stream": "^2.0.0", - "supports-color": "^8.0.0" - }, - "engines": { - "node": ">= 10.13.0" - } - }, - "node_modules/jest-worker/node_modules/supports-color": { - "version": "8.1.1", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-8.1.1.tgz", - "integrity": "sha512-MpUEN2OodtUzxvKQl72cUF7RQ5EiHsGvSsVG0ia9c5RbWGL2CI4C7EpPS8UTBIplnlzZiNuV56w+FuNxy3ty2Q==", - "dev": true, - "dependencies": { - "has-flag": "^4.0.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/chalk/supports-color?sponsor=1" - } - }, - "node_modules/js-tokens": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-4.0.0.tgz", - "integrity": "sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==", - "dev": true - }, - "node_modules/js-yaml": { - "version": "3.14.1", - "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.14.1.tgz", - "integrity": "sha512-okMH7OXXJ7YrN9Ok3/SXrnu4iX9yOk+25nqX4imS2npuvTYDmo/QEZoqwZkYaIDk3jVvBOTOIEgEhaLOynBS9g==", - "dev": true, - "dependencies": { - "argparse": "^1.0.7", - "esprima": "^4.0.0" - }, - "bin": { - "js-yaml": "bin/js-yaml.js" - } - }, - "node_modules/jsdom": { - "version": "16.7.0", - "resolved": "https://registry.npmjs.org/jsdom/-/jsdom-16.7.0.tgz", - "integrity": "sha512-u9Smc2G1USStM+s/x1ru5Sxrl6mPYCbByG1U/hUmqaVsm4tbNyS7CicOSRyuGQYZhTu0h84qkZZQ/I+dzizSVw==", - "dev": true, - "dependencies": { - "abab": "^2.0.5", - "acorn": "^8.2.4", - "acorn-globals": "^6.0.0", - "cssom": "^0.4.4", - "cssstyle": "^2.3.0", - "data-urls": "^2.0.0", - "decimal.js": "^10.2.1", - "domexception": "^2.0.1", - "escodegen": "^2.0.0", - "form-data": "^3.0.0", - "html-encoding-sniffer": "^2.0.1", - "http-proxy-agent": "^4.0.1", - "https-proxy-agent": "^5.0.0", - "is-potential-custom-element-name": "^1.0.1", - "nwsapi": "^2.2.0", - "parse5": "6.0.1", - "saxes": "^5.0.1", - "symbol-tree": "^3.2.4", - "tough-cookie": "^4.0.0", - "w3c-hr-time": "^1.0.2", - "w3c-xmlserializer": "^2.0.0", - "webidl-conversions": "^6.1.0", - "whatwg-encoding": "^1.0.5", - "whatwg-mimetype": "^2.3.0", - "whatwg-url": "^8.5.0", - "ws": "^7.4.6", - "xml-name-validator": "^3.0.0" - }, - "engines": { - "node": ">=10" - }, - "peerDependencies": { - "canvas": "^2.5.0" - }, - "peerDependenciesMeta": { - "canvas": { - "optional": true - } - } - }, - "node_modules/jsesc": { - "version": "2.5.2", - "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-2.5.2.tgz", - "integrity": "sha512-OYu7XEzjkCQ3C5Ps3QIZsQfNpqoJyZZA99wd9aWd05NCtC5pWOkShK2mkL6HXQR6/Cy2lbNdPlZBpuQHXE63gA==", - "dev": true, - "bin": { - "jsesc": "bin/jsesc" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/json5": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/json5/-/json5-2.2.0.tgz", - "integrity": "sha512-f+8cldu7X/y7RAJurMEJmdoKXGB/X550w2Nr3tTbezL6RwEE/iMcm+tZnXeoZtKuOq6ft8+CqzEkrIgx1fPoQA==", - "dev": true, - "dependencies": { - "minimist": "^1.2.5" - }, - "bin": { - "json5": "lib/cli.js" - }, - "engines": { - "node": ">=6" - } - }, - "node_modules/jsonc-parser": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/jsonc-parser/-/jsonc-parser-3.0.0.tgz", - "integrity": "sha512-fQzRfAbIBnR0IQvftw9FJveWiHp72Fg20giDrHz6TdfB12UH/uue0D3hm57UB5KgAVuniLMCaS8P1IMj9NR7cA==", - "dev": true - }, - "node_modules/jsonfile": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-4.0.0.tgz", - "integrity": "sha1-h3Gq4HmbZAdrdmQPygWPnBDjPss=", - "dev": true, - "dependencies": { - "graceful-fs": "^4.1.6" - } - }, - "node_modules/kleur": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/kleur/-/kleur-3.0.3.tgz", - "integrity": "sha512-eTIzlVOSUR+JxdDFepEYcBMtZ9Qqdef+rnzWdRZuMbOywu5tO2w2N7rqjoANZ5k9vywhL6Br1VRjUIgTQx4E8w==", - "dev": true, - "engines": { - "node": ">=6" - } - }, - "node_modules/leven": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/leven/-/leven-3.1.0.tgz", - "integrity": "sha512-qsda+H8jTaUaN/x5vzW2rzc+8Rw4TAQ/4KjB46IwK5VH+IlVeeeje/EoZRpiXvIqjFgK84QffqPztGI3VBLG1A==", - "dev": true, - "engines": { - "node": ">=6" - } - }, - "node_modules/levn": { - "version": "0.3.0", - "resolved": "https://registry.npmjs.org/levn/-/levn-0.3.0.tgz", - "integrity": "sha1-OwmSTt+fCDwEkP3UwLxEIeBHZO4=", - "dev": true, - "dependencies": { - "prelude-ls": "~1.1.2", - "type-check": "~0.3.2" - }, - "engines": { - "node": ">= 0.8.0" - } - }, - "node_modules/locate-path": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-5.0.0.tgz", - "integrity": "sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==", - "dev": true, - "dependencies": { - "p-locate": "^4.1.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/lodash": { - "version": "4.17.21", - "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.21.tgz", - "integrity": "sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==", - "dev": true - }, - "node_modules/lodash.camelcase": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/lodash.camelcase/-/lodash.camelcase-4.3.0.tgz", - "integrity": "sha1-soqmKIorn8ZRA1x3EfZathkDMaY=", - "dev": true - }, - "node_modules/lru-cache": { - "version": "5.1.1", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-5.1.1.tgz", - "integrity": "sha512-KpNARQA3Iwv+jTA0utUVVbrh+Jlrr1Fv0e56GGzAFOXN7dk/FviaDW8LHmK52DlcH4WP2n6gI8vN1aesBFgo9w==", - "dev": true, - "dependencies": { - "yallist": "^3.0.2" - } - }, - "node_modules/lunr": { - "version": "2.3.9", - "resolved": "https://registry.npmjs.org/lunr/-/lunr-2.3.9.tgz", - "integrity": "sha512-zTU3DaZaF3Rt9rhN3uBMGQD3dD2/vFQqnvZCDv4dl5iOzq2IZQqTxu90r4E5J+nP70J3ilqVCrbho2eWaeW8Ow==", - "dev": true - }, - "node_modules/magic-string": { - "version": "0.25.4", - "resolved": "https://registry.npmjs.org/magic-string/-/magic-string-0.25.4.tgz", - "integrity": "sha512-oycWO9nEVAP2RVPbIoDoA4Y7LFIJ3xRYov93gAyJhZkET1tNuB0u7uWkZS2LpBWTJUWnmau/To8ECWRC+jKNfw==", - "dev": true, - "dependencies": { - "sourcemap-codec": "^1.4.4" - } - }, - "node_modules/make-dir": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-3.1.0.tgz", - "integrity": "sha512-g3FeP20LNwhALb/6Cz6Dd4F2ngze0jz7tbzrD2wAV+o9FeNHe4rL+yK2md0J/fiSf1sa1ADhXqi5+oVwOM/eGw==", - "dev": true, - "dependencies": { - "semver": "^6.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/make-error": { - "version": "1.3.6", - "resolved": "https://registry.npmjs.org/make-error/-/make-error-1.3.6.tgz", - "integrity": "sha512-s8UhlNe7vPKomQhC1qFelMokr/Sc3AgNbso3n74mVPA5LTZwkB9NlXf4XPamLxJE8h0gh73rM94xvwRT2CVInw==", - "dev": true - }, - "node_modules/makeerror": { - "version": "1.0.11", - "resolved": "https://registry.npmjs.org/makeerror/-/makeerror-1.0.11.tgz", - "integrity": "sha1-4BpckQnyr3lmDk6LlYd5AYT1qWw=", - "dev": true, - "dependencies": { - "tmpl": "1.0.x" - } - }, - "node_modules/marked": { - "version": "3.0.4", - "resolved": "https://registry.npmjs.org/marked/-/marked-3.0.4.tgz", - "integrity": "sha512-jBo8AOayNaEcvBhNobg6/BLhdsK3NvnKWJg33MAAPbvTWiG4QBn9gpW1+7RssrKu4K1dKlN+0goVQwV41xEfOA==", - "dev": true, - "bin": { - "marked": "bin/marked" - }, - "engines": { - "node": ">= 12" - } - }, - "node_modules/merge-stream": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/merge-stream/-/merge-stream-2.0.0.tgz", - "integrity": "sha512-abv/qOcuPfk3URPfDzmZU1LKmuw8kT+0nIHvKrKgFrwifol/doWcdA4ZqsWQ8ENrFKkd67Mfpo/LovbIUsbt3w==", - "dev": true - }, - "node_modules/micromatch": { - "version": "4.0.4", - "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.4.tgz", - "integrity": "sha512-pRmzw/XUcwXGpD9aI9q/0XOwLNygjETJ8y0ao0wdqprrzDa4YnxLcz7fQRZr8voh8V10kGhABbNcHVk5wHgWwg==", - "dev": true, - "dependencies": { - "braces": "^3.0.1", - "picomatch": "^2.2.3" - }, - "engines": { - "node": ">=8.6" - } - }, - "node_modules/mime-db": { - "version": "1.50.0", - "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.50.0.tgz", - "integrity": "sha512-9tMZCDlYHqeERXEHO9f/hKfNXhre5dK2eE/krIvUjZbS2KPcqGDfNShIWS1uW9XOTKQKqK6qbeOci18rbfW77A==", - "dev": true, - "engines": { - "node": ">= 0.6" - } - }, - "node_modules/mime-types": { - "version": "2.1.33", - "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.33.tgz", - "integrity": "sha512-plLElXp7pRDd0bNZHw+nMd52vRYjLwQjygaNg7ddJ2uJtTlmnTCjWuPKxVu6//AdaRuME84SvLW91sIkBqGT0g==", - "dev": true, - "dependencies": { - "mime-db": "1.50.0" - }, - "engines": { - "node": ">= 0.6" - } - }, - "node_modules/mimic-fn": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/mimic-fn/-/mimic-fn-2.1.0.tgz", - "integrity": "sha512-OqbOk5oEQeAZ8WXWydlu9HJjz9WVdEIvamMCcXmuqUYjTknH/sqsWvhQ3vgwKFRR1HpjvNBKQ37nbJgYzGqGcg==", - "dev": true, - "engines": { - "node": ">=6" - } - }, - "node_modules/minimatch": { - "version": "3.0.4", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.0.4.tgz", - "integrity": "sha512-yJHVQEhyqPLUTgt9B83PXu6W3rx4MvvHvSUvToogpwoGDOUQ+yDrR0HRot+yOCdCO7u4hX3pWft6kWBBcqh0UA==", - "dev": true, - "dependencies": { - "brace-expansion": "^1.1.7" - }, - "engines": { - "node": "*" - } - }, - "node_modules/minimist": { - "version": "1.2.5", - "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.5.tgz", - "integrity": "sha512-FM9nNUYrRBAELZQT3xeZQ7fmMOBg6nWNmJKTcgsJeaLstP/UODVpGsr5OhXhhXg6f+qtJ8uiZ+PUxkDWcgIXLw==", - "dev": true - }, - "node_modules/ms": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", - "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", - "dev": true - }, - "node_modules/nanocolors": { - "version": "0.2.12", - "resolved": "https://registry.npmjs.org/nanocolors/-/nanocolors-0.2.12.tgz", - "integrity": "sha512-SFNdALvzW+rVlzqexid6epYdt8H9Zol7xDoQarioEFcFN0JHo4CYNztAxmtfgGTVRCmFlEOqqhBpoFGKqSAMug==", - "dev": true - }, - "node_modules/natural-compare": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/natural-compare/-/natural-compare-1.4.0.tgz", - "integrity": "sha1-Sr6/7tdUHywnrPspvbvRXI1bpPc=", - "dev": true - }, - "node_modules/node-int64": { - "version": "0.4.0", - "resolved": "https://registry.npmjs.org/node-int64/-/node-int64-0.4.0.tgz", - "integrity": "sha1-h6kGXNs1XTGC2PlM4RGIuCXGijs=", - "dev": true - }, - "node_modules/node-modules-regexp": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/node-modules-regexp/-/node-modules-regexp-1.0.0.tgz", - "integrity": "sha1-jZ2+KJZKSsVxLpExZCEHxx6Q7EA=", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/node-releases": { - "version": "1.1.77", - "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-1.1.77.tgz", - "integrity": "sha512-rB1DUFUNAN4Gn9keO2K1efO35IDK7yKHCdCaIMvFO7yUYmmZYeDjnGKle26G4rwj+LKRQpjyUUvMkPglwGCYNQ==", - "dev": true - }, - "node_modules/normalize-path": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz", - "integrity": "sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/npm-run-path": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/npm-run-path/-/npm-run-path-4.0.1.tgz", - "integrity": "sha512-S48WzZW777zhNIrn7gxOlISNAqi9ZC/uQFnRdbeIHhZhCA6UqpkOT8T1G7BvfdgP4Er8gF4sUbaS0i7QvIfCWw==", - "dev": true, - "dependencies": { - "path-key": "^3.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/nwsapi": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/nwsapi/-/nwsapi-2.2.0.tgz", - "integrity": "sha512-h2AatdwYH+JHiZpv7pt/gSX1XoRGb7L/qSIeuqA6GwYoF9w1vP1cw42TO0aI2pNyshRK5893hNSl+1//vHK7hQ==", - "dev": true - }, - "node_modules/once": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", - "integrity": "sha1-WDsap3WWHUsROsF9nFC6753Xa9E=", - "dev": true, - "dependencies": { - "wrappy": "1" - } - }, - "node_modules/onetime": { - "version": "5.1.2", - "resolved": "https://registry.npmjs.org/onetime/-/onetime-5.1.2.tgz", - "integrity": "sha512-kbpaSSGJTWdAY5KPVeMOKXSrPtr8C8C7wodJbcsd51jRnmD+GZu8Y0VoU6Dm5Z4vWr0Ig/1NKuWRKf7j5aaYSg==", - "dev": true, - "dependencies": { - "mimic-fn": "^2.1.0" - }, - "engines": { - "node": ">=6" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/onigasm": { - "version": "2.2.5", - "resolved": "https://registry.npmjs.org/onigasm/-/onigasm-2.2.5.tgz", - "integrity": "sha512-F+th54mPc0l1lp1ZcFMyL/jTs2Tlq4SqIHKIXGZOR/VkHkF9A7Fr5rRr5+ZG/lWeRsyrClLYRq7s/yFQ/XhWCA==", - "dev": true, - "dependencies": { - "lru-cache": "^5.1.1" - } - }, - "node_modules/optionator": { - "version": "0.8.3", - "resolved": "https://registry.npmjs.org/optionator/-/optionator-0.8.3.tgz", - "integrity": "sha512-+IW9pACdk3XWmmTXG8m3upGUJst5XRGzxMRjXzAuJ1XnIFNvfhjjIuYkDvysnPQ7qzqVzLt78BCruntqRhWQbA==", - "dev": true, - "dependencies": { - "deep-is": "~0.1.3", - "fast-levenshtein": "~2.0.6", - "levn": "~0.3.0", - "prelude-ls": "~1.1.2", - "type-check": "~0.3.2", - "word-wrap": "~1.2.3" - }, - "engines": { - "node": ">= 0.8.0" - } - }, - "node_modules/p-limit": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz", - "integrity": "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==", - "dev": true, - "dependencies": { - "p-try": "^2.0.0" - }, - "engines": { - "node": ">=6" - } - }, - "node_modules/p-locate": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-4.1.0.tgz", - "integrity": "sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==", - "dev": true, - "dependencies": { - "p-limit": "^2.2.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/p-try": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/p-try/-/p-try-2.2.0.tgz", - "integrity": "sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==", - "dev": true, - "engines": { - "node": ">=6" - } - }, - "node_modules/parse5": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/parse5/-/parse5-6.0.1.tgz", - "integrity": "sha512-Ofn/CTFzRGTTxwpNEs9PP93gXShHcTq255nzRYSKe8AkVpZY7e1fpmTfOyoIvjP5HG7Z2ZM7VS9PPhQGW2pOpw==", - "dev": true - }, - "node_modules/path-exists": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz", - "integrity": "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/path-is-absolute": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz", - "integrity": "sha1-F0uSaHNVNP+8es5r9TpanhtcX18=", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/path-key": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/path-key/-/path-key-3.1.1.tgz", - "integrity": "sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/path-parse": { - "version": "1.0.6", - "resolved": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.6.tgz", - "integrity": "sha512-GSmOT2EbHrINBf9SR7CDELwlJ8AENk3Qn7OikK4nFYAu3Ote2+JYNVvkpAEQm3/TLNEJFD/xZJjzyxg3KBWOzw==", - "dev": true - }, - "node_modules/picomatch": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.3.0.tgz", - "integrity": "sha512-lY1Q/PiJGC2zOv/z391WOTD+Z02bCgsFfvxoXXf6h7kv9o+WmsmzYqrAwY63sNgOxE4xEdq0WyUnXfKeBrSvYw==", - "dev": true, - "engines": { - "node": ">=8.6" - }, - "funding": { - "url": "https://github.com/sponsors/jonschlinkert" - } - }, - "node_modules/pirates": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/pirates/-/pirates-4.0.1.tgz", - "integrity": "sha512-WuNqLTbMI3tmfef2TKxlQmAiLHKtFhlsCZnPIpuv2Ow0RDVO8lfy1Opf4NUzlMXLjPl+Men7AuVdX6TA+s+uGA==", - "dev": true, - "dependencies": { - "node-modules-regexp": "^1.0.0" - }, - "engines": { - "node": ">= 6" - } - }, - "node_modules/pkg-dir": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/pkg-dir/-/pkg-dir-4.2.0.tgz", - "integrity": "sha512-HRDzbaKjC+AOWVXxAU/x54COGeIv9eb+6CkDSQoNTt4XyWoIJvuPsXizxu/Fr23EiekbtZwmh1IcIG/l/a10GQ==", - "dev": true, - "dependencies": { - "find-up": "^4.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/prelude-ls": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/prelude-ls/-/prelude-ls-1.1.2.tgz", - "integrity": "sha1-IZMqVJ9eUv/ZqCf1cOBL5iqX2lQ=", - "dev": true, - "engines": { - "node": ">= 0.8.0" - } - }, - "node_modules/pretty-format": { - "version": "27.2.4", - "resolved": "https://registry.npmjs.org/pretty-format/-/pretty-format-27.2.4.tgz", - "integrity": "sha512-NUjw22WJHldzxyps2YjLZkUj6q1HvjqFezkB9Y2cklN8NtVZN/kZEXGZdFw4uny3oENzV5EEMESrkI0YDUH8vg==", - "dev": true, - "dependencies": { - "@jest/types": "^27.2.4", - "ansi-regex": "^5.0.1", - "ansi-styles": "^5.0.0", - "react-is": "^17.0.1" - }, - "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" - } - }, - "node_modules/pretty-format/node_modules/ansi-styles": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-5.2.0.tgz", - "integrity": "sha512-Cxwpt2SfTzTtXcfOlzGEee8O+c+MmUgGrNiBcXnuWxuFJHe6a5Hz7qwhwe5OgaSYI0IJvkLqWX1ASG+cJOkEiA==", - "dev": true, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/chalk/ansi-styles?sponsor=1" - } - }, - "node_modules/prompts": { - "version": "2.4.1", - "resolved": "https://registry.npmjs.org/prompts/-/prompts-2.4.1.tgz", - "integrity": "sha512-EQyfIuO2hPDsX1L/blblV+H7I0knhgAd82cVneCwcdND9B8AuCDuRcBH6yIcG4dFzlOUqbazQqwGjx5xmsNLuQ==", - "dev": true, - "dependencies": { - "kleur": "^3.0.3", - "sisteransi": "^1.0.5" - }, - "engines": { - "node": ">= 6" - } - }, - "node_modules/psl": { - "version": "1.8.0", - "resolved": "https://registry.npmjs.org/psl/-/psl-1.8.0.tgz", - "integrity": "sha512-RIdOzyoavK+hA18OGGWDqUTsCLhtA7IcZ/6NCs4fFJaHBDab+pDDmDIByWFRQJq2Cd7r1OoQxBGKOaztq+hjIQ==", - "dev": true - }, - "node_modules/punycode": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.1.1.tgz", - "integrity": "sha512-XRsRjdf+j5ml+y/6GKHPZbrF/8p2Yga0JPtdqTIY2Xe5ohJPD9saDJJLPvp9+NSBprVvevdXZybnj2cv8OEd0A==", - "dev": true, - "engines": { - "node": ">=6" - } - }, - "node_modules/react-is": { - "version": "17.0.2", - "resolved": "https://registry.npmjs.org/react-is/-/react-is-17.0.2.tgz", - "integrity": "sha512-w2GsyukL62IJnlaff/nRegPQR94C/XXamvMWmSHRJ4y7Ts/4ocGRmTHvOs8PSE6pB3dWOrD/nueuU5sduBsQ4w==", - "dev": true - }, - "node_modules/require-directory": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/require-directory/-/require-directory-2.1.1.tgz", - "integrity": "sha1-jGStX9MNqxyXbiNE/+f3kqam30I=", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/resolve": { - "version": "1.20.0", - "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.20.0.tgz", - "integrity": "sha512-wENBPt4ySzg4ybFQW2TT1zMQucPK95HSh/nq2CFTZVOGut2+pQvSsgtda4d26YrYcr067wjbmzOG8byDPBX63A==", - "dev": true, - "dependencies": { - "is-core-module": "^2.2.0", - "path-parse": "^1.0.6" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/resolve-cwd": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/resolve-cwd/-/resolve-cwd-3.0.0.tgz", - "integrity": "sha512-OrZaX2Mb+rJCpH/6CpSqt9xFVpN++x01XnN2ie9g6P5/3xelLAkXWVADpdz1IHD/KFfEXyE6V0U01OQ3UO2rEg==", - "dev": true, - "dependencies": { - "resolve-from": "^5.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/resolve-from": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-5.0.0.tgz", - "integrity": "sha512-qYg9KP24dD5qka9J47d0aVky0N+b4fTU89LN9iDnjB5waksiC49rvMB0PrUJQGoTmH50XPiqOvAjDfaijGxYZw==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/rimraf": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-3.0.2.tgz", - "integrity": "sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==", - "dev": true, - "dependencies": { - "glob": "^7.1.3" - }, - "bin": { - "rimraf": "bin.js" - }, - "funding": { - "url": "https://github.com/sponsors/isaacs" - } - }, - "node_modules/rollup": { - "version": "2.58.0", - "resolved": "https://registry.npmjs.org/rollup/-/rollup-2.58.0.tgz", - "integrity": "sha512-NOXpusKnaRpbS7ZVSzcEXqxcLDOagN6iFS8p45RkoiMqPHDLwJm758UF05KlMoCRbLBTZsPOIa887gZJ1AiXvw==", - "dev": true, - "bin": { - "rollup": "dist/bin/rollup" - }, - "engines": { - "node": ">=10.0.0" - }, - "optionalDependencies": { - "fsevents": "~2.3.2" - } - }, - "node_modules/rollup-plugin-commonjs": { - "version": "10.1.0", - "resolved": "https://registry.npmjs.org/rollup-plugin-commonjs/-/rollup-plugin-commonjs-10.1.0.tgz", - "integrity": "sha512-jlXbjZSQg8EIeAAvepNwhJj++qJWNJw1Cl0YnOqKtP5Djx+fFGkp3WRh+W0ASCaFG5w1jhmzDxgu3SJuVxPF4Q==", - "dev": true, - "dependencies": { - "estree-walker": "^0.6.1", - "is-reference": "^1.1.2", - "magic-string": "^0.25.2", - "resolve": "^1.11.0", - "rollup-pluginutils": "^2.8.1" - } - }, - "node_modules/rollup-plugin-json": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/rollup-plugin-json/-/rollup-plugin-json-4.0.0.tgz", - "integrity": "sha512-hgb8N7Cgfw5SZAkb3jf0QXii6QX/FOkiIq2M7BAQIEydjHvTyxXHQiIzZaTFgx1GK0cRCHOCBHIyEkkLdWKxow==", - "dev": true, - "dependencies": { - "rollup-pluginutils": "^2.5.0" - } - }, - "node_modules/rollup-plugin-node-resolve": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/rollup-plugin-node-resolve/-/rollup-plugin-node-resolve-5.2.0.tgz", - "integrity": "sha512-jUlyaDXts7TW2CqQ4GaO5VJ4PwwaV8VUGA7+km3n6k6xtOEacf61u0VXwN80phY/evMcaS+9eIeJ9MOyDxt5Zw==", - "dev": true, - "dependencies": { - "@types/resolve": "0.0.8", - "builtin-modules": "^3.1.0", - "is-module": "^1.0.0", - "resolve": "^1.11.1", - "rollup-pluginutils": "^2.8.1" - } - }, - "node_modules/rollup-plugin-sourcemaps": { - "version": "0.6.3", - "resolved": "https://registry.npmjs.org/rollup-plugin-sourcemaps/-/rollup-plugin-sourcemaps-0.6.3.tgz", - "integrity": "sha512-paFu+nT1xvuO1tPFYXGe+XnQvg4Hjqv/eIhG8i5EspfYYPBKL57X7iVbfv55aNVASg3dzWvES9dmWsL2KhfByw==", - "dev": true, - "dependencies": { - "@rollup/pluginutils": "^3.0.9", - "source-map-resolve": "^0.6.0" - }, - "engines": { - "node": ">=10.0.0" - }, - "peerDependencies": { - "@types/node": ">=10.0.0", - "rollup": ">=0.31.2" - }, - "peerDependenciesMeta": { - "@types/node": { - "optional": true - } - } - }, - "node_modules/rollup-plugin-sourcemaps/node_modules/source-map-resolve": { - "version": "0.6.0", - "resolved": "https://registry.npmjs.org/source-map-resolve/-/source-map-resolve-0.6.0.tgz", - "integrity": "sha512-KXBr9d/fO/bWo97NXsPIAW1bFSBOuCnjbNTBMO7N59hsv5i9yzRDfcYwwt0l04+VqnKC+EwzvJZIP/qkuMgR/w==", - "dev": true, - "dependencies": { - "atob": "^2.1.2", - "decode-uri-component": "^0.2.0" - } - }, - "node_modules/rollup-plugin-typescript2": { - "version": "0.30.0", - "resolved": "https://registry.npmjs.org/rollup-plugin-typescript2/-/rollup-plugin-typescript2-0.30.0.tgz", - "integrity": "sha512-NUFszIQyhgDdhRS9ya/VEmsnpTe+GERDMmFo0Y+kf8ds51Xy57nPNGglJY+W6x1vcouA7Au7nsTgsLFj2I0PxQ==", - "dev": true, - "dependencies": { - "@rollup/pluginutils": "^4.1.0", - "find-cache-dir": "^3.3.1", - "fs-extra": "8.1.0", - "resolve": "1.20.0", - "tslib": "2.1.0" - }, - "peerDependencies": { - "rollup": ">=1.26.3", - "typescript": ">=2.4.0" - } - }, - "node_modules/rollup-plugin-typescript2/node_modules/@rollup/pluginutils": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/@rollup/pluginutils/-/pluginutils-4.1.0.tgz", - "integrity": "sha512-TrBhfJkFxA+ER+ew2U2/fHbebhLT/l/2pRk0hfj9KusXUuRXd2v0R58AfaZK9VXDQ4TogOSEmICVrQAA3zFnHQ==", - "dev": true, - "dependencies": { - "estree-walker": "^2.0.1", - "picomatch": "^2.2.2" - }, - "engines": { - "node": ">= 8.0.0" - }, - "peerDependencies": { - "rollup": "^1.20.0||^2.0.0" - } - }, - "node_modules/rollup-plugin-typescript2/node_modules/estree-walker": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/estree-walker/-/estree-walker-2.0.2.tgz", - "integrity": "sha512-Rfkk/Mp/DL7JVje3u18FxFujQlTNR2q6QfMSMB7AvCBx91NGj/ba3kCfza0f6dVDbw7YlRf/nDrn7pQrCCyQ/w==", - "dev": true - }, - "node_modules/rollup-pluginutils": { - "version": "2.8.2", - "resolved": "https://registry.npmjs.org/rollup-pluginutils/-/rollup-pluginutils-2.8.2.tgz", - "integrity": "sha512-EEp9NhnUkwY8aif6bxgovPHMoMoNr2FulJziTndpt5H9RdwC47GSGuII9XxpSdzVGM0GWrNPHV6ie1LTNJPaLQ==", - "dev": true, - "dependencies": { - "estree-walker": "^0.6.1" - } - }, - "node_modules/safe-buffer": { - "version": "5.1.2", - "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", - "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==", - "dev": true - }, - "node_modules/safer-buffer": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/safer-buffer/-/safer-buffer-2.1.2.tgz", - "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==", - "dev": true - }, - "node_modules/saxes": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/saxes/-/saxes-5.0.1.tgz", - "integrity": "sha512-5LBh1Tls8c9xgGjw3QrMwETmTMVk0oFgvrFSvWx62llR2hcEInrKNZ2GZCCuuy2lvWrdl5jhbpeqc5hRYKFOcw==", - "dev": true, - "dependencies": { - "xmlchars": "^2.2.0" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/semver": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", - "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", - "dev": true, - "bin": { - "semver": "bin/semver.js" - } - }, - "node_modules/shebang-command": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-2.0.0.tgz", - "integrity": "sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==", - "dev": true, - "dependencies": { - "shebang-regex": "^3.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/shebang-regex": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-3.0.0.tgz", - "integrity": "sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/shiki": { - "version": "0.9.11", - "resolved": "https://registry.npmjs.org/shiki/-/shiki-0.9.11.tgz", - "integrity": "sha512-tjruNTLFhU0hruCPoJP0y+B9LKOmcqUhTpxn7pcJB3fa+04gFChuEmxmrUfOJ7ZO6Jd+HwMnDHgY3lv3Tqonuw==", - "dev": true, - "dependencies": { - "jsonc-parser": "^3.0.0", - "onigasm": "^2.2.5", - "vscode-textmate": "5.2.0" - } - }, - "node_modules/signal-exit": { - "version": "3.0.5", - "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.5.tgz", - "integrity": "sha512-KWcOiKeQj6ZyXx7zq4YxSMgHRlod4czeBQZrPb8OKcohcqAXShm7E20kEMle9WBt26hFcAf0qLOcp5zmY7kOqQ==", - "dev": true - }, - "node_modules/sisteransi": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/sisteransi/-/sisteransi-1.0.5.tgz", - "integrity": "sha512-bLGGlR1QxBcynn2d5YmDX4MGjlZvy2MRBDRNHLJ8VI6l6+9FUiyTFNJ0IveOSP0bcXgVDPRcfGqA0pjaqUpfVg==", - "dev": true - }, - "node_modules/slash": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/slash/-/slash-3.0.0.tgz", - "integrity": "sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/source-map": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", - "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/source-map-support": { - "version": "0.5.20", - "resolved": "https://registry.npmjs.org/source-map-support/-/source-map-support-0.5.20.tgz", - "integrity": "sha512-n1lZZ8Ve4ksRqizaBQgxXDgKwttHDhyfQjA6YZZn8+AroHbsIz+JjwxQDxbp+7y5OYCI8t1Yk7etjD9CRd2hIw==", - "dev": true, - "dependencies": { - "buffer-from": "^1.0.0", - "source-map": "^0.6.0" - } - }, - "node_modules/sourcemap-codec": { - "version": "1.4.6", - "resolved": "https://registry.npmjs.org/sourcemap-codec/-/sourcemap-codec-1.4.6.tgz", - "integrity": "sha512-1ZooVLYFxC448piVLBbtOxFcXwnymH9oUF8nRd3CuYDVvkRBxRl6pB4Mtas5a4drtL+E8LDgFkQNcgIw6tc8Hg==", - "dev": true - }, - "node_modules/sprintf-js": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.0.3.tgz", - "integrity": "sha1-BOaSb2YolTVPPdAVIDYzuFcpfiw=", - "dev": true - }, - "node_modules/stack-utils": { - "version": "2.0.5", - "resolved": "https://registry.npmjs.org/stack-utils/-/stack-utils-2.0.5.tgz", - "integrity": "sha512-xrQcmYhOsn/1kX+Vraq+7j4oE2j/6BFscZ0etmYg81xuM8Gq0022Pxb8+IqgOFUIaxHs0KaSb7T1+OegiNrNFA==", - "dev": true, - "dependencies": { - "escape-string-regexp": "^2.0.0" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/string-length": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/string-length/-/string-length-4.0.2.tgz", - "integrity": "sha512-+l6rNN5fYHNhZZy41RXsYptCjA2Igmq4EG7kZAYFQI1E1VTXarr6ZPXBg6eq7Y6eK4FEhY6AJlyuFIb/v/S0VQ==", - "dev": true, - "dependencies": { - "char-regex": "^1.0.2", - "strip-ansi": "^6.0.0" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/string-width": { - "version": "4.2.3", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", - "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", - "dev": true, - "dependencies": { - "emoji-regex": "^8.0.0", - "is-fullwidth-code-point": "^3.0.0", - "strip-ansi": "^6.0.1" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/strip-ansi": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", - "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", - "dev": true, - "dependencies": { - "ansi-regex": "^5.0.1" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/strip-bom": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-4.0.0.tgz", - "integrity": "sha512-3xurFv5tEgii33Zi8Jtp55wEIILR9eh34FAW00PZf+JnSsTmV/ioewSgQl97JHvgjoRGwPShsWm+IdrxB35d0w==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/strip-final-newline": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/strip-final-newline/-/strip-final-newline-2.0.0.tgz", - "integrity": "sha512-BrpvfNAE3dcvq7ll3xVumzjKjZQ5tI1sEUIKr3Uoks0XUl45St3FlatVqef9prk4jRDzhW6WZg+3bk93y6pLjA==", - "dev": true, - "engines": { - "node": ">=6" - } - }, - "node_modules/supports-color": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", - "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", - "dev": true, - "dependencies": { - "has-flag": "^4.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/supports-hyperlinks": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/supports-hyperlinks/-/supports-hyperlinks-2.2.0.tgz", - "integrity": "sha512-6sXEzV5+I5j8Bmq9/vUphGRM/RJNT9SCURJLjwfOg51heRtguGWDzcaBlgAzKhQa0EVNpPEKzQuBwZ8S8WaCeQ==", - "dev": true, - "dependencies": { - "has-flag": "^4.0.0", - "supports-color": "^7.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/symbol-tree": { - "version": "3.2.4", - "resolved": "https://registry.npmjs.org/symbol-tree/-/symbol-tree-3.2.4.tgz", - "integrity": "sha512-9QNk5KwDF+Bvz+PyObkmSYjI5ksVUYtjW7AU22r2NKcfLJcXp96hkDWU3+XndOsUb+AQ9QhfzfCT2O+CNWT5Tw==", - "dev": true - }, - "node_modules/terminal-link": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/terminal-link/-/terminal-link-2.1.1.tgz", - "integrity": "sha512-un0FmiRUQNr5PJqy9kP7c40F5BOfpGlYTrxonDChEZB7pzZxRNp/bt+ymiy9/npwXya9KH99nJ/GXFIiUkYGFQ==", - "dev": true, - "dependencies": { - "ansi-escapes": "^4.2.1", - "supports-hyperlinks": "^2.0.0" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/terser": { - "version": "5.9.0", - "resolved": "https://registry.npmjs.org/terser/-/terser-5.9.0.tgz", - "integrity": "sha512-h5hxa23sCdpzcye/7b8YqbE5OwKca/ni0RQz1uRX3tGh8haaGHqcuSqbGRybuAKNdntZ0mDgFNXPJ48xQ2RXKQ==", - "dev": true, - "dependencies": { - "commander": "^2.20.0", - "source-map": "~0.7.2", - "source-map-support": "~0.5.20" - }, - "bin": { - "terser": "bin/terser" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/terser/node_modules/source-map": { - "version": "0.7.3", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.7.3.tgz", - "integrity": "sha512-CkCj6giN3S+n9qrYiBTX5gystlENnRW5jZeNLHpe6aue+SrHcG5VYwujhW9s4dY31mEGsxBDrHR6oI69fTXsaQ==", - "dev": true, - "engines": { - "node": ">= 8" - } - }, - "node_modules/test-exclude": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/test-exclude/-/test-exclude-6.0.0.tgz", - "integrity": "sha512-cAGWPIyOHU6zlmg88jwm7VRyXnMN7iV68OGAbYDk/Mh/xC/pzVPlQtY6ngoIH/5/tciuhGfvESU8GrHrcxD56w==", - "dev": true, - "dependencies": { - "@istanbuljs/schema": "^0.1.2", - "glob": "^7.1.4", - "minimatch": "^3.0.4" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/throat": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/throat/-/throat-6.0.1.tgz", - "integrity": "sha512-8hmiGIJMDlwjg7dlJ4yKGLK8EsYqKgPWbG3b4wjJddKNwc7N7Dpn08Df4szr/sZdMVeOstrdYSsqzX6BYbcB+w==", - "dev": true - }, - "node_modules/tmpl": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/tmpl/-/tmpl-1.0.5.tgz", - "integrity": "sha512-3f0uOEAQwIqGuWW2MVzYg8fV/QNnc/IpuJNG837rLuczAaLVHslWHZQj4IGiEl5Hs3kkbhwL9Ab7Hrsmuj+Smw==", - "dev": true - }, - "node_modules/to-fast-properties": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/to-fast-properties/-/to-fast-properties-2.0.0.tgz", - "integrity": "sha1-3F5pjL0HkmW8c+A3doGk5Og/YW4=", - "dev": true, - "engines": { - "node": ">=4" - } - }, - "node_modules/to-regex-range": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz", - "integrity": "sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==", - "dev": true, - "dependencies": { - "is-number": "^7.0.0" - }, - "engines": { - "node": ">=8.0" - } - }, - "node_modules/tough-cookie": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/tough-cookie/-/tough-cookie-4.0.0.tgz", - "integrity": "sha512-tHdtEpQCMrc1YLrMaqXXcj6AxhYi/xgit6mZu1+EDWUn+qhUf8wMQoFIy9NXuq23zAwtcB0t/MjACGR18pcRbg==", - "dev": true, - "dependencies": { - "psl": "^1.1.33", - "punycode": "^2.1.1", - "universalify": "^0.1.2" - }, - "engines": { - "node": ">=6" - } - }, - "node_modules/tr46": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/tr46/-/tr46-2.1.0.tgz", - "integrity": "sha512-15Ih7phfcdP5YxqiB+iDtLoaTz4Nd35+IiAv0kQ5FNKHzXgdWqPoTIqEDDJmXceQt4JZk6lVPT8lnDlPpGDppw==", - "dev": true, - "dependencies": { - "punycode": "^2.1.1" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/ts-jest": { - "version": "27.0.5", - "resolved": "https://registry.npmjs.org/ts-jest/-/ts-jest-27.0.5.tgz", - "integrity": "sha512-lIJApzfTaSSbtlksfFNHkWOzLJuuSm4faFAfo5kvzOiRAuoN4/eKxVJ2zEAho8aecE04qX6K1pAzfH5QHL1/8w==", - "dev": true, - "dependencies": { - "bs-logger": "0.x", - "fast-json-stable-stringify": "2.x", - "jest-util": "^27.0.0", - "json5": "2.x", - "lodash": "4.x", - "make-error": "1.x", - "semver": "7.x", - "yargs-parser": "20.x" - }, - "bin": { - "ts-jest": "cli.js" - }, - "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + "node": ">=14.0.0" }, "peerDependencies": { - "@babel/core": ">=7.0.0-beta.0 <8", - "@types/jest": "^27.0.0", - "babel-jest": ">=27.0.0 <28", - "jest": "^27.0.0", - "typescript": ">=3.8 <5.0" + "rollup": "^2.14.0||^3.0.0||^4.0.0", + "tslib": "*", + "typescript": ">=3.7.0" }, "peerDependenciesMeta": { - "@babel/core": { + "rollup": { "optional": true }, - "@types/jest": { + "tslib": { "optional": true - }, - "babel-jest": { - "optional": true - } - } - }, - "node_modules/ts-jest/node_modules/semver": { - "version": "7.3.2", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.2.tgz", - "integrity": "sha512-OrOb32TeeambH6UrhtShmF7CRDqhL6/5XpPNp2DuRH6+9QLw/orhp72j87v8Qa1ScDkvrrBNpZcDejAirJmfXQ==", - "dev": true, - "bin": { - "semver": "bin/semver.js" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/tslib": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.1.0.tgz", - "integrity": "sha512-hcVC3wYEziELGGmEEXue7D75zbwIIVUMWAVbHItGPx0ziyXxrOMQx4rQEVEV45Ut/1IotuEvwqPopzIOkDMf0A==", - "dev": true - }, - "node_modules/type-check": { - "version": "0.3.2", - "resolved": "https://registry.npmjs.org/type-check/-/type-check-0.3.2.tgz", - "integrity": "sha1-WITKtRLPHTVeP7eE8wgEsrUg23I=", - "dev": true, - "dependencies": { - "prelude-ls": "~1.1.2" - }, - "engines": { - "node": ">= 0.8.0" - } - }, - "node_modules/type-detect": { - "version": "4.0.8", - "resolved": "https://registry.npmjs.org/type-detect/-/type-detect-4.0.8.tgz", - "integrity": "sha512-0fr/mIH1dlO+x7TlcMy+bIDqKPsw/70tVyeHW787goQjhmqaZe10uwLujubK9q9Lg6Fiho1KUKDYz0Z7k7g5/g==", - "dev": true, - "engines": { - "node": ">=4" - } - }, - "node_modules/type-fest": { - "version": "0.21.3", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.21.3.tgz", - "integrity": "sha512-t0rzBq87m3fVcduHDUFhKmyyX+9eo6WQjZvf51Ea/M0Q7+T374Jp1aUiyUl0GKxp8M/OETVHSDvmkyPgvX+X2w==", - "dev": true, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/typedarray-to-buffer": { - "version": "3.1.5", - "resolved": "https://registry.npmjs.org/typedarray-to-buffer/-/typedarray-to-buffer-3.1.5.tgz", - "integrity": "sha512-zdu8XMNEDepKKR+XYOXAVPtWui0ly0NtohUscw+UmaHiAWT8hrV1rr//H6V+0DvJ3OQ19S979M0laLfX8rm82Q==", - "dev": true, - "dependencies": { - "is-typedarray": "^1.0.0" + } } }, - "node_modules/typedoc": { - "version": "0.22.5", - "resolved": "https://registry.npmjs.org/typedoc/-/typedoc-0.22.5.tgz", - "integrity": "sha512-KFrWGU1iKiTGw0RcyjLNYDmhd7uICU14HgBNPmFKY/sT4Pm/fraaLyWyisst9vGTUAKxqibqoDITR7+ZcAkhHg==", + "node_modules/@rollup/pluginutils": { + "version": "5.3.0", + "resolved": "https://registry.npmjs.org/@rollup/pluginutils/-/pluginutils-5.3.0.tgz", + "integrity": "sha512-5EdhGZtnu3V88ces7s53hhfK5KSASnJZv8Lulpc04cWO3REESroJXg73DFsOmgbU2BhwV0E20bu2IDZb3VKW4Q==", "dev": true, + "license": "MIT", "dependencies": { - "glob": "^7.2.0", - "lunr": "^2.3.9", - "marked": "^3.0.4", - "minimatch": "^3.0.4", - "shiki": "^0.9.11" - }, - "bin": { - "typedoc": "bin/typedoc" + "@types/estree": "^1.0.0", + "estree-walker": "^2.0.2", + "picomatch": "^4.0.2" }, "engines": { - "node": ">= 12.10.0" + "node": ">=14.0.0" }, "peerDependencies": { - "typescript": "4.0.x || 4.1.x || 4.2.x || 4.3.x || 4.4.x" - } - }, - "node_modules/typescript": { - "version": "4.4.3", - "resolved": "https://registry.npmjs.org/typescript/-/typescript-4.4.3.tgz", - "integrity": "sha512-4xfscpisVgqqDfPaJo5vkd+Qd/ItkoagnHpufr+i2QCHBsNYp+G7UAoyFl8aPtx879u38wPV65rZ8qbGZijalA==", - "dev": true, - "bin": { - "tsc": "bin/tsc", - "tsserver": "bin/tsserver" + "rollup": "^1.20.0||^2.0.0||^3.0.0||^4.0.0" }, - "engines": { - "node": ">=4.2.0" + "peerDependenciesMeta": { + "rollup": { + "optional": true + } } }, - "node_modules/universalify": { - "version": "0.1.2", - "resolved": "https://registry.npmjs.org/universalify/-/universalify-0.1.2.tgz", - "integrity": "sha512-rBJeI5CXAlmy1pV+617WB9J63U6XcazHHF2f2dbJix4XzpUF0RS3Zbj0FGIOCAva5P/d/GBOYaACQ1w+0azUkg==", + "node_modules/@rollup/rollup-android-arm-eabi": { + "version": "4.57.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-android-arm-eabi/-/rollup-android-arm-eabi-4.57.1.tgz", + "integrity": "sha512-A6ehUVSiSaaliTxai040ZpZ2zTevHYbvu/lDoeAteHI8QnaosIzm4qwtezfRg1jOYaUmnzLX1AOD6Z+UJjtifg==", + "cpu": [ + "arm" + ], "dev": true, - "engines": { - "node": ">= 4.0.0" - } - }, - "node_modules/v8-to-istanbul": { - "version": "8.1.0", - "resolved": "https://registry.npmjs.org/v8-to-istanbul/-/v8-to-istanbul-8.1.0.tgz", - "integrity": "sha512-/PRhfd8aTNp9Ggr62HPzXg2XasNFGy5PBt0Rp04du7/8GNNSgxFL6WBTkgMKSL9bFjH+8kKEG3f37FmxiTqUUA==", + "license": "MIT", + "optional": true, + "os": [ + "android" + ] + }, + "node_modules/@rollup/rollup-android-arm64": { + "version": "4.57.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-android-arm64/-/rollup-android-arm64-4.57.1.tgz", + "integrity": "sha512-dQaAddCY9YgkFHZcFNS/606Exo8vcLHwArFZ7vxXq4rigo2bb494/xKMMwRRQW6ug7Js6yXmBZhSBRuBvCCQ3w==", + "cpu": [ + "arm64" + ], "dev": true, - "dependencies": { - "@types/istanbul-lib-coverage": "^2.0.1", - "convert-source-map": "^1.6.0", - "source-map": "^0.7.3" - }, - "engines": { - "node": ">=10.12.0" - } - }, - "node_modules/v8-to-istanbul/node_modules/source-map": { - "version": "0.7.3", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.7.3.tgz", - "integrity": "sha512-CkCj6giN3S+n9qrYiBTX5gystlENnRW5jZeNLHpe6aue+SrHcG5VYwujhW9s4dY31mEGsxBDrHR6oI69fTXsaQ==", + "license": "MIT", + "optional": true, + "os": [ + "android" + ] + }, + "node_modules/@rollup/rollup-darwin-arm64": { + "version": "4.57.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-darwin-arm64/-/rollup-darwin-arm64-4.57.1.tgz", + "integrity": "sha512-crNPrwJOrRxagUYeMn/DZwqN88SDmwaJ8Cvi/TN1HnWBU7GwknckyosC2gd0IqYRsHDEnXf328o9/HC6OkPgOg==", + "cpu": [ + "arm64" + ], "dev": true, - "engines": { - "node": ">= 8" - } - }, - "node_modules/vscode-textmate": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/vscode-textmate/-/vscode-textmate-5.2.0.tgz", - "integrity": "sha512-Uw5ooOQxRASHgu6C7GVvUxisKXfSgW4oFlO+aa+PAkgmH89O3CXxEEzNRNtHSqtXFTl0nAC1uYj0GMSH27uwtQ==", - "dev": true - }, - "node_modules/w3c-hr-time": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/w3c-hr-time/-/w3c-hr-time-1.0.2.tgz", - "integrity": "sha512-z8P5DvDNjKDoFIHK7q8r8lackT6l+jo/Ye3HOle7l9nICP9lf1Ci25fy9vHd0JOWewkIFzXIEig3TdKT7JQ5fQ==", + "license": "MIT", + "optional": true, + "os": [ + "darwin" + ] + }, + "node_modules/@rollup/rollup-darwin-x64": { + "version": "4.57.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-darwin-x64/-/rollup-darwin-x64-4.57.1.tgz", + "integrity": "sha512-Ji8g8ChVbKrhFtig5QBV7iMaJrGtpHelkB3lsaKzadFBe58gmjfGXAOfI5FV0lYMH8wiqsxKQ1C9B0YTRXVy4w==", + "cpu": [ + "x64" + ], "dev": true, - "dependencies": { - "browser-process-hrtime": "^1.0.0" - } - }, - "node_modules/w3c-xmlserializer": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/w3c-xmlserializer/-/w3c-xmlserializer-2.0.0.tgz", - "integrity": "sha512-4tzD0mF8iSiMiNs30BiLO3EpfGLZUT2MSX/G+o7ZywDzliWQ3OPtTZ0PTC3B3ca1UAf4cJMHB+2Bf56EriJuRA==", + "license": "MIT", + "optional": true, + "os": [ + "darwin" + ] + }, + "node_modules/@rollup/rollup-freebsd-arm64": { + "version": "4.57.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-freebsd-arm64/-/rollup-freebsd-arm64-4.57.1.tgz", + "integrity": "sha512-R+/WwhsjmwodAcz65guCGFRkMb4gKWTcIeLy60JJQbXrJ97BOXHxnkPFrP+YwFlaS0m+uWJTstrUA9o+UchFug==", + "cpu": [ + "arm64" + ], "dev": true, - "dependencies": { - "xml-name-validator": "^3.0.0" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/walker": { - "version": "1.0.7", - "resolved": "https://registry.npmjs.org/walker/-/walker-1.0.7.tgz", - "integrity": "sha1-L3+bj9ENZ3JisYqITijRlhjgKPs=", + "license": "MIT", + "optional": true, + "os": [ + "freebsd" + ] + }, + "node_modules/@rollup/rollup-freebsd-x64": { + "version": "4.57.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-freebsd-x64/-/rollup-freebsd-x64-4.57.1.tgz", + "integrity": "sha512-IEQTCHeiTOnAUC3IDQdzRAGj3jOAYNr9kBguI7MQAAZK3caezRrg0GxAb6Hchg4lxdZEI5Oq3iov/w/hnFWY9Q==", + "cpu": [ + "x64" + ], "dev": true, - "dependencies": { - "makeerror": "1.0.x" - } - }, - "node_modules/webidl-conversions": { - "version": "6.1.0", - "resolved": "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-6.1.0.tgz", - "integrity": "sha512-qBIvFLGiBpLjfwmYAaHPXsn+ho5xZnGvyGvsarywGNc8VyQJUMHJ8OBKGGrPER0okBeMDaan4mNBlgBROxuI8w==", + "license": "MIT", + "optional": true, + "os": [ + "freebsd" + ] + }, + "node_modules/@rollup/rollup-linux-arm-gnueabihf": { + "version": "4.57.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm-gnueabihf/-/rollup-linux-arm-gnueabihf-4.57.1.tgz", + "integrity": "sha512-F8sWbhZ7tyuEfsmOxwc2giKDQzN3+kuBLPwwZGyVkLlKGdV1nvnNwYD0fKQ8+XS6hp9nY7B+ZeK01EBUE7aHaw==", + "cpu": [ + "arm" + ], "dev": true, - "engines": { - "node": ">=10.4" - } - }, - "node_modules/whatwg-encoding": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/whatwg-encoding/-/whatwg-encoding-1.0.5.tgz", - "integrity": "sha512-b5lim54JOPN9HtzvK9HFXvBma/rnfFeqsic0hSpjtDbVxR3dJKLc+KB4V6GgiGOvl7CY/KNh8rxSo9DKQrnUEw==", + "license": "MIT", + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@rollup/rollup-linux-arm-musleabihf": { + "version": "4.57.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm-musleabihf/-/rollup-linux-arm-musleabihf-4.57.1.tgz", + "integrity": "sha512-rGfNUfn0GIeXtBP1wL5MnzSj98+PZe/AXaGBCRmT0ts80lU5CATYGxXukeTX39XBKsxzFpEeK+Mrp9faXOlmrw==", + "cpu": [ + "arm" + ], "dev": true, - "dependencies": { - "iconv-lite": "0.4.24" - } - }, - "node_modules/whatwg-mimetype": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/whatwg-mimetype/-/whatwg-mimetype-2.3.0.tgz", - "integrity": "sha512-M4yMwr6mAnQz76TbJm914+gPpB/nCwvZbJU28cUD6dR004SAxDLOOSUaB1JDRqLtaOV/vi0IC5lEAGFgrjGv/g==", - "dev": true - }, - "node_modules/whatwg-url": { - "version": "8.7.0", - "resolved": "https://registry.npmjs.org/whatwg-url/-/whatwg-url-8.7.0.tgz", - "integrity": "sha512-gAojqb/m9Q8a5IV96E3fHJM70AzCkgt4uXYX2O7EmuyOnLrViCQlsEBmF9UQIu3/aeAIp2U17rtbpZWNntQqdg==", + "license": "MIT", + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@rollup/rollup-linux-arm64-gnu": { + "version": "4.57.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm64-gnu/-/rollup-linux-arm64-gnu-4.57.1.tgz", + "integrity": "sha512-MMtej3YHWeg/0klK2Qodf3yrNzz6CGjo2UntLvk2RSPlhzgLvYEB3frRvbEF2wRKh1Z2fDIg9KRPe1fawv7C+g==", + "cpu": [ + "arm64" + ], "dev": true, - "dependencies": { - "lodash": "^4.7.0", - "tr46": "^2.1.0", - "webidl-conversions": "^6.1.0" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/which": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz", - "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==", + "license": "MIT", + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@rollup/rollup-linux-arm64-musl": { + "version": "4.57.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm64-musl/-/rollup-linux-arm64-musl-4.57.1.tgz", + "integrity": "sha512-1a/qhaaOXhqXGpMFMET9VqwZakkljWHLmZOX48R0I/YLbhdxr1m4gtG1Hq7++VhVUmf+L3sTAf9op4JlhQ5u1Q==", + "cpu": [ + "arm64" + ], "dev": true, - "dependencies": { - "isexe": "^2.0.0" - }, - "bin": { - "node-which": "bin/node-which" - }, - "engines": { - "node": ">= 8" - } - }, - "node_modules/word-wrap": { - "version": "1.2.3", - "resolved": "https://registry.npmjs.org/word-wrap/-/word-wrap-1.2.3.tgz", - "integrity": "sha512-Hz/mrNwitNRh/HUAtM/VT/5VH+ygD6DV7mYKZAtHOrbs8U7lvPS6xf7EJKMF0uW1KJCl0H701g3ZGus+muE5vQ==", + "license": "MIT", + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@rollup/rollup-linux-loong64-gnu": { + "version": "4.57.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-loong64-gnu/-/rollup-linux-loong64-gnu-4.57.1.tgz", + "integrity": "sha512-QWO6RQTZ/cqYtJMtxhkRkidoNGXc7ERPbZN7dVW5SdURuLeVU7lwKMpo18XdcmpWYd0qsP1bwKPf7DNSUinhvA==", + "cpu": [ + "loong64" + ], "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/wrap-ansi": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-7.0.0.tgz", - "integrity": "sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==", + "license": "MIT", + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@rollup/rollup-linux-loong64-musl": { + "version": "4.57.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-loong64-musl/-/rollup-linux-loong64-musl-4.57.1.tgz", + "integrity": "sha512-xpObYIf+8gprgWaPP32xiN5RVTi/s5FCR+XMXSKmhfoJjrpRAjCuuqQXyxUa/eJTdAE6eJ+KDKaoEqjZQxh3Gw==", + "cpu": [ + "loong64" + ], "dev": true, - "dependencies": { - "ansi-styles": "^4.0.0", - "string-width": "^4.1.0", - "strip-ansi": "^6.0.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/chalk/wrap-ansi?sponsor=1" - } - }, - "node_modules/wrappy": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", - "integrity": "sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8=", - "dev": true - }, - "node_modules/write-file-atomic": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/write-file-atomic/-/write-file-atomic-3.0.3.tgz", - "integrity": "sha512-AvHcyZ5JnSfq3ioSyjrBkH9yW4m7Ayk8/9My/DD9onKeu/94fwrMocemO2QAJFAlnnDN+ZDS+ZjAR5ua1/PV/Q==", + "license": "MIT", + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@rollup/rollup-linux-ppc64-gnu": { + "version": "4.57.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-ppc64-gnu/-/rollup-linux-ppc64-gnu-4.57.1.tgz", + "integrity": "sha512-4BrCgrpZo4hvzMDKRqEaW1zeecScDCR+2nZ86ATLhAoJ5FQ+lbHVD3ttKe74/c7tNT9c6F2viwB3ufwp01Oh2w==", + "cpu": [ + "ppc64" + ], "dev": true, - "dependencies": { - "imurmurhash": "^0.1.4", - "is-typedarray": "^1.0.0", - "signal-exit": "^3.0.2", - "typedarray-to-buffer": "^3.1.5" - } - }, - "node_modules/ws": { - "version": "7.5.5", - "resolved": "https://registry.npmjs.org/ws/-/ws-7.5.5.tgz", - "integrity": "sha512-BAkMFcAzl8as1G/hArkxOxq3G7pjUqQ3gzYbLL0/5zNkph70e+lCoxBGnm6AW1+/aiNeV4fnKqZ8m4GZewmH2w==", + "license": "MIT", + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@rollup/rollup-linux-ppc64-musl": { + "version": "4.57.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-ppc64-musl/-/rollup-linux-ppc64-musl-4.57.1.tgz", + "integrity": "sha512-NOlUuzesGauESAyEYFSe3QTUguL+lvrN1HtwEEsU2rOwdUDeTMJdO5dUYl/2hKf9jWydJrO9OL/XSSf65R5+Xw==", + "cpu": [ + "ppc64" + ], "dev": true, - "engines": { - "node": ">=8.3.0" - }, - "peerDependencies": { - "bufferutil": "^4.0.1", - "utf-8-validate": "^5.0.2" - }, - "peerDependenciesMeta": { - "bufferutil": { - "optional": true - }, - "utf-8-validate": { - "optional": true - } - } - }, - "node_modules/xml-name-validator": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/xml-name-validator/-/xml-name-validator-3.0.0.tgz", - "integrity": "sha512-A5CUptxDsvxKJEU3yO6DuWBSJz/qizqzJKOMIfUJHETbBw/sFaDxgd6fxm1ewUaM0jZ444Fc5vC5ROYurg/4Pw==", - "dev": true - }, - "node_modules/xmlchars": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/xmlchars/-/xmlchars-2.2.0.tgz", - "integrity": "sha512-JZnDKK8B0RCDw84FNdDAIpZK+JuJw+s7Lz8nksI7SIuU3UXJJslUthsi+uWBUYOwPFwW7W7PRLRfUKpxjtjFCw==", - "dev": true - }, - "node_modules/y18n": { - "version": "5.0.8", - "resolved": "https://registry.npmjs.org/y18n/-/y18n-5.0.8.tgz", - "integrity": "sha512-0pfFzegeDWJHJIAmTLRP2DwHjdF5s7jo9tuztdQxAhINCdvS+3nGINqPd00AphqJR/0LhANUS6/+7SCb98YOfA==", + "license": "MIT", + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@rollup/rollup-linux-riscv64-gnu": { + "version": "4.57.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-riscv64-gnu/-/rollup-linux-riscv64-gnu-4.57.1.tgz", + "integrity": "sha512-ptA88htVp0AwUUqhVghwDIKlvJMD/fmL/wrQj99PRHFRAG6Z5nbWoWG4o81Nt9FT+IuqUQi+L31ZKAFeJ5Is+A==", + "cpu": [ + "riscv64" + ], "dev": true, - "engines": { - "node": ">=10" - } - }, - "node_modules/yallist": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-3.1.1.tgz", - "integrity": "sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g==", - "dev": true - }, - "node_modules/yargs": { - "version": "16.2.0", - "resolved": "https://registry.npmjs.org/yargs/-/yargs-16.2.0.tgz", - "integrity": "sha512-D1mvvtDG0L5ft/jGWkLpG1+m0eQxOfaBvTNELraWj22wSVUMWxZUvYgJYcKh6jGGIkJFhH4IZPQhR4TKpc8mBw==", + "license": "MIT", + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@rollup/rollup-linux-riscv64-musl": { + "version": "4.57.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-riscv64-musl/-/rollup-linux-riscv64-musl-4.57.1.tgz", + "integrity": "sha512-S51t7aMMTNdmAMPpBg7OOsTdn4tySRQvklmL3RpDRyknk87+Sp3xaumlatU+ppQ+5raY7sSTcC2beGgvhENfuw==", + "cpu": [ + "riscv64" + ], "dev": true, - "dependencies": { - "cliui": "^7.0.2", - "escalade": "^3.1.1", - "get-caller-file": "^2.0.5", - "require-directory": "^2.1.1", - "string-width": "^4.2.0", - "y18n": "^5.0.5", - "yargs-parser": "^20.2.2" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/yargs-parser": { - "version": "20.2.9", - "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-20.2.9.tgz", - "integrity": "sha512-y11nGElTIV+CT3Zv9t7VKl+Q3hTQoT9a1Qzezhhl6Rp21gJ/IVTW7Z3y9EWXhuUBC2Shnf+DX0antecpAwSP8w==", + "license": "MIT", + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@rollup/rollup-linux-s390x-gnu": { + "version": "4.57.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-s390x-gnu/-/rollup-linux-s390x-gnu-4.57.1.tgz", + "integrity": "sha512-Bl00OFnVFkL82FHbEqy3k5CUCKH6OEJL54KCyx2oqsmZnFTR8IoNqBF+mjQVcRCT5sB6yOvK8A37LNm/kPJiZg==", + "cpu": [ + "s390x" + ], "dev": true, - "engines": { - "node": ">=10" - } - } - }, - "dependencies": { - "@babel/code-frame": { - "version": "7.14.5", - "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.14.5.tgz", - "integrity": "sha512-9pzDqyc6OLDaqe+zbACgFkb6fKMNG6CObKpnYXChRsvYGyEdc7CA2BaqeOM+vOtCS5ndmJicPJhKAwYRI6UfFw==", - "dev": true, - "requires": { - "@babel/highlight": "^7.14.5" - } - }, - "@babel/compat-data": { - "version": "7.15.0", - "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.15.0.tgz", - "integrity": "sha512-0NqAC1IJE0S0+lL1SWFMxMkz1pKCNCjI4tr2Zx4LJSXxCLAdr6KyArnY+sno5m3yH9g737ygOyPABDsnXkpxiA==", - "dev": true - }, - "@babel/core": { - "version": "7.15.5", - "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.15.5.tgz", - "integrity": "sha512-pYgXxiwAgQpgM1bNkZsDEq85f0ggXMA5L7c+o3tskGMh2BunCI9QUwB9Z4jpvXUOuMdyGKiGKQiRe11VS6Jzvg==", - "dev": true, - "requires": { - "@babel/code-frame": "^7.14.5", - "@babel/generator": "^7.15.4", - "@babel/helper-compilation-targets": "^7.15.4", - "@babel/helper-module-transforms": "^7.15.4", - "@babel/helpers": "^7.15.4", - "@babel/parser": "^7.15.5", - "@babel/template": "^7.15.4", - "@babel/traverse": "^7.15.4", - "@babel/types": "^7.15.4", - "convert-source-map": "^1.7.0", - "debug": "^4.1.0", - "gensync": "^1.0.0-beta.2", - "json5": "^2.1.2", - "semver": "^6.3.0", - "source-map": "^0.5.0" - }, - "dependencies": { - "source-map": { - "version": "0.5.7", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz", - "integrity": "sha1-igOdLRAh0i0eoUyA2OpGi6LvP8w=", - "dev": true - } - } - }, - "@babel/generator": { - "version": "7.15.4", - "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.15.4.tgz", - "integrity": "sha512-d3itta0tu+UayjEORPNz6e1T3FtvWlP5N4V5M+lhp/CxT4oAA7/NcScnpRyspUMLK6tu9MNHmQHxRykuN2R7hw==", + "license": "MIT", + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@rollup/rollup-linux-x64-gnu": { + "version": "4.57.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-x64-gnu/-/rollup-linux-x64-gnu-4.57.1.tgz", + "integrity": "sha512-ABca4ceT4N+Tv/GtotnWAeXZUZuM/9AQyCyKYyKnpk4yoA7QIAuBt6Hkgpw8kActYlew2mvckXkvx0FfoInnLg==", + "cpu": [ + "x64" + ], "dev": true, - "requires": { - "@babel/types": "^7.15.4", - "jsesc": "^2.5.1", - "source-map": "^0.5.0" - }, - "dependencies": { - "source-map": { - "version": "0.5.7", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz", - "integrity": "sha1-igOdLRAh0i0eoUyA2OpGi6LvP8w=", - "dev": true - } - } - }, - "@babel/helper-compilation-targets": { - "version": "7.15.4", - "resolved": "https://registry.npmjs.org/@babel/helper-compilation-targets/-/helper-compilation-targets-7.15.4.tgz", - "integrity": "sha512-rMWPCirulnPSe4d+gwdWXLfAXTTBj8M3guAf5xFQJ0nvFY7tfNAFnWdqaHegHlgDZOCT4qvhF3BYlSJag8yhqQ==", + "license": "MIT", + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@rollup/rollup-linux-x64-musl": { + "version": "4.57.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-x64-musl/-/rollup-linux-x64-musl-4.57.1.tgz", + "integrity": "sha512-HFps0JeGtuOR2convgRRkHCekD7j+gdAuXM+/i6kGzQtFhlCtQkpwtNzkNj6QhCDp7DRJ7+qC/1Vg2jt5iSOFw==", + "cpu": [ + "x64" + ], "dev": true, - "requires": { - "@babel/compat-data": "^7.15.0", - "@babel/helper-validator-option": "^7.14.5", - "browserslist": "^4.16.6", - "semver": "^6.3.0" - } - }, - "@babel/helper-function-name": { - "version": "7.15.4", - "resolved": "https://registry.npmjs.org/@babel/helper-function-name/-/helper-function-name-7.15.4.tgz", - "integrity": "sha512-Z91cOMM4DseLIGOnog+Z8OI6YseR9bua+HpvLAQ2XayUGU+neTtX+97caALaLdyu53I/fjhbeCnWnRH1O3jFOw==", + "license": "MIT", + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@rollup/rollup-openbsd-x64": { + "version": "4.57.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-openbsd-x64/-/rollup-openbsd-x64-4.57.1.tgz", + "integrity": "sha512-H+hXEv9gdVQuDTgnqD+SQffoWoc0Of59AStSzTEj/feWTBAnSfSD3+Dql1ZruJQxmykT/JVY0dE8Ka7z0DH1hw==", + "cpu": [ + "x64" + ], "dev": true, - "requires": { - "@babel/helper-get-function-arity": "^7.15.4", - "@babel/template": "^7.15.4", - "@babel/types": "^7.15.4" - } - }, - "@babel/helper-get-function-arity": { - "version": "7.15.4", - "resolved": "https://registry.npmjs.org/@babel/helper-get-function-arity/-/helper-get-function-arity-7.15.4.tgz", - "integrity": "sha512-1/AlxSF92CmGZzHnC515hm4SirTxtpDnLEJ0UyEMgTMZN+6bxXKg04dKhiRx5Enel+SUA1G1t5Ed/yQia0efrA==", + "license": "MIT", + "optional": true, + "os": [ + "openbsd" + ] + }, + "node_modules/@rollup/rollup-openharmony-arm64": { + "version": "4.57.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-openharmony-arm64/-/rollup-openharmony-arm64-4.57.1.tgz", + "integrity": "sha512-4wYoDpNg6o/oPximyc/NG+mYUejZrCU2q+2w6YZqrAs2UcNUChIZXjtafAiiZSUc7On8v5NyNj34Kzj/Ltk6dQ==", + "cpu": [ + "arm64" + ], "dev": true, - "requires": { - "@babel/types": "^7.15.4" - } - }, - "@babel/helper-hoist-variables": { - "version": "7.15.4", - "resolved": "https://registry.npmjs.org/@babel/helper-hoist-variables/-/helper-hoist-variables-7.15.4.tgz", - "integrity": "sha512-VTy085egb3jUGVK9ycIxQiPbquesq0HUQ+tPO0uv5mPEBZipk+5FkRKiWq5apuyTE9FUrjENB0rCf8y+n+UuhA==", + "license": "MIT", + "optional": true, + "os": [ + "openharmony" + ] + }, + "node_modules/@rollup/rollup-win32-arm64-msvc": { + "version": "4.57.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-arm64-msvc/-/rollup-win32-arm64-msvc-4.57.1.tgz", + "integrity": "sha512-O54mtsV/6LW3P8qdTcamQmuC990HDfR71lo44oZMZlXU4tzLrbvTii87Ni9opq60ds0YzuAlEr/GNwuNluZyMQ==", + "cpu": [ + "arm64" + ], "dev": true, - "requires": { - "@babel/types": "^7.15.4" - } - }, - "@babel/helper-member-expression-to-functions": { - "version": "7.15.4", - "resolved": "https://registry.npmjs.org/@babel/helper-member-expression-to-functions/-/helper-member-expression-to-functions-7.15.4.tgz", - "integrity": "sha512-cokOMkxC/BTyNP1AlY25HuBWM32iCEsLPI4BHDpJCHHm1FU2E7dKWWIXJgQgSFiu4lp8q3bL1BIKwqkSUviqtA==", + "license": "MIT", + "optional": true, + "os": [ + "win32" + ] + }, + "node_modules/@rollup/rollup-win32-ia32-msvc": { + "version": "4.57.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-ia32-msvc/-/rollup-win32-ia32-msvc-4.57.1.tgz", + "integrity": "sha512-P3dLS+IerxCT/7D2q2FYcRdWRl22dNbrbBEtxdWhXrfIMPP9lQhb5h4Du04mdl5Woq05jVCDPCMF7Ub0NAjIew==", + "cpu": [ + "ia32" + ], "dev": true, - "requires": { - "@babel/types": "^7.15.4" - } - }, - "@babel/helper-module-imports": { - "version": "7.15.4", - "resolved": "https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.15.4.tgz", - "integrity": "sha512-jeAHZbzUwdW/xHgHQ3QmWR4Jg6j15q4w/gCfwZvtqOxoo5DKtLHk8Bsf4c5RZRC7NmLEs+ohkdq8jFefuvIxAA==", + "license": "MIT", + "optional": true, + "os": [ + "win32" + ] + }, + "node_modules/@rollup/rollup-win32-x64-gnu": { + "version": "4.57.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-x64-gnu/-/rollup-win32-x64-gnu-4.57.1.tgz", + "integrity": "sha512-VMBH2eOOaKGtIJYleXsi2B8CPVADrh+TyNxJ4mWPnKfLB/DBUmzW+5m1xUrcwWoMfSLagIRpjUFeW5CO5hyciQ==", + "cpu": [ + "x64" + ], "dev": true, - "requires": { - "@babel/types": "^7.15.4" - } - }, - "@babel/helper-module-transforms": { - "version": "7.15.7", - "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.15.7.tgz", - "integrity": "sha512-ZNqjjQG/AuFfekFTY+7nY4RgBSklgTu970c7Rj3m/JOhIu5KPBUuTA9AY6zaKcUvk4g6EbDXdBnhi35FAssdSw==", + "license": "MIT", + "optional": true, + "os": [ + "win32" + ] + }, + "node_modules/@rollup/rollup-win32-x64-msvc": { + "version": "4.57.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-x64-msvc/-/rollup-win32-x64-msvc-4.57.1.tgz", + "integrity": "sha512-mxRFDdHIWRxg3UfIIAwCm6NzvxG0jDX/wBN6KsQFTvKFqqg9vTrWUE68qEjHt19A5wwx5X5aUi2zuZT7YR0jrA==", + "cpu": [ + "x64" + ], "dev": true, - "requires": { - "@babel/helper-module-imports": "^7.15.4", - "@babel/helper-replace-supers": "^7.15.4", - "@babel/helper-simple-access": "^7.15.4", - "@babel/helper-split-export-declaration": "^7.15.4", - "@babel/helper-validator-identifier": "^7.15.7", - "@babel/template": "^7.15.4", - "@babel/traverse": "^7.15.4", - "@babel/types": "^7.15.6" - } + "license": "MIT", + "optional": true, + "os": [ + "win32" + ] }, - "@babel/helper-optimise-call-expression": { - "version": "7.15.4", - "resolved": "https://registry.npmjs.org/@babel/helper-optimise-call-expression/-/helper-optimise-call-expression-7.15.4.tgz", - "integrity": "sha512-E/z9rfbAOt1vDW1DR7k4SzhzotVV5+qMciWV6LaG1g4jeFrkDlJedjtV4h0i4Q/ITnUu+Pk08M7fczsB9GXBDw==", + "node_modules/@shikijs/engine-oniguruma": { + "version": "3.22.0", + "resolved": "https://registry.npmjs.org/@shikijs/engine-oniguruma/-/engine-oniguruma-3.22.0.tgz", + "integrity": "sha512-DyXsOG0vGtNtl7ygvabHd7Mt5EY8gCNqR9Y7Lpbbd/PbJvgWrqaKzH1JW6H6qFkuUa8aCxoiYVv8/YfFljiQxA==", "dev": true, - "requires": { - "@babel/types": "^7.15.4" + "license": "MIT", + "dependencies": { + "@shikijs/types": "3.22.0", + "@shikijs/vscode-textmate": "^10.0.2" } }, - "@babel/helper-plugin-utils": { - "version": "7.14.5", - "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.14.5.tgz", - "integrity": "sha512-/37qQCE3K0vvZKwoK4XU/irIJQdIfCJuhU5eKnNxpFDsOkgFaUAwbv+RYw6eYgsC0E4hS7r5KqGULUogqui0fQ==", - "dev": true - }, - "@babel/helper-replace-supers": { - "version": "7.15.4", - "resolved": "https://registry.npmjs.org/@babel/helper-replace-supers/-/helper-replace-supers-7.15.4.tgz", - "integrity": "sha512-/ztT6khaXF37MS47fufrKvIsiQkx1LBRvSJNzRqmbyeZnTwU9qBxXYLaaT/6KaxfKhjs2Wy8kG8ZdsFUuWBjzw==", + "node_modules/@shikijs/langs": { + "version": "3.22.0", + "resolved": "https://registry.npmjs.org/@shikijs/langs/-/langs-3.22.0.tgz", + "integrity": "sha512-x/42TfhWmp6H00T6uwVrdTJGKgNdFbrEdhaDwSR5fd5zhQ1Q46bHq9EO61SCEWJR0HY7z2HNDMaBZp8JRmKiIA==", "dev": true, - "requires": { - "@babel/helper-member-expression-to-functions": "^7.15.4", - "@babel/helper-optimise-call-expression": "^7.15.4", - "@babel/traverse": "^7.15.4", - "@babel/types": "^7.15.4" + "license": "MIT", + "dependencies": { + "@shikijs/types": "3.22.0" } }, - "@babel/helper-simple-access": { - "version": "7.15.4", - "resolved": "https://registry.npmjs.org/@babel/helper-simple-access/-/helper-simple-access-7.15.4.tgz", - "integrity": "sha512-UzazrDoIVOZZcTeHHEPYrr1MvTR/K+wgLg6MY6e1CJyaRhbibftF6fR2KU2sFRtI/nERUZR9fBd6aKgBlIBaPg==", + "node_modules/@shikijs/themes": { + "version": "3.22.0", + "resolved": "https://registry.npmjs.org/@shikijs/themes/-/themes-3.22.0.tgz", + "integrity": "sha512-o+tlOKqsr6FE4+mYJG08tfCFDS+3CG20HbldXeVoyP+cYSUxDhrFf3GPjE60U55iOkkjbpY2uC3It/eeja35/g==", "dev": true, - "requires": { - "@babel/types": "^7.15.4" + "license": "MIT", + "dependencies": { + "@shikijs/types": "3.22.0" } }, - "@babel/helper-split-export-declaration": { - "version": "7.15.4", - "resolved": "https://registry.npmjs.org/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.15.4.tgz", - "integrity": "sha512-HsFqhLDZ08DxCpBdEVtKmywj6PQbwnF6HHybur0MAnkAKnlS6uHkwnmRIkElB2Owpfb4xL4NwDmDLFubueDXsw==", + "node_modules/@shikijs/types": { + "version": "3.22.0", + "resolved": "https://registry.npmjs.org/@shikijs/types/-/types-3.22.0.tgz", + "integrity": "sha512-491iAekgKDBFE67z70Ok5a8KBMsQ2IJwOWw3us/7ffQkIBCyOQfm/aNwVMBUriP02QshIfgHCBSIYAl3u2eWjg==", "dev": true, - "requires": { - "@babel/types": "^7.15.4" + "license": "MIT", + "dependencies": { + "@shikijs/vscode-textmate": "^10.0.2", + "@types/hast": "^3.0.4" } }, - "@babel/helper-validator-identifier": { - "version": "7.15.7", - "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.15.7.tgz", - "integrity": "sha512-K4JvCtQqad9OY2+yTU8w+E82ywk/fe+ELNlt1G8z3bVGlZfn/hOcQQsUhGhW/N+tb3fxK800wLtKOE/aM0m72w==", - "dev": true - }, - "@babel/helper-validator-option": { - "version": "7.14.5", - "resolved": "https://registry.npmjs.org/@babel/helper-validator-option/-/helper-validator-option-7.14.5.tgz", - "integrity": "sha512-OX8D5eeX4XwcroVW45NMvoYaIuFI+GQpA2a8Gi+X/U/cDUIRsV37qQfF905F0htTRCREQIB4KqPeaveRJUl3Ow==", - "dev": true - }, - "@babel/helpers": { - "version": "7.15.4", - "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.15.4.tgz", - "integrity": "sha512-V45u6dqEJ3w2rlryYYXf6i9rQ5YMNu4FLS6ngs8ikblhu2VdR1AqAd6aJjBzmf2Qzh6KOLqKHxEN9+TFbAkAVQ==", + "node_modules/@shikijs/vscode-textmate": { + "version": "10.0.2", + "resolved": "https://registry.npmjs.org/@shikijs/vscode-textmate/-/vscode-textmate-10.0.2.tgz", + "integrity": "sha512-83yeghZ2xxin3Nj8z1NMd/NCuca+gsYXswywDy5bHvwlWL8tpTQmzGeUuHd9FC3E/SBEMvzJRwWEOz5gGes9Qg==", "dev": true, - "requires": { - "@babel/template": "^7.15.4", - "@babel/traverse": "^7.15.4", - "@babel/types": "^7.15.4" - } + "license": "MIT" }, - "@babel/highlight": { - "version": "7.14.5", - "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.14.5.tgz", - "integrity": "sha512-qf9u2WFWVV0MppaL877j2dBtQIDgmidgjGk5VIMw3OadXvYaXn66U1BFlH2t4+t3i+8PhedppRv+i40ABzd+gg==", - "dev": true, - "requires": { - "@babel/helper-validator-identifier": "^7.14.5", - "chalk": "^2.0.0", - "js-tokens": "^4.0.0" - }, - "dependencies": { - "ansi-styles": { - "version": "3.2.1", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", - "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", - "dev": true, - "requires": { - "color-convert": "^1.9.0" - } - }, - "chalk": { - "version": "2.4.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", - "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", - "dev": true, - "requires": { - "ansi-styles": "^3.2.1", - "escape-string-regexp": "^1.0.5", - "supports-color": "^5.3.0" - } - }, - "color-convert": { - "version": "1.9.3", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz", - "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", - "dev": true, - "requires": { - "color-name": "1.1.3" - } - }, - "color-name": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", - "integrity": "sha1-p9BVi9icQveV3UIyj3QIMcpTvCU=", - "dev": true - }, - "escape-string-regexp": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", - "integrity": "sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ=", - "dev": true - }, - "has-flag": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", - "integrity": "sha1-tdRU3CGZriJWmfNGfloH87lVuv0=", - "dev": true - }, - "supports-color": { - "version": "5.5.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", - "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", - "dev": true, - "requires": { - "has-flag": "^3.0.0" - } - } - } - }, - "@babel/parser": { - "version": "7.15.7", - "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.15.7.tgz", - "integrity": "sha512-rycZXvQ+xS9QyIcJ9HXeDWf1uxqlbVFAUq0Rq0dbc50Zb/+wUe/ehyfzGfm9KZZF0kBejYgxltBXocP+gKdL2g==", - "dev": true - }, - "@babel/plugin-syntax-async-generators": { - "version": "7.8.4", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-async-generators/-/plugin-syntax-async-generators-7.8.4.tgz", - "integrity": "sha512-tycmZxkGfZaxhMRbXlPXuVFpdWlXpir2W4AMhSJgRKzk/eDlIXOhb2LHWoLpDF7TEHylV5zNhykX6KAgHJmTNw==", + "node_modules/@sinclair/typebox": { + "version": "0.34.48", + "resolved": "https://registry.npmjs.org/@sinclair/typebox/-/typebox-0.34.48.tgz", + "integrity": "sha512-kKJTNuK3AQOrgjjotVxMrCn1sUJwM76wMszfq1kdU4uYVJjvEWuFQ6HgvLt4Xz3fSmZlTOxJ/Ie13KnIcWQXFA==", "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.8.0" - } + "license": "MIT" }, - "@babel/plugin-syntax-bigint": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-bigint/-/plugin-syntax-bigint-7.8.3.tgz", - "integrity": "sha512-wnTnFlG+YxQm3vDxpGE57Pj0srRU4sHE/mDkt1qv2YJJSeUAec2ma4WLUnUPeKjyrfntVwe/N6dCXpU+zL3Npg==", + "node_modules/@sinonjs/commons": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/@sinonjs/commons/-/commons-3.0.1.tgz", + "integrity": "sha512-K3mCHKQ9sVh8o1C9cxkwxaOmXoAMlDxC1mYyHrjqOWEcBjYr76t96zL2zlj5dUGZ3HSw240X1qgH3Mjf1yJWpQ==", "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.8.0" + "license": "BSD-3-Clause", + "dependencies": { + "type-detect": "4.0.8" } }, - "@babel/plugin-syntax-class-properties": { - "version": "7.12.13", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-class-properties/-/plugin-syntax-class-properties-7.12.13.tgz", - "integrity": "sha512-fm4idjKla0YahUNgFNLCB0qySdsoPiZP3iQE3rky0mBUtMZ23yDJ9SJdg6dXTSDnulOVqiF3Hgr9nbXvXTQZYA==", + "node_modules/@sinonjs/fake-timers": { + "version": "13.0.5", + "resolved": "https://registry.npmjs.org/@sinonjs/fake-timers/-/fake-timers-13.0.5.tgz", + "integrity": "sha512-36/hTbH2uaWuGVERyC6da9YwGWnzUZXuPro/F2LfsdOsLnCojz/iSH8MxUt/FD2S5XBSVPhmArFUXcpCQ2Hkiw==", "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.12.13" + "license": "BSD-3-Clause", + "dependencies": { + "@sinonjs/commons": "^3.0.1" } }, - "@babel/plugin-syntax-import-meta": { - "version": "7.10.4", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-import-meta/-/plugin-syntax-import-meta-7.10.4.tgz", - "integrity": "sha512-Yqfm+XDx0+Prh3VSeEQCPU81yC+JWZ2pDPFSS4ZdpfZhp4MkFMaDC1UqseovEKwSUpnIL7+vK+Clp7bfh0iD7g==", + "node_modules/@tybys/wasm-util": { + "version": "0.10.1", + "resolved": "https://registry.npmjs.org/@tybys/wasm-util/-/wasm-util-0.10.1.tgz", + "integrity": "sha512-9tTaPJLSiejZKx+Bmog4uSubteqTvFrVrURwkmHixBo0G4seD0zUxp98E1DzUBJxLQ3NPwXrGKDiVjwx/DpPsg==", "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.10.4" + "license": "MIT", + "optional": true, + "dependencies": { + "tslib": "^2.4.0" } }, - "@babel/plugin-syntax-json-strings": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-json-strings/-/plugin-syntax-json-strings-7.8.3.tgz", - "integrity": "sha512-lY6kdGpWHvjoe2vk4WrAapEuBR69EMxZl+RoGRhrFGNYVK8mOPAW8VfbT/ZgrFbXlDNiiaxQnAtgVCZ6jv30EA==", + "node_modules/@types/babel__core": { + "version": "7.20.5", + "resolved": "https://registry.npmjs.org/@types/babel__core/-/babel__core-7.20.5.tgz", + "integrity": "sha512-qoQprZvz5wQFJwMDqeseRXWv3rqMvhgpbXFfVyWhbx9X47POIA6i/+dXefEmZKoAgOaTdaIgNSMqMIU61yRyzA==", "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.8.0" + "license": "MIT", + "dependencies": { + "@babel/parser": "^7.20.7", + "@babel/types": "^7.20.7", + "@types/babel__generator": "*", + "@types/babel__template": "*", + "@types/babel__traverse": "*" } }, - "@babel/plugin-syntax-logical-assignment-operators": { - "version": "7.10.4", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-logical-assignment-operators/-/plugin-syntax-logical-assignment-operators-7.10.4.tgz", - "integrity": "sha512-d8waShlpFDinQ5MtvGU9xDAOzKH47+FFoney2baFIoMr952hKOLp1HR7VszoZvOsV/4+RRszNY7D17ba0te0ig==", + "node_modules/@types/babel__generator": { + "version": "7.27.0", + "resolved": "https://registry.npmjs.org/@types/babel__generator/-/babel__generator-7.27.0.tgz", + "integrity": "sha512-ufFd2Xi92OAVPYsy+P4n7/U7e68fex0+Ee8gSG9KX7eo084CWiQ4sdxktvdl0bOPupXtVJPY19zk6EwWqUQ8lg==", "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.10.4" + "license": "MIT", + "dependencies": { + "@babel/types": "^7.0.0" } }, - "@babel/plugin-syntax-nullish-coalescing-operator": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-nullish-coalescing-operator/-/plugin-syntax-nullish-coalescing-operator-7.8.3.tgz", - "integrity": "sha512-aSff4zPII1u2QD7y+F8oDsz19ew4IGEJg9SVW+bqwpwtfFleiQDMdzA/R+UlWDzfnHFCxxleFT0PMIrR36XLNQ==", + "node_modules/@types/babel__template": { + "version": "7.4.4", + "resolved": "https://registry.npmjs.org/@types/babel__template/-/babel__template-7.4.4.tgz", + "integrity": "sha512-h/NUaSyG5EyxBIp8YRxo4RMe2/qQgvyowRwVMzhYhBCONbW8PUsg4lkFMrhgZhUe5z3L3MiLDuvyJ/CaPa2A8A==", "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.8.0" + "license": "MIT", + "dependencies": { + "@babel/parser": "^7.1.0", + "@babel/types": "^7.0.0" } }, - "@babel/plugin-syntax-numeric-separator": { - "version": "7.10.4", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-numeric-separator/-/plugin-syntax-numeric-separator-7.10.4.tgz", - "integrity": "sha512-9H6YdfkcK/uOnY/K7/aA2xpzaAgkQn37yzWUMRK7OaPOqOpGS1+n0H5hxT9AUw9EsSjPW8SVyMJwYRtWs3X3ug==", + "node_modules/@types/babel__traverse": { + "version": "7.28.0", + "resolved": "https://registry.npmjs.org/@types/babel__traverse/-/babel__traverse-7.28.0.tgz", + "integrity": "sha512-8PvcXf70gTDZBgt9ptxJ8elBeBjcLOAcOtoO/mPJjtji1+CdGbHgm77om1GrsPxsiE+uXIpNSK64UYaIwQXd4Q==", "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.10.4" + "license": "MIT", + "dependencies": { + "@babel/types": "^7.28.2" } }, - "@babel/plugin-syntax-object-rest-spread": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-object-rest-spread/-/plugin-syntax-object-rest-spread-7.8.3.tgz", - "integrity": "sha512-XoqMijGZb9y3y2XskN+P1wUGiVwWZ5JmoDRwx5+3GmEplNyVM2s2Dg8ILFQm8rWM48orGy5YpI5Bl8U1y7ydlA==", + "node_modules/@types/estree": { + "version": "1.0.8", + "resolved": "https://registry.npmjs.org/@types/estree/-/estree-1.0.8.tgz", + "integrity": "sha512-dWHzHa2WqEXI/O1E9OjrocMTKJl2mSrEolh1Iomrv6U+JuNwaHXsXx9bLu5gG7BUWFIN0skIQJQ/L1rIex4X6w==", "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.8.0" - } + "license": "MIT" }, - "@babel/plugin-syntax-optional-catch-binding": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-optional-catch-binding/-/plugin-syntax-optional-catch-binding-7.8.3.tgz", - "integrity": "sha512-6VPD0Pc1lpTqw0aKoeRTMiB+kWhAoT24PA+ksWSBrFtl5SIRVpZlwN3NNPQjehA2E/91FV3RjLWoVTglWcSV3Q==", + "node_modules/@types/hast": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/@types/hast/-/hast-3.0.4.tgz", + "integrity": "sha512-WPs+bbQw5aCj+x6laNGWLH3wviHtoCv/P3+otBhbOhJgG8qtpdAMlTCxLtsTWA7LH1Oh/bFCHsBn0TPS5m30EQ==", "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.8.0" + "license": "MIT", + "dependencies": { + "@types/unist": "*" } }, - "@babel/plugin-syntax-optional-chaining": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-optional-chaining/-/plugin-syntax-optional-chaining-7.8.3.tgz", - "integrity": "sha512-KoK9ErH1MBlCPxV0VANkXW2/dw4vlbGDrFgz8bmUsBGYkFRcbRwMh6cIJubdPrkxRwuGdtCk0v/wPTKbQgBjkg==", + "node_modules/@types/istanbul-lib-coverage": { + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/@types/istanbul-lib-coverage/-/istanbul-lib-coverage-2.0.6.tgz", + "integrity": "sha512-2QF/t/auWm0lsy8XtKVPG19v3sSOQlJe/YHZgfjb/KBBHOGSV+J2q/S671rcq9uTBrLAXmZpqJiaQbMT+zNU1w==", "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.8.0" - } + "license": "MIT" }, - "@babel/plugin-syntax-top-level-await": { - "version": "7.14.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-top-level-await/-/plugin-syntax-top-level-await-7.14.5.tgz", - "integrity": "sha512-hx++upLv5U1rgYfwe1xBQUhRmU41NEvpUvrp8jkrSCdvGSnM5/qdRMtylJ6PG5OFkBaHkbTAKTnd3/YyESRHFw==", + "node_modules/@types/istanbul-lib-report": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/@types/istanbul-lib-report/-/istanbul-lib-report-3.0.3.tgz", + "integrity": "sha512-NQn7AHQnk/RSLOxrBbGyJM/aVQ+pjj5HCgasFxc0K/KhoATfQ/47AyUl15I2yBUpihjmas+a+VJBOqecrFH+uA==", "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.14.5" + "license": "MIT", + "dependencies": { + "@types/istanbul-lib-coverage": "*" } }, - "@babel/plugin-syntax-typescript": { - "version": "7.14.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-typescript/-/plugin-syntax-typescript-7.14.5.tgz", - "integrity": "sha512-u6OXzDaIXjEstBRRoBCQ/uKQKlbuaeE5in0RvWdA4pN6AhqxTIwUsnHPU1CFZA/amYObMsuWhYfRl3Ch90HD0Q==", + "node_modules/@types/istanbul-reports": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/@types/istanbul-reports/-/istanbul-reports-3.0.4.tgz", + "integrity": "sha512-pk2B1NWalF9toCRu6gjBzR69syFjP4Od8WRAX+0mmf9lAjCRicLOWc+ZrxZHx/0XRjotgkF9t6iaMJ+aXcOdZQ==", "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.14.5" + "license": "MIT", + "dependencies": { + "@types/istanbul-lib-report": "*" } }, - "@babel/template": { - "version": "7.15.4", - "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.15.4.tgz", - "integrity": "sha512-UgBAfEa1oGuYgDIPM2G+aHa4Nlo9Lh6mGD2bDBGMTbYnc38vulXPuC1MGjYILIEmlwl6Rd+BPR9ee3gm20CBtg==", + "node_modules/@types/jest": { + "version": "30.0.0", + "resolved": "https://registry.npmjs.org/@types/jest/-/jest-30.0.0.tgz", + "integrity": "sha512-XTYugzhuwqWjws0CVz8QpM36+T+Dz5mTEBKhNs/esGLnCIlGdRy+Dq78NRjd7ls7r8BC8ZRMOrKlkO1hU0JOwA==", "dev": true, - "requires": { - "@babel/code-frame": "^7.14.5", - "@babel/parser": "^7.15.4", - "@babel/types": "^7.15.4" + "license": "MIT", + "dependencies": { + "expect": "^30.0.0", + "pretty-format": "^30.0.0" } }, - "@babel/traverse": { - "version": "7.15.4", - "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.15.4.tgz", - "integrity": "sha512-W6lQD8l4rUbQR/vYgSuCAE75ADyyQvOpFVsvPPdkhf6lATXAsQIG9YdtOcu8BB1dZ0LKu+Zo3c1wEcbKeuhdlA==", + "node_modules/@types/node": { + "version": "25.2.3", + "resolved": "https://registry.npmjs.org/@types/node/-/node-25.2.3.tgz", + "integrity": "sha512-m0jEgYlYz+mDJZ2+F4v8D1AyQb+QzsNqRuI7xg1VQX/KlKS0qT9r1Mo16yo5F/MtifXFgaofIFsdFMox2SxIbQ==", "dev": true, - "requires": { - "@babel/code-frame": "^7.14.5", - "@babel/generator": "^7.15.4", - "@babel/helper-function-name": "^7.15.4", - "@babel/helper-hoist-variables": "^7.15.4", - "@babel/helper-split-export-declaration": "^7.15.4", - "@babel/parser": "^7.15.4", - "@babel/types": "^7.15.4", - "debug": "^4.1.0", - "globals": "^11.1.0" + "license": "MIT", + "dependencies": { + "undici-types": "~7.16.0" } }, - "@babel/types": { - "version": "7.15.6", - "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.15.6.tgz", - "integrity": "sha512-BPU+7QhqNjmWyDO0/vitH/CuhpV8ZmK1wpKva8nuyNF5MJfuRNWMc+hc14+u9xT93kvykMdncrJT19h74uB1Ig==", + "node_modules/@types/resolve": { + "version": "1.20.2", + "resolved": "https://registry.npmjs.org/@types/resolve/-/resolve-1.20.2.tgz", + "integrity": "sha512-60BCwRFOZCQhDncwQdxxeOEEkbc5dIMccYLwbxsS4TUNeVECQ/pBJ0j09mrHOl/JJvpRPGwO9SvE4nR2Nb/a4Q==", "dev": true, - "requires": { - "@babel/helper-validator-identifier": "^7.14.9", - "to-fast-properties": "^2.0.0" - } - }, - "@bcoe/v8-coverage": { - "version": "0.2.3", - "resolved": "https://registry.npmjs.org/@bcoe/v8-coverage/-/v8-coverage-0.2.3.tgz", - "integrity": "sha512-0hYQ8SB4Db5zvZB4axdMHGwEaQjkZzFjQiN9LVYvIFB2nSUHW9tYpxWriPrWDASIxiaXax83REcLxuSdnGPZtw==", - "dev": true + "license": "MIT" }, - "@istanbuljs/load-nyc-config": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/@istanbuljs/load-nyc-config/-/load-nyc-config-1.1.0.tgz", - "integrity": "sha512-VjeHSlIzpv/NyD3N0YuHfXOPDIixcA1q2ZV98wsMqcYlPmv2n3Yb2lYP9XMElnaFVXg5A7YLTeLu6V84uQDjmQ==", + "node_modules/@types/stack-utils": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/@types/stack-utils/-/stack-utils-2.0.3.tgz", + "integrity": "sha512-9aEbYZ3TbYMznPdcdr3SmIrLXwC/AKZXQeCf9Pgao5CKb8CyHuEX5jzWPTkvregvhRJHcpRO6BFoGW9ycaOkYw==", "dev": true, - "requires": { - "camelcase": "^5.3.1", - "find-up": "^4.1.0", - "get-package-type": "^0.1.0", - "js-yaml": "^3.13.1", - "resolve-from": "^5.0.0" - } - }, - "@istanbuljs/schema": { - "version": "0.1.3", - "resolved": "https://registry.npmjs.org/@istanbuljs/schema/-/schema-0.1.3.tgz", - "integrity": "sha512-ZXRY4jNvVgSVQ8DL3LTcakaAtXwTVUxE81hslsyD2AtoXW/wVob10HkOJ1X/pAlcI7D+2YoZKg5do8G/w6RYgA==", - "dev": true + "license": "MIT" }, - "@jest/console": { - "version": "27.2.4", - "resolved": "https://registry.npmjs.org/@jest/console/-/console-27.2.4.tgz", - "integrity": "sha512-94znCKynPZpDpYHQ6esRJSc11AmONrVkBOBZiD7S+bSubHhrUfbS95EY5HIOxhm4PQO7cnvZkL3oJcY0oMA+Wg==", + "node_modules/@types/unist": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/@types/unist/-/unist-3.0.3.tgz", + "integrity": "sha512-ko/gIFJRv177XgZsZcBwnqJN5x/Gien8qNOn0D5bQU/zAzVf9Zt3BlcUiLqhV9y4ARk0GbT3tnUiPNgnTXzc/Q==", "dev": true, - "requires": { - "@jest/types": "^27.2.4", - "@types/node": "*", - "chalk": "^4.0.0", - "jest-message-util": "^27.2.4", - "jest-util": "^27.2.4", - "slash": "^3.0.0" - } + "license": "MIT" }, - "@jest/core": { - "version": "27.2.4", - "resolved": "https://registry.npmjs.org/@jest/core/-/core-27.2.4.tgz", - "integrity": "sha512-UNQLyy+rXoojNm2MGlapgzWhZD1CT1zcHZQYeiD0xE7MtJfC19Q6J5D/Lm2l7i4V97T30usKDoEtjI8vKwWcLg==", + "node_modules/@types/yargs": { + "version": "17.0.35", + "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-17.0.35.tgz", + "integrity": "sha512-qUHkeCyQFxMXg79wQfTtfndEC+N9ZZg76HJftDJp+qH2tV7Gj4OJi7l+PiWwJ+pWtW8GwSmqsDj/oymhrTWXjg==", "dev": true, - "requires": { - "@jest/console": "^27.2.4", - "@jest/reporters": "^27.2.4", - "@jest/test-result": "^27.2.4", - "@jest/transform": "^27.2.4", - "@jest/types": "^27.2.4", - "@types/node": "*", - "ansi-escapes": "^4.2.1", - "chalk": "^4.0.0", - "emittery": "^0.8.1", - "exit": "^0.1.2", - "graceful-fs": "^4.2.4", - "jest-changed-files": "^27.2.4", - "jest-config": "^27.2.4", - "jest-haste-map": "^27.2.4", - "jest-message-util": "^27.2.4", - "jest-regex-util": "^27.0.6", - "jest-resolve": "^27.2.4", - "jest-resolve-dependencies": "^27.2.4", - "jest-runner": "^27.2.4", - "jest-runtime": "^27.2.4", - "jest-snapshot": "^27.2.4", - "jest-util": "^27.2.4", - "jest-validate": "^27.2.4", - "jest-watcher": "^27.2.4", - "micromatch": "^4.0.4", - "rimraf": "^3.0.0", - "slash": "^3.0.0", - "strip-ansi": "^6.0.0" + "license": "MIT", + "dependencies": { + "@types/yargs-parser": "*" } }, - "@jest/environment": { - "version": "27.2.4", - "resolved": "https://registry.npmjs.org/@jest/environment/-/environment-27.2.4.tgz", - "integrity": "sha512-wkuui5yr3SSQW0XD0Qm3TATUbL/WE3LDEM3ulC+RCQhMf2yxhci8x7svGkZ4ivJ6Pc94oOzpZ6cdHBAMSYd1ew==", + "node_modules/@types/yargs-parser": { + "version": "21.0.3", + "resolved": "https://registry.npmjs.org/@types/yargs-parser/-/yargs-parser-21.0.3.tgz", + "integrity": "sha512-I4q9QU9MQv4oEOz4tAHJtNz1cwuLxn2F3xcc2iV5WdqLPpUnj30aUuxt1mAxYTG+oe8CZMV/+6rU4S4gRDzqtQ==", "dev": true, - "requires": { - "@jest/fake-timers": "^27.2.4", - "@jest/types": "^27.2.4", - "@types/node": "*", - "jest-mock": "^27.2.4" - } + "license": "MIT" }, - "@jest/fake-timers": { - "version": "27.2.4", - "resolved": "https://registry.npmjs.org/@jest/fake-timers/-/fake-timers-27.2.4.tgz", - "integrity": "sha512-cs/TzvwWUM7kAA6Qm/890SK6JJ2pD5RfDNM3SSEom6BmdyV6OiWP1qf/pqo6ts6xwpcM36oN0wSEzcZWc6/B6w==", + "node_modules/@ungap/structured-clone": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/@ungap/structured-clone/-/structured-clone-1.3.0.tgz", + "integrity": "sha512-WmoN8qaIAo7WTYWbAZuG8PYEhn5fkz7dZrqTBZ7dtt//lL2Gwms1IcnQ5yHqjDfX8Ft5j4YzDM23f87zBfDe9g==", "dev": true, - "requires": { - "@jest/types": "^27.2.4", - "@sinonjs/fake-timers": "^8.0.1", - "@types/node": "*", - "jest-message-util": "^27.2.4", - "jest-mock": "^27.2.4", - "jest-util": "^27.2.4" - } + "license": "ISC" }, - "@jest/globals": { - "version": "27.2.4", - "resolved": "https://registry.npmjs.org/@jest/globals/-/globals-27.2.4.tgz", - "integrity": "sha512-DRsRs5dh0i+fA9mGHylTU19+8fhzNJoEzrgsu+zgJoZth3x8/0juCQ8nVVdW1er4Cqifb/ET7/hACYVPD0dBEA==", + "node_modules/@unrs/resolver-binding-android-arm-eabi": { + "version": "1.11.1", + "resolved": "https://registry.npmjs.org/@unrs/resolver-binding-android-arm-eabi/-/resolver-binding-android-arm-eabi-1.11.1.tgz", + "integrity": "sha512-ppLRUgHVaGRWUx0R0Ut06Mjo9gBaBkg3v/8AxusGLhsIotbBLuRk51rAzqLC8gq6NyyAojEXglNjzf6R948DNw==", + "cpu": [ + "arm" + ], "dev": true, - "requires": { - "@jest/environment": "^27.2.4", - "@jest/types": "^27.2.4", - "expect": "^27.2.4" - } - }, - "@jest/reporters": { - "version": "27.2.4", - "resolved": "https://registry.npmjs.org/@jest/reporters/-/reporters-27.2.4.tgz", - "integrity": "sha512-LHeSdDnDZkDnJ8kvnjcqV8P1Yv/32yL4d4XfR5gBiy3xGO0onwll1QEbvtW96fIwhx2nejug0GTaEdNDoyr3fQ==", + "license": "MIT", + "optional": true, + "os": [ + "android" + ] + }, + "node_modules/@unrs/resolver-binding-android-arm64": { + "version": "1.11.1", + "resolved": "https://registry.npmjs.org/@unrs/resolver-binding-android-arm64/-/resolver-binding-android-arm64-1.11.1.tgz", + "integrity": "sha512-lCxkVtb4wp1v+EoN+HjIG9cIIzPkX5OtM03pQYkG+U5O/wL53LC4QbIeazgiKqluGeVEeBlZahHalCaBvU1a2g==", + "cpu": [ + "arm64" + ], "dev": true, - "requires": { - "@bcoe/v8-coverage": "^0.2.3", - "@jest/console": "^27.2.4", - "@jest/test-result": "^27.2.4", - "@jest/transform": "^27.2.4", - "@jest/types": "^27.2.4", - "chalk": "^4.0.0", - "collect-v8-coverage": "^1.0.0", - "exit": "^0.1.2", - "glob": "^7.1.2", - "graceful-fs": "^4.2.4", - "istanbul-lib-coverage": "^3.0.0", - "istanbul-lib-instrument": "^4.0.3", - "istanbul-lib-report": "^3.0.0", - "istanbul-lib-source-maps": "^4.0.0", - "istanbul-reports": "^3.0.2", - "jest-haste-map": "^27.2.4", - "jest-resolve": "^27.2.4", - "jest-util": "^27.2.4", - "jest-worker": "^27.2.4", - "slash": "^3.0.0", - "source-map": "^0.6.0", - "string-length": "^4.0.1", - "terminal-link": "^2.0.0", - "v8-to-istanbul": "^8.1.0" - } - }, - "@jest/source-map": { - "version": "27.0.6", - "resolved": "https://registry.npmjs.org/@jest/source-map/-/source-map-27.0.6.tgz", - "integrity": "sha512-Fek4mi5KQrqmlY07T23JRi0e7Z9bXTOOD86V/uS0EIW4PClvPDqZOyFlLpNJheS6QI0FNX1CgmPjtJ4EA/2M+g==", + "license": "MIT", + "optional": true, + "os": [ + "android" + ] + }, + "node_modules/@unrs/resolver-binding-darwin-arm64": { + "version": "1.11.1", + "resolved": "https://registry.npmjs.org/@unrs/resolver-binding-darwin-arm64/-/resolver-binding-darwin-arm64-1.11.1.tgz", + "integrity": "sha512-gPVA1UjRu1Y/IsB/dQEsp2V1pm44Of6+LWvbLc9SDk1c2KhhDRDBUkQCYVWe6f26uJb3fOK8saWMgtX8IrMk3g==", + "cpu": [ + "arm64" + ], "dev": true, - "requires": { - "callsites": "^3.0.0", - "graceful-fs": "^4.2.4", - "source-map": "^0.6.0" - } - }, - "@jest/test-result": { - "version": "27.2.4", - "resolved": "https://registry.npmjs.org/@jest/test-result/-/test-result-27.2.4.tgz", - "integrity": "sha512-eU+PRo0+lIS01b0dTmMdVZ0TtcRSxEaYquZTRFMQz6CvsehGhx9bRzi9Zdw6VROviJyv7rstU+qAMX5pNBmnfQ==", - "dev": true, - "requires": { - "@jest/console": "^27.2.4", - "@jest/types": "^27.2.4", - "@types/istanbul-lib-coverage": "^2.0.0", - "collect-v8-coverage": "^1.0.0" - } - }, - "@jest/test-sequencer": { - "version": "27.2.4", - "resolved": "https://registry.npmjs.org/@jest/test-sequencer/-/test-sequencer-27.2.4.tgz", - "integrity": "sha512-fpk5eknU3/DXE2QCCG1wv/a468+cfPo3Asu6d6yUtM9LOPh709ubZqrhuUOYfM8hXMrIpIdrv1CdCrWWabX0rQ==", - "dev": true, - "requires": { - "@jest/test-result": "^27.2.4", - "graceful-fs": "^4.2.4", - "jest-haste-map": "^27.2.4", - "jest-runtime": "^27.2.4" - } - }, - "@jest/transform": { - "version": "27.2.4", - "resolved": "https://registry.npmjs.org/@jest/transform/-/transform-27.2.4.tgz", - "integrity": "sha512-n5FlX2TH0oQGwyVDKPxdJ5nI2sO7TJBFe3u3KaAtt7TOiV4yL+Y+rSFDl+Ic5MpbiA/eqXmLAQxjnBmWgS2rEA==", - "dev": true, - "requires": { - "@babel/core": "^7.1.0", - "@jest/types": "^27.2.4", - "babel-plugin-istanbul": "^6.0.0", - "chalk": "^4.0.0", - "convert-source-map": "^1.4.0", - "fast-json-stable-stringify": "^2.0.0", - "graceful-fs": "^4.2.4", - "jest-haste-map": "^27.2.4", - "jest-regex-util": "^27.0.6", - "jest-util": "^27.2.4", - "micromatch": "^4.0.4", - "pirates": "^4.0.1", - "slash": "^3.0.0", - "source-map": "^0.6.1", - "write-file-atomic": "^3.0.0" - } - }, - "@jest/types": { - "version": "27.2.4", - "resolved": "https://registry.npmjs.org/@jest/types/-/types-27.2.4.tgz", - "integrity": "sha512-IDO2ezTxeMvQAHxzG/ZvEyA47q0aVfzT95rGFl7bZs/Go0aIucvfDbS2rmnoEdXxlLQhcolmoG/wvL/uKx4tKA==", + "license": "MIT", + "optional": true, + "os": [ + "darwin" + ] + }, + "node_modules/@unrs/resolver-binding-darwin-x64": { + "version": "1.11.1", + "resolved": "https://registry.npmjs.org/@unrs/resolver-binding-darwin-x64/-/resolver-binding-darwin-x64-1.11.1.tgz", + "integrity": "sha512-cFzP7rWKd3lZaCsDze07QX1SC24lO8mPty9vdP+YVa3MGdVgPmFc59317b2ioXtgCMKGiCLxJ4HQs62oz6GfRQ==", + "cpu": [ + "x64" + ], "dev": true, - "requires": { - "@types/istanbul-lib-coverage": "^2.0.0", - "@types/istanbul-reports": "^3.0.0", - "@types/node": "*", - "@types/yargs": "^16.0.0", - "chalk": "^4.0.0" - } - }, - "@lopatnov/get-internal-type": { - "version": "1.5.7", - "resolved": "https://registry.npmjs.org/@lopatnov/get-internal-type/-/get-internal-type-1.5.7.tgz", - "integrity": "sha512-Mi5HQFtmhT4WGirsEfmBX7FmmnZQM1TWU0+HO/m3SeB3S4knjH9oyXkBv1hE9KGzEx8a3XeJ51rXUNh8c2l3XA==" - }, - "@lopatnov/rollup-plugin-uglify": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/@lopatnov/rollup-plugin-uglify/-/rollup-plugin-uglify-2.1.1.tgz", - "integrity": "sha512-nufaifR32KhQSdLURYgMQNUNjhpyIIeDE482ok/Oi4P4OItFfXQa/g6Td6YQvukwxFjJHi4MDDlN8cu3YQPKqA==", + "license": "MIT", + "optional": true, + "os": [ + "darwin" + ] + }, + "node_modules/@unrs/resolver-binding-freebsd-x64": { + "version": "1.11.1", + "resolved": "https://registry.npmjs.org/@unrs/resolver-binding-freebsd-x64/-/resolver-binding-freebsd-x64-1.11.1.tgz", + "integrity": "sha512-fqtGgak3zX4DCB6PFpsH5+Kmt/8CIi4Bry4rb1ho6Av2QHTREM+47y282Uqiu3ZRF5IQioJQ5qWRV6jduA+iGw==", + "cpu": [ + "x64" + ], "dev": true, - "requires": {} - }, - "@rollup/pluginutils": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/@rollup/pluginutils/-/pluginutils-3.1.0.tgz", - "integrity": "sha512-GksZ6pr6TpIjHm8h9lSQ8pi8BE9VeubNT0OMJ3B5uZJ8pz73NPiqOtCog/x2/QzM1ENChPKxMDhiQuRHsqc+lg==", + "license": "MIT", + "optional": true, + "os": [ + "freebsd" + ] + }, + "node_modules/@unrs/resolver-binding-linux-arm-gnueabihf": { + "version": "1.11.1", + "resolved": "https://registry.npmjs.org/@unrs/resolver-binding-linux-arm-gnueabihf/-/resolver-binding-linux-arm-gnueabihf-1.11.1.tgz", + "integrity": "sha512-u92mvlcYtp9MRKmP+ZvMmtPN34+/3lMHlyMj7wXJDeXxuM0Vgzz0+PPJNsro1m3IZPYChIkn944wW8TYgGKFHw==", + "cpu": [ + "arm" + ], "dev": true, - "requires": { - "@types/estree": "0.0.39", - "estree-walker": "^1.0.1", - "picomatch": "^2.2.2" - }, - "dependencies": { - "estree-walker": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/estree-walker/-/estree-walker-1.0.1.tgz", - "integrity": "sha512-1fMXF3YP4pZZVozF8j/ZLfvnR8NSIljt56UhbZ5PeeDmmGHpgpdwQt7ITlGvYaQukCvuBRMLEiKiYC+oeIg4cg==", - "dev": true - } - } - }, - "@sinonjs/commons": { - "version": "1.8.3", - "resolved": "https://registry.npmjs.org/@sinonjs/commons/-/commons-1.8.3.tgz", - "integrity": "sha512-xkNcLAn/wZaX14RPlwizcKicDk9G3F8m2nU3L7Ukm5zBgTwiT0wsoFAHx9Jq56fJA1z/7uKGtCRu16sOUCLIHQ==", + "license": "MIT", + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@unrs/resolver-binding-linux-arm-musleabihf": { + "version": "1.11.1", + "resolved": "https://registry.npmjs.org/@unrs/resolver-binding-linux-arm-musleabihf/-/resolver-binding-linux-arm-musleabihf-1.11.1.tgz", + "integrity": "sha512-cINaoY2z7LVCrfHkIcmvj7osTOtm6VVT16b5oQdS4beibX2SYBwgYLmqhBjA1t51CarSaBuX5YNsWLjsqfW5Cw==", + "cpu": [ + "arm" + ], "dev": true, - "requires": { - "type-detect": "4.0.8" - } - }, - "@sinonjs/fake-timers": { - "version": "8.0.1", - "resolved": "https://registry.npmjs.org/@sinonjs/fake-timers/-/fake-timers-8.0.1.tgz", - "integrity": "sha512-AU7kwFxreVd6OAXcAFlKSmZquiRUU0FvYm44k1Y1QbK7Co4m0aqfGMhjykIeQp/H6rcl+nFmj0zfdUcGVs9Dew==", + "license": "MIT", + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@unrs/resolver-binding-linux-arm64-gnu": { + "version": "1.11.1", + "resolved": "https://registry.npmjs.org/@unrs/resolver-binding-linux-arm64-gnu/-/resolver-binding-linux-arm64-gnu-1.11.1.tgz", + "integrity": "sha512-34gw7PjDGB9JgePJEmhEqBhWvCiiWCuXsL9hYphDF7crW7UgI05gyBAi6MF58uGcMOiOqSJ2ybEeCvHcq0BCmQ==", + "cpu": [ + "arm64" + ], "dev": true, - "requires": { - "@sinonjs/commons": "^1.7.0" - } - }, - "@tootallnate/once": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/@tootallnate/once/-/once-1.1.2.tgz", - "integrity": "sha512-RbzJvlNzmRq5c3O09UipeuXno4tA1FE6ikOjxZK0tuxVv3412l64l5t1W5pj4+rJq9vpkm/kwiR07aZXnsKPxw==", - "dev": true - }, - "@types/babel__core": { - "version": "7.1.16", - "resolved": "https://registry.npmjs.org/@types/babel__core/-/babel__core-7.1.16.tgz", - "integrity": "sha512-EAEHtisTMM+KaKwfWdC3oyllIqswlznXCIVCt7/oRNrh+DhgT4UEBNC/jlADNjvw7UnfbcdkGQcPVZ1xYiLcrQ==", + "license": "MIT", + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@unrs/resolver-binding-linux-arm64-musl": { + "version": "1.11.1", + "resolved": "https://registry.npmjs.org/@unrs/resolver-binding-linux-arm64-musl/-/resolver-binding-linux-arm64-musl-1.11.1.tgz", + "integrity": "sha512-RyMIx6Uf53hhOtJDIamSbTskA99sPHS96wxVE/bJtePJJtpdKGXO1wY90oRdXuYOGOTuqjT8ACccMc4K6QmT3w==", + "cpu": [ + "arm64" + ], "dev": true, - "requires": { - "@babel/parser": "^7.1.0", - "@babel/types": "^7.0.0", - "@types/babel__generator": "*", - "@types/babel__template": "*", - "@types/babel__traverse": "*" - } - }, - "@types/babel__generator": { - "version": "7.6.3", - "resolved": "https://registry.npmjs.org/@types/babel__generator/-/babel__generator-7.6.3.tgz", - "integrity": "sha512-/GWCmzJWqV7diQW54smJZzWbSFf4QYtF71WCKhcx6Ru/tFyQIY2eiiITcCAeuPbNSvT9YCGkVMqqvSk2Z0mXiA==", + "license": "MIT", + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@unrs/resolver-binding-linux-ppc64-gnu": { + "version": "1.11.1", + "resolved": "https://registry.npmjs.org/@unrs/resolver-binding-linux-ppc64-gnu/-/resolver-binding-linux-ppc64-gnu-1.11.1.tgz", + "integrity": "sha512-D8Vae74A4/a+mZH0FbOkFJL9DSK2R6TFPC9M+jCWYia/q2einCubX10pecpDiTmkJVUH+y8K3BZClycD8nCShA==", + "cpu": [ + "ppc64" + ], "dev": true, - "requires": { - "@babel/types": "^7.0.0" - } - }, - "@types/babel__template": { - "version": "7.4.1", - "resolved": "https://registry.npmjs.org/@types/babel__template/-/babel__template-7.4.1.tgz", - "integrity": "sha512-azBFKemX6kMg5Io+/rdGT0dkGreboUVR0Cdm3fz9QJWpaQGJRQXl7C+6hOTCZcMll7KFyEQpgbYI2lHdsS4U7g==", + "license": "MIT", + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@unrs/resolver-binding-linux-riscv64-gnu": { + "version": "1.11.1", + "resolved": "https://registry.npmjs.org/@unrs/resolver-binding-linux-riscv64-gnu/-/resolver-binding-linux-riscv64-gnu-1.11.1.tgz", + "integrity": "sha512-frxL4OrzOWVVsOc96+V3aqTIQl1O2TjgExV4EKgRY09AJ9leZpEg8Ak9phadbuX0BA4k8U5qtvMSQQGGmaJqcQ==", + "cpu": [ + "riscv64" + ], "dev": true, - "requires": { - "@babel/parser": "^7.1.0", - "@babel/types": "^7.0.0" - } - }, - "@types/babel__traverse": { - "version": "7.14.2", - "resolved": "https://registry.npmjs.org/@types/babel__traverse/-/babel__traverse-7.14.2.tgz", - "integrity": "sha512-K2waXdXBi2302XUdcHcR1jCeU0LL4TD9HRs/gk0N2Xvrht+G/BfJa4QObBQZfhMdxiCpV3COl5Nfq4uKTeTnJA==", + "license": "MIT", + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@unrs/resolver-binding-linux-riscv64-musl": { + "version": "1.11.1", + "resolved": "https://registry.npmjs.org/@unrs/resolver-binding-linux-riscv64-musl/-/resolver-binding-linux-riscv64-musl-1.11.1.tgz", + "integrity": "sha512-mJ5vuDaIZ+l/acv01sHoXfpnyrNKOk/3aDoEdLO/Xtn9HuZlDD6jKxHlkN8ZhWyLJsRBxfv9GYM2utQ1SChKew==", + "cpu": [ + "riscv64" + ], "dev": true, - "requires": { - "@babel/types": "^7.3.0" - } - }, - "@types/estree": { - "version": "0.0.39", - "resolved": "https://registry.npmjs.org/@types/estree/-/estree-0.0.39.tgz", - "integrity": "sha512-EYNwp3bU+98cpU4lAWYYL7Zz+2gryWH1qbdDTidVd6hkiR6weksdbMadyXKXNPEkQFhXM+hVO9ZygomHXp+AIw==", - "dev": true - }, - "@types/graceful-fs": { - "version": "4.1.5", - "resolved": "https://registry.npmjs.org/@types/graceful-fs/-/graceful-fs-4.1.5.tgz", - "integrity": "sha512-anKkLmZZ+xm4p8JWBf4hElkM4XR+EZeA2M9BAkkTldmcyDY4mbdIJnRghDJH3Ov5ooY7/UAoENtmdMSkaAd7Cw==", + "license": "MIT", + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@unrs/resolver-binding-linux-s390x-gnu": { + "version": "1.11.1", + "resolved": "https://registry.npmjs.org/@unrs/resolver-binding-linux-s390x-gnu/-/resolver-binding-linux-s390x-gnu-1.11.1.tgz", + "integrity": "sha512-kELo8ebBVtb9sA7rMe1Cph4QHreByhaZ2QEADd9NzIQsYNQpt9UkM9iqr2lhGr5afh885d/cB5QeTXSbZHTYPg==", + "cpu": [ + "s390x" + ], "dev": true, - "requires": { - "@types/node": "*" - } - }, - "@types/istanbul-lib-coverage": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/@types/istanbul-lib-coverage/-/istanbul-lib-coverage-2.0.3.tgz", - "integrity": "sha512-sz7iLqvVUg1gIedBOvlkxPlc8/uVzyS5OwGz1cKjXzkl3FpL3al0crU8YGU1WoHkxn0Wxbw5tyi6hvzJKNzFsw==", - "dev": true - }, - "@types/istanbul-lib-report": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/@types/istanbul-lib-report/-/istanbul-lib-report-3.0.0.tgz", - "integrity": "sha512-plGgXAPfVKFoYfa9NpYDAkseG+g6Jr294RqeqcqDixSbU34MZVJRi/P+7Y8GDpzkEwLaGZZOpKIEmeVZNtKsrg==", + "license": "MIT", + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@unrs/resolver-binding-linux-x64-gnu": { + "version": "1.11.1", + "resolved": "https://registry.npmjs.org/@unrs/resolver-binding-linux-x64-gnu/-/resolver-binding-linux-x64-gnu-1.11.1.tgz", + "integrity": "sha512-C3ZAHugKgovV5YvAMsxhq0gtXuwESUKc5MhEtjBpLoHPLYM+iuwSj3lflFwK3DPm68660rZ7G8BMcwSro7hD5w==", + "cpu": [ + "x64" + ], "dev": true, - "requires": { - "@types/istanbul-lib-coverage": "*" - } - }, - "@types/istanbul-reports": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/@types/istanbul-reports/-/istanbul-reports-3.0.1.tgz", - "integrity": "sha512-c3mAZEuK0lvBp8tmuL74XRKn1+y2dcwOUpH7x4WrF6gk1GIgiluDRgMYQtw2OFcBvAJWlt6ASU3tSqxp0Uu0Aw==", + "license": "MIT", + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@unrs/resolver-binding-linux-x64-musl": { + "version": "1.11.1", + "resolved": "https://registry.npmjs.org/@unrs/resolver-binding-linux-x64-musl/-/resolver-binding-linux-x64-musl-1.11.1.tgz", + "integrity": "sha512-rV0YSoyhK2nZ4vEswT/QwqzqQXw5I6CjoaYMOX0TqBlWhojUf8P94mvI7nuJTeaCkkds3QE4+zS8Ko+GdXuZtA==", + "cpu": [ + "x64" + ], "dev": true, - "requires": { - "@types/istanbul-lib-report": "*" - } - }, - "@types/jest": { - "version": "27.0.2", - "resolved": "https://registry.npmjs.org/@types/jest/-/jest-27.0.2.tgz", - "integrity": "sha512-4dRxkS/AFX0c5XW6IPMNOydLn2tEhNhJV7DnYK+0bjoJZ+QTmfucBlihX7aoEsh/ocYtkLC73UbnBXBXIxsULA==", + "license": "MIT", + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@unrs/resolver-binding-wasm32-wasi": { + "version": "1.11.1", + "resolved": "https://registry.npmjs.org/@unrs/resolver-binding-wasm32-wasi/-/resolver-binding-wasm32-wasi-1.11.1.tgz", + "integrity": "sha512-5u4RkfxJm+Ng7IWgkzi3qrFOvLvQYnPBmjmZQ8+szTK/b31fQCnleNl1GgEt7nIsZRIf5PLhPwT0WM+q45x/UQ==", + "cpu": [ + "wasm32" + ], "dev": true, - "requires": { - "jest-diff": "^27.0.0", - "pretty-format": "^27.0.0" + "license": "MIT", + "optional": true, + "dependencies": { + "@napi-rs/wasm-runtime": "^0.2.11" + }, + "engines": { + "node": ">=14.0.0" } }, - "@types/node": { - "version": "16.10.2", - "resolved": "https://registry.npmjs.org/@types/node/-/node-16.10.2.tgz", - "integrity": "sha512-zCclL4/rx+W5SQTzFs9wyvvyCwoK9QtBpratqz2IYJ3O8Umrn0m3nsTv0wQBk9sRGpvUe9CwPDrQFB10f1FIjQ==", - "dev": true - }, - "@types/prettier": { - "version": "2.4.1", - "resolved": "https://registry.npmjs.org/@types/prettier/-/prettier-2.4.1.tgz", - "integrity": "sha512-Fo79ojj3vdEZOHg3wR9ksAMRz4P3S5fDB5e/YWZiFnyFQI1WY2Vftu9XoXVVtJfxB7Bpce/QTqWSSntkz2Znrw==", - "dev": true - }, - "@types/resolve": { - "version": "0.0.8", - "resolved": "https://registry.npmjs.org/@types/resolve/-/resolve-0.0.8.tgz", - "integrity": "sha512-auApPaJf3NPfe18hSoJkp8EbZzer2ISk7o8mCC3M9he/a04+gbMF97NkpD2S8riMGvm4BMRI59/SZQSaLTKpsQ==", + "node_modules/@unrs/resolver-binding-win32-arm64-msvc": { + "version": "1.11.1", + "resolved": "https://registry.npmjs.org/@unrs/resolver-binding-win32-arm64-msvc/-/resolver-binding-win32-arm64-msvc-1.11.1.tgz", + "integrity": "sha512-nRcz5Il4ln0kMhfL8S3hLkxI85BXs3o8EYoattsJNdsX4YUU89iOkVn7g0VHSRxFuVMdM4Q1jEpIId1Ihim/Uw==", + "cpu": [ + "arm64" + ], "dev": true, - "requires": { - "@types/node": "*" - } - }, - "@types/stack-utils": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/@types/stack-utils/-/stack-utils-2.0.1.tgz", - "integrity": "sha512-Hl219/BT5fLAaz6NDkSuhzasy49dwQS/DSdu4MdggFB8zcXv7vflBI3xp7FEmkmdDkBUI2bPUNeMttp2knYdxw==", - "dev": true - }, - "@types/yargs": { - "version": "16.0.4", - "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-16.0.4.tgz", - "integrity": "sha512-T8Yc9wt/5LbJyCaLiHPReJa0kApcIgJ7Bn735GjItUfh08Z1pJvu8QZqb9s+mMvKV6WUQRV7K2R46YbjMXTTJw==", + "license": "MIT", + "optional": true, + "os": [ + "win32" + ] + }, + "node_modules/@unrs/resolver-binding-win32-ia32-msvc": { + "version": "1.11.1", + "resolved": "https://registry.npmjs.org/@unrs/resolver-binding-win32-ia32-msvc/-/resolver-binding-win32-ia32-msvc-1.11.1.tgz", + "integrity": "sha512-DCEI6t5i1NmAZp6pFonpD5m7i6aFrpofcp4LA2i8IIq60Jyo28hamKBxNrZcyOwVOZkgsRp9O2sXWBWP8MnvIQ==", + "cpu": [ + "ia32" + ], "dev": true, - "requires": { - "@types/yargs-parser": "*" - } - }, - "@types/yargs-parser": { - "version": "20.2.1", - "resolved": "https://registry.npmjs.org/@types/yargs-parser/-/yargs-parser-20.2.1.tgz", - "integrity": "sha512-7tFImggNeNBVMsn0vLrpn1H1uPrUBdnARPTpZoitY37ZrdJREzf7I16tMrlK3hen349gr1NYh8CmZQa7CTG6Aw==", - "dev": true - }, - "abab": { - "version": "2.0.5", - "resolved": "https://registry.npmjs.org/abab/-/abab-2.0.5.tgz", - "integrity": "sha512-9IK9EadsbHo6jLWIpxpR6pL0sazTXV6+SQv25ZB+F7Bj9mJNaOc4nCRabwd5M/JwmUa8idz6Eci6eKfJryPs6Q==", - "dev": true - }, - "acorn": { - "version": "8.5.0", - "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.5.0.tgz", - "integrity": "sha512-yXbYeFy+jUuYd3/CDcg2NkIYE991XYX/bje7LmjJigUciaeO1JR4XxXgCIV1/Zc/dRuFEyw1L0pbA+qynJkW5Q==", - "dev": true - }, - "acorn-globals": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/acorn-globals/-/acorn-globals-6.0.0.tgz", - "integrity": "sha512-ZQl7LOWaF5ePqqcX4hLuv/bLXYQNfNWw2c0/yX/TsPRKamzHcTGQnlCjHT3TsmkOUVEPS3crCxiPfdzE/Trlhg==", + "license": "MIT", + "optional": true, + "os": [ + "win32" + ] + }, + "node_modules/@unrs/resolver-binding-win32-x64-msvc": { + "version": "1.11.1", + "resolved": "https://registry.npmjs.org/@unrs/resolver-binding-win32-x64-msvc/-/resolver-binding-win32-x64-msvc-1.11.1.tgz", + "integrity": "sha512-lrW200hZdbfRtztbygyaq/6jP6AKE8qQN2KvPcJ+x7wiD038YtnYtZ82IMNJ69GJibV7bwL3y9FgK+5w/pYt6g==", + "cpu": [ + "x64" + ], "dev": true, - "requires": { - "acorn": "^7.1.1", - "acorn-walk": "^7.1.1" - }, - "dependencies": { - "acorn": { - "version": "7.4.1", - "resolved": "https://registry.npmjs.org/acorn/-/acorn-7.4.1.tgz", - "integrity": "sha512-nQyp0o1/mNdbTO1PO6kHkwSrmgZ0MT/jCCpNiwbUjGoRN4dlBhqJtoQuCnEOKzgTVwg0ZWiCoQy6SxMebQVh8A==", - "dev": true - } - } - }, - "acorn-walk": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/acorn-walk/-/acorn-walk-7.2.0.tgz", - "integrity": "sha512-OPdCF6GsMIP+Az+aWfAAOEt2/+iVDKE7oy6lJ098aoe59oAmK76qV6Gw60SbZ8jHuG2wH058GF4pLFbYamYrVA==", - "dev": true + "license": "MIT", + "optional": true, + "os": [ + "win32" + ] }, - "agent-base": { - "version": "6.0.2", - "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-6.0.2.tgz", - "integrity": "sha512-RZNwNclF7+MS/8bDg70amg32dyeZGZxiDuQmZxKLAlQjr3jGyLx+4Kkk58UO7D2QdgFIQCovuSuZESne6RG6XQ==", + "node_modules/acorn": { + "version": "8.15.0", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.15.0.tgz", + "integrity": "sha512-NZyJarBfL7nWwIq+FDL6Zp/yHEhePMNnnJ0y3qfieCrmNvYct8uvtiV41UvlSe6apAfk0fY1FbWx+NwfmpvtTg==", "dev": true, - "requires": { - "debug": "4" + "license": "MIT", + "bin": { + "acorn": "bin/acorn" + }, + "engines": { + "node": ">=0.4.0" } }, - "ansi-escapes": { + "node_modules/ansi-escapes": { "version": "4.3.2", "resolved": "https://registry.npmjs.org/ansi-escapes/-/ansi-escapes-4.3.2.tgz", "integrity": "sha512-gKXj5ALrKWQLsYG9jlTRmR/xKluxHV+Z9QEwNIgCfM1/uwPMCuzVVnh5mwTd+OuBZcwSIMbqssNWRm1lE51QaQ==", "dev": true, - "requires": { + "license": "MIT", + "dependencies": { "type-fest": "^0.21.3" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "ansi-regex": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", - "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", - "dev": true + "node_modules/ansi-regex": { + "version": "6.2.2", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-6.2.2.tgz", + "integrity": "sha512-Bq3SmSpyFHaWjPk8If9yc6svM8c56dB5BAtW4Qbw5jHTwwXXcTLoRMkpDJp6VL0XzlWaCHTXrkFURMYmD0sLqg==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/chalk/ansi-regex?sponsor=1" + } }, - "ansi-styles": { + "node_modules/ansi-styles": { "version": "4.3.0", "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", "dev": true, - "requires": { + "license": "MIT", + "dependencies": { "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" } }, - "anymatch": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-3.1.2.tgz", - "integrity": "sha512-P43ePfOAIupkguHUycrc4qJ9kz8ZiuOUijaETwX7THt0Y/GNK7v0aa8rY816xWjZ7rJdA5XdMcpVFTKMq+RvWg==", + "node_modules/anymatch": { + "version": "3.1.3", + "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-3.1.3.tgz", + "integrity": "sha512-KMReFUr0B4t+D+OBkjR3KYqvocp2XaSzO55UcB6mgQMd3KbcE+mWTyvVV7D/zsdEbNnV6acZUutkiHQXvTr1Rw==", "dev": true, - "requires": { + "license": "ISC", + "dependencies": { "normalize-path": "^3.0.0", "picomatch": "^2.0.4" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/anymatch/node_modules/picomatch": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.3.1.tgz", + "integrity": "sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8.6" + }, + "funding": { + "url": "https://github.com/sponsors/jonschlinkert" } }, - "argparse": { + "node_modules/argparse": { "version": "1.0.10", "resolved": "https://registry.npmjs.org/argparse/-/argparse-1.0.10.tgz", "integrity": "sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==", "dev": true, - "requires": { + "license": "MIT", + "dependencies": { "sprintf-js": "~1.0.2" } }, - "asynckit": { - "version": "0.4.0", - "resolved": "https://registry.npmjs.org/asynckit/-/asynckit-0.4.0.tgz", - "integrity": "sha1-x57Zf380y48robyXkLzDZkdLS3k=", - "dev": true - }, - "atob": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/atob/-/atob-2.1.2.tgz", - "integrity": "sha512-Wm6ukoaOGJi/73p/cl2GvLjTI5JM1k/O14isD73YML8StrH/7/lRFgmg8nICZgD3bZZvjwCGxtMOD3wWNAu8cg==", - "dev": true - }, - "babel-jest": { - "version": "27.2.4", - "resolved": "https://registry.npmjs.org/babel-jest/-/babel-jest-27.2.4.tgz", - "integrity": "sha512-f24OmxyWymk5jfgLdlCMu4fTs4ldxFBIdn5sJdhvGC1m08rSkJ5hYbWkNmfBSvE/DjhCVNSHXepxsI6THGfGsg==", - "dev": true, - "requires": { - "@jest/transform": "^27.2.4", - "@jest/types": "^27.2.4", - "@types/babel__core": "^7.1.14", - "babel-plugin-istanbul": "^6.0.0", - "babel-preset-jest": "^27.2.0", - "chalk": "^4.0.0", - "graceful-fs": "^4.2.4", + "node_modules/babel-jest": { + "version": "30.2.0", + "resolved": "https://registry.npmjs.org/babel-jest/-/babel-jest-30.2.0.tgz", + "integrity": "sha512-0YiBEOxWqKkSQWL9nNGGEgndoeL0ZpWrbLMNL5u/Kaxrli3Eaxlt3ZtIDktEvXt4L/R9r3ODr2zKwGM/2BjxVw==", + "dev": true, + "license": "MIT", + "dependencies": { + "@jest/transform": "30.2.0", + "@types/babel__core": "^7.20.5", + "babel-plugin-istanbul": "^7.0.1", + "babel-preset-jest": "30.2.0", + "chalk": "^4.1.2", + "graceful-fs": "^4.2.11", "slash": "^3.0.0" + }, + "engines": { + "node": "^18.14.0 || ^20.0.0 || ^22.0.0 || >=24.0.0" + }, + "peerDependencies": { + "@babel/core": "^7.11.0 || ^8.0.0-0" } }, - "babel-plugin-istanbul": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/babel-plugin-istanbul/-/babel-plugin-istanbul-6.0.0.tgz", - "integrity": "sha512-AF55rZXpe7trmEylbaE1Gv54wn6rwU03aptvRoVIGP8YykoSxqdVLV1TfwflBCE/QtHmqtP8SWlTENqbK8GCSQ==", + "node_modules/babel-plugin-istanbul": { + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/babel-plugin-istanbul/-/babel-plugin-istanbul-7.0.1.tgz", + "integrity": "sha512-D8Z6Qm8jCvVXtIRkBnqNHX0zJ37rQcFJ9u8WOS6tkYOsRdHBzypCstaxWiu5ZIlqQtviRYbgnRLSoCEvjqcqbA==", "dev": true, - "requires": { + "license": "BSD-3-Clause", + "workspaces": [ + "test/babel-8" + ], + "dependencies": { "@babel/helper-plugin-utils": "^7.0.0", "@istanbuljs/load-nyc-config": "^1.0.0", - "@istanbuljs/schema": "^0.1.2", - "istanbul-lib-instrument": "^4.0.0", + "@istanbuljs/schema": "^0.1.3", + "istanbul-lib-instrument": "^6.0.2", "test-exclude": "^6.0.0" + }, + "engines": { + "node": ">=12" } }, - "babel-plugin-jest-hoist": { - "version": "27.2.0", - "resolved": "https://registry.npmjs.org/babel-plugin-jest-hoist/-/babel-plugin-jest-hoist-27.2.0.tgz", - "integrity": "sha512-TOux9khNKdi64mW+0OIhcmbAn75tTlzKhxmiNXevQaPbrBYK7YKjP1jl6NHTJ6XR5UgUrJbCnWlKVnJn29dfjw==", + "node_modules/babel-plugin-jest-hoist": { + "version": "30.2.0", + "resolved": "https://registry.npmjs.org/babel-plugin-jest-hoist/-/babel-plugin-jest-hoist-30.2.0.tgz", + "integrity": "sha512-ftzhzSGMUnOzcCXd6WHdBGMyuwy15Wnn0iyyWGKgBDLxf9/s5ABuraCSpBX2uG0jUg4rqJnxsLc5+oYBqoxVaA==", "dev": true, - "requires": { - "@babel/template": "^7.3.3", - "@babel/types": "^7.3.3", - "@types/babel__core": "^7.0.0", - "@types/babel__traverse": "^7.0.6" + "license": "MIT", + "dependencies": { + "@types/babel__core": "^7.20.5" + }, + "engines": { + "node": "^18.14.0 || ^20.0.0 || ^22.0.0 || >=24.0.0" } }, - "babel-preset-current-node-syntax": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/babel-preset-current-node-syntax/-/babel-preset-current-node-syntax-1.0.1.tgz", - "integrity": "sha512-M7LQ0bxarkxQoN+vz5aJPsLBn77n8QgTFmo8WK0/44auK2xlCXrYcUxHFxgU7qW5Yzw/CjmLRK2uJzaCd7LvqQ==", + "node_modules/babel-preset-current-node-syntax": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/babel-preset-current-node-syntax/-/babel-preset-current-node-syntax-1.2.0.tgz", + "integrity": "sha512-E/VlAEzRrsLEb2+dv8yp3bo4scof3l9nR4lrld+Iy5NyVqgVYUJnDAmunkhPMisRI32Qc4iRiz425d8vM++2fg==", "dev": true, - "requires": { + "license": "MIT", + "dependencies": { "@babel/plugin-syntax-async-generators": "^7.8.4", "@babel/plugin-syntax-bigint": "^7.8.3", - "@babel/plugin-syntax-class-properties": "^7.8.3", - "@babel/plugin-syntax-import-meta": "^7.8.3", + "@babel/plugin-syntax-class-properties": "^7.12.13", + "@babel/plugin-syntax-class-static-block": "^7.14.5", + "@babel/plugin-syntax-import-attributes": "^7.24.7", + "@babel/plugin-syntax-import-meta": "^7.10.4", "@babel/plugin-syntax-json-strings": "^7.8.3", - "@babel/plugin-syntax-logical-assignment-operators": "^7.8.3", + "@babel/plugin-syntax-logical-assignment-operators": "^7.10.4", "@babel/plugin-syntax-nullish-coalescing-operator": "^7.8.3", - "@babel/plugin-syntax-numeric-separator": "^7.8.3", + "@babel/plugin-syntax-numeric-separator": "^7.10.4", "@babel/plugin-syntax-object-rest-spread": "^7.8.3", "@babel/plugin-syntax-optional-catch-binding": "^7.8.3", "@babel/plugin-syntax-optional-chaining": "^7.8.3", - "@babel/plugin-syntax-top-level-await": "^7.8.3" + "@babel/plugin-syntax-private-property-in-object": "^7.14.5", + "@babel/plugin-syntax-top-level-await": "^7.14.5" + }, + "peerDependencies": { + "@babel/core": "^7.0.0 || ^8.0.0-0" } }, - "babel-preset-jest": { - "version": "27.2.0", - "resolved": "https://registry.npmjs.org/babel-preset-jest/-/babel-preset-jest-27.2.0.tgz", - "integrity": "sha512-z7MgQ3peBwN5L5aCqBKnF6iqdlvZvFUQynEhu0J+X9nHLU72jO3iY331lcYrg+AssJ8q7xsv5/3AICzVmJ/wvg==", + "node_modules/babel-preset-jest": { + "version": "30.2.0", + "resolved": "https://registry.npmjs.org/babel-preset-jest/-/babel-preset-jest-30.2.0.tgz", + "integrity": "sha512-US4Z3NOieAQumwFnYdUWKvUKh8+YSnS/gB3t6YBiz0bskpu7Pine8pPCheNxlPEW4wnUkma2a94YuW2q3guvCQ==", "dev": true, - "requires": { - "babel-plugin-jest-hoist": "^27.2.0", - "babel-preset-current-node-syntax": "^1.0.0" + "license": "MIT", + "dependencies": { + "babel-plugin-jest-hoist": "30.2.0", + "babel-preset-current-node-syntax": "^1.2.0" + }, + "engines": { + "node": "^18.14.0 || ^20.0.0 || ^22.0.0 || >=24.0.0" + }, + "peerDependencies": { + "@babel/core": "^7.11.0 || ^8.0.0-beta.1" } }, - "balanced-match": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.0.tgz", - "integrity": "sha1-ibTRmasr7kneFk6gK4nORi1xt2c=", - "dev": true + "node_modules/balanced-match": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz", + "integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==", + "dev": true, + "license": "MIT" }, - "brace-expansion": { - "version": "1.1.11", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", - "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", + "node_modules/baseline-browser-mapping": { + "version": "2.9.19", + "resolved": "https://registry.npmjs.org/baseline-browser-mapping/-/baseline-browser-mapping-2.9.19.tgz", + "integrity": "sha512-ipDqC8FrAl/76p2SSWKSI+H9tFwm7vYqXQrItCuiVPt26Km0jS+NzSsBWAaBusvSbQcfJG+JitdMm+wZAgTYqg==", "dev": true, - "requires": { - "balanced-match": "^1.0.0", - "concat-map": "0.0.1" + "license": "Apache-2.0", + "bin": { + "baseline-browser-mapping": "dist/cli.js" } }, - "braces": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.2.tgz", - "integrity": "sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==", + "node_modules/brace-expansion": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.2.tgz", + "integrity": "sha512-Jt0vHyM+jmUBqojB7E1NIYadt0vI0Qxjxd2TErW94wDz+E2LAm5vKMXXwg6ZZBTHPuUlDgQHKXvjGBdfcF1ZDQ==", "dev": true, - "requires": { - "fill-range": "^7.0.1" + "license": "MIT", + "dependencies": { + "balanced-match": "^1.0.0" } }, - "browser-process-hrtime": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/browser-process-hrtime/-/browser-process-hrtime-1.0.0.tgz", - "integrity": "sha512-9o5UecI3GhkpM6DrXr69PblIuWxPKk9Y0jHBRhdocZ2y7YECBFCsHm79Pr3OyR2AvjhDkabFJaDJMYRazHgsow==", - "dev": true - }, - "browserslist": { - "version": "4.17.2", - "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.17.2.tgz", - "integrity": "sha512-jSDZyqJmkKMEMi7SZAgX5UltFdR5NAO43vY0AwTpu4X3sGH7GLLQ83KiUomgrnvZRCeW0yPPnKqnxPqQOER9zQ==", - "dev": true, - "requires": { - "caniuse-lite": "^1.0.30001261", - "electron-to-chromium": "^1.3.854", - "escalade": "^3.1.1", - "nanocolors": "^0.2.12", - "node-releases": "^1.1.76" + "node_modules/braces": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.3.tgz", + "integrity": "sha512-yQbXgO/OSZVD2IsiLlro+7Hf6Q18EJrKSEsdoMzKePKXct3gvD8oLcOQdIzGupr5Fj+EDe8gO/lxc1BzfMpxvA==", + "dev": true, + "license": "MIT", + "dependencies": { + "fill-range": "^7.1.1" + }, + "engines": { + "node": ">=8" } }, - "bs-logger": { + "node_modules/browserslist": { + "version": "4.28.1", + "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.28.1.tgz", + "integrity": "sha512-ZC5Bd0LgJXgwGqUknZY/vkUQ04r8NXnJZ3yYi4vDmSiZmC/pdSN0NbNRPxZpbtO4uAfDUAFffO8IZoM3Gj8IkA==", + "dev": true, + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/browserslist" + }, + { + "type": "tidelift", + "url": "https://tidelift.com/funding/github/npm/browserslist" + }, + { + "type": "github", + "url": "https://github.com/sponsors/ai" + } + ], + "license": "MIT", + "peer": true, + "dependencies": { + "baseline-browser-mapping": "^2.9.0", + "caniuse-lite": "^1.0.30001759", + "electron-to-chromium": "^1.5.263", + "node-releases": "^2.0.27", + "update-browserslist-db": "^1.2.0" + }, + "bin": { + "browserslist": "cli.js" + }, + "engines": { + "node": "^6 || ^7 || ^8 || ^9 || ^10 || ^11 || ^12 || >=13.7" + } + }, + "node_modules/bs-logger": { "version": "0.2.6", "resolved": "https://registry.npmjs.org/bs-logger/-/bs-logger-0.2.6.tgz", "integrity": "sha512-pd8DCoxmbgc7hyPKOvxtqNcjYoOsABPQdcCUjGp3d42VR2CX1ORhk2A87oqqu5R1kk+76nsxZupkmyd+MVtCog==", "dev": true, - "requires": { + "license": "MIT", + "dependencies": { "fast-json-stable-stringify": "2.x" + }, + "engines": { + "node": ">= 6" } }, - "bser": { + "node_modules/bser": { "version": "2.1.1", "resolved": "https://registry.npmjs.org/bser/-/bser-2.1.1.tgz", "integrity": "sha512-gQxTNE/GAfIIrmHLUE3oJyp5FO6HRBfhjnw4/wMmA63ZGDJnWBmgY/lyQBpnDUkGmAhbSe39tx2d/iTOAfglwQ==", "dev": true, - "requires": { + "license": "Apache-2.0", + "dependencies": { "node-int64": "^0.4.0" } }, - "buffer-from": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/buffer-from/-/buffer-from-1.1.1.tgz", - "integrity": "sha512-MQcXEUbCKtEo7bhqEs6560Hyd4XaovZlO/k9V3hjVUF/zwW7KBVdSK4gIt/bzwS9MbR5qob+F5jusZsb0YQK2A==", - "dev": true - }, - "builtin-modules": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/builtin-modules/-/builtin-modules-3.1.0.tgz", - "integrity": "sha512-k0KL0aWZuBt2lrxrcASWDfwOLMnodeQjodT/1SxEQAXsHANgo6ZC/VEaSEHCXt7aSTZ4/4H5LKa+tBXmW7Vtvw==", - "dev": true + "node_modules/buffer-from": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/buffer-from/-/buffer-from-1.1.2.tgz", + "integrity": "sha512-E+XQCRwSbaaiChtv6k6Dwgc+bx+Bs6vuKJHHl5kox/BaKbhiXzqQOwK4cO22yElGp2OCmjwVhT3HmxgyPGnJfQ==", + "dev": true, + "license": "MIT" }, - "callsites": { + "node_modules/callsites": { "version": "3.1.0", "resolved": "https://registry.npmjs.org/callsites/-/callsites-3.1.0.tgz", "integrity": "sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==", - "dev": true + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6" + } }, - "camelcase": { + "node_modules/camelcase": { "version": "5.3.1", "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-5.3.1.tgz", "integrity": "sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg==", - "dev": true + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6" + } }, - "caniuse-lite": { - "version": "1.0.30001263", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001263.tgz", - "integrity": "sha512-doiV5dft6yzWO1WwU19kt8Qz8R0/8DgEziz6/9n2FxUasteZNwNNYSmJO3GLBH8lCVE73AB1RPDPAeYbcO5Cvw==", - "dev": true + "node_modules/caniuse-lite": { + "version": "1.0.30001769", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001769.tgz", + "integrity": "sha512-BCfFL1sHijQlBGWBMuJyhZUhzo7wer5sVj9hqekB/7xn0Ypy+pER/edCYQm4exbXj4WiySGp40P8UuTh6w1srg==", + "dev": true, + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/browserslist" + }, + { + "type": "tidelift", + "url": "https://tidelift.com/funding/github/npm/caniuse-lite" + }, + { + "type": "github", + "url": "https://github.com/sponsors/ai" + } + ], + "license": "CC-BY-4.0" }, - "chalk": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.1.tgz", - "integrity": "sha512-diHzdDKxcU+bAsUboHLPEDQiw0qEe0qd7SYUn3HgcFlWgbDcfLGswOHYeGrHKzG9z6UYf01d9VFMfZxPM1xZSg==", + "node_modules/chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", "dev": true, - "requires": { + "license": "MIT", + "dependencies": { "ansi-styles": "^4.1.0", "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" } }, - "char-regex": { + "node_modules/char-regex": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/char-regex/-/char-regex-1.0.2.tgz", "integrity": "sha512-kWWXztvZ5SBQV+eRgKFeh8q5sLuZY2+8WUIzlxWVTg+oGwY14qylx1KbKzHd8P6ZYkAg0xyIDU9JMHhyJMZ1jw==", - "dev": true + "dev": true, + "license": "MIT", + "engines": { + "node": ">=10" + } + }, + "node_modules/ci-info": { + "version": "4.4.0", + "resolved": "https://registry.npmjs.org/ci-info/-/ci-info-4.4.0.tgz", + "integrity": "sha512-77PSwercCZU2Fc4sX94eF8k8Pxte6JAwL4/ICZLFjJLqegs7kCuAsqqj/70NQF6TvDpgFjkubQB2FW2ZZddvQg==", + "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/sibiraj-s" + } + ], + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/cjs-module-lexer": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/cjs-module-lexer/-/cjs-module-lexer-2.2.0.tgz", + "integrity": "sha512-4bHTS2YuzUvtoLjdy+98ykbNB5jS0+07EvFNXerqZQJ89F7DI6ET7OQo/HJuW6K0aVsKA9hj9/RVb2kQVOrPDQ==", + "dev": true, + "license": "MIT" + }, + "node_modules/cliui": { + "version": "8.0.1", + "resolved": "https://registry.npmjs.org/cliui/-/cliui-8.0.1.tgz", + "integrity": "sha512-BSeNnyus75C4//NQ9gQt1/csTXyo/8Sb+afLAkzAptFuMsod9HFokGNudZpi/oQV73hnVK+sR+5PVRMd+Dr7YQ==", + "dev": true, + "license": "ISC", + "dependencies": { + "string-width": "^4.2.0", + "strip-ansi": "^6.0.1", + "wrap-ansi": "^7.0.0" + }, + "engines": { + "node": ">=12" + } + }, + "node_modules/cliui/node_modules/ansi-regex": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", + "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/cliui/node_modules/emoji-regex": { + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", + "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==", + "dev": true, + "license": "MIT" + }, + "node_modules/cliui/node_modules/string-width": { + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", + "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", + "dev": true, + "license": "MIT", + "dependencies": { + "emoji-regex": "^8.0.0", + "is-fullwidth-code-point": "^3.0.0", + "strip-ansi": "^6.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/cliui/node_modules/strip-ansi": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", + "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", + "dev": true, + "license": "MIT", + "dependencies": { + "ansi-regex": "^5.0.1" + }, + "engines": { + "node": ">=8" + } }, - "ci-info": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/ci-info/-/ci-info-3.2.0.tgz", - "integrity": "sha512-dVqRX7fLUm8J6FgHJ418XuIgDLZDkYcDFTeL6TA2gt5WlIZUQrrH6EZrNClwT/H0FateUsZkGIOPRrLbP+PR9A==", - "dev": true - }, - "cjs-module-lexer": { - "version": "1.2.2", - "resolved": "https://registry.npmjs.org/cjs-module-lexer/-/cjs-module-lexer-1.2.2.tgz", - "integrity": "sha512-cOU9usZw8/dXIXKtwa8pM0OTJQuJkxMN6w30csNRUerHfeQ5R6U3kkU/FtJeIf3M202OHfY2U8ccInBG7/xogA==", - "dev": true - }, - "cliui": { - "version": "7.0.4", - "resolved": "https://registry.npmjs.org/cliui/-/cliui-7.0.4.tgz", - "integrity": "sha512-OcRE68cOsVMXp1Yvonl/fzkQOyjLSu/8bhPDfQt0e0/Eb283TKP20Fs2MqoPsr9SwA595rRCA+QMzYc9nBP+JQ==", - "dev": true, - "requires": { - "string-width": "^4.2.0", - "strip-ansi": "^6.0.0", - "wrap-ansi": "^7.0.0" + "node_modules/cliui/node_modules/wrap-ansi": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-7.0.0.tgz", + "integrity": "sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==", + "dev": true, + "license": "MIT", + "dependencies": { + "ansi-styles": "^4.0.0", + "string-width": "^4.1.0", + "strip-ansi": "^6.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/wrap-ansi?sponsor=1" } }, - "co": { + "node_modules/co": { "version": "4.6.0", "resolved": "https://registry.npmjs.org/co/-/co-4.6.0.tgz", - "integrity": "sha1-bqa989hTrlTMuOR7+gvz+QMfsYQ=", - "dev": true + "integrity": "sha512-QVb0dM5HvG+uaxitm8wONl7jltx8dqhfU33DcqtOZcLSVIKSDDLDi7+0LbAKiyI8hD9u42m2YxXSkMGWThaecQ==", + "dev": true, + "license": "MIT", + "engines": { + "iojs": ">= 1.0.0", + "node": ">= 0.12.0" + } }, - "collect-v8-coverage": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/collect-v8-coverage/-/collect-v8-coverage-1.0.1.tgz", - "integrity": "sha512-iBPtljfCNcTKNAto0KEtDfZ3qzjJvqE3aTGZsbhjSBlorqpXJlaWWtPO35D+ZImoC3KWejX64o+yPGxhWSTzfg==", - "dev": true + "node_modules/collect-v8-coverage": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/collect-v8-coverage/-/collect-v8-coverage-1.0.3.tgz", + "integrity": "sha512-1L5aqIkwPfiodaMgQunkF1zRhNqifHBmtbbbxcr6yVxxBnliw4TDOW6NxpO8DJLgJ16OT+Y4ztZqP6p/FtXnAw==", + "dev": true, + "license": "MIT" }, - "color-convert": { + "node_modules/color-convert": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", "dev": true, - "requires": { + "license": "MIT", + "dependencies": { "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" } }, - "color-name": { + "node_modules/color-name": { "version": "1.1.4", "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", - "dev": true - }, - "combined-stream": { - "version": "1.0.8", - "resolved": "https://registry.npmjs.org/combined-stream/-/combined-stream-1.0.8.tgz", - "integrity": "sha512-FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg==", "dev": true, - "requires": { - "delayed-stream": "~1.0.0" - } + "license": "MIT" }, - "commander": { + "node_modules/commander": { "version": "2.20.3", "resolved": "https://registry.npmjs.org/commander/-/commander-2.20.3.tgz", "integrity": "sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ==", - "dev": true + "dev": true, + "license": "MIT" }, - "commondir": { + "node_modules/commondir": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/commondir/-/commondir-1.0.1.tgz", - "integrity": "sha1-3dgA2gxmEnOTzKWVDqloo6rxJTs=", - "dev": true + "integrity": "sha512-W9pAhw0ja1Edb5GVdIF1mjZw/ASI0AlShXM83UUGe2DVr5TdAPEA1OA8m/g8zWp9x6On7gqufY+FatDbC3MDQg==", + "dev": true, + "license": "MIT" }, - "concat-map": { + "node_modules/concat-map": { "version": "0.0.1", "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", - "integrity": "sha1-2Klr13/Wjfd5OnMDajug1UBdR3s=", - "dev": true + "integrity": "sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==", + "dev": true, + "license": "MIT" + }, + "node_modules/convert-source-map": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-2.0.0.tgz", + "integrity": "sha512-Kvp459HrV2FEJ1CAsi1Ku+MY3kasH19TFykTz2xWmMeq6bk2NU3XXvfJ+Q61m0xktWwt+1HSYf3JZsTms3aRJg==", + "dev": true, + "license": "MIT" }, - "convert-source-map": { - "version": "1.8.0", - "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-1.8.0.tgz", - "integrity": "sha512-+OQdjP49zViI/6i7nIJpA8rAl4sV/JdPfU9nZs3VqOwGIgizICvuN2ru6fMd+4llL0tar18UYJXfZ/TWtmhUjA==", + "node_modules/core-js": { + "version": "3.48.0", + "resolved": "https://registry.npmjs.org/core-js/-/core-js-3.48.0.tgz", + "integrity": "sha512-zpEHTy1fjTMZCKLHUZoVeylt9XrzaIN2rbPXEt0k+q7JE5CkCZdo6bNq55bn24a69CH7ErAVLKijxJja4fw+UQ==", "dev": true, - "requires": { - "safe-buffer": "~5.1.1" + "hasInstallScript": true, + "license": "MIT", + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/core-js" } }, - "cross-spawn": { - "version": "7.0.3", - "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.3.tgz", - "integrity": "sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w==", + "node_modules/cross-spawn": { + "version": "7.0.6", + "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.6.tgz", + "integrity": "sha512-uV2QOWP2nWzsy2aMp8aRibhi9dlzF5Hgh5SHaB9OiTGEyDTiJJyx0uy51QXdyWbtAHNua4XJzUKca3OzKUd3vA==", "dev": true, - "requires": { + "license": "MIT", + "dependencies": { "path-key": "^3.1.0", "shebang-command": "^2.0.0", "which": "^2.0.1" + }, + "engines": { + "node": ">= 8" } }, - "cssom": { - "version": "0.4.4", - "resolved": "https://registry.npmjs.org/cssom/-/cssom-0.4.4.tgz", - "integrity": "sha512-p3pvU7r1MyyqbTk+WbNJIgJjG2VmTIaB10rI93LzVPrmDJKkzKYMtxxyAvQXR/NS6otuzveI7+7BBq3SjBS2mw==", - "dev": true - }, - "cssstyle": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/cssstyle/-/cssstyle-2.3.0.tgz", - "integrity": "sha512-AZL67abkUzIuvcHqk7c09cezpGNcxUxU4Ioi/05xHk4DQeTkWmGYftIE6ctU6AEt+Gn4n1lDStOtj7FKycP71A==", + "node_modules/debug": { + "version": "4.4.3", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.4.3.tgz", + "integrity": "sha512-RGwwWnwQvkVfavKVt22FGLw+xYSdzARwm0ru6DhTVA3umU5hZc28V3kO4stgYryrTlLpuvgI9GiijltAjNbcqA==", "dev": true, - "requires": { - "cssom": "~0.3.6" - }, + "license": "MIT", "dependencies": { - "cssom": { - "version": "0.3.8", - "resolved": "https://registry.npmjs.org/cssom/-/cssom-0.3.8.tgz", - "integrity": "sha512-b0tGHbfegbhPJpxpiBPU2sCkigAqtM9O121le6bbOlgyV+NyGyCmVfJ6QW9eRjz8CpNfWEOYBIMIGRYkLwsIYg==", - "dev": true + "ms": "^2.1.3" + }, + "engines": { + "node": ">=6.0" + }, + "peerDependenciesMeta": { + "supports-color": { + "optional": true } } }, - "data-urls": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/data-urls/-/data-urls-2.0.0.tgz", - "integrity": "sha512-X5eWTSXO/BJmpdIKCRuKUgSCgAN0OwliVK3yPKbwIWU1Tdw5BRajxlzMidvh+gwko9AfQ9zIj52pzF91Q3YAvQ==", + "node_modules/dedent": { + "version": "1.7.1", + "resolved": "https://registry.npmjs.org/dedent/-/dedent-1.7.1.tgz", + "integrity": "sha512-9JmrhGZpOlEgOLdQgSm0zxFaYoQon408V1v49aqTWuXENVlnCuY9JBZcXZiCsZQWDjTm5Qf/nIvAy77mXDAjEg==", "dev": true, - "requires": { - "abab": "^2.0.3", - "whatwg-mimetype": "^2.3.0", - "whatwg-url": "^8.0.0" + "license": "MIT", + "peerDependencies": { + "babel-plugin-macros": "^3.1.0" + }, + "peerDependenciesMeta": { + "babel-plugin-macros": { + "optional": true + } } }, - "debug": { - "version": "4.3.2", - "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.2.tgz", - "integrity": "sha512-mOp8wKcvj7XxC78zLgw/ZA+6TSgkoE2C/ienthhRD298T7UNwAg9diBpLRxC0mOezLl4B0xV7M0cCO6P/O0Xhw==", + "node_modules/deepmerge": { + "version": "4.3.1", + "resolved": "https://registry.npmjs.org/deepmerge/-/deepmerge-4.3.1.tgz", + "integrity": "sha512-3sUqbMEc77XqpdNO7FRyRog+eW3ph+GYCbj+rK+uYyRMuwsVy0rMiVtPn+QJlKFvWP/1PYpapqYn0Me2knFn+A==", "dev": true, - "requires": { - "ms": "2.1.2" + "license": "MIT", + "engines": { + "node": ">=0.10.0" } }, - "decimal.js": { - "version": "10.3.1", - "resolved": "https://registry.npmjs.org/decimal.js/-/decimal.js-10.3.1.tgz", - "integrity": "sha512-V0pfhfr8suzyPGOx3nmq4aHqabehUZn6Ch9kyFpV79TGDTWFmHqUqXdabR7QHqxzrYolF4+tVmJhUG4OURg5dQ==", - "dev": true - }, - "decode-uri-component": { - "version": "0.2.0", - "resolved": "https://registry.npmjs.org/decode-uri-component/-/decode-uri-component-0.2.0.tgz", - "integrity": "sha1-6zkTMzRYd1y4TNGh+uBiEGu4dUU=", - "dev": true - }, - "dedent": { - "version": "0.7.0", - "resolved": "https://registry.npmjs.org/dedent/-/dedent-0.7.0.tgz", - "integrity": "sha1-JJXduvbrh0q7Dhvp3yLS5aVEMmw=", - "dev": true - }, - "deep-is": { - "version": "0.1.4", - "resolved": "https://registry.npmjs.org/deep-is/-/deep-is-0.1.4.tgz", - "integrity": "sha512-oIPzksmTg4/MriiaYGO+okXDT7ztn/w3Eptv/+gSIdMdKsJo0u4CfYNFJPy+4SKMuCqGw2wxnA+URMg3t8a/bQ==", - "dev": true - }, - "deepmerge": { - "version": "4.2.2", - "resolved": "https://registry.npmjs.org/deepmerge/-/deepmerge-4.2.2.tgz", - "integrity": "sha512-FJ3UgI4gIl+PHZm53knsuSFpE+nESMr7M4v9QcgB7S63Kj/6WqMiFQJpBBYz1Pt+66bZpP3Q7Lye0Oo9MPKEdg==", - "dev": true - }, - "delayed-stream": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/delayed-stream/-/delayed-stream-1.0.0.tgz", - "integrity": "sha1-3zrhmayt+31ECqrgsp4icrJOxhk=", - "dev": true - }, - "detect-newline": { + "node_modules/detect-newline": { "version": "3.1.0", "resolved": "https://registry.npmjs.org/detect-newline/-/detect-newline-3.1.0.tgz", "integrity": "sha512-TLz+x/vEXm/Y7P7wn1EJFNLxYpUD4TgMosxY6fAVJUnJMbupHBOncxyWUG9OpTaH9EBD7uFI5LfEgmMOc54DsA==", - "dev": true + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + } }, - "diff-sequences": { - "version": "27.0.6", - "resolved": "https://registry.npmjs.org/diff-sequences/-/diff-sequences-27.0.6.tgz", - "integrity": "sha512-ag6wfpBFyNXZ0p8pcuIDS//D8H062ZQJ3fzYxjpmeKjnz8W4pekL3AI8VohmyZmsWW2PWaHgjsmqR6L13101VQ==", - "dev": true + "node_modules/eastasianwidth": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/eastasianwidth/-/eastasianwidth-0.2.0.tgz", + "integrity": "sha512-I88TYZWc9XiYHRQ4/3c5rjjfgkjhLyW2luGIheGERbNQ6OY7yTybanSpDXZa8y7VUP9YmDcYa+eyq4ca7iLqWA==", + "dev": true, + "license": "MIT" }, - "domexception": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/domexception/-/domexception-2.0.1.tgz", - "integrity": "sha512-yxJ2mFy/sibVQlu5qHjOkf9J3K6zgmCxgJ94u2EdvDOV09H+32LtRswEcUsmUWN72pVLOEnTSRaIVVzVQgS0dg==", + "node_modules/electron-to-chromium": { + "version": "1.5.286", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.5.286.tgz", + "integrity": "sha512-9tfDXhJ4RKFNerfjdCcZfufu49vg620741MNs26a9+bhLThdB+plgMeou98CAaHu/WATj2iHOOHTp1hWtABj2A==", + "dev": true, + "license": "ISC" + }, + "node_modules/emittery": { + "version": "0.13.1", + "resolved": "https://registry.npmjs.org/emittery/-/emittery-0.13.1.tgz", + "integrity": "sha512-DeWwawk6r5yR9jFgnDKYt4sLS0LmHJJi3ZOnb5/JdbYwj3nW+FxQnHIjhBKz8YLC7oRNPVM9NQ47I3CVx34eqQ==", "dev": true, - "requires": { - "webidl-conversions": "^5.0.0" + "license": "MIT", + "engines": { + "node": ">=12" }, - "dependencies": { - "webidl-conversions": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-5.0.0.tgz", - "integrity": "sha512-VlZwKPCkYKxQgeSbH5EyngOmRp7Ww7I9rQLERETtf5ofd9pGeswWiOtogpEO850jziPRarreGxn5QIiTqpb2wA==", - "dev": true - } + "funding": { + "url": "https://github.com/sindresorhus/emittery?sponsor=1" } }, - "electron-to-chromium": { - "version": "1.3.857", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.3.857.tgz", - "integrity": "sha512-a5kIr2lajm4bJ5E4D3fp8Y/BRB0Dx2VOcCRE5Gtb679mXIME/OFhWler8Gy2ksrf8gFX+EFCSIGA33FB3gqYpg==", - "dev": true + "node_modules/emoji-regex": { + "version": "9.2.2", + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-9.2.2.tgz", + "integrity": "sha512-L18DaJsXSUk2+42pv8mLs5jJT2hqFkFE4j21wOmgbUqsZ2hL72NsUU785g9RXgo3s0ZNgVl42TiHp3ZtOv/Vyg==", + "dev": true, + "license": "MIT" }, - "emittery": { - "version": "0.8.1", - "resolved": "https://registry.npmjs.org/emittery/-/emittery-0.8.1.tgz", - "integrity": "sha512-uDfvUjVrfGJJhymx/kz6prltenw1u7WrCg1oa94zYY8xxVpLLUu045LAT0dhDZdXG58/EpPL/5kA180fQ/qudg==", - "dev": true + "node_modules/entities": { + "version": "4.5.0", + "resolved": "https://registry.npmjs.org/entities/-/entities-4.5.0.tgz", + "integrity": "sha512-V0hjH4dGPh9Ao5p0MoRY6BVqtwCjhz6vI5LT8AJ55H+4g9/4vbHx1I54fS0XuclLhDHArPQCiMjDxjaL8fPxhw==", + "dev": true, + "license": "BSD-2-Clause", + "engines": { + "node": ">=0.12" + }, + "funding": { + "url": "https://github.com/fb55/entities?sponsor=1" + } }, - "emoji-regex": { - "version": "8.0.0", - "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", - "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==", - "dev": true + "node_modules/error-ex": { + "version": "1.3.4", + "resolved": "https://registry.npmjs.org/error-ex/-/error-ex-1.3.4.tgz", + "integrity": "sha512-sqQamAnR14VgCr1A618A3sGrygcpK+HEbenA/HiEAkkUwcZIIB/tgWqHFxWgOyDh4nB4JCRimh79dR5Ywc9MDQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "is-arrayish": "^0.2.1" + } }, - "escalade": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/escalade/-/escalade-3.1.1.tgz", - "integrity": "sha512-k0er2gUkLf8O0zKJiAhmkTnJlTvINGv7ygDNPbeIsX/TJjGJZHuh9B2UxbsaEkmlEo9MfhrSzmhIlhRlI2GXnw==", - "dev": true + "node_modules/escalade": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/escalade/-/escalade-3.2.0.tgz", + "integrity": "sha512-WUj2qlxaQtO4g6Pq5c29GTcWGDyd8itL8zTlipgECz3JesAiiOKotd8JU6otB3PACgG6xkJUyVhboMS+bje/jA==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6" + } }, - "escape-string-regexp": { + "node_modules/escape-string-regexp": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-2.0.0.tgz", "integrity": "sha512-UpzcLCXolUWcNu5HtVMHYdXJjArjsF9C0aNnquZYY4uW/Vu0miy5YoWvbV345HauVvcAUnpRuhMMcqTcGOY2+w==", - "dev": true - }, - "escodegen": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/escodegen/-/escodegen-2.0.0.tgz", - "integrity": "sha512-mmHKys/C8BFUGI+MAWNcSYoORYLMdPzjrknd2Vc+bUsjN5bXcr8EhrNB+UTqfL1y3I9c4fw2ihgtMPQLBRiQxw==", "dev": true, - "requires": { - "esprima": "^4.0.1", - "estraverse": "^5.2.0", - "esutils": "^2.0.2", - "optionator": "^0.8.1", - "source-map": "~0.6.1" + "license": "MIT", + "engines": { + "node": ">=8" } }, - "esprima": { + "node_modules/esprima": { "version": "4.0.1", "resolved": "https://registry.npmjs.org/esprima/-/esprima-4.0.1.tgz", "integrity": "sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==", - "dev": true - }, - "estraverse": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.2.0.tgz", - "integrity": "sha512-BxbNGGNm0RyRYvUdHpIwv9IWzeM9XClbOxwoATuFdOE7ZE6wHL+HQ5T8hoPM+zHvmKzzsEqhgy0GrQ5X13afiQ==", - "dev": true - }, - "estree-walker": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/estree-walker/-/estree-walker-0.6.1.tgz", - "integrity": "sha512-SqmZANLWS0mnatqbSfRP5g8OXZC12Fgg1IwNtLsyHDzJizORW4khDfjPqJZsemPWBB2uqykUah5YpQ6epsqC/w==", - "dev": true + "dev": true, + "license": "BSD-2-Clause", + "bin": { + "esparse": "bin/esparse.js", + "esvalidate": "bin/esvalidate.js" + }, + "engines": { + "node": ">=4" + } }, - "esutils": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/esutils/-/esutils-2.0.3.tgz", - "integrity": "sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==", - "dev": true + "node_modules/estree-walker": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/estree-walker/-/estree-walker-2.0.2.tgz", + "integrity": "sha512-Rfkk/Mp/DL7JVje3u18FxFujQlTNR2q6QfMSMB7AvCBx91NGj/ba3kCfza0f6dVDbw7YlRf/nDrn7pQrCCyQ/w==", + "dev": true, + "license": "MIT" }, - "execa": { + "node_modules/execa": { "version": "5.1.1", "resolved": "https://registry.npmjs.org/execa/-/execa-5.1.1.tgz", "integrity": "sha512-8uSpZZocAZRBAPIEINJj3Lo9HyGitllczc27Eh5YYojjMFMn8yHMDMaUHE2Jqfq05D/wucwI4JGURyXt1vchyg==", "dev": true, - "requires": { + "license": "MIT", + "dependencies": { "cross-spawn": "^7.0.3", "get-stream": "^6.0.0", "human-signals": "^2.1.0", @@ -5882,2044 +2963,2819 @@ "onetime": "^5.1.2", "signal-exit": "^3.0.3", "strip-final-newline": "^2.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sindresorhus/execa?sponsor=1" } }, - "exit": { - "version": "0.1.2", - "resolved": "https://registry.npmjs.org/exit/-/exit-0.1.2.tgz", - "integrity": "sha1-BjJjj42HfMghB9MKD/8aF8uhzQw=", - "dev": true + "node_modules/execa/node_modules/signal-exit": { + "version": "3.0.7", + "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.7.tgz", + "integrity": "sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ==", + "dev": true, + "license": "ISC" }, - "expect": { - "version": "27.2.4", - "resolved": "https://registry.npmjs.org/expect/-/expect-27.2.4.tgz", - "integrity": "sha512-gOtuonQ8TCnbNNCSw2fhVzRf8EFYDII4nB5NmG4IEV0rbUnW1I5zXvoTntU4iicB/Uh0oZr20NGlOLdJiwsOZA==", + "node_modules/exit-x": { + "version": "0.2.2", + "resolved": "https://registry.npmjs.org/exit-x/-/exit-x-0.2.2.tgz", + "integrity": "sha512-+I6B/IkJc1o/2tiURyz/ivu/O0nKNEArIUB5O7zBrlDVJr22SCLH3xTeEry428LvFhRzIA1g8izguxJ/gbNcVQ==", "dev": true, - "requires": { - "@jest/types": "^27.2.4", - "ansi-styles": "^5.0.0", - "jest-get-type": "^27.0.6", - "jest-matcher-utils": "^27.2.4", - "jest-message-util": "^27.2.4", - "jest-regex-util": "^27.0.6" - }, + "license": "MIT", + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/expect": { + "version": "30.2.0", + "resolved": "https://registry.npmjs.org/expect/-/expect-30.2.0.tgz", + "integrity": "sha512-u/feCi0GPsI+988gU2FLcsHyAHTU0MX1Wg68NhAnN7z/+C5wqG+CY8J53N9ioe8RXgaoz0nBR/TYMf3AycUuPw==", + "dev": true, + "license": "MIT", "dependencies": { - "ansi-styles": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-5.2.0.tgz", - "integrity": "sha512-Cxwpt2SfTzTtXcfOlzGEee8O+c+MmUgGrNiBcXnuWxuFJHe6a5Hz7qwhwe5OgaSYI0IJvkLqWX1ASG+cJOkEiA==", - "dev": true - } + "@jest/expect-utils": "30.2.0", + "@jest/get-type": "30.1.0", + "jest-matcher-utils": "30.2.0", + "jest-message-util": "30.2.0", + "jest-mock": "30.2.0", + "jest-util": "30.2.0" + }, + "engines": { + "node": "^18.14.0 || ^20.0.0 || ^22.0.0 || >=24.0.0" } }, - "fast-json-stable-stringify": { + "node_modules/fast-json-stable-stringify": { "version": "2.1.0", "resolved": "https://registry.npmjs.org/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz", "integrity": "sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==", - "dev": true - }, - "fast-levenshtein": { - "version": "2.0.6", - "resolved": "https://registry.npmjs.org/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz", - "integrity": "sha1-PYpcZog6FqMMqGQ+hR8Zuqd5eRc=", - "dev": true + "dev": true, + "license": "MIT" }, - "fb-watchman": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/fb-watchman/-/fb-watchman-2.0.1.tgz", - "integrity": "sha512-DkPJKQeY6kKwmuMretBhr7G6Vodr7bFwDYTXIkfG1gjvNpaxBTQV3PbXg6bR1c1UP4jPOX0jHUbbHANL9vRjVg==", + "node_modules/fb-watchman": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/fb-watchman/-/fb-watchman-2.0.2.tgz", + "integrity": "sha512-p5161BqbuCaSnB8jIbzQHOlpgsPmK5rJVDfDKO91Axs5NC1uu3HRQm6wt9cd9/+GtQQIO53JdGXXoyDpTAsgYA==", "dev": true, - "requires": { + "license": "Apache-2.0", + "dependencies": { "bser": "2.1.1" } }, - "fill-range": { - "version": "7.0.1", - "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.0.1.tgz", - "integrity": "sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==", + "node_modules/fdir": { + "version": "6.5.0", + "resolved": "https://registry.npmjs.org/fdir/-/fdir-6.5.0.tgz", + "integrity": "sha512-tIbYtZbucOs0BRGqPJkshJUYdL+SDH7dVM8gjy+ERp3WAUjLEFJE+02kanyHtwjWOnwrKYBiwAmM0p4kLJAnXg==", "dev": true, - "requires": { - "to-regex-range": "^5.0.1" + "license": "MIT", + "engines": { + "node": ">=12.0.0" + }, + "peerDependencies": { + "picomatch": "^3 || ^4" + }, + "peerDependenciesMeta": { + "picomatch": { + "optional": true + } } }, - "find-cache-dir": { - "version": "3.3.1", - "resolved": "https://registry.npmjs.org/find-cache-dir/-/find-cache-dir-3.3.1.tgz", - "integrity": "sha512-t2GDMt3oGC/v+BMwzmllWDuJF/xcDtE5j/fCGbqDD7OLuJkj0cfh1YSA5VKPvwMeLFLNDBkwOKZ2X85jGLVftQ==", + "node_modules/fill-range": { + "version": "7.1.1", + "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.1.1.tgz", + "integrity": "sha512-YsGpe3WHLK8ZYi4tWDg2Jy3ebRz2rXowDxnld4bkQB00cc/1Zw9AWnC0i9ztDJitivtQvaI9KaLyKrc+hBW0yg==", "dev": true, - "requires": { - "commondir": "^1.0.1", - "make-dir": "^3.0.2", - "pkg-dir": "^4.1.0" + "license": "MIT", + "dependencies": { + "to-regex-range": "^5.0.1" + }, + "engines": { + "node": ">=8" } }, - "find-up": { + "node_modules/find-up": { "version": "4.1.0", "resolved": "https://registry.npmjs.org/find-up/-/find-up-4.1.0.tgz", "integrity": "sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==", "dev": true, - "requires": { + "license": "MIT", + "dependencies": { "locate-path": "^5.0.0", "path-exists": "^4.0.0" + }, + "engines": { + "node": ">=8" } }, - "form-data": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/form-data/-/form-data-3.0.1.tgz", - "integrity": "sha512-RHkBKtLWUVwd7SqRIvCZMEvAMoGUp0XU+seQiZejj0COz3RI3hWP4sCv3gZWWLjJTd7rGwcsF5eKZGii0r/hbg==", - "dev": true, - "requires": { - "asynckit": "^0.4.0", - "combined-stream": "^1.0.8", - "mime-types": "^2.1.12" - } - }, - "fs-extra": { - "version": "8.1.0", - "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-8.1.0.tgz", - "integrity": "sha512-yhlQgA6mnOJUKOsRUFsgJdQCvkKhcz8tlZG5HBQfReYZy46OwLcY+Zia0mtdHsOo9y/hP+CxMN0TU9QxoOtG4g==", + "node_modules/foreground-child": { + "version": "3.3.1", + "resolved": "https://registry.npmjs.org/foreground-child/-/foreground-child-3.3.1.tgz", + "integrity": "sha512-gIXjKqtFuWEgzFRJA9WCQeSJLZDjgJUOMCMzxtvFq/37KojM1BFGufqsCy0r4qSQmYLsZYMeyRqzIWOMup03sw==", "dev": true, - "requires": { - "graceful-fs": "^4.2.0", - "jsonfile": "^4.0.0", - "universalify": "^0.1.0" + "license": "ISC", + "dependencies": { + "cross-spawn": "^7.0.6", + "signal-exit": "^4.0.1" + }, + "engines": { + "node": ">=14" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" } }, - "fs.realpath": { + "node_modules/fs.realpath": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz", - "integrity": "sha1-FQStJSMVjKpA20onh8sBQRmU6k8=", - "dev": true + "integrity": "sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw==", + "dev": true, + "license": "ISC" }, - "fsevents": { - "version": "2.3.2", - "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.2.tgz", - "integrity": "sha512-xiqMQR4xAeHTuB9uWm+fFRcIOgKBMiOBP+eXiyT7jsgVCq1bkVygt00oASowB7EdtpOHaaPgKt812P9ab+DDKA==", + "node_modules/fsevents": { + "version": "2.3.3", + "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.3.tgz", + "integrity": "sha512-5xoDfX+fL7faATnagmWPpbFtwh/R77WmMMqqHGS65C3vvB0YHrgF+B1YmZ3441tMj5n63k0212XNoJwzlhffQw==", "dev": true, - "optional": true + "hasInstallScript": true, + "license": "MIT", + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": "^8.16.0 || ^10.6.0 || >=11.0.0" + } }, - "function-bind": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.1.tgz", - "integrity": "sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A==", - "dev": true + "node_modules/function-bind": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.2.tgz", + "integrity": "sha512-7XHNxH7qX9xG5mIwxkhumTox/MIRNcOgDrxWsMt2pAr23WHp6MrRlN7FBSFpCpr+oVO0F744iUgR82nJMfG2SA==", + "dev": true, + "license": "MIT", + "funding": { + "url": "https://github.com/sponsors/ljharb" + } }, - "gensync": { + "node_modules/gensync": { "version": "1.0.0-beta.2", "resolved": "https://registry.npmjs.org/gensync/-/gensync-1.0.0-beta.2.tgz", "integrity": "sha512-3hN7NaskYvMDLQY55gnW3NQ+mesEAepTqlg+VEbj7zzqEMBVNhzcGYYeqFo/TlYz6eQiFcp1HcsCZO+nGgS8zg==", - "dev": true + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6.9.0" + } }, - "get-caller-file": { + "node_modules/get-caller-file": { "version": "2.0.5", "resolved": "https://registry.npmjs.org/get-caller-file/-/get-caller-file-2.0.5.tgz", "integrity": "sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==", - "dev": true + "dev": true, + "license": "ISC", + "engines": { + "node": "6.* || 8.* || >= 10.*" + } }, - "get-package-type": { + "node_modules/get-package-type": { "version": "0.1.0", "resolved": "https://registry.npmjs.org/get-package-type/-/get-package-type-0.1.0.tgz", "integrity": "sha512-pjzuKtY64GYfWizNAJ0fr9VqttZkNiK2iS430LtIHzjBEr6bX8Am2zm4sW4Ro5wjWW5cAlRL1qAMTcXbjNAO2Q==", - "dev": true + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8.0.0" + } }, - "get-stream": { + "node_modules/get-stream": { "version": "6.0.1", "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-6.0.1.tgz", "integrity": "sha512-ts6Wi+2j3jQjqi70w5AlN8DFnkSwC+MqmxEzdEALB2qXZYV3X/b1CTfgPLGJNMeAWxdPfU8FO1ms3NUfaHCPYg==", - "dev": true - }, - "glob": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.0.tgz", - "integrity": "sha512-lmLf6gtyrPq8tTjSmrO94wBeQbFR3HbLHbuyD69wuyQkImp2hWqMGB47OX65FBkPffO641IP9jWa1z4ivqG26Q==", "dev": true, - "requires": { - "fs.realpath": "^1.0.0", - "inflight": "^1.0.4", - "inherits": "2", - "minimatch": "^3.0.4", - "once": "^1.3.0", - "path-is-absolute": "^1.0.0" + "license": "MIT", + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "globals": { - "version": "11.12.0", - "resolved": "https://registry.npmjs.org/globals/-/globals-11.12.0.tgz", - "integrity": "sha512-WOBp/EEGUiIsJSp7wcv/y6MO+lV9UoncWqxuFfm8eBwzWNgyfBd6Gz+IeKQ9jCmyhoH99g15M3T+QaVHFjizVA==", - "dev": true + "node_modules/glob": { + "version": "10.5.0", + "resolved": "https://registry.npmjs.org/glob/-/glob-10.5.0.tgz", + "integrity": "sha512-DfXN8DfhJ7NH3Oe7cFmu3NCu1wKbkReJ8TorzSAFbSKrlNaQSKfIzqYqVY8zlbs2NLBbWpRiU52GX2PbaBVNkg==", + "deprecated": "Old versions of glob are not supported, and contain widely publicized security vulnerabilities, which have been fixed in the current version. Please update. Support for old versions may be purchased (at exorbitant rates) by contacting i@izs.me", + "dev": true, + "license": "ISC", + "dependencies": { + "foreground-child": "^3.1.0", + "jackspeak": "^3.1.2", + "minimatch": "^9.0.4", + "minipass": "^7.1.2", + "package-json-from-dist": "^1.0.0", + "path-scurry": "^1.11.1" + }, + "bin": { + "glob": "dist/esm/bin.mjs" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } }, - "graceful-fs": { - "version": "4.2.4", - "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.4.tgz", - "integrity": "sha512-WjKPNJF79dtJAVniUlGGWHYGz2jWxT6VhN/4m1NdkbZ2nOsEF+cI1Edgql5zCRhs/VsQYRvrXctxktVXZUkixw==", - "dev": true + "node_modules/graceful-fs": { + "version": "4.2.11", + "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.11.tgz", + "integrity": "sha512-RbJ5/jmFcNNCcDV5o9eTnBLJ/HszWV0P73bc+Ff4nS/rJj+YaS6IGyiOL0VoBYX+l1Wrl3k63h/KrH+nhJ0XvQ==", + "dev": true, + "license": "ISC" }, - "has": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/has/-/has-1.0.3.tgz", - "integrity": "sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw==", + "node_modules/handlebars": { + "version": "4.7.8", + "resolved": "https://registry.npmjs.org/handlebars/-/handlebars-4.7.8.tgz", + "integrity": "sha512-vafaFqs8MZkRrSX7sFVUdo3ap/eNiLnb4IakshzvP56X5Nr1iGKAIqdX6tMlm6HcNRIkr6AxO5jFEoJzzpT8aQ==", "dev": true, - "requires": { - "function-bind": "^1.1.1" + "license": "MIT", + "dependencies": { + "minimist": "^1.2.5", + "neo-async": "^2.6.2", + "source-map": "^0.6.1", + "wordwrap": "^1.0.0" + }, + "bin": { + "handlebars": "bin/handlebars" + }, + "engines": { + "node": ">=0.4.7" + }, + "optionalDependencies": { + "uglify-js": "^3.1.4" } }, - "has-flag": { + "node_modules/has-flag": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", - "dev": true - }, - "html-encoding-sniffer": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/html-encoding-sniffer/-/html-encoding-sniffer-2.0.1.tgz", - "integrity": "sha512-D5JbOMBIR/TVZkubHT+OyT2705QvogUW4IBn6nHd756OwieSF9aDYFj4dv6HHEVGYbHaLETa3WggZYWWMyy3ZQ==", "dev": true, - "requires": { - "whatwg-encoding": "^1.0.5" + "license": "MIT", + "engines": { + "node": ">=8" } }, - "html-escaper": { + "node_modules/hasown": { "version": "2.0.2", - "resolved": "https://registry.npmjs.org/html-escaper/-/html-escaper-2.0.2.tgz", - "integrity": "sha512-H2iMtd0I4Mt5eYiapRdIDjp+XzelXQ0tFE4JS7YFwFevXXMmOp9myNrUvCg0D6ws8iqkRPBfKHgbwig1SmlLfg==", - "dev": true - }, - "http-proxy-agent": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/http-proxy-agent/-/http-proxy-agent-4.0.1.tgz", - "integrity": "sha512-k0zdNgqWTGA6aeIRVpvfVob4fL52dTfaehylg0Y4UvSySvOq/Y+BOyPrgpUrA7HylqvU8vIZGsRuXmspskV0Tg==", + "resolved": "https://registry.npmjs.org/hasown/-/hasown-2.0.2.tgz", + "integrity": "sha512-0hJU9SCPvmMzIBdZFqNPXWa6dqh7WdH0cII9y+CyS8rG3nL48Bclra9HmKhVVUHyPWNH5Y7xDwAB7bfgSjkUMQ==", "dev": true, - "requires": { - "@tootallnate/once": "1", - "agent-base": "6", - "debug": "4" + "license": "MIT", + "dependencies": { + "function-bind": "^1.1.2" + }, + "engines": { + "node": ">= 0.4" } }, - "https-proxy-agent": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/https-proxy-agent/-/https-proxy-agent-5.0.0.tgz", - "integrity": "sha512-EkYm5BcKUGiduxzSt3Eppko+PiNWNEpa4ySk9vTC6wDsQJW9rHSa+UhGNJoRYp7bz6Ht1eaRIa6QaJqO5rCFbA==", + "node_modules/html-escaper": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/html-escaper/-/html-escaper-2.0.2.tgz", + "integrity": "sha512-H2iMtd0I4Mt5eYiapRdIDjp+XzelXQ0tFE4JS7YFwFevXXMmOp9myNrUvCg0D6ws8iqkRPBfKHgbwig1SmlLfg==", "dev": true, - "requires": { - "agent-base": "6", - "debug": "4" - } + "license": "MIT" }, - "human-signals": { + "node_modules/human-signals": { "version": "2.1.0", "resolved": "https://registry.npmjs.org/human-signals/-/human-signals-2.1.0.tgz", "integrity": "sha512-B4FFZ6q/T2jhhksgkbEW3HBvWIfDW85snkQgawt07S7J5QXTk6BkNV+0yAeZrM5QpMAdYlocGoljn0sJ/WQkFw==", - "dev": true - }, - "iconv-lite": { - "version": "0.4.24", - "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.24.tgz", - "integrity": "sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA==", "dev": true, - "requires": { - "safer-buffer": ">= 2.1.2 < 3" + "license": "Apache-2.0", + "engines": { + "node": ">=10.17.0" } }, - "import-local": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/import-local/-/import-local-3.0.2.tgz", - "integrity": "sha512-vjL3+w0oulAVZ0hBHnxa/Nm5TAurf9YLQJDhqRZyqb+VKGOB6LU8t9H1Nr5CIo16vh9XfJTOoHwU0B71S557gA==", + "node_modules/import-local": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/import-local/-/import-local-3.2.0.tgz", + "integrity": "sha512-2SPlun1JUPWoM6t3F0dw0FkCF/jWY8kttcY4f599GLTSjh2OCuuhdTkJQsEcZzBqbXZGKMK2OqW1oZsjtf/gQA==", "dev": true, - "requires": { + "license": "MIT", + "dependencies": { "pkg-dir": "^4.2.0", "resolve-cwd": "^3.0.0" + }, + "bin": { + "import-local-fixture": "fixtures/cli.js" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "imurmurhash": { + "node_modules/imurmurhash": { "version": "0.1.4", "resolved": "https://registry.npmjs.org/imurmurhash/-/imurmurhash-0.1.4.tgz", - "integrity": "sha1-khi5srkoojixPcT7a21XbyMUU+o=", - "dev": true + "integrity": "sha512-JmXMZ6wuvDmLiHEml9ykzqO6lwFbof0GG4IkcGaENdCRDDmMVnny7s5HsIgHCbaq0w2MyPhDqkhTUgS2LU2PHA==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.8.19" + } }, - "inflight": { + "node_modules/inflight": { "version": "1.0.6", "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz", - "integrity": "sha1-Sb1jMdfQLQwJvJEKEHW6gWW1bfk=", + "integrity": "sha512-k92I/b08q4wvFscXCLvqfsHCrjrF7yiXsQuIVvVE7N82W3+aqpzuUdBbfhWcy/FZR3/4IgflMgKLOsvPDrGCJA==", + "deprecated": "This module is not supported, and leaks memory. Do not use it. Check out lru-cache if you want a good and tested way to coalesce async requests by a key value, which is much more comprehensive and powerful.", "dev": true, - "requires": { + "license": "ISC", + "dependencies": { "once": "^1.3.0", "wrappy": "1" } }, - "inherits": { + "node_modules/inherits": { "version": "2.0.4", "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz", "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==", - "dev": true + "dev": true, + "license": "ISC" }, - "is-ci": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/is-ci/-/is-ci-3.0.0.tgz", - "integrity": "sha512-kDXyttuLeslKAHYL/K28F2YkM3x5jvFPEw3yXbRptXydjD9rpLEz+C5K5iutY9ZiUu6AP41JdvRQwF4Iqs4ZCQ==", + "node_modules/is-arrayish": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/is-arrayish/-/is-arrayish-0.2.1.tgz", + "integrity": "sha512-zz06S8t0ozoDXMG+ube26zeCTNXcKIPJZJi8hBrF4idCLms4CG9QtK7qBl1boi5ODzFpjswb5JPmHCbMpjaYzg==", "dev": true, - "requires": { - "ci-info": "^3.1.1" - } + "license": "MIT" }, - "is-core-module": { - "version": "2.4.0", - "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.4.0.tgz", - "integrity": "sha512-6A2fkfq1rfeQZjxrZJGerpLCTHRNEBiSgnu0+obeJpEPZRUooHgsizvzv0ZjJwOz3iWIHdJtVWJ/tmPr3D21/A==", + "node_modules/is-core-module": { + "version": "2.16.1", + "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.16.1.tgz", + "integrity": "sha512-UfoeMA6fIJ8wTYFEUjelnaGI67v6+N7qXJEvQuIGa99l4xsCruSYOVSQ0uPANn4dAzm8lkYPaKLrrijLq7x23w==", "dev": true, - "requires": { - "has": "^1.0.3" + "license": "MIT", + "dependencies": { + "hasown": "^2.0.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "is-fullwidth-code-point": { + "node_modules/is-fullwidth-code-point": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", - "dev": true + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + } }, - "is-generator-fn": { + "node_modules/is-generator-fn": { "version": "2.1.0", "resolved": "https://registry.npmjs.org/is-generator-fn/-/is-generator-fn-2.1.0.tgz", "integrity": "sha512-cTIB4yPYL/Grw0EaSzASzg6bBy9gqCofvWN8okThAYIxKJZC+udlRAmGbM0XLeniEJSs8uEgHPGuHSe1XsOLSQ==", - "dev": true + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6" + } }, - "is-module": { + "node_modules/is-module": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/is-module/-/is-module-1.0.0.tgz", - "integrity": "sha1-Mlj7afeMFNW4FdZkM2tM/7ZEFZE=", - "dev": true + "integrity": "sha512-51ypPSPCoTEIN9dy5Oy+h4pShgJmPCygKfyRCISBI+JoWT/2oJvK8QPxmwv7b/p239jXrm9M1mlQbyKJ5A152g==", + "dev": true, + "license": "MIT" }, - "is-number": { + "node_modules/is-number": { "version": "7.0.0", "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz", "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==", - "dev": true - }, - "is-potential-custom-element-name": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/is-potential-custom-element-name/-/is-potential-custom-element-name-1.0.1.tgz", - "integrity": "sha512-bCYeRA2rVibKZd+s2625gGnGF/t7DSqDs4dP7CrLA1m7jKWz6pps0LpYLJN8Q64HtmPKJ1hrN3nzPNKFEKOUiQ==", - "dev": true + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.12.0" + } }, - "is-reference": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/is-reference/-/is-reference-1.1.4.tgz", - "integrity": "sha512-uJA/CDPO3Tao3GTrxYn6AwkM4nUPJiGGYu5+cB8qbC7WGFlrKZbiRo7SFKxUAEpFUfiHofWCXBUNhvYJMh+6zw==", + "node_modules/is-reference": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/is-reference/-/is-reference-1.2.1.tgz", + "integrity": "sha512-U82MsXXiFIrjCK4otLT+o2NA2Cd2g5MLoOVXUZjIOhLurrRxpEXzI8O0KZHr3IjLvlAH1kTPYSuqer5T9ZVBKQ==", "dev": true, - "requires": { - "@types/estree": "0.0.39" + "license": "MIT", + "dependencies": { + "@types/estree": "*" } }, - "is-stream": { + "node_modules/is-stream": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-2.0.1.tgz", "integrity": "sha512-hFoiJiTl63nn+kstHGBtewWSKnQLpyb155KHheA1l39uvtO9nWIop1p3udqPcUd/xbF1VLMO4n7OI6p7RbngDg==", - "dev": true - }, - "is-typedarray": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-typedarray/-/is-typedarray-1.0.0.tgz", - "integrity": "sha1-5HnICFjfDBsR3dppQPlgEfzaSpo=", - "dev": true + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } }, - "isexe": { + "node_modules/isexe": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz", - "integrity": "sha1-6PvzdNxVb/iUehDcsFctYz8s+hA=", - "dev": true + "integrity": "sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==", + "dev": true, + "license": "ISC" }, - "istanbul-lib-coverage": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/istanbul-lib-coverage/-/istanbul-lib-coverage-3.0.1.tgz", - "integrity": "sha512-GvCYYTxaCPqwMjobtVcVKvSHtAGe48MNhGjpK8LtVF8K0ISX7hCKl85LgtuaSneWVyQmaGcW3iXVV3GaZSLpmQ==", - "dev": true + "node_modules/istanbul-lib-coverage": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/istanbul-lib-coverage/-/istanbul-lib-coverage-3.2.2.tgz", + "integrity": "sha512-O8dpsF+r0WV/8MNRKfnmrtCWhuKjxrq2w+jpzBL5UZKTi2LeVWnWOmWRxFlesJONmc+wLAGvKQZEOanko0LFTg==", + "dev": true, + "license": "BSD-3-Clause", + "engines": { + "node": ">=8" + } }, - "istanbul-lib-instrument": { - "version": "4.0.3", - "resolved": "https://registry.npmjs.org/istanbul-lib-instrument/-/istanbul-lib-instrument-4.0.3.tgz", - "integrity": "sha512-BXgQl9kf4WTCPCCpmFGoJkz/+uhvm7h7PFKUYxh7qarQd3ER33vHG//qaE8eN25l07YqZPpHXU9I09l/RD5aGQ==", + "node_modules/istanbul-lib-instrument": { + "version": "6.0.3", + "resolved": "https://registry.npmjs.org/istanbul-lib-instrument/-/istanbul-lib-instrument-6.0.3.tgz", + "integrity": "sha512-Vtgk7L/R2JHyyGW07spoFlB8/lpjiOLTjMdms6AFMraYt3BaJauod/NGrfnVG/y4Ix1JEuMRPDPEj2ua+zz1/Q==", "dev": true, - "requires": { - "@babel/core": "^7.7.5", - "@istanbuljs/schema": "^0.1.2", - "istanbul-lib-coverage": "^3.0.0", - "semver": "^6.3.0" + "license": "BSD-3-Clause", + "dependencies": { + "@babel/core": "^7.23.9", + "@babel/parser": "^7.23.9", + "@istanbuljs/schema": "^0.1.3", + "istanbul-lib-coverage": "^3.2.0", + "semver": "^7.5.4" + }, + "engines": { + "node": ">=10" } }, - "istanbul-lib-report": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/istanbul-lib-report/-/istanbul-lib-report-3.0.0.tgz", - "integrity": "sha512-wcdi+uAKzfiGT2abPpKZ0hSU1rGQjUQnLvtY5MpQ7QCTahD3VODhcu4wcfY1YtkGaDD5yuydOLINXsfbus9ROw==", + "node_modules/istanbul-lib-instrument/node_modules/semver": { + "version": "7.7.4", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.7.4.tgz", + "integrity": "sha512-vFKC2IEtQnVhpT78h1Yp8wzwrf8CM+MzKMHGJZfBtzhZNycRFnXsHk6E5TxIkkMsgNS7mdX3AGB7x2QM2di4lA==", + "dev": true, + "license": "ISC", + "bin": { + "semver": "bin/semver.js" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/istanbul-lib-report": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/istanbul-lib-report/-/istanbul-lib-report-3.0.1.tgz", + "integrity": "sha512-GCfE1mtsHGOELCU8e/Z7YWzpmybrx/+dSTfLrvY8qRmaY6zXTKWn6WQIjaAFw069icm6GVMNkgu0NzI4iPZUNw==", "dev": true, - "requires": { + "license": "BSD-3-Clause", + "dependencies": { "istanbul-lib-coverage": "^3.0.0", - "make-dir": "^3.0.0", + "make-dir": "^4.0.0", "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/istanbul-lib-source-maps": { + "version": "5.0.6", + "resolved": "https://registry.npmjs.org/istanbul-lib-source-maps/-/istanbul-lib-source-maps-5.0.6.tgz", + "integrity": "sha512-yg2d+Em4KizZC5niWhQaIomgf5WlL4vOOjZ5xGCmF8SnPE/mDWWXgvRExdcpCgh9lLRRa1/fSYp2ymmbJ1pI+A==", + "dev": true, + "license": "BSD-3-Clause", + "dependencies": { + "@jridgewell/trace-mapping": "^0.3.23", + "debug": "^4.1.1", + "istanbul-lib-coverage": "^3.0.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/istanbul-reports": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/istanbul-reports/-/istanbul-reports-3.2.0.tgz", + "integrity": "sha512-HGYWWS/ehqTV3xN10i23tkPkpH46MLCIMFNCaaKNavAXTF1RkqxawEPtnjnGZ6XKSInBKkiOA5BKS+aZiY3AvA==", + "dev": true, + "license": "BSD-3-Clause", + "dependencies": { + "html-escaper": "^2.0.0", + "istanbul-lib-report": "^3.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/jackspeak": { + "version": "3.4.3", + "resolved": "https://registry.npmjs.org/jackspeak/-/jackspeak-3.4.3.tgz", + "integrity": "sha512-OGlZQpz2yfahA/Rd1Y8Cd9SIEsqvXkLVoSw/cgwhnhFMDbsQFeZYoJJ7bIZBS9BcamUW96asq/npPWugM+RQBw==", + "dev": true, + "license": "BlueOak-1.0.0", + "dependencies": { + "@isaacs/cliui": "^8.0.2" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + }, + "optionalDependencies": { + "@pkgjs/parseargs": "^0.11.0" + } + }, + "node_modules/jest": { + "version": "30.2.0", + "resolved": "https://registry.npmjs.org/jest/-/jest-30.2.0.tgz", + "integrity": "sha512-F26gjC0yWN8uAA5m5Ss8ZQf5nDHWGlN/xWZIh8S5SRbsEKBovwZhxGd6LJlbZYxBgCYOtreSUyb8hpXyGC5O4A==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "@jest/core": "30.2.0", + "@jest/types": "30.2.0", + "import-local": "^3.2.0", + "jest-cli": "30.2.0" + }, + "bin": { + "jest": "bin/jest.js" + }, + "engines": { + "node": "^18.14.0 || ^20.0.0 || ^22.0.0 || >=24.0.0" + }, + "peerDependencies": { + "node-notifier": "^8.0.1 || ^9.0.0 || ^10.0.0" + }, + "peerDependenciesMeta": { + "node-notifier": { + "optional": true + } + } + }, + "node_modules/jest-changed-files": { + "version": "30.2.0", + "resolved": "https://registry.npmjs.org/jest-changed-files/-/jest-changed-files-30.2.0.tgz", + "integrity": "sha512-L8lR1ChrRnSdfeOvTrwZMlnWV8G/LLjQ0nG9MBclwWZidA2N5FviRki0Bvh20WRMOX31/JYvzdqTJrk5oBdydQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "execa": "^5.1.1", + "jest-util": "30.2.0", + "p-limit": "^3.1.0" + }, + "engines": { + "node": "^18.14.0 || ^20.0.0 || ^22.0.0 || >=24.0.0" + } + }, + "node_modules/jest-circus": { + "version": "30.2.0", + "resolved": "https://registry.npmjs.org/jest-circus/-/jest-circus-30.2.0.tgz", + "integrity": "sha512-Fh0096NC3ZkFx05EP2OXCxJAREVxj1BcW/i6EWqqymcgYKWjyyDpral3fMxVcHXg6oZM7iULer9wGRFvfpl+Tg==", + "dev": true, + "license": "MIT", + "dependencies": { + "@jest/environment": "30.2.0", + "@jest/expect": "30.2.0", + "@jest/test-result": "30.2.0", + "@jest/types": "30.2.0", + "@types/node": "*", + "chalk": "^4.1.2", + "co": "^4.6.0", + "dedent": "^1.6.0", + "is-generator-fn": "^2.1.0", + "jest-each": "30.2.0", + "jest-matcher-utils": "30.2.0", + "jest-message-util": "30.2.0", + "jest-runtime": "30.2.0", + "jest-snapshot": "30.2.0", + "jest-util": "30.2.0", + "p-limit": "^3.1.0", + "pretty-format": "30.2.0", + "pure-rand": "^7.0.0", + "slash": "^3.0.0", + "stack-utils": "^2.0.6" + }, + "engines": { + "node": "^18.14.0 || ^20.0.0 || ^22.0.0 || >=24.0.0" + } + }, + "node_modules/jest-cli": { + "version": "30.2.0", + "resolved": "https://registry.npmjs.org/jest-cli/-/jest-cli-30.2.0.tgz", + "integrity": "sha512-Os9ukIvADX/A9sLt6Zse3+nmHtHaE6hqOsjQtNiugFTbKRHYIYtZXNGNK9NChseXy7djFPjndX1tL0sCTlfpAA==", + "dev": true, + "license": "MIT", + "dependencies": { + "@jest/core": "30.2.0", + "@jest/test-result": "30.2.0", + "@jest/types": "30.2.0", + "chalk": "^4.1.2", + "exit-x": "^0.2.2", + "import-local": "^3.2.0", + "jest-config": "30.2.0", + "jest-util": "30.2.0", + "jest-validate": "30.2.0", + "yargs": "^17.7.2" + }, + "bin": { + "jest": "bin/jest.js" + }, + "engines": { + "node": "^18.14.0 || ^20.0.0 || ^22.0.0 || >=24.0.0" + }, + "peerDependencies": { + "node-notifier": "^8.0.1 || ^9.0.0 || ^10.0.0" + }, + "peerDependenciesMeta": { + "node-notifier": { + "optional": true + } + } + }, + "node_modules/jest-config": { + "version": "30.2.0", + "resolved": "https://registry.npmjs.org/jest-config/-/jest-config-30.2.0.tgz", + "integrity": "sha512-g4WkyzFQVWHtu6uqGmQR4CQxz/CH3yDSlhzXMWzNjDx843gYjReZnMRanjRCq5XZFuQrGDxgUaiYWE8BRfVckA==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/core": "^7.27.4", + "@jest/get-type": "30.1.0", + "@jest/pattern": "30.0.1", + "@jest/test-sequencer": "30.2.0", + "@jest/types": "30.2.0", + "babel-jest": "30.2.0", + "chalk": "^4.1.2", + "ci-info": "^4.2.0", + "deepmerge": "^4.3.1", + "glob": "^10.3.10", + "graceful-fs": "^4.2.11", + "jest-circus": "30.2.0", + "jest-docblock": "30.2.0", + "jest-environment-node": "30.2.0", + "jest-regex-util": "30.0.1", + "jest-resolve": "30.2.0", + "jest-runner": "30.2.0", + "jest-util": "30.2.0", + "jest-validate": "30.2.0", + "micromatch": "^4.0.8", + "parse-json": "^5.2.0", + "pretty-format": "30.2.0", + "slash": "^3.0.0", + "strip-json-comments": "^3.1.1" + }, + "engines": { + "node": "^18.14.0 || ^20.0.0 || ^22.0.0 || >=24.0.0" + }, + "peerDependencies": { + "@types/node": "*", + "esbuild-register": ">=3.4.0", + "ts-node": ">=9.0.0" + }, + "peerDependenciesMeta": { + "@types/node": { + "optional": true + }, + "esbuild-register": { + "optional": true + }, + "ts-node": { + "optional": true + } + } + }, + "node_modules/jest-diff": { + "version": "30.2.0", + "resolved": "https://registry.npmjs.org/jest-diff/-/jest-diff-30.2.0.tgz", + "integrity": "sha512-dQHFo3Pt4/NLlG5z4PxZ/3yZTZ1C7s9hveiOj+GCN+uT109NC2QgsoVZsVOAvbJ3RgKkvyLGXZV9+piDpWbm6A==", + "dev": true, + "license": "MIT", + "dependencies": { + "@jest/diff-sequences": "30.0.1", + "@jest/get-type": "30.1.0", + "chalk": "^4.1.2", + "pretty-format": "30.2.0" + }, + "engines": { + "node": "^18.14.0 || ^20.0.0 || ^22.0.0 || >=24.0.0" + } + }, + "node_modules/jest-docblock": { + "version": "30.2.0", + "resolved": "https://registry.npmjs.org/jest-docblock/-/jest-docblock-30.2.0.tgz", + "integrity": "sha512-tR/FFgZKS1CXluOQzZvNH3+0z9jXr3ldGSD8bhyuxvlVUwbeLOGynkunvlTMxchC5urrKndYiwCFC0DLVjpOCA==", + "dev": true, + "license": "MIT", + "dependencies": { + "detect-newline": "^3.1.0" + }, + "engines": { + "node": "^18.14.0 || ^20.0.0 || ^22.0.0 || >=24.0.0" + } + }, + "node_modules/jest-each": { + "version": "30.2.0", + "resolved": "https://registry.npmjs.org/jest-each/-/jest-each-30.2.0.tgz", + "integrity": "sha512-lpWlJlM7bCUf1mfmuqTA8+j2lNURW9eNafOy99knBM01i5CQeY5UH1vZjgT9071nDJac1M4XsbyI44oNOdhlDQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "@jest/get-type": "30.1.0", + "@jest/types": "30.2.0", + "chalk": "^4.1.2", + "jest-util": "30.2.0", + "pretty-format": "30.2.0" + }, + "engines": { + "node": "^18.14.0 || ^20.0.0 || ^22.0.0 || >=24.0.0" } }, - "istanbul-lib-source-maps": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/istanbul-lib-source-maps/-/istanbul-lib-source-maps-4.0.0.tgz", - "integrity": "sha512-c16LpFRkR8vQXyHZ5nLpY35JZtzj1PQY1iZmesUbf1FZHbIupcWfjgOXBY9YHkLEQ6puz1u4Dgj6qmU/DisrZg==", + "node_modules/jest-environment-node": { + "version": "30.2.0", + "resolved": "https://registry.npmjs.org/jest-environment-node/-/jest-environment-node-30.2.0.tgz", + "integrity": "sha512-ElU8v92QJ9UrYsKrxDIKCxu6PfNj4Hdcktcn0JX12zqNdqWHB0N+hwOnnBBXvjLd2vApZtuLUGs1QSY+MsXoNA==", "dev": true, - "requires": { - "debug": "^4.1.1", - "istanbul-lib-coverage": "^3.0.0", - "source-map": "^0.6.1" + "license": "MIT", + "dependencies": { + "@jest/environment": "30.2.0", + "@jest/fake-timers": "30.2.0", + "@jest/types": "30.2.0", + "@types/node": "*", + "jest-mock": "30.2.0", + "jest-util": "30.2.0", + "jest-validate": "30.2.0" + }, + "engines": { + "node": "^18.14.0 || ^20.0.0 || ^22.0.0 || >=24.0.0" } }, - "istanbul-reports": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/istanbul-reports/-/istanbul-reports-3.0.2.tgz", - "integrity": "sha512-9tZvz7AiR3PEDNGiV9vIouQ/EAcqMXFmkcA1CDFTwOB98OZVDL0PH9glHotf5Ugp6GCOTypfzGWI/OqjWNCRUw==", + "node_modules/jest-haste-map": { + "version": "30.2.0", + "resolved": "https://registry.npmjs.org/jest-haste-map/-/jest-haste-map-30.2.0.tgz", + "integrity": "sha512-sQA/jCb9kNt+neM0anSj6eZhLZUIhQgwDt7cPGjumgLM4rXsfb9kpnlacmvZz3Q5tb80nS+oG/if+NBKrHC+Xw==", "dev": true, - "requires": { - "html-escaper": "^2.0.0", - "istanbul-lib-report": "^3.0.0" + "license": "MIT", + "dependencies": { + "@jest/types": "30.2.0", + "@types/node": "*", + "anymatch": "^3.1.3", + "fb-watchman": "^2.0.2", + "graceful-fs": "^4.2.11", + "jest-regex-util": "30.0.1", + "jest-util": "30.2.0", + "jest-worker": "30.2.0", + "micromatch": "^4.0.8", + "walker": "^1.0.8" + }, + "engines": { + "node": "^18.14.0 || ^20.0.0 || ^22.0.0 || >=24.0.0" + }, + "optionalDependencies": { + "fsevents": "^2.3.3" } }, - "jest": { - "version": "27.2.4", - "resolved": "https://registry.npmjs.org/jest/-/jest-27.2.4.tgz", - "integrity": "sha512-h4uqb1EQLfPulWyUFFWv9e9Nn8sCqsJ/j3wk/KCY0p4s4s0ICCfP3iMf6hRf5hEhsDyvyrCgKiZXma63gMz16A==", + "node_modules/jest-leak-detector": { + "version": "30.2.0", + "resolved": "https://registry.npmjs.org/jest-leak-detector/-/jest-leak-detector-30.2.0.tgz", + "integrity": "sha512-M6jKAjyzjHG0SrQgwhgZGy9hFazcudwCNovY/9HPIicmNSBuockPSedAP9vlPK6ONFJ1zfyH/M2/YYJxOz5cdQ==", "dev": true, - "requires": { - "@jest/core": "^27.2.4", - "import-local": "^3.0.2", - "jest-cli": "^27.2.4" + "license": "MIT", + "dependencies": { + "@jest/get-type": "30.1.0", + "pretty-format": "30.2.0" + }, + "engines": { + "node": "^18.14.0 || ^20.0.0 || ^22.0.0 || >=24.0.0" } }, - "jest-changed-files": { - "version": "27.2.4", - "resolved": "https://registry.npmjs.org/jest-changed-files/-/jest-changed-files-27.2.4.tgz", - "integrity": "sha512-eeO1C1u4ex7pdTroYXezr+rbr957myyVoKGjcY4R1TJi3A+9v+4fu1Iv9J4eLq1bgFyT3O3iRWU9lZsEE7J72Q==", + "node_modules/jest-matcher-utils": { + "version": "30.2.0", + "resolved": "https://registry.npmjs.org/jest-matcher-utils/-/jest-matcher-utils-30.2.0.tgz", + "integrity": "sha512-dQ94Nq4dbzmUWkQ0ANAWS9tBRfqCrn0bV9AMYdOi/MHW726xn7eQmMeRTpX2ViC00bpNaWXq+7o4lIQ3AX13Hg==", "dev": true, - "requires": { - "@jest/types": "^27.2.4", - "execa": "^5.0.0", - "throat": "^6.0.1" + "license": "MIT", + "dependencies": { + "@jest/get-type": "30.1.0", + "chalk": "^4.1.2", + "jest-diff": "30.2.0", + "pretty-format": "30.2.0" + }, + "engines": { + "node": "^18.14.0 || ^20.0.0 || ^22.0.0 || >=24.0.0" } }, - "jest-circus": { - "version": "27.2.4", - "resolved": "https://registry.npmjs.org/jest-circus/-/jest-circus-27.2.4.tgz", - "integrity": "sha512-TtheheTElrGjlsY9VxkzUU1qwIx05ItIusMVKnvNkMt4o/PeegLRcjq3Db2Jz0GGdBalJdbzLZBgeulZAJxJWA==", - "dev": true, - "requires": { - "@jest/environment": "^27.2.4", - "@jest/test-result": "^27.2.4", - "@jest/types": "^27.2.4", - "@types/node": "*", - "chalk": "^4.0.0", - "co": "^4.6.0", - "dedent": "^0.7.0", - "expect": "^27.2.4", - "is-generator-fn": "^2.0.0", - "jest-each": "^27.2.4", - "jest-matcher-utils": "^27.2.4", - "jest-message-util": "^27.2.4", - "jest-runtime": "^27.2.4", - "jest-snapshot": "^27.2.4", - "jest-util": "^27.2.4", - "pretty-format": "^27.2.4", + "node_modules/jest-message-util": { + "version": "30.2.0", + "resolved": "https://registry.npmjs.org/jest-message-util/-/jest-message-util-30.2.0.tgz", + "integrity": "sha512-y4DKFLZ2y6DxTWD4cDe07RglV88ZiNEdlRfGtqahfbIjfsw1nMCPx49Uev4IA/hWn3sDKyAnSPwoYSsAEdcimw==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/code-frame": "^7.27.1", + "@jest/types": "30.2.0", + "@types/stack-utils": "^2.0.3", + "chalk": "^4.1.2", + "graceful-fs": "^4.2.11", + "micromatch": "^4.0.8", + "pretty-format": "30.2.0", "slash": "^3.0.0", - "stack-utils": "^2.0.3", - "throat": "^6.0.1" - } - }, - "jest-cli": { - "version": "27.2.4", - "resolved": "https://registry.npmjs.org/jest-cli/-/jest-cli-27.2.4.tgz", - "integrity": "sha512-4kpQQkg74HYLaXo3nzwtg4PYxSLgL7puz1LXHj5Tu85KmlIpxQFjRkXlx4V47CYFFIDoyl3rHA/cXOxUWyMpNg==", - "dev": true, - "requires": { - "@jest/core": "^27.2.4", - "@jest/test-result": "^27.2.4", - "@jest/types": "^27.2.4", - "chalk": "^4.0.0", - "exit": "^0.1.2", - "graceful-fs": "^4.2.4", - "import-local": "^3.0.2", - "jest-config": "^27.2.4", - "jest-util": "^27.2.4", - "jest-validate": "^27.2.4", - "prompts": "^2.0.1", - "yargs": "^16.2.0" - } - }, - "jest-config": { - "version": "27.2.4", - "resolved": "https://registry.npmjs.org/jest-config/-/jest-config-27.2.4.tgz", - "integrity": "sha512-tWy0UxhdzqiKyp4l5Vq4HxLyD+gH5td+GCF3c22/DJ0bYAOsMo+qi2XtbJI6oYMH5JOJQs9nLW/r34nvFCehjA==", - "dev": true, - "requires": { - "@babel/core": "^7.1.0", - "@jest/test-sequencer": "^27.2.4", - "@jest/types": "^27.2.4", - "babel-jest": "^27.2.4", - "chalk": "^4.0.0", - "deepmerge": "^4.2.2", - "glob": "^7.1.1", - "graceful-fs": "^4.2.4", - "is-ci": "^3.0.0", - "jest-circus": "^27.2.4", - "jest-environment-jsdom": "^27.2.4", - "jest-environment-node": "^27.2.4", - "jest-get-type": "^27.0.6", - "jest-jasmine2": "^27.2.4", - "jest-regex-util": "^27.0.6", - "jest-resolve": "^27.2.4", - "jest-runner": "^27.2.4", - "jest-util": "^27.2.4", - "jest-validate": "^27.2.4", - "micromatch": "^4.0.4", - "pretty-format": "^27.2.4" - } - }, - "jest-diff": { - "version": "27.2.4", - "resolved": "https://registry.npmjs.org/jest-diff/-/jest-diff-27.2.4.tgz", - "integrity": "sha512-bLAVlDSCR3gqUPGv+4nzVpEXGsHh98HjUL7Vb2hVyyuBDoQmja8eJb0imUABsuxBeUVmf47taJSAd9nDrwWKEg==", - "dev": true, - "requires": { - "chalk": "^4.0.0", - "diff-sequences": "^27.0.6", - "jest-get-type": "^27.0.6", - "pretty-format": "^27.2.4" - } - }, - "jest-docblock": { - "version": "27.0.6", - "resolved": "https://registry.npmjs.org/jest-docblock/-/jest-docblock-27.0.6.tgz", - "integrity": "sha512-Fid6dPcjwepTFraz0YxIMCi7dejjJ/KL9FBjPYhBp4Sv1Y9PdhImlKZqYU555BlN4TQKaTc+F2Av1z+anVyGkA==", - "dev": true, - "requires": { - "detect-newline": "^3.0.0" - } - }, - "jest-each": { - "version": "27.2.4", - "resolved": "https://registry.npmjs.org/jest-each/-/jest-each-27.2.4.tgz", - "integrity": "sha512-w9XVc+0EDBUTJS4xBNJ7N2JCcWItFd006lFjz77OarAQcQ10eFDBMrfDv2GBJMKlXe9aq0HrIIF51AXcZrRJyg==", - "dev": true, - "requires": { - "@jest/types": "^27.2.4", - "chalk": "^4.0.0", - "jest-get-type": "^27.0.6", - "jest-util": "^27.2.4", - "pretty-format": "^27.2.4" - } - }, - "jest-environment-jsdom": { - "version": "27.2.4", - "resolved": "https://registry.npmjs.org/jest-environment-jsdom/-/jest-environment-jsdom-27.2.4.tgz", - "integrity": "sha512-X70pTXFSypD7AIzKT1mLnDi5hP9w9mdTRcOGOmoDoBrNyNEg4rYm6d4LQWFLc9ps1VnMuDOkFSG0wjSNYGjkng==", - "dev": true, - "requires": { - "@jest/environment": "^27.2.4", - "@jest/fake-timers": "^27.2.4", - "@jest/types": "^27.2.4", - "@types/node": "*", - "jest-mock": "^27.2.4", - "jest-util": "^27.2.4", - "jsdom": "^16.6.0" + "stack-utils": "^2.0.6" + }, + "engines": { + "node": "^18.14.0 || ^20.0.0 || ^22.0.0 || >=24.0.0" } }, - "jest-environment-node": { - "version": "27.2.4", - "resolved": "https://registry.npmjs.org/jest-environment-node/-/jest-environment-node-27.2.4.tgz", - "integrity": "sha512-ZbVbFSnbzTvhLOIkqh5lcLuGCCFvtG4xTXIRPK99rV2KzQT3kNg16KZwfTnLNlIiWCE8do960eToeDfcqmpSAw==", + "node_modules/jest-mock": { + "version": "30.2.0", + "resolved": "https://registry.npmjs.org/jest-mock/-/jest-mock-30.2.0.tgz", + "integrity": "sha512-JNNNl2rj4b5ICpmAcq+WbLH83XswjPbjH4T7yvGzfAGCPh1rw+xVNbtk+FnRslvt9lkCcdn9i1oAoKUuFsOxRw==", "dev": true, - "requires": { - "@jest/environment": "^27.2.4", - "@jest/fake-timers": "^27.2.4", - "@jest/types": "^27.2.4", + "license": "MIT", + "dependencies": { + "@jest/types": "30.2.0", "@types/node": "*", - "jest-mock": "^27.2.4", - "jest-util": "^27.2.4" + "jest-util": "30.2.0" + }, + "engines": { + "node": "^18.14.0 || ^20.0.0 || ^22.0.0 || >=24.0.0" } }, - "jest-get-type": { - "version": "27.0.6", - "resolved": "https://registry.npmjs.org/jest-get-type/-/jest-get-type-27.0.6.tgz", - "integrity": "sha512-XTkK5exIeUbbveehcSR8w0bhH+c0yloW/Wpl+9vZrjzztCPWrxhHwkIFpZzCt71oRBsgxmuUfxEqOYoZI2macg==", - "dev": true + "node_modules/jest-pnp-resolver": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/jest-pnp-resolver/-/jest-pnp-resolver-1.2.3.tgz", + "integrity": "sha512-+3NpwQEnRoIBtx4fyhblQDPgJI0H1IEIkX7ShLUjPGA7TtUTvI1oiKi3SR4oBR0hQhQR80l4WAe5RrXBwWMA8w==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6" + }, + "peerDependencies": { + "jest-resolve": "*" + }, + "peerDependenciesMeta": { + "jest-resolve": { + "optional": true + } + } }, - "jest-haste-map": { - "version": "27.2.4", - "resolved": "https://registry.npmjs.org/jest-haste-map/-/jest-haste-map-27.2.4.tgz", - "integrity": "sha512-bkJ4bT00T2K+1NZXbRcyKnbJ42I6QBvoDNMTAQQDBhaGNnZreiQKUNqax0e6hLTx7E75pKDeltVu3V1HAdu+YA==", + "node_modules/jest-regex-util": { + "version": "30.0.1", + "resolved": "https://registry.npmjs.org/jest-regex-util/-/jest-regex-util-30.0.1.tgz", + "integrity": "sha512-jHEQgBXAgc+Gh4g0p3bCevgRCVRkB4VB70zhoAE48gxeSr1hfUOsM/C2WoJgVL7Eyg//hudYENbm3Ne+/dRVVA==", "dev": true, - "requires": { - "@jest/types": "^27.2.4", - "@types/graceful-fs": "^4.1.2", - "@types/node": "*", - "anymatch": "^3.0.3", - "fb-watchman": "^2.0.0", - "fsevents": "^2.3.2", - "graceful-fs": "^4.2.4", - "jest-regex-util": "^27.0.6", - "jest-serializer": "^27.0.6", - "jest-util": "^27.2.4", - "jest-worker": "^27.2.4", - "micromatch": "^4.0.4", - "walker": "^1.0.7" - } - }, - "jest-jasmine2": { - "version": "27.2.4", - "resolved": "https://registry.npmjs.org/jest-jasmine2/-/jest-jasmine2-27.2.4.tgz", - "integrity": "sha512-fcffjO/xLWLVnW2ct3No4EksxM5RyPwHDYu9QU+90cC+/eSMLkFAxS55vkqsxexOO5zSsZ3foVpMQcg/amSeIQ==", - "dev": true, - "requires": { - "@babel/traverse": "^7.1.0", - "@jest/environment": "^27.2.4", - "@jest/source-map": "^27.0.6", - "@jest/test-result": "^27.2.4", - "@jest/types": "^27.2.4", - "@types/node": "*", - "chalk": "^4.0.0", - "co": "^4.6.0", - "expect": "^27.2.4", - "is-generator-fn": "^2.0.0", - "jest-each": "^27.2.4", - "jest-matcher-utils": "^27.2.4", - "jest-message-util": "^27.2.4", - "jest-runtime": "^27.2.4", - "jest-snapshot": "^27.2.4", - "jest-util": "^27.2.4", - "pretty-format": "^27.2.4", - "throat": "^6.0.1" - } - }, - "jest-leak-detector": { - "version": "27.2.4", - "resolved": "https://registry.npmjs.org/jest-leak-detector/-/jest-leak-detector-27.2.4.tgz", - "integrity": "sha512-SrcHWbe0EHg/bw2uBjVoHacTo5xosl068x2Q0aWsjr2yYuW2XwqrSkZV4lurUop0jhv1709ymG4or+8E4sH27Q==", - "dev": true, - "requires": { - "jest-get-type": "^27.0.6", - "pretty-format": "^27.2.4" - } - }, - "jest-matcher-utils": { - "version": "27.2.4", - "resolved": "https://registry.npmjs.org/jest-matcher-utils/-/jest-matcher-utils-27.2.4.tgz", - "integrity": "sha512-nQeLfFAIPPkyhkDfifAPfP/U5wm1x0fLtAzqXZSSKckXDNuk2aaOfQiDYv1Mgf5GY6yOsxfUnvNm3dDjXM+BXw==", - "dev": true, - "requires": { - "chalk": "^4.0.0", - "jest-diff": "^27.2.4", - "jest-get-type": "^27.0.6", - "pretty-format": "^27.2.4" - } - }, - "jest-message-util": { - "version": "27.2.4", - "resolved": "https://registry.npmjs.org/jest-message-util/-/jest-message-util-27.2.4.tgz", - "integrity": "sha512-wbKT/BNGnBVB9nzi+IoaLkXt6fbSvqUxx+IYY66YFh96J3goY33BAaNG3uPqaw/Sh/FR9YpXGVDfd5DJdbh4nA==", - "dev": true, - "requires": { - "@babel/code-frame": "^7.12.13", - "@jest/types": "^27.2.4", - "@types/stack-utils": "^2.0.0", - "chalk": "^4.0.0", - "graceful-fs": "^4.2.4", - "micromatch": "^4.0.4", - "pretty-format": "^27.2.4", + "license": "MIT", + "engines": { + "node": "^18.14.0 || ^20.0.0 || ^22.0.0 || >=24.0.0" + } + }, + "node_modules/jest-resolve": { + "version": "30.2.0", + "resolved": "https://registry.npmjs.org/jest-resolve/-/jest-resolve-30.2.0.tgz", + "integrity": "sha512-TCrHSxPlx3tBY3hWNtRQKbtgLhsXa1WmbJEqBlTBrGafd5fiQFByy2GNCEoGR+Tns8d15GaL9cxEzKOO3GEb2A==", + "dev": true, + "license": "MIT", + "dependencies": { + "chalk": "^4.1.2", + "graceful-fs": "^4.2.11", + "jest-haste-map": "30.2.0", + "jest-pnp-resolver": "^1.2.3", + "jest-util": "30.2.0", + "jest-validate": "30.2.0", "slash": "^3.0.0", - "stack-utils": "^2.0.3" + "unrs-resolver": "^1.7.11" + }, + "engines": { + "node": "^18.14.0 || ^20.0.0 || ^22.0.0 || >=24.0.0" } }, - "jest-mock": { - "version": "27.2.4", - "resolved": "https://registry.npmjs.org/jest-mock/-/jest-mock-27.2.4.tgz", - "integrity": "sha512-iVRU905rutaAoUcrt5Tm1JoHHWi24YabqEGXjPJI4tAyA6wZ7mzDi3GrZ+M7ebgWBqUkZE93GAx1STk7yCMIQA==", + "node_modules/jest-resolve-dependencies": { + "version": "30.2.0", + "resolved": "https://registry.npmjs.org/jest-resolve-dependencies/-/jest-resolve-dependencies-30.2.0.tgz", + "integrity": "sha512-xTOIGug/0RmIe3mmCqCT95yO0vj6JURrn1TKWlNbhiAefJRWINNPgwVkrVgt/YaerPzY3iItufd80v3lOrFJ2w==", "dev": true, - "requires": { - "@jest/types": "^27.2.4", - "@types/node": "*" + "license": "MIT", + "dependencies": { + "jest-regex-util": "30.0.1", + "jest-snapshot": "30.2.0" + }, + "engines": { + "node": "^18.14.0 || ^20.0.0 || ^22.0.0 || >=24.0.0" } }, - "jest-pnp-resolver": { - "version": "1.2.2", - "resolved": "https://registry.npmjs.org/jest-pnp-resolver/-/jest-pnp-resolver-1.2.2.tgz", - "integrity": "sha512-olV41bKSMm8BdnuMsewT4jqlZ8+3TCARAXjZGT9jcoSnrfUnRCqnMoF9XEeoWjbzObpqF9dRhHQj0Xb9QdF6/w==", + "node_modules/jest-runner": { + "version": "30.2.0", + "resolved": "https://registry.npmjs.org/jest-runner/-/jest-runner-30.2.0.tgz", + "integrity": "sha512-PqvZ2B2XEyPEbclp+gV6KO/F1FIFSbIwewRgmROCMBo/aZ6J1w8Qypoj2pEOcg3G2HzLlaP6VUtvwCI8dM3oqQ==", "dev": true, - "requires": {} + "license": "MIT", + "dependencies": { + "@jest/console": "30.2.0", + "@jest/environment": "30.2.0", + "@jest/test-result": "30.2.0", + "@jest/transform": "30.2.0", + "@jest/types": "30.2.0", + "@types/node": "*", + "chalk": "^4.1.2", + "emittery": "^0.13.1", + "exit-x": "^0.2.2", + "graceful-fs": "^4.2.11", + "jest-docblock": "30.2.0", + "jest-environment-node": "30.2.0", + "jest-haste-map": "30.2.0", + "jest-leak-detector": "30.2.0", + "jest-message-util": "30.2.0", + "jest-resolve": "30.2.0", + "jest-runtime": "30.2.0", + "jest-util": "30.2.0", + "jest-watcher": "30.2.0", + "jest-worker": "30.2.0", + "p-limit": "^3.1.0", + "source-map-support": "0.5.13" + }, + "engines": { + "node": "^18.14.0 || ^20.0.0 || ^22.0.0 || >=24.0.0" + } }, - "jest-regex-util": { - "version": "27.0.6", - "resolved": "https://registry.npmjs.org/jest-regex-util/-/jest-regex-util-27.0.6.tgz", - "integrity": "sha512-SUhPzBsGa1IKm8hx2F4NfTGGp+r7BXJ4CulsZ1k2kI+mGLG+lxGrs76veN2LF/aUdGosJBzKgXmNCw+BzFqBDQ==", - "dev": true + "node_modules/jest-runtime": { + "version": "30.2.0", + "resolved": "https://registry.npmjs.org/jest-runtime/-/jest-runtime-30.2.0.tgz", + "integrity": "sha512-p1+GVX/PJqTucvsmERPMgCPvQJpFt4hFbM+VN3n8TMo47decMUcJbt+rgzwrEme0MQUA/R+1de2axftTHkKckg==", + "dev": true, + "license": "MIT", + "dependencies": { + "@jest/environment": "30.2.0", + "@jest/fake-timers": "30.2.0", + "@jest/globals": "30.2.0", + "@jest/source-map": "30.0.1", + "@jest/test-result": "30.2.0", + "@jest/transform": "30.2.0", + "@jest/types": "30.2.0", + "@types/node": "*", + "chalk": "^4.1.2", + "cjs-module-lexer": "^2.1.0", + "collect-v8-coverage": "^1.0.2", + "glob": "^10.3.10", + "graceful-fs": "^4.2.11", + "jest-haste-map": "30.2.0", + "jest-message-util": "30.2.0", + "jest-mock": "30.2.0", + "jest-regex-util": "30.0.1", + "jest-resolve": "30.2.0", + "jest-snapshot": "30.2.0", + "jest-util": "30.2.0", + "slash": "^3.0.0", + "strip-bom": "^4.0.0" + }, + "engines": { + "node": "^18.14.0 || ^20.0.0 || ^22.0.0 || >=24.0.0" + } }, - "jest-resolve": { - "version": "27.2.4", - "resolved": "https://registry.npmjs.org/jest-resolve/-/jest-resolve-27.2.4.tgz", - "integrity": "sha512-IsAO/3+3BZnKjI2I4f3835TBK/90dxR7Otgufn3mnrDFTByOSXclDi3G2XJsawGV4/18IMLARJ+V7Wm7t+J89Q==", - "dev": true, - "requires": { - "@jest/types": "^27.2.4", - "chalk": "^4.0.0", - "escalade": "^3.1.1", - "graceful-fs": "^4.2.4", - "jest-haste-map": "^27.2.4", - "jest-pnp-resolver": "^1.2.2", - "jest-util": "^27.2.4", - "jest-validate": "^27.2.4", - "resolve": "^1.20.0", - "slash": "^3.0.0" + "node_modules/jest-snapshot": { + "version": "30.2.0", + "resolved": "https://registry.npmjs.org/jest-snapshot/-/jest-snapshot-30.2.0.tgz", + "integrity": "sha512-5WEtTy2jXPFypadKNpbNkZ72puZCa6UjSr/7djeecHWOu7iYhSXSnHScT8wBz3Rn8Ena5d5RYRcsyKIeqG1IyA==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/core": "^7.27.4", + "@babel/generator": "^7.27.5", + "@babel/plugin-syntax-jsx": "^7.27.1", + "@babel/plugin-syntax-typescript": "^7.27.1", + "@babel/types": "^7.27.3", + "@jest/expect-utils": "30.2.0", + "@jest/get-type": "30.1.0", + "@jest/snapshot-utils": "30.2.0", + "@jest/transform": "30.2.0", + "@jest/types": "30.2.0", + "babel-preset-current-node-syntax": "^1.2.0", + "chalk": "^4.1.2", + "expect": "30.2.0", + "graceful-fs": "^4.2.11", + "jest-diff": "30.2.0", + "jest-matcher-utils": "30.2.0", + "jest-message-util": "30.2.0", + "jest-util": "30.2.0", + "pretty-format": "30.2.0", + "semver": "^7.7.2", + "synckit": "^0.11.8" + }, + "engines": { + "node": "^18.14.0 || ^20.0.0 || ^22.0.0 || >=24.0.0" } }, - "jest-resolve-dependencies": { - "version": "27.2.4", - "resolved": "https://registry.npmjs.org/jest-resolve-dependencies/-/jest-resolve-dependencies-27.2.4.tgz", - "integrity": "sha512-i5s7Uh9B3Q6uwxLpMhNKlgBf6pcemvWaORxsW1zNF/YCY3jd5EftvnGBI+fxVwJ1CBxkVfxqCvm1lpZkbaoGmg==", + "node_modules/jest-snapshot/node_modules/semver": { + "version": "7.7.4", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.7.4.tgz", + "integrity": "sha512-vFKC2IEtQnVhpT78h1Yp8wzwrf8CM+MzKMHGJZfBtzhZNycRFnXsHk6E5TxIkkMsgNS7mdX3AGB7x2QM2di4lA==", "dev": true, - "requires": { - "@jest/types": "^27.2.4", - "jest-regex-util": "^27.0.6", - "jest-snapshot": "^27.2.4" + "license": "ISC", + "bin": { + "semver": "bin/semver.js" + }, + "engines": { + "node": ">=10" } }, - "jest-runner": { - "version": "27.2.4", - "resolved": "https://registry.npmjs.org/jest-runner/-/jest-runner-27.2.4.tgz", - "integrity": "sha512-hIo5PPuNUyVDidZS8EetntuuJbQ+4IHWxmHgYZz9FIDbG2wcZjrP6b52uMDjAEQiHAn8yn8ynNe+TL8UuGFYKg==", + "node_modules/jest-util": { + "version": "30.2.0", + "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-30.2.0.tgz", + "integrity": "sha512-QKNsM0o3Xe6ISQU869e+DhG+4CK/48aHYdJZGlFQVTjnbvgpcKyxpzk29fGiO7i/J8VENZ+d2iGnSsvmuHywlA==", "dev": true, - "requires": { - "@jest/console": "^27.2.4", - "@jest/environment": "^27.2.4", - "@jest/test-result": "^27.2.4", - "@jest/transform": "^27.2.4", - "@jest/types": "^27.2.4", + "license": "MIT", + "dependencies": { + "@jest/types": "30.2.0", "@types/node": "*", - "chalk": "^4.0.0", - "emittery": "^0.8.1", - "exit": "^0.1.2", - "graceful-fs": "^4.2.4", - "jest-docblock": "^27.0.6", - "jest-environment-jsdom": "^27.2.4", - "jest-environment-node": "^27.2.4", - "jest-haste-map": "^27.2.4", - "jest-leak-detector": "^27.2.4", - "jest-message-util": "^27.2.4", - "jest-resolve": "^27.2.4", - "jest-runtime": "^27.2.4", - "jest-util": "^27.2.4", - "jest-worker": "^27.2.4", - "source-map-support": "^0.5.6", - "throat": "^6.0.1" - } - }, - "jest-runtime": { - "version": "27.2.4", - "resolved": "https://registry.npmjs.org/jest-runtime/-/jest-runtime-27.2.4.tgz", - "integrity": "sha512-ICKzzYdjIi70P17MZsLLIgIQFCQmIjMFf+xYww3aUySiUA/QBPUTdUqo5B2eg4HOn9/KkUsV0z6GVgaqAPBJvg==", - "dev": true, - "requires": { - "@jest/console": "^27.2.4", - "@jest/environment": "^27.2.4", - "@jest/fake-timers": "^27.2.4", - "@jest/globals": "^27.2.4", - "@jest/source-map": "^27.0.6", - "@jest/test-result": "^27.2.4", - "@jest/transform": "^27.2.4", - "@jest/types": "^27.2.4", - "@types/yargs": "^16.0.0", - "chalk": "^4.0.0", - "cjs-module-lexer": "^1.0.0", - "collect-v8-coverage": "^1.0.0", - "execa": "^5.0.0", - "exit": "^0.1.2", - "glob": "^7.1.3", - "graceful-fs": "^4.2.4", - "jest-haste-map": "^27.2.4", - "jest-message-util": "^27.2.4", - "jest-mock": "^27.2.4", - "jest-regex-util": "^27.0.6", - "jest-resolve": "^27.2.4", - "jest-snapshot": "^27.2.4", - "jest-util": "^27.2.4", - "jest-validate": "^27.2.4", - "slash": "^3.0.0", - "strip-bom": "^4.0.0", - "yargs": "^16.2.0" + "chalk": "^4.1.2", + "ci-info": "^4.2.0", + "graceful-fs": "^4.2.11", + "picomatch": "^4.0.2" + }, + "engines": { + "node": "^18.14.0 || ^20.0.0 || ^22.0.0 || >=24.0.0" } }, - "jest-serializer": { - "version": "27.0.6", - "resolved": "https://registry.npmjs.org/jest-serializer/-/jest-serializer-27.0.6.tgz", - "integrity": "sha512-PtGdVK9EGC7dsaziskfqaAPib6wTViY3G8E5wz9tLVPhHyiDNTZn/xjZ4khAw+09QkoOVpn7vF5nPSN6dtBexA==", + "node_modules/jest-validate": { + "version": "30.2.0", + "resolved": "https://registry.npmjs.org/jest-validate/-/jest-validate-30.2.0.tgz", + "integrity": "sha512-FBGWi7dP2hpdi8nBoWxSsLvBFewKAg0+uSQwBaof4Y4DPgBabXgpSYC5/lR7VmnIlSpASmCi/ntRWPbv7089Pw==", "dev": true, - "requires": { - "@types/node": "*", - "graceful-fs": "^4.2.4" - } - }, - "jest-snapshot": { - "version": "27.2.4", - "resolved": "https://registry.npmjs.org/jest-snapshot/-/jest-snapshot-27.2.4.tgz", - "integrity": "sha512-5DFxK31rYS8X8C6WXsFx8XxrxW3PGa6+9IrUcZdTLg1aEyXDGIeiBh4jbwvh655bg/9vTETbEj/njfZicHTZZw==", - "dev": true, - "requires": { - "@babel/core": "^7.7.2", - "@babel/generator": "^7.7.2", - "@babel/parser": "^7.7.2", - "@babel/plugin-syntax-typescript": "^7.7.2", - "@babel/traverse": "^7.7.2", - "@babel/types": "^7.0.0", - "@jest/transform": "^27.2.4", - "@jest/types": "^27.2.4", - "@types/babel__traverse": "^7.0.4", - "@types/prettier": "^2.1.5", - "babel-preset-current-node-syntax": "^1.0.0", - "chalk": "^4.0.0", - "expect": "^27.2.4", - "graceful-fs": "^4.2.4", - "jest-diff": "^27.2.4", - "jest-get-type": "^27.0.6", - "jest-haste-map": "^27.2.4", - "jest-matcher-utils": "^27.2.4", - "jest-message-util": "^27.2.4", - "jest-resolve": "^27.2.4", - "jest-util": "^27.2.4", - "natural-compare": "^1.4.0", - "pretty-format": "^27.2.4", - "semver": "^7.3.2" - }, - "dependencies": { - "lru-cache": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", - "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", - "dev": true, - "requires": { - "yallist": "^4.0.0" - } - }, - "semver": { - "version": "7.3.5", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.5.tgz", - "integrity": "sha512-PoeGJYh8HK4BTO/a9Tf6ZG3veo/A7ZVsYrSA6J8ny9nb3B1VrpkuN+z9OE5wfE5p6H4LchYZsegiQgbJD94ZFQ==", - "dev": true, - "requires": { - "lru-cache": "^6.0.0" - } - }, - "yallist": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", - "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", - "dev": true - } + "license": "MIT", + "dependencies": { + "@jest/get-type": "30.1.0", + "@jest/types": "30.2.0", + "camelcase": "^6.3.0", + "chalk": "^4.1.2", + "leven": "^3.1.0", + "pretty-format": "30.2.0" + }, + "engines": { + "node": "^18.14.0 || ^20.0.0 || ^22.0.0 || >=24.0.0" } }, - "jest-util": { - "version": "27.2.4", - "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-27.2.4.tgz", - "integrity": "sha512-mW++4u+fSvAt3YBWm5IpbmRAceUqa2B++JlUZTiuEt2AmNYn0Yw5oay4cP17TGsMINRNPSGiJ2zNnX60g+VbFg==", + "node_modules/jest-validate/node_modules/camelcase": { + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-6.3.0.tgz", + "integrity": "sha512-Gmy6FhYlCY7uOElZUSbxo2UCDH8owEk996gkbrpsgGtrJLM3J7jGxl9Ic7Qwwj4ivOE5AWZWRMecDdF7hqGjFA==", "dev": true, - "requires": { - "@jest/types": "^27.2.4", - "@types/node": "*", - "chalk": "^4.0.0", - "graceful-fs": "^4.2.4", - "is-ci": "^3.0.0", - "picomatch": "^2.2.3" - } - }, - "jest-validate": { - "version": "27.2.4", - "resolved": "https://registry.npmjs.org/jest-validate/-/jest-validate-27.2.4.tgz", - "integrity": "sha512-VMtbxbkd7LHnIH7PChdDtrluCFRJ4b1YV2YJzNwwsASMWftq/HgqiqjvptBOWyWOtevgO3f14wPxkPcLlVBRog==", - "dev": true, - "requires": { - "@jest/types": "^27.2.4", - "camelcase": "^6.2.0", - "chalk": "^4.0.0", - "jest-get-type": "^27.0.6", - "leven": "^3.1.0", - "pretty-format": "^27.2.4" + "license": "MIT", + "engines": { + "node": ">=10" }, - "dependencies": { - "camelcase": { - "version": "6.2.0", - "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-6.2.0.tgz", - "integrity": "sha512-c7wVvbw3f37nuobQNtgsgG9POC9qMbNuMQmTCqZv23b6MIz0fcYpBiOlv9gEN/hdLdnZTDQhg6e9Dq5M1vKvfg==", - "dev": true - } + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "jest-watcher": { - "version": "27.2.4", - "resolved": "https://registry.npmjs.org/jest-watcher/-/jest-watcher-27.2.4.tgz", - "integrity": "sha512-LXC/0+dKxhK7cfF7reflRYlzDIaQE+fL4ynhKhzg8IMILNMuI4xcjXXfUJady7OR4/TZeMg7X8eHx8uan9vqaQ==", + "node_modules/jest-watcher": { + "version": "30.2.0", + "resolved": "https://registry.npmjs.org/jest-watcher/-/jest-watcher-30.2.0.tgz", + "integrity": "sha512-PYxa28dxJ9g777pGm/7PrbnMeA0Jr7osHP9bS7eJy9DuAjMgdGtxgf0uKMyoIsTWAkIbUW5hSDdJ3urmgXBqxg==", "dev": true, - "requires": { - "@jest/test-result": "^27.2.4", - "@jest/types": "^27.2.4", + "license": "MIT", + "dependencies": { + "@jest/test-result": "30.2.0", + "@jest/types": "30.2.0", "@types/node": "*", - "ansi-escapes": "^4.2.1", - "chalk": "^4.0.0", - "jest-util": "^27.2.4", - "string-length": "^4.0.1" + "ansi-escapes": "^4.3.2", + "chalk": "^4.1.2", + "emittery": "^0.13.1", + "jest-util": "30.2.0", + "string-length": "^4.0.2" + }, + "engines": { + "node": "^18.14.0 || ^20.0.0 || ^22.0.0 || >=24.0.0" } }, - "jest-worker": { - "version": "27.2.4", - "resolved": "https://registry.npmjs.org/jest-worker/-/jest-worker-27.2.4.tgz", - "integrity": "sha512-Zq9A2Pw59KkVjBBKD1i3iE2e22oSjXhUKKuAK1HGX8flGwkm6NMozyEYzKd41hXc64dbd/0eWFeEEuxqXyhM+g==", + "node_modules/jest-worker": { + "version": "30.2.0", + "resolved": "https://registry.npmjs.org/jest-worker/-/jest-worker-30.2.0.tgz", + "integrity": "sha512-0Q4Uk8WF7BUwqXHuAjc23vmopWJw5WH7w2tqBoUOZpOjW/ZnR44GXXd1r82RvnmI2GZge3ivrYXk/BE2+VtW2g==", "dev": true, - "requires": { + "license": "MIT", + "dependencies": { "@types/node": "*", + "@ungap/structured-clone": "^1.3.0", + "jest-util": "30.2.0", "merge-stream": "^2.0.0", - "supports-color": "^8.0.0" + "supports-color": "^8.1.1" }, + "engines": { + "node": "^18.14.0 || ^20.0.0 || ^22.0.0 || >=24.0.0" + } + }, + "node_modules/jest-worker/node_modules/supports-color": { + "version": "8.1.1", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-8.1.1.tgz", + "integrity": "sha512-MpUEN2OodtUzxvKQl72cUF7RQ5EiHsGvSsVG0ia9c5RbWGL2CI4C7EpPS8UTBIplnlzZiNuV56w+FuNxy3ty2Q==", + "dev": true, + "license": "MIT", "dependencies": { - "supports-color": { - "version": "8.1.1", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-8.1.1.tgz", - "integrity": "sha512-MpUEN2OodtUzxvKQl72cUF7RQ5EiHsGvSsVG0ia9c5RbWGL2CI4C7EpPS8UTBIplnlzZiNuV56w+FuNxy3ty2Q==", - "dev": true, - "requires": { - "has-flag": "^4.0.0" - } - } + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/supports-color?sponsor=1" } }, - "js-tokens": { + "node_modules/js-tokens": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-4.0.0.tgz", "integrity": "sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==", - "dev": true + "dev": true, + "license": "MIT" }, - "js-yaml": { - "version": "3.14.1", - "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.14.1.tgz", - "integrity": "sha512-okMH7OXXJ7YrN9Ok3/SXrnu4iX9yOk+25nqX4imS2npuvTYDmo/QEZoqwZkYaIDk3jVvBOTOIEgEhaLOynBS9g==", + "node_modules/js-yaml": { + "version": "3.14.2", + "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.14.2.tgz", + "integrity": "sha512-PMSmkqxr106Xa156c2M265Z+FTrPl+oxd/rgOQy2tijQeK5TxQ43psO1ZCwhVOSdnn+RzkzlRz/eY4BgJBYVpg==", "dev": true, - "requires": { + "license": "MIT", + "dependencies": { "argparse": "^1.0.7", "esprima": "^4.0.0" + }, + "bin": { + "js-yaml": "bin/js-yaml.js" } }, - "jsdom": { - "version": "16.7.0", - "resolved": "https://registry.npmjs.org/jsdom/-/jsdom-16.7.0.tgz", - "integrity": "sha512-u9Smc2G1USStM+s/x1ru5Sxrl6mPYCbByG1U/hUmqaVsm4tbNyS7CicOSRyuGQYZhTu0h84qkZZQ/I+dzizSVw==", - "dev": true, - "requires": { - "abab": "^2.0.5", - "acorn": "^8.2.4", - "acorn-globals": "^6.0.0", - "cssom": "^0.4.4", - "cssstyle": "^2.3.0", - "data-urls": "^2.0.0", - "decimal.js": "^10.2.1", - "domexception": "^2.0.1", - "escodegen": "^2.0.0", - "form-data": "^3.0.0", - "html-encoding-sniffer": "^2.0.1", - "http-proxy-agent": "^4.0.1", - "https-proxy-agent": "^5.0.0", - "is-potential-custom-element-name": "^1.0.1", - "nwsapi": "^2.2.0", - "parse5": "6.0.1", - "saxes": "^5.0.1", - "symbol-tree": "^3.2.4", - "tough-cookie": "^4.0.0", - "w3c-hr-time": "^1.0.2", - "w3c-xmlserializer": "^2.0.0", - "webidl-conversions": "^6.1.0", - "whatwg-encoding": "^1.0.5", - "whatwg-mimetype": "^2.3.0", - "whatwg-url": "^8.5.0", - "ws": "^7.4.6", - "xml-name-validator": "^3.0.0" - } - }, - "jsesc": { - "version": "2.5.2", - "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-2.5.2.tgz", - "integrity": "sha512-OYu7XEzjkCQ3C5Ps3QIZsQfNpqoJyZZA99wd9aWd05NCtC5pWOkShK2mkL6HXQR6/Cy2lbNdPlZBpuQHXE63gA==", - "dev": true - }, - "json5": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/json5/-/json5-2.2.0.tgz", - "integrity": "sha512-f+8cldu7X/y7RAJurMEJmdoKXGB/X550w2Nr3tTbezL6RwEE/iMcm+tZnXeoZtKuOq6ft8+CqzEkrIgx1fPoQA==", + "node_modules/jsesc": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-3.1.0.tgz", + "integrity": "sha512-/sM3dO2FOzXjKQhJuo0Q173wf2KOo8t4I8vHy6lF9poUp7bKT0/NHE8fPX23PwfhnykfqnC2xRxOnVw5XuGIaA==", "dev": true, - "requires": { - "minimist": "^1.2.5" + "license": "MIT", + "bin": { + "jsesc": "bin/jsesc" + }, + "engines": { + "node": ">=6" } }, - "jsonc-parser": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/jsonc-parser/-/jsonc-parser-3.0.0.tgz", - "integrity": "sha512-fQzRfAbIBnR0IQvftw9FJveWiHp72Fg20giDrHz6TdfB12UH/uue0D3hm57UB5KgAVuniLMCaS8P1IMj9NR7cA==", - "dev": true + "node_modules/json-parse-even-better-errors": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/json-parse-even-better-errors/-/json-parse-even-better-errors-2.3.1.tgz", + "integrity": "sha512-xyFwyhro/JEof6Ghe2iz2NcXoj2sloNsWr/XsERDK/oiPCfaNhl5ONfp+jQdAZRQQ0IJWNzH9zIZF7li91kh2w==", + "dev": true, + "license": "MIT" }, - "jsonfile": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-4.0.0.tgz", - "integrity": "sha1-h3Gq4HmbZAdrdmQPygWPnBDjPss=", + "node_modules/json5": { + "version": "2.2.3", + "resolved": "https://registry.npmjs.org/json5/-/json5-2.2.3.tgz", + "integrity": "sha512-XmOWe7eyHYH14cLdVPoyg+GOH3rYX++KpzrylJwSW98t3Nk+U8XOl8FWKOgwtzdb8lXGf6zYwDUzeHMWfxasyg==", "dev": true, - "requires": { - "graceful-fs": "^4.1.6" + "license": "MIT", + "bin": { + "json5": "lib/cli.js" + }, + "engines": { + "node": ">=6" } }, - "kleur": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/kleur/-/kleur-3.0.3.tgz", - "integrity": "sha512-eTIzlVOSUR+JxdDFepEYcBMtZ9Qqdef+rnzWdRZuMbOywu5tO2w2N7rqjoANZ5k9vywhL6Br1VRjUIgTQx4E8w==", - "dev": true - }, - "leven": { + "node_modules/leven": { "version": "3.1.0", "resolved": "https://registry.npmjs.org/leven/-/leven-3.1.0.tgz", "integrity": "sha512-qsda+H8jTaUaN/x5vzW2rzc+8Rw4TAQ/4KjB46IwK5VH+IlVeeeje/EoZRpiXvIqjFgK84QffqPztGI3VBLG1A==", - "dev": true + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6" + } + }, + "node_modules/lines-and-columns": { + "version": "1.2.4", + "resolved": "https://registry.npmjs.org/lines-and-columns/-/lines-and-columns-1.2.4.tgz", + "integrity": "sha512-7ylylesZQ/PV29jhEDl3Ufjo6ZX7gCqJr5F7PKrqc93v7fzSymt1BpwEU8nAUXs8qzzvqhbjhK5QZg6Mt/HkBg==", + "dev": true, + "license": "MIT" }, - "levn": { - "version": "0.3.0", - "resolved": "https://registry.npmjs.org/levn/-/levn-0.3.0.tgz", - "integrity": "sha1-OwmSTt+fCDwEkP3UwLxEIeBHZO4=", + "node_modules/linkify-it": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/linkify-it/-/linkify-it-5.0.0.tgz", + "integrity": "sha512-5aHCbzQRADcdP+ATqnDuhhJ/MRIqDkZX5pyjFHRRysS8vZ5AbqGEoFIb6pYHPZ+L/OC2Lc+xT8uHVVR5CAK/wQ==", "dev": true, - "requires": { - "prelude-ls": "~1.1.2", - "type-check": "~0.3.2" + "license": "MIT", + "dependencies": { + "uc.micro": "^2.0.0" } }, - "locate-path": { + "node_modules/locate-path": { "version": "5.0.0", "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-5.0.0.tgz", "integrity": "sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==", "dev": true, - "requires": { + "license": "MIT", + "dependencies": { "p-locate": "^4.1.0" + }, + "engines": { + "node": ">=8" } }, - "lodash": { - "version": "4.17.21", - "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.21.tgz", - "integrity": "sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==", - "dev": true - }, - "lodash.camelcase": { + "node_modules/lodash.camelcase": { "version": "4.3.0", "resolved": "https://registry.npmjs.org/lodash.camelcase/-/lodash.camelcase-4.3.0.tgz", - "integrity": "sha1-soqmKIorn8ZRA1x3EfZathkDMaY=", - "dev": true + "integrity": "sha512-TwuEnCnxbc3rAvhf/LbG7tJUDzhqXyFnv3dtzLOPgCG/hODL7WFnsbwktkD7yUV0RrreP/l1PALq/YSg6VvjlA==", + "dev": true, + "license": "MIT" + }, + "node_modules/lodash.memoize": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/lodash.memoize/-/lodash.memoize-4.1.2.tgz", + "integrity": "sha512-t7j+NzmgnQzTAYXcsHYLgimltOV1MXHtlOWf6GjL9Kj8GK5FInw5JotxvbOs+IvV1/Dzo04/fCGfLVs7aXb4Ag==", + "dev": true, + "license": "MIT" }, - "lru-cache": { + "node_modules/lru-cache": { "version": "5.1.1", "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-5.1.1.tgz", "integrity": "sha512-KpNARQA3Iwv+jTA0utUVVbrh+Jlrr1Fv0e56GGzAFOXN7dk/FviaDW8LHmK52DlcH4WP2n6gI8vN1aesBFgo9w==", "dev": true, - "requires": { + "license": "ISC", + "dependencies": { "yallist": "^3.0.2" } }, - "lunr": { + "node_modules/lunr": { "version": "2.3.9", "resolved": "https://registry.npmjs.org/lunr/-/lunr-2.3.9.tgz", "integrity": "sha512-zTU3DaZaF3Rt9rhN3uBMGQD3dD2/vFQqnvZCDv4dl5iOzq2IZQqTxu90r4E5J+nP70J3ilqVCrbho2eWaeW8Ow==", - "dev": true + "dev": true, + "license": "MIT" }, - "magic-string": { - "version": "0.25.4", - "resolved": "https://registry.npmjs.org/magic-string/-/magic-string-0.25.4.tgz", - "integrity": "sha512-oycWO9nEVAP2RVPbIoDoA4Y7LFIJ3xRYov93gAyJhZkET1tNuB0u7uWkZS2LpBWTJUWnmau/To8ECWRC+jKNfw==", + "node_modules/magic-string": { + "version": "0.30.21", + "resolved": "https://registry.npmjs.org/magic-string/-/magic-string-0.30.21.tgz", + "integrity": "sha512-vd2F4YUyEXKGcLHoq+TEyCjxueSeHnFxyyjNp80yg0XV4vUhnDer/lvvlqM/arB5bXQN5K2/3oinyCRyx8T2CQ==", "dev": true, - "requires": { - "sourcemap-codec": "^1.4.4" + "license": "MIT", + "dependencies": { + "@jridgewell/sourcemap-codec": "^1.5.5" } }, - "make-dir": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-3.1.0.tgz", - "integrity": "sha512-g3FeP20LNwhALb/6Cz6Dd4F2ngze0jz7tbzrD2wAV+o9FeNHe4rL+yK2md0J/fiSf1sa1ADhXqi5+oVwOM/eGw==", + "node_modules/make-dir": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-4.0.0.tgz", + "integrity": "sha512-hXdUTZYIVOt1Ex//jAQi+wTZZpUpwBj/0QsOzqegb3rGMMeJiSEu5xLHnYfBrRV4RH2+OCSOO95Is/7x1WJ4bw==", + "dev": true, + "license": "MIT", + "dependencies": { + "semver": "^7.5.3" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/make-dir/node_modules/semver": { + "version": "7.7.4", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.7.4.tgz", + "integrity": "sha512-vFKC2IEtQnVhpT78h1Yp8wzwrf8CM+MzKMHGJZfBtzhZNycRFnXsHk6E5TxIkkMsgNS7mdX3AGB7x2QM2di4lA==", + "dev": true, + "license": "ISC", + "bin": { + "semver": "bin/semver.js" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/make-error": { + "version": "1.3.6", + "resolved": "https://registry.npmjs.org/make-error/-/make-error-1.3.6.tgz", + "integrity": "sha512-s8UhlNe7vPKomQhC1qFelMokr/Sc3AgNbso3n74mVPA5LTZwkB9NlXf4XPamLxJE8h0gh73rM94xvwRT2CVInw==", + "dev": true, + "license": "ISC" + }, + "node_modules/makeerror": { + "version": "1.0.12", + "resolved": "https://registry.npmjs.org/makeerror/-/makeerror-1.0.12.tgz", + "integrity": "sha512-JmqCvUhmt43madlpFzG4BQzG2Z3m6tvQDNKdClZnO3VbIudJYmxsT0FNJMeiB2+JTSlTQTSbU8QdesVmwJcmLg==", + "dev": true, + "license": "BSD-3-Clause", + "dependencies": { + "tmpl": "1.0.5" + } + }, + "node_modules/markdown-it": { + "version": "14.1.1", + "resolved": "https://registry.npmjs.org/markdown-it/-/markdown-it-14.1.1.tgz", + "integrity": "sha512-BuU2qnTti9YKgK5N+IeMubp14ZUKUUw7yeJbkjtosvHiP0AZ5c8IAgEMk79D0eC8F23r4Ac/q8cAIFdm2FtyoA==", + "dev": true, + "license": "MIT", + "dependencies": { + "argparse": "^2.0.1", + "entities": "^4.4.0", + "linkify-it": "^5.0.0", + "mdurl": "^2.0.0", + "punycode.js": "^2.3.1", + "uc.micro": "^2.1.0" + }, + "bin": { + "markdown-it": "bin/markdown-it.mjs" + } + }, + "node_modules/markdown-it/node_modules/argparse": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/argparse/-/argparse-2.0.1.tgz", + "integrity": "sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==", + "dev": true, + "license": "Python-2.0" + }, + "node_modules/mdurl": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/mdurl/-/mdurl-2.0.0.tgz", + "integrity": "sha512-Lf+9+2r+Tdp5wXDXC4PcIBjTDtq4UKjCPMQhKIuzpJNW0b96kVqSwW0bT7FhRSfmAiFYgP+SCRvdrDozfh0U5w==", + "dev": true, + "license": "MIT" + }, + "node_modules/merge-stream": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/merge-stream/-/merge-stream-2.0.0.tgz", + "integrity": "sha512-abv/qOcuPfk3URPfDzmZU1LKmuw8kT+0nIHvKrKgFrwifol/doWcdA4ZqsWQ8ENrFKkd67Mfpo/LovbIUsbt3w==", + "dev": true, + "license": "MIT" + }, + "node_modules/micromatch": { + "version": "4.0.8", + "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.8.tgz", + "integrity": "sha512-PXwfBhYu0hBCPw8Dn0E+WDYb7af3dSLVWKi3HGv84IdF4TyFoC0ysxFd0Goxw7nSv4T/PzEJQxsYsEiFCKo2BA==", + "dev": true, + "license": "MIT", + "dependencies": { + "braces": "^3.0.3", + "picomatch": "^2.3.1" + }, + "engines": { + "node": ">=8.6" + } + }, + "node_modules/micromatch/node_modules/picomatch": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.3.1.tgz", + "integrity": "sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8.6" + }, + "funding": { + "url": "https://github.com/sponsors/jonschlinkert" + } + }, + "node_modules/mimic-fn": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/mimic-fn/-/mimic-fn-2.1.0.tgz", + "integrity": "sha512-OqbOk5oEQeAZ8WXWydlu9HJjz9WVdEIvamMCcXmuqUYjTknH/sqsWvhQ3vgwKFRR1HpjvNBKQ37nbJgYzGqGcg==", "dev": true, - "requires": { - "semver": "^6.0.0" + "license": "MIT", + "engines": { + "node": ">=6" } }, - "make-error": { - "version": "1.3.6", - "resolved": "https://registry.npmjs.org/make-error/-/make-error-1.3.6.tgz", - "integrity": "sha512-s8UhlNe7vPKomQhC1qFelMokr/Sc3AgNbso3n74mVPA5LTZwkB9NlXf4XPamLxJE8h0gh73rM94xvwRT2CVInw==", - "dev": true - }, - "makeerror": { - "version": "1.0.11", - "resolved": "https://registry.npmjs.org/makeerror/-/makeerror-1.0.11.tgz", - "integrity": "sha1-4BpckQnyr3lmDk6LlYd5AYT1qWw=", + "node_modules/minimatch": { + "version": "9.0.5", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.5.tgz", + "integrity": "sha512-G6T0ZX48xgozx7587koeX9Ys2NYy6Gmv//P89sEte9V9whIapMNF4idKxnW2QtCcLiTWlb/wfCabAtAFWhhBow==", "dev": true, - "requires": { - "tmpl": "1.0.x" + "license": "ISC", + "dependencies": { + "brace-expansion": "^2.0.1" + }, + "engines": { + "node": ">=16 || 14 >=14.17" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" } }, - "marked": { - "version": "3.0.4", - "resolved": "https://registry.npmjs.org/marked/-/marked-3.0.4.tgz", - "integrity": "sha512-jBo8AOayNaEcvBhNobg6/BLhdsK3NvnKWJg33MAAPbvTWiG4QBn9gpW1+7RssrKu4K1dKlN+0goVQwV41xEfOA==", - "dev": true - }, - "merge-stream": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/merge-stream/-/merge-stream-2.0.0.tgz", - "integrity": "sha512-abv/qOcuPfk3URPfDzmZU1LKmuw8kT+0nIHvKrKgFrwifol/doWcdA4ZqsWQ8ENrFKkd67Mfpo/LovbIUsbt3w==", - "dev": true - }, - "micromatch": { - "version": "4.0.4", - "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.4.tgz", - "integrity": "sha512-pRmzw/XUcwXGpD9aI9q/0XOwLNygjETJ8y0ao0wdqprrzDa4YnxLcz7fQRZr8voh8V10kGhABbNcHVk5wHgWwg==", + "node_modules/minimist": { + "version": "1.2.8", + "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.8.tgz", + "integrity": "sha512-2yyAR8qBkN3YuheJanUpWC5U3bb5osDywNB8RzDVlDwDHbocAJveqqj1u8+SVD7jkWT4yvsHCpWqqWqAxb0zCA==", "dev": true, - "requires": { - "braces": "^3.0.1", - "picomatch": "^2.2.3" + "license": "MIT", + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "mime-db": { - "version": "1.50.0", - "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.50.0.tgz", - "integrity": "sha512-9tMZCDlYHqeERXEHO9f/hKfNXhre5dK2eE/krIvUjZbS2KPcqGDfNShIWS1uW9XOTKQKqK6qbeOci18rbfW77A==", - "dev": true - }, - "mime-types": { - "version": "2.1.33", - "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.33.tgz", - "integrity": "sha512-plLElXp7pRDd0bNZHw+nMd52vRYjLwQjygaNg7ddJ2uJtTlmnTCjWuPKxVu6//AdaRuME84SvLW91sIkBqGT0g==", + "node_modules/minipass": { + "version": "7.1.2", + "resolved": "https://registry.npmjs.org/minipass/-/minipass-7.1.2.tgz", + "integrity": "sha512-qOOzS1cBTWYF4BH8fVePDBOO9iptMnGUEZwNc/cMWnTV2nVLZ7VoNWEPHkYczZA0pdoA7dl6e7FL659nX9S2aw==", "dev": true, - "requires": { - "mime-db": "1.50.0" + "license": "ISC", + "engines": { + "node": ">=16 || 14 >=14.17" } }, - "mimic-fn": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/mimic-fn/-/mimic-fn-2.1.0.tgz", - "integrity": "sha512-OqbOk5oEQeAZ8WXWydlu9HJjz9WVdEIvamMCcXmuqUYjTknH/sqsWvhQ3vgwKFRR1HpjvNBKQ37nbJgYzGqGcg==", - "dev": true + "node_modules/ms": { + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz", + "integrity": "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==", + "dev": true, + "license": "MIT" }, - "minimatch": { - "version": "3.0.4", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.0.4.tgz", - "integrity": "sha512-yJHVQEhyqPLUTgt9B83PXu6W3rx4MvvHvSUvToogpwoGDOUQ+yDrR0HRot+yOCdCO7u4hX3pWft6kWBBcqh0UA==", + "node_modules/napi-postinstall": { + "version": "0.3.4", + "resolved": "https://registry.npmjs.org/napi-postinstall/-/napi-postinstall-0.3.4.tgz", + "integrity": "sha512-PHI5f1O0EP5xJ9gQmFGMS6IZcrVvTjpXjz7Na41gTE7eE2hK11lg04CECCYEEjdc17EV4DO+fkGEtt7TpTaTiQ==", "dev": true, - "requires": { - "brace-expansion": "^1.1.7" + "license": "MIT", + "bin": { + "napi-postinstall": "lib/cli.js" + }, + "engines": { + "node": "^12.20.0 || ^14.18.0 || >=16.0.0" + }, + "funding": { + "url": "https://opencollective.com/napi-postinstall" } }, - "minimist": { - "version": "1.2.5", - "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.5.tgz", - "integrity": "sha512-FM9nNUYrRBAELZQT3xeZQ7fmMOBg6nWNmJKTcgsJeaLstP/UODVpGsr5OhXhhXg6f+qtJ8uiZ+PUxkDWcgIXLw==", - "dev": true - }, - "ms": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", - "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", - "dev": true - }, - "nanocolors": { - "version": "0.2.12", - "resolved": "https://registry.npmjs.org/nanocolors/-/nanocolors-0.2.12.tgz", - "integrity": "sha512-SFNdALvzW+rVlzqexid6epYdt8H9Zol7xDoQarioEFcFN0JHo4CYNztAxmtfgGTVRCmFlEOqqhBpoFGKqSAMug==", - "dev": true - }, - "natural-compare": { + "node_modules/natural-compare": { "version": "1.4.0", "resolved": "https://registry.npmjs.org/natural-compare/-/natural-compare-1.4.0.tgz", - "integrity": "sha1-Sr6/7tdUHywnrPspvbvRXI1bpPc=", - "dev": true + "integrity": "sha512-OWND8ei3VtNC9h7V60qff3SVobHr996CTwgxubgyQYEpg290h9J0buyECNNJexkFm5sOajh5G116RYA1c8ZMSw==", + "dev": true, + "license": "MIT" + }, + "node_modules/neo-async": { + "version": "2.6.2", + "resolved": "https://registry.npmjs.org/neo-async/-/neo-async-2.6.2.tgz", + "integrity": "sha512-Yd3UES5mWCSqR+qNT93S3UoYUkqAZ9lLg8a7g9rimsWmYGK8cVToA4/sF3RrshdyV3sAGMXVUmpMYOw+dLpOuw==", + "dev": true, + "license": "MIT" }, - "node-int64": { + "node_modules/node-int64": { "version": "0.4.0", "resolved": "https://registry.npmjs.org/node-int64/-/node-int64-0.4.0.tgz", - "integrity": "sha1-h6kGXNs1XTGC2PlM4RGIuCXGijs=", - "dev": true - }, - "node-modules-regexp": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/node-modules-regexp/-/node-modules-regexp-1.0.0.tgz", - "integrity": "sha1-jZ2+KJZKSsVxLpExZCEHxx6Q7EA=", - "dev": true + "integrity": "sha512-O5lz91xSOeoXP6DulyHfllpq+Eg00MWitZIbtPfoSEvqIHdl5gfcY6hYzDWnj0qD5tz52PI08u9qUvSVeUBeHw==", + "dev": true, + "license": "MIT" }, - "node-releases": { - "version": "1.1.77", - "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-1.1.77.tgz", - "integrity": "sha512-rB1DUFUNAN4Gn9keO2K1efO35IDK7yKHCdCaIMvFO7yUYmmZYeDjnGKle26G4rwj+LKRQpjyUUvMkPglwGCYNQ==", - "dev": true + "node_modules/node-releases": { + "version": "2.0.27", + "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.27.tgz", + "integrity": "sha512-nmh3lCkYZ3grZvqcCH+fjmQ7X+H0OeZgP40OierEaAptX4XofMh5kwNbWh7lBduUzCcV/8kZ+NDLCwm2iorIlA==", + "dev": true, + "license": "MIT" }, - "normalize-path": { + "node_modules/normalize-path": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz", "integrity": "sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==", - "dev": true + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } }, - "npm-run-path": { + "node_modules/npm-run-path": { "version": "4.0.1", "resolved": "https://registry.npmjs.org/npm-run-path/-/npm-run-path-4.0.1.tgz", "integrity": "sha512-S48WzZW777zhNIrn7gxOlISNAqi9ZC/uQFnRdbeIHhZhCA6UqpkOT8T1G7BvfdgP4Er8gF4sUbaS0i7QvIfCWw==", "dev": true, - "requires": { + "license": "MIT", + "dependencies": { "path-key": "^3.0.0" + }, + "engines": { + "node": ">=8" } }, - "nwsapi": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/nwsapi/-/nwsapi-2.2.0.tgz", - "integrity": "sha512-h2AatdwYH+JHiZpv7pt/gSX1XoRGb7L/qSIeuqA6GwYoF9w1vP1cw42TO0aI2pNyshRK5893hNSl+1//vHK7hQ==", - "dev": true - }, - "once": { + "node_modules/once": { "version": "1.4.0", "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", - "integrity": "sha1-WDsap3WWHUsROsF9nFC6753Xa9E=", + "integrity": "sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w==", "dev": true, - "requires": { + "license": "ISC", + "dependencies": { "wrappy": "1" } }, - "onetime": { + "node_modules/onetime": { "version": "5.1.2", "resolved": "https://registry.npmjs.org/onetime/-/onetime-5.1.2.tgz", "integrity": "sha512-kbpaSSGJTWdAY5KPVeMOKXSrPtr8C8C7wodJbcsd51jRnmD+GZu8Y0VoU6Dm5Z4vWr0Ig/1NKuWRKf7j5aaYSg==", "dev": true, - "requires": { + "license": "MIT", + "dependencies": { "mimic-fn": "^2.1.0" + }, + "engines": { + "node": ">=6" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "onigasm": { - "version": "2.2.5", - "resolved": "https://registry.npmjs.org/onigasm/-/onigasm-2.2.5.tgz", - "integrity": "sha512-F+th54mPc0l1lp1ZcFMyL/jTs2Tlq4SqIHKIXGZOR/VkHkF9A7Fr5rRr5+ZG/lWeRsyrClLYRq7s/yFQ/XhWCA==", + "node_modules/p-limit": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-3.1.0.tgz", + "integrity": "sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ==", "dev": true, - "requires": { - "lru-cache": "^5.1.1" + "license": "MIT", + "dependencies": { + "yocto-queue": "^0.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "optionator": { - "version": "0.8.3", - "resolved": "https://registry.npmjs.org/optionator/-/optionator-0.8.3.tgz", - "integrity": "sha512-+IW9pACdk3XWmmTXG8m3upGUJst5XRGzxMRjXzAuJ1XnIFNvfhjjIuYkDvysnPQ7qzqVzLt78BCruntqRhWQbA==", + "node_modules/p-locate": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-4.1.0.tgz", + "integrity": "sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==", "dev": true, - "requires": { - "deep-is": "~0.1.3", - "fast-levenshtein": "~2.0.6", - "levn": "~0.3.0", - "prelude-ls": "~1.1.2", - "type-check": "~0.3.2", - "word-wrap": "~1.2.3" + "license": "MIT", + "dependencies": { + "p-limit": "^2.2.0" + }, + "engines": { + "node": ">=8" } }, - "p-limit": { + "node_modules/p-locate/node_modules/p-limit": { "version": "2.3.0", "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz", "integrity": "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==", "dev": true, - "requires": { + "license": "MIT", + "dependencies": { "p-try": "^2.0.0" + }, + "engines": { + "node": ">=6" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "p-locate": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-4.1.0.tgz", - "integrity": "sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==", - "dev": true, - "requires": { - "p-limit": "^2.2.0" - } - }, - "p-try": { + "node_modules/p-try": { "version": "2.2.0", "resolved": "https://registry.npmjs.org/p-try/-/p-try-2.2.0.tgz", "integrity": "sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==", - "dev": true + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6" + } }, - "parse5": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/parse5/-/parse5-6.0.1.tgz", - "integrity": "sha512-Ofn/CTFzRGTTxwpNEs9PP93gXShHcTq255nzRYSKe8AkVpZY7e1fpmTfOyoIvjP5HG7Z2ZM7VS9PPhQGW2pOpw==", - "dev": true + "node_modules/package-json-from-dist": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/package-json-from-dist/-/package-json-from-dist-1.0.1.tgz", + "integrity": "sha512-UEZIS3/by4OC8vL3P2dTXRETpebLI2NiI5vIrjaD/5UtrkFX/tNbwjTSRAGC/+7CAo2pIcBaRgWmcBBHcsaCIw==", + "dev": true, + "license": "BlueOak-1.0.0" }, - "path-exists": { + "node_modules/parse-json": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-5.2.0.tgz", + "integrity": "sha512-ayCKvm/phCGxOkYRSCM82iDwct8/EonSEgCSxWxD7ve6jHggsFl4fZVQBPRNgQoKiuV/odhFrGzQXZwbifC8Rg==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/code-frame": "^7.0.0", + "error-ex": "^1.3.1", + "json-parse-even-better-errors": "^2.3.0", + "lines-and-columns": "^1.1.6" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/path-exists": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz", "integrity": "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==", - "dev": true + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + } }, - "path-is-absolute": { + "node_modules/path-is-absolute": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz", - "integrity": "sha1-F0uSaHNVNP+8es5r9TpanhtcX18=", - "dev": true + "integrity": "sha512-AVbw3UJ2e9bq64vSaS9Am0fje1Pa8pbGqTTsmXfaIiMpnr5DlDhfJOuLj9Sf95ZPVDAUerDfEk88MPmPe7UCQg==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } }, - "path-key": { + "node_modules/path-key": { "version": "3.1.1", "resolved": "https://registry.npmjs.org/path-key/-/path-key-3.1.1.tgz", "integrity": "sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==", - "dev": true + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + } }, - "path-parse": { - "version": "1.0.6", - "resolved": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.6.tgz", - "integrity": "sha512-GSmOT2EbHrINBf9SR7CDELwlJ8AENk3Qn7OikK4nFYAu3Ote2+JYNVvkpAEQm3/TLNEJFD/xZJjzyxg3KBWOzw==", - "dev": true + "node_modules/path-parse": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.7.tgz", + "integrity": "sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==", + "dev": true, + "license": "MIT" }, - "picomatch": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.3.0.tgz", - "integrity": "sha512-lY1Q/PiJGC2zOv/z391WOTD+Z02bCgsFfvxoXXf6h7kv9o+WmsmzYqrAwY63sNgOxE4xEdq0WyUnXfKeBrSvYw==", - "dev": true + "node_modules/path-scurry": { + "version": "1.11.1", + "resolved": "https://registry.npmjs.org/path-scurry/-/path-scurry-1.11.1.tgz", + "integrity": "sha512-Xa4Nw17FS9ApQFJ9umLiJS4orGjm7ZzwUrwamcGQuHSzDyth9boKDaycYdDcZDuqYATXw4HFXgaqWTctW/v1HA==", + "dev": true, + "license": "BlueOak-1.0.0", + "dependencies": { + "lru-cache": "^10.2.0", + "minipass": "^5.0.0 || ^6.0.2 || ^7.0.0" + }, + "engines": { + "node": ">=16 || 14 >=14.18" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } }, - "pirates": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/pirates/-/pirates-4.0.1.tgz", - "integrity": "sha512-WuNqLTbMI3tmfef2TKxlQmAiLHKtFhlsCZnPIpuv2Ow0RDVO8lfy1Opf4NUzlMXLjPl+Men7AuVdX6TA+s+uGA==", + "node_modules/path-scurry/node_modules/lru-cache": { + "version": "10.4.3", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-10.4.3.tgz", + "integrity": "sha512-JNAzZcXrCt42VGLuYz0zfAzDfAvJWW6AfYlDBQyDV5DClI2m5sAmK+OIO7s59XfsRsWHp02jAJrRadPRGTt6SQ==", + "dev": true, + "license": "ISC" + }, + "node_modules/picocolors": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.1.1.tgz", + "integrity": "sha512-xceH2snhtb5M9liqDsmEw56le376mTZkEX/jEb/RxNFyegNul7eNslCXP9FDj/Lcu0X8KEyMceP2ntpaHrDEVA==", + "dev": true, + "license": "ISC" + }, + "node_modules/picomatch": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-4.0.3.tgz", + "integrity": "sha512-5gTmgEY/sqK6gFXLIsQNH19lWb4ebPDLA4SdLP7dsWkIXHWlG66oPuVvXSGFPppYZz8ZDZq0dYYrbHfBCVUb1Q==", + "dev": true, + "license": "MIT", + "peer": true, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/jonschlinkert" + } + }, + "node_modules/pirates": { + "version": "4.0.7", + "resolved": "https://registry.npmjs.org/pirates/-/pirates-4.0.7.tgz", + "integrity": "sha512-TfySrs/5nm8fQJDcBDuUng3VOUKsd7S+zqvbOTiGXHfxX4wK31ard+hoNuvkicM/2YFzlpDgABOevKSsB4G/FA==", "dev": true, - "requires": { - "node-modules-regexp": "^1.0.0" + "license": "MIT", + "engines": { + "node": ">= 6" } }, - "pkg-dir": { + "node_modules/pkg-dir": { "version": "4.2.0", "resolved": "https://registry.npmjs.org/pkg-dir/-/pkg-dir-4.2.0.tgz", "integrity": "sha512-HRDzbaKjC+AOWVXxAU/x54COGeIv9eb+6CkDSQoNTt4XyWoIJvuPsXizxu/Fr23EiekbtZwmh1IcIG/l/a10GQ==", "dev": true, - "requires": { + "license": "MIT", + "dependencies": { "find-up": "^4.0.0" + }, + "engines": { + "node": ">=8" } }, - "prelude-ls": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/prelude-ls/-/prelude-ls-1.1.2.tgz", - "integrity": "sha1-IZMqVJ9eUv/ZqCf1cOBL5iqX2lQ=", - "dev": true - }, - "pretty-format": { - "version": "27.2.4", - "resolved": "https://registry.npmjs.org/pretty-format/-/pretty-format-27.2.4.tgz", - "integrity": "sha512-NUjw22WJHldzxyps2YjLZkUj6q1HvjqFezkB9Y2cklN8NtVZN/kZEXGZdFw4uny3oENzV5EEMESrkI0YDUH8vg==", - "dev": true, - "requires": { - "@jest/types": "^27.2.4", - "ansi-regex": "^5.0.1", - "ansi-styles": "^5.0.0", - "react-is": "^17.0.1" - }, - "dependencies": { - "ansi-styles": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-5.2.0.tgz", - "integrity": "sha512-Cxwpt2SfTzTtXcfOlzGEee8O+c+MmUgGrNiBcXnuWxuFJHe6a5Hz7qwhwe5OgaSYI0IJvkLqWX1ASG+cJOkEiA==", - "dev": true - } + "node_modules/pretty-format": { + "version": "30.2.0", + "resolved": "https://registry.npmjs.org/pretty-format/-/pretty-format-30.2.0.tgz", + "integrity": "sha512-9uBdv/B4EefsuAL+pWqueZyZS2Ba+LxfFeQ9DN14HU4bN8bhaxKdkpjpB6fs9+pSjIBu+FXQHImEg8j/Lw0+vA==", + "dev": true, + "license": "MIT", + "dependencies": { + "@jest/schemas": "30.0.5", + "ansi-styles": "^5.2.0", + "react-is": "^18.3.1" + }, + "engines": { + "node": "^18.14.0 || ^20.0.0 || ^22.0.0 || >=24.0.0" } }, - "prompts": { - "version": "2.4.1", - "resolved": "https://registry.npmjs.org/prompts/-/prompts-2.4.1.tgz", - "integrity": "sha512-EQyfIuO2hPDsX1L/blblV+H7I0knhgAd82cVneCwcdND9B8AuCDuRcBH6yIcG4dFzlOUqbazQqwGjx5xmsNLuQ==", + "node_modules/pretty-format/node_modules/ansi-styles": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-5.2.0.tgz", + "integrity": "sha512-Cxwpt2SfTzTtXcfOlzGEee8O+c+MmUgGrNiBcXnuWxuFJHe6a5Hz7qwhwe5OgaSYI0IJvkLqWX1ASG+cJOkEiA==", "dev": true, - "requires": { - "kleur": "^3.0.3", - "sisteransi": "^1.0.5" + "license": "MIT", + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" } }, - "psl": { - "version": "1.8.0", - "resolved": "https://registry.npmjs.org/psl/-/psl-1.8.0.tgz", - "integrity": "sha512-RIdOzyoavK+hA18OGGWDqUTsCLhtA7IcZ/6NCs4fFJaHBDab+pDDmDIByWFRQJq2Cd7r1OoQxBGKOaztq+hjIQ==", - "dev": true + "node_modules/punycode.js": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/punycode.js/-/punycode.js-2.3.1.tgz", + "integrity": "sha512-uxFIHU0YlHYhDQtV4R9J6a52SLx28BCjT+4ieh7IGbgwVJWO+km431c4yRlREUAsAmt/uMjQUyQHNEPf0M39CA==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6" + } }, - "punycode": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.1.1.tgz", - "integrity": "sha512-XRsRjdf+j5ml+y/6GKHPZbrF/8p2Yga0JPtdqTIY2Xe5ohJPD9saDJJLPvp9+NSBprVvevdXZybnj2cv8OEd0A==", - "dev": true + "node_modules/pure-rand": { + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/pure-rand/-/pure-rand-7.0.1.tgz", + "integrity": "sha512-oTUZM/NAZS8p7ANR3SHh30kXB+zK2r2BPcEn/awJIbOvq82WoMN4p62AWWp3Hhw50G0xMsw1mhIBLqHw64EcNQ==", + "dev": true, + "funding": [ + { + "type": "individual", + "url": "https://github.com/sponsors/dubzzz" + }, + { + "type": "opencollective", + "url": "https://opencollective.com/fast-check" + } + ], + "license": "MIT" }, - "react-is": { - "version": "17.0.2", - "resolved": "https://registry.npmjs.org/react-is/-/react-is-17.0.2.tgz", - "integrity": "sha512-w2GsyukL62IJnlaff/nRegPQR94C/XXamvMWmSHRJ4y7Ts/4ocGRmTHvOs8PSE6pB3dWOrD/nueuU5sduBsQ4w==", - "dev": true + "node_modules/react-is": { + "version": "18.3.1", + "resolved": "https://registry.npmjs.org/react-is/-/react-is-18.3.1.tgz", + "integrity": "sha512-/LLMVyas0ljjAtoYiPqYiL8VWXzUUdThrmU5+n20DZv+a+ClRoevUzw5JxU+Ieh5/c87ytoTBV9G1FiKfNJdmg==", + "dev": true, + "license": "MIT" }, - "require-directory": { + "node_modules/require-directory": { "version": "2.1.1", "resolved": "https://registry.npmjs.org/require-directory/-/require-directory-2.1.1.tgz", - "integrity": "sha1-jGStX9MNqxyXbiNE/+f3kqam30I=", - "dev": true + "integrity": "sha512-fGxEI7+wsG9xrvdjsrlmL22OMTTiHRwAMroiEeMgq8gzoLC/PQr7RsRDSTLUg/bZAZtF+TVIkHc6/4RIKrui+Q==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } }, - "resolve": { - "version": "1.20.0", - "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.20.0.tgz", - "integrity": "sha512-wENBPt4ySzg4ybFQW2TT1zMQucPK95HSh/nq2CFTZVOGut2+pQvSsgtda4d26YrYcr067wjbmzOG8byDPBX63A==", + "node_modules/resolve": { + "version": "1.22.11", + "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.22.11.tgz", + "integrity": "sha512-RfqAvLnMl313r7c9oclB1HhUEAezcpLjz95wFH4LVuhk9JF/r22qmVP9AMmOU4vMX7Q8pN8jwNg/CSpdFnMjTQ==", "dev": true, - "requires": { - "is-core-module": "^2.2.0", - "path-parse": "^1.0.6" + "license": "MIT", + "dependencies": { + "is-core-module": "^2.16.1", + "path-parse": "^1.0.7", + "supports-preserve-symlinks-flag": "^1.0.0" + }, + "bin": { + "resolve": "bin/resolve" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "resolve-cwd": { + "node_modules/resolve-cwd": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/resolve-cwd/-/resolve-cwd-3.0.0.tgz", "integrity": "sha512-OrZaX2Mb+rJCpH/6CpSqt9xFVpN++x01XnN2ie9g6P5/3xelLAkXWVADpdz1IHD/KFfEXyE6V0U01OQ3UO2rEg==", "dev": true, - "requires": { + "license": "MIT", + "dependencies": { "resolve-from": "^5.0.0" + }, + "engines": { + "node": ">=8" } }, - "resolve-from": { + "node_modules/resolve-from": { "version": "5.0.0", "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-5.0.0.tgz", "integrity": "sha512-qYg9KP24dD5qka9J47d0aVky0N+b4fTU89LN9iDnjB5waksiC49rvMB0PrUJQGoTmH50XPiqOvAjDfaijGxYZw==", - "dev": true - }, - "rimraf": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-3.0.2.tgz", - "integrity": "sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==", - "dev": true, - "requires": { - "glob": "^7.1.3" - } - }, - "rollup": { - "version": "2.58.0", - "resolved": "https://registry.npmjs.org/rollup/-/rollup-2.58.0.tgz", - "integrity": "sha512-NOXpusKnaRpbS7ZVSzcEXqxcLDOagN6iFS8p45RkoiMqPHDLwJm758UF05KlMoCRbLBTZsPOIa887gZJ1AiXvw==", - "dev": true, - "requires": { - "fsevents": "~2.3.2" - } - }, - "rollup-plugin-commonjs": { - "version": "10.1.0", - "resolved": "https://registry.npmjs.org/rollup-plugin-commonjs/-/rollup-plugin-commonjs-10.1.0.tgz", - "integrity": "sha512-jlXbjZSQg8EIeAAvepNwhJj++qJWNJw1Cl0YnOqKtP5Djx+fFGkp3WRh+W0ASCaFG5w1jhmzDxgu3SJuVxPF4Q==", - "dev": true, - "requires": { - "estree-walker": "^0.6.1", - "is-reference": "^1.1.2", - "magic-string": "^0.25.2", - "resolve": "^1.11.0", - "rollup-pluginutils": "^2.8.1" - } - }, - "rollup-plugin-json": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/rollup-plugin-json/-/rollup-plugin-json-4.0.0.tgz", - "integrity": "sha512-hgb8N7Cgfw5SZAkb3jf0QXii6QX/FOkiIq2M7BAQIEydjHvTyxXHQiIzZaTFgx1GK0cRCHOCBHIyEkkLdWKxow==", - "dev": true, - "requires": { - "rollup-pluginutils": "^2.5.0" - } - }, - "rollup-plugin-node-resolve": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/rollup-plugin-node-resolve/-/rollup-plugin-node-resolve-5.2.0.tgz", - "integrity": "sha512-jUlyaDXts7TW2CqQ4GaO5VJ4PwwaV8VUGA7+km3n6k6xtOEacf61u0VXwN80phY/evMcaS+9eIeJ9MOyDxt5Zw==", "dev": true, - "requires": { - "@types/resolve": "0.0.8", - "builtin-modules": "^3.1.0", - "is-module": "^1.0.0", - "resolve": "^1.11.1", - "rollup-pluginutils": "^2.8.1" + "license": "MIT", + "engines": { + "node": ">=8" } }, - "rollup-plugin-sourcemaps": { - "version": "0.6.3", - "resolved": "https://registry.npmjs.org/rollup-plugin-sourcemaps/-/rollup-plugin-sourcemaps-0.6.3.tgz", - "integrity": "sha512-paFu+nT1xvuO1tPFYXGe+XnQvg4Hjqv/eIhG8i5EspfYYPBKL57X7iVbfv55aNVASg3dzWvES9dmWsL2KhfByw==", + "node_modules/rollup": { + "version": "4.57.1", + "resolved": "https://registry.npmjs.org/rollup/-/rollup-4.57.1.tgz", + "integrity": "sha512-oQL6lgK3e2QZeQ7gcgIkS2YZPg5slw37hYufJ3edKlfQSGGm8ICoxswK15ntSzF/a8+h7ekRy7k7oWc3BQ7y8A==", "dev": true, - "requires": { - "@rollup/pluginutils": "^3.0.9", - "source-map-resolve": "^0.6.0" - }, + "license": "MIT", + "peer": true, "dependencies": { - "source-map-resolve": { - "version": "0.6.0", - "resolved": "https://registry.npmjs.org/source-map-resolve/-/source-map-resolve-0.6.0.tgz", - "integrity": "sha512-KXBr9d/fO/bWo97NXsPIAW1bFSBOuCnjbNTBMO7N59hsv5i9yzRDfcYwwt0l04+VqnKC+EwzvJZIP/qkuMgR/w==", - "dev": true, - "requires": { - "atob": "^2.1.2", - "decode-uri-component": "^0.2.0" - } - } - } - }, - "rollup-plugin-typescript2": { - "version": "0.30.0", - "resolved": "https://registry.npmjs.org/rollup-plugin-typescript2/-/rollup-plugin-typescript2-0.30.0.tgz", - "integrity": "sha512-NUFszIQyhgDdhRS9ya/VEmsnpTe+GERDMmFo0Y+kf8ds51Xy57nPNGglJY+W6x1vcouA7Au7nsTgsLFj2I0PxQ==", - "dev": true, - "requires": { - "@rollup/pluginutils": "^4.1.0", - "find-cache-dir": "^3.3.1", - "fs-extra": "8.1.0", - "resolve": "1.20.0", - "tslib": "2.1.0" - }, - "dependencies": { - "@rollup/pluginutils": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/@rollup/pluginutils/-/pluginutils-4.1.0.tgz", - "integrity": "sha512-TrBhfJkFxA+ER+ew2U2/fHbebhLT/l/2pRk0hfj9KusXUuRXd2v0R58AfaZK9VXDQ4TogOSEmICVrQAA3zFnHQ==", - "dev": true, - "requires": { - "estree-walker": "^2.0.1", - "picomatch": "^2.2.2" - } - }, - "estree-walker": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/estree-walker/-/estree-walker-2.0.2.tgz", - "integrity": "sha512-Rfkk/Mp/DL7JVje3u18FxFujQlTNR2q6QfMSMB7AvCBx91NGj/ba3kCfza0f6dVDbw7YlRf/nDrn7pQrCCyQ/w==", - "dev": true - } - } - }, - "rollup-pluginutils": { - "version": "2.8.2", - "resolved": "https://registry.npmjs.org/rollup-pluginutils/-/rollup-pluginutils-2.8.2.tgz", - "integrity": "sha512-EEp9NhnUkwY8aif6bxgovPHMoMoNr2FulJziTndpt5H9RdwC47GSGuII9XxpSdzVGM0GWrNPHV6ie1LTNJPaLQ==", - "dev": true, - "requires": { - "estree-walker": "^0.6.1" + "@types/estree": "1.0.8" + }, + "bin": { + "rollup": "dist/bin/rollup" + }, + "engines": { + "node": ">=18.0.0", + "npm": ">=8.0.0" + }, + "optionalDependencies": { + "@rollup/rollup-android-arm-eabi": "4.57.1", + "@rollup/rollup-android-arm64": "4.57.1", + "@rollup/rollup-darwin-arm64": "4.57.1", + "@rollup/rollup-darwin-x64": "4.57.1", + "@rollup/rollup-freebsd-arm64": "4.57.1", + "@rollup/rollup-freebsd-x64": "4.57.1", + "@rollup/rollup-linux-arm-gnueabihf": "4.57.1", + "@rollup/rollup-linux-arm-musleabihf": "4.57.1", + "@rollup/rollup-linux-arm64-gnu": "4.57.1", + "@rollup/rollup-linux-arm64-musl": "4.57.1", + "@rollup/rollup-linux-loong64-gnu": "4.57.1", + "@rollup/rollup-linux-loong64-musl": "4.57.1", + "@rollup/rollup-linux-ppc64-gnu": "4.57.1", + "@rollup/rollup-linux-ppc64-musl": "4.57.1", + "@rollup/rollup-linux-riscv64-gnu": "4.57.1", + "@rollup/rollup-linux-riscv64-musl": "4.57.1", + "@rollup/rollup-linux-s390x-gnu": "4.57.1", + "@rollup/rollup-linux-x64-gnu": "4.57.1", + "@rollup/rollup-linux-x64-musl": "4.57.1", + "@rollup/rollup-openbsd-x64": "4.57.1", + "@rollup/rollup-openharmony-arm64": "4.57.1", + "@rollup/rollup-win32-arm64-msvc": "4.57.1", + "@rollup/rollup-win32-ia32-msvc": "4.57.1", + "@rollup/rollup-win32-x64-gnu": "4.57.1", + "@rollup/rollup-win32-x64-msvc": "4.57.1", + "fsevents": "~2.3.2" } }, - "safe-buffer": { - "version": "5.1.2", - "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", - "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==", - "dev": true - }, - "safer-buffer": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/safer-buffer/-/safer-buffer-2.1.2.tgz", - "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==", - "dev": true - }, - "saxes": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/saxes/-/saxes-5.0.1.tgz", - "integrity": "sha512-5LBh1Tls8c9xgGjw3QrMwETmTMVk0oFgvrFSvWx62llR2hcEInrKNZ2GZCCuuy2lvWrdl5jhbpeqc5hRYKFOcw==", + "node_modules/semver": { + "version": "6.3.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", + "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==", "dev": true, - "requires": { - "xmlchars": "^2.2.0" + "license": "ISC", + "bin": { + "semver": "bin/semver.js" } }, - "semver": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", - "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", - "dev": true - }, - "shebang-command": { + "node_modules/shebang-command": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-2.0.0.tgz", "integrity": "sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==", "dev": true, - "requires": { + "license": "MIT", + "dependencies": { "shebang-regex": "^3.0.0" + }, + "engines": { + "node": ">=8" } }, - "shebang-regex": { + "node_modules/shebang-regex": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-3.0.0.tgz", "integrity": "sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==", - "dev": true - }, - "shiki": { - "version": "0.9.11", - "resolved": "https://registry.npmjs.org/shiki/-/shiki-0.9.11.tgz", - "integrity": "sha512-tjruNTLFhU0hruCPoJP0y+B9LKOmcqUhTpxn7pcJB3fa+04gFChuEmxmrUfOJ7ZO6Jd+HwMnDHgY3lv3Tqonuw==", "dev": true, - "requires": { - "jsonc-parser": "^3.0.0", - "onigasm": "^2.2.5", - "vscode-textmate": "5.2.0" + "license": "MIT", + "engines": { + "node": ">=8" } }, - "signal-exit": { - "version": "3.0.5", - "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.5.tgz", - "integrity": "sha512-KWcOiKeQj6ZyXx7zq4YxSMgHRlod4czeBQZrPb8OKcohcqAXShm7E20kEMle9WBt26hFcAf0qLOcp5zmY7kOqQ==", - "dev": true - }, - "sisteransi": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/sisteransi/-/sisteransi-1.0.5.tgz", - "integrity": "sha512-bLGGlR1QxBcynn2d5YmDX4MGjlZvy2MRBDRNHLJ8VI6l6+9FUiyTFNJ0IveOSP0bcXgVDPRcfGqA0pjaqUpfVg==", - "dev": true + "node_modules/signal-exit": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-4.1.0.tgz", + "integrity": "sha512-bzyZ1e88w9O1iNJbKnOlvYTrWPDl46O1bG0D3XInv+9tkPrxrN8jUUTiFlDkkmKWgn1M6CfIA13SuGqOa9Korw==", + "dev": true, + "license": "ISC", + "engines": { + "node": ">=14" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } }, - "slash": { + "node_modules/slash": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/slash/-/slash-3.0.0.tgz", "integrity": "sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==", - "dev": true + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + } }, - "source-map": { + "node_modules/source-map": { "version": "0.6.1", "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", - "dev": true + "dev": true, + "license": "BSD-3-Clause", + "engines": { + "node": ">=0.10.0" + } }, - "source-map-support": { - "version": "0.5.20", - "resolved": "https://registry.npmjs.org/source-map-support/-/source-map-support-0.5.20.tgz", - "integrity": "sha512-n1lZZ8Ve4ksRqizaBQgxXDgKwttHDhyfQjA6YZZn8+AroHbsIz+JjwxQDxbp+7y5OYCI8t1Yk7etjD9CRd2hIw==", + "node_modules/source-map-support": { + "version": "0.5.13", + "resolved": "https://registry.npmjs.org/source-map-support/-/source-map-support-0.5.13.tgz", + "integrity": "sha512-SHSKFHadjVA5oR4PPqhtAVdcBWwRYVd6g6cAXnIbRiIwc2EhPrTuKUBdSLvlEKyIP3GCf89fltvcZiP9MMFA1w==", "dev": true, - "requires": { + "license": "MIT", + "dependencies": { "buffer-from": "^1.0.0", "source-map": "^0.6.0" } }, - "sourcemap-codec": { - "version": "1.4.6", - "resolved": "https://registry.npmjs.org/sourcemap-codec/-/sourcemap-codec-1.4.6.tgz", - "integrity": "sha512-1ZooVLYFxC448piVLBbtOxFcXwnymH9oUF8nRd3CuYDVvkRBxRl6pB4Mtas5a4drtL+E8LDgFkQNcgIw6tc8Hg==", - "dev": true - }, - "sprintf-js": { + "node_modules/sprintf-js": { "version": "1.0.3", "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.0.3.tgz", - "integrity": "sha1-BOaSb2YolTVPPdAVIDYzuFcpfiw=", - "dev": true + "integrity": "sha512-D9cPgkvLlV3t3IzL0D0YLvGA9Ahk4PcvVwUbN0dSGr1aP0Nrt4AEnTUbuGvquEC0mA64Gqt1fzirlRs5ibXx8g==", + "dev": true, + "license": "BSD-3-Clause" }, - "stack-utils": { - "version": "2.0.5", - "resolved": "https://registry.npmjs.org/stack-utils/-/stack-utils-2.0.5.tgz", - "integrity": "sha512-xrQcmYhOsn/1kX+Vraq+7j4oE2j/6BFscZ0etmYg81xuM8Gq0022Pxb8+IqgOFUIaxHs0KaSb7T1+OegiNrNFA==", + "node_modules/stack-utils": { + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/stack-utils/-/stack-utils-2.0.6.tgz", + "integrity": "sha512-XlkWvfIm6RmsWtNJx+uqtKLS8eqFbxUg0ZzLXqY0caEy9l7hruX8IpiDnjsLavoBgqCCR71TqWO8MaXYheJ3RQ==", "dev": true, - "requires": { + "license": "MIT", + "dependencies": { "escape-string-regexp": "^2.0.0" + }, + "engines": { + "node": ">=10" } }, - "string-length": { + "node_modules/string-length": { "version": "4.0.2", "resolved": "https://registry.npmjs.org/string-length/-/string-length-4.0.2.tgz", "integrity": "sha512-+l6rNN5fYHNhZZy41RXsYptCjA2Igmq4EG7kZAYFQI1E1VTXarr6ZPXBg6eq7Y6eK4FEhY6AJlyuFIb/v/S0VQ==", "dev": true, - "requires": { + "license": "MIT", + "dependencies": { "char-regex": "^1.0.2", "strip-ansi": "^6.0.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/string-length/node_modules/ansi-regex": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", + "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/string-length/node_modules/strip-ansi": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", + "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", + "dev": true, + "license": "MIT", + "dependencies": { + "ansi-regex": "^5.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/string-width": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-5.1.2.tgz", + "integrity": "sha512-HnLOCR3vjcY8beoNLtcjZ5/nxn2afmME6lhrDrebokqMap+XbeW8n9TXpPDOqdGK5qcI3oT0GKTW6wC7EMiVqA==", + "dev": true, + "license": "MIT", + "dependencies": { + "eastasianwidth": "^0.2.0", + "emoji-regex": "^9.2.2", + "strip-ansi": "^7.0.1" + }, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "string-width": { + "node_modules/string-width-cjs": { + "name": "string-width", "version": "4.2.3", "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", "dev": true, - "requires": { + "license": "MIT", + "dependencies": { "emoji-regex": "^8.0.0", "is-fullwidth-code-point": "^3.0.0", "strip-ansi": "^6.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/string-width-cjs/node_modules/ansi-regex": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", + "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/string-width-cjs/node_modules/emoji-regex": { + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", + "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==", + "dev": true, + "license": "MIT" + }, + "node_modules/string-width-cjs/node_modules/strip-ansi": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", + "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", + "dev": true, + "license": "MIT", + "dependencies": { + "ansi-regex": "^5.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/strip-ansi": { + "version": "7.1.2", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-7.1.2.tgz", + "integrity": "sha512-gmBGslpoQJtgnMAvOVqGZpEz9dyoKTCzy2nfz/n8aIFhN/jCE/rCmcxabB6jOOHV+0WNnylOxaxBQPSvcWklhA==", + "dev": true, + "license": "MIT", + "dependencies": { + "ansi-regex": "^6.0.1" + }, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/chalk/strip-ansi?sponsor=1" } }, - "strip-ansi": { + "node_modules/strip-ansi-cjs": { + "name": "strip-ansi", "version": "6.0.1", "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", "dev": true, - "requires": { + "license": "MIT", + "dependencies": { "ansi-regex": "^5.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/strip-ansi-cjs/node_modules/ansi-regex": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", + "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" } }, - "strip-bom": { + "node_modules/strip-bom": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-4.0.0.tgz", "integrity": "sha512-3xurFv5tEgii33Zi8Jtp55wEIILR9eh34FAW00PZf+JnSsTmV/ioewSgQl97JHvgjoRGwPShsWm+IdrxB35d0w==", - "dev": true + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + } }, - "strip-final-newline": { + "node_modules/strip-final-newline": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/strip-final-newline/-/strip-final-newline-2.0.0.tgz", "integrity": "sha512-BrpvfNAE3dcvq7ll3xVumzjKjZQ5tI1sEUIKr3Uoks0XUl45St3FlatVqef9prk4jRDzhW6WZg+3bk93y6pLjA==", - "dev": true + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6" + } + }, + "node_modules/strip-json-comments": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-3.1.1.tgz", + "integrity": "sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } }, - "supports-color": { + "node_modules/supports-color": { "version": "7.2.0", "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", "dev": true, - "requires": { + "license": "MIT", + "dependencies": { "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" } }, - "supports-hyperlinks": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/supports-hyperlinks/-/supports-hyperlinks-2.2.0.tgz", - "integrity": "sha512-6sXEzV5+I5j8Bmq9/vUphGRM/RJNT9SCURJLjwfOg51heRtguGWDzcaBlgAzKhQa0EVNpPEKzQuBwZ8S8WaCeQ==", + "node_modules/supports-preserve-symlinks-flag": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/supports-preserve-symlinks-flag/-/supports-preserve-symlinks-flag-1.0.0.tgz", + "integrity": "sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==", "dev": true, - "requires": { - "has-flag": "^4.0.0", - "supports-color": "^7.0.0" + "license": "MIT", + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "symbol-tree": { - "version": "3.2.4", - "resolved": "https://registry.npmjs.org/symbol-tree/-/symbol-tree-3.2.4.tgz", - "integrity": "sha512-9QNk5KwDF+Bvz+PyObkmSYjI5ksVUYtjW7AU22r2NKcfLJcXp96hkDWU3+XndOsUb+AQ9QhfzfCT2O+CNWT5Tw==", - "dev": true - }, - "terminal-link": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/terminal-link/-/terminal-link-2.1.1.tgz", - "integrity": "sha512-un0FmiRUQNr5PJqy9kP7c40F5BOfpGlYTrxonDChEZB7pzZxRNp/bt+ymiy9/npwXya9KH99nJ/GXFIiUkYGFQ==", + "node_modules/synckit": { + "version": "0.11.12", + "resolved": "https://registry.npmjs.org/synckit/-/synckit-0.11.12.tgz", + "integrity": "sha512-Bh7QjT8/SuKUIfObSXNHNSK6WHo6J1tHCqJsuaFDP7gP0fkzSfTxI8y85JrppZ0h8l0maIgc2tfuZQ6/t3GtnQ==", "dev": true, - "requires": { - "ansi-escapes": "^4.2.1", - "supports-hyperlinks": "^2.0.0" + "license": "MIT", + "dependencies": { + "@pkgr/core": "^0.2.9" + }, + "engines": { + "node": "^14.18.0 || >=16.0.0" + }, + "funding": { + "url": "https://opencollective.com/synckit" } }, - "terser": { - "version": "5.9.0", - "resolved": "https://registry.npmjs.org/terser/-/terser-5.9.0.tgz", - "integrity": "sha512-h5hxa23sCdpzcye/7b8YqbE5OwKca/ni0RQz1uRX3tGh8haaGHqcuSqbGRybuAKNdntZ0mDgFNXPJ48xQ2RXKQ==", + "node_modules/terser": { + "version": "5.46.0", + "resolved": "https://registry.npmjs.org/terser/-/terser-5.46.0.tgz", + "integrity": "sha512-jTwoImyr/QbOWFFso3YoU3ik0jBBDJ6JTOQiy/J2YxVJdZCc+5u7skhNwiOR3FQIygFqVUPHl7qbbxtjW2K3Qg==", "dev": true, - "requires": { + "license": "BSD-2-Clause", + "peer": true, + "dependencies": { + "@jridgewell/source-map": "^0.3.3", + "acorn": "^8.15.0", "commander": "^2.20.0", - "source-map": "~0.7.2", "source-map-support": "~0.5.20" }, + "bin": { + "terser": "bin/terser" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/terser/node_modules/source-map-support": { + "version": "0.5.21", + "resolved": "https://registry.npmjs.org/source-map-support/-/source-map-support-0.5.21.tgz", + "integrity": "sha512-uBHU3L3czsIyYXKX88fdrGovxdSCoTGDRZ6SYXtSRxLZUzHg5P/66Ht6uoUlHu9EZod+inXhKo3qQgwXUT/y1w==", + "dev": true, + "license": "MIT", "dependencies": { - "source-map": { - "version": "0.7.3", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.7.3.tgz", - "integrity": "sha512-CkCj6giN3S+n9qrYiBTX5gystlENnRW5jZeNLHpe6aue+SrHcG5VYwujhW9s4dY31mEGsxBDrHR6oI69fTXsaQ==", - "dev": true - } + "buffer-from": "^1.0.0", + "source-map": "^0.6.0" } }, - "test-exclude": { + "node_modules/test-exclude": { "version": "6.0.0", "resolved": "https://registry.npmjs.org/test-exclude/-/test-exclude-6.0.0.tgz", "integrity": "sha512-cAGWPIyOHU6zlmg88jwm7VRyXnMN7iV68OGAbYDk/Mh/xC/pzVPlQtY6ngoIH/5/tciuhGfvESU8GrHrcxD56w==", "dev": true, - "requires": { + "license": "ISC", + "dependencies": { "@istanbuljs/schema": "^0.1.2", "glob": "^7.1.4", "minimatch": "^3.0.4" + }, + "engines": { + "node": ">=8" } }, - "throat": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/throat/-/throat-6.0.1.tgz", - "integrity": "sha512-8hmiGIJMDlwjg7dlJ4yKGLK8EsYqKgPWbG3b4wjJddKNwc7N7Dpn08Df4szr/sZdMVeOstrdYSsqzX6BYbcB+w==", - "dev": true + "node_modules/test-exclude/node_modules/brace-expansion": { + "version": "1.1.12", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.12.tgz", + "integrity": "sha512-9T9UjW3r0UW5c1Q7GTwllptXwhvYmEzFhzMfZ9H7FQWt+uZePjZPjBP/W1ZEyZ1twGWom5/56TF4lPcqjnDHcg==", + "dev": true, + "license": "MIT", + "dependencies": { + "balanced-match": "^1.0.0", + "concat-map": "0.0.1" + } + }, + "node_modules/test-exclude/node_modules/glob": { + "version": "7.2.3", + "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.3.tgz", + "integrity": "sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==", + "deprecated": "Old versions of glob are not supported, and contain widely publicized security vulnerabilities, which have been fixed in the current version. Please update. Support for old versions may be purchased (at exorbitant rates) by contacting i@izs.me", + "dev": true, + "license": "ISC", + "dependencies": { + "fs.realpath": "^1.0.0", + "inflight": "^1.0.4", + "inherits": "2", + "minimatch": "^3.1.1", + "once": "^1.3.0", + "path-is-absolute": "^1.0.0" + }, + "engines": { + "node": "*" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/test-exclude/node_modules/minimatch": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", + "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", + "dev": true, + "license": "ISC", + "dependencies": { + "brace-expansion": "^1.1.7" + }, + "engines": { + "node": "*" + } }, - "tmpl": { + "node_modules/tmpl": { "version": "1.0.5", "resolved": "https://registry.npmjs.org/tmpl/-/tmpl-1.0.5.tgz", "integrity": "sha512-3f0uOEAQwIqGuWW2MVzYg8fV/QNnc/IpuJNG837rLuczAaLVHslWHZQj4IGiEl5Hs3kkbhwL9Ab7Hrsmuj+Smw==", - "dev": true - }, - "to-fast-properties": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/to-fast-properties/-/to-fast-properties-2.0.0.tgz", - "integrity": "sha1-3F5pjL0HkmW8c+A3doGk5Og/YW4=", - "dev": true + "dev": true, + "license": "BSD-3-Clause" }, - "to-regex-range": { + "node_modules/to-regex-range": { "version": "5.0.1", "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz", "integrity": "sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==", "dev": true, - "requires": { + "license": "MIT", + "dependencies": { "is-number": "^7.0.0" + }, + "engines": { + "node": ">=8.0" + } + }, + "node_modules/ts-jest": { + "version": "29.4.6", + "resolved": "https://registry.npmjs.org/ts-jest/-/ts-jest-29.4.6.tgz", + "integrity": "sha512-fSpWtOO/1AjSNQguk43hb/JCo16oJDnMJf3CdEGNkqsEX3t0KX96xvyX1D7PfLCpVoKu4MfVrqUkFyblYoY4lA==", + "dev": true, + "license": "MIT", + "dependencies": { + "bs-logger": "^0.2.6", + "fast-json-stable-stringify": "^2.1.0", + "handlebars": "^4.7.8", + "json5": "^2.2.3", + "lodash.memoize": "^4.1.2", + "make-error": "^1.3.6", + "semver": "^7.7.3", + "type-fest": "^4.41.0", + "yargs-parser": "^21.1.1" + }, + "bin": { + "ts-jest": "cli.js" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || ^18.0.0 || >=20.0.0" + }, + "peerDependencies": { + "@babel/core": ">=7.0.0-beta.0 <8", + "@jest/transform": "^29.0.0 || ^30.0.0", + "@jest/types": "^29.0.0 || ^30.0.0", + "babel-jest": "^29.0.0 || ^30.0.0", + "jest": "^29.0.0 || ^30.0.0", + "jest-util": "^29.0.0 || ^30.0.0", + "typescript": ">=4.3 <6" + }, + "peerDependenciesMeta": { + "@babel/core": { + "optional": true + }, + "@jest/transform": { + "optional": true + }, + "@jest/types": { + "optional": true + }, + "babel-jest": { + "optional": true + }, + "esbuild": { + "optional": true + }, + "jest-util": { + "optional": true + } } }, - "tough-cookie": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/tough-cookie/-/tough-cookie-4.0.0.tgz", - "integrity": "sha512-tHdtEpQCMrc1YLrMaqXXcj6AxhYi/xgit6mZu1+EDWUn+qhUf8wMQoFIy9NXuq23zAwtcB0t/MjACGR18pcRbg==", + "node_modules/ts-jest/node_modules/semver": { + "version": "7.7.4", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.7.4.tgz", + "integrity": "sha512-vFKC2IEtQnVhpT78h1Yp8wzwrf8CM+MzKMHGJZfBtzhZNycRFnXsHk6E5TxIkkMsgNS7mdX3AGB7x2QM2di4lA==", "dev": true, - "requires": { - "psl": "^1.1.33", - "punycode": "^2.1.1", - "universalify": "^0.1.2" + "license": "ISC", + "bin": { + "semver": "bin/semver.js" + }, + "engines": { + "node": ">=10" } }, - "tr46": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/tr46/-/tr46-2.1.0.tgz", - "integrity": "sha512-15Ih7phfcdP5YxqiB+iDtLoaTz4Nd35+IiAv0kQ5FNKHzXgdWqPoTIqEDDJmXceQt4JZk6lVPT8lnDlPpGDppw==", - "dev": true, - "requires": { - "punycode": "^2.1.1" - } - }, - "ts-jest": { - "version": "27.0.5", - "resolved": "https://registry.npmjs.org/ts-jest/-/ts-jest-27.0.5.tgz", - "integrity": "sha512-lIJApzfTaSSbtlksfFNHkWOzLJuuSm4faFAfo5kvzOiRAuoN4/eKxVJ2zEAho8aecE04qX6K1pAzfH5QHL1/8w==", - "dev": true, - "requires": { - "bs-logger": "0.x", - "fast-json-stable-stringify": "2.x", - "jest-util": "^27.0.0", - "json5": "2.x", - "lodash": "4.x", - "make-error": "1.x", - "semver": "7.x", - "yargs-parser": "20.x" - }, - "dependencies": { - "semver": { - "version": "7.3.2", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.2.tgz", - "integrity": "sha512-OrOb32TeeambH6UrhtShmF7CRDqhL6/5XpPNp2DuRH6+9QLw/orhp72j87v8Qa1ScDkvrrBNpZcDejAirJmfXQ==", - "dev": true - } + "node_modules/ts-jest/node_modules/type-fest": { + "version": "4.41.0", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-4.41.0.tgz", + "integrity": "sha512-TeTSQ6H5YHvpqVwBRcnLDCBnDOHWYu7IvGbHT6N8AOymcr9PJGjc1GTtiWZTYg0NCgYwvnYWEkVChQAr9bjfwA==", + "dev": true, + "license": "(MIT OR CC0-1.0)", + "engines": { + "node": ">=16" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "tslib": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.1.0.tgz", - "integrity": "sha512-hcVC3wYEziELGGmEEXue7D75zbwIIVUMWAVbHItGPx0ziyXxrOMQx4rQEVEV45Ut/1IotuEvwqPopzIOkDMf0A==", - "dev": true - }, - "type-check": { - "version": "0.3.2", - "resolved": "https://registry.npmjs.org/type-check/-/type-check-0.3.2.tgz", - "integrity": "sha1-WITKtRLPHTVeP7eE8wgEsrUg23I=", + "node_modules/tslib": { + "version": "2.8.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.8.1.tgz", + "integrity": "sha512-oJFu94HQb+KVduSUQL7wnpmqnfmLsOA/nAh6b6EH0wCEoK0/mPeXU6c3wKDV83MkOuHPRHtSXKKU99IBazS/2w==", "dev": true, - "requires": { - "prelude-ls": "~1.1.2" - } + "license": "0BSD", + "peer": true }, - "type-detect": { + "node_modules/type-detect": { "version": "4.0.8", "resolved": "https://registry.npmjs.org/type-detect/-/type-detect-4.0.8.tgz", "integrity": "sha512-0fr/mIH1dlO+x7TlcMy+bIDqKPsw/70tVyeHW787goQjhmqaZe10uwLujubK9q9Lg6Fiho1KUKDYz0Z7k7g5/g==", - "dev": true + "dev": true, + "license": "MIT", + "engines": { + "node": ">=4" + } }, - "type-fest": { + "node_modules/type-fest": { "version": "0.21.3", "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.21.3.tgz", "integrity": "sha512-t0rzBq87m3fVcduHDUFhKmyyX+9eo6WQjZvf51Ea/M0Q7+T374Jp1aUiyUl0GKxp8M/OETVHSDvmkyPgvX+X2w==", - "dev": true - }, - "typedarray-to-buffer": { - "version": "3.1.5", - "resolved": "https://registry.npmjs.org/typedarray-to-buffer/-/typedarray-to-buffer-3.1.5.tgz", - "integrity": "sha512-zdu8XMNEDepKKR+XYOXAVPtWui0ly0NtohUscw+UmaHiAWT8hrV1rr//H6V+0DvJ3OQ19S979M0laLfX8rm82Q==", "dev": true, - "requires": { - "is-typedarray": "^1.0.0" + "license": "(MIT OR CC0-1.0)", + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "typedoc": { - "version": "0.22.5", - "resolved": "https://registry.npmjs.org/typedoc/-/typedoc-0.22.5.tgz", - "integrity": "sha512-KFrWGU1iKiTGw0RcyjLNYDmhd7uICU14HgBNPmFKY/sT4Pm/fraaLyWyisst9vGTUAKxqibqoDITR7+ZcAkhHg==", + "node_modules/typedoc": { + "version": "0.28.16", + "resolved": "https://registry.npmjs.org/typedoc/-/typedoc-0.28.16.tgz", + "integrity": "sha512-x4xW77QC3i5DUFMBp0qjukOTnr/sSg+oEs86nB3LjDslvAmwe/PUGDWbe3GrIqt59oTqoXK5GRK9tAa0sYMiog==", "dev": true, - "requires": { - "glob": "^7.2.0", + "license": "Apache-2.0", + "dependencies": { + "@gerrit0/mini-shiki": "^3.17.0", "lunr": "^2.3.9", - "marked": "^3.0.4", - "minimatch": "^3.0.4", - "shiki": "^0.9.11" + "markdown-it": "^14.1.0", + "minimatch": "^9.0.5", + "yaml": "^2.8.1" + }, + "bin": { + "typedoc": "bin/typedoc" + }, + "engines": { + "node": ">= 18", + "pnpm": ">= 10" + }, + "peerDependencies": { + "typescript": "5.0.x || 5.1.x || 5.2.x || 5.3.x || 5.4.x || 5.5.x || 5.6.x || 5.7.x || 5.8.x || 5.9.x" } }, - "typescript": { - "version": "4.4.3", - "resolved": "https://registry.npmjs.org/typescript/-/typescript-4.4.3.tgz", - "integrity": "sha512-4xfscpisVgqqDfPaJo5vkd+Qd/ItkoagnHpufr+i2QCHBsNYp+G7UAoyFl8aPtx879u38wPV65rZ8qbGZijalA==", - "dev": true - }, - "universalify": { - "version": "0.1.2", - "resolved": "https://registry.npmjs.org/universalify/-/universalify-0.1.2.tgz", - "integrity": "sha512-rBJeI5CXAlmy1pV+617WB9J63U6XcazHHF2f2dbJix4XzpUF0RS3Zbj0FGIOCAva5P/d/GBOYaACQ1w+0azUkg==", - "dev": true - }, - "v8-to-istanbul": { - "version": "8.1.0", - "resolved": "https://registry.npmjs.org/v8-to-istanbul/-/v8-to-istanbul-8.1.0.tgz", - "integrity": "sha512-/PRhfd8aTNp9Ggr62HPzXg2XasNFGy5PBt0Rp04du7/8GNNSgxFL6WBTkgMKSL9bFjH+8kKEG3f37FmxiTqUUA==", + "node_modules/typescript": { + "version": "5.9.3", + "resolved": "https://registry.npmjs.org/typescript/-/typescript-5.9.3.tgz", + "integrity": "sha512-jl1vZzPDinLr9eUt3J/t7V6FgNEw9QjvBPdysz9KfQDD41fQrC2Y4vKQdiaUpFT4bXlb1RHhLpp8wtm6M5TgSw==", "dev": true, - "requires": { - "@types/istanbul-lib-coverage": "^2.0.1", - "convert-source-map": "^1.6.0", - "source-map": "^0.7.3" + "license": "Apache-2.0", + "peer": true, + "bin": { + "tsc": "bin/tsc", + "tsserver": "bin/tsserver" }, - "dependencies": { - "source-map": { - "version": "0.7.3", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.7.3.tgz", - "integrity": "sha512-CkCj6giN3S+n9qrYiBTX5gystlENnRW5jZeNLHpe6aue+SrHcG5VYwujhW9s4dY31mEGsxBDrHR6oI69fTXsaQ==", - "dev": true - } + "engines": { + "node": ">=14.17" } }, - "vscode-textmate": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/vscode-textmate/-/vscode-textmate-5.2.0.tgz", - "integrity": "sha512-Uw5ooOQxRASHgu6C7GVvUxisKXfSgW4oFlO+aa+PAkgmH89O3CXxEEzNRNtHSqtXFTl0nAC1uYj0GMSH27uwtQ==", - "dev": true + "node_modules/uc.micro": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/uc.micro/-/uc.micro-2.1.0.tgz", + "integrity": "sha512-ARDJmphmdvUk6Glw7y9DQ2bFkKBHwQHLi2lsaH6PPmz/Ka9sFOBsBluozhDltWmnv9u/cF6Rt87znRTPV+yp/A==", + "dev": true, + "license": "MIT" }, - "w3c-hr-time": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/w3c-hr-time/-/w3c-hr-time-1.0.2.tgz", - "integrity": "sha512-z8P5DvDNjKDoFIHK7q8r8lackT6l+jo/Ye3HOle7l9nICP9lf1Ci25fy9vHd0JOWewkIFzXIEig3TdKT7JQ5fQ==", + "node_modules/uglify-js": { + "version": "3.19.3", + "resolved": "https://registry.npmjs.org/uglify-js/-/uglify-js-3.19.3.tgz", + "integrity": "sha512-v3Xu+yuwBXisp6QYTcH4UbH+xYJXqnq2m/LtQVWKWzYc1iehYnLixoQDN9FH6/j9/oybfd6W9Ghwkl8+UMKTKQ==", "dev": true, - "requires": { - "browser-process-hrtime": "^1.0.0" + "license": "BSD-2-Clause", + "optional": true, + "bin": { + "uglifyjs": "bin/uglifyjs" + }, + "engines": { + "node": ">=0.8.0" } }, - "w3c-xmlserializer": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/w3c-xmlserializer/-/w3c-xmlserializer-2.0.0.tgz", - "integrity": "sha512-4tzD0mF8iSiMiNs30BiLO3EpfGLZUT2MSX/G+o7ZywDzliWQ3OPtTZ0PTC3B3ca1UAf4cJMHB+2Bf56EriJuRA==", + "node_modules/undici-types": { + "version": "7.16.0", + "resolved": "https://registry.npmjs.org/undici-types/-/undici-types-7.16.0.tgz", + "integrity": "sha512-Zz+aZWSj8LE6zoxD+xrjh4VfkIG8Ya6LvYkZqtUQGJPZjYl53ypCaUwWqo7eI0x66KBGeRo+mlBEkMSeSZ38Nw==", "dev": true, - "requires": { - "xml-name-validator": "^3.0.0" - } + "license": "MIT" }, - "walker": { - "version": "1.0.7", - "resolved": "https://registry.npmjs.org/walker/-/walker-1.0.7.tgz", - "integrity": "sha1-L3+bj9ENZ3JisYqITijRlhjgKPs=", + "node_modules/unrs-resolver": { + "version": "1.11.1", + "resolved": "https://registry.npmjs.org/unrs-resolver/-/unrs-resolver-1.11.1.tgz", + "integrity": "sha512-bSjt9pjaEBnNiGgc9rUiHGKv5l4/TGzDmYw3RhnkJGtLhbnnA/5qJj7x3dNDCRx/PJxu774LlH8lCOlB4hEfKg==", + "dev": true, + "hasInstallScript": true, + "license": "MIT", + "dependencies": { + "napi-postinstall": "^0.3.0" + }, + "funding": { + "url": "https://opencollective.com/unrs-resolver" + }, + "optionalDependencies": { + "@unrs/resolver-binding-android-arm-eabi": "1.11.1", + "@unrs/resolver-binding-android-arm64": "1.11.1", + "@unrs/resolver-binding-darwin-arm64": "1.11.1", + "@unrs/resolver-binding-darwin-x64": "1.11.1", + "@unrs/resolver-binding-freebsd-x64": "1.11.1", + "@unrs/resolver-binding-linux-arm-gnueabihf": "1.11.1", + "@unrs/resolver-binding-linux-arm-musleabihf": "1.11.1", + "@unrs/resolver-binding-linux-arm64-gnu": "1.11.1", + "@unrs/resolver-binding-linux-arm64-musl": "1.11.1", + "@unrs/resolver-binding-linux-ppc64-gnu": "1.11.1", + "@unrs/resolver-binding-linux-riscv64-gnu": "1.11.1", + "@unrs/resolver-binding-linux-riscv64-musl": "1.11.1", + "@unrs/resolver-binding-linux-s390x-gnu": "1.11.1", + "@unrs/resolver-binding-linux-x64-gnu": "1.11.1", + "@unrs/resolver-binding-linux-x64-musl": "1.11.1", + "@unrs/resolver-binding-wasm32-wasi": "1.11.1", + "@unrs/resolver-binding-win32-arm64-msvc": "1.11.1", + "@unrs/resolver-binding-win32-ia32-msvc": "1.11.1", + "@unrs/resolver-binding-win32-x64-msvc": "1.11.1" + } + }, + "node_modules/update-browserslist-db": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/update-browserslist-db/-/update-browserslist-db-1.2.3.tgz", + "integrity": "sha512-Js0m9cx+qOgDxo0eMiFGEueWztz+d4+M3rGlmKPT+T4IS/jP4ylw3Nwpu6cpTTP8R1MAC1kF4VbdLt3ARf209w==", "dev": true, - "requires": { - "makeerror": "1.0.x" + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/browserslist" + }, + { + "type": "tidelift", + "url": "https://tidelift.com/funding/github/npm/browserslist" + }, + { + "type": "github", + "url": "https://github.com/sponsors/ai" + } + ], + "license": "MIT", + "dependencies": { + "escalade": "^3.2.0", + "picocolors": "^1.1.1" + }, + "bin": { + "update-browserslist-db": "cli.js" + }, + "peerDependencies": { + "browserslist": ">= 4.21.0" } }, - "webidl-conversions": { - "version": "6.1.0", - "resolved": "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-6.1.0.tgz", - "integrity": "sha512-qBIvFLGiBpLjfwmYAaHPXsn+ho5xZnGvyGvsarywGNc8VyQJUMHJ8OBKGGrPER0okBeMDaan4mNBlgBROxuI8w==", - "dev": true - }, - "whatwg-encoding": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/whatwg-encoding/-/whatwg-encoding-1.0.5.tgz", - "integrity": "sha512-b5lim54JOPN9HtzvK9HFXvBma/rnfFeqsic0hSpjtDbVxR3dJKLc+KB4V6GgiGOvl7CY/KNh8rxSo9DKQrnUEw==", + "node_modules/v8-to-istanbul": { + "version": "9.3.0", + "resolved": "https://registry.npmjs.org/v8-to-istanbul/-/v8-to-istanbul-9.3.0.tgz", + "integrity": "sha512-kiGUalWN+rgBJ/1OHZsBtU4rXZOfj/7rKQxULKlIzwzQSvMJUUNgPwJEEh7gU6xEVxC0ahoOBvN2YI8GH6FNgA==", "dev": true, - "requires": { - "iconv-lite": "0.4.24" + "license": "ISC", + "dependencies": { + "@jridgewell/trace-mapping": "^0.3.12", + "@types/istanbul-lib-coverage": "^2.0.1", + "convert-source-map": "^2.0.0" + }, + "engines": { + "node": ">=10.12.0" } }, - "whatwg-mimetype": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/whatwg-mimetype/-/whatwg-mimetype-2.3.0.tgz", - "integrity": "sha512-M4yMwr6mAnQz76TbJm914+gPpB/nCwvZbJU28cUD6dR004SAxDLOOSUaB1JDRqLtaOV/vi0IC5lEAGFgrjGv/g==", - "dev": true - }, - "whatwg-url": { - "version": "8.7.0", - "resolved": "https://registry.npmjs.org/whatwg-url/-/whatwg-url-8.7.0.tgz", - "integrity": "sha512-gAojqb/m9Q8a5IV96E3fHJM70AzCkgt4uXYX2O7EmuyOnLrViCQlsEBmF9UQIu3/aeAIp2U17rtbpZWNntQqdg==", + "node_modules/walker": { + "version": "1.0.8", + "resolved": "https://registry.npmjs.org/walker/-/walker-1.0.8.tgz", + "integrity": "sha512-ts/8E8l5b7kY0vlWLewOkDXMmPdLcVV4GmOQLyxuSswIJsweeFZtAsMF7k1Nszz+TYBQrlYRmzOnr398y1JemQ==", "dev": true, - "requires": { - "lodash": "^4.7.0", - "tr46": "^2.1.0", - "webidl-conversions": "^6.1.0" + "license": "Apache-2.0", + "dependencies": { + "makeerror": "1.0.12" } }, - "which": { + "node_modules/which": { "version": "2.0.2", "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz", "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==", "dev": true, - "requires": { + "license": "ISC", + "dependencies": { "isexe": "^2.0.0" + }, + "bin": { + "node-which": "bin/node-which" + }, + "engines": { + "node": ">= 8" } }, - "word-wrap": { - "version": "1.2.3", - "resolved": "https://registry.npmjs.org/word-wrap/-/word-wrap-1.2.3.tgz", - "integrity": "sha512-Hz/mrNwitNRh/HUAtM/VT/5VH+ygD6DV7mYKZAtHOrbs8U7lvPS6xf7EJKMF0uW1KJCl0H701g3ZGus+muE5vQ==", - "dev": true + "node_modules/wordwrap": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/wordwrap/-/wordwrap-1.0.0.tgz", + "integrity": "sha512-gvVzJFlPycKc5dZN4yPkP8w7Dc37BtP1yczEneOb4uq34pXZcvrtRTmWV8W+Ume+XCxKgbjM+nevkyFPMybd4Q==", + "dev": true, + "license": "MIT" + }, + "node_modules/wrap-ansi": { + "version": "8.1.0", + "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-8.1.0.tgz", + "integrity": "sha512-si7QWI6zUMq56bESFvagtmzMdGOtoxfR+Sez11Mobfc7tm+VkUckk9bW2UeffTGVUbOksxmSw0AA2gs8g71NCQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "ansi-styles": "^6.1.0", + "string-width": "^5.0.1", + "strip-ansi": "^7.0.1" + }, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/chalk/wrap-ansi?sponsor=1" + } }, - "wrap-ansi": { + "node_modules/wrap-ansi-cjs": { + "name": "wrap-ansi", "version": "7.0.0", "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-7.0.0.tgz", "integrity": "sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==", "dev": true, - "requires": { + "license": "MIT", + "dependencies": { "ansi-styles": "^4.0.0", "string-width": "^4.1.0", "strip-ansi": "^6.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/wrap-ansi?sponsor=1" } }, - "wrappy": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", - "integrity": "sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8=", - "dev": true + "node_modules/wrap-ansi-cjs/node_modules/ansi-regex": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", + "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + } }, - "write-file-atomic": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/write-file-atomic/-/write-file-atomic-3.0.3.tgz", - "integrity": "sha512-AvHcyZ5JnSfq3ioSyjrBkH9yW4m7Ayk8/9My/DD9onKeu/94fwrMocemO2QAJFAlnnDN+ZDS+ZjAR5ua1/PV/Q==", + "node_modules/wrap-ansi-cjs/node_modules/emoji-regex": { + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", + "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==", "dev": true, - "requires": { - "imurmurhash": "^0.1.4", - "is-typedarray": "^1.0.0", - "signal-exit": "^3.0.2", - "typedarray-to-buffer": "^3.1.5" + "license": "MIT" + }, + "node_modules/wrap-ansi-cjs/node_modules/string-width": { + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", + "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", + "dev": true, + "license": "MIT", + "dependencies": { + "emoji-regex": "^8.0.0", + "is-fullwidth-code-point": "^3.0.0", + "strip-ansi": "^6.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/wrap-ansi-cjs/node_modules/strip-ansi": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", + "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", + "dev": true, + "license": "MIT", + "dependencies": { + "ansi-regex": "^5.0.1" + }, + "engines": { + "node": ">=8" } }, - "ws": { - "version": "7.5.5", - "resolved": "https://registry.npmjs.org/ws/-/ws-7.5.5.tgz", - "integrity": "sha512-BAkMFcAzl8as1G/hArkxOxq3G7pjUqQ3gzYbLL0/5zNkph70e+lCoxBGnm6AW1+/aiNeV4fnKqZ8m4GZewmH2w==", + "node_modules/wrap-ansi/node_modules/ansi-styles": { + "version": "6.2.3", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-6.2.3.tgz", + "integrity": "sha512-4Dj6M28JB+oAH8kFkTLUo+a2jwOFkuqb3yucU0CANcRRUbxS0cP0nZYCGjcc3BNXwRIsUVmDGgzawme7zvJHvg==", "dev": true, - "requires": {} + "license": "MIT", + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } }, - "xml-name-validator": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/xml-name-validator/-/xml-name-validator-3.0.0.tgz", - "integrity": "sha512-A5CUptxDsvxKJEU3yO6DuWBSJz/qizqzJKOMIfUJHETbBw/sFaDxgd6fxm1ewUaM0jZ444Fc5vC5ROYurg/4Pw==", - "dev": true + "node_modules/wrappy": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", + "integrity": "sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ==", + "dev": true, + "license": "ISC" }, - "xmlchars": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/xmlchars/-/xmlchars-2.2.0.tgz", - "integrity": "sha512-JZnDKK8B0RCDw84FNdDAIpZK+JuJw+s7Lz8nksI7SIuU3UXJJslUthsi+uWBUYOwPFwW7W7PRLRfUKpxjtjFCw==", - "dev": true + "node_modules/write-file-atomic": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/write-file-atomic/-/write-file-atomic-5.0.1.tgz", + "integrity": "sha512-+QU2zd6OTD8XWIJCbffaiQeH9U73qIqafo1x6V1snCWYGJf6cVE0cDR4D8xRzcEnfI21IFrUPzPGtcPf8AC+Rw==", + "dev": true, + "license": "ISC", + "dependencies": { + "imurmurhash": "^0.1.4", + "signal-exit": "^4.0.1" + }, + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } }, - "y18n": { + "node_modules/y18n": { "version": "5.0.8", "resolved": "https://registry.npmjs.org/y18n/-/y18n-5.0.8.tgz", "integrity": "sha512-0pfFzegeDWJHJIAmTLRP2DwHjdF5s7jo9tuztdQxAhINCdvS+3nGINqPd00AphqJR/0LhANUS6/+7SCb98YOfA==", - "dev": true + "dev": true, + "license": "ISC", + "engines": { + "node": ">=10" + } }, - "yallist": { + "node_modules/yallist": { "version": "3.1.1", "resolved": "https://registry.npmjs.org/yallist/-/yallist-3.1.1.tgz", "integrity": "sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g==", - "dev": true + "dev": true, + "license": "ISC" }, - "yargs": { - "version": "16.2.0", - "resolved": "https://registry.npmjs.org/yargs/-/yargs-16.2.0.tgz", - "integrity": "sha512-D1mvvtDG0L5ft/jGWkLpG1+m0eQxOfaBvTNELraWj22wSVUMWxZUvYgJYcKh6jGGIkJFhH4IZPQhR4TKpc8mBw==", + "node_modules/yaml": { + "version": "2.8.2", + "resolved": "https://registry.npmjs.org/yaml/-/yaml-2.8.2.tgz", + "integrity": "sha512-mplynKqc1C2hTVYxd0PU2xQAc22TI1vShAYGksCCfxbn/dFwnHTNi1bvYsBTkhdUNtGIf5xNOg938rrSSYvS9A==", + "dev": true, + "license": "ISC", + "bin": { + "yaml": "bin.mjs" + }, + "engines": { + "node": ">= 14.6" + }, + "funding": { + "url": "https://github.com/sponsors/eemeli" + } + }, + "node_modules/yargs": { + "version": "17.7.2", + "resolved": "https://registry.npmjs.org/yargs/-/yargs-17.7.2.tgz", + "integrity": "sha512-7dSzzRQ++CKnNI/krKnYRV7JKKPUXMEh61soaHKg9mrWEhzFWhFnxPxGl+69cD1Ou63C13NUPCnmIcrvqCuM6w==", "dev": true, - "requires": { - "cliui": "^7.0.2", + "license": "MIT", + "dependencies": { + "cliui": "^8.0.1", "escalade": "^3.1.1", "get-caller-file": "^2.0.5", "require-directory": "^2.1.1", - "string-width": "^4.2.0", + "string-width": "^4.2.3", "y18n": "^5.0.5", - "yargs-parser": "^20.2.2" + "yargs-parser": "^21.1.1" + }, + "engines": { + "node": ">=12" + } + }, + "node_modules/yargs-parser": { + "version": "21.1.1", + "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-21.1.1.tgz", + "integrity": "sha512-tVpsJW7DdjecAiFpbIB1e3qxIQsE6NoPc5/eTdrbbIC4h0LVsWhnoa3g+m2HclBIujHzsxZ4VJVA+GUuc2/LBw==", + "dev": true, + "license": "ISC", + "engines": { + "node": ">=12" + } + }, + "node_modules/yargs/node_modules/ansi-regex": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", + "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/yargs/node_modules/emoji-regex": { + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", + "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==", + "dev": true, + "license": "MIT" + }, + "node_modules/yargs/node_modules/string-width": { + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", + "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", + "dev": true, + "license": "MIT", + "dependencies": { + "emoji-regex": "^8.0.0", + "is-fullwidth-code-point": "^3.0.0", + "strip-ansi": "^6.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/yargs/node_modules/strip-ansi": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", + "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", + "dev": true, + "license": "MIT", + "dependencies": { + "ansi-regex": "^5.0.1" + }, + "engines": { + "node": ">=8" } }, - "yargs-parser": { - "version": "20.2.9", - "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-20.2.9.tgz", - "integrity": "sha512-y11nGElTIV+CT3Zv9t7VKl+Q3hTQoT9a1Qzezhhl6Rp21gJ/IVTW7Z3y9EWXhuUBC2Shnf+DX0antecpAwSP8w==", - "dev": true + "node_modules/yocto-queue": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/yocto-queue/-/yocto-queue-0.1.0.tgz", + "integrity": "sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } } } } diff --git a/package.json b/package.json index 3d2c325..1af09d2 100644 --- a/package.json +++ b/package.json @@ -18,6 +18,9 @@ "files": [ "dist" ], + "engines": { + "node": ">=18.0.0" + }, "publishConfig": { "access": "public" }, @@ -29,28 +32,34 @@ "url": "https://github.com/lopatnov/jsToString/issues" }, "scripts": { - "build": "tsc --module commonjs && rollup -c rollup.config.ts && typedoc --out docs --entryPointStrategy expand src", + "build": "tsc --module commonjs && rollup -c rollup.config.ts --configPlugin @rollup/plugin-typescript && typedoc --out docs --entryPointStrategy expand src", "configure-npm": "node ./set-registry.js -s https://registry.npmjs.org", "configure-gpr": "node ./set-registry.js -s https://npm.pkg.github.com", - "test": "jest" + "test": "jest", + "lint": "biome lint src test", + "lint:fix": "biome lint --write src test", + "format": "biome format --write src test", + "format:check": "biome format src test", + "check": "biome check src test" }, "devDependencies": { - "@lopatnov/rollup-plugin-uglify": "^2.1.1", - "@types/jest": "^27.0.2", - "@types/node": "^16.10.2", - "jest": "^27.2.4", - "jest-config": "^27.2.4", + "@biomejs/biome": "^2.3.14", + "@lopatnov/rollup-plugin-uglify": "^3.0.0", + "@rollup/plugin-commonjs": "^29.0.0", + "@rollup/plugin-json": "^6.1.0", + "@rollup/plugin-node-resolve": "^16.0.0", + "@rollup/plugin-typescript": "^12.1.2", + "@types/jest": "^30.0.0", + "@types/node": "^25.2.3", + "jest": "^30.0.0", + "jest-config": "^30.0.0", "lodash.camelcase": "^4.3.0", - "rollup": "^2.58.0", - "rollup-plugin-commonjs": "^10.1.0", - "rollup-plugin-json": "^4.0.0", - "rollup-plugin-node-resolve": "^5.2.0", - "rollup-plugin-sourcemaps": "^0.6.3", - "rollup-plugin-typescript2": "^0.30.0", - "terser": "^5.9.0", - "ts-jest": "^27.0.5", - "typedoc": "^0.22.5", - "typescript": "^4.4.3" + "rollup": "^4.41.0", + "terser": "^5.39.0", + "ts-jest": "^29.3.4", + "tslib": "^2.8.1", + "typedoc": "^0.28.5", + "typescript": "^5.8.3" }, "dependencies": { "@lopatnov/get-internal-type": "^1.5.7" diff --git a/rollup.config.ts b/rollup.config.ts index 9ec07b7..8238064 100644 --- a/rollup.config.ts +++ b/rollup.config.ts @@ -1,11 +1,12 @@ -import resolve from 'rollup-plugin-node-resolve'; -import commonjs from 'rollup-plugin-commonjs'; -import sourceMaps from 'rollup-plugin-sourcemaps'; +import resolve from '@rollup/plugin-node-resolve'; +import commonjs from '@rollup/plugin-commonjs'; import camelCase from 'lodash.camelcase'; -import typescript from 'rollup-plugin-typescript2'; -import json from 'rollup-plugin-json'; +import typescript from '@rollup/plugin-typescript'; +import json from '@rollup/plugin-json'; import uglify from "@lopatnov/rollup-plugin-uglify"; +import { createRequire } from 'module'; +const require = createRequire(import.meta.url); const pkg = require('./package.json'); const libraryName = 'JavaScriptToString'; @@ -37,8 +38,11 @@ export default { json(), // Compile TypeScript files typescript({ - typescript: require('typescript'), - useTsconfigDeclarationDir: true + tsconfig: './tsconfig.json', + // Override tsconfig settings for rollup bundling + declaration: false, + declarationDir: undefined, + outDir: undefined }), // Allow bundling cjs modules (unlike webpack, rollup doesn't understand cjs) commonjs(), @@ -46,10 +50,8 @@ export default { // which external modules to include in the bundle // https://github.com/rollup/rollup-plugin-node-resolve#usage resolve(), - // Resolve source maps to the original source - sourceMaps(), uglify({ sourceMap: true }), ], -}; \ No newline at end of file +}; diff --git a/src/javascripttostring.ts b/src/javascripttostring.ts index 4835b41..95b4e58 100644 --- a/src/javascripttostring.ts +++ b/src/javascripttostring.ts @@ -1,495 +1,441 @@ -import getObjectType from "@lopatnov/get-internal-type"; - -export interface IJ2SOptions { - includeFunctionProperties?: boolean; // default true - includeFunctionPrototype?: boolean; // default true - includeBuffers?: boolean; // default true - nestedObjectsAmount?: number; // default Number.POSITIVE_INFINITY - nestedArraysAmount?: number; // default Number.POSITIVE_INFINITY - nestedFunctionsAmount?: number; // default Number.POSITIVE_INFINITY -} - -interface RefInstance { - historyRef: Array, - source: any -} - -var refs: RefInstance[] = []; -var counter = 0; - -interface IJ2SHistory { - references: any[]; - nestedObjectsLeft: number; - nestedArraysLeft: number; - nestedFunctionsLeft: number; -} - -function fillNativeFunctions(ext: any, obj: any, objName: string, fromPrototype: boolean = true) { - const arrNames = Object.getOwnPropertyNames(fromPrototype ? obj.prototype: obj); - const protoPath = fromPrototype ? '.prototype.' : '.'; - for (let name of arrNames) { - if (['caller', 'callee', 'arguments'].indexOf(name) < 0) { - ext[`${objName}${protoPath}${name}`] = fromPrototype ? obj.prototype[name as any] : obj[name as any]; - } - } -} - -const nativeFunctions = (function(){ - const functions: any = {}; - fillNativeFunctions(functions, Array, 'Array', false); - fillNativeFunctions(functions, Array, 'Array'); - fillNativeFunctions(functions, JSON, 'JSON', false); - fillNativeFunctions(functions, Object, 'Object', false); - fillNativeFunctions(functions, Object, 'Object'); - fillNativeFunctions(functions, Function, 'Function', false); - fillNativeFunctions(functions, Function, 'Function'); - fillNativeFunctions(functions, Date, 'Date', false); - fillNativeFunctions(functions, String, 'String'); - functions.Function = Function; - return functions; -}()); - -function numberToString(value: number): string { - if (Number.isNaN(value)) { - return "Number.NaN"; - } - switch (value) { - case Number.POSITIVE_INFINITY: - return "Number.POSITIVE_INFINITY"; - case Number.NEGATIVE_INFINITY: - return "Number.NEGATIVE_INFINITY"; - case Number.EPSILON: - return "Number.EPSILON"; - case Number.MAX_SAFE_INTEGER: - return "Number.MAX_SAFE_INTEGER"; - case Number.MIN_SAFE_INTEGER: - return "Number.MIN_SAFE_INTEGER"; - case Number.MAX_VALUE: - return "Number.MAX_VALUE"; - case Number.MIN_VALUE: - return "Number.MIN_VALUE"; - case Math.PI: - return "Math.PI"; - case Math.E: - return "Math.E"; - case Math.LN10: - return "Math.LN10"; - case Math.LN2: - return "Math.LN2"; - case Math.LOG10E: - return "Math.LOG10E"; - case Math.LOG2E: - return "Math.LOG2E"; - case Math.SQRT1_2: - return "Math.SQRT1_2"; - case Math.SQRT2: - return "Math.SQRT2"; - default: - return String(value); - } -} - -function symbolToString(value: any): string { - switch (value) { - case Symbol.asyncIterator: - case Symbol.hasInstance: - case Symbol.isConcatSpreadable: - case Symbol.iterator: - case Symbol.match: - case Symbol.prototype: - case Symbol.replace: - case Symbol.search: - case Symbol.species: - case Symbol.split: - case Symbol.toPrimitive: - case Symbol.toStringTag: - case Symbol.unscopables: - return value.description; - default: - let description = value.description ? `"${value.description}"` : ""; - return `Symbol(${description})`; - } -} - -function dateToString(value: Date): string { - if (isNaN(value.getTime())) { - return `new Date(${value.toString()})`; - } - return `new Date(${value.toISOString()})`; -} - -function errorToString(value: any): string { - let message = JSON.stringify(value.message), - fileName = JSON.stringify(value.fileName), - lineNumber = JSON.stringify(value.lineNumber); - return `new Error(${message}, ${fileName}, ${lineNumber})`; -} - -function arrayToString( - value: Array, - options: IJ2SOptions, - history: IJ2SHistory -): string { - if (value.length === 0) return "[]"; - let arrayValues = value.reduce( - (x1: any, x2: any, index: number) => { - history.references.push(index.toString()); - let str = !!x1 ? `${x1}, ` : ''; - str += stringifyRef(x2,options,history); - history.references.pop(); - return str; - }, ''); - return attachActions(getLocalRefs(value), `[${arrayValues}]`); -} - -function getLocalRefs(value: any) { - return refs.filter(x => x.source === value) -} - -function attachActions(localRefs: RefInstance[], result: string) { - if (localRefs.length > 0) { - counter = (counter++) % Number.MAX_SAFE_INTEGER; - const localName = `___j2s_${counter}`; - const actions = localRefs.reduce((x1: string, x2: RefInstance) => { - const action = converToAction(localName, x2); - refs.splice(refs.indexOf(x2), 1); - return x1 + action; - }, ''); - return `(function(){ var ${localName} = ${result}; ${actions} return ${localName}; }())`; - } - return result; -} - -function converToAction(localName: string, r: RefInstance) { - const destIndex = r.historyRef.indexOf(r.source); - if (destIndex < 0) { - return ''; - } - - const dest = r.historyRef.slice(destIndex); - let sourceObj: any; - let path = ''; - for (let i = 0; i < dest.length; i++) { - const destObj = dest[i]; - if (destObj === r.source) { - path = localName; - sourceObj = r.source; - } else if (typeof destObj === 'string') { - path += `['${destObj.replace(/'/gi, '\\\'')}']`; - sourceObj = sourceObj[destObj]; - } else if (destObj !== sourceObj) { - return ''; - } - } - - return `${path} = ${localName}; `; -} - -function typedArrayToString( - value: any, - options: IJ2SOptions, - history: IJ2SHistory -): string { - let arr = Array.from(value), - arrString = arrayToString(arr, options, history), - constructorName = value.constructor.name; - return `new ${constructorName}(${arrString})`; -} - -function setToString( - value: Set, - options: IJ2SOptions, - history: IJ2SHistory -): string { - let setValues: string[] = []; - - value.forEach((value1: any, value2: any, set: Set) => { - setValues.push(stringifyRef(value2, options, history)); - }); - - if (setValues.length === 0) return "new Set()"; - - return `new Set([${setValues.join(", ")}])`; -} - -function mapToString( - value: Map, - options: IJ2SOptions, - history: IJ2SHistory -): string { - let mapValues: string[] = []; - - value.forEach((indexValue: any, key: any) => { - mapValues.push( - `[${stringifyRef(key, options, history)}, ${stringifyRef( - indexValue, - options, - history - )}]` - ); - }); - - if (mapValues.length === 0) return "new Map()"; - - return `new Map([${mapValues.join(", ")}])`; -} - -function objectToString( - value: any, - options: IJ2SOptions, - history: IJ2SHistory -): string { - let objectValues = []; - - for (let propertyName in value) { - if (value.hasOwnProperty(propertyName)) { - history.references.push(propertyName); - let propertyValue = stringifyRef(value[propertyName], options, history); - history.references.pop(); - if (propertyValue !== "undefined") { - if (!(/^[a-zA-Z]+$/).test(propertyName)) { - propertyName = `"${propertyName}"`; - } - objectValues.push(`${propertyName}: ${propertyValue}`); - } - } - } - - if (objectValues.length === 0) return "{}"; - - return attachActions(getLocalRefs(value), `{\n${objectValues.join(",\n")}\n}`); -} - -function functionPropertiesToString( - functionName: string, - value: any, - options: IJ2SOptions, - history: IJ2SHistory -): string { - let result = ""; - for (let propertyName in value) { - if (value.hasOwnProperty(propertyName)) { - history.references.push(propertyName); - let propertyValue = stringifyRef(value[propertyName], options, history); - history.references.pop(); - if (propertyValue !== "undefined") { - result += `${functionName}.${propertyName} = ${propertyValue};\n`; - } - } - } - return result; -} - -function functionToString( - value: any, - options: IJ2SOptions, - history: IJ2SHistory -): string { - let functionName = value.name || "anonymousFunction"; - let functionObject = options.includeFunctionProperties - ? functionPropertiesToString(functionName, value, options, history) - : ""; - history.references.push('prototype'); - let functionPrototype = options.includeFunctionPrototype - ? functionPropertiesToString( - `${functionName}.prototype`, - value.prototype, - options, - history - ) - : ""; - history.references.pop(); - - let functionStr = String(value); - if (functionStr.indexOf('[native code]') > -1 && functionStr.length < 100) { - for (const nfName in nativeFunctions) { - if (nativeFunctions[nfName] === value) { - functionStr = nfName - } - } - } - if (!functionObject && !functionPrototype) { - return functionStr; - } - - return attachActions(getLocalRefs(value), `(function(){\n var ${functionName} = ${String( - functionStr - )};\n ${functionObject}\n ${functionPrototype}\n return ${functionName};\n}())`); -} - -function arrayBufferToString( - value: ArrayBuffer, - options: IJ2SOptions, - history: IJ2SHistory -): string { - if (!options.includeBuffers) return "undefined"; - let str = typedArrayToString(new Int8Array(value), options, history); - return `(${str}).buffer`; -} - -function dataViewToString( - value: DataView, - options: IJ2SOptions, - history: IJ2SHistory -): string { - if (!options.includeBuffers) return "undefined"; - let bufString = arrayBufferToString(value.buffer, options, history); - return `new DataView(${bufString}, ${value.byteOffset}, ${value.byteLength})`; -} - -/** - * Converts to string the value, if it wasn't before - * @param value the value, that converts to string - * @param references the references to stringified objects - */ -function stringify( - value: any, - options: IJ2SOptions, - history: IJ2SHistory -): string { - switch (getObjectType(value)) { - case "undefined": - return "undefined"; - case "null": - return "null"; - case "boolean": - return String(value); - case "regexp": - return String(value); - case "string": - return JSON.stringify(value); - case "number": - return numberToString(value); - case "bigint": - return `BigInt(${value})`; - case "symbol": - return symbolToString(value); - case "date": - return dateToString(value); - case "error": - return errorToString(value); - case "array": - return arrayToString(value, options, history); - case "typedarray": - return typedArrayToString(value, options, history); - case "set": - return setToString(value, options, history); - case "map": - return mapToString(value, options, history); - case "object": - return objectToString(value, options, history); - case "function": - case "generatorfunction": - return functionToString(value, options, history); - case "arraybuffer": - return arrayBufferToString(value, options, history); - case "dataview": - return dataViewToString(value, options, history); - case "promise": - case "generator": - return "undefined"; - default: - return JSON.stringify(value); - } -} - -/** - * Stringify the value, if it wasn't before - * @param value the value, that converts to string - * @param references the references to stringified objects - */ -function stringifyRef( - value: any, - options: IJ2SOptions, - history: IJ2SHistory -): string { - const index = history.references.indexOf(value); - if (index < 0 || typeof(history.references[index]) === 'string') { - let objectType = getObjectType(value); - let referencesLength = history.references.length; - history.references.push(value); - switch (objectType) { - case "object": - if (history.nestedObjectsLeft <= 0) return "undefined"; - history.nestedObjectsLeft--; - break; - case "array": - case "typedarray": - if (history.nestedArraysLeft <= 0) return "undefined"; - history.nestedArraysLeft--; - break; - case "function": - case "generatorfunction": - if (history.nestedFunctionsLeft <= 0) return "undefined"; - history.nestedFunctionsLeft--; - break; - } - - let refString = stringify(value, options, history); - - history.references.splice(referencesLength); - switch (objectType) { - case "object": - history.nestedObjectsLeft++; - break; - case "array": - case "typedarray": - history.nestedArraysLeft++; - break; - case "function": - case "generatorfunction": - history.nestedFunctionsLeft++; - break; - } - - return refString; - } else { - refs.push({ - historyRef: history.references.slice(0), - source: value - }) - } - return "null"; -} - -/** - * Converts JavaScript value to string - * @param value the value of any type - * @param options [optional] The options of conversion - */ -function javaScriptToString(value: any, options?: IJ2SOptions): string { - options = options || {}; - let concreteOptions: IJ2SOptions = { - includeFunctionProperties: - options.includeFunctionProperties === undefined - ? true - : options.includeFunctionProperties, - includeFunctionPrototype: - options.includeFunctionPrototype === undefined - ? true - : options.includeFunctionPrototype, - includeBuffers: - options.includeBuffers === undefined ? true : options.includeBuffers, - nestedObjectsAmount: - options.nestedObjectsAmount === undefined - ? Number.POSITIVE_INFINITY - : options.nestedObjectsAmount, - nestedArraysAmount: - options.nestedArraysAmount === undefined - ? Number.POSITIVE_INFINITY - : options.nestedArraysAmount, - nestedFunctionsAmount: - options.nestedFunctionsAmount === undefined - ? Number.POSITIVE_INFINITY - : options.nestedFunctionsAmount - }; - - return stringify(value, concreteOptions, { - references: [value], - nestedObjectsLeft: concreteOptions.nestedObjectsAmount as number, - nestedArraysLeft: concreteOptions.nestedArraysAmount as number, - nestedFunctionsLeft: concreteOptions.nestedFunctionsAmount as number - }); -} - -export default javaScriptToString; +import getObjectType from "@lopatnov/get-internal-type"; + +export interface IJ2SOptions { + includeFunctionProperties?: boolean; // default true + includeFunctionPrototype?: boolean; // default true + includeBuffers?: boolean; // default true + nestedObjectsAmount?: number; // default Number.POSITIVE_INFINITY + nestedArraysAmount?: number; // default Number.POSITIVE_INFINITY + nestedFunctionsAmount?: number; // default Number.POSITIVE_INFINITY +} + +interface RefInstance { + historyRef: Array; + source: any; +} + +var refs: RefInstance[] = []; +var counter = 0; + +interface IJ2SHistory { + references: any[]; + nestedObjectsLeft: number; + nestedArraysLeft: number; + nestedFunctionsLeft: number; +} + +function fillNativeFunctions(ext: any, obj: any, objName: string, fromPrototype = true) { + const arrNames = Object.getOwnPropertyNames(fromPrototype ? obj.prototype : obj); + const protoPath = fromPrototype ? ".prototype." : "."; + for (const name of arrNames) { + if (["caller", "callee", "arguments"].indexOf(name) < 0) { + ext[`${objName}${protoPath}${name}`] = fromPrototype ? obj.prototype[name as any] : obj[name as any]; + } + } +} + +const nativeFunctions = (() => { + const functions: any = {}; + fillNativeFunctions(functions, Array, "Array", false); + fillNativeFunctions(functions, Array, "Array"); + fillNativeFunctions(functions, JSON, "JSON", false); + fillNativeFunctions(functions, Object, "Object", false); + fillNativeFunctions(functions, Object, "Object"); + fillNativeFunctions(functions, Function, "Function", false); + fillNativeFunctions(functions, Function, "Function"); + fillNativeFunctions(functions, Date, "Date", false); + fillNativeFunctions(functions, String, "String"); + functions.Function = Function; + return functions; +})(); + +function numberToString(value: number): string { + if (Number.isNaN(value)) { + return "Number.NaN"; + } + switch (value) { + case Number.POSITIVE_INFINITY: + return "Number.POSITIVE_INFINITY"; + case Number.NEGATIVE_INFINITY: + return "Number.NEGATIVE_INFINITY"; + case Number.EPSILON: + return "Number.EPSILON"; + case Number.MAX_SAFE_INTEGER: + return "Number.MAX_SAFE_INTEGER"; + case Number.MIN_SAFE_INTEGER: + return "Number.MIN_SAFE_INTEGER"; + case Number.MAX_VALUE: + return "Number.MAX_VALUE"; + case Number.MIN_VALUE: + return "Number.MIN_VALUE"; + case Math.PI: + return "Math.PI"; + case Math.E: + return "Math.E"; + case Math.LN10: + return "Math.LN10"; + case Math.LN2: + return "Math.LN2"; + case Math.LOG10E: + return "Math.LOG10E"; + case Math.LOG2E: + return "Math.LOG2E"; + case Math.SQRT1_2: + return "Math.SQRT1_2"; + case Math.SQRT2: + return "Math.SQRT2"; + default: + return String(value); + } +} + +function symbolToString(value: any): string { + switch (value) { + case Symbol.asyncIterator: + case Symbol.hasInstance: + case Symbol.isConcatSpreadable: + case Symbol.iterator: + case Symbol.match: + case Symbol.prototype: + case Symbol.replace: + case Symbol.search: + case Symbol.species: + case Symbol.split: + case Symbol.toPrimitive: + case Symbol.toStringTag: + case Symbol.unscopables: + return value.description; + default: + const description = value.description ? `"${value.description}"` : ""; + return `Symbol(${description})`; + } +} + +function dateToString(value: Date): string { + if (isNaN(value.getTime())) { + return `new Date(${value.toString()})`; + } + return `new Date(${value.toISOString()})`; +} + +function errorToString(value: any): string { + const message = JSON.stringify(value.message), + fileName = JSON.stringify(value.fileName), + lineNumber = JSON.stringify(value.lineNumber); + return `new Error(${message}, ${fileName}, ${lineNumber})`; +} + +function arrayToString(value: Array, options: IJ2SOptions, history: IJ2SHistory): string { + if (value.length === 0) return "[]"; + const arrayValues = value.reduce((x1: any, x2: any, index: number) => { + history.references.push(index.toString()); + let str = !!x1 ? `${x1}, ` : ""; + str += stringifyRef(x2, options, history); + history.references.pop(); + return str; + }, ""); + return attachActions(getLocalRefs(value), `[${arrayValues}]`); +} + +function getLocalRefs(value: any) { + return refs.filter((x) => x.source === value); +} + +function attachActions(localRefs: RefInstance[], result: string) { + if (localRefs.length > 0) { + counter = counter++ % Number.MAX_SAFE_INTEGER; + const localName = `___j2s_${counter}`; + const actions = localRefs.reduce((x1: string, x2: RefInstance) => { + const action = converToAction(localName, x2); + refs.splice(refs.indexOf(x2), 1); + return x1 + action; + }, ""); + return `(function(){ var ${localName} = ${result}; ${actions} return ${localName}; }())`; + } + return result; +} + +function converToAction(localName: string, r: RefInstance) { + const destIndex = r.historyRef.indexOf(r.source); + if (destIndex < 0) { + return ""; + } + + const dest = r.historyRef.slice(destIndex); + let sourceObj: any; + let path = ""; + for (let i = 0; i < dest.length; i++) { + const destObj = dest[i]; + if (destObj === r.source) { + path = localName; + sourceObj = r.source; + } else if (typeof destObj === "string") { + path += `['${destObj.replace(/'/gi, "\\'")}']`; + sourceObj = sourceObj[destObj]; + } else if (destObj !== sourceObj) { + return ""; + } + } + + return `${path} = ${localName}; `; +} + +function typedArrayToString(value: any, options: IJ2SOptions, history: IJ2SHistory): string { + const arr = Array.from(value), + arrString = arrayToString(arr, options, history), + constructorName = value.constructor.name; + return `new ${constructorName}(${arrString})`; +} + +function setToString(value: Set, options: IJ2SOptions, history: IJ2SHistory): string { + const setValues: string[] = []; + + value.forEach((value1: any, value2: any, set: Set) => { + setValues.push(stringifyRef(value2, options, history)); + }); + + if (setValues.length === 0) return "new Set()"; + + return `new Set([${setValues.join(", ")}])`; +} + +function mapToString(value: Map, options: IJ2SOptions, history: IJ2SHistory): string { + const mapValues: string[] = []; + + value.forEach((indexValue: any, key: any) => { + mapValues.push(`[${stringifyRef(key, options, history)}, ${stringifyRef(indexValue, options, history)}]`); + }); + + if (mapValues.length === 0) return "new Map()"; + + return `new Map([${mapValues.join(", ")}])`; +} + +function objectToString(value: any, options: IJ2SOptions, history: IJ2SHistory): string { + const objectValues = []; + + for (let propertyName in value) { + if (value.hasOwnProperty(propertyName)) { + history.references.push(propertyName); + const propertyValue = stringifyRef(value[propertyName], options, history); + history.references.pop(); + if (propertyValue !== "undefined") { + if (!/^[a-zA-Z]+$/.test(propertyName)) { + propertyName = `"${propertyName}"`; + } + objectValues.push(`${propertyName}: ${propertyValue}`); + } + } + } + + if (objectValues.length === 0) return "{}"; + + return attachActions(getLocalRefs(value), `{\n${objectValues.join(",\n")}\n}`); +} + +function functionPropertiesToString( + functionName: string, + value: any, + options: IJ2SOptions, + history: IJ2SHistory, +): string { + let result = ""; + for (const propertyName in value) { + if (value.hasOwnProperty(propertyName)) { + history.references.push(propertyName); + const propertyValue = stringifyRef(value[propertyName], options, history); + history.references.pop(); + if (propertyValue !== "undefined") { + result += `${functionName}.${propertyName} = ${propertyValue};\n`; + } + } + } + return result; +} + +function functionToString(value: any, options: IJ2SOptions, history: IJ2SHistory): string { + const functionName = value.name || "anonymousFunction"; + const functionObject = options.includeFunctionProperties + ? functionPropertiesToString(functionName, value, options, history) + : ""; + history.references.push("prototype"); + const functionPrototype = options.includeFunctionPrototype + ? functionPropertiesToString(`${functionName}.prototype`, value.prototype, options, history) + : ""; + history.references.pop(); + + let functionStr = String(value); + if (functionStr.indexOf("[native code]") > -1 && functionStr.length < 100) { + for (const nfName in nativeFunctions) { + if (nativeFunctions[nfName] === value) { + functionStr = nfName; + } + } + } + if (!functionObject && !functionPrototype) { + return functionStr; + } + + return attachActions( + getLocalRefs(value), + `(function(){\n var ${functionName} = ${String( + functionStr, + )};\n ${functionObject}\n ${functionPrototype}\n return ${functionName};\n}())`, + ); +} + +function arrayBufferToString(value: ArrayBuffer, options: IJ2SOptions, history: IJ2SHistory): string { + if (!options.includeBuffers) return "undefined"; + const str = typedArrayToString(new Int8Array(value), options, history); + return `(${str}).buffer`; +} + +function dataViewToString(value: DataView, options: IJ2SOptions, history: IJ2SHistory): string { + if (!options.includeBuffers) return "undefined"; + const bufString = arrayBufferToString(value.buffer as ArrayBuffer, options, history); + return `new DataView(${bufString}, ${value.byteOffset}, ${value.byteLength})`; +} + +/** + * Converts to string the value, if it wasn't before + * @param value the value, that converts to string + * @param references the references to stringified objects + */ +function stringify(value: any, options: IJ2SOptions, history: IJ2SHistory): string { + switch (getObjectType(value)) { + case "undefined": + return "undefined"; + case "null": + return "null"; + case "boolean": + return String(value); + case "regexp": + return String(value); + case "string": + return JSON.stringify(value); + case "number": + return numberToString(value); + case "bigint": + return `BigInt(${value})`; + case "symbol": + return symbolToString(value); + case "date": + return dateToString(value); + case "error": + return errorToString(value); + case "array": + return arrayToString(value, options, history); + case "typedarray": + return typedArrayToString(value, options, history); + case "set": + return setToString(value, options, history); + case "map": + return mapToString(value, options, history); + case "object": + return objectToString(value, options, history); + case "function": + case "generatorfunction": + return functionToString(value, options, history); + case "arraybuffer": + return arrayBufferToString(value, options, history); + case "dataview": + return dataViewToString(value, options, history); + case "promise": + case "generator": + return "undefined"; + default: + return JSON.stringify(value); + } +} + +/** + * Stringify the value, if it wasn't before + * @param value the value, that converts to string + * @param references the references to stringified objects + */ +function stringifyRef(value: any, options: IJ2SOptions, history: IJ2SHistory): string { + const index = history.references.indexOf(value); + if (index < 0 || typeof history.references[index] === "string") { + const objectType = getObjectType(value); + const referencesLength = history.references.length; + history.references.push(value); + switch (objectType) { + case "object": + if (history.nestedObjectsLeft <= 0) return "undefined"; + history.nestedObjectsLeft--; + break; + case "array": + case "typedarray": + if (history.nestedArraysLeft <= 0) return "undefined"; + history.nestedArraysLeft--; + break; + case "function": + case "generatorfunction": + if (history.nestedFunctionsLeft <= 0) return "undefined"; + history.nestedFunctionsLeft--; + break; + } + + const refString = stringify(value, options, history); + + history.references.splice(referencesLength); + switch (objectType) { + case "object": + history.nestedObjectsLeft++; + break; + case "array": + case "typedarray": + history.nestedArraysLeft++; + break; + case "function": + case "generatorfunction": + history.nestedFunctionsLeft++; + break; + } + + return refString; + } else { + refs.push({ + historyRef: history.references.slice(0), + source: value, + }); + } + return "null"; +} + +/** + * Converts JavaScript value to string + * @param value the value of any type + * @param options [optional] The options of conversion + */ +function javaScriptToString(value: any, options?: IJ2SOptions): string { + options = options || {}; + const concreteOptions: IJ2SOptions = { + includeFunctionProperties: + options.includeFunctionProperties === undefined ? true : options.includeFunctionProperties, + includeFunctionPrototype: options.includeFunctionPrototype === undefined ? true : options.includeFunctionPrototype, + includeBuffers: options.includeBuffers === undefined ? true : options.includeBuffers, + nestedObjectsAmount: + options.nestedObjectsAmount === undefined ? Number.POSITIVE_INFINITY : options.nestedObjectsAmount, + nestedArraysAmount: + options.nestedArraysAmount === undefined ? Number.POSITIVE_INFINITY : options.nestedArraysAmount, + nestedFunctionsAmount: + options.nestedFunctionsAmount === undefined ? Number.POSITIVE_INFINITY : options.nestedFunctionsAmount, + }; + + // Clear global state before conversion to ensure thread safety + refs = []; + counter = 0; + + const result = stringify(value, concreteOptions, { + references: [value], + nestedObjectsLeft: concreteOptions.nestedObjectsAmount as number, + nestedArraysLeft: concreteOptions.nestedArraysAmount as number, + nestedFunctionsLeft: concreteOptions.nestedFunctionsAmount as number, + }); + + // Handle remaining circular references at the top level (Issue #1 fix) + return attachActions(getLocalRefs(value), result); +} + +export default javaScriptToString; diff --git a/test/generator.test.js b/test/generator.test.js index 3ded30e..c3624b5 100644 --- a/test/generator.test.js +++ b/test/generator.test.js @@ -7,8 +7,8 @@ describe("Function to String", () => { yield i + 10; } - let stringFunction = j2s(generator); - let actual = Function("return " + stringFunction)(); + const stringFunction = j2s(generator); + const actual = Function("return " + stringFunction)(); var gen = actual(10); expect(gen.next().value).toBe(10); diff --git a/test/javascripttostring.test.ts b/test/javascripttostring.test.ts index b18633d..965e23c 100644 --- a/test/javascripttostring.test.ts +++ b/test/javascripttostring.test.ts @@ -1,587 +1,722 @@ -import j2s from "../src/javascripttostring"; - -describe("Null to String", () => { - it("should convert null to string", () => { - let actual = j2s(null); - let expected = "null"; - - expect(actual).toBe(expected); - }); - it("should convert undefined to string", () => { - let actual = j2s(undefined); - let expected = "undefined"; - - expect(actual).toBe(expected); - }); -}); - -describe("Boolean to String", () => { - it("should convert true", () => { - let actual = j2s(true); - let expected = "true"; - - expect(actual).toBe(expected); - }); - it("should convert false", () => { - let actual = j2s(false); - let expected = "false"; - - expect(actual).toBe(expected); - }); - it("should convert boolean object", () => { - let actual = j2s(new Boolean(1000)); - let expected = "true"; - - expect(actual).toBe(expected); - }); -}); - -describe("Number to String", () => { - it("should convert 0", () => { - let actual = j2s(0); - let expected = "0"; - - expect(actual).toBe(expected); - }); - it("should convert numbers 0 < N < 1", () => { - let actual = j2s(0.75); - let expected = "0.75"; - - expect(actual).toBe(expected); - }); - it("should convert negative numbers", () => { - let actual = j2s(-123); - let expected = "-123"; - - expect(actual).toBe(expected); - }); - it("should convert positive numbers", () => { - let actual = j2s(456); - let expected = "456"; - - expect(actual).toBe(expected); - }); - it("should convert infinity", () => { - let actual1 = j2s(Number.POSITIVE_INFINITY); - let expected1 = "Number.POSITIVE_INFINITY"; - let actual2 = j2s(Number.NEGATIVE_INFINITY); - let expected2 = "Number.NEGATIVE_INFINITY"; - - expect(actual1).toBe(expected1); - expect(actual2).toBe(expected2); - }); - it("should convert min/max values", () => { - let actual1 = j2s(Number.MAX_VALUE); - let expected1 = "Number.MAX_VALUE"; - let actual2 = j2s(Number.MIN_VALUE); - let expected2 = "Number.MIN_VALUE"; - - expect(actual1).toBe(expected1); - expect(actual2).toBe(expected2); - }); - it("should convert BigInt numbers", () => { - let actual = j2s(BigInt(9007199254740991)); - let expected = "BigInt(9007199254740991)"; - - expect(actual).toBe(expected); - }); -}); - -describe("Symbol to String", () => { - it("should convert empty Symbol", () => { - let actual = j2s(Symbol()); - let expected = "Symbol()"; - - expect(actual).toBe(expected); - }); - it("should convert Symbol with description", () => { - let actual = j2s(Symbol("Hello")); - let expected = 'Symbol("Hello")'; - - expect(actual).toBe(expected); - }); - it("should convert built-in symbols", () => { - expect(j2s(Symbol.iterator)).toBe("Symbol.iterator"); - expect(j2s(Symbol.asyncIterator)).toBe("Symbol.asyncIterator"); - expect(j2s(Symbol.hasInstance)).toBe("Symbol.hasInstance"); - }); -}); - -describe("String to String", () => { - it("should convert empty string", () => { - let actual = j2s(""); - let expected = '""'; - - expect(actual).toBe(expected); - }); - it("should convert a string", () => { - let actual = j2s( - "JavaScript value to string converter. It converts a runtime value into string value." - ); - let expected = - '"JavaScript value to string converter. It converts a runtime value into string value."'; - - expect(actual).toBe(expected); - }); - it("should convert special symbols", () => { - let actual = j2s("Check symbols: '\"\t\n—“”⚡"); - let expected = '"Check symbols: \'\\"\\t\\n—“”⚡"'; - - expect(actual).toBe(expected); - }); -}); - -describe("RegExp to String", () => { - it("should convert RegExp", () => { - let actual = j2s(/s+/gi); - let expected = "/s+/gi"; - - expect(actual).toBe(expected); - }); -}); - -describe("Error to String", () => { - it("should convert Error", () => { - let actual = j2s(new Error("A mistake")); - let expected = 'new Error("A mistake", undefined, undefined)'; - - expect(actual).toBe(expected); - }); -}); - -describe("Array to String", () => { - it("should convert empty Array", () => { - let actual = j2s([]); - let expected = "[]"; - - expect(actual).toBe(expected); - }); - it("should convert an Array", () => { - let arr = [1, 2, 3, "hello", "world"]; - let actual = j2s(arr); - let expected = '[1, 2, 3, "hello", "world"]'; - - expect(actual).toBe(expected); - expect(arr[0]).toBe(1); - expect(arr[1]).toBe(2); - }); - it("should convert a typed Array", () => { - let arr = new Int8Array([1, 2, 3]); - let str = j2s(arr); - let actual = Function(`return ${str};`)(); - - expect(arr[0]).toBe(1); - expect(arr[1]).toBe(2); - expect(actual instanceof Int8Array).toBeTruthy(); - expect(actual[0]).toBe(1); - expect(actual[1]).toBe(2); - expect(actual[2]).toBe(3); - }); - it("should convert with nestedArraysAmount = 0", () => { - let str = j2s([1,2,3,[4,5,6, [7,8,9]]], { - nestedArraysAmount: 0 - }); - let actual = Function(`return ${str};`)(); - - expect(actual[2]).toBe(3); - expect(actual[3]).not.toBeDefined(); - }); - it("should convert with nestedArraysAmount = 1", () => { - let str = j2s([1,2,3,[4,5,6, [7,8,9]]], { - nestedArraysAmount: 1 - }); - let actual = Function(`return ${str};`)(); - - expect(actual[2]).toBe(3); - expect(actual[3]).toBeDefined(); - expect(actual[3][0]).toBe(4); - expect(actual[3][3]).not.toBeDefined(); - }); -}); - -describe("Function to String", () => { - it("should convert an anonymous function", () => { - let stringFunction = j2s(function(a: any, b: any, c: any) { - return a + b + c; - }); - let actual = Function("return " + stringFunction)(); - let expected = 6; - - expect(actual(1, 2, 3)).toBe(expected); - }); - it("should convert an named function", () => { - function sum(...numbers: number[]) { - return Array.prototype.reduce.call( - numbers, - (accumulator: any, currentValue: any) => { - return accumulator + currentValue; - }, - 0 - ); - } - - let stringFunction = j2s(sum); - let actual = Function("return " + stringFunction)(); - let expected = 10; - - expect(actual(1, 2, 3, 4)).toBe(expected); - }); - it("should convert lambda function", () => { - let stringFunction = j2s((a: any, b: any) => { - return a * b; - }); - let actual = Function("return " + stringFunction)(); - let expected = 12; - - expect(actual(3, 4)).toBe(expected); - }); - it("should convert class", () => { - let stringFunction = j2s( - class TestClass { - public TestVariable: string; - constructor() { - this.TestVariable = "Hello Test"; - } - } - ); - let actualClass = Function("return " + stringFunction)(); - let actualObject = new actualClass(); - let expected = "Hello Test"; - - expect(actualObject.TestVariable).toBe(expected); - }); - it("should work with function prototype", () => { - class TestClass { - public TestVariable: string; - constructor() { - this.TestVariable = "Hello Test"; - } - - public TestMethod(): string { - return "It Works"; - } - } - - let stringFunction = j2s(TestClass); - let actualClass = Function("return " + stringFunction)(); - let actualObject = new actualClass(); - let expected = "It Works"; - - expect(actualObject.TestMethod()).toBe(expected); - }); - it("should work with includeFunctionProperties = false & includeFunctionPrototype = false", () => { - function TestConstructor() {} - (TestConstructor as any).Test1 = "Completed"; - TestConstructor.prototype.testMethod = function() { - return "It works"; - }; - - let stringFunction = j2s(TestConstructor, { - includeFunctionProperties: false, - includeFunctionPrototype: false - }); - let actualClass = Function("return " + stringFunction)(); - - expect(actualClass.name).toBe("TestConstructor"); - expect(actualClass.Test1).not.toBeDefined(); - expect(actualClass.prototype.testMethod).not.toBeDefined(); - }); - it("should work with includeFunctionProperties = false", () => { - function TestConstructor() {} - (TestConstructor as any).Test1 = "Completed"; - TestConstructor.prototype.testMethod = function() { - return "It works"; - }; - TestConstructor.prototype.testMethod.subTestMethod = function() { - return "It not works"; - }; - TestConstructor.prototype.testMethod.prototype.subTestMethod = function() { - return "It works too"; - }; - - let stringFunction = j2s(TestConstructor, { - includeFunctionProperties: false - }); - let actualClass = Function("return " + stringFunction)(); - - expect(actualClass.name).toBe("TestConstructor"); - expect(actualClass.Test1).not.toBeDefined(); - expect(actualClass.prototype.testMethod()).toBe("It works"); - expect(actualClass.prototype.testMethod.subTestMethod).not.toBeDefined(); - expect(actualClass.prototype.testMethod.prototype.subTestMethod()).toBe("It works too"); - }); - it("should work with includeFunctionPrototype = false", () => { - function TestConstructor() {} - (TestConstructor as any).Test1 = "Completed"; - TestConstructor.prototype.testMethod = function() { - return "It works"; - }; - - let stringFunction = j2s(TestConstructor, { - includeFunctionPrototype: false - }); - let actualClass = Function("return " + stringFunction)(); - - expect(actualClass.name).toBe("TestConstructor"); - expect(actualClass.Test1).toBe("Completed"); - expect(actualClass.prototype.testMethod).not.toBeDefined(); - }); - it("should work with nestedFunctionsAmount = 0", () => { - function TestConstructor() {} - (TestConstructor as any).Test1 = "Completed"; - TestConstructor.prototype.testMethod = function() { - return "It works"; - }; - - let stringFunction = j2s(TestConstructor, { - nestedFunctionsAmount: 0 - }); - let actualClass = Function("return " + stringFunction)(); - - expect(actualClass.name).toBe("TestConstructor"); - expect(actualClass.Test1).toBe("Completed"); - expect(actualClass.prototype.testMethod).not.toBeDefined(); - }); - it("should work with nestedFunctionsAmount = 1", () => { - function TestConstructor() {} - (TestConstructor as any).Test1 = "Completed"; - TestConstructor.prototype.testMethod = function() { - return "It works"; - }; - TestConstructor.prototype.testMethod.subTestMethod = function() { - return "It works too"; - }; - - let stringFunction = j2s(TestConstructor, { - nestedFunctionsAmount: 1 - }); - let actualClass = Function("return " + stringFunction)(); - - expect(actualClass.name).toBe("TestConstructor"); - expect(actualClass.Test1).toBe("Completed"); - expect(actualClass.prototype.testMethod()).toBe("It works"); - expect(actualClass.prototype.testMethod.subTestMethod).not.toBeDefined(); - }); - it("should convert native functions", () => { - let actual = j2s([].map); - let expected = 'Array.prototype.map'; - - expect(actual).toBe(expected); - }); -}); - -describe("Object to String", () => { - it("should convert empty Object", () => { - let actual = j2s({}); - let expected = "{}"; - - expect(actual).toBe(expected); - }); - it("should convert an Object", () => { - let stringObject = j2s({ - a: 1, - hello: "world", - innerObject: { - testFunction: (x1: number, y1: number, x2: number, y2: number) => { - return Math.pow(Math.pow(x1 - x2, 2) + Math.pow(y1 - y2, 2), 0.5); - } - } - }); - let actual = Function("return " + stringObject)(); - let expected1 = 1; - let expected2 = "world"; - let expected3 = 5; - - expect(actual.a).toBe(expected1); - expect(actual.hello).toBe(expected2); - expect(actual.innerObject).toBeDefined(); - expect(actual.innerObject.testFunction(3, 0, 0, 4)).toBe(expected3); - }); - it("should work with nestedObjectsAmount = 0", () => { - let objectString = j2s({ - a: "hello", - b: true, - c: { - d: "world" - } - }, { - nestedObjectsAmount: 0 - }); - let actual = Function(`return ${objectString};`)(); - - expect(actual.a).toBe("hello"); - expect(actual.b).toBe(true); - expect(actual.c).not.toBeDefined(); - }); - it("should work with nestedObjectsAmount = 1", () => { - let objectString = j2s({ - a: "hello", - b: true, - c: { - d: { - e: { - f: 'world' - }, - g: 123 - }, - j: () => 'ok' - } - }, { - nestedObjectsAmount: 1 - }); - let actual = Function(`return ${objectString};`)(); - - expect(actual.a).toBe("hello"); - expect(actual.b).toBe(true); - expect(actual.c).toBeDefined(); - expect(actual.c.d).not.toBeDefined(); - expect(actual.c.j).toBeDefined(); - expect(actual.c.j()).toBe('ok'); - }); - it("should work with nestedObjectsAmount = 2", () => { - let objectString = j2s({ - a: "hello", - b: true, - c: { - d: { - e: { - f: 'world' - }, - g: 123 - }, - j: () => 'ok' - } - }, { - nestedObjectsAmount: 2 - }); - let actual = Function(`return ${objectString};`)(); - - expect(actual.a).toBe("hello"); - expect(actual.b).toBe(true); - expect(actual.c).toBeDefined(); - expect(actual.c.j).toBeDefined(); - expect(actual.c.j()).toBe('ok'); - expect(actual.c.d.e).not.toBeDefined(); - expect(actual.c.d.g).toBe(123); - }); -}); - -describe("Set to String", () => { - it("should convert the empty set", () => { - let actual = j2s(new Set()); - let expected = "new Set()"; - - expect(actual).toBe(expected); - }); - it("should convert a set", () => { - let actual = j2s(new Set([1, 2, 3])); - let expected = "new Set([1, 2, 3])"; - - expect(actual).toBe(expected); - }); -}); - -describe("Map to String", () => { - it("should convert the empty map", () => { - let actual = j2s(new Map()); - let expected = "new Map()"; - - expect(actual).toBe(expected); - }); - it("should convert a map", () => { - let actual = j2s(new Map([[1, 2], [3, 4]])); - let expected = "new Map([[1, 2], [3, 4]])"; - - expect(actual).toBe(expected); - }); -}); - -describe("Resolve references to itself", () => { - it("should resolve the array itself", () => { - var x: any = [1,2,3]; - x[0] = x; - - let actual = j2s(x); - let expected = Function(`return ${actual}`)(); - - expect(expected[0]).toBe(expected); - expect(expected[1]).toBe(2); - expect(expected[2]).toBe(3); - expect(expected.length).toBe(3); - }); - - it("should resolve the array inside arrays", () => { - var x: any = [[4,5,[6,7,8]],22,33]; - x[0][2][1] = x; - x[0][2][2] = x; - - let actual = j2s(x); - let expected = Function(`return ${actual}`)(); - - expect(expected[0][2][2]).toBe(expected); - expect(expected[0][2][1]).toBe(expected); - expect(expected[0][2][0]).toBe(6); - expect(expected[1]).toBe(22); - expect(expected[2]).toBe(33); - expect(expected.length).toBe(3); - }); - - it("should resolve the object itself", () => { - var x: any = { a: { b: {c: { hello: 'world' } } }}; - x.a.b.c.hello = x; - - let actual = j2s(x); - let expected = Function(`return ${actual}`)(); - - expect(expected).toBeTruthy(); - expect(expected.a).toBeTruthy(); - expect(expected.a.b).toBeTruthy(); - expect(expected.a.b.c).toBeTruthy(); - expect(expected.a.b.c.hello).toBe(expected); - }); - - it("should resolve objects and arrays", () => { - const y: any[] = ['an', 'array', null]; - const x = { - a: 123, - b: 'an object', - c: y - }; - y[2] = x; - const z = { - arr: [x] - }; - - let actual = j2s(z); - let expected = Function(`return ${actual}`)(); - - expect(expected).toBeTruthy(); - expect(expected.arr[0].a).toBe(123); - expect(expected.arr[0].b).toBe('an object'); - expect(Array.isArray(expected.arr[0].c)).toBeTruthy(); - expect(expected.arr[0].c[0]).toBe('an'); - expect(expected.arr[0].c[1]).toBe('array'); - expect(expected.arr[0].c[2].a).toBe(123); - expect(expected.arr[0].c[2].c[2].a).toBe(123); - }); - - it("should resolve the function itself", () => { - function Narcissus() { - return 'narcissus'; - } - Narcissus.itself = Narcissus; - Narcissus.prototype.me = Narcissus; - Narcissus.prototype.deep = { - arr: [Narcissus] - } - - let actual = j2s(Narcissus); - let expected = Function(`return ${actual}`)(); - - expect(expected instanceof Function).toBeTruthy(); - expect(expected()).toBe('narcissus'); - expect(expected.itself).toBe(expected); - expect(expected.prototype.me).toBe(expected); - expect(expected.prototype.deep.arr[0]).toBe(expected); - }); -}); \ No newline at end of file +import j2s from "../src/javascripttostring"; + +describe("Null to String", () => { + it("should convert null to string", () => { + const actual = j2s(null); + const expected = "null"; + + expect(actual).toBe(expected); + }); + it("should convert undefined to string", () => { + const actual = j2s(undefined); + const expected = "undefined"; + + expect(actual).toBe(expected); + }); +}); + +describe("Boolean to String", () => { + it("should convert true", () => { + const actual = j2s(true); + const expected = "true"; + + expect(actual).toBe(expected); + }); + it("should convert false", () => { + const actual = j2s(false); + const expected = "false"; + + expect(actual).toBe(expected); + }); + it("should convert boolean object", () => { + const actual = j2s(new Boolean(1000)); + const expected = "true"; + + expect(actual).toBe(expected); + }); +}); + +describe("Number to String", () => { + it("should convert 0", () => { + const actual = j2s(0); + const expected = "0"; + + expect(actual).toBe(expected); + }); + it("should convert numbers 0 < N < 1", () => { + const actual = j2s(0.75); + const expected = "0.75"; + + expect(actual).toBe(expected); + }); + it("should convert negative numbers", () => { + const actual = j2s(-123); + const expected = "-123"; + + expect(actual).toBe(expected); + }); + it("should convert positive numbers", () => { + const actual = j2s(456); + const expected = "456"; + + expect(actual).toBe(expected); + }); + it("should convert infinity", () => { + const actual1 = j2s(Number.POSITIVE_INFINITY); + const expected1 = "Number.POSITIVE_INFINITY"; + const actual2 = j2s(Number.NEGATIVE_INFINITY); + const expected2 = "Number.NEGATIVE_INFINITY"; + + expect(actual1).toBe(expected1); + expect(actual2).toBe(expected2); + }); + it("should convert min/max values", () => { + const actual1 = j2s(Number.MAX_VALUE); + const expected1 = "Number.MAX_VALUE"; + const actual2 = j2s(Number.MIN_VALUE); + const expected2 = "Number.MIN_VALUE"; + + expect(actual1).toBe(expected1); + expect(actual2).toBe(expected2); + }); + it("should convert BigInt numbers", () => { + const actual = j2s(BigInt(9007199254740991)); + const expected = "BigInt(9007199254740991)"; + + expect(actual).toBe(expected); + }); +}); + +describe("Symbol to String", () => { + it("should convert empty Symbol", () => { + const actual = j2s(Symbol()); + const expected = "Symbol()"; + + expect(actual).toBe(expected); + }); + it("should convert Symbol with description", () => { + const actual = j2s(Symbol("Hello")); + const expected = 'Symbol("Hello")'; + + expect(actual).toBe(expected); + }); + it("should convert built-in symbols", () => { + expect(j2s(Symbol.iterator)).toBe("Symbol.iterator"); + expect(j2s(Symbol.asyncIterator)).toBe("Symbol.asyncIterator"); + expect(j2s(Symbol.hasInstance)).toBe("Symbol.hasInstance"); + }); +}); + +describe("String to String", () => { + it("should convert empty string", () => { + const actual = j2s(""); + const expected = '""'; + + expect(actual).toBe(expected); + }); + it("should convert a string", () => { + const actual = j2s("JavaScript value to string converter. It converts a runtime value into string value."); + const expected = '"JavaScript value to string converter. It converts a runtime value into string value."'; + + expect(actual).toBe(expected); + }); + it("should convert special symbols", () => { + const actual = j2s("Check symbols: '\"\t\n—“”⚡"); + const expected = '"Check symbols: \'\\"\\t\\n—“”⚡"'; + + expect(actual).toBe(expected); + }); +}); + +describe("RegExp to String", () => { + it("should convert RegExp", () => { + const actual = j2s(/s+/gi); + const expected = "/s+/gi"; + + expect(actual).toBe(expected); + }); +}); + +describe("Error to String", () => { + it("should convert Error", () => { + const actual = j2s(new Error("A mistake")); + const expected = 'new Error("A mistake", undefined, undefined)'; + + expect(actual).toBe(expected); + }); +}); + +describe("Array to String", () => { + it("should convert empty Array", () => { + const actual = j2s([]); + const expected = "[]"; + + expect(actual).toBe(expected); + }); + it("should convert an Array", () => { + const arr = [1, 2, 3, "hello", "world"]; + const actual = j2s(arr); + const expected = '[1, 2, 3, "hello", "world"]'; + + expect(actual).toBe(expected); + expect(arr[0]).toBe(1); + expect(arr[1]).toBe(2); + }); + it("should convert a typed Array", () => { + const arr = new Int8Array([1, 2, 3]); + const str = j2s(arr); + const actual = Function(`return ${str};`)(); + + expect(arr[0]).toBe(1); + expect(arr[1]).toBe(2); + expect(actual instanceof Int8Array).toBeTruthy(); + expect(actual[0]).toBe(1); + expect(actual[1]).toBe(2); + expect(actual[2]).toBe(3); + }); + it("should convert with nestedArraysAmount = 0", () => { + const str = j2s([1, 2, 3, [4, 5, 6, [7, 8, 9]]], { + nestedArraysAmount: 0, + }); + const actual = Function(`return ${str};`)(); + + expect(actual[2]).toBe(3); + expect(actual[3]).not.toBeDefined(); + }); + it("should convert with nestedArraysAmount = 1", () => { + const str = j2s([1, 2, 3, [4, 5, 6, [7, 8, 9]]], { + nestedArraysAmount: 1, + }); + const actual = Function(`return ${str};`)(); + + expect(actual[2]).toBe(3); + expect(actual[3]).toBeDefined(); + expect(actual[3][0]).toBe(4); + expect(actual[3][3]).not.toBeDefined(); + }); +}); + +describe("Function to String", () => { + it("should convert an anonymous function", () => { + const stringFunction = j2s((a: any, b: any, c: any) => a + b + c); + const actual = Function("return " + stringFunction)(); + const expected = 6; + + expect(actual(1, 2, 3)).toBe(expected); + }); + it("should convert an named function", () => { + function sum(...numbers: number[]) { + return Array.prototype.reduce.call( + numbers, + (accumulator: any, currentValue: any) => { + return accumulator + currentValue; + }, + 0, + ); + } + + const stringFunction = j2s(sum); + const actual = Function("return " + stringFunction)(); + const expected = 10; + + expect(actual(1, 2, 3, 4)).toBe(expected); + }); + it("should convert lambda function", () => { + const stringFunction = j2s((a: any, b: any) => { + return a * b; + }); + const actual = Function("return " + stringFunction)(); + const expected = 12; + + expect(actual(3, 4)).toBe(expected); + }); + it("should convert class", () => { + const stringFunction = j2s( + class TestClass { + public TestVariable: string; + constructor() { + this.TestVariable = "Hello Test"; + } + }, + ); + const actualClass = Function("return " + stringFunction)(); + const actualObject = new actualClass(); + const expected = "Hello Test"; + + expect(actualObject.TestVariable).toBe(expected); + }); + it("should work with function prototype", () => { + class TestClass { + public TestVariable: string; + constructor() { + this.TestVariable = "Hello Test"; + } + + public TestMethod(): string { + return "It Works"; + } + } + + const stringFunction = j2s(TestClass); + const actualClass = Function("return " + stringFunction)(); + const actualObject = new actualClass(); + const expected = "It Works"; + + expect(actualObject.TestMethod()).toBe(expected); + }); + it("should work with includeFunctionProperties = false & includeFunctionPrototype = false", () => { + function TestConstructor() {} + (TestConstructor as any).Test1 = "Completed"; + TestConstructor.prototype.testMethod = () => "It works"; + + const stringFunction = j2s(TestConstructor, { + includeFunctionProperties: false, + includeFunctionPrototype: false, + }); + const actualClass = Function("return " + stringFunction)(); + + expect(actualClass.name).toBe("TestConstructor"); + expect(actualClass.Test1).not.toBeDefined(); + expect(actualClass.prototype.testMethod).not.toBeDefined(); + }); + it("should work with includeFunctionProperties = false", () => { + function TestConstructor() {} + (TestConstructor as any).Test1 = "Completed"; + TestConstructor.prototype.testMethod = () => "It works"; + TestConstructor.prototype.testMethod.subTestMethod = () => "It not works"; + TestConstructor.prototype.testMethod.prototype.subTestMethod = () => "It works too"; + + const stringFunction = j2s(TestConstructor, { + includeFunctionProperties: false, + }); + const actualClass = Function("return " + stringFunction)(); + + expect(actualClass.name).toBe("TestConstructor"); + expect(actualClass.Test1).not.toBeDefined(); + expect(actualClass.prototype.testMethod()).toBe("It works"); + expect(actualClass.prototype.testMethod.subTestMethod).not.toBeDefined(); + expect(actualClass.prototype.testMethod.prototype.subTestMethod()).toBe("It works too"); + }); + it("should work with includeFunctionPrototype = false", () => { + function TestConstructor() {} + (TestConstructor as any).Test1 = "Completed"; + TestConstructor.prototype.testMethod = () => "It works"; + + const stringFunction = j2s(TestConstructor, { + includeFunctionPrototype: false, + }); + const actualClass = Function("return " + stringFunction)(); + + expect(actualClass.name).toBe("TestConstructor"); + expect(actualClass.Test1).toBe("Completed"); + expect(actualClass.prototype.testMethod).not.toBeDefined(); + }); + it("should work with nestedFunctionsAmount = 0", () => { + function TestConstructor() {} + (TestConstructor as any).Test1 = "Completed"; + TestConstructor.prototype.testMethod = () => "It works"; + + const stringFunction = j2s(TestConstructor, { + nestedFunctionsAmount: 0, + }); + const actualClass = Function("return " + stringFunction)(); + + expect(actualClass.name).toBe("TestConstructor"); + expect(actualClass.Test1).toBe("Completed"); + expect(actualClass.prototype.testMethod).not.toBeDefined(); + }); + it("should work with nestedFunctionsAmount = 1", () => { + function TestConstructor() {} + (TestConstructor as any).Test1 = "Completed"; + TestConstructor.prototype.testMethod = () => "It works"; + TestConstructor.prototype.testMethod.subTestMethod = () => "It works too"; + + const stringFunction = j2s(TestConstructor, { + nestedFunctionsAmount: 1, + }); + const actualClass = Function("return " + stringFunction)(); + + expect(actualClass.name).toBe("TestConstructor"); + expect(actualClass.Test1).toBe("Completed"); + expect(actualClass.prototype.testMethod()).toBe("It works"); + expect(actualClass.prototype.testMethod.subTestMethod).not.toBeDefined(); + }); + it("should convert native functions", () => { + const actual = j2s([].map); + const expected = "Array.prototype.map"; + + expect(actual).toBe(expected); + }); +}); + +describe("Object to String", () => { + it("should convert empty Object", () => { + const actual = j2s({}); + const expected = "{}"; + + expect(actual).toBe(expected); + }); + it("should convert an Object", () => { + const stringObject = j2s({ + a: 1, + hello: "world", + innerObject: { + testFunction: (x1: number, y1: number, x2: number, y2: number) => { + return Math.pow(Math.pow(x1 - x2, 2) + Math.pow(y1 - y2, 2), 0.5); + }, + }, + }); + const actual = Function("return " + stringObject)(); + const expected1 = 1; + const expected2 = "world"; + const expected3 = 5; + + expect(actual.a).toBe(expected1); + expect(actual.hello).toBe(expected2); + expect(actual.innerObject).toBeDefined(); + expect(actual.innerObject.testFunction(3, 0, 0, 4)).toBe(expected3); + }); + it("should work with nestedObjectsAmount = 0", () => { + const objectString = j2s( + { + a: "hello", + b: true, + c: { + d: "world", + }, + }, + { + nestedObjectsAmount: 0, + }, + ); + const actual = Function(`return ${objectString};`)(); + + expect(actual.a).toBe("hello"); + expect(actual.b).toBe(true); + expect(actual.c).not.toBeDefined(); + }); + it("should work with nestedObjectsAmount = 1", () => { + const objectString = j2s( + { + a: "hello", + b: true, + c: { + d: { + e: { + f: "world", + }, + g: 123, + }, + j: () => "ok", + }, + }, + { + nestedObjectsAmount: 1, + }, + ); + const actual = Function(`return ${objectString};`)(); + + expect(actual.a).toBe("hello"); + expect(actual.b).toBe(true); + expect(actual.c).toBeDefined(); + expect(actual.c.d).not.toBeDefined(); + expect(actual.c.j).toBeDefined(); + expect(actual.c.j()).toBe("ok"); + }); + it("should work with nestedObjectsAmount = 2", () => { + const objectString = j2s( + { + a: "hello", + b: true, + c: { + d: { + e: { + f: "world", + }, + g: 123, + }, + j: () => "ok", + }, + }, + { + nestedObjectsAmount: 2, + }, + ); + const actual = Function(`return ${objectString};`)(); + + expect(actual.a).toBe("hello"); + expect(actual.b).toBe(true); + expect(actual.c).toBeDefined(); + expect(actual.c.j).toBeDefined(); + expect(actual.c.j()).toBe("ok"); + expect(actual.c.d.e).not.toBeDefined(); + expect(actual.c.d.g).toBe(123); + }); +}); + +describe("Set to String", () => { + it("should convert the empty set", () => { + const actual = j2s(new Set()); + const expected = "new Set()"; + + expect(actual).toBe(expected); + }); + it("should convert a set", () => { + const actual = j2s(new Set([1, 2, 3])); + const expected = "new Set([1, 2, 3])"; + + expect(actual).toBe(expected); + }); +}); + +describe("Map to String", () => { + it("should convert the empty map", () => { + const actual = j2s(new Map()); + const expected = "new Map()"; + + expect(actual).toBe(expected); + }); + it("should convert a map", () => { + const actual = j2s( + new Map([ + [1, 2], + [3, 4], + ]), + ); + const expected = "new Map([[1, 2], [3, 4]])"; + + expect(actual).toBe(expected); + }); +}); + +describe("Resolve references to itself", () => { + it("should resolve the array itself", () => { + var x: any = [1, 2, 3]; + x[0] = x; + + const actual = j2s(x); + const expected = Function(`return ${actual}`)(); + + expect(expected[0]).toBe(expected); + expect(expected[1]).toBe(2); + expect(expected[2]).toBe(3); + expect(expected.length).toBe(3); + }); + + it("should resolve the array inside arrays", () => { + var x: any = [[4, 5, [6, 7, 8]], 22, 33]; + x[0][2][1] = x; + x[0][2][2] = x; + + const actual = j2s(x); + const expected = Function(`return ${actual}`)(); + + expect(expected[0][2][2]).toBe(expected); + expect(expected[0][2][1]).toBe(expected); + expect(expected[0][2][0]).toBe(6); + expect(expected[1]).toBe(22); + expect(expected[2]).toBe(33); + expect(expected.length).toBe(3); + }); + + it("should resolve the object itself", () => { + var x: any = { a: { b: { c: { hello: "world" } } } }; + x.a.b.c.hello = x; + + const actual = j2s(x); + const expected = Function(`return ${actual}`)(); + + expect(expected).toBeTruthy(); + expect(expected.a).toBeTruthy(); + expect(expected.a.b).toBeTruthy(); + expect(expected.a.b.c).toBeTruthy(); + expect(expected.a.b.c.hello).toBe(expected); + }); + + it("should resolve objects and arrays", () => { + const y: any[] = ["an", "array", null]; + const x = { + a: 123, + b: "an object", + c: y, + }; + y[2] = x; + const z = { + arr: [x], + }; + + const actual = j2s(z); + const expected = Function(`return ${actual}`)(); + + expect(expected).toBeTruthy(); + expect(expected.arr[0].a).toBe(123); + expect(expected.arr[0].b).toBe("an object"); + expect(Array.isArray(expected.arr[0].c)).toBeTruthy(); + expect(expected.arr[0].c[0]).toBe("an"); + expect(expected.arr[0].c[1]).toBe("array"); + expect(expected.arr[0].c[2].a).toBe(123); + expect(expected.arr[0].c[2].c[2].a).toBe(123); + }); + + it("should resolve the function itself", () => { + function Narcissus() { + return "narcissus"; + } + Narcissus.itself = Narcissus; + Narcissus.prototype.me = Narcissus; + Narcissus.prototype.deep = { + arr: [Narcissus], + }; + + const actual = j2s(Narcissus); + const expected = Function(`return ${actual}`)(); + + expect(expected instanceof Function).toBeTruthy(); + expect(expected()).toBe("narcissus"); + expect(expected.itself).toBe(expected); + expect(expected.prototype.me).toBe(expected); + expect(expected.prototype.deep.arr[0]).toBe(expected); + }); + + // Issue #1: Self-referencing array at top level + it("should handle self-referencing array (Issue #1)", () => { + var x: any[] = [1, 2, 3]; + x[0] = x; + + const actual = j2s(x); + const restored = Function(`return ${actual}`)(); + + expect(restored[0]).toBe(restored); + expect(restored[1]).toBe(2); + expect(restored[2]).toBe(3); + }); + + // Issue #1: Self-referencing object at top level + it("should handle self-referencing object (Issue #1)", () => { + var obj: any = { a: 1, b: 2 }; + obj.self = obj; + + const actual = j2s(obj); + const restored = Function(`return ${actual}`)(); + + expect(restored.self).toBe(restored); + expect(restored.a).toBe(1); + expect(restored.b).toBe(2); + }); + + // Issue #1: Deep circular chain A -> B -> C -> A (back to root) + it("should handle deep circular chain back to root (Issue #1)", () => { + var a: any = { name: "A" }; + var b: any = { name: "B" }; + var c: any = { name: "C" }; + a.next = b; + b.next = c; + c.next = a; // circular back to root + + const actual = j2s(a); + const restored = Function(`return ${actual}`)(); + + expect(restored.name).toBe("A"); + expect(restored.next.name).toBe("B"); + expect(restored.next.next.name).toBe("C"); + expect(restored.next.next.next).toBe(restored); // should be same reference + }); + + // Issue #1: Object with array that references back to parent (root) + it("should handle object with array referencing parent root (Issue #1)", () => { + var parent: any = { + name: "parent", + children: [], + }; + parent.children.push({ name: "child1", parent: parent }); + parent.children.push({ name: "child2", parent: parent }); + + const actual = j2s(parent); + const restored = Function(`return ${actual}`)(); + + expect(restored.name).toBe("parent"); + expect(restored.children[0].name).toBe("child1"); + expect(restored.children[0].parent).toBe(restored); + expect(restored.children[1].parent).toBe(restored); + }); + + // ============================================================================ + // Known limitation: Cross-references between non-root nested objects + // The current implementation only handles circular references back to the root. + // These tests document expected behavior for future improvements. + // ============================================================================ + + // Future: Cross-reference between objects - nested object referenced from another branch + it.skip("should handle cross-references between nested objects (future)", () => { + var a: any = { b: { c: "hello" } }; + var d: any = { e: a.b }; + a.f = d; + + const actual = j2s(a); + const restored = Function(`return ${actual}`)(); + + expect(restored.b.c).toBe("hello"); + expect(restored.f.e).toBe(restored.b); // d.e should reference a.b + expect(restored.f.e.c).toBe("hello"); + }); + + // Future: Multiple objects sharing the same nested reference + it.skip("should handle multiple references to same nested object (future)", () => { + var shared = { value: 42 }; + var obj: any = { + first: shared, + second: shared, + nested: { + third: shared, + }, + }; + + const actual = j2s(obj); + const restored = Function(`return ${actual}`)(); + + expect(restored.first).toBe(restored.second); + expect(restored.first).toBe(restored.nested.third); + expect(restored.first.value).toBe(42); + }); + + // Future: Array containing objects with cross-references between each other + it.skip("should handle array with cross-referencing objects (future)", () => { + var obj1: any = { id: 1 }; + var obj2: any = { id: 2, ref: obj1 }; + obj1.ref = obj2; + var arr: any[] = [obj1, obj2]; + + const actual = j2s(arr); + const restored = Function(`return ${actual}`)(); + + expect(restored[0].id).toBe(1); + expect(restored[1].id).toBe(2); + expect(restored[0].ref).toBe(restored[1]); + expect(restored[1].ref).toBe(restored[0]); + }); + + // Future: Complex graph structure with multiple interconnections + it.skip("should handle complex graph with multiple interconnections (future)", () => { + var node1: any = { id: 1, connections: [] }; + var node2: any = { id: 2, connections: [] }; + var node3: any = { id: 3, connections: [] }; + + // Create a mesh: each node references the others + node1.connections.push(node2, node3); + node2.connections.push(node1, node3); + node3.connections.push(node1, node2); + + var graph = { nodes: [node1, node2, node3], root: node1 }; + + const actual = j2s(graph); + const restored = Function(`return ${actual}`)(); + + expect(restored.nodes[0].id).toBe(1); + expect(restored.nodes[1].id).toBe(2); + expect(restored.nodes[2].id).toBe(3); + expect(restored.root).toBe(restored.nodes[0]); + expect(restored.nodes[0].connections[0]).toBe(restored.nodes[1]); + expect(restored.nodes[0].connections[1]).toBe(restored.nodes[2]); + expect(restored.nodes[1].connections[0]).toBe(restored.nodes[0]); + }); +}); From 99d697ac0bcbbbabe5b94066fa26ede90d4b5998 Mon Sep 17 00:00:00 2001 From: lopatnov Date: Thu, 12 Feb 2026 17:19:34 +0200 Subject: [PATCH 02/18] Added cross-reference support --- dist/javascripttostring.es5.js | 4 +- dist/javascripttostring.es5.js.map | 2 +- dist/javascripttostring.umd.js | 4 +- dist/javascripttostring.umd.js.map | 2 +- dist/lib/javascripttostring.js | 63 +++++- dist/lib/javascripttostring.js.map | 2 +- docs/functions/default.html | 2 +- docs/interfaces/ij2soptions.html | 4 +- src/javascripttostring.ts | 68 ++++++- test/javascripttostring.test.ts | 308 +++++++++++++++++++++++++++-- 10 files changed, 429 insertions(+), 30 deletions(-) diff --git a/dist/javascripttostring.es5.js b/dist/javascripttostring.es5.js index 3af5d49..72b3d97 100644 --- a/dist/javascripttostring.es5.js +++ b/dist/javascripttostring.es5.js @@ -1,6 +1,8 @@ +function __spreadArray(e,t,r){if(r||2===arguments.length)for(var n,o=0,a=t.length;o0){counter=counter++%Number.MAX_SAFE_INTEGER;var t="___j2s_".concat(counter),r=e.reduce(function(e,n){var r=converToAction(t,n);return refs.splice(refs.indexOf(n),1),e+r},"");return "(function(){ var ".concat(t," = ").concat(n,"; ").concat(r," return ").concat(t,"; }())")}return n}function converToAction(e,n){var t=n.historyRef.indexOf(n.source);if(t<0)return "";for(var r,c=n.historyRef.slice(t),o="",a=0;a-1&&a.length<100)for(var i in nativeFunctions)nativeFunctions[i]===e&&(a=i);return c||o?attachActions(getLocalRefs(e),"(function(){\n var ".concat(r," = ").concat(String(a),";\n ").concat(c,"\n ").concat(o,"\n return ").concat(r,";\n}())")):a}function arrayBufferToString(e,n,t){if(!n.includeBuffers)return "undefined";var r=typedArrayToString(new Int8Array(e),n,t);return "(".concat(r,").buffer")}function dataViewToString(e,n,t){if(!n.includeBuffers)return "undefined";var r=arrayBufferToString(e.buffer,n,t);return "new DataView(".concat(r,", ").concat(e.byteOffset,", ").concat(e.byteLength,")")}function stringify(e,n,t){switch(getInternalType(e)){case "undefined":case "promise":case "generator":return "undefined";case "null":return "null";case "boolean":case "regexp":return String(e);case "string":default:return JSON.stringify(e);case "number":return numberToString(e);case "bigint":return "BigInt(".concat(e,")");case "symbol":return symbolToString(e);case "date":return dateToString(e);case "error":return errorToString(e);case "array":return arrayToString(e,n,t);case "typedarray":return typedArrayToString(e,n,t);case "set":return setToString(e,n,t);case "map":return mapToString(e,n,t);case "object":return objectToString(e,n,t);case "function":case "generatorfunction":return functionToString(e,n,t);case "arraybuffer":return arrayBufferToString(e,n,t);case "dataview":return dataViewToString(e,n,t)}}function stringifyRef(e,n,t){var r=t.references.indexOf(e);if(r<0||"string"==typeof t.references[r]){var c=getInternalType(e),o=t.references.length;switch(t.references.push(e),c){case "object":if(t.nestedObjectsLeft<=0)return "undefined";t.nestedObjectsLeft--;break;case "array":case "typedarray":if(t.nestedArraysLeft<=0)return "undefined";t.nestedArraysLeft--;break;case "function":case "generatorfunction":if(t.nestedFunctionsLeft<=0)return "undefined";t.nestedFunctionsLeft--;}var a=stringify(e,n,t);switch(t.references.splice(o),c){case "object":t.nestedObjectsLeft++;break;case "array":case "typedarray":t.nestedArraysLeft++;break;case "function":case "generatorfunction":t.nestedFunctionsLeft++;}return a}return refs.push({historyRef:t.references.slice(0),source:e}),"null"}function javaScriptToString(e,n){var t={includeFunctionProperties:void 0===(n=n||{}).includeFunctionProperties||n.includeFunctionProperties,includeFunctionPrototype:void 0===n.includeFunctionPrototype||n.includeFunctionPrototype,includeBuffers:void 0===n.includeBuffers||n.includeBuffers,nestedObjectsAmount:void 0===n.nestedObjectsAmount?Number.POSITIVE_INFINITY:n.nestedObjectsAmount,nestedArraysAmount:void 0===n.nestedArraysAmount?Number.POSITIVE_INFINITY:n.nestedArraysAmount,nestedFunctionsAmount:void 0===n.nestedFunctionsAmount?Number.POSITIVE_INFINITY:n.nestedFunctionsAmount};refs=[],counter=0;var r=stringify(e,t,{references:[e],nestedObjectsLeft:t.nestedObjectsAmount,nestedArraysLeft:t.nestedArraysAmount,nestedFunctionsLeft:t.nestedFunctionsAmount});return attachActions(getLocalRefs(e),r)} +var refs=[],crossRefs=[],counter=0;function fillNativeFunctions(e,t,n,r){ void 0===r&&(r=true);for(var c=r?".prototype.":".",o=0,a=Object.getOwnPropertyNames(r?t.prototype:t);o0){counter=counter++%Number.MAX_SAFE_INTEGER;var n="___j2s_".concat(counter),r=e.reduce(function(e,t){var r=converToAction(n,t);return refs.splice(refs.indexOf(t),1),e+r},"");return "(function(){ var ".concat(n," = ").concat(t,"; ").concat(r," return ").concat(n,"; }())")}return t}function converToAction(e,t){var n=t.historyRef.indexOf(t.source);if(n<0)return "";for(var r,c=t.historyRef.slice(n),o="",a=0;a-1&&a.length<100)for(var i in nativeFunctions)nativeFunctions[i]===e&&(a=i);return c||o?attachActions(getLocalRefs(e),"(function(){\n var ".concat(r," = ").concat(String(a),";\n ").concat(c,"\n ").concat(o,"\n return ").concat(r,";\n}())")):a}function arrayBufferToString(e,t,n){if(!t.includeBuffers)return "undefined";var r=typedArrayToString(new Int8Array(e),t,n);return "(".concat(r,").buffer")}function dataViewToString(e,t,n){if(!t.includeBuffers)return "undefined";var r=arrayBufferToString(e.buffer,t,n);return "new DataView(".concat(r,", ").concat(e.byteOffset,", ").concat(e.byteLength,")")}function stringify(e,t,n){switch(getInternalType(e)){case "undefined":case "promise":case "generator":return "undefined";case "null":return "null";case "boolean":case "regexp":return String(e);case "string":default:return JSON.stringify(e);case "number":return numberToString(e);case "bigint":return "BigInt(".concat(e,")");case "symbol":return symbolToString(e);case "date":return dateToString(e);case "error":return errorToString(e);case "array":return arrayToString(e,t,n);case "typedarray":return typedArrayToString(e,t,n);case "set":return setToString(e,t,n);case "map":return mapToString(e,t,n);case "object":return objectToString(e,t,n);case "function":case "generatorfunction":return functionToString(e,t,n);case "arraybuffer":return arrayBufferToString(e,t,n);case "dataview":return dataViewToString(e,t,n)}}function stringifyRef(e,t,n){var r="object"==typeof e&&null!==e||"function"==typeof e,c=n.references.indexOf(e);if(r&&n.visited.has(e)&&c<0)return crossRefs.push({destPath:__spreadArray([],n.currentPath,true),sourcePath:n.visited.get(e)||[]}),"null";if(c<0||"string"==typeof n.references[c]){var o=getInternalType(e),a=n.references.length;switch(r&&!n.visited.has(e)&&n.visited.set(e,__spreadArray([],n.currentPath,true)),n.references.push(e),o){case "object":if(n.nestedObjectsLeft<=0)return "undefined";n.nestedObjectsLeft--;break;case "array":case "typedarray":if(n.nestedArraysLeft<=0)return "undefined";n.nestedArraysLeft--;break;case "function":case "generatorfunction":if(n.nestedFunctionsLeft<=0)return "undefined";n.nestedFunctionsLeft--;}var i=stringify(e,t,n);switch(n.references.splice(a),o){case "object":n.nestedObjectsLeft++;break;case "array":case "typedarray":n.nestedArraysLeft++;break;case "function":case "generatorfunction":n.nestedFunctionsLeft++;}return i}return refs.push({historyRef:n.references.slice(0),source:e}),"null"}function attachCrossRefActions(e,t){if(0===e.length)return t;counter=counter++%Number.MAX_SAFE_INTEGER;var n="___j2s_".concat(counter),r=e.map(function(e){var t=e.destPath.map(function(e){return "['".concat(e.replace(/'/gi,"\\'"),"']")}).join(""),r=e.sourcePath.map(function(e){return "['".concat(e.replace(/'/gi,"\\'"),"']")}).join("");return "".concat(n).concat(t," = ").concat(n).concat(r,"; ")}).join("");return "(function(){ var ".concat(n," = ").concat(t,"; ").concat(r,"return ").concat(n,"; }())")}function javaScriptToString(e,t){var n={includeFunctionProperties:void 0===(t=t||{}).includeFunctionProperties||t.includeFunctionProperties,includeFunctionPrototype:void 0===t.includeFunctionPrototype||t.includeFunctionPrototype,includeBuffers:void 0===t.includeBuffers||t.includeBuffers,nestedObjectsAmount:void 0===t.nestedObjectsAmount?Number.POSITIVE_INFINITY:t.nestedObjectsAmount,nestedArraysAmount:void 0===t.nestedArraysAmount?Number.POSITIVE_INFINITY:t.nestedArraysAmount,nestedFunctionsAmount:void 0===t.nestedFunctionsAmount?Number.POSITIVE_INFINITY:t.nestedFunctionsAmount};refs=[],crossRefs=[],counter=0;var r=new Map;r.set(e,[]);var c=stringify(e,n,{references:[e],nestedObjectsLeft:n.nestedObjectsAmount,nestedArraysLeft:n.nestedArraysAmount,nestedFunctionsLeft:n.nestedFunctionsAmount,visited:r,currentPath:[]}),o=attachActions(getLocalRefs(e),c);return attachCrossRefActions(crossRefs,o)} export { javaScriptToString as default }; //# sourceMappingURL=javascripttostring.es5.js.map diff --git a/dist/javascripttostring.es5.js.map b/dist/javascripttostring.es5.js.map index 90489b1..ff21a19 100644 --- a/dist/javascripttostring.es5.js.map +++ b/dist/javascripttostring.es5.js.map @@ -1 +1 @@ -{"version":3,"file":"javascripttostring.es5.js","sources":["../node_modules/@lopatnov/get-internal-type/dist/get-internal-type.es.js","../src/javascripttostring.ts"],"sourcesContent":["var types = {}, typesToString = types.toString, buildInList = [\r\n \"Boolean\",\r\n \"Number\",\r\n \"String\",\r\n \"Function\",\r\n \"Array\",\r\n \"Date\",\r\n \"RegExp\",\r\n \"Object\",\r\n \"Error\",\r\n \"Promise\",\r\n \"Generator\",\r\n \"GeneratorFunction\",\r\n \"ArrayBuffer\",\r\n \"DataView\"\r\n], typedArrays = [\r\n \"Int8Array\",\r\n \"Uint8Array\",\r\n \"Uint8ClampedArray\",\r\n \"Int16Array\",\r\n \"Uint16Array\",\r\n \"Int32Array\",\r\n \"Uint32Array\",\r\n \"Float32Array\",\r\n \"Float64Array\",\r\n \"BigInt64Array\",\r\n \"BigUint64Array\"\r\n], maps = [\"Map\", \"WeakMap\"], sets = [\"Set\", \"WeakSet\"];\r\nbuildInList.forEach(function (name) {\r\n types[\"[object \" + name + \"]\"] = name.toLowerCase();\r\n});\r\nmaps.forEach(function (name) {\r\n types[\"[object \" + name + \"]\"] = \"map\";\r\n});\r\nsets.forEach(function (name) {\r\n types[\"[object \" + name + \"]\"] = \"set\";\r\n});\r\ntypedArrays.forEach(function (name) {\r\n types[\"[object \" + name + \"]\"] = \"typedarray\";\r\n});\r\nfunction getInternalType(obj) {\r\n return obj == null\r\n ? obj + \"\"\r\n : typeof obj === \"object\" || typeof obj === \"function\"\r\n ? types[typesToString.call(obj)] || \"object\"\r\n : typeof obj;\r\n}\n\nexport default getInternalType;\n//# sourceMappingURL=get-internal-type.es.js.map\n",null],"names":["types","typesToString","toString","buildInList","typedArrays","maps","sets","getInternalType","obj","call","forEach","name","toLowerCase","refs","counter","fillNativeFunctions","ext","objName","fromPrototype","protoPath","_i","arrNames_1","Object","getOwnPropertyNames","prototype","name_1","indexOf","concat","nativeFunctions","functions","Array","JSON","Function","Date","String","numberToString","value","Number","isNaN","POSITIVE_INFINITY","NEGATIVE_INFINITY","EPSILON","MAX_SAFE_INTEGER","MIN_SAFE_INTEGER","MAX_VALUE","MIN_VALUE","Math","PI","E","LN10","LN2","LOG10E","LOG2E","SQRT1_2","SQRT2","symbolToString","Symbol","asyncIterator","hasInstance","isConcatSpreadable","iterator","match","replace","search","species","split","toPrimitive","toStringTag","unscopables","description","dateToString","getTime","toISOString","errorToString","message","stringify","fileName","lineNumber","arrayToString","options","history","length","arrayValues","reduce","x1","x2","index","references","push","str","stringifyRef","pop","attachActions","getLocalRefs","filter","x","source","localRefs","result","localName_1","actions","action","converToAction","splice","localName","r","destIndex","historyRef","sourceObj","dest","slice","path","i","destObj","typedArrayToString","arrString","from","constructorName","constructor","setToString","setValues","value1","value2","set","join","mapToString","mapValues","indexValue","key","objectToString","objectValues","propertyName","hasOwnProperty","propertyValue","test","functionPropertiesToString","functionName","functionToString","functionObject","includeFunctionProperties","functionPrototype","includeFunctionPrototype","functionStr","nfName","arrayBufferToString","includeBuffers","Int8Array","dataViewToString","bufString","buffer","byteOffset","byteLength","getObjectType","objectType","referencesLength","nestedObjectsLeft","nestedArraysLeft","nestedFunctionsLeft","refString","javaScriptToString","concreteOptions","undefined","nestedObjectsAmount","nestedArraysAmount","nestedFunctionsAmount"],"mappings":"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","x_google_ignoreList":[0]} \ No newline at end of file +{"version":3,"file":"javascripttostring.es5.js","sources":["../node_modules/tslib/tslib.es6.js","../node_modules/@lopatnov/get-internal-type/dist/get-internal-type.es.js","../src/javascripttostring.ts"],"sourcesContent":["/******************************************************************************\r\nCopyright (c) Microsoft Corporation.\r\n\r\nPermission to use, copy, modify, and/or distribute this software for any\r\npurpose with or without fee is hereby granted.\r\n\r\nTHE SOFTWARE IS PROVIDED \"AS IS\" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH\r\nREGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY\r\nAND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,\r\nINDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM\r\nLOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR\r\nOTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR\r\nPERFORMANCE OF THIS SOFTWARE.\r\n***************************************************************************** */\r\n/* global Reflect, Promise, SuppressedError, Symbol, Iterator */\r\n\r\nvar extendStatics = function(d, b) {\r\n extendStatics = Object.setPrototypeOf ||\r\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\r\n function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };\r\n return extendStatics(d, b);\r\n};\r\n\r\nexport function __extends(d, b) {\r\n if (typeof b !== \"function\" && b !== null)\r\n throw new TypeError(\"Class extends value \" + String(b) + \" is not a constructor or null\");\r\n extendStatics(d, b);\r\n function __() { this.constructor = d; }\r\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\r\n}\r\n\r\nexport var __assign = function() {\r\n __assign = Object.assign || function __assign(t) {\r\n for (var s, i = 1, n = arguments.length; i < n; i++) {\r\n s = arguments[i];\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];\r\n }\r\n return t;\r\n }\r\n return __assign.apply(this, arguments);\r\n}\r\n\r\nexport function __rest(s, e) {\r\n var t = {};\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)\r\n t[p] = s[p];\r\n if (s != null && typeof Object.getOwnPropertySymbols === \"function\")\r\n for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {\r\n if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))\r\n t[p[i]] = s[p[i]];\r\n }\r\n return t;\r\n}\r\n\r\nexport function __decorate(decorators, target, key, desc) {\r\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\r\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\r\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\r\n return c > 3 && r && Object.defineProperty(target, key, r), r;\r\n}\r\n\r\nexport function __param(paramIndex, decorator) {\r\n return function (target, key) { decorator(target, key, paramIndex); }\r\n}\r\n\r\nexport function __esDecorate(ctor, descriptorIn, decorators, contextIn, initializers, extraInitializers) {\r\n function accept(f) { if (f !== void 0 && typeof f !== \"function\") throw new TypeError(\"Function expected\"); return f; }\r\n var kind = contextIn.kind, key = kind === \"getter\" ? \"get\" : kind === \"setter\" ? \"set\" : \"value\";\r\n var target = !descriptorIn && ctor ? contextIn[\"static\"] ? ctor : ctor.prototype : null;\r\n var descriptor = descriptorIn || (target ? Object.getOwnPropertyDescriptor(target, contextIn.name) : {});\r\n var _, done = false;\r\n for (var i = decorators.length - 1; i >= 0; i--) {\r\n var context = {};\r\n for (var p in contextIn) context[p] = p === \"access\" ? {} : contextIn[p];\r\n for (var p in contextIn.access) context.access[p] = contextIn.access[p];\r\n context.addInitializer = function (f) { if (done) throw new TypeError(\"Cannot add initializers after decoration has completed\"); extraInitializers.push(accept(f || null)); };\r\n var result = (0, decorators[i])(kind === \"accessor\" ? { get: descriptor.get, set: descriptor.set } : descriptor[key], context);\r\n if (kind === \"accessor\") {\r\n if (result === void 0) continue;\r\n if (result === null || typeof result !== \"object\") throw new TypeError(\"Object expected\");\r\n if (_ = accept(result.get)) descriptor.get = _;\r\n if (_ = accept(result.set)) descriptor.set = _;\r\n if (_ = accept(result.init)) initializers.unshift(_);\r\n }\r\n else if (_ = accept(result)) {\r\n if (kind === \"field\") initializers.unshift(_);\r\n else descriptor[key] = _;\r\n }\r\n }\r\n if (target) Object.defineProperty(target, contextIn.name, descriptor);\r\n done = true;\r\n};\r\n\r\nexport function __runInitializers(thisArg, initializers, value) {\r\n var useValue = arguments.length > 2;\r\n for (var i = 0; i < initializers.length; i++) {\r\n value = useValue ? initializers[i].call(thisArg, value) : initializers[i].call(thisArg);\r\n }\r\n return useValue ? value : void 0;\r\n};\r\n\r\nexport function __propKey(x) {\r\n return typeof x === \"symbol\" ? x : \"\".concat(x);\r\n};\r\n\r\nexport function __setFunctionName(f, name, prefix) {\r\n if (typeof name === \"symbol\") name = name.description ? \"[\".concat(name.description, \"]\") : \"\";\r\n return Object.defineProperty(f, \"name\", { configurable: true, value: prefix ? \"\".concat(prefix, \" \", name) : name });\r\n};\r\n\r\nexport function __metadata(metadataKey, metadataValue) {\r\n if (typeof Reflect === \"object\" && typeof Reflect.metadata === \"function\") return Reflect.metadata(metadataKey, metadataValue);\r\n}\r\n\r\nexport function __awaiter(thisArg, _arguments, P, generator) {\r\n function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }\r\n return new (P || (P = Promise))(function (resolve, reject) {\r\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\r\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\r\n function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }\r\n step((generator = generator.apply(thisArg, _arguments || [])).next());\r\n });\r\n}\r\n\r\nexport function __generator(thisArg, body) {\r\n var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g = Object.create((typeof Iterator === \"function\" ? Iterator : Object).prototype);\r\n return g.next = verb(0), g[\"throw\"] = verb(1), g[\"return\"] = verb(2), typeof Symbol === \"function\" && (g[Symbol.iterator] = function() { return this; }), g;\r\n function verb(n) { return function (v) { return step([n, v]); }; }\r\n function step(op) {\r\n if (f) throw new TypeError(\"Generator is already executing.\");\r\n while (g && (g = 0, op[0] && (_ = 0)), _) try {\r\n if (f = 1, y && (t = op[0] & 2 ? y[\"return\"] : op[0] ? y[\"throw\"] || ((t = y[\"return\"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;\r\n if (y = 0, t) op = [op[0] & 2, t.value];\r\n switch (op[0]) {\r\n case 0: case 1: t = op; break;\r\n case 4: _.label++; return { value: op[1], done: false };\r\n case 5: _.label++; y = op[1]; op = [0]; continue;\r\n case 7: op = _.ops.pop(); _.trys.pop(); continue;\r\n default:\r\n if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }\r\n if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }\r\n if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }\r\n if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }\r\n if (t[2]) _.ops.pop();\r\n _.trys.pop(); continue;\r\n }\r\n op = body.call(thisArg, _);\r\n } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }\r\n if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };\r\n }\r\n}\r\n\r\nexport var __createBinding = Object.create ? (function(o, m, k, k2) {\r\n if (k2 === undefined) k2 = k;\r\n var desc = Object.getOwnPropertyDescriptor(m, k);\r\n if (!desc || (\"get\" in desc ? !m.__esModule : desc.writable || desc.configurable)) {\r\n desc = { enumerable: true, get: function() { return m[k]; } };\r\n }\r\n Object.defineProperty(o, k2, desc);\r\n}) : (function(o, m, k, k2) {\r\n if (k2 === undefined) k2 = k;\r\n o[k2] = m[k];\r\n});\r\n\r\nexport function __exportStar(m, o) {\r\n for (var p in m) if (p !== \"default\" && !Object.prototype.hasOwnProperty.call(o, p)) __createBinding(o, m, p);\r\n}\r\n\r\nexport function __values(o) {\r\n var s = typeof Symbol === \"function\" && Symbol.iterator, m = s && o[s], i = 0;\r\n if (m) return m.call(o);\r\n if (o && typeof o.length === \"number\") return {\r\n next: function () {\r\n if (o && i >= o.length) o = void 0;\r\n return { value: o && o[i++], done: !o };\r\n }\r\n };\r\n throw new TypeError(s ? \"Object is not iterable.\" : \"Symbol.iterator is not defined.\");\r\n}\r\n\r\nexport function __read(o, n) {\r\n var m = typeof Symbol === \"function\" && o[Symbol.iterator];\r\n if (!m) return o;\r\n var i = m.call(o), r, ar = [], e;\r\n try {\r\n while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);\r\n }\r\n catch (error) { e = { error: error }; }\r\n finally {\r\n try {\r\n if (r && !r.done && (m = i[\"return\"])) m.call(i);\r\n }\r\n finally { if (e) throw e.error; }\r\n }\r\n return ar;\r\n}\r\n\r\n/** @deprecated */\r\nexport function __spread() {\r\n for (var ar = [], i = 0; i < arguments.length; i++)\r\n ar = ar.concat(__read(arguments[i]));\r\n return ar;\r\n}\r\n\r\n/** @deprecated */\r\nexport function __spreadArrays() {\r\n for (var s = 0, i = 0, il = arguments.length; i < il; i++) s += arguments[i].length;\r\n for (var r = Array(s), k = 0, i = 0; i < il; i++)\r\n for (var a = arguments[i], j = 0, jl = a.length; j < jl; j++, k++)\r\n r[k] = a[j];\r\n return r;\r\n}\r\n\r\nexport function __spreadArray(to, from, pack) {\r\n if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {\r\n if (ar || !(i in from)) {\r\n if (!ar) ar = Array.prototype.slice.call(from, 0, i);\r\n ar[i] = from[i];\r\n }\r\n }\r\n return to.concat(ar || Array.prototype.slice.call(from));\r\n}\r\n\r\nexport function __await(v) {\r\n return this instanceof __await ? (this.v = v, this) : new __await(v);\r\n}\r\n\r\nexport function __asyncGenerator(thisArg, _arguments, generator) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var g = generator.apply(thisArg, _arguments || []), i, q = [];\r\n return i = Object.create((typeof AsyncIterator === \"function\" ? AsyncIterator : Object).prototype), verb(\"next\"), verb(\"throw\"), verb(\"return\", awaitReturn), i[Symbol.asyncIterator] = function () { return this; }, i;\r\n function awaitReturn(f) { return function (v) { return Promise.resolve(v).then(f, reject); }; }\r\n function verb(n, f) { if (g[n]) { i[n] = function (v) { return new Promise(function (a, b) { q.push([n, v, a, b]) > 1 || resume(n, v); }); }; if (f) i[n] = f(i[n]); } }\r\n function resume(n, v) { try { step(g[n](v)); } catch (e) { settle(q[0][3], e); } }\r\n function step(r) { r.value instanceof __await ? Promise.resolve(r.value.v).then(fulfill, reject) : settle(q[0][2], r); }\r\n function fulfill(value) { resume(\"next\", value); }\r\n function reject(value) { resume(\"throw\", value); }\r\n function settle(f, v) { if (f(v), q.shift(), q.length) resume(q[0][0], q[0][1]); }\r\n}\r\n\r\nexport function __asyncDelegator(o) {\r\n var i, p;\r\n return i = {}, verb(\"next\"), verb(\"throw\", function (e) { throw e; }), verb(\"return\"), i[Symbol.iterator] = function () { return this; }, i;\r\n function verb(n, f) { i[n] = o[n] ? function (v) { return (p = !p) ? { value: __await(o[n](v)), done: false } : f ? f(v) : v; } : f; }\r\n}\r\n\r\nexport function __asyncValues(o) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var m = o[Symbol.asyncIterator], i;\r\n return m ? m.call(o) : (o = typeof __values === \"function\" ? __values(o) : o[Symbol.iterator](), i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i);\r\n function verb(n) { i[n] = o[n] && function (v) { return new Promise(function (resolve, reject) { v = o[n](v), settle(resolve, reject, v.done, v.value); }); }; }\r\n function settle(resolve, reject, d, v) { Promise.resolve(v).then(function(v) { resolve({ value: v, done: d }); }, reject); }\r\n}\r\n\r\nexport function __makeTemplateObject(cooked, raw) {\r\n if (Object.defineProperty) { Object.defineProperty(cooked, \"raw\", { value: raw }); } else { cooked.raw = raw; }\r\n return cooked;\r\n};\r\n\r\nvar __setModuleDefault = Object.create ? (function(o, v) {\r\n Object.defineProperty(o, \"default\", { enumerable: true, value: v });\r\n}) : function(o, v) {\r\n o[\"default\"] = v;\r\n};\r\n\r\nvar ownKeys = function(o) {\r\n ownKeys = Object.getOwnPropertyNames || function (o) {\r\n var ar = [];\r\n for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;\r\n return ar;\r\n };\r\n return ownKeys(o);\r\n};\r\n\r\nexport function __importStar(mod) {\r\n if (mod && mod.__esModule) return mod;\r\n var result = {};\r\n if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== \"default\") __createBinding(result, mod, k[i]);\r\n __setModuleDefault(result, mod);\r\n return result;\r\n}\r\n\r\nexport function __importDefault(mod) {\r\n return (mod && mod.__esModule) ? mod : { default: mod };\r\n}\r\n\r\nexport function __classPrivateFieldGet(receiver, state, kind, f) {\r\n if (kind === \"a\" && !f) throw new TypeError(\"Private accessor was defined without a getter\");\r\n if (typeof state === \"function\" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError(\"Cannot read private member from an object whose class did not declare it\");\r\n return kind === \"m\" ? f : kind === \"a\" ? f.call(receiver) : f ? f.value : state.get(receiver);\r\n}\r\n\r\nexport function __classPrivateFieldSet(receiver, state, value, kind, f) {\r\n if (kind === \"m\") throw new TypeError(\"Private method is not writable\");\r\n if (kind === \"a\" && !f) throw new TypeError(\"Private accessor was defined without a setter\");\r\n if (typeof state === \"function\" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError(\"Cannot write private member to an object whose class did not declare it\");\r\n return (kind === \"a\" ? f.call(receiver, value) : f ? f.value = value : state.set(receiver, value)), value;\r\n}\r\n\r\nexport function __classPrivateFieldIn(state, receiver) {\r\n if (receiver === null || (typeof receiver !== \"object\" && typeof receiver !== \"function\")) throw new TypeError(\"Cannot use 'in' operator on non-object\");\r\n return typeof state === \"function\" ? receiver === state : state.has(receiver);\r\n}\r\n\r\nexport function __addDisposableResource(env, value, async) {\r\n if (value !== null && value !== void 0) {\r\n if (typeof value !== \"object\" && typeof value !== \"function\") throw new TypeError(\"Object expected.\");\r\n var dispose, inner;\r\n if (async) {\r\n if (!Symbol.asyncDispose) throw new TypeError(\"Symbol.asyncDispose is not defined.\");\r\n dispose = value[Symbol.asyncDispose];\r\n }\r\n if (dispose === void 0) {\r\n if (!Symbol.dispose) throw new TypeError(\"Symbol.dispose is not defined.\");\r\n dispose = value[Symbol.dispose];\r\n if (async) inner = dispose;\r\n }\r\n if (typeof dispose !== \"function\") throw new TypeError(\"Object not disposable.\");\r\n if (inner) dispose = function() { try { inner.call(this); } catch (e) { return Promise.reject(e); } };\r\n env.stack.push({ value: value, dispose: dispose, async: async });\r\n }\r\n else if (async) {\r\n env.stack.push({ async: true });\r\n }\r\n return value;\r\n\r\n}\r\n\r\nvar _SuppressedError = typeof SuppressedError === \"function\" ? SuppressedError : function (error, suppressed, message) {\r\n var e = new Error(message);\r\n return e.name = \"SuppressedError\", e.error = error, e.suppressed = suppressed, e;\r\n};\r\n\r\nexport function __disposeResources(env) {\r\n function fail(e) {\r\n env.error = env.hasError ? new _SuppressedError(e, env.error, \"An error was suppressed during disposal.\") : e;\r\n env.hasError = true;\r\n }\r\n var r, s = 0;\r\n function next() {\r\n while (r = env.stack.pop()) {\r\n try {\r\n if (!r.async && s === 1) return s = 0, env.stack.push(r), Promise.resolve().then(next);\r\n if (r.dispose) {\r\n var result = r.dispose.call(r.value);\r\n if (r.async) return s |= 2, Promise.resolve(result).then(next, function(e) { fail(e); return next(); });\r\n }\r\n else s |= 1;\r\n }\r\n catch (e) {\r\n fail(e);\r\n }\r\n }\r\n if (s === 1) return env.hasError ? Promise.reject(env.error) : Promise.resolve();\r\n if (env.hasError) throw env.error;\r\n }\r\n return next();\r\n}\r\n\r\nexport function __rewriteRelativeImportExtension(path, preserveJsx) {\r\n if (typeof path === \"string\" && /^\\.\\.?\\//.test(path)) {\r\n return path.replace(/\\.(tsx)$|((?:\\.d)?)((?:\\.[^./]+?)?)\\.([cm]?)ts$/i, function (m, tsx, d, ext, cm) {\r\n return tsx ? preserveJsx ? \".jsx\" : \".js\" : d && (!ext || !cm) ? m : (d + ext + \".\" + cm.toLowerCase() + \"js\");\r\n });\r\n }\r\n return path;\r\n}\r\n\r\nexport default {\r\n __extends: __extends,\r\n __assign: __assign,\r\n __rest: __rest,\r\n __decorate: __decorate,\r\n __param: __param,\r\n __esDecorate: __esDecorate,\r\n __runInitializers: __runInitializers,\r\n __propKey: __propKey,\r\n __setFunctionName: __setFunctionName,\r\n __metadata: __metadata,\r\n __awaiter: __awaiter,\r\n __generator: __generator,\r\n __createBinding: __createBinding,\r\n __exportStar: __exportStar,\r\n __values: __values,\r\n __read: __read,\r\n __spread: __spread,\r\n __spreadArrays: __spreadArrays,\r\n __spreadArray: __spreadArray,\r\n __await: __await,\r\n __asyncGenerator: __asyncGenerator,\r\n __asyncDelegator: __asyncDelegator,\r\n __asyncValues: __asyncValues,\r\n __makeTemplateObject: __makeTemplateObject,\r\n __importStar: __importStar,\r\n __importDefault: __importDefault,\r\n __classPrivateFieldGet: __classPrivateFieldGet,\r\n __classPrivateFieldSet: __classPrivateFieldSet,\r\n __classPrivateFieldIn: __classPrivateFieldIn,\r\n __addDisposableResource: __addDisposableResource,\r\n __disposeResources: __disposeResources,\r\n __rewriteRelativeImportExtension: __rewriteRelativeImportExtension,\r\n};\r\n","var types = {}, typesToString = types.toString, buildInList = [\r\n \"Boolean\",\r\n \"Number\",\r\n \"String\",\r\n \"Function\",\r\n \"Array\",\r\n \"Date\",\r\n \"RegExp\",\r\n \"Object\",\r\n \"Error\",\r\n \"Promise\",\r\n \"Generator\",\r\n \"GeneratorFunction\",\r\n \"ArrayBuffer\",\r\n \"DataView\"\r\n], typedArrays = [\r\n \"Int8Array\",\r\n \"Uint8Array\",\r\n \"Uint8ClampedArray\",\r\n \"Int16Array\",\r\n \"Uint16Array\",\r\n \"Int32Array\",\r\n \"Uint32Array\",\r\n \"Float32Array\",\r\n \"Float64Array\",\r\n \"BigInt64Array\",\r\n \"BigUint64Array\"\r\n], maps = [\"Map\", \"WeakMap\"], sets = [\"Set\", \"WeakSet\"];\r\nbuildInList.forEach(function (name) {\r\n types[\"[object \" + name + \"]\"] = name.toLowerCase();\r\n});\r\nmaps.forEach(function (name) {\r\n types[\"[object \" + name + \"]\"] = \"map\";\r\n});\r\nsets.forEach(function (name) {\r\n types[\"[object \" + name + \"]\"] = \"set\";\r\n});\r\ntypedArrays.forEach(function (name) {\r\n types[\"[object \" + name + \"]\"] = \"typedarray\";\r\n});\r\nfunction getInternalType(obj) {\r\n return obj == null\r\n ? obj + \"\"\r\n : typeof obj === \"object\" || typeof obj === \"function\"\r\n ? types[typesToString.call(obj)] || \"object\"\r\n : typeof obj;\r\n}\n\nexport default getInternalType;\n//# sourceMappingURL=get-internal-type.es.js.map\n",null],"names":["__spreadArray","to","from","pack","arguments","length","ar","i","l","Array","prototype","slice","call","concat","SuppressedError","error","suppressed","message","e","Error","name","types","typesToString","toString","buildInList","typedArrays","maps","sets","getInternalType","obj","forEach","toLowerCase","refs","crossRefs","counter","fillNativeFunctions","ext","objName","fromPrototype","protoPath","_i","arrNames_1","Object","getOwnPropertyNames","name_1","indexOf","nativeFunctions","functions","JSON","Function","Date","String","numberToString","value","Number","isNaN","POSITIVE_INFINITY","NEGATIVE_INFINITY","EPSILON","MAX_SAFE_INTEGER","MIN_SAFE_INTEGER","MAX_VALUE","MIN_VALUE","Math","PI","E","LN10","LN2","LOG10E","LOG2E","SQRT1_2","SQRT2","symbolToString","Symbol","asyncIterator","hasInstance","isConcatSpreadable","iterator","match","replace","search","species","split","toPrimitive","toStringTag","unscopables","description","dateToString","getTime","toISOString","errorToString","stringify","fileName","lineNumber","arrayToString","options","history","arrayValues","reduce","x1","x2","index","key","references","push","currentPath","str","stringifyRef","pop","attachActions","getLocalRefs","filter","x","source","localRefs","result","localName_1","actions","action","converToAction","splice","localName","r","destIndex","historyRef","sourceObj","dest","path","destObj","typedArrayToString","arrString","constructorName","constructor","setToString","setValues","value1","value2","set","join","mapToString","mapValues","indexValue","objectToString","objectValues","propertyName","hasOwnProperty","propertyValue","test","functionPropertiesToString","functionName","functionToString","functionObject","includeFunctionProperties","functionPrototype","includeFunctionPrototype","functionStr","nfName","arrayBufferToString","includeBuffers","Int8Array","dataViewToString","bufString","buffer","byteOffset","byteLength","getObjectType","isRefType","visited","has","destPath","sourcePath","get","objectType","referencesLength","nestedObjectsLeft","nestedArraysLeft","nestedFunctionsLeft","refString","attachCrossRefActions","localCrossRefs","map","cr","destAccessor","p","srcAccessor","javaScriptToString","concreteOptions","undefined","nestedObjectsAmount","nestedArraysAmount","nestedFunctionsAmount","Map","circularResult"],"mappings":"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","x_google_ignoreList":[0,1]} \ No newline at end of file diff --git a/dist/javascripttostring.umd.js b/dist/javascripttostring.umd.js index e8fbfac..e18157e 100644 --- a/dist/javascripttostring.umd.js +++ b/dist/javascripttostring.umd.js @@ -4,9 +4,11 @@ (global = typeof globalThis !== 'undefined' ? globalThis : global || self, global.javaScriptToString = factory()); })(this, (function () { 'use strict'; + function __spreadArray(e,t,r){if(r||2===arguments.length)for(var n,o=0,a=t.length;o0){counter=counter++%Number.MAX_SAFE_INTEGER;var t="___j2s_".concat(counter),r=e.reduce(function(e,n){var r=converToAction(t,n);return refs.splice(refs.indexOf(n),1),e+r},"");return "(function(){ var ".concat(t," = ").concat(n,"; ").concat(r," return ").concat(t,"; }())")}return n}function converToAction(e,n){var t=n.historyRef.indexOf(n.source);if(t<0)return "";for(var r,c=n.historyRef.slice(t),o="",a=0;a-1&&a.length<100)for(var i in nativeFunctions)nativeFunctions[i]===e&&(a=i);return c||o?attachActions(getLocalRefs(e),"(function(){\n var ".concat(r," = ").concat(String(a),";\n ").concat(c,"\n ").concat(o,"\n return ").concat(r,";\n}())")):a}function arrayBufferToString(e,n,t){if(!n.includeBuffers)return "undefined";var r=typedArrayToString(new Int8Array(e),n,t);return "(".concat(r,").buffer")}function dataViewToString(e,n,t){if(!n.includeBuffers)return "undefined";var r=arrayBufferToString(e.buffer,n,t);return "new DataView(".concat(r,", ").concat(e.byteOffset,", ").concat(e.byteLength,")")}function stringify(e,n,t){switch(getInternalType(e)){case "undefined":case "promise":case "generator":return "undefined";case "null":return "null";case "boolean":case "regexp":return String(e);case "string":default:return JSON.stringify(e);case "number":return numberToString(e);case "bigint":return "BigInt(".concat(e,")");case "symbol":return symbolToString(e);case "date":return dateToString(e);case "error":return errorToString(e);case "array":return arrayToString(e,n,t);case "typedarray":return typedArrayToString(e,n,t);case "set":return setToString(e,n,t);case "map":return mapToString(e,n,t);case "object":return objectToString(e,n,t);case "function":case "generatorfunction":return functionToString(e,n,t);case "arraybuffer":return arrayBufferToString(e,n,t);case "dataview":return dataViewToString(e,n,t)}}function stringifyRef(e,n,t){var r=t.references.indexOf(e);if(r<0||"string"==typeof t.references[r]){var c=getInternalType(e),o=t.references.length;switch(t.references.push(e),c){case "object":if(t.nestedObjectsLeft<=0)return "undefined";t.nestedObjectsLeft--;break;case "array":case "typedarray":if(t.nestedArraysLeft<=0)return "undefined";t.nestedArraysLeft--;break;case "function":case "generatorfunction":if(t.nestedFunctionsLeft<=0)return "undefined";t.nestedFunctionsLeft--;}var a=stringify(e,n,t);switch(t.references.splice(o),c){case "object":t.nestedObjectsLeft++;break;case "array":case "typedarray":t.nestedArraysLeft++;break;case "function":case "generatorfunction":t.nestedFunctionsLeft++;}return a}return refs.push({historyRef:t.references.slice(0),source:e}),"null"}function javaScriptToString(e,n){var t={includeFunctionProperties:void 0===(n=n||{}).includeFunctionProperties||n.includeFunctionProperties,includeFunctionPrototype:void 0===n.includeFunctionPrototype||n.includeFunctionPrototype,includeBuffers:void 0===n.includeBuffers||n.includeBuffers,nestedObjectsAmount:void 0===n.nestedObjectsAmount?Number.POSITIVE_INFINITY:n.nestedObjectsAmount,nestedArraysAmount:void 0===n.nestedArraysAmount?Number.POSITIVE_INFINITY:n.nestedArraysAmount,nestedFunctionsAmount:void 0===n.nestedFunctionsAmount?Number.POSITIVE_INFINITY:n.nestedFunctionsAmount};refs=[],counter=0;var r=stringify(e,t,{references:[e],nestedObjectsLeft:t.nestedObjectsAmount,nestedArraysLeft:t.nestedArraysAmount,nestedFunctionsLeft:t.nestedFunctionsAmount});return attachActions(getLocalRefs(e),r)} + var refs=[],crossRefs=[],counter=0;function fillNativeFunctions(e,t,n,r){ void 0===r&&(r=true);for(var c=r?".prototype.":".",o=0,a=Object.getOwnPropertyNames(r?t.prototype:t);o0){counter=counter++%Number.MAX_SAFE_INTEGER;var n="___j2s_".concat(counter),r=e.reduce(function(e,t){var r=converToAction(n,t);return refs.splice(refs.indexOf(t),1),e+r},"");return "(function(){ var ".concat(n," = ").concat(t,"; ").concat(r," return ").concat(n,"; }())")}return t}function converToAction(e,t){var n=t.historyRef.indexOf(t.source);if(n<0)return "";for(var r,c=t.historyRef.slice(n),o="",a=0;a-1&&a.length<100)for(var i in nativeFunctions)nativeFunctions[i]===e&&(a=i);return c||o?attachActions(getLocalRefs(e),"(function(){\n var ".concat(r," = ").concat(String(a),";\n ").concat(c,"\n ").concat(o,"\n return ").concat(r,";\n}())")):a}function arrayBufferToString(e,t,n){if(!t.includeBuffers)return "undefined";var r=typedArrayToString(new Int8Array(e),t,n);return "(".concat(r,").buffer")}function dataViewToString(e,t,n){if(!t.includeBuffers)return "undefined";var r=arrayBufferToString(e.buffer,t,n);return "new DataView(".concat(r,", ").concat(e.byteOffset,", ").concat(e.byteLength,")")}function stringify(e,t,n){switch(getInternalType(e)){case "undefined":case "promise":case "generator":return "undefined";case "null":return "null";case "boolean":case "regexp":return String(e);case "string":default:return JSON.stringify(e);case "number":return numberToString(e);case "bigint":return "BigInt(".concat(e,")");case "symbol":return symbolToString(e);case "date":return dateToString(e);case "error":return errorToString(e);case "array":return arrayToString(e,t,n);case "typedarray":return typedArrayToString(e,t,n);case "set":return setToString(e,t,n);case "map":return mapToString(e,t,n);case "object":return objectToString(e,t,n);case "function":case "generatorfunction":return functionToString(e,t,n);case "arraybuffer":return arrayBufferToString(e,t,n);case "dataview":return dataViewToString(e,t,n)}}function stringifyRef(e,t,n){var r="object"==typeof e&&null!==e||"function"==typeof e,c=n.references.indexOf(e);if(r&&n.visited.has(e)&&c<0)return crossRefs.push({destPath:__spreadArray([],n.currentPath,true),sourcePath:n.visited.get(e)||[]}),"null";if(c<0||"string"==typeof n.references[c]){var o=getInternalType(e),a=n.references.length;switch(r&&!n.visited.has(e)&&n.visited.set(e,__spreadArray([],n.currentPath,true)),n.references.push(e),o){case "object":if(n.nestedObjectsLeft<=0)return "undefined";n.nestedObjectsLeft--;break;case "array":case "typedarray":if(n.nestedArraysLeft<=0)return "undefined";n.nestedArraysLeft--;break;case "function":case "generatorfunction":if(n.nestedFunctionsLeft<=0)return "undefined";n.nestedFunctionsLeft--;}var i=stringify(e,t,n);switch(n.references.splice(a),o){case "object":n.nestedObjectsLeft++;break;case "array":case "typedarray":n.nestedArraysLeft++;break;case "function":case "generatorfunction":n.nestedFunctionsLeft++;}return i}return refs.push({historyRef:n.references.slice(0),source:e}),"null"}function attachCrossRefActions(e,t){if(0===e.length)return t;counter=counter++%Number.MAX_SAFE_INTEGER;var n="___j2s_".concat(counter),r=e.map(function(e){var t=e.destPath.map(function(e){return "['".concat(e.replace(/'/gi,"\\'"),"']")}).join(""),r=e.sourcePath.map(function(e){return "['".concat(e.replace(/'/gi,"\\'"),"']")}).join("");return "".concat(n).concat(t," = ").concat(n).concat(r,"; ")}).join("");return "(function(){ var ".concat(n," = ").concat(t,"; ").concat(r,"return ").concat(n,"; }())")}function javaScriptToString(e,t){var n={includeFunctionProperties:void 0===(t=t||{}).includeFunctionProperties||t.includeFunctionProperties,includeFunctionPrototype:void 0===t.includeFunctionPrototype||t.includeFunctionPrototype,includeBuffers:void 0===t.includeBuffers||t.includeBuffers,nestedObjectsAmount:void 0===t.nestedObjectsAmount?Number.POSITIVE_INFINITY:t.nestedObjectsAmount,nestedArraysAmount:void 0===t.nestedArraysAmount?Number.POSITIVE_INFINITY:t.nestedArraysAmount,nestedFunctionsAmount:void 0===t.nestedFunctionsAmount?Number.POSITIVE_INFINITY:t.nestedFunctionsAmount};refs=[],crossRefs=[],counter=0;var r=new Map;r.set(e,[]);var c=stringify(e,n,{references:[e],nestedObjectsLeft:n.nestedObjectsAmount,nestedArraysLeft:n.nestedArraysAmount,nestedFunctionsLeft:n.nestedFunctionsAmount,visited:r,currentPath:[]}),o=attachActions(getLocalRefs(e),c);return attachCrossRefActions(crossRefs,o)} return javaScriptToString; diff --git a/dist/javascripttostring.umd.js.map b/dist/javascripttostring.umd.js.map index 4b270d5..1a97054 100644 --- a/dist/javascripttostring.umd.js.map +++ b/dist/javascripttostring.umd.js.map @@ -1 +1 @@ -{"version":3,"file":"javascripttostring.umd.js","sources":["../node_modules/@lopatnov/get-internal-type/dist/get-internal-type.es.js","../src/javascripttostring.ts"],"sourcesContent":["var types = {}, typesToString = types.toString, buildInList = [\r\n \"Boolean\",\r\n \"Number\",\r\n \"String\",\r\n \"Function\",\r\n \"Array\",\r\n \"Date\",\r\n \"RegExp\",\r\n \"Object\",\r\n \"Error\",\r\n \"Promise\",\r\n \"Generator\",\r\n \"GeneratorFunction\",\r\n \"ArrayBuffer\",\r\n \"DataView\"\r\n], typedArrays = [\r\n \"Int8Array\",\r\n \"Uint8Array\",\r\n \"Uint8ClampedArray\",\r\n \"Int16Array\",\r\n \"Uint16Array\",\r\n \"Int32Array\",\r\n \"Uint32Array\",\r\n \"Float32Array\",\r\n \"Float64Array\",\r\n \"BigInt64Array\",\r\n \"BigUint64Array\"\r\n], maps = [\"Map\", \"WeakMap\"], sets = [\"Set\", \"WeakSet\"];\r\nbuildInList.forEach(function (name) {\r\n types[\"[object \" + name + \"]\"] = name.toLowerCase();\r\n});\r\nmaps.forEach(function (name) {\r\n types[\"[object \" + name + \"]\"] = \"map\";\r\n});\r\nsets.forEach(function (name) {\r\n types[\"[object \" + name + \"]\"] = \"set\";\r\n});\r\ntypedArrays.forEach(function (name) {\r\n types[\"[object \" + name + \"]\"] = \"typedarray\";\r\n});\r\nfunction getInternalType(obj) {\r\n return obj == null\r\n ? obj + \"\"\r\n : typeof obj === \"object\" || typeof obj === \"function\"\r\n ? types[typesToString.call(obj)] || \"object\"\r\n : typeof obj;\r\n}\n\nexport default getInternalType;\n//# sourceMappingURL=get-internal-type.es.js.map\n",null],"names":["types","typesToString","toString","buildInList","typedArrays","maps","sets","getInternalType","obj","call","forEach","name","toLowerCase","refs","counter","fillNativeFunctions","ext","objName","fromPrototype","protoPath","_i","arrNames_1","Object","getOwnPropertyNames","prototype","name_1","indexOf","concat","nativeFunctions","functions","Array","JSON","Function","Date","String","numberToString","value","Number","isNaN","POSITIVE_INFINITY","NEGATIVE_INFINITY","EPSILON","MAX_SAFE_INTEGER","MIN_SAFE_INTEGER","MAX_VALUE","MIN_VALUE","Math","PI","E","LN10","LN2","LOG10E","LOG2E","SQRT1_2","SQRT2","symbolToString","Symbol","asyncIterator","hasInstance","isConcatSpreadable","iterator","match","replace","search","species","split","toPrimitive","toStringTag","unscopables","description","dateToString","getTime","toISOString","errorToString","message","stringify","fileName","lineNumber","arrayToString","options","history","length","arrayValues","reduce","x1","x2","index","references","push","str","stringifyRef","pop","attachActions","getLocalRefs","filter","x","source","localRefs","result","localName_1","actions","action","converToAction","splice","localName","r","destIndex","historyRef","sourceObj","dest","slice","path","i","destObj","typedArrayToString","arrString","from","constructorName","constructor","setToString","setValues","value1","value2","set","join","mapToString","mapValues","indexValue","key","objectToString","objectValues","propertyName","hasOwnProperty","propertyValue","test","functionPropertiesToString","functionName","functionToString","functionObject","includeFunctionProperties","functionPrototype","includeFunctionPrototype","functionStr","nfName","arrayBufferToString","includeBuffers","Int8Array","dataViewToString","bufString","buffer","byteOffset","byteLength","getObjectType","objectType","referencesLength","nestedObjectsLeft","nestedArraysLeft","nestedFunctionsLeft","refString","javaScriptToString","concreteOptions","undefined","nestedObjectsAmount","nestedArraysAmount","nestedFunctionsAmount"],"mappings":"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","x_google_ignoreList":[0]} \ No newline at end of file +{"version":3,"file":"javascripttostring.umd.js","sources":["../node_modules/tslib/tslib.es6.js","../node_modules/@lopatnov/get-internal-type/dist/get-internal-type.es.js","../src/javascripttostring.ts"],"sourcesContent":["/******************************************************************************\r\nCopyright (c) Microsoft Corporation.\r\n\r\nPermission to use, copy, modify, and/or distribute this software for any\r\npurpose with or without fee is hereby granted.\r\n\r\nTHE SOFTWARE IS PROVIDED \"AS IS\" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH\r\nREGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY\r\nAND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,\r\nINDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM\r\nLOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR\r\nOTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR\r\nPERFORMANCE OF THIS SOFTWARE.\r\n***************************************************************************** */\r\n/* global Reflect, Promise, SuppressedError, Symbol, Iterator */\r\n\r\nvar extendStatics = function(d, b) {\r\n extendStatics = Object.setPrototypeOf ||\r\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\r\n function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };\r\n return extendStatics(d, b);\r\n};\r\n\r\nexport function __extends(d, b) {\r\n if (typeof b !== \"function\" && b !== null)\r\n throw new TypeError(\"Class extends value \" + String(b) + \" is not a constructor or null\");\r\n extendStatics(d, b);\r\n function __() { this.constructor = d; }\r\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\r\n}\r\n\r\nexport var __assign = function() {\r\n __assign = Object.assign || function __assign(t) {\r\n for (var s, i = 1, n = arguments.length; i < n; i++) {\r\n s = arguments[i];\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];\r\n }\r\n return t;\r\n }\r\n return __assign.apply(this, arguments);\r\n}\r\n\r\nexport function __rest(s, e) {\r\n var t = {};\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)\r\n t[p] = s[p];\r\n if (s != null && typeof Object.getOwnPropertySymbols === \"function\")\r\n for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {\r\n if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))\r\n t[p[i]] = s[p[i]];\r\n }\r\n return t;\r\n}\r\n\r\nexport function __decorate(decorators, target, key, desc) {\r\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\r\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\r\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\r\n return c > 3 && r && Object.defineProperty(target, key, r), r;\r\n}\r\n\r\nexport function __param(paramIndex, decorator) {\r\n return function (target, key) { decorator(target, key, paramIndex); }\r\n}\r\n\r\nexport function __esDecorate(ctor, descriptorIn, decorators, contextIn, initializers, extraInitializers) {\r\n function accept(f) { if (f !== void 0 && typeof f !== \"function\") throw new TypeError(\"Function expected\"); return f; }\r\n var kind = contextIn.kind, key = kind === \"getter\" ? \"get\" : kind === \"setter\" ? \"set\" : \"value\";\r\n var target = !descriptorIn && ctor ? contextIn[\"static\"] ? ctor : ctor.prototype : null;\r\n var descriptor = descriptorIn || (target ? Object.getOwnPropertyDescriptor(target, contextIn.name) : {});\r\n var _, done = false;\r\n for (var i = decorators.length - 1; i >= 0; i--) {\r\n var context = {};\r\n for (var p in contextIn) context[p] = p === \"access\" ? {} : contextIn[p];\r\n for (var p in contextIn.access) context.access[p] = contextIn.access[p];\r\n context.addInitializer = function (f) { if (done) throw new TypeError(\"Cannot add initializers after decoration has completed\"); extraInitializers.push(accept(f || null)); };\r\n var result = (0, decorators[i])(kind === \"accessor\" ? { get: descriptor.get, set: descriptor.set } : descriptor[key], context);\r\n if (kind === \"accessor\") {\r\n if (result === void 0) continue;\r\n if (result === null || typeof result !== \"object\") throw new TypeError(\"Object expected\");\r\n if (_ = accept(result.get)) descriptor.get = _;\r\n if (_ = accept(result.set)) descriptor.set = _;\r\n if (_ = accept(result.init)) initializers.unshift(_);\r\n }\r\n else if (_ = accept(result)) {\r\n if (kind === \"field\") initializers.unshift(_);\r\n else descriptor[key] = _;\r\n }\r\n }\r\n if (target) Object.defineProperty(target, contextIn.name, descriptor);\r\n done = true;\r\n};\r\n\r\nexport function __runInitializers(thisArg, initializers, value) {\r\n var useValue = arguments.length > 2;\r\n for (var i = 0; i < initializers.length; i++) {\r\n value = useValue ? initializers[i].call(thisArg, value) : initializers[i].call(thisArg);\r\n }\r\n return useValue ? value : void 0;\r\n};\r\n\r\nexport function __propKey(x) {\r\n return typeof x === \"symbol\" ? x : \"\".concat(x);\r\n};\r\n\r\nexport function __setFunctionName(f, name, prefix) {\r\n if (typeof name === \"symbol\") name = name.description ? \"[\".concat(name.description, \"]\") : \"\";\r\n return Object.defineProperty(f, \"name\", { configurable: true, value: prefix ? \"\".concat(prefix, \" \", name) : name });\r\n};\r\n\r\nexport function __metadata(metadataKey, metadataValue) {\r\n if (typeof Reflect === \"object\" && typeof Reflect.metadata === \"function\") return Reflect.metadata(metadataKey, metadataValue);\r\n}\r\n\r\nexport function __awaiter(thisArg, _arguments, P, generator) {\r\n function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }\r\n return new (P || (P = Promise))(function (resolve, reject) {\r\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\r\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\r\n function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }\r\n step((generator = generator.apply(thisArg, _arguments || [])).next());\r\n });\r\n}\r\n\r\nexport function __generator(thisArg, body) {\r\n var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g = Object.create((typeof Iterator === \"function\" ? Iterator : Object).prototype);\r\n return g.next = verb(0), g[\"throw\"] = verb(1), g[\"return\"] = verb(2), typeof Symbol === \"function\" && (g[Symbol.iterator] = function() { return this; }), g;\r\n function verb(n) { return function (v) { return step([n, v]); }; }\r\n function step(op) {\r\n if (f) throw new TypeError(\"Generator is already executing.\");\r\n while (g && (g = 0, op[0] && (_ = 0)), _) try {\r\n if (f = 1, y && (t = op[0] & 2 ? y[\"return\"] : op[0] ? y[\"throw\"] || ((t = y[\"return\"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;\r\n if (y = 0, t) op = [op[0] & 2, t.value];\r\n switch (op[0]) {\r\n case 0: case 1: t = op; break;\r\n case 4: _.label++; return { value: op[1], done: false };\r\n case 5: _.label++; y = op[1]; op = [0]; continue;\r\n case 7: op = _.ops.pop(); _.trys.pop(); continue;\r\n default:\r\n if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }\r\n if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }\r\n if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }\r\n if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }\r\n if (t[2]) _.ops.pop();\r\n _.trys.pop(); continue;\r\n }\r\n op = body.call(thisArg, _);\r\n } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }\r\n if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };\r\n }\r\n}\r\n\r\nexport var __createBinding = Object.create ? (function(o, m, k, k2) {\r\n if (k2 === undefined) k2 = k;\r\n var desc = Object.getOwnPropertyDescriptor(m, k);\r\n if (!desc || (\"get\" in desc ? !m.__esModule : desc.writable || desc.configurable)) {\r\n desc = { enumerable: true, get: function() { return m[k]; } };\r\n }\r\n Object.defineProperty(o, k2, desc);\r\n}) : (function(o, m, k, k2) {\r\n if (k2 === undefined) k2 = k;\r\n o[k2] = m[k];\r\n});\r\n\r\nexport function __exportStar(m, o) {\r\n for (var p in m) if (p !== \"default\" && !Object.prototype.hasOwnProperty.call(o, p)) __createBinding(o, m, p);\r\n}\r\n\r\nexport function __values(o) {\r\n var s = typeof Symbol === \"function\" && Symbol.iterator, m = s && o[s], i = 0;\r\n if (m) return m.call(o);\r\n if (o && typeof o.length === \"number\") return {\r\n next: function () {\r\n if (o && i >= o.length) o = void 0;\r\n return { value: o && o[i++], done: !o };\r\n }\r\n };\r\n throw new TypeError(s ? \"Object is not iterable.\" : \"Symbol.iterator is not defined.\");\r\n}\r\n\r\nexport function __read(o, n) {\r\n var m = typeof Symbol === \"function\" && o[Symbol.iterator];\r\n if (!m) return o;\r\n var i = m.call(o), r, ar = [], e;\r\n try {\r\n while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);\r\n }\r\n catch (error) { e = { error: error }; }\r\n finally {\r\n try {\r\n if (r && !r.done && (m = i[\"return\"])) m.call(i);\r\n }\r\n finally { if (e) throw e.error; }\r\n }\r\n return ar;\r\n}\r\n\r\n/** @deprecated */\r\nexport function __spread() {\r\n for (var ar = [], i = 0; i < arguments.length; i++)\r\n ar = ar.concat(__read(arguments[i]));\r\n return ar;\r\n}\r\n\r\n/** @deprecated */\r\nexport function __spreadArrays() {\r\n for (var s = 0, i = 0, il = arguments.length; i < il; i++) s += arguments[i].length;\r\n for (var r = Array(s), k = 0, i = 0; i < il; i++)\r\n for (var a = arguments[i], j = 0, jl = a.length; j < jl; j++, k++)\r\n r[k] = a[j];\r\n return r;\r\n}\r\n\r\nexport function __spreadArray(to, from, pack) {\r\n if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {\r\n if (ar || !(i in from)) {\r\n if (!ar) ar = Array.prototype.slice.call(from, 0, i);\r\n ar[i] = from[i];\r\n }\r\n }\r\n return to.concat(ar || Array.prototype.slice.call(from));\r\n}\r\n\r\nexport function __await(v) {\r\n return this instanceof __await ? (this.v = v, this) : new __await(v);\r\n}\r\n\r\nexport function __asyncGenerator(thisArg, _arguments, generator) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var g = generator.apply(thisArg, _arguments || []), i, q = [];\r\n return i = Object.create((typeof AsyncIterator === \"function\" ? AsyncIterator : Object).prototype), verb(\"next\"), verb(\"throw\"), verb(\"return\", awaitReturn), i[Symbol.asyncIterator] = function () { return this; }, i;\r\n function awaitReturn(f) { return function (v) { return Promise.resolve(v).then(f, reject); }; }\r\n function verb(n, f) { if (g[n]) { i[n] = function (v) { return new Promise(function (a, b) { q.push([n, v, a, b]) > 1 || resume(n, v); }); }; if (f) i[n] = f(i[n]); } }\r\n function resume(n, v) { try { step(g[n](v)); } catch (e) { settle(q[0][3], e); } }\r\n function step(r) { r.value instanceof __await ? Promise.resolve(r.value.v).then(fulfill, reject) : settle(q[0][2], r); }\r\n function fulfill(value) { resume(\"next\", value); }\r\n function reject(value) { resume(\"throw\", value); }\r\n function settle(f, v) { if (f(v), q.shift(), q.length) resume(q[0][0], q[0][1]); }\r\n}\r\n\r\nexport function __asyncDelegator(o) {\r\n var i, p;\r\n return i = {}, verb(\"next\"), verb(\"throw\", function (e) { throw e; }), verb(\"return\"), i[Symbol.iterator] = function () { return this; }, i;\r\n function verb(n, f) { i[n] = o[n] ? function (v) { return (p = !p) ? { value: __await(o[n](v)), done: false } : f ? f(v) : v; } : f; }\r\n}\r\n\r\nexport function __asyncValues(o) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var m = o[Symbol.asyncIterator], i;\r\n return m ? m.call(o) : (o = typeof __values === \"function\" ? __values(o) : o[Symbol.iterator](), i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i);\r\n function verb(n) { i[n] = o[n] && function (v) { return new Promise(function (resolve, reject) { v = o[n](v), settle(resolve, reject, v.done, v.value); }); }; }\r\n function settle(resolve, reject, d, v) { Promise.resolve(v).then(function(v) { resolve({ value: v, done: d }); }, reject); }\r\n}\r\n\r\nexport function __makeTemplateObject(cooked, raw) {\r\n if (Object.defineProperty) { Object.defineProperty(cooked, \"raw\", { value: raw }); } else { cooked.raw = raw; }\r\n return cooked;\r\n};\r\n\r\nvar __setModuleDefault = Object.create ? (function(o, v) {\r\n Object.defineProperty(o, \"default\", { enumerable: true, value: v });\r\n}) : function(o, v) {\r\n o[\"default\"] = v;\r\n};\r\n\r\nvar ownKeys = function(o) {\r\n ownKeys = Object.getOwnPropertyNames || function (o) {\r\n var ar = [];\r\n for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;\r\n return ar;\r\n };\r\n return ownKeys(o);\r\n};\r\n\r\nexport function __importStar(mod) {\r\n if (mod && mod.__esModule) return mod;\r\n var result = {};\r\n if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== \"default\") __createBinding(result, mod, k[i]);\r\n __setModuleDefault(result, mod);\r\n return result;\r\n}\r\n\r\nexport function __importDefault(mod) {\r\n return (mod && mod.__esModule) ? mod : { default: mod };\r\n}\r\n\r\nexport function __classPrivateFieldGet(receiver, state, kind, f) {\r\n if (kind === \"a\" && !f) throw new TypeError(\"Private accessor was defined without a getter\");\r\n if (typeof state === \"function\" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError(\"Cannot read private member from an object whose class did not declare it\");\r\n return kind === \"m\" ? f : kind === \"a\" ? f.call(receiver) : f ? f.value : state.get(receiver);\r\n}\r\n\r\nexport function __classPrivateFieldSet(receiver, state, value, kind, f) {\r\n if (kind === \"m\") throw new TypeError(\"Private method is not writable\");\r\n if (kind === \"a\" && !f) throw new TypeError(\"Private accessor was defined without a setter\");\r\n if (typeof state === \"function\" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError(\"Cannot write private member to an object whose class did not declare it\");\r\n return (kind === \"a\" ? f.call(receiver, value) : f ? f.value = value : state.set(receiver, value)), value;\r\n}\r\n\r\nexport function __classPrivateFieldIn(state, receiver) {\r\n if (receiver === null || (typeof receiver !== \"object\" && typeof receiver !== \"function\")) throw new TypeError(\"Cannot use 'in' operator on non-object\");\r\n return typeof state === \"function\" ? receiver === state : state.has(receiver);\r\n}\r\n\r\nexport function __addDisposableResource(env, value, async) {\r\n if (value !== null && value !== void 0) {\r\n if (typeof value !== \"object\" && typeof value !== \"function\") throw new TypeError(\"Object expected.\");\r\n var dispose, inner;\r\n if (async) {\r\n if (!Symbol.asyncDispose) throw new TypeError(\"Symbol.asyncDispose is not defined.\");\r\n dispose = value[Symbol.asyncDispose];\r\n }\r\n if (dispose === void 0) {\r\n if (!Symbol.dispose) throw new TypeError(\"Symbol.dispose is not defined.\");\r\n dispose = value[Symbol.dispose];\r\n if (async) inner = dispose;\r\n }\r\n if (typeof dispose !== \"function\") throw new TypeError(\"Object not disposable.\");\r\n if (inner) dispose = function() { try { inner.call(this); } catch (e) { return Promise.reject(e); } };\r\n env.stack.push({ value: value, dispose: dispose, async: async });\r\n }\r\n else if (async) {\r\n env.stack.push({ async: true });\r\n }\r\n return value;\r\n\r\n}\r\n\r\nvar _SuppressedError = typeof SuppressedError === \"function\" ? SuppressedError : function (error, suppressed, message) {\r\n var e = new Error(message);\r\n return e.name = \"SuppressedError\", e.error = error, e.suppressed = suppressed, e;\r\n};\r\n\r\nexport function __disposeResources(env) {\r\n function fail(e) {\r\n env.error = env.hasError ? new _SuppressedError(e, env.error, \"An error was suppressed during disposal.\") : e;\r\n env.hasError = true;\r\n }\r\n var r, s = 0;\r\n function next() {\r\n while (r = env.stack.pop()) {\r\n try {\r\n if (!r.async && s === 1) return s = 0, env.stack.push(r), Promise.resolve().then(next);\r\n if (r.dispose) {\r\n var result = r.dispose.call(r.value);\r\n if (r.async) return s |= 2, Promise.resolve(result).then(next, function(e) { fail(e); return next(); });\r\n }\r\n else s |= 1;\r\n }\r\n catch (e) {\r\n fail(e);\r\n }\r\n }\r\n if (s === 1) return env.hasError ? Promise.reject(env.error) : Promise.resolve();\r\n if (env.hasError) throw env.error;\r\n }\r\n return next();\r\n}\r\n\r\nexport function __rewriteRelativeImportExtension(path, preserveJsx) {\r\n if (typeof path === \"string\" && /^\\.\\.?\\//.test(path)) {\r\n return path.replace(/\\.(tsx)$|((?:\\.d)?)((?:\\.[^./]+?)?)\\.([cm]?)ts$/i, function (m, tsx, d, ext, cm) {\r\n return tsx ? preserveJsx ? \".jsx\" : \".js\" : d && (!ext || !cm) ? m : (d + ext + \".\" + cm.toLowerCase() + \"js\");\r\n });\r\n }\r\n return path;\r\n}\r\n\r\nexport default {\r\n __extends: __extends,\r\n __assign: __assign,\r\n __rest: __rest,\r\n __decorate: __decorate,\r\n __param: __param,\r\n __esDecorate: __esDecorate,\r\n __runInitializers: __runInitializers,\r\n __propKey: __propKey,\r\n __setFunctionName: __setFunctionName,\r\n __metadata: __metadata,\r\n __awaiter: __awaiter,\r\n __generator: __generator,\r\n __createBinding: __createBinding,\r\n __exportStar: __exportStar,\r\n __values: __values,\r\n __read: __read,\r\n __spread: __spread,\r\n __spreadArrays: __spreadArrays,\r\n __spreadArray: __spreadArray,\r\n __await: __await,\r\n __asyncGenerator: __asyncGenerator,\r\n __asyncDelegator: __asyncDelegator,\r\n __asyncValues: __asyncValues,\r\n __makeTemplateObject: __makeTemplateObject,\r\n __importStar: __importStar,\r\n __importDefault: __importDefault,\r\n __classPrivateFieldGet: __classPrivateFieldGet,\r\n __classPrivateFieldSet: __classPrivateFieldSet,\r\n __classPrivateFieldIn: __classPrivateFieldIn,\r\n __addDisposableResource: __addDisposableResource,\r\n __disposeResources: __disposeResources,\r\n __rewriteRelativeImportExtension: __rewriteRelativeImportExtension,\r\n};\r\n","var types = {}, typesToString = types.toString, buildInList = [\r\n \"Boolean\",\r\n \"Number\",\r\n \"String\",\r\n \"Function\",\r\n \"Array\",\r\n \"Date\",\r\n \"RegExp\",\r\n \"Object\",\r\n \"Error\",\r\n \"Promise\",\r\n \"Generator\",\r\n \"GeneratorFunction\",\r\n \"ArrayBuffer\",\r\n \"DataView\"\r\n], typedArrays = [\r\n \"Int8Array\",\r\n \"Uint8Array\",\r\n \"Uint8ClampedArray\",\r\n \"Int16Array\",\r\n \"Uint16Array\",\r\n \"Int32Array\",\r\n \"Uint32Array\",\r\n \"Float32Array\",\r\n \"Float64Array\",\r\n \"BigInt64Array\",\r\n \"BigUint64Array\"\r\n], maps = [\"Map\", \"WeakMap\"], sets = [\"Set\", \"WeakSet\"];\r\nbuildInList.forEach(function (name) {\r\n types[\"[object \" + name + \"]\"] = name.toLowerCase();\r\n});\r\nmaps.forEach(function (name) {\r\n types[\"[object \" + name + \"]\"] = \"map\";\r\n});\r\nsets.forEach(function (name) {\r\n types[\"[object \" + name + \"]\"] = \"set\";\r\n});\r\ntypedArrays.forEach(function (name) {\r\n types[\"[object \" + name + \"]\"] = \"typedarray\";\r\n});\r\nfunction getInternalType(obj) {\r\n return obj == null\r\n ? obj + \"\"\r\n : typeof obj === \"object\" || typeof obj === \"function\"\r\n ? types[typesToString.call(obj)] || \"object\"\r\n : typeof obj;\r\n}\n\nexport default getInternalType;\n//# sourceMappingURL=get-internal-type.es.js.map\n",null],"names":["__spreadArray","to","from","pack","arguments","length","ar","i","l","Array","prototype","slice","call","concat","SuppressedError","error","suppressed","message","e","Error","name","types","typesToString","toString","buildInList","typedArrays","maps","sets","getInternalType","obj","forEach","toLowerCase","refs","crossRefs","counter","fillNativeFunctions","ext","objName","fromPrototype","protoPath","_i","arrNames_1","Object","getOwnPropertyNames","name_1","indexOf","nativeFunctions","functions","JSON","Function","Date","String","numberToString","value","Number","isNaN","POSITIVE_INFINITY","NEGATIVE_INFINITY","EPSILON","MAX_SAFE_INTEGER","MIN_SAFE_INTEGER","MAX_VALUE","MIN_VALUE","Math","PI","E","LN10","LN2","LOG10E","LOG2E","SQRT1_2","SQRT2","symbolToString","Symbol","asyncIterator","hasInstance","isConcatSpreadable","iterator","match","replace","search","species","split","toPrimitive","toStringTag","unscopables","description","dateToString","getTime","toISOString","errorToString","stringify","fileName","lineNumber","arrayToString","options","history","arrayValues","reduce","x1","x2","index","key","references","push","currentPath","str","stringifyRef","pop","attachActions","getLocalRefs","filter","x","source","localRefs","result","localName_1","actions","action","converToAction","splice","localName","r","destIndex","historyRef","sourceObj","dest","path","destObj","typedArrayToString","arrString","constructorName","constructor","setToString","setValues","value1","value2","set","join","mapToString","mapValues","indexValue","objectToString","objectValues","propertyName","hasOwnProperty","propertyValue","test","functionPropertiesToString","functionName","functionToString","functionObject","includeFunctionProperties","functionPrototype","includeFunctionPrototype","functionStr","nfName","arrayBufferToString","includeBuffers","Int8Array","dataViewToString","bufString","buffer","byteOffset","byteLength","getObjectType","isRefType","visited","has","destPath","sourcePath","get","objectType","referencesLength","nestedObjectsLeft","nestedArraysLeft","nestedFunctionsLeft","refString","attachCrossRefActions","localCrossRefs","map","cr","destAccessor","p","srcAccessor","javaScriptToString","concreteOptions","undefined","nestedObjectsAmount","nestedArraysAmount","nestedFunctionsAmount","Map","circularResult"],"mappings":";;;;;;IAqNO,SAASA,aAAAA,CAAcC,CAAAA,CAAIC,CAAAA,CAAMC,CAAAA,CAAAA,CACpC,GAAIA,CAAAA,EAA6B,CAAA,GAArBC,SAAAA,CAAUC,MAAAA,CAAc,IAAK,IAA4BC,CAAAA,CAAxBC,CAAAA,CAAI,CAAA,CAAGC,CAAAA,CAAIN,CAAAA,CAAKG,MAAAA,CAAYE,CAAAA,CAAIC,CAAAA,CAAGD,CAAAA,EAAAA,CAAAA,CACxED,CAAAA,EAAQC,KAAKL,CAAAA,GACRI,CAAAA,GAAIA,CAAAA,CAAKG,KAAAA,CAAMC,SAAAA,CAAUC,KAAAA,CAAMC,IAAAA,CAAKV,CAAAA,CAAM,CAAA,CAAGK,CAAAA,CAAAA,CAAAA,CAClDD,CAAAA,CAAGC,CAAAA,CAAAA,CAAKL,CAAAA,CAAKK,CAAAA,CAAAA,CAAAA,CAGrB,OAAON,CAAAA,CAAGY,OAAOP,CAAAA,EAAMG,KAAAA,CAAMC,SAAAA,CAAUC,KAAAA,CAAMC,IAAAA,CAAKV,CAAAA,CAAAA,CACtD,CA2GkD,UAAA,EAAA,OAApBY,eAAAA,CAAiCA,eAAAA,CAAkB,SAAUC,CAAAA,CAAOC,CAAAA,CAAYC,CAAAA,CAAAA,CAC1G,IAAIC,CAAAA,CAAI,IAAIC,KAAAA,CAAMF,GAClB,OAAOC,CAAAA,CAAEE,IAAAA,CAAO,iBAAA,CAAmBF,CAAAA,CAAEH,KAAAA,CAAQA,CAAAA,CAAOG,CAAAA,CAAEF,UAAAA,CAAaA,CAAAA,CAAYE,CACnF;;IC3UA,IAAIG,KAAAA,CAAQ,EAAC,CAAGC,aAAAA,CAAgBD,MAAME,QAAAA,CAAUC,WAAAA,CAAc,CAC1D,SAAA,CACA,QAAA,CACA,QAAA,CACA,WACA,OAAA,CACA,MAAA,CACA,SACA,QAAA,CACA,OAAA,CACA,UACA,WAAA,CACA,mBAAA,CACA,aAAA,CACA,UAAA,CAAA,CACDC,WAAAA,CAAc,CACb,YACA,YAAA,CACA,mBAAA,CACA,aACA,aAAA,CACA,YAAA,CACA,cACA,cAAA,CACA,cAAA,CACA,eAAA,CACA,gBAAA,CAAA,CACDC,IAAAA,CAAO,CAAC,MAAO,SAAA,CAAA,CAAYC,IAAAA,CAAO,CAAC,KAAA,CAAO,SAAA,CAAA,CAa7C,SAASC,gBAAgBC,CAAAA,CAAAA,CACrB,OAAc,IAAA,EAAPA,CAAAA,CACDA,CAAAA,CAAM,EAAA,CACS,iBAARA,CAAAA,EAAmC,UAAA,EAAA,OAARA,EAC9BR,KAAAA,CAAMC,aAAAA,CAAcV,KAAKiB,CAAAA,CAAAA,CAAAA,EAAS,QAAA,CAAA,OAC3BA,CACrB,CAlBAL,WAAAA,CAAYM,OAAAA,CAAQ,SAAUV,CAAAA,CAAAA,CAC1BC,KAAAA,CAAM,WAAaD,CAAAA,CAAO,GAAA,CAAA,CAAOA,EAAKW,WAAAA,GAC1C,CAAA,CAAA,CACAL,IAAAA,CAAKI,OAAAA,CAAQ,SAAUV,CAAAA,CAAAA,CACnBC,MAAM,UAAA,CAAaD,CAAAA,CAAO,KAAO,MACrC,CAAA,CAAA,CACAO,KAAKG,OAAAA,CAAQ,SAAUV,CAAAA,CAAAA,CACnBC,KAAAA,CAAM,UAAA,CAAaD,CAAAA,CAAO,KAAO,MACrC,CAAA,CAAA,CACAK,WAAAA,CAAYK,OAAAA,CAAQ,SAAUV,CAAAA,CAAAA,CAC1BC,MAAM,UAAA,CAAaD,CAAAA,CAAO,GAAA,CAAA,CAAO,aACrC,CAAA,CAAA;;IClBA,IAAIY,IAAAA,CAAsB,GACtBC,SAAAA,CAAgC,EAAA,CAChCC,OAAAA,CAAU,CAAA,CAWd,SAASC,mBAAAA,CAAoBC,CAAAA,CAAUP,EAAUQ,CAAAA,CAAiBC,CAAAA,CAAAA,CAAAA,UAAAA,CAAAA,GAAAA,CAAAA,CAAAA,IAAA,CAAA,CAGhE,IAFA,IACMC,CAAAA,CAAYD,CAAAA,CAAgB,cAAgB,GAAA,CAC/BE,CAAAA,CAAA,EAAAC,CAAAA,CAFFC,MAAAA,CAAOC,mBAAAA,CAAoBL,CAAAA,CAAgBT,EAAInB,SAAAA,CAAYmB,CAAAA,CAAAA,CAEzDW,WAAAA,IAAU,CAAxB,IAAMI,CAAAA,CAAIH,CAAAA,CAAAD,GACT,CAAC,QAAA,CAAU,QAAA,CAAU,WAAA,CAAA,CAAaK,QAAQD,CAAAA,CAAAA,CAAQ,CAAA,GACpDR,CAAAA,CAAI,EAAA,CAAAvB,OAAGwB,CAAAA,CAAAA,CAAOxB,MAAAA,CAAG0B,GAAS1B,MAAAA,CAAG+B,CAAAA,CAAAA,CAAAA,CAAUN,EAAgBT,CAAAA,CAAInB,SAAAA,CAAUkC,CAAAA,CAAAA,CAAef,CAAAA,CAAIe,IAE5F,CACF,CAEA,IAAME,eAAAA,CAAkB,UAAA,CACtB,IAAMC,CAAAA,CAAiB,EAAA,CAWvB,OAVAZ,oBAAoBY,CAAAA,CAAWtC,KAAAA,CAAO,aAAS,CAAA,CAC/C0B,mBAAAA,CAAoBY,EAAWtC,KAAAA,CAAO,OAAA,CAAA,CACtC0B,mBAAAA,CAAoBY,CAAAA,CAAWC,KAAM,MAAA,CAAA,KAAQ,CAAA,CAC7Cb,mBAAAA,CAAoBY,CAAAA,CAAWL,OAAQ,QAAA,CAAA,KAAU,CAAA,CACjDP,mBAAAA,CAAoBY,CAAAA,CAAWL,OAAQ,QAAA,CAAA,CACvCP,mBAAAA,CAAoBY,EAAWE,QAAAA,CAAU,UAAA,CAAA,OACzCd,mBAAAA,CAAoBY,CAAAA,CAAWE,QAAAA,CAAU,UAAA,CAAA,CACzCd,oBAAoBY,CAAAA,CAAWG,IAAAA,CAAM,YAAQ,CAAA,CAC7Cf,mBAAAA,CAAoBY,EAAWI,MAAAA,CAAQ,QAAA,CAAA,CACvCJ,CAAAA,CAAUE,QAAAA,CAAWA,SACdF,CACR,CAbuB,GAexB,SAASK,cAAAA,CAAeC,GACtB,GAAIC,MAAAA,CAAOC,KAAAA,CAAMF,CAAAA,CAAAA,CACf,OAAO,YAAA,CAET,OAAQA,CAAAA,EACN,KAAKC,OAAOE,iBAAAA,CACV,OAAO,0BAAA,CACT,KAAKF,OAAOG,iBAAAA,CACV,OAAO,2BACT,KAAKH,MAAAA,CAAOI,QACV,OAAO,gBAAA,CACT,KAAKJ,MAAAA,CAAOK,iBACV,OAAO,yBAAA,CACT,KAAKL,MAAAA,CAAOM,gBAAAA,CACV,OAAO,yBAAA,CACT,KAAKN,MAAAA,CAAOO,SAAAA,CACV,OAAO,kBAAA,CACT,KAAKP,OAAOQ,SAAAA,CACV,OAAO,mBACT,KAAKC,IAAAA,CAAKC,EAAAA,CACR,OAAO,UACT,KAAKD,IAAAA,CAAKE,CAAAA,CACR,OAAO,SACT,KAAKF,IAAAA,CAAKG,IAAAA,CACR,OAAO,YACT,KAAKH,IAAAA,CAAKI,IACR,OAAO,UAAA,CACT,KAAKJ,IAAAA,CAAKK,MAAAA,CACR,OAAO,aAAA,CACT,KAAKL,IAAAA,CAAKM,KAAAA,CACR,OAAO,YAAA,CACT,KAAKN,KAAKO,OAAAA,CACR,OAAO,cAAA,CACT,KAAKP,KAAKQ,KAAAA,CACR,OAAO,aACT,QACE,OAAOpB,OAAOE,CAAAA,CAAAA,CAEpB,CAEA,SAASmB,cAAAA,CAAenB,GACtB,OAAQA,CAAAA,EACN,KAAKoB,MAAAA,CAAOC,cACZ,KAAKD,MAAAA,CAAOE,WAAAA,CACZ,KAAKF,OAAOG,kBAAAA,CACZ,KAAKH,OAAOI,QAAAA,CACZ,KAAKJ,OAAOK,KAAAA,CACZ,KAAKL,MAAAA,CAAO/D,SAAAA,CACZ,KAAK+D,MAAAA,CAAOM,OAAAA,CACZ,KAAKN,MAAAA,CAAOO,MAAAA,CACZ,KAAKP,MAAAA,CAAOQ,OAAAA,CACZ,KAAKR,MAAAA,CAAOS,MACZ,KAAKT,MAAAA,CAAOU,YACZ,KAAKV,MAAAA,CAAOW,YACZ,KAAKX,MAAAA,CAAOY,WAAAA,CACV,OAAOhC,EAAMiC,WAAAA,CACf,QACE,IAAMA,CAAAA,CAAcjC,EAAMiC,WAAAA,CAAc,GAAA,CAAAzE,MAAAA,CAAIwC,CAAAA,CAAMiC,YAAW,GAAA,CAAA,CAAM,EAAA,CACnE,OAAO,SAAA,CAAAzE,MAAAA,CAAUyE,EAAW,GAAA,CAAA,CAElC,CAEA,SAASC,YAAAA,CAAalC,GACpB,OAAIE,KAAAA,CAAMF,EAAMmC,OAAAA,EAAAA,CAAAA,CACP,WAAA,QAAYnC,CAAAA,CAAM9B,QAAAA,EAAAA,MAEpB,WAAA,QAAY8B,CAAAA,CAAMoC,WAAAA,EAAAA,KAC3B,CAEA,SAASC,cAAcrC,CAAAA,CAAAA,CACrB,IAAMpC,CAAAA,CAAU+B,IAAAA,CAAK2C,UAAUtC,CAAAA,CAAMpC,OAAAA,CAAAA,CACnC2E,EAAW5C,IAAAA,CAAK2C,SAAAA,CAAUtC,EAAMuC,QAAAA,CAAAA,CAChCC,CAAAA,CAAa7C,IAAAA,CAAK2C,SAAAA,CAAUtC,EAAMwC,UAAAA,CAAAA,CACpC,OAAO,oBAAa5E,CAAAA,CAAO,MAAAJ,MAAAA,CAAK+E,CAAAA,CAAQ,IAAA,CAAA,CAAA/E,MAAAA,CAAKgF,MAC/C,CAEA,SAASC,aAAAA,CAAczC,CAAAA,CAAmB0C,EAAsBC,CAAAA,CAAAA,CAC9D,GAAqB,CAAA,GAAjB3C,CAAAA,CAAMhD,OAAc,OAAO,IAAA,CAC/B,IAAM4F,CAAAA,CAAc5C,CAAAA,CAAM6C,OAAO,SAACC,CAAAA,CAASC,CAAAA,CAASC,CAAAA,CAAAA,CAClD,IAAMC,CAAAA,CAAMD,CAAAA,CAAM9E,QAAAA,EAAAA,CAClByE,CAAAA,CAAQO,WAAWC,IAAAA,CAAKF,CAAAA,CAAAA,CACxBN,CAAAA,CAAQS,WAAAA,CAAYD,KAAKF,CAAAA,CAAAA,CACzB,IAAII,EAAQP,CAAAA,CAAK,EAAA,CAAAtF,OAAGsF,CAAAA,CAAE,IAAA,CAAA,CAAO,EAAA,CAI7B,OAHAO,GAAOC,YAAAA,CAAaP,CAAAA,CAAIL,EAASC,CAAAA,CAAAA,CACjCA,CAAAA,CAAQS,YAAYG,GAAAA,EAAAA,CACpBZ,CAAAA,CAAQO,UAAAA,CAAWK,GAAAA,EAAAA,CACZF,CACT,CAAA,CAAG,EAAA,CAAA,CACH,OAAOG,aAAAA,CAAcC,YAAAA,CAAazD,GAAQ,GAAA,CAAAxC,MAAAA,CAAIoF,CAAAA,CAAW,GAAA,CAAA,CAC3D,CAEA,SAASa,YAAAA,CAAazD,CAAAA,CAAAA,CACpB,OAAOrB,KAAK+E,MAAAA,CAAO,SAACC,CAAAA,CAAAA,CAAM,OAAAA,EAAEC,MAAAA,GAAW5D,CAAb,EAC5B,CAEA,SAASwD,cAAcK,CAAAA,CAA0BC,CAAAA,CAAAA,CAC/C,GAAID,CAAAA,CAAU7G,OAAS,CAAA,CAAG,CACxB6B,QAAUA,OAAAA,EAAAA,CAAYoB,MAAAA,CAAOK,iBAC7B,IAAMyD,CAAAA,CAAY,SAAA,CAAAvG,MAAAA,CAAUqB,SACtBmF,CAAAA,CAAUH,CAAAA,CAAUhB,OAAO,SAACC,CAAAA,CAAYC,GAC5C,IAAMkB,CAAAA,CAASC,cAAAA,CAAeH,CAAAA,CAAWhB,GAEzC,OADApE,IAAAA,CAAKwF,MAAAA,CAAOxF,IAAAA,CAAKa,QAAQuD,CAAAA,CAAAA,CAAK,CAAA,CAAA,CACvBD,CAAAA,CAAKmB,CACd,EAAG,EAAA,CAAA,CACH,OAAO,oBAAAzG,MAAAA,CAAoBuG,CAAAA,CAAS,OAAAvG,MAAAA,CAAMsG,CAAAA,cAAWE,EAAO,UAAA,CAAA,CAAAxG,MAAAA,CAAWuG,EAAS,QAAA,CAClF,CACA,OAAOD,CACT,CAEA,SAASI,cAAAA,CAAeE,EAAmBC,CAAAA,CAAAA,CACzC,IAAMC,EAAYD,CAAAA,CAAEE,UAAAA,CAAW/E,QAAQ6E,CAAAA,CAAET,MAAAA,CAAAA,CACzC,GAAIU,CAAAA,CAAY,EACd,OAAO,EAAA,CAMT,IAHA,IACIE,CAAAA,CADEC,EAAOJ,CAAAA,CAAEE,UAAAA,CAAWjH,KAAAA,CAAMgH,CAAAA,CAAAA,CAE5BI,EAAO,EAAA,CACFxH,CAAAA,CAAI,EAAGA,CAAAA,CAAIuH,CAAAA,CAAKzH,OAAQE,CAAAA,EAAAA,CAAK,CACpC,IAAMyH,CAAAA,CAAUF,EAAKvH,CAAAA,CAAAA,CACrB,GAAIyH,IAAYN,CAAAA,CAAET,MAAAA,CAChBc,EAAON,CAAAA,CACPI,CAAAA,CAAYH,CAAAA,CAAET,MAAAA,CAAAA,KACT,GAAuB,QAAA,EAAA,OAAZe,CAAAA,CAChBD,GAAQ,IAAA,CAAAlH,MAAAA,CAAKmH,EAAQjD,OAAAA,CAAQ,KAAA,CAAO,KAAA,CAAA,CAAM,IAAA,CAAA,CAC1C8C,EAAYA,CAAAA,CAAUG,CAAAA,CAAAA,CAAAA,KACjB,GAAIA,CAAAA,GAAYH,EACrB,OAAO,EAEX,CAEA,OAAO,GAAAhH,MAAAA,CAAGkH,CAAAA,CAAI,OAAAlH,MAAAA,CAAM4G,CAAAA,MACtB,CAEA,SAASQ,kBAAAA,CAAmB5E,CAAAA,CAAY0C,EAAsBC,CAAAA,CAAAA,CAC5D,IACEkC,EAAYpC,aAAAA,CADFrF,KAAAA,CAAMP,KAAKmD,CAAAA,CAAAA,CACU0C,CAAAA,CAASC,CAAAA,CAAAA,CACxCmC,CAAAA,CAAkB9E,EAAM+E,WAAAA,CAAYhH,IAAAA,CACtC,OAAO,MAAA,CAAAP,MAAAA,CAAOsH,EAAe,GAAA,CAAA,CAAAtH,MAAAA,CAAIqH,CAAAA,KACnC,CAEA,SAASG,WAAAA,CAAYhF,CAAAA,CAAiB0C,CAAAA,CAAsBC,GAC1D,IAAMsC,CAAAA,CAAsB,EAAA,CAM5B,OAJAjF,EAAMvB,OAAAA,CAAQ,SAACyG,EAAaC,CAAAA,CAAaC,CAAAA,CAAAA,CACvCH,EAAU9B,IAAAA,CAAKG,YAAAA,CAAa6B,CAAAA,CAAQzC,CAAAA,CAASC,IAC/C,CAAA,CAAA,CAEyB,CAAA,GAArBsC,EAAUjI,MAAAA,CAAqB,WAAA,CAE5B,YAAAQ,MAAAA,CAAYyH,CAAAA,CAAUI,IAAAA,CAAK,IAAA,CAAA,MACpC,CAEA,SAASC,YAAYtF,CAAAA,CAAsB0C,CAAAA,CAAsBC,GAC/D,IAAM4C,CAAAA,CAAsB,EAAA,CAM5B,OAJAvF,EAAMvB,OAAAA,CAAQ,SAAC+G,CAAAA,CAAiBvC,CAAAA,CAAAA,CAC9BsC,EAAUpC,IAAAA,CAAK,GAAA,CAAA3F,MAAAA,CAAI8F,YAAAA,CAAaL,EAAKP,CAAAA,CAASC,CAAAA,CAAAA,CAAQ,MAAAnF,MAAAA,CAAK8F,YAAAA,CAAakC,EAAY9C,CAAAA,CAASC,CAAAA,CAAAA,CAAQ,GAAA,CAAA,EACvG,CAAA,CAAA,CAEyB,IAArB4C,CAAAA,CAAUvI,MAAAA,CAAqB,YAE5B,WAAA,CAAAQ,MAAAA,CAAY+H,EAAUF,IAAAA,CAAK,IAAA,CAAA,MACpC,CAEA,SAASI,cAAAA,CAAezF,CAAAA,CAAY0C,EAAsBC,CAAAA,CAAAA,CACxD,IAAM+C,EAAe,EAAA,CAErB,IAAK,IAAIC,CAAAA,IAAgB3F,EACvB,GAAIA,CAAAA,CAAM4F,eAAeD,CAAAA,CAAAA,CAAe,CACtChD,EAAQO,UAAAA,CAAWC,IAAAA,CAAKwC,CAAAA,CAAAA,CACxBhD,CAAAA,CAAQS,YAAYD,IAAAA,CAAKwC,CAAAA,CAAAA,CACzB,IAAME,CAAAA,CAAgBvC,YAAAA,CAAatD,EAAM2F,CAAAA,CAAAA,CAAejD,CAAAA,CAASC,CAAAA,CAAAA,CACjEA,CAAAA,CAAQS,YAAYG,GAAAA,EAAAA,CACpBZ,CAAAA,CAAQO,WAAWK,GAAAA,EAAAA,CACG,WAAA,GAAlBsC,IACG,aAAA,CAAcC,IAAAA,CAAKH,CAAAA,CAAAA,GACtBA,CAAAA,CAAe,IAAAnI,MAAAA,CAAImI,CAAAA,CAAY,MAEjCD,CAAAA,CAAavC,IAAAA,CAAK,GAAA3F,MAAAA,CAAGmI,CAAAA,CAAY,IAAA,CAAA,CAAAnI,MAAAA,CAAKqI,KAE1C,CAGF,OAA4B,CAAA,GAAxBH,CAAAA,CAAa1I,OAAqB,IAAA,CAE/BwG,aAAAA,CAAcC,YAAAA,CAAazD,CAAAA,CAAAA,CAAQ,MAAAxC,MAAAA,CAAMkI,CAAAA,CAAaL,KAAK,KAAA,CAAA,CAAM,KAAA,CAAA,CAC1E,CAEA,SAASU,0BAAAA,CACPC,CAAAA,CACAhG,CAAAA,CACA0C,EACAC,CAAAA,CAAAA,CAEA,IAAImB,EAAS,EAAA,CACb,IAAK,IAAM6B,CAAAA,IAAgB3F,CAAAA,CACzB,GAAIA,CAAAA,CAAM4F,eAAeD,CAAAA,CAAAA,CAAe,CACtChD,EAAQO,UAAAA,CAAWC,IAAAA,CAAKwC,GACxBhD,CAAAA,CAAQS,WAAAA,CAAYD,IAAAA,CAAKwC,CAAAA,CAAAA,CACzB,IAAME,CAAAA,CAAgBvC,YAAAA,CAAatD,CAAAA,CAAM2F,CAAAA,CAAAA,CAAejD,EAASC,CAAAA,CAAAA,CACjEA,CAAAA,CAAQS,WAAAA,CAAYG,GAAAA,EAAAA,CACpBZ,EAAQO,UAAAA,CAAWK,GAAAA,EAAAA,CACG,cAAlBsC,CAAAA,GACF/B,CAAAA,EAAU,UAAGkC,CAAAA,CAAY,GAAA,CAAA,CAAAxI,MAAAA,CAAImI,EAAY,KAAA,CAAA,CAAAnI,MAAAA,CAAMqI,UAEnD,CAEF,OAAO/B,CACT,CAEA,SAASmC,gBAAAA,CAAiBjG,EAAY0C,CAAAA,CAAsBC,CAAAA,CAAAA,CAC1D,IAAMqD,CAAAA,CAAehG,CAAAA,CAAMjC,MAAQ,mBAAA,CAC7BmI,CAAAA,CAAiBxD,CAAAA,CAAQyD,yBAAAA,CAC3BJ,2BAA2BC,CAAAA,CAAchG,CAAAA,CAAO0C,CAAAA,CAASC,CAAAA,CAAAA,CACzD,GACJA,CAAAA,CAAQO,UAAAA,CAAWC,IAAAA,CAAK,WAAA,CAAA,CACxBR,EAAQS,WAAAA,CAAYD,IAAAA,CAAK,aACzB,IAAMiD,CAAAA,CAAoB1D,EAAQ2D,wBAAAA,CAC9BN,0BAAAA,CAA2B,EAAA,CAAAvI,MAAAA,CAAGwI,EAAY,YAAA,CAAA,CAAchG,CAAAA,CAAM3C,UAAWqF,CAAAA,CAASC,CAAAA,CAAAA,CAClF,GACJA,CAAAA,CAAQS,WAAAA,CAAYG,GAAAA,EAAAA,CACpBZ,CAAAA,CAAQO,WAAWK,GAAAA,EAAAA,CAEnB,IAAI+C,EAAcxG,MAAAA,CAAOE,CAAAA,CAAAA,CACzB,GAAIsG,CAAAA,CAAY9G,OAAAA,CAAQ,eAAA,CAAA,CAAA,EAAoB,EAAK8G,EAAYtJ,MAAAA,CAAS,GAAA,CACpE,IAAK,IAAMuJ,CAAAA,IAAU9G,gBACfA,eAAAA,CAAgB8G,CAAAA,CAAAA,GAAYvG,CAAAA,GAC9BsG,CAAAA,CAAcC,GAIpB,OAAKL,CAAAA,EAAmBE,EAIjB5C,aAAAA,CACLC,YAAAA,CAAazD,GACb,qBAAA,CAAAxC,MAAAA,CAAsBwI,CAAAA,CAAY,KAAA,CAAA,CAAAxI,OAAMsC,MAAAA,CACtCwG,CAAAA,CAAAA,gBACMJ,CAAAA,CAAc,OAAA1I,MAAAA,CAAM4I,CAAAA,CAAiB,YAAA,CAAA,CAAA5I,MAAAA,CAAawI,EAAY,SAAA,CAAA,CAAA,CAP/DM,CASX,CAEA,SAASE,mBAAAA,CAAoBxG,EAAoB0C,CAAAA,CAAsBC,CAAAA,CAAAA,CACrE,GAAA,CAAKD,CAAAA,CAAQ+D,eAAgB,OAAO,WAAA,CACpC,IAAMpD,CAAAA,CAAMuB,mBAAmB,IAAI8B,SAAAA,CAAU1G,CAAAA,CAAAA,CAAQ0C,CAAAA,CAASC,GAC9D,OAAO,GAAA,CAAAnF,OAAI6F,CAAAA,CAAG,UAAA,CAChB,CAEA,SAASsD,gBAAAA,CAAiB3G,CAAAA,CAAiB0C,CAAAA,CAAsBC,GAC/D,GAAA,CAAKD,CAAAA,CAAQ+D,eAAgB,OAAO,WAAA,CACpC,IAAMG,CAAAA,CAAYJ,mBAAAA,CAAoBxG,CAAAA,CAAM6G,MAAAA,CAAuBnE,EAASC,CAAAA,CAAAA,CAC5E,OAAO,gBAAAnF,MAAAA,CAAgBoJ,CAAAA,CAAS,MAAApJ,MAAAA,CAAKwC,CAAAA,CAAM8G,UAAAA,CAAU,IAAA,CAAA,CAAAtJ,OAAKwC,CAAAA,CAAM+G,UAAAA,CAAU,GAAA,CAC5E,CAOA,SAASzE,SAAAA,CAAUtC,CAAAA,CAAY0C,CAAAA,CAAsBC,CAAAA,CAAAA,CACnD,OAAQqE,eAAAA,CAAchH,CAAAA,CAAAA,EACpB,KAAK,WAAA,CAqCL,KAAK,UACL,KAAK,WAAA,CACH,OAAO,WAAA,CArCT,KAAK,MAAA,CACH,OAAO,OACT,KAAK,SAAA,CAEL,KAAK,QAAA,CACH,OAAOF,MAAAA,CAAOE,CAAAA,CAAAA,CAChB,KAAK,QAAA,CAgCL,QACE,OAAOL,IAAAA,CAAK2C,SAAAA,CAAUtC,GA/BxB,KAAK,QAAA,CACH,OAAOD,cAAAA,CAAeC,GACxB,KAAK,QAAA,CACH,OAAO,SAAA,CAAAxC,OAAUwC,CAAAA,CAAK,GAAA,CAAA,CACxB,KAAK,QAAA,CACH,OAAOmB,cAAAA,CAAenB,CAAAA,CAAAA,CACxB,KAAK,MAAA,CACH,OAAOkC,aAAalC,CAAAA,CAAAA,CACtB,KAAK,OAAA,CACH,OAAOqC,cAAcrC,CAAAA,CAAAA,CACvB,KAAK,QACH,OAAOyC,aAAAA,CAAczC,EAAO0C,CAAAA,CAASC,CAAAA,CAAAA,CACvC,KAAK,YAAA,CACH,OAAOiC,kBAAAA,CAAmB5E,CAAAA,CAAO0C,EAASC,CAAAA,CAAAA,CAC5C,KAAK,MACH,OAAOqC,WAAAA,CAAYhF,CAAAA,CAAO0C,CAAAA,CAASC,GACrC,KAAK,KAAA,CACH,OAAO2C,WAAAA,CAAYtF,CAAAA,CAAO0C,EAASC,CAAAA,CAAAA,CACrC,KAAK,QAAA,CACH,OAAO8C,eAAezF,CAAAA,CAAO0C,CAAAA,CAASC,GACxC,KAAK,UAAA,CACL,KAAK,mBAAA,CACH,OAAOsD,gBAAAA,CAAiBjG,CAAAA,CAAO0C,EAASC,CAAAA,CAAAA,CAC1C,KAAK,cACH,OAAO6D,mBAAAA,CAAoBxG,EAAO0C,CAAAA,CAASC,CAAAA,CAAAA,CAC7C,KAAK,UAAA,CACH,OAAOgE,gBAAAA,CAAiB3G,CAAAA,CAAO0C,EAASC,CAAAA,CAAAA,CAO9C,CAOA,SAASW,YAAAA,CAAatD,CAAAA,CAAY0C,CAAAA,CAAsBC,CAAAA,CAAAA,CACtD,IAAMsE,CAAAA,CAA8B,QAAA,EAAA,OAAVjH,CAAAA,EAAgC,IAAA,GAAVA,GAAoC,UAAA,EAAA,OAAVA,CAAAA,CACpEgD,CAAAA,CAAQL,CAAAA,CAAQO,WAAW1D,OAAAA,CAAQQ,CAAAA,CAAAA,CAGzC,GAAIiH,CAAAA,EAAatE,CAAAA,CAAQuE,QAAQC,GAAAA,CAAInH,CAAAA,CAAAA,EAAUgD,CAAAA,CAAQ,CAAA,CAKrD,OAJApE,SAAAA,CAAUuE,IAAAA,CAAK,CACbiE,QAAAA,CAAQzK,aAAAA,CAAA,GAAMgG,CAAAA,CAAQS,WAAAA,CAAAA,IAAW,CAAA,CACjCiE,UAAAA,CAAY1E,EAAQuE,OAAAA,CAAQI,GAAAA,CAAItH,IAAU,EAAA,CAAA,CAAA,CAErC,MAAA,CAGT,GAAIgD,CAAAA,CAAQ,CAAA,EAA0C,QAAA,EAAA,OAA9BL,CAAAA,CAAQO,WAAWF,CAAAA,CAAAA,CAAqB,CAC9D,IAAMuE,CAAAA,CAAaP,gBAAchH,CAAAA,CAAAA,CAC3BwH,CAAAA,CAAmB7E,CAAAA,CAAQO,UAAAA,CAAWlG,OAQ5C,OALIiK,CAAAA,EAAAA,CAActE,EAAQuE,OAAAA,CAAQC,GAAAA,CAAInH,IACpC2C,CAAAA,CAAQuE,OAAAA,CAAQ9B,GAAAA,CAAIpF,CAAAA,CAAKrD,cAAA,EAAA,CAAMgG,CAAAA,CAAQS,gBAAW,CAAA,CAAA,CAGpDT,CAAAA,CAAQO,WAAWC,IAAAA,CAAKnD,CAAAA,CAAAA,CAChBuH,CAAAA,EACN,KAAK,SACH,GAAI5E,CAAAA,CAAQ8E,mBAAqB,CAAA,CAAG,OAAO,YAC3C9E,CAAAA,CAAQ8E,iBAAAA,EAAAA,CACR,MACF,KAAK,QACL,KAAK,YAAA,CACH,GAAI9E,CAAAA,CAAQ+E,kBAAoB,CAAA,CAAG,OAAO,WAAA,CAC1C/E,CAAAA,CAAQ+E,mBACR,MACF,KAAK,WACL,KAAK,mBAAA,CACH,GAAI/E,CAAAA,CAAQgF,mBAAAA,EAAuB,CAAA,CAAG,OAAO,YAC7ChF,CAAAA,CAAQgF,mBAAAA,GAAAA,CAIZ,IAAMC,CAAAA,CAAYtF,SAAAA,CAAUtC,EAAO0C,CAAAA,CAASC,CAAAA,CAAAA,CAG5C,OADAA,CAAAA,CAAQO,WAAWiB,MAAAA,CAAOqD,CAAAA,CAAAA,CAClBD,GACN,KAAK,QAAA,CACH5E,EAAQ8E,iBAAAA,EAAAA,CACR,MACF,KAAK,OAAA,CACL,KAAK,YAAA,CACH9E,CAAAA,CAAQ+E,mBACR,MACF,KAAK,WACL,KAAK,mBAAA,CACH/E,CAAAA,CAAQgF,mBAAAA,GAAAA,CAIZ,OAAOC,CACT,CAOA,OALEjJ,IAAAA,CAAKwE,IAAAA,CAAK,CACRoB,UAAAA,CAAY5B,CAAAA,CAAQO,UAAAA,CAAW5F,KAAAA,CAAM,GACrCsG,MAAAA,CAAQ5D,CAAAA,CAAAA,CAAAA,CAGL,MACT,CAEA,SAAS6H,sBAAsBC,CAAAA,CAAoChE,CAAAA,CAAAA,CACjE,GAA8B,CAAA,GAA1BgE,EAAe9K,MAAAA,CACjB,OAAO8G,EAETjF,OAAAA,CAAUA,OAAAA,EAAAA,CAAYoB,OAAOK,gBAAAA,CAC7B,IAAM8D,CAAAA,CAAY,SAAA,CAAA5G,OAAUqB,OAAAA,CAAAA,CACtBmF,CAAAA,CAAU8D,CAAAA,CACbC,GAAAA,CAAI,SAACC,CAAAA,CAAAA,CACJ,IAAMC,CAAAA,CAAeD,CAAAA,CAAGZ,SAASW,GAAAA,CAAI,SAACG,GAAM,OAAA,IAAA,QAAKA,CAAAA,CAAExG,OAAAA,CAAQ,KAAA,CAAO,KAAA,CAAA,CAAM,KAA5B,CAAA,CAAA,CAAkC2D,IAAAA,CAAK,IAC7E8C,CAAAA,CAAcH,CAAAA,CAAGX,WAAWU,GAAAA,CAAI,SAACG,CAAAA,CAAAA,CAAM,OAAA,YAAKA,CAAAA,CAAExG,QAAQ,KAAA,CAAO,KAAA,CAAA,CAAM,KAA5B,CAAA,CAAA,CAAkC2D,IAAAA,CAAK,EAAA,CAAA,CACpF,OAAO,GAAA7H,MAAAA,CAAG4G,CAAAA,CAAAA,CAAS5G,MAAAA,CAAGyK,CAAAA,eAAkB7D,CAAAA,CAAAA,CAAS5G,MAAAA,CAAG2K,CAAAA,CAAW,KACjE,CAAA,CAAA,CACC9C,IAAAA,CAAK,IACR,OAAO,mBAAA,CAAA7H,OAAoB4G,CAAAA,CAAS,KAAA,CAAA,CAAA5G,MAAAA,CAAMsG,CAAAA,cAAWE,CAAAA,CAAO,WAAAxG,MAAAA,CAAU4G,CAAAA,CAAS,SACjF,CAOA,SAASgE,kBAAAA,CAAmBpI,CAAAA,CAAY0C,GAEtC,IAAM2F,CAAAA,CAA+B,CACnClC,yBAAAA,CAAAA,MACwCmC,GAAAA,CAH1C5F,EAAUA,CAAAA,EAAW,EAAA,EAGTyD,yBAAAA,EAAiDzD,EAAQyD,yBAAAA,CACnEE,wBAAAA,CAAAA,MAA+DiC,GAArC5F,CAAAA,CAAQ2D,0BAAgD3D,CAAAA,CAAQ2D,wBAAAA,CAC1FI,cAAAA,CAAAA,MAA2C6B,GAA3B5F,EAAQ+D,cAAAA,EAAsC/D,CAAAA,CAAQ+D,eACtE8B,mBAAAA,CAAAA,MACkCD,GAAhC5F,EAAQ6F,mBAAAA,CAAoCtI,MAAAA,CAAOE,iBAAAA,CAAoBuC,CAAAA,CAAQ6F,oBACjFC,kBAAAA,CAAAA,MACiCF,GAA/B5F,EAAQ8F,kBAAAA,CAAmCvI,MAAAA,CAAOE,kBAAoBuC,CAAAA,CAAQ8F,kBAAAA,CAChFC,qBAAAA,CAAAA,MACoCH,GAAlC5F,EAAQ+F,qBAAAA,CAAsCxI,MAAAA,CAAOE,kBAAoBuC,CAAAA,CAAQ+F,qBAAAA,CAAAA,CAIrF9J,KAAO,EAAA,CACPC,SAAAA,CAAY,EAAA,CACZC,OAAAA,CAAU,EAEV,IAAMqI,CAAAA,CAAU,IAAIwB,GAAAA,CACpBxB,CAAAA,CAAQ9B,IAAIpF,CAAAA,CAAO,EAAA,CAAA,CAEnB,IAAM8D,CAAAA,CAASxB,UAAUtC,CAAAA,CAAOqI,CAAAA,CAAiB,CAC/CnF,UAAAA,CAAY,CAAClD,GACbyH,iBAAAA,CAAmBY,CAAAA,CAAgBE,mBAAAA,CACnCb,gBAAAA,CAAkBW,EAAgBG,kBAAAA,CAClCb,mBAAAA,CAAqBU,EAAgBI,qBAAAA,CACrCvB,OAAAA,CAAOA,EACP9D,WAAAA,CAAa,EAAA,CAAA,CAAA,CAITuF,CAAAA,CAAiBnF,aAAAA,CAAcC,aAAazD,CAAAA,CAAAA,CAAQ8D,CAAAA,CAAAA,CAG1D,OAAO+D,qBAAAA,CAAsBjJ,SAAAA,CAAW+J,EAC1C;;;;;;;;","x_google_ignoreList":[0,1]} \ No newline at end of file diff --git a/dist/lib/javascripttostring.js b/dist/lib/javascripttostring.js index 2b635a8..32cc42a 100644 --- a/dist/lib/javascripttostring.js +++ b/dist/lib/javascripttostring.js @@ -1,10 +1,20 @@ "use strict"; +var __spreadArray = (this && this.__spreadArray) || function (to, from, pack) { + if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) { + if (ar || !(i in from)) { + if (!ar) ar = Array.prototype.slice.call(from, 0, i); + ar[i] = from[i]; + } + } + return to.concat(ar || Array.prototype.slice.call(from)); +}; var __importDefault = (this && this.__importDefault) || function (mod) { return (mod && mod.__esModule) ? mod : { "default": mod }; }; Object.defineProperty(exports, "__esModule", { value: true }); var get_internal_type_1 = __importDefault(require("@lopatnov/get-internal-type")); var refs = []; +var crossRefs = []; var counter = 0; function fillNativeFunctions(ext, obj, objName, fromPrototype) { if (fromPrototype === void 0) { fromPrototype = true; } @@ -105,9 +115,12 @@ function arrayToString(value, options, history) { if (value.length === 0) return "[]"; var arrayValues = value.reduce(function (x1, x2, index) { - history.references.push(index.toString()); + var key = index.toString(); + history.references.push(key); + history.currentPath.push(key); var str = !!x1 ? "".concat(x1, ", ") : ""; str += stringifyRef(x2, options, history); + history.currentPath.pop(); history.references.pop(); return str; }, ""); @@ -180,7 +193,9 @@ function objectToString(value, options, history) { for (var propertyName in value) { if (value.hasOwnProperty(propertyName)) { history.references.push(propertyName); + history.currentPath.push(propertyName); var propertyValue = stringifyRef(value[propertyName], options, history); + history.currentPath.pop(); history.references.pop(); if (propertyValue !== "undefined") { if (!/^[a-zA-Z]+$/.test(propertyName)) { @@ -199,7 +214,9 @@ function functionPropertiesToString(functionName, value, options, history) { for (var propertyName in value) { if (value.hasOwnProperty(propertyName)) { history.references.push(propertyName); + history.currentPath.push(propertyName); var propertyValue = stringifyRef(value[propertyName], options, history); + history.currentPath.pop(); history.references.pop(); if (propertyValue !== "undefined") { result += "".concat(functionName, ".").concat(propertyName, " = ").concat(propertyValue, ";\n"); @@ -214,9 +231,11 @@ function functionToString(value, options, history) { ? functionPropertiesToString(functionName, value, options, history) : ""; history.references.push("prototype"); + history.currentPath.push("prototype"); var functionPrototype = options.includeFunctionPrototype ? functionPropertiesToString("".concat(functionName, ".prototype"), value.prototype, options, history) : ""; + history.currentPath.pop(); history.references.pop(); var functionStr = String(value); if (functionStr.indexOf("[native code]") > -1 && functionStr.length < 100) { @@ -300,10 +319,23 @@ function stringify(value, options, history) { * @param references the references to stringified objects */ function stringifyRef(value, options, history) { + var isRefType = (typeof value === "object" && value !== null) || typeof value === "function"; var index = history.references.indexOf(value); + // Cross-reference: object was already stringified in a different branch + if (isRefType && history.visited.has(value) && index < 0) { + crossRefs.push({ + destPath: __spreadArray([], history.currentPath, true), + sourcePath: history.visited.get(value) || [], + }); + return "null"; + } if (index < 0 || typeof history.references[index] === "string") { var objectType = (0, get_internal_type_1.default)(value); var referencesLength = history.references.length; + // Track first-seen path for reference types + if (isRefType && !history.visited.has(value)) { + history.visited.set(value, __spreadArray([], history.currentPath, true)); + } history.references.push(value); switch (objectType) { case "object": @@ -342,6 +374,7 @@ function stringifyRef(value, options, history) { return refString; } else { + // Circular reference: back-reference to an ancestor in current path refs.push({ historyRef: history.references.slice(0), source: value, @@ -349,6 +382,21 @@ function stringifyRef(value, options, history) { } return "null"; } +function attachCrossRefActions(localCrossRefs, result) { + if (localCrossRefs.length === 0) { + return result; + } + counter = counter++ % Number.MAX_SAFE_INTEGER; + var localName = "___j2s_".concat(counter); + var actions = localCrossRefs + .map(function (cr) { + var destAccessor = cr.destPath.map(function (p) { return "['".concat(p.replace(/'/gi, "\\'"), "']"); }).join(""); + var srcAccessor = cr.sourcePath.map(function (p) { return "['".concat(p.replace(/'/gi, "\\'"), "']"); }).join(""); + return "".concat(localName).concat(destAccessor, " = ").concat(localName).concat(srcAccessor, "; "); + }) + .join(""); + return "(function(){ var ".concat(localName, " = ").concat(result, "; ").concat(actions, "return ").concat(localName, "; }())"); +} /** * Converts JavaScript value to string * @param value the value of any type @@ -364,17 +412,24 @@ function javaScriptToString(value, options) { nestedArraysAmount: options.nestedArraysAmount === undefined ? Number.POSITIVE_INFINITY : options.nestedArraysAmount, nestedFunctionsAmount: options.nestedFunctionsAmount === undefined ? Number.POSITIVE_INFINITY : options.nestedFunctionsAmount, }; - // Clear global state before conversion to ensure thread safety + // Clear global state before conversion refs = []; + crossRefs = []; counter = 0; + var visited = new Map(); + visited.set(value, []); var result = stringify(value, concreteOptions, { references: [value], nestedObjectsLeft: concreteOptions.nestedObjectsAmount, nestedArraysLeft: concreteOptions.nestedArraysAmount, nestedFunctionsLeft: concreteOptions.nestedFunctionsAmount, + visited: visited, + currentPath: [], }); - // Handle remaining circular references at the top level (Issue #1 fix) - return attachActions(getLocalRefs(value), result); + // Handle circular references at the top level (Issue #1) + var circularResult = attachActions(getLocalRefs(value), result); + // Handle cross-references between different branches + return attachCrossRefActions(crossRefs, circularResult); } exports.default = javaScriptToString; //# sourceMappingURL=javascripttostring.js.map \ No newline at end of file diff --git a/dist/lib/javascripttostring.js.map b/dist/lib/javascripttostring.js.map index f6534ec..8abc968 100644 --- a/dist/lib/javascripttostring.js.map +++ b/dist/lib/javascripttostring.js.map @@ -1 +1 @@ -{"version":3,"file":"javascripttostring.js","sourceRoot":"","sources":["../../src/javascripttostring.ts"],"names":[],"mappings":"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"} \ No newline at end of file +{"version":3,"file":"javascripttostring.js","sourceRoot":"","sources":["../../src/javascripttostring.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/docs/functions/default.html b/docs/functions/default.html index 0a2a171..8fa6111 100644 --- a/docs/functions/default.html +++ b/docs/functions/default.html @@ -1,4 +1,4 @@ default | @lopatnov/javascripttostring
              @lopatnov/javascripttostring
                Preparing search index...

                Function default

                • Converts JavaScript value to string

                  Parameters

                  • value: any

                    the value of any type

                  • Optionaloptions: IJ2SOptions

                    [optional] The options of conversion

                    -

                  Returns string

                +

                Returns string

                diff --git a/docs/interfaces/ij2soptions.html b/docs/interfaces/ij2soptions.html index c80f61c..1123618 100644 --- a/docs/interfaces/ij2soptions.html +++ b/docs/interfaces/ij2soptions.html @@ -1,7 +1,7 @@ -IJ2SOptions | @lopatnov/javascripttostring
                @lopatnov/javascripttostring
                  Preparing search index...

                  Interface IJ2SOptions

                  interface IJ2SOptions {
                      includeBuffers?: boolean;
                      includeFunctionProperties?: boolean;
                      includeFunctionPrototype?: boolean;
                      nestedArraysAmount?: number;
                      nestedFunctionsAmount?: number;
                      nestedObjectsAmount?: number;
                  }
                  Index

                  Properties

                  includeBuffers? +IJ2SOptions | @lopatnov/javascripttostring
                  @lopatnov/javascripttostring
                    Preparing search index...

                    Interface IJ2SOptions

                    interface IJ2SOptions {
                        includeBuffers?: boolean;
                        includeFunctionProperties?: boolean;
                        includeFunctionPrototype?: boolean;
                        nestedArraysAmount?: number;
                        nestedFunctionsAmount?: number;
                        nestedObjectsAmount?: number;
                    }
                    Index

                    Properties

                    includeBuffers?: boolean
                    includeFunctionProperties?: boolean
                    includeFunctionPrototype?: boolean
                    nestedArraysAmount?: number
                    nestedFunctionsAmount?: number
                    nestedObjectsAmount?: number
                    +

                    Properties

                    includeBuffers?: boolean
                    includeFunctionProperties?: boolean
                    includeFunctionPrototype?: boolean
                    nestedArraysAmount?: number
                    nestedFunctionsAmount?: number
                    nestedObjectsAmount?: number
                    diff --git a/src/javascripttostring.ts b/src/javascripttostring.ts index 95b4e58..c1426db 100644 --- a/src/javascripttostring.ts +++ b/src/javascripttostring.ts @@ -14,7 +14,13 @@ interface RefInstance { source: any; } +interface CrossRefInstance { + destPath: string[]; + sourcePath: string[]; +} + var refs: RefInstance[] = []; +var crossRefs: CrossRefInstance[] = []; var counter = 0; interface IJ2SHistory { @@ -22,6 +28,8 @@ interface IJ2SHistory { nestedObjectsLeft: number; nestedArraysLeft: number; nestedFunctionsLeft: number; + visited: Map; + currentPath: string[]; } function fillNativeFunctions(ext: any, obj: any, objName: string, fromPrototype = true) { @@ -128,9 +136,12 @@ function errorToString(value: any): string { function arrayToString(value: Array, options: IJ2SOptions, history: IJ2SHistory): string { if (value.length === 0) return "[]"; const arrayValues = value.reduce((x1: any, x2: any, index: number) => { - history.references.push(index.toString()); + const key = index.toString(); + history.references.push(key); + history.currentPath.push(key); let str = !!x1 ? `${x1}, ` : ""; str += stringifyRef(x2, options, history); + history.currentPath.pop(); history.references.pop(); return str; }, ""); @@ -217,7 +228,9 @@ function objectToString(value: any, options: IJ2SOptions, history: IJ2SHistory): for (let propertyName in value) { if (value.hasOwnProperty(propertyName)) { history.references.push(propertyName); + history.currentPath.push(propertyName); const propertyValue = stringifyRef(value[propertyName], options, history); + history.currentPath.pop(); history.references.pop(); if (propertyValue !== "undefined") { if (!/^[a-zA-Z]+$/.test(propertyName)) { @@ -243,7 +256,9 @@ function functionPropertiesToString( for (const propertyName in value) { if (value.hasOwnProperty(propertyName)) { history.references.push(propertyName); + history.currentPath.push(propertyName); const propertyValue = stringifyRef(value[propertyName], options, history); + history.currentPath.pop(); history.references.pop(); if (propertyValue !== "undefined") { result += `${functionName}.${propertyName} = ${propertyValue};\n`; @@ -259,9 +274,11 @@ function functionToString(value: any, options: IJ2SOptions, history: IJ2SHistory ? functionPropertiesToString(functionName, value, options, history) : ""; history.references.push("prototype"); + history.currentPath.push("prototype"); const functionPrototype = options.includeFunctionPrototype ? functionPropertiesToString(`${functionName}.prototype`, value.prototype, options, history) : ""; + history.currentPath.pop(); history.references.pop(); let functionStr = String(value); @@ -354,10 +371,27 @@ function stringify(value: any, options: IJ2SOptions, history: IJ2SHistory): stri * @param references the references to stringified objects */ function stringifyRef(value: any, options: IJ2SOptions, history: IJ2SHistory): string { + const isRefType = (typeof value === "object" && value !== null) || typeof value === "function"; const index = history.references.indexOf(value); + + // Cross-reference: object was already stringified in a different branch + if (isRefType && history.visited.has(value) && index < 0) { + crossRefs.push({ + destPath: [...history.currentPath], + sourcePath: history.visited.get(value) || [], + }); + return "null"; + } + if (index < 0 || typeof history.references[index] === "string") { const objectType = getObjectType(value); const referencesLength = history.references.length; + + // Track first-seen path for reference types + if (isRefType && !history.visited.has(value)) { + history.visited.set(value, [...history.currentPath]); + } + history.references.push(value); switch (objectType) { case "object": @@ -395,6 +429,7 @@ function stringifyRef(value: any, options: IJ2SOptions, history: IJ2SHistory): s return refString; } else { + // Circular reference: back-reference to an ancestor in current path refs.push({ historyRef: history.references.slice(0), source: value, @@ -403,6 +438,22 @@ function stringifyRef(value: any, options: IJ2SOptions, history: IJ2SHistory): s return "null"; } +function attachCrossRefActions(localCrossRefs: CrossRefInstance[], result: string): string { + if (localCrossRefs.length === 0) { + return result; + } + counter = counter++ % Number.MAX_SAFE_INTEGER; + const localName = `___j2s_${counter}`; + const actions = localCrossRefs + .map((cr) => { + const destAccessor = cr.destPath.map((p) => `['${p.replace(/'/gi, "\\'")}']`).join(""); + const srcAccessor = cr.sourcePath.map((p) => `['${p.replace(/'/gi, "\\'")}']`).join(""); + return `${localName}${destAccessor} = ${localName}${srcAccessor}; `; + }) + .join(""); + return `(function(){ var ${localName} = ${result}; ${actions}return ${localName}; }())`; +} + /** * Converts JavaScript value to string * @param value the value of any type @@ -423,19 +474,28 @@ function javaScriptToString(value: any, options?: IJ2SOptions): string { options.nestedFunctionsAmount === undefined ? Number.POSITIVE_INFINITY : options.nestedFunctionsAmount, }; - // Clear global state before conversion to ensure thread safety + // Clear global state before conversion refs = []; + crossRefs = []; counter = 0; + const visited = new Map(); + visited.set(value, []); + const result = stringify(value, concreteOptions, { references: [value], nestedObjectsLeft: concreteOptions.nestedObjectsAmount as number, nestedArraysLeft: concreteOptions.nestedArraysAmount as number, nestedFunctionsLeft: concreteOptions.nestedFunctionsAmount as number, + visited, + currentPath: [], }); - // Handle remaining circular references at the top level (Issue #1 fix) - return attachActions(getLocalRefs(value), result); + // Handle circular references at the top level (Issue #1) + const circularResult = attachActions(getLocalRefs(value), result); + + // Handle cross-references between different branches + return attachCrossRefActions(crossRefs, circularResult); } export default javaScriptToString; diff --git a/test/javascripttostring.test.ts b/test/javascripttostring.test.ts index 965e23c..cf6de10 100644 --- a/test/javascripttostring.test.ts +++ b/test/javascripttostring.test.ts @@ -640,14 +640,8 @@ describe("Resolve references to itself", () => { expect(restored.children[1].parent).toBe(restored); }); - // ============================================================================ - // Known limitation: Cross-references between non-root nested objects - // The current implementation only handles circular references back to the root. - // These tests document expected behavior for future improvements. - // ============================================================================ - - // Future: Cross-reference between objects - nested object referenced from another branch - it.skip("should handle cross-references between nested objects (future)", () => { + // Cross-reference between objects - nested object referenced from another branch + it("should handle cross-references between nested objects (Issue #1)", () => { var a: any = { b: { c: "hello" } }; var d: any = { e: a.b }; a.f = d; @@ -660,8 +654,8 @@ describe("Resolve references to itself", () => { expect(restored.f.e.c).toBe("hello"); }); - // Future: Multiple objects sharing the same nested reference - it.skip("should handle multiple references to same nested object (future)", () => { + // Multiple objects sharing the same nested reference + it("should handle multiple references to same nested object (Issue #1)", () => { var shared = { value: 42 }; var obj: any = { first: shared, @@ -679,8 +673,8 @@ describe("Resolve references to itself", () => { expect(restored.first.value).toBe(42); }); - // Future: Array containing objects with cross-references between each other - it.skip("should handle array with cross-referencing objects (future)", () => { + // Array containing objects with cross-references between each other + it("should handle array with cross-referencing objects (Issue #1)", () => { var obj1: any = { id: 1 }; var obj2: any = { id: 2, ref: obj1 }; obj1.ref = obj2; @@ -695,8 +689,8 @@ describe("Resolve references to itself", () => { expect(restored[1].ref).toBe(restored[0]); }); - // Future: Complex graph structure with multiple interconnections - it.skip("should handle complex graph with multiple interconnections (future)", () => { + // Complex graph structure with multiple interconnections + it("should handle complex graph with multiple interconnections (Issue #1)", () => { var node1: any = { id: 1, connections: [] }; var node2: any = { id: 2, connections: [] }; var node3: any = { id: 3, connections: [] }; @@ -719,4 +713,290 @@ describe("Resolve references to itself", () => { expect(restored.nodes[0].connections[1]).toBe(restored.nodes[2]); expect(restored.nodes[1].connections[0]).toBe(restored.nodes[0]); }); + + // Diamond pattern: A -> B -> D, A -> C -> D (D is shared) + it("should handle diamond-shaped references (Issue #1)", () => { + var d: any = { value: "diamond" }; + var b: any = { ref: d }; + var c: any = { ref: d }; + var a: any = { left: b, right: c }; + + const actual = j2s(a); + const restored = Function(`return ${actual}`)(); + + expect(restored.left.ref.value).toBe("diamond"); + expect(restored.left.ref).toBe(restored.right.ref); + }); + + // Shared array between two object branches + it("should handle shared array between branches (Issue #1)", () => { + var items = [10, 20, 30]; + var obj: any = { + source: items, + copy: items, + }; + + const actual = j2s(obj); + const restored = Function(`return ${actual}`)(); + + expect(restored.source).toBe(restored.copy); + expect(restored.source[0]).toBe(10); + expect(restored.source.length).toBe(3); + }); + + // Nested self-reference (not root): inner object references itself + it("should handle nested object self-reference (Issue #1)", () => { + var inner: any = { name: "inner" }; + inner.self = inner; + var outer = { data: inner }; + + const actual = j2s(outer); + const restored = Function(`return ${actual}`)(); + + expect(restored.data.name).toBe("inner"); + expect(restored.data.self).toBe(restored.data); + }); + + // Cross-reference + circular mix: A.b references C, C.back references A + it("should handle mixed circular and cross-references (Issue #1)", () => { + var a: any = { name: "A" }; + var b: any = { name: "B" }; + var c: any = { name: "C", back: a }; + a.child = b; + b.friend = c; + + const actual = j2s(a); + const restored = Function(`return ${actual}`)(); + + expect(restored.name).toBe("A"); + expect(restored.child.name).toBe("B"); + expect(restored.child.friend.name).toBe("C"); + expect(restored.child.friend.back).toBe(restored); + }); + + // Deep diamond: shared object at depth 3 + it("should handle deeply nested shared reference (Issue #1)", () => { + var leaf = { x: 1, y: 2 }; + var obj: any = { + a: { b: { c: leaf } }, + d: { e: { f: leaf } }, + }; + + const actual = j2s(obj); + const restored = Function(`return ${actual}`)(); + + expect(restored.a.b.c).toBe(restored.d.e.f); + expect(restored.a.b.c.x).toBe(1); + }); + + // Array of arrays sharing a sub-array + it("should handle shared sub-arrays (Issue #1)", () => { + var shared = [1, 2, 3]; + var arr: any = [shared, [shared, 4], shared]; + + const actual = j2s(arr); + const restored = Function(`return ${actual}`)(); + + expect(restored[0]).toBe(restored[2]); + expect(restored[1][0]).toBe(restored[0]); + expect(restored[0][0]).toBe(1); + }); + + // Circular chain through non-root: A -> B -> C -> B (not back to A) + it("should handle circular chain to non-root ancestor (Issue #1)", () => { + var a: any = { name: "A" }; + var b: any = { name: "B" }; + var c: any = { name: "C", back: b }; + a.next = b; + b.next = c; + + const actual = j2s(a); + const restored = Function(`return ${actual}`)(); + + expect(restored.name).toBe("A"); + expect(restored.next.name).toBe("B"); + expect(restored.next.next.name).toBe("C"); + expect(restored.next.next.back).toBe(restored.next); + }); + + // Property key with special characters in cross-reference path + it("should handle cross-references with special property names (Issue #1)", () => { + var shared = { ok: true }; + var obj: any = { + "my-key": shared, + "other's": shared, + }; + + const actual = j2s(obj); + const restored = Function(`return ${actual}`)(); + + expect(restored["my-key"]).toBe(restored["other's"]); + expect(restored["my-key"].ok).toBe(true); + }); + + // Three-level tree: root -> [branch1, branch2], both branches share a leaf + it("should handle tree with shared leaves (Issue #1)", () => { + var leaf = { type: "leaf" }; + var root: any = { + branches: [ + { name: "b1", items: [leaf, { type: "other" }] }, + { name: "b2", items: [{ type: "other2" }, leaf] }, + ], + }; + + const actual = j2s(root); + const restored = Function(`return ${actual}`)(); + + expect(restored.branches[0].items[0]).toBe(restored.branches[1].items[1]); + expect(restored.branches[0].items[0].type).toBe("leaf"); + }); + + // Object referencing root from deep nesting + cross-ref + it("should handle root circular ref combined with cross-ref (Issue #1)", () => { + var shared = { val: 99 }; + var root: any = { + a: { ref: shared }, + b: { ref: shared }, + }; + root.a.root = root; + + const actual = j2s(root); + const restored = Function(`return ${actual}`)(); + + expect(restored.a.root).toBe(restored); + expect(restored.a.ref).toBe(restored.b.ref); + expect(restored.a.ref.val).toBe(99); + }); + + // Object -> function -> array: shared function referenced from multiple places + it("should handle shared function between object branches (Issue #1)", () => { + var handler = function greet(name: string) { + return "hello " + name; + }; + var obj: any = { + a: { action: handler }, + b: { action: handler }, + }; + + const actual = j2s(obj); + const restored = Function(`return ${actual}`)(); + + expect(restored.a.action).toBe(restored.b.action); + expect(restored.a.action("world")).toBe("hello world"); + }); + + // Object containing function with properties that reference back + it("should handle function with property referencing parent object (Issue #1)", () => { + var obj: any = { name: "container" }; + var fn: any = function process() { + return 42; + }; + fn.owner = obj; + obj.run = fn; + + const actual = j2s(obj); + const restored = Function(`return ${actual}`)(); + + expect(restored.name).toBe("container"); + expect(restored.run()).toBe(42); + expect(restored.run.owner).toBe(restored); + }); + + // Mixed: object -> array -> function -> object cross-refs + it("should handle object-array-function chain with cross-refs (Issue #1)", () => { + var config = { debug: true }; + var fn = function log(msg: string) { + return msg; + }; + var pipeline: any = { + steps: [fn, config], + settings: config, + handler: fn, + }; + + const actual = j2s(pipeline); + const restored = Function(`return ${actual}`)(); + + expect(restored.steps[0]).toBe(restored.handler); + expect(restored.steps[1]).toBe(restored.settings); + expect(restored.handler("test")).toBe("test"); + expect(restored.settings.debug).toBe(true); + }); + + // Array with functions referencing shared objects + it("should handle array of functions sharing an object (Issue #1)", () => { + var state = { count: 0 }; + var inc: any = function increment() { + return 1; + }; + inc.state = state; + var dec: any = function decrement() { + return -1; + }; + dec.state = state; + var arr = [inc, dec]; + + const actual = j2s(arr); + const restored = Function(`return ${actual}`)(); + + expect(restored[0].state).toBe(restored[1].state); + expect(restored[0].state.count).toBe(0); + expect(restored[0]()).toBe(1); + expect(restored[1]()).toBe(-1); + }); + + // Deeply nested: object -> array -> object -> function -> back to array + it("should handle deep mixed nesting with circular ref (Issue #1)", () => { + var arr: any[] = []; + var inner: any = { + process: function doWork() { + return "done"; + }, + }; + inner.process.list = arr; + var root: any = { items: arr }; + arr.push(inner); + + const actual = j2s(root); + const restored = Function(`return ${actual}`)(); + + expect(restored.items[0].process()).toBe("done"); + expect(restored.items[0].process.list).toBe(restored.items); + }); + + // Function referencing itself via a property (function self-ref) + it("should handle function self-reference via property (Issue #1)", () => { + var fn: any = function recursive() { + return 1; + }; + fn.self = fn; + var obj = { action: fn }; + + const actual = j2s(obj); + const restored = Function(`return ${actual}`)(); + + expect(restored.action()).toBe(1); + expect(restored.action.self).toBe(restored.action); + }); + + // Two functions referencing each other + it("should handle mutually referencing functions (Issue #1)", () => { + var fnA: any = function a() { + return "A"; + }; + var fnB: any = function b() { + return "B"; + }; + fnA.partner = fnB; + fnB.partner = fnA; + var obj = { first: fnA, second: fnB }; + + const actual = j2s(obj); + const restored = Function(`return ${actual}`)(); + + expect(restored.first()).toBe("A"); + expect(restored.second()).toBe("B"); + expect(restored.first.partner).toBe(restored.second); + expect(restored.second.partner).toBe(restored.first); + }); }); From e5339072625618ba8958986a9c980c61ce1c7a31 Mon Sep 17 00:00:00 2001 From: lopatnov Date: Thu, 12 Feb 2026 18:21:37 +0200 Subject: [PATCH 03/18] Added demo --- .claude/settings.local.json | 13 -- .github/ISSUE_TEMPLATE/bug_report.md | 38 ++--- .github/pull_request_template.md | 21 ++- .gitignore | 1 + CHANGELOG.md | 71 +++++++- CONTRIBUTING.md | 143 +++++----------- README.md | 244 ++++++++++++++++----------- SECURITY.md | 10 +- demo/app.js | 192 +++++++++++++++++++++ demo/index.html | 76 +++++++++ demo/style.css | 216 ++++++++++++++++++++++++ package.json | 19 ++- 12 files changed, 787 insertions(+), 257 deletions(-) delete mode 100644 .claude/settings.local.json create mode 100644 demo/app.js create mode 100644 demo/index.html create mode 100644 demo/style.css diff --git a/.claude/settings.local.json b/.claude/settings.local.json deleted file mode 100644 index a399fa3..0000000 --- a/.claude/settings.local.json +++ /dev/null @@ -1,13 +0,0 @@ -{ - "permissions": { - "allow": [ - "Bash(npm run build:*)", - "Bash(npm test:*)", - "Bash(npm run check:*)", - "Bash(npx biome:*)", - "Bash(npm view:*)", - "Bash(npm install:*)", - "Bash(npm outdated:*)" - ] - } -} diff --git a/.github/ISSUE_TEMPLATE/bug_report.md b/.github/ISSUE_TEMPLATE/bug_report.md index dd84ea7..19eb865 100644 --- a/.github/ISSUE_TEMPLATE/bug_report.md +++ b/.github/ISSUE_TEMPLATE/bug_report.md @@ -1,38 +1,34 @@ --- name: Bug report -about: Create a report to help us improve +about: Report a bug to help us improve title: '' -labels: '' +labels: bug assignees: '' --- **Describe the bug** -A clear and concise description of what the bug is. +A clear and concise description of the bug. **To Reproduce** -Steps to reproduce the behavior: -1. Go to '...' -2. Click on '....' -3. Scroll down to '....' -4. See error -**Expected behavior** -A clear and concise description of what you expected to happen. +```javascript +// Minimal code example that reproduces the issue +import javaScriptToString from "@lopatnov/javascripttostring"; -**Screenshots** -If applicable, add screenshots to help explain your problem. +const value = /* ... */; +const result = javaScriptToString(value); +// Expected: ... +// Actual: ... +``` -**Desktop (please complete the following information):** - - OS: [e.g. iOS] - - Browser [e.g. chrome, safari] - - Version [e.g. 22] +**Expected behavior** +A clear description of what you expected to happen. -**Smartphone (please complete the following information):** - - Device: [e.g. iPhone6] - - OS: [e.g. iOS8.1] - - Browser [e.g. stock browser, safari] - - Version [e.g. 22] +**Environment:** + - Node.js version: [e.g. 20.x] + - Package version: [e.g. 1.7.3] + - OS: [e.g. Windows 11, macOS 14] **Additional context** Add any other context about the problem here. diff --git a/.github/pull_request_template.md b/.github/pull_request_template.md index 7be0b40..5966d94 100644 --- a/.github/pull_request_template.md +++ b/.github/pull_request_template.md @@ -1,5 +1,18 @@ -Thank you for your contribution to the JavaScriptToString repo. -Before submitting this PR, please make sure: +## Description -- [ ] Your code builds clean without any errors or warnings -- [ ] You have added unit tests +Brief description of the changes. + +## Type of Change + +- [ ] Bug fix +- [ ] New feature +- [ ] Documentation update +- [ ] Refactoring +- [ ] Other (describe below) + +## Checklist + +- [ ] Code builds clean without errors or warnings +- [ ] Tests have been added or updated +- [ ] All tests pass (`npm test`) +- [ ] Code style verified (`npm run check`) diff --git a/.gitignore b/.gitignore index ad46b30..d98ba0b 100644 --- a/.gitignore +++ b/.gitignore @@ -59,3 +59,4 @@ typings/ # next.js build output .next +/.claude diff --git a/CHANGELOG.md b/CHANGELOG.md index 2c967f1..36606cd 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,3 +1,68 @@ -Version 1.0.0 - 1.2.0 -Added single default function javaScriptToString -See https://github.com/lopatnov/jsToString/tree/2ad125ef392d7db45b26e14ec3225f35f28aad41 \ No newline at end of file +# Changelog + +All notable changes to this project will be documented in this file. + +## [Unreleased] + +### Added + +- Cross-reference support: shared objects between different branches are now preserved as references +- Biome for linting and formatting (replaced JSHint) +- Jest coverage reporting enabled +- 23 new tests for circular and cross-reference scenarios (76 total) + +### Fixed + +- **Issue #1:** Circular references to parent elements at the top level are now resolved correctly +- Circular chain references (A -> B -> C -> A) now work at any depth + +### Changed + +- Updated all dependencies to latest versions +- Migrated from `rollup-plugin-*` to `@rollup/plugin-*` official packages +- Migrated CI from Node.js 12.x to Node.js 18/20/22 +- Updated `@lopatnov/rollup-plugin-uglify` from 2.x to 3.x +- Upgraded TypeScript to 5.8, Jest to 30, Rollup to 4, Biome to 2.x +- Minimum Node.js version is now 18.0.0 + +### Removed + +- Travis CI configuration (replaced by GitHub Actions) +- JSHint configuration (replaced by Biome) +- `rollup-plugin-sourcemaps` (deprecated, no longer needed) + +## [1.7.3] - 2022 + +### Changed + +- Updated terser dependency + +## [1.7.0 - 1.7.2] + +### Changed + +- Updated packages and dependencies + +## [1.5.0 - 1.6.0] + +### Added + +- Options for limiting nesting depth (`nestedObjectsAmount`, `nestedArraysAmount`, `nestedFunctionsAmount`) + +## [1.3.0 - 1.4.0] + +### Added + +- Support for Map, Set, TypedArray, ArrayBuffer, DataView +- Support for BigInt, Symbol + +## [1.0.0 - 1.2.0] + +### Added + +- Initial release with `javaScriptToString` function +- Support for primitives, objects, arrays, functions, Date, RegExp, Error +- Circular reference handling +- Function properties and prototype serialization + +See [GitHub releases](https://github.com/lopatnov/jsToString/releases) for more details. diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md index 34124d3..5bc65d3 100644 --- a/CONTRIBUTING.md +++ b/CONTRIBUTING.md @@ -1,131 +1,64 @@ -# Contributions Welcome +# Contributing -Thanks for your interest in contributing to **JavaScriptToString**! Contributing to open source projects like this one can be a rewarding way to learn, teach, and build experience. Not only that, contributing is a great way to get involved with _social coding_. We are excited to see what amazing contributions you will make, as well as how your contributions will benefit others. +Thanks for your interest in contributing to **@lopatnov/javascripttostring**! Contributions of all kinds are welcome. -If you are new to contributing to open source projects, the process can be intimidating. Not to worry! To help ensure both you and the community get the most out of your contributions, we've put together the following guidelines. +## Ways to Contribute -## Table of Contents +- Report bugs and suggest features via [Issues](https://github.com/lopatnov/jsToString/issues) +- Fix bugs or implement new features via [Pull Requests](https://github.com/lopatnov/jsToString/pulls) +- Improve documentation +- Write or improve tests -1. [Types of Contributions](#types-of-contributions) -1. [Ground Rules & Expectations](#ground-rules--expectations) -1. [How to Contribute](#how-to-contribute) +## Getting Started ---- +1. **Fork** the repository on GitHub -## Types of Contributions +2. **Clone** your fork: -The common misconception about contributing to an open source project is that you need to contribute code. In fact, there are numerous ways you can directly contribute. To give you some ideas of how you can contribute, here are some examples of the types of contributions we are looking for: - -### Developers can: - -* Take a look at the [open issues][issues] and find one you can tackle. - -* Locate and fix bugs. - -* Implement innovative and awesome new features. - -* Help to improve tooling and testing. - -### Organizers and Planners can: - -* Link to duplicate issues, and suggest new issue labels, to help keep things organized. - -* Go through the [open issues][issues] and suggest closing old ones. - -* Ask clarifying questions on recently opened issues to move the discussion forward. - -* Help to organize meetups about the project. - -### Writers can: - -* Help to fix or improve the project's documentation. - -* Contribute to the project's [Wiki][wiki]. - -### Designers can: - -* Design wire frames, mock-ups, graphical assets, and logos. - -* Put together a style guide to help the project have a consistent visual design. - -### Supporters can: - -* Answer questions for people on open issues, or about the project in general. - -* Help to moderate discussion boards or conversation channels. - -## Ground Rules & Expectations - -Since the project is constantly being updated with contributions of all sorts, it is important to establish ground rules and as well as expectations. This helps to ensure the best possible experience for users, as well as encourage a positive, helpful, and lively community of active contributors just like you! - -Please make sure you read our [code of conduct][code-of-conduct] prior to contributing. - -## How to Contribute - -If you'd like to contribute, a good place to start is by searching through the [issues][issues] and [pull requests][pull-requests] to see if someone else had a similar idea or question. - -If you don't see your idea listed, and you think it fits into the goals of the project, you should: - -* **Minor Contribution _(e.g., typo fix)_:** Open a pull request -* **Major Contribution _(e.g., new feature)_:** Start by opening an issue first. That way, other people can weigh in on the discussion and planning before you do any work. - -To start making a contribution: - -1. `fork` the project repository by clicking the **fork** button on GitHub.![fork](https://help.github.com/assets/images/help/repository/fork_button.jpg) - -1. `clone` your forked repository (_noob tip: the actual command you type in is everything after the $_): - - ```shell - $ git clone https://github.com//jsToString + ```bash + git clone https://github.com//jsToString + cd jsToString ``` -1. Add a new remote that points to the original project so you can sync project changes with your local copy: +3. **Install dependencies:** - ```shell - $ git remote add upstream https://github.com/lopatnov/jsToString + ```bash + npm install ``` -1. Pull upstream changes into your local repositories `development` branch: +4. **Create a branch** for your changes: - ```shell - $ git checkout development - $ git pull upstream development && git push origin development + ```bash + git checkout -b my-feature ``` -1. Create a new branch from the `development` branch: -![branch](https://help.github.com/assets/images/help/branch/branch-selection-dropdown.png) +5. **Make your changes**, then run tests and lint: - **IMPORTANT:** Make sure you are on the `development` branch first. - - ```shell - $ git checkout -b + ```bash + npm test + npm run check ``` -1. Make your contribution to the project code. - -1. Write or adapt tests as needed. +6. **Commit and push:** -1. Add or change documentation as needed. - -1. After commiting changes, push your branch to your fork on Github, the remote `origin`: - - **IMPORTANT:** Your commit message should be in present tense and should describe what the commit, when applied, does to the code - not what you did to the code. - - ```shell - $ git push -u origin + ```bash + git push -u origin my-feature ``` -1. From your forked GitHub repository, open a pull request in the branch containing your contributions. Target the project's `development` branch for the pull request. +7. **Open a Pull Request** targeting the `master` branch + +## Guidelines -1. At this point, your contribution has been submitted for review. Please be patient while your contribution is being reviewed as this can take some time. Meanwhile, if there are questions or comments on your contribution, please respond and/or update with future commits. +- Write or update tests for any code changes +- Ensure all tests pass before submitting +- Run `npm run check` (Biome) to verify code style +- Keep pull requests focused on a single change +- Write clear commit messages in present tense -1. Once the pull request is approved and merged, you can pull the changes from `upstream` to your local repository and delete your extra branch(es). +## Code of Conduct -1. Don't forget to check out more [about] this project +Please read our [Code of Conduct](CODE_OF_CONDUCT.md) before contributing. -Happy contributing! +## Questions? -[issues]: https://github.com/lopatnov/jsToString/issues -[pull-requests]: https://github.com/lopatnov/jsToString/pulls -[code-of-conduct]: ./CODE_OF_CONDUCT.md -[about]: https://lopatnov.github.io/jsToString/ +Feel free to open an [issue](https://github.com/lopatnov/jsToString/issues) for any questions. diff --git a/README.md b/README.md index dbd2c69..89ebe96 100644 --- a/README.md +++ b/README.md @@ -1,170 +1,208 @@ -# JavaScriptToString [![Twitter](https://img.shields.io/twitter/url?url=https%3A%2F%2Fwww.npmjs.com%2Fpackage%2F%40lopatnov%2Fjavascripttostring)](https://twitter.com/intent/tweet?text=Wow:&url=https%3A%2F%2Fwww.npmjs.com%2Fpackage%2F%40lopatnov%2Fjavascripttostring) +# @lopatnov/javascripttostring [![npm](https://img.shields.io/npm/dt/@lopatnov/javascripttostring)](https://www.npmjs.com/package/@lopatnov/javascripttostring) [![NPM version](https://badge.fury.io/js/%40lopatnov%2Fjavascripttostring.svg)](https://www.npmjs.com/package/@lopatnov/javascripttostring) [![License](https://img.shields.io/github/license/lopatnov/jsToString)](https://github.com/lopatnov/jsToString/blob/master/LICENSE) -[![GitHub issues](https://img.shields.io/github/issues/lopatnov/jsToString)](https://github.com/lopatnov/jsToString/issues) -[![GitHub forks](https://img.shields.io/github/forks/lopatnov/jsToString)](https://github.com/lopatnov/jsToString/network) +[![TypeScript](https://img.shields.io/badge/TypeScript-5.8-blue)](https://www.typescriptlang.org/) [![GitHub stars](https://img.shields.io/github/stars/lopatnov/jsToString)](https://github.com/lopatnov/jsToString/stargazers) -![GitHub top language](https://img.shields.io/github/languages/top/lopatnov/jsToString) -[![Patreon](https://img.shields.io/badge/Donate-Patreon-informational)](https://www.patreon.com/lopatnov) -[![sobe.ru](https://img.shields.io/static/v1?label=sobe.ru&message=%D0%91%D0%BB%D0%B0%D0%B3%D0%BE%D0%B4%D0%B0%D1%80%D0%BD%D0%BE%D1%81%D1%82%D1%8C&color=yellow&logo=data:image/x-icon;base64,iVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAMAAADXqc3KAAAABGdBTUEAALGPC/xhBQAAACBjSFJNAAB6JgAAgIQAAPoAAACA6AAAdTAAAOpgAAA6mAAAF3CculE8AAAArlBMVEUAAAD//////////////////////////////////////////////////////////////////PP/3l7/9c//0yb/zAD/6ZP/zQf/++7/3FD/88X/0h7//v7/5oX/zATUqQDktgD/5HjQpgAFBACQcwD/zw/fsgCOcQD6yADZrQD2xAD8yQDnuADxwADcsADbrwDpugD3xQD5xwDjtQDywQD+ywD9ygDvvwD7yAD/1jRaObVGAAAAEHRSTlMAA3zg707pEJP8MMUBYN5fiwXJMQAAAAFiS0dEAf8CLd4AAAAHdElNRQflBgMAAxO4O2jCAAAAuElEQVQoz42S1w7CMAxFS8ueYZgNLZuyRynw/z9GdtxIkbgPceQT6Tq2vZwfEKx8wRPyiaViSYDABqQsAMq0OzxUqhbo9kBcavUM6A9AAtJAYDgC0ID7i+t4AghwfxanszlAGBnA/Flc0MfL1doA5s/ChoLtbg8QI392gpIBzf/AwYAWAsdTrIE05/nz5Xq7S6DKpenHM0pe+o/qg5Am74/0ybTkm+q6wG4iltV2LTko52idy+Banx9RYiS6Vrsc3AAAACV0RVh0ZGF0ZTpjcmVhdGUAMjAyMS0wNi0wM1QwMDowMzoxOCswMDowMLvSSCkAAAAldEVYdGRhdGU6bW9kaWZ5ADIwMjEtMDYtMDNUMDA6MDM6MTgrMDA6MDDKj/CVAAAAAElFTkSuQmCC)](https://sobe.ru/na/tech_knigi) -[![LinkedIn](https://img.shields.io/badge/LinkedIn-lopatnov-informational?style=social&logo=linkedin)](https://www.linkedin.com/in/lopatnov/) +A TypeScript library that converts any JavaScript runtime value into its string source code representation. Supports objects, arrays, functions, circular references, cross-references, and more. -[![Build Status](https://travis-ci.org/lopatnov/jsToString.png?branch=master)](https://travis-ci.org/lopatnov/jsToString) +## Features -JavaScript value to string runtime converter. It converts a runtime value into string a value. +- Full TypeScript support with type definitions +- Multiple output formats: CommonJS, ES Modules, UMD +- Handles circular references (self-referencing objects/arrays) +- Handles cross-references (shared objects between branches) +- Converts functions with their properties and prototypes +- Supports built-in types: Date, RegExp, Error, Map, Set, TypedArrays, Symbols, BigInt +- Configurable nesting depth for objects, arrays, and functions -## Install +## Installation -[![https://nodei.co/npm/@lopatnov/javascripttostring.png?downloads=true&downloadRank=true&stars=true](https://nodei.co/npm/@lopatnov/javascripttostring.png?downloads=true&downloadRank=true&stars=true)](https://www.npmjs.com/package/@lopatnov/javascripttostring) - -```shell +```bash npm install @lopatnov/javascripttostring ``` -[Browser](//lopatnov.github.io/jsToString/dist/javascripttostring.umd.js) +### Browser (CDN) ```html - + + ``` -## Import package to the project +## Usage -### TypeScript +### ES Modules ```typescript -import javaScriptToString from '@lopatnov/javascripttostring'; +import javaScriptToString from "@lopatnov/javascripttostring"; ``` -### JavaScript +### CommonJS ```javascript -var javaScriptToString = require("@lopatnov/javascripttostring"); +const javaScriptToString = require("@lopatnov/javascripttostring"); ``` -## Convert JavaScript values into string values +### Browser (UMD) -```typescript -javaScriptToString(value: any, options?: IJ2SOptions) => string +```javascript +const javaScriptToString = window.javaScriptToString; ``` -where +## API -```typescript -interface IJ2SOptions { - includeFunctionProperties?: boolean; // default true - includeFunctionPrototype?: boolean; // default true - includeBuffers?: boolean; // default true - nestedObjectsAmount?: number; // default Number.POSITIVE_INFINITY - nestedArraysAmount?: number; // default Number.POSITIVE_INFINITY - nestedFunctionsAmount?: number; // default Number.POSITIVE_INFINITY -} -``` +### javaScriptToString(value, options?): string + +Converts a JavaScript value to its string source code representation. + +| Parameter | Type | Description | +|-----------|------|-------------| +| `value` | `any` | The value to convert | +| `options` | `IJ2SOptions` | Optional configuration | + +**Returns:** `string` - Source code representation that can be evaluated back to the original value + +### Options + +| Option | Type | Default | Description | +|--------|------|---------|-------------| +| `includeFunctionProperties` | `boolean` | `true` | Include function's own properties | +| `includeFunctionPrototype` | `boolean` | `true` | Include function's prototype properties | +| `includeBuffers` | `boolean` | `true` | Include ArrayBuffer and TypedArray contents | +| `nestedObjectsAmount` | `number` | `Infinity` | Max depth for nested objects | +| `nestedArraysAmount` | `number` | `Infinity` | Max depth for nested arrays | +| `nestedFunctionsAmount` | `number` | `Infinity` | Max depth for nested functions | ## Examples +### Primitives + ```typescript -let myStringOfString = javaScriptToString('Hello world'); -console.log(myStringOfString); -/* expected myStringOfString value: "\"Hello world\"" */ +javaScriptToString("Hello world"); // '"Hello world"' +javaScriptToString(42); // '42' +javaScriptToString(true); // 'true' +javaScriptToString(undefined); // 'undefined' +javaScriptToString(null); // 'null' ``` +### Arrays + ```typescript -let myStringOfArray = javaScriptToString(["Hello", "World", ".", "How", "do", "you", "do", "?"]); -console.log(myStringOfArray); -/* expected myStringOfArray value: "[\"Hello\",\"World\",\".\",\"How\",\"do\",\"you\",\"do\",\"?\"]" */ +javaScriptToString(["Hello", "World"]); +// '["Hello", "World"]' ``` +### Objects + ```typescript -let myObjectString = javaScriptToString({ - friend1: "Shurik", - friend2: "Alex", - friends: { - friend3: 123456, - friend4: {}, - friend5: ["Hola", "amigo"], - friend6: () => { - console.log("How you doing?"); - } - } +javaScriptToString({ + name: "Alex", + friends: ["Shurik", "Hola"], + greet: () => { + console.log("How you doing?"); + } }); - -console.log(myObjectString); -/* expected myObjectString value: -"{friend1: \"Shurik\",friend2: \"Alex\",friends: {friend3: 123456,friend4: {},friend5: [\"Hola\",\"amigo\"],friend6: () => { - console.log(\"How you doing?\"); - }}}" -*/ +// '{name: "Alex", friends: ["Shurik", "Hola"], greet: () => { console.log("How you doing?"); }}' ``` -```typescript -let myFunctionString = javaScriptToString(function(a,b) { - console.log("Just a function"); -}) - -console.log(myFunctionString); -/* expected myFunctionString: -"function(a,b) { - console.log(\"Just a function\"); -}" -*/ -``` +### Functions with Properties ```typescript function Simple(title) { this.title = title || "world"; } - Simple.count = 0; - -Simple.prototype.show = function(){ +Simple.prototype.show = function () { Simple.count++; - console.log('title = ', this.title); - console.log('count = ', Simple.count); -} -console.log(javaScriptToString(Simple)); + console.log("title =", this.title); +}; -/* Expected: +javaScriptToString(Simple); +// '(function(){ var Simple = function Simple(title) { ... }; Simple.count = 0; Simple.prototype.show = function(){ ... }; return Simple; }())' +``` -"(function(){ - var Simple = function Simple(title) { - this.title = title || \"world\"; -}; - Simple.count = 0; +### Circular References - Simple.prototype.show = function(){ - Simple.count++; - console.log('title = ', this.title); - console.log('count = ', Simple.count); -}; +Objects that reference themselves are fully supported: - return Simple; -}())" +```typescript +var x = [1, 2, 3]; +x[0] = x; -*/ +javaScriptToString(x); +// '(function(){ var ___j2s_0 = [null, 2, 3]; ___j2s_0['0'] = ___j2s_0; return ___j2s_0; }())' ``` -```javascript -var x = [1,2,3]; -x[0] = x; -console.log(javaScriptToString(x)); +### Cross-References + +Objects shared between different branches are preserved as references: + +```typescript +var shared = { value: 42 }; +var obj = { a: shared, b: shared }; + +javaScriptToString(obj); +// Generates code where obj.a === obj.b (same reference) +``` -/* -"(function(){ var ___j2s_0 = [null, 2, 3]; ___j2s_0['0'] = ___j2s_0; return ___j2s_0; }())" -*/ +### Restoring Values + +The generated string can be evaluated back to a working JavaScript value: + +```typescript +var original = { name: "test" }; +original.self = original; + +var code = javaScriptToString(original); +var restored = Function("return " + code)(); + +console.log(restored.self === restored); // true +console.log(restored.name); // "test" ``` +## Supported Types + +| Type | Example | +|------|---------| +| Primitives | `string`, `number`, `boolean`, `undefined`, `null` | +| BigInt | `BigInt(123)` | +| Symbol | `Symbol("description")` | +| RegExp | `/pattern/gi` | +| Date | `new Date()` | +| Error | `new Error("message")` | +| Array | `[1, 2, 3]` | +| Object | `{ key: "value" }` | +| Function | `function() {}`, `() => {}` | +| Map | `new Map([["key", "value"]])` | +| Set | `new Set([1, 2, 3])` | +| TypedArray | `Int8Array`, `Float64Array`, etc. | +| ArrayBuffer | `new ArrayBuffer(8)` | +| DataView | `new DataView(buffer)` | + ## Demo -See, how it's working: [https://runkit.com/lopatnov/javascripttostring-demo](https://runkit.com/lopatnov/javascripttostring-demo) +- **Live Demo:** [https://runkit.com/lopatnov/javascripttostring-demo](https://runkit.com/lopatnov/javascripttostring-demo) +- **Try it:** [https://npm.runkit.com/@lopatnov/javascripttostring](https://npm.runkit.com/%40lopatnov%2Fjavascripttostring) + +## Contributing + +Contributions are welcome! Please see [CONTRIBUTING.md](CONTRIBUTING.md) for guidelines. + +## License + +[Apache-2.0](LICENSE) + +Copyright 2019-2026 Oleksandr Lopatnov -Test it with a runkit: [https://npm.runkit.com/%40lopatnov%2Fjavascripttostring](https://npm.runkit.com/%40lopatnov%2Fjavascripttostring) +--- -## Rights and Agreements +### Author -License [Apache-2.0](https://github.com/lopatnov/jsToString/blob/master/LICENSE) +**Oleksandr Lopatnov** -Copyright 2019–2021 Oleksandr Lopatnov +[![LinkedIn](https://img.shields.io/badge/LinkedIn-Connect-blue?style=flat&logo=linkedin)](https://www.linkedin.com/in/lopatnov/) +[![GitHub](https://img.shields.io/badge/GitHub-Follow-black?style=flat&logo=github)](https://github.com/lopatnov) +If you find this project useful, please consider giving it a star on GitHub! diff --git a/SECURITY.md b/SECURITY.md index b60259a..6c464ec 100644 --- a/SECURITY.md +++ b/SECURITY.md @@ -8,8 +8,12 @@ ## Reporting a Vulnerability -Create an [issue][issue] to report a vulnerability, please. +If you discover a security vulnerability, please report it responsibly: -Go to , create `New issue`, describe the vulnerability as well as possible. When I read the vulnerability description, I'll give a feedback on futher actions. +1. Go to [GitHub Issues](https://github.com/lopatnov/jsToString/issues) +2. Create a **New issue** +3. Describe the vulnerability with as much detail as possible, including steps to reproduce -[issue]: https://github.com/lopatnov/jsToString/issues +We will review the report and respond as soon as possible. + +**Please do not open a public issue if the vulnerability is critical.** Instead, contact the maintainer directly via [LinkedIn](https://www.linkedin.com/in/lopatnov/). diff --git a/demo/app.js b/demo/app.js new file mode 100644 index 0000000..61ebd53 --- /dev/null +++ b/demo/app.js @@ -0,0 +1,192 @@ +var inputEl = document.getElementById("input"); +var outputEl = document.getElementById("output"); +var verifyEl = document.getElementById("verify"); +var inputBadge = document.getElementById("input-badge"); +var outputBadge = document.getElementById("output-badge"); +var verifyBadge = document.getElementById("verify-badge"); +var copyInputBtn = document.getElementById("copy-input-btn"); +var copyOutputBtn = document.getElementById("copy-output-btn"); +var examplesEl = document.getElementById("examples"); + +var examples = { + "simple-object": 'return {\n name: "Alex",\n age: 30,\n active: true\n};', + "nested-object": 'return {\n friend1: "Shurik",\n friend2: "Alex",\n friends: {\n friend3: 123456,\n friend4: {},\n friend5: ["Hola", "amigo"],\n friend6: () => {\n console.log("How you doing?");\n }\n }\n};', + "array": 'return ["Hello", "World", 42, true, null, { nested: "object" }];', + "function-props": 'function Simple(title) {\n this.title = title || "world";\n}\n\nSimple.count = 0;\n\nSimple.prototype.show = function() {\n Simple.count++;\n console.log("title =", this.title);\n};\n\nreturn Simple;', + "circular-ref": 'var obj = { name: "root", value: 42 };\nobj.self = obj;\nreturn obj;', + "cross-ref": 'var shared = { value: 42 };\nvar obj = {\n first: shared,\n second: shared,\n nested: { third: shared }\n};\nreturn obj;', + "complex-graph": 'var node1 = { id: 1, connections: [] };\nvar node2 = { id: 2, connections: [] };\nvar node3 = { id: 3, connections: [] };\n\nnode1.connections.push(node2, node3);\nnode2.connections.push(node1, node3);\nnode3.connections.push(node1, node2);\n\nreturn { nodes: [node1, node2, node3], root: node1 };', + "mixed-types": 'return {\n string: "hello",\n number: 3.14,\n bigint: BigInt(9007199254740991),\n boolean: true,\n nil: null,\n undef: undefined,\n regex: /test/gi,\n date: new Date("2026-01-01"),\n set: new Set([1, 2, 3]),\n map: new Map([["key", "value"]]),\n fn: function greet(name) { return "hello " + name; }\n};' +}; + +function updateInputBadge() { + inputBadge.textContent = inputEl.value.length + " chars"; +} + +updateInputBadge(); + +inputEl.addEventListener("input", updateInputBadge); + +examplesEl.addEventListener("change", function () { + var key = this.value; + if (key && examples[key]) { + inputEl.value = examples[key]; + updateInputBadge(); + this.value = ""; + } +}); + +document.getElementById("run-btn").addEventListener("click", run); +document.getElementById("clear-btn").addEventListener("click", function () { + inputEl.value = ""; + updateInputBadge(); + outputEl.textContent = 'Click "Convert to String" to see the result'; + outputEl.className = "output-area empty"; + verifyEl.textContent = "The output string will be evaluated back to verify correctness"; + verifyEl.className = "verify-area empty"; + outputBadge.classList.add("hidden"); + copyOutputBtn.classList.add("hidden"); + verifyBadge.classList.add("hidden"); +}); + +function copyToClipboard(text, btn) { + navigator.clipboard.writeText(text).then(function () { + var original = btn.textContent; + btn.textContent = "Copied!"; + btn.classList.add("copied"); + setTimeout(function () { + btn.textContent = original; + btn.classList.remove("copied"); + }, 1500); + }); +} + +copyInputBtn.addEventListener("click", function () { + copyToClipboard(inputEl.value, this); +}); + +copyOutputBtn.addEventListener("click", function () { + var text = outputEl.textContent; + if (text && !outputEl.classList.contains("empty")) { + copyToClipboard(text, this); + } +}); + +inputEl.addEventListener("keydown", function (e) { + if (e.key === "Enter" && (e.ctrlKey || e.metaKey)) { + e.preventDefault(); + run(); + } + if (e.key === "Tab") { + e.preventDefault(); + var start = this.selectionStart; + var end = this.selectionEnd; + this.value = this.value.substring(0, start) + " " + this.value.substring(end); + this.selectionStart = this.selectionEnd = start + 2; + } +}); + +function run() { + var code = inputEl.value.trim(); + if (!code) return; + + var value; + try { + var fn = new Function(code); + value = fn(); + } catch (err) { + showOutput("Function execution error:\n" + err.message, true); + showVerify("", true, "Skipped — input error"); + return; + } + + var str; + try { + str = javaScriptToString(value); + } catch (err) { + showOutput("javaScriptToString error:\n" + err.message, true); + showVerify("", true, "Skipped — conversion error"); + return; + } + + showOutput(str, false); + + try { + var restored = new Function("return " + str)(); + var preview = formatPreview(restored, 3); + showVerify(preview, false, "Eval OK"); + } catch (err) { + showVerify("Eval error: " + err.message, true, "Eval Failed"); + } +} + +function showOutput(text, isError) { + outputEl.textContent = text; + outputEl.className = "output-area" + (isError ? " error" : ""); + outputBadge.classList.remove("hidden"); + if (isError) { + outputBadge.textContent = "Error"; + outputBadge.className = "badge badge-error"; + copyOutputBtn.classList.add("hidden"); + } else { + outputBadge.textContent = text.length + " chars"; + outputBadge.className = "badge badge-info"; + copyOutputBtn.classList.remove("hidden"); + } +} + +function showVerify(text, isError, label) { + if (!text && label) { + verifyEl.textContent = label; + verifyEl.className = "verify-area" + (isError ? " error" : " empty"); + } else { + verifyEl.textContent = text; + verifyEl.className = "verify-area" + (isError ? " error" : ""); + } + verifyBadge.classList.remove("hidden"); + if (isError) { + verifyBadge.textContent = label || "Error"; + verifyBadge.className = "badge badge-error"; + } else { + verifyBadge.textContent = label || "OK"; + verifyBadge.className = "badge badge-success"; + } +} + +function formatPreview(val, depth) { + if (depth <= 0) return "..."; + if (val === null) return "null"; + if (val === undefined) return "undefined"; + if (typeof val === "string") return JSON.stringify(val); + if (typeof val === "number" || typeof val === "boolean") return String(val); + if (typeof val === "bigint") return val + "n"; + if (typeof val === "symbol") return val.toString(); + if (typeof val === "function") return val.name ? "[Function: " + val.name + "]" : "[Function]"; + if (val instanceof RegExp) return String(val); + if (val instanceof Date) return val.toISOString(); + if (val instanceof Set) { + return "Set(" + val.size + ") {" + [...val].map(function(v) { return formatPreview(v, depth - 1); }).join(", ") + "}"; + } + if (val instanceof Map) { + var entries = []; + val.forEach(function(v, k) { entries.push(formatPreview(k, depth - 1) + " => " + formatPreview(v, depth - 1)); }); + return "Map(" + val.size + ") {" + entries.join(", ") + "}"; + } + if (Array.isArray(val)) { + if (val.length === 0) return "[]"; + var items = val.map(function(v) { return formatPreview(v, depth - 1); }); + return "[" + items.join(", ") + "]"; + } + if (typeof val === "object") { + var keys = Object.keys(val); + if (keys.length === 0) return "{}"; + var props = keys.slice(0, 10).map(function(k) { + var v = val[k]; + if (v === val) return k + ": [Circular]"; + return k + ": " + formatPreview(v, depth - 1); + }); + if (keys.length > 10) props.push("... +" + (keys.length - 10) + " more"); + return "{" + props.join(", ") + "}"; + } + return String(val); +} diff --git a/demo/index.html b/demo/index.html new file mode 100644 index 0000000..259ba04 --- /dev/null +++ b/demo/index.html @@ -0,0 +1,76 @@ + + + + + + @lopatnov/javascripttostring — Live Demo + + + +
                    +
                    +

                    javaScriptToString — Live Demo

                    +

                    Write a function that returns a value. It will be converted to source code string.

                    +
                    + +
                    +
                    + Input — function body +
                    + 0 chars + + +
                    +
                    + +
                    + +
                    + + +
                    + +
                    +
                    + Output — javaScriptToString(result) +
                    + + +
                    +
                    +
                    Click "Convert to String" to see the result
                    +
                    + +
                    +
                    + Verification — eval back to value + +
                    +
                    The output string will be evaluated back to verify correctness
                    +
                    + +
                    +

                    + npm +  ·  + GitHub +  ·  + © 2019–2026 Oleksandr Lopatnov +

                    +
                    +
                    + + + + + diff --git a/demo/style.css b/demo/style.css new file mode 100644 index 0000000..4610156 --- /dev/null +++ b/demo/style.css @@ -0,0 +1,216 @@ +*, *::before, *::after { box-sizing: border-box; margin: 0; padding: 0; } + +body { + font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif; + background: #0f172a; + color: #e2e8f0; + min-height: 100vh; + padding: 2rem 1rem; +} + +.container { + max-width: 900px; + margin: 0 auto; +} + +header { + text-align: center; + margin-bottom: 2rem; +} + +h1 { + font-size: 1.75rem; + font-weight: 700; + color: #f8fafc; + margin-bottom: 0.5rem; +} + +h1 span { color: #38bdf8; } + +.subtitle { + color: #94a3b8; + font-size: 0.95rem; +} + +.panel { + background: #1e293b; + border: 1px solid #334155; + border-radius: 12px; + overflow: hidden; + margin-bottom: 1.5rem; +} + +.panel-header { + display: flex; + align-items: center; + justify-content: space-between; + padding: 0.75rem 1.25rem; + background: #1e293b; + border-bottom: 1px solid #334155; +} + +.panel-title { + font-size: 0.8rem; + font-weight: 600; + text-transform: uppercase; + letter-spacing: 0.05em; + color: #94a3b8; +} + +textarea { + width: 100%; + min-height: 220px; + padding: 1.25rem; + background: #0f172a; + color: #e2e8f0; + border: none; + outline: none; + font-family: "JetBrains Mono", "Fira Code", "Cascadia Code", Consolas, monospace; + font-size: 0.875rem; + line-height: 1.6; + resize: vertical; + tab-size: 2; +} + +textarea::placeholder { color: #475569; } + +.actions { + display: flex; + gap: 0.75rem; + align-items: center; + flex-wrap: wrap; +} + +button { + padding: 0.6rem 1.5rem; + border-radius: 8px; + border: none; + font-size: 0.875rem; + font-weight: 600; + cursor: pointer; + transition: all 0.15s ease; +} + +.btn-primary { + background: #2563eb; + color: #fff; +} +.btn-primary:hover { background: #1d4ed8; } +.btn-primary:active { transform: scale(0.97); } + +.btn-secondary { + background: #334155; + color: #cbd5e1; +} +.btn-secondary:hover { background: #475569; } + +.panel-tools { + display: flex; + align-items: center; + gap: 0.5rem; +} + +.btn-copy { + padding: 0.25rem 0.6rem; + border-radius: 5px; + border: 1px solid #475569; + background: #1e293b; + color: #94a3b8; + font-size: 0.7rem; + font-weight: 600; + cursor: pointer; + transition: all 0.15s ease; + text-transform: uppercase; + letter-spacing: 0.03em; +} +.btn-copy:hover { background: #334155; color: #e2e8f0; border-color: #64748b; } +.btn-copy.copied { background: #065f46; color: #6ee7b7; border-color: #065f46; } + +.panel-tools select { + appearance: none; + padding: 0.35rem 2rem 0.35rem 0.75rem; + border-radius: 6px; + border: 1px solid #475569; + background: #1e293b url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' fill='%2394a3b8' viewBox='0 0 16 16'%3E%3Cpath d='M8 11L3 6h10z'/%3E%3C/svg%3E") no-repeat right 0.5rem center; + color: #cbd5e1; + font-size: 0.8rem; + font-family: inherit; + cursor: pointer; + outline: none; +} +.panel-tools select:hover { border-color: #64748b; } + +.output-area { + padding: 1.25rem; + background: #0f172a; + font-family: "JetBrains Mono", "Fira Code", "Cascadia Code", Consolas, monospace; + font-size: 0.875rem; + line-height: 1.6; + white-space: pre-wrap; + word-break: break-all; + min-height: 80px; + color: #a5f3fc; +} + +.output-area.error { + color: #fca5a5; +} + +.output-area.empty { + color: #475569; + font-style: italic; + font-family: inherit; +} + +.verify-area { + padding: 1.25rem; + background: #0f172a; + font-family: "JetBrains Mono", "Fira Code", "Cascadia Code", Consolas, monospace; + font-size: 0.875rem; + line-height: 1.6; + white-space: pre-wrap; + word-break: break-all; + min-height: 60px; + color: #86efac; +} + +.verify-area.error { color: #fca5a5; } +.verify-area.empty { color: #475569; font-style: italic; font-family: inherit; } + +.badge { + display: inline-block; + font-size: 0.7rem; + padding: 0.2rem 0.5rem; + border-radius: 4px; + font-weight: 600; + text-transform: uppercase; +} + +.badge-success { background: #065f46; color: #6ee7b7; } +.badge-error { background: #7f1d1d; color: #fca5a5; } +.badge-info { background: #1e3a5f; color: #93c5fd; } + +.panel-output { margin-top: 1.5rem; } + +.hidden { display: none; } + +footer { + text-align: center; + margin-top: 2rem; + color: #64748b; + font-size: 0.8rem; +} + +footer a { + color: #38bdf8; + text-decoration: none; +} +footer a:hover { text-decoration: underline; } + +@media (max-width: 600px) { + body { padding: 1rem 0.5rem; } + h1 { font-size: 1.3rem; } + textarea { min-height: 180px; font-size: 0.8rem; } + .actions { flex-direction: column; } + button, .examples-dropdown select { width: 100%; } +} diff --git a/package.json b/package.json index 1af09d2..6143d82 100644 --- a/package.json +++ b/package.json @@ -3,14 +3,23 @@ "version": "1.7.3", "license": "Apache-2.0", "author": "lopatnov", - "description": "JavaScript value to string converter", + "description": "A TypeScript library that converts any JavaScript runtime value into its string source code representation, including objects, arrays, functions, circular references, and cross-references", "homepage": "https://lopatnov.github.io/jsToString/", "keywords": [ + "javascript-to-string", + "object-to-string", + "stringify", + "serialization", + "source-code", + "code-generation", + "circular-references", + "cross-references", + "function-to-string", + "array-to-string", + "value-to-string", + "runtime-converter", "TypeScript", - "JavaScript", - "reverse engineering", - "object to string", - "conversion" + "JavaScript" ], "main": "dist/javascripttostring.umd.js", "module": "dist/javascripttostring.es5.js", From 549f2b28f5126a95b3d44b8800f961c30993f3e0 Mon Sep 17 00:00:00 2001 From: lopatnov Date: Thu, 12 Feb 2026 18:28:56 +0200 Subject: [PATCH 04/18] Docs update --- docs/assets/highlight.css | 45 +++--- docs/functions/default.html | 2 +- docs/index.html | 237 ++++++++++++++++++++++++++----- docs/interfaces/ij2soptions.html | 4 +- docs/media/CONTRIBUTING.md | 64 +++++++++ docs/media/LICENSE | 192 +++++++++++++++++++++++++ package.json | 3 +- 7 files changed, 487 insertions(+), 60 deletions(-) create mode 100644 docs/media/CONTRIBUTING.md create mode 100644 docs/media/LICENSE diff --git a/docs/assets/highlight.css b/docs/assets/highlight.css index f01fc9d..d66ec49 100644 --- a/docs/assets/highlight.css +++ b/docs/assets/highlight.css @@ -5,28 +5,30 @@ --dark-hl-1: #D4D4D4; --light-hl-2: #A31515; --dark-hl-2: #CE9178; - --light-hl-3: #800000; - --dark-hl-3: #808080; + --light-hl-3: #008000; + --dark-hl-3: #6A9955; --light-hl-4: #800000; - --dark-hl-4: #569CD6; - --light-hl-5: #000000FF; - --dark-hl-5: #D4D4D4; - --light-hl-6: #E50000; - --dark-hl-6: #9CDCFE; - --light-hl-7: #0000FF; - --dark-hl-7: #CE9178; - --light-hl-8: #AF00DB; - --dark-hl-8: #C586C0; - --light-hl-9: #001080; - --dark-hl-9: #9CDCFE; - --light-hl-10: #0000FF; - --dark-hl-10: #569CD6; - --light-hl-11: #267F99; - --dark-hl-11: #4EC9B0; - --light-hl-12: #008000; - --dark-hl-12: #6A9955; + --dark-hl-4: #808080; + --light-hl-5: #800000; + --dark-hl-5: #569CD6; + --light-hl-6: #000000FF; + --dark-hl-6: #D4D4D4; + --light-hl-7: #E50000; + --dark-hl-7: #9CDCFE; + --light-hl-8: #0000FF; + --dark-hl-8: #CE9178; + --light-hl-9: #AF00DB; + --dark-hl-9: #C586C0; + --light-hl-10: #001080; + --dark-hl-10: #9CDCFE; + --light-hl-11: #0000FF; + --dark-hl-11: #569CD6; + --light-hl-12: #0070C1; + --dark-hl-12: #4FC1FF; --light-hl-13: #098658; --dark-hl-13: #B5CEA8; + --light-hl-14: #267F99; + --dark-hl-14: #4EC9B0; --light-code-background: #FFFFFF; --dark-code-background: #1E1E1E; } @@ -46,6 +48,7 @@ --hl-11: var(--light-hl-11); --hl-12: var(--light-hl-12); --hl-13: var(--light-hl-13); + --hl-14: var(--light-hl-14); --code-background: var(--light-code-background); } } @@ -64,6 +67,7 @@ --hl-11: var(--dark-hl-11); --hl-12: var(--dark-hl-12); --hl-13: var(--dark-hl-13); + --hl-14: var(--dark-hl-14); --code-background: var(--dark-code-background); } } @@ -82,6 +86,7 @@ --hl-11: var(--light-hl-11); --hl-12: var(--light-hl-12); --hl-13: var(--light-hl-13); + --hl-14: var(--light-hl-14); --code-background: var(--light-code-background); } @@ -100,6 +105,7 @@ --hl-11: var(--dark-hl-11); --hl-12: var(--dark-hl-12); --hl-13: var(--dark-hl-13); + --hl-14: var(--dark-hl-14); --code-background: var(--dark-code-background); } @@ -117,4 +123,5 @@ .hl-11 { color: var(--hl-11); } .hl-12 { color: var(--hl-12); } .hl-13 { color: var(--hl-13); } +.hl-14 { color: var(--hl-14); } pre, code { background: var(--code-background); } diff --git a/docs/functions/default.html b/docs/functions/default.html index 8fa6111..d04b5f2 100644 --- a/docs/functions/default.html +++ b/docs/functions/default.html @@ -1,4 +1,4 @@ default | @lopatnov/javascripttostring
                    @lopatnov/javascripttostring
                      Preparing search index...

                      Function default

                      • Converts JavaScript value to string

                        Parameters

                        • value: any

                          the value of any type

                        • Optionaloptions: IJ2SOptions

                          [optional] The options of conversion

                          -

                        Returns string

                      +

                      Returns string

                      diff --git a/docs/index.html b/docs/index.html index a4a427e..076f291 100644 --- a/docs/index.html +++ b/docs/index.html @@ -1,65 +1,228 @@ -@lopatnov/javascripttostring
                      @lopatnov/javascripttostring
                        Preparing search index...

                        @lopatnov/javascripttostring

                        JavaScriptToString Twitter

                        +@lopatnov/javascripttostring
                        @lopatnov/javascripttostring
                          Preparing search index...

                          @lopatnov/javascripttostring

                          @lopatnov/javascripttostring

                          npm NPM version License -GitHub issues -GitHub forks -GitHub stars -GitHub top language

                          -

                          Patreon -sobe.ru -LinkedIn

                          -

                          Build Status

                          -

                          JavaScript value to string runtime converter. It converts a runtime value into string a value.

                          - -

                          https://nodei.co/npm/@lopatnov/javascripttostring.png?downloads=true&downloadRank=true&stars=true

                          -
                          npm install @lopatnov/javascripttostring
                          +TypeScript
                          +GitHub stars

                          +

                          A TypeScript library that converts any JavaScript runtime value into its string source code representation. Supports objects, arrays, functions, circular references, cross-references, and more.

                          + +
                            +
                          • Full TypeScript support with type definitions
                          • +
                          • Multiple output formats: CommonJS, ES Modules, UMD
                          • +
                          • Handles circular references (self-referencing objects/arrays)
                          • +
                          • Handles cross-references (shared objects between branches)
                          • +
                          • Converts functions with their properties and prototypes
                          • +
                          • Supports built-in types: Date, RegExp, Error, Map, Set, TypedArrays, Symbols, BigInt
                          • +
                          • Configurable nesting depth for objects, arrays, and functions
                          • +
                          + +
                          npm install @lopatnov/javascripttostring
                           
                          -

                          Browser

                          -
                          <script src="//lopatnov.github.io/jsToString/dist/javascripttostring.umd.js"></script>
                          +
                          +
                          <!-- Development version -->
                          <script src="https://lopatnov.github.io/jsToString/dist/javascripttostring.umd.js"></script>
                          - - -
                          import javaScriptToString from '@lopatnov/javascripttostring';
                          +
                          +
                          +
                          import javaScriptToString from "@lopatnov/javascripttostring";
                           
                          - -
                          var javaScriptToString = require("@lopatnov/javascripttostring");
                          +
                          +
                          const javaScriptToString = require("@lopatnov/javascripttostring");
                           
                          - -
                          javaScriptToString(value: any, options?: IJ2SOptions) => string
                          +
                          +
                          const javaScriptToString = window.javaScriptToString;
                           
                          -

                          where

                          -
                          interface IJ2SOptions {
                          includeFunctionProperties?: boolean; // default true
                          includeFunctionPrototype?: boolean; // default true
                          includeBuffers?: boolean; // default true
                          nestedObjectsAmount?: number; // default Number.POSITIVE_INFINITY
                          nestedArraysAmount?: number; // default Number.POSITIVE_INFINITY
                          nestedFunctionsAmount?: number; // default Number.POSITIVE_INFINITY
                          } + + +

                          Converts a JavaScript value to its string source code representation.

                          + + + + + + + + + + + + + + + + + + + + +
                          ParameterTypeDescription
                          valueanyThe value to convert
                          optionsIJ2SOptionsOptional configuration
                          +

                          Returns: string - Source code representation that can be evaluated back to the original value

                          + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
                          OptionTypeDefaultDescription
                          includeFunctionPropertiesbooleantrueInclude function's own properties
                          includeFunctionPrototypebooleantrueInclude function's prototype properties
                          includeBuffersbooleantrueInclude ArrayBuffer and TypedArray contents
                          nestedObjectsAmountnumberInfinityMax depth for nested objects
                          nestedArraysAmountnumberInfinityMax depth for nested arrays
                          nestedFunctionsAmountnumberInfinityMax depth for nested functions
                          + + +
                          javaScriptToString("Hello world");   // '"Hello world"'
                          javaScriptToString(42); // '42'
                          javaScriptToString(true); // 'true'
                          javaScriptToString(undefined); // 'undefined'
                          javaScriptToString(null); // 'null'
                          - -
                          let myStringOfString = javaScriptToString('Hello world');
                          console.log(myStringOfString);
                          /* expected myStringOfString value: "\"Hello world\"" */ + +
                          javaScriptToString(["Hello", "World"]);
                          // '["Hello", "World"]'
                          -
                          let myStringOfArray = javaScriptToString(["Hello", "World", ".", "How", "do", "you", "do", "?"]);
                          console.log(myStringOfArray);
                          /* expected myStringOfArray value: "[\"Hello\",\"World\",\".\",\"How\",\"do\",\"you\",\"do\",\"?\"]" */ + +
                          javaScriptToString({
                          name: "Alex",
                          friends: ["Shurik", "Hola"],
                          greet: () => {
                          console.log("How you doing?");
                          }
                          });
                          // '{name: "Alex", friends: ["Shurik", "Hola"], greet: () => { console.log("How you doing?"); }}'
                          -
                          let myObjectString = javaScriptToString({
                          friend1: "Shurik",
                          friend2: "Alex",
                          friends: {
                          friend3: 123456,
                          friend4: {},
                          friend5: ["Hola", "amigo"],
                          friend6: () => {
                          console.log("How you doing?");
                          }
                          }
                          });

                          console.log(myObjectString);
                          /* expected myObjectString value:
                          "{friend1: \"Shurik\",friend2: \"Alex\",friends: {friend3: 123456,friend4: {},friend5: [\"Hola\",\"amigo\"],friend6: () => {
                          console.log(\"How you doing?\");
                          }}}"
                          */ + +
                          function Simple(title) {
                          this.title = title || "world";
                          }
                          Simple.count = 0;
                          Simple.prototype.show = function () {
                          Simple.count++;
                          console.log("title =", this.title);
                          };

                          javaScriptToString(Simple);
                          // '(function(){ var Simple = function Simple(title) { ... }; Simple.count = 0; Simple.prototype.show = function(){ ... }; return Simple; }())'
                          -
                          let myFunctionString = javaScriptToString(function(a,b) {
                          console.log("Just a function");
                          })

                          console.log(myFunctionString);
                          /* expected myFunctionString:
                          "function(a,b) {
                          console.log(\"Just a function\");
                          }"
                          */ + +

                          Objects that reference themselves are fully supported:

                          +
                          var x = [1, 2, 3];
                          x[0] = x;

                          javaScriptToString(x);
                          // '(function(){ var ___j2s_0 = [null, 2, 3]; ___j2s_0['0'] = ___j2s_0; return ___j2s_0; }())'
                          -
                          function Simple(title) {
                          this.title = title || "world";
                          }

                          Simple.count = 0;

                          Simple.prototype.show = function(){
                          Simple.count++;
                          console.log('title = ', this.title);
                          console.log('count = ', Simple.count);
                          }
                          console.log(javaScriptToString(Simple));

                          /* Expected:

                          "(function(){
                          var Simple = function Simple(title) {
                          this.title = title || \"world\";
                          };
                          Simple.count = 0;

                          Simple.prototype.show = function(){
                          Simple.count++;
                          console.log('title = ', this.title);
                          console.log('count = ', Simple.count);
                          };

                          return Simple;
                          }())"

                          */ + +

                          Objects shared between different branches are preserved as references:

                          +
                          var shared = { value: 42 };
                          var obj = { a: shared, b: shared };

                          javaScriptToString(obj);
                          // Generates code where obj.a === obj.b (same reference)
                          -
                          var x = [1,2,3];
                          x[0] = x;
                          console.log(javaScriptToString(x));

                          /*
                          "(function(){ var ___j2s_0 = [null, 2, 3]; ___j2s_0['0'] = ___j2s_0; return ___j2s_0; }())"
                          */ + +

                          The generated string can be evaluated back to a working JavaScript value:

                          +
                          var original = { name: "test" };
                          original.self = original;

                          var code = javaScriptToString(original);
                          var restored = Function("return " + code)();

                          console.log(restored.self === restored); // true
                          console.log(restored.name); // "test"
                          + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
                          TypeExample
                          Primitivesstring, number, boolean, undefined, null
                          BigIntBigInt(123)
                          SymbolSymbol("description")
                          RegExp/pattern/gi
                          Datenew Date()
                          Errornew Error("message")
                          Array[1, 2, 3]
                          Object{ key: "value" }
                          Functionfunction() {}, () => {}
                          Mapnew Map([["key", "value"]])
                          Setnew Set([1, 2, 3])
                          TypedArrayInt8Array, Float64Array, etc.
                          ArrayBuffernew ArrayBuffer(8)
                          DataViewnew DataView(buffer)
                          -

                          See, how it's working: https://runkit.com/lopatnov/javascripttostring-demo

                          -

                          Test it with a runkit: https://npm.runkit.com/%40lopatnov%2Fjavascripttostring

                          - -

                          License Apache-2.0

                          -

                          Copyright 2019–2021 Oleksandr Lopatnov

                          -
                          + + +

                          Contributions are welcome! Please see CONTRIBUTING.md for guidelines.

                          + +

                          Apache-2.0

                          +

                          Copyright 2019-2026 Oleksandr Lopatnov

                          +
                          + +

                          Oleksandr Lopatnov

                          +

                          LinkedIn +GitHub

                          +

                          If you find this project useful, please consider giving it a star on GitHub!

                          +
                          diff --git a/docs/interfaces/ij2soptions.html b/docs/interfaces/ij2soptions.html index 1123618..22d2dcd 100644 --- a/docs/interfaces/ij2soptions.html +++ b/docs/interfaces/ij2soptions.html @@ -1,7 +1,7 @@ -IJ2SOptions | @lopatnov/javascripttostring
                          @lopatnov/javascripttostring
                            Preparing search index...

                            Interface IJ2SOptions

                            interface IJ2SOptions {
                                includeBuffers?: boolean;
                                includeFunctionProperties?: boolean;
                                includeFunctionPrototype?: boolean;
                                nestedArraysAmount?: number;
                                nestedFunctionsAmount?: number;
                                nestedObjectsAmount?: number;
                            }
                            Index

                            Properties

                            includeBuffers? +IJ2SOptions | @lopatnov/javascripttostring
                            @lopatnov/javascripttostring
                              Preparing search index...

                              Interface IJ2SOptions

                              interface IJ2SOptions {
                                  includeBuffers?: boolean;
                                  includeFunctionProperties?: boolean;
                                  includeFunctionPrototype?: boolean;
                                  nestedArraysAmount?: number;
                                  nestedFunctionsAmount?: number;
                                  nestedObjectsAmount?: number;
                              }
                              Index

                              Properties

                              includeBuffers?: boolean
                              includeFunctionProperties?: boolean
                              includeFunctionPrototype?: boolean
                              nestedArraysAmount?: number
                              nestedFunctionsAmount?: number
                              nestedObjectsAmount?: number
                              +

                              Properties

                              includeBuffers?: boolean
                              includeFunctionProperties?: boolean
                              includeFunctionPrototype?: boolean
                              nestedArraysAmount?: number
                              nestedFunctionsAmount?: number
                              nestedObjectsAmount?: number
                              diff --git a/docs/media/CONTRIBUTING.md b/docs/media/CONTRIBUTING.md new file mode 100644 index 0000000..5bc65d3 --- /dev/null +++ b/docs/media/CONTRIBUTING.md @@ -0,0 +1,64 @@ +# Contributing + +Thanks for your interest in contributing to **@lopatnov/javascripttostring**! Contributions of all kinds are welcome. + +## Ways to Contribute + +- Report bugs and suggest features via [Issues](https://github.com/lopatnov/jsToString/issues) +- Fix bugs or implement new features via [Pull Requests](https://github.com/lopatnov/jsToString/pulls) +- Improve documentation +- Write or improve tests + +## Getting Started + +1. **Fork** the repository on GitHub + +2. **Clone** your fork: + + ```bash + git clone https://github.com//jsToString + cd jsToString + ``` + +3. **Install dependencies:** + + ```bash + npm install + ``` + +4. **Create a branch** for your changes: + + ```bash + git checkout -b my-feature + ``` + +5. **Make your changes**, then run tests and lint: + + ```bash + npm test + npm run check + ``` + +6. **Commit and push:** + + ```bash + git push -u origin my-feature + ``` + +7. **Open a Pull Request** targeting the `master` branch + +## Guidelines + +- Write or update tests for any code changes +- Ensure all tests pass before submitting +- Run `npm run check` (Biome) to verify code style +- Keep pull requests focused on a single change +- Write clear commit messages in present tense + +## Code of Conduct + +Please read our [Code of Conduct](CODE_OF_CONDUCT.md) before contributing. + +## Questions? + +Feel free to open an [issue](https://github.com/lopatnov/jsToString/issues) for any questions. diff --git a/docs/media/LICENSE b/docs/media/LICENSE new file mode 100644 index 0000000..f6f2ca9 --- /dev/null +++ b/docs/media/LICENSE @@ -0,0 +1,192 @@ + Apache License + Version 2.0, January 2004 + http://www.apache.org/licenses/ + + TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION + + 1. Definitions. + + "License" shall mean the terms and conditions for use, reproduction, + and distribution as defined by Sections 1 through 9 of this document. + + "Licensor" shall mean the copyright owner or entity authorized by + the copyright owner that is granting the License. + + "Legal Entity" shall mean the union of the acting entity and all + other entities that control, are controlled by, or are under common + control with that entity. For the purposes of this definition, + "control" means (i) the power, direct or indirect, to cause the + direction or management of such entity, whether by contract or + otherwise, or (ii) ownership of fifty percent (50%) or more of the + outstanding shares, or (iii) beneficial ownership of such entity. + + "You" (or "Your") shall mean an individual or Legal Entity + exercising permissions granted by this License. + + "Source" form shall mean the preferred form for making modifications, + including but not limited to software source code, documentation + source, and configuration files. + + "Object" form shall mean any form resulting from mechanical + transformation or translation of a Source form, including but + not limited to compiled object code, generated documentation, + and conversions to other media types. + + "Work" shall mean the work of authorship, whether in Source or + Object form, made available under the License, as indicated by a + copyright notice that is included in or attached to the work + (an example is provided in the Appendix below). + + "Derivative Works" shall mean any work, whether in Source or Object + form, that is based on (or derived from) the Work and for which the + editorial revisions, annotations, elaborations, or other modifications + represent, as a whole, an original work of authorship. For the purposes + of this License, Derivative Works shall not include works that remain + separable from, or merely link (or bind by name) to the interfaces of, + the Work and Derivative Works thereof. + + "Contribution" shall mean any work of authorship, including + the original version of the Work and any modifications or additions + to that Work or Derivative Works thereof, that is intentionally + submitted to Licensor for inclusion in the Work by the copyright owner + or by an individual or Legal Entity authorized to submit on behalf of + the copyright owner. For the purposes of this definition, "submitted" + means any form of electronic, verbal, or written communication sent + to the Licensor or its representatives, including but not limited to + communication on electronic mailing lists, source code control systems, + and issue tracking systems that are managed by, or on behalf of, the + Licensor for the purpose of discussing and improving the Work, but + excluding communication that is conspicuously marked or otherwise + designated in writing by the copyright owner as "Not a Contribution." + + "Contributor" shall mean Licensor and any individual or Legal Entity + on behalf of whom a Contribution has been received by Licensor and + subsequently incorporated within the Work. + + 2. Grant of Copyright License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + copyright license to reproduce, prepare Derivative Works of, + publicly display, publicly perform, sublicense, and distribute the + Work and such Derivative Works in Source or Object form. + + 3. Grant of Patent License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + (except as stated in this section) patent license to make, have made, + use, offer to sell, sell, import, and otherwise transfer the Work, + where such license applies only to those patent claims licensable + by such Contributor that are necessarily infringed by their + Contribution(s) alone or by combination of their Contribution(s) + with the Work to which such Contribution(s) was submitted. If You + institute patent litigation against any entity (including a + cross-claim or counterclaim in a lawsuit) alleging that the Work + or a Contribution incorporated within the Work constitutes direct + or contributory patent infringement, then any patent licenses + granted to You under this License for that Work shall terminate + as of the date such litigation is filed. + + 4. Redistribution. You may reproduce and distribute copies of the + Work or Derivative Works thereof in any medium, with or without + modifications, and in Source or Object form, provided that You + meet the following conditions: + + (a) You must give any other recipients of the Work or + Derivative Works a copy of this License; and + + (b) You must cause any modified files to carry prominent notices + stating that You changed the files; and + + (c) You must retain, in the Source form of any Derivative Works + that You distribute, all copyright, patent, trademark, and + attribution notices from the Source form of the Work, + excluding those notices that do not pertain to any part of + the Derivative Works; and + + (d) If the Work includes a "NOTICE" text file as part of its + distribution, then any Derivative Works that You distribute must + include a readable copy of the attribution notices contained + within such NOTICE file, excluding those notices that do not + pertain to any part of the Derivative Works, in at least one + of the following places: within a NOTICE text file distributed + as part of the Derivative Works; within the Source form or + documentation, if provided along with the Derivative Works; or, + within a display generated by the Derivative Works, if and + wherever such third-party notices normally appear. The contents + of the NOTICE file are for informational purposes only and + do not modify the License. You may add Your own attribution + notices within Derivative Works that You distribute, alongside + or as an addendum to the NOTICE text from the Work, provided + that such additional attribution notices cannot be construed + as modifying the License. + + You may add Your own copyright statement to Your modifications and + may provide additional or different license terms and conditions + for use, reproduction, or distribution of Your modifications, or + for any such Derivative Works as a whole, provided Your use, + reproduction, and distribution of the Work otherwise complies with + the conditions stated in this License. + + 5. Submission of Contributions. Unless You explicitly state otherwise, + any Contribution intentionally submitted for inclusion in the Work + by You to the Licensor shall be under the terms and conditions of + this License, without any additional terms or conditions. + Notwithstanding the above, nothing herein shall supersede or modify + the terms of any separate license agreement you may have executed + with Licensor regarding such Contributions. + + 6. Trademarks. This License does not grant permission to use the trade + names, trademarks, service marks, or product names of the Licensor, + except as required for reasonable and customary use in describing the + origin of the Work and reproducing the content of the NOTICE file. + + 7. Disclaimer of Warranty. Unless required by applicable law or + agreed to in writing, Licensor provides the Work (and each + Contributor provides its Contributions) on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or + implied, including, without limitation, any warranties or conditions + of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A + PARTICULAR PURPOSE. You are solely responsible for determining the + appropriateness of using or redistributing the Work and assume any + risks associated with Your exercise of permissions under this License. + + 8. Limitation of Liability. In no event and under no legal theory, + whether in tort (including negligence), contract, or otherwise, + unless required by applicable law (such as deliberate and grossly + negligent acts) or agreed to in writing, shall any Contributor be + liable to You for damages, including any direct, indirect, special, + incidental, or consequential damages of any character arising as a + result of this License or out of the use or inability to use the + Work (including but not limited to damages for loss of goodwill, + work stoppage, computer failure or malfunction, or any and all + other commercial damages or losses), even if such Contributor + has been advised of the possibility of such damages. + + 9. Accepting Warranty or Additional Liability. While redistributing + the Work or Derivative Works thereof, You may choose to offer, + and charge a fee for, acceptance of support, warranty, indemnity, + or other liability obligations and/or rights consistent with this + License. However, in accepting such obligations, You may act only + on Your own behalf and on Your sole responsibility, not on behalf + of any other Contributor, and only if You agree to indemnify, + defend, and hold each Contributor harmless for any liability + incurred by, or claims asserted against, such Contributor by reason + of your accepting any such warranty or additional liability. + + END OF TERMS AND CONDITIONS + + APPENDIX: + + Copyright 2019–2021 Oleksandr Lopatnov + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. diff --git a/package.json b/package.json index 6143d82..e20cdf9 100644 --- a/package.json +++ b/package.json @@ -49,7 +49,8 @@ "lint:fix": "biome lint --write src test", "format": "biome format --write src test", "format:check": "biome format src test", - "check": "biome check src test" + "check": "biome check src test", + "docs": "typedoc --out docs --entryPointStrategy expand src" }, "devDependencies": { "@biomejs/biome": "^2.3.14", From 062291f0ef2b78618e5aa668d86b204d9fe73743 Mon Sep 17 00:00:00 2001 From: lopatnov Date: Thu, 12 Feb 2026 18:31:33 +0200 Subject: [PATCH 05/18] Docs update --- docs/functions/default.html | 2 +- docs/interfaces/ij2soptions.html | 4 ++-- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/docs/functions/default.html b/docs/functions/default.html index d04b5f2..d4a6e51 100644 --- a/docs/functions/default.html +++ b/docs/functions/default.html @@ -1,4 +1,4 @@ default | @lopatnov/javascripttostring
                              @lopatnov/javascripttostring
                                Preparing search index...

                                Function default

                                • Converts JavaScript value to string

                                  Parameters

                                  • value: any

                                    the value of any type

                                  • Optionaloptions: IJ2SOptions

                                    [optional] The options of conversion

                                    -

                                  Returns string

                                +

                                Returns string

                                diff --git a/docs/interfaces/ij2soptions.html b/docs/interfaces/ij2soptions.html index 22d2dcd..c74a043 100644 --- a/docs/interfaces/ij2soptions.html +++ b/docs/interfaces/ij2soptions.html @@ -1,7 +1,7 @@ -IJ2SOptions | @lopatnov/javascripttostring
                                @lopatnov/javascripttostring
                                  Preparing search index...

                                  Interface IJ2SOptions

                                  interface IJ2SOptions {
                                      includeBuffers?: boolean;
                                      includeFunctionProperties?: boolean;
                                      includeFunctionPrototype?: boolean;
                                      nestedArraysAmount?: number;
                                      nestedFunctionsAmount?: number;
                                      nestedObjectsAmount?: number;
                                  }
                                  Index

                                  Properties

                                  includeBuffers? +IJ2SOptions | @lopatnov/javascripttostring
                                  @lopatnov/javascripttostring
                                    Preparing search index...

                                    Interface IJ2SOptions

                                    interface IJ2SOptions {
                                        includeBuffers?: boolean;
                                        includeFunctionProperties?: boolean;
                                        includeFunctionPrototype?: boolean;
                                        nestedArraysAmount?: number;
                                        nestedFunctionsAmount?: number;
                                        nestedObjectsAmount?: number;
                                    }
                                    Index

                                    Properties

                                    includeBuffers?: boolean
                                    includeFunctionProperties?: boolean
                                    includeFunctionPrototype?: boolean
                                    nestedArraysAmount?: number
                                    nestedFunctionsAmount?: number
                                    nestedObjectsAmount?: number
                                    +

                                    Properties

                                    includeBuffers?: boolean
                                    includeFunctionProperties?: boolean
                                    includeFunctionPrototype?: boolean
                                    nestedArraysAmount?: number
                                    nestedFunctionsAmount?: number
                                    nestedObjectsAmount?: number
                                    From 8f10bc60fbf724f8a6bbc20e6fd8d5baa64c2975 Mon Sep 17 00:00:00 2001 From: lopatnov Date: Thu, 12 Feb 2026 19:45:12 +0200 Subject: [PATCH 06/18] minor updates --- .github/FUNDING.yml | 3 --- CHANGELOG.md | 2 +- README.md | 22 ++++++++++------------ SECURITY.md | 7 ++----- package-lock.json | 4 ++-- package.json | 2 +- 6 files changed, 16 insertions(+), 24 deletions(-) delete mode 100644 .github/FUNDING.yml diff --git a/.github/FUNDING.yml b/.github/FUNDING.yml deleted file mode 100644 index 23762fc..0000000 --- a/.github/FUNDING.yml +++ /dev/null @@ -1,3 +0,0 @@ -# These are supported funding model platforms - -patreon: # Replace with a single Patreon username diff --git a/CHANGELOG.md b/CHANGELOG.md index 36606cd..c3e7747 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -2,7 +2,7 @@ All notable changes to this project will be documented in this file. -## [Unreleased] +## [2.0.0] ### Added diff --git a/README.md b/README.md index 89ebe96..1c98bc9 100644 --- a/README.md +++ b/README.md @@ -8,16 +8,6 @@ A TypeScript library that converts any JavaScript runtime value into its string source code representation. Supports objects, arrays, functions, circular references, cross-references, and more. -## Features - -- Full TypeScript support with type definitions -- Multiple output formats: CommonJS, ES Modules, UMD -- Handles circular references (self-referencing objects/arrays) -- Handles cross-references (shared objects between branches) -- Converts functions with their properties and prototypes -- Supports built-in types: Date, RegExp, Error, Map, Set, TypedArrays, Symbols, BigInt -- Configurable nesting depth for objects, arrays, and functions - ## Installation ```bash @@ -144,7 +134,13 @@ var shared = { value: 42 }; var obj = { a: shared, b: shared }; javaScriptToString(obj); -// Generates code where obj.a === obj.b (same reference) +// Generates code where obj.a === obj.b (same reference), like: +// (function(){ var ___j2s_0 = { +// a: { +// value: 42 +// }, +// b: null +// }; ___j2s_0['b'] = ___j2s_0['a']; return ___j2s_0; }()) ``` ### Restoring Values @@ -181,9 +177,11 @@ console.log(restored.name); // "test" | ArrayBuffer | `new ArrayBuffer(8)` | | DataView | `new DataView(buffer)` | -## Demo +## Links - **Live Demo:** [https://runkit.com/lopatnov/javascripttostring-demo](https://runkit.com/lopatnov/javascripttostring-demo) +- **Demo** [./demo/index.html](./demo/index.html) +- **Generated Docs** [./docs/index.html](./docs/index.html) - **Try it:** [https://npm.runkit.com/@lopatnov/javascripttostring](https://npm.runkit.com/%40lopatnov%2Fjavascripttostring) ## Contributing diff --git a/SECURITY.md b/SECURITY.md index 6c464ec..bbb000d 100644 --- a/SECURITY.md +++ b/SECURITY.md @@ -4,7 +4,8 @@ | Version | Supported | | ------- | ------------------ | -| 1.x.x | :white_check_mark: | +| 1.x.x | :white_large_square: | +| 2.x.x | :white_check_mark: | ## Reporting a Vulnerability @@ -13,7 +14,3 @@ If you discover a security vulnerability, please report it responsibly: 1. Go to [GitHub Issues](https://github.com/lopatnov/jsToString/issues) 2. Create a **New issue** 3. Describe the vulnerability with as much detail as possible, including steps to reproduce - -We will review the report and respond as soon as possible. - -**Please do not open a public issue if the vulnerability is critical.** Instead, contact the maintainer directly via [LinkedIn](https://www.linkedin.com/in/lopatnov/). diff --git a/package-lock.json b/package-lock.json index d511ad7..9835071 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,12 +1,12 @@ { "name": "@lopatnov/javascripttostring", - "version": "1.7.3", + "version": "2.0.0", "lockfileVersion": 3, "requires": true, "packages": { "": { "name": "@lopatnov/javascripttostring", - "version": "1.7.3", + "version": "2.0.0", "license": "Apache-2.0", "dependencies": { "@lopatnov/get-internal-type": "^1.5.7" diff --git a/package.json b/package.json index e20cdf9..3daa77b 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "@lopatnov/javascripttostring", - "version": "1.7.3", + "version": "2.0.0", "license": "Apache-2.0", "author": "lopatnov", "description": "A TypeScript library that converts any JavaScript runtime value into its string source code representation, including objects, arrays, functions, circular references, and cross-references", From 44cda1d72baddc4c8c52bf8c74c484a9d70f71f0 Mon Sep 17 00:00:00 2001 From: lopatnov Date: Fri, 13 Feb 2026 02:33:25 +0200 Subject: [PATCH 07/18] minor update --- README.md | 58 +- demo/app.js | 33 +- demo/index.html | 51 ++ demo/style.css | 84 +++ dist/javascripttostring.es5.js | 4 +- dist/javascripttostring.es5.js.map | 2 +- dist/javascripttostring.min.es5.js | 6 - dist/javascripttostring.min.es5.js.map | 1 - dist/javascripttostring.min.umd.js | 14 - dist/javascripttostring.min.umd.js.map | 1 - dist/javascripttostring.umd.js | 4 +- dist/javascripttostring.umd.js.map | 2 +- dist/lib/javascripttostring.js | 443 +------------ dist/lib/javascripttostring.js.map | 2 +- docs/functions/default.html | 2 +- docs/index.html | 80 ++- docs/interfaces/ij2soptions.html | 4 +- docs/media/CHANGELOG.md | 68 ++ docs/media/index-1.html | 276 ++++++++ docs/media/index.html | 127 ++++ package.json | 13 +- rollup.config.ts | 8 +- src/javascripttostring.ts | 2 +- test/javascripttostring.test.js | 829 +++++++++++++++++++++++++ test/javascripttostring.test.ts | 6 +- tsconfig.json | 12 +- 26 files changed, 1628 insertions(+), 504 deletions(-) delete mode 100644 dist/javascripttostring.min.es5.js delete mode 100644 dist/javascripttostring.min.es5.js.map delete mode 100644 dist/javascripttostring.min.umd.js delete mode 100644 dist/javascripttostring.min.umd.js.map create mode 100644 docs/media/CHANGELOG.md create mode 100644 docs/media/index-1.html create mode 100644 docs/media/index.html create mode 100644 test/javascripttostring.test.js diff --git a/README.md b/README.md index 1c98bc9..8019495 100644 --- a/README.md +++ b/README.md @@ -143,6 +143,38 @@ javaScriptToString(obj); // }; ___j2s_0['b'] = ___j2s_0['a']; return ___j2s_0; }()) ``` +### Using with Web Workers + +Combine with [@lopatnov/worker-from-string](https://www.npmjs.com/package/@lopatnov/worker-from-string) to serialize functions and data for execution in a Web Worker: + +```typescript +import javaScriptToString from "@lopatnov/javascripttostring"; +import workerFromString from "@lopatnov/worker-from-string"; + +// Define a computation function +const fibonacci = function(n) { + if (n <= 1) return n; + let a = 0, b = 1; + for (let i = 2; i <= n; i++) { + [a, b] = [b, a + b]; + } + return b; +}; + +// Serialize and send to a worker +const fnString = javaScriptToString(fibonacci); + +const worker = workerFromString(` + const fibonacci = ${fnString}; + self.onmessage = function(e) { + postMessage({ input: e.data, result: fibonacci(e.data) }); + }; +`); + +worker.onmessage = (e) => console.log(e.data); // { input: 40, result: 102334155 } +worker.postMessage(40); +``` + ### Restoring Values The generated string can be evaluated back to a working JavaScript value: @@ -177,12 +209,28 @@ console.log(restored.name); // "test" | ArrayBuffer | `new ArrayBuffer(8)` | | DataView | `new DataView(buffer)` | -## Links +## Demo + +Try the library interactively: + +| | Link | +|---|---| +| Interactive Demo | [demo/index.html](./demo/index.html) | +| RunKit Playground | [runkit.com](https://npm.runkit.com/%40lopatnov%2Fjavascripttostring) | + +## Documentation + +| | Link | +|---|---| +| API Reference | [docs/index.html](./docs/index.html) | +| Changelog | [CHANGELOG.md](./CHANGELOG.md) | + +## Related Packages -- **Live Demo:** [https://runkit.com/lopatnov/javascripttostring-demo](https://runkit.com/lopatnov/javascripttostring-demo) -- **Demo** [./demo/index.html](./demo/index.html) -- **Generated Docs** [./docs/index.html](./docs/index.html) -- **Try it:** [https://npm.runkit.com/@lopatnov/javascripttostring](https://npm.runkit.com/%40lopatnov%2Fjavascripttostring) +| Package | Description | +|---|---| +| [@lopatnov/worker-from-string](https://www.npmjs.com/package/@lopatnov/worker-from-string) | Create Web Workers from strings — pairs well with `javaScriptToString` | +| [@lopatnov/get-internal-type](https://www.npmjs.com/package/@lopatnov/get-internal-type) | Runtime type detection used internally by this library | ## Contributing diff --git a/demo/app.js b/demo/app.js index 61ebd53..a29cf91 100644 --- a/demo/app.js +++ b/demo/app.js @@ -7,6 +7,12 @@ var verifyBadge = document.getElementById("verify-badge"); var copyInputBtn = document.getElementById("copy-input-btn"); var copyOutputBtn = document.getElementById("copy-output-btn"); var examplesEl = document.getElementById("examples"); +var optFuncProps = document.getElementById("opt-func-props"); +var optFuncProto = document.getElementById("opt-func-proto"); +var optBuffers = document.getElementById("opt-buffers"); +var optNestedObjects = document.getElementById("opt-nested-objects"); +var optNestedArrays = document.getElementById("opt-nested-arrays"); +var optNestedFunctions = document.getElementById("opt-nested-functions"); var examples = { "simple-object": 'return {\n name: "Alex",\n age: 30,\n active: true\n};', @@ -36,6 +42,31 @@ examplesEl.addEventListener("change", function () { } }); +function getOptions() { + var opts = {}; + opts.includeFunctionProperties = optFuncProps.checked; + opts.includeFunctionPrototype = optFuncProto.checked; + opts.includeBuffers = optBuffers.checked; + var no = optNestedObjects.value; + if (no !== "") opts.nestedObjectsAmount = parseInt(no, 10); + var na = optNestedArrays.value; + if (na !== "") opts.nestedArraysAmount = parseInt(na, 10); + var nf = optNestedFunctions.value; + if (nf !== "") opts.nestedFunctionsAmount = parseInt(nf, 10); + return opts; +} + +function resetOptions() { + optFuncProps.checked = true; + optFuncProto.checked = true; + optBuffers.checked = true; + optNestedObjects.value = ""; + optNestedArrays.value = ""; + optNestedFunctions.value = ""; +} + +document.getElementById("reset-options-btn").addEventListener("click", resetOptions); + document.getElementById("run-btn").addEventListener("click", run); document.getElementById("clear-btn").addEventListener("click", function () { inputEl.value = ""; @@ -102,7 +133,7 @@ function run() { var str; try { - str = javaScriptToString(value); + str = javaScriptToString(value, getOptions()); } catch (err) { showOutput("javaScriptToString error:\n" + err.message, true); showVerify("", true, "Skipped — conversion error"); diff --git a/demo/index.html b/demo/index.html index 259ba04..f9fa2ca 100644 --- a/demo/index.html +++ b/demo/index.html @@ -35,6 +35,57 @@

                                    javaScriptToString — Live Demo

                                    +
                                    +
                                    + Options — IJ2SOptions + +
                                    +
                                    + + + +
                                    +
                                    + + Max depth for nested objects +
                                    + +
                                    +
                                    +
                                    + + Max depth for nested arrays +
                                    + +
                                    +
                                    +
                                    + + Max depth for nested functions +
                                    + +
                                    +
                                    +
                                    +
                                    diff --git a/demo/style.css b/demo/style.css index 4610156..484c75a 100644 --- a/demo/style.css +++ b/demo/style.css @@ -192,6 +192,88 @@ button { .panel-output { margin-top: 1.5rem; } +.panel-options { margin-bottom: 1rem; } + +.options-grid { + display: grid; + grid-template-columns: 1fr 1fr; + gap: 0; +} + +.option-item { + display: flex; + align-items: center; + gap: 0.75rem; + padding: 0.65rem 1.25rem; + cursor: pointer; + transition: background 0.1s ease; + border-bottom: 1px solid #1e293b; + border-right: 1px solid #1e293b; +} +.option-item:hover { background: #1a2536; } + +.option-item input[type="checkbox"] { + width: 16px; + height: 16px; + accent-color: #2563eb; + cursor: pointer; + flex-shrink: 0; +} + +.option-info { + display: flex; + flex-direction: column; + gap: 0.15rem; + min-width: 0; +} + +.option-name { + font-family: "JetBrains Mono", "Fira Code", "Cascadia Code", Consolas, monospace; + font-size: 0.78rem; + color: #e2e8f0; + font-weight: 500; +} + +.option-desc { + font-size: 0.7rem; + color: #64748b; +} + +.option-number { + cursor: default; +} + +.option-number input[type="number"] { + width: 80px; + padding: 0.3rem 0.5rem; + border-radius: 5px; + border: 1px solid #475569; + background: #0f172a; + color: #e2e8f0; + font-family: "JetBrains Mono", "Fira Code", "Cascadia Code", Consolas, monospace; + font-size: 0.8rem; + outline: none; + text-align: center; + flex-shrink: 0; +} +.option-number input[type="number"]:focus { border-color: #2563eb; } +.option-number input[type="number"]::placeholder { color: #475569; font-style: italic; } + +.btn-reset { + padding: 0.25rem 0.6rem; + border-radius: 5px; + border: 1px solid #475569; + background: #1e293b; + color: #94a3b8; + font-size: 0.7rem; + font-weight: 600; + cursor: pointer; + transition: all 0.15s ease; + text-transform: uppercase; + letter-spacing: 0.03em; +} +.btn-reset:hover { background: #334155; color: #e2e8f0; border-color: #64748b; } + .hidden { display: none; } footer { @@ -213,4 +295,6 @@ footer a:hover { text-decoration: underline; } textarea { min-height: 180px; font-size: 0.8rem; } .actions { flex-direction: column; } button, .examples-dropdown select { width: 100%; } + .options-grid { grid-template-columns: 1fr; } + .option-item { border-right: none; } } diff --git a/dist/javascripttostring.es5.js b/dist/javascripttostring.es5.js index 72b3d97..e3d9a9b 100644 --- a/dist/javascripttostring.es5.js +++ b/dist/javascripttostring.es5.js @@ -1,8 +1,6 @@ -function __spreadArray(e,t,r){if(r||2===arguments.length)for(var n,o=0,a=t.length;o0){counter=counter++%Number.MAX_SAFE_INTEGER;var n="___j2s_".concat(counter),r=e.reduce(function(e,t){var r=converToAction(n,t);return refs.splice(refs.indexOf(t),1),e+r},"");return "(function(){ var ".concat(n," = ").concat(t,"; ").concat(r," return ").concat(n,"; }())")}return t}function converToAction(e,t){var n=t.historyRef.indexOf(t.source);if(n<0)return "";for(var r,c=t.historyRef.slice(n),o="",a=0;a-1&&a.length<100)for(var i in nativeFunctions)nativeFunctions[i]===e&&(a=i);return c||o?attachActions(getLocalRefs(e),"(function(){\n var ".concat(r," = ").concat(String(a),";\n ").concat(c,"\n ").concat(o,"\n return ").concat(r,";\n}())")):a}function arrayBufferToString(e,t,n){if(!t.includeBuffers)return "undefined";var r=typedArrayToString(new Int8Array(e),t,n);return "(".concat(r,").buffer")}function dataViewToString(e,t,n){if(!t.includeBuffers)return "undefined";var r=arrayBufferToString(e.buffer,t,n);return "new DataView(".concat(r,", ").concat(e.byteOffset,", ").concat(e.byteLength,")")}function stringify(e,t,n){switch(getInternalType(e)){case "undefined":case "promise":case "generator":return "undefined";case "null":return "null";case "boolean":case "regexp":return String(e);case "string":default:return JSON.stringify(e);case "number":return numberToString(e);case "bigint":return "BigInt(".concat(e,")");case "symbol":return symbolToString(e);case "date":return dateToString(e);case "error":return errorToString(e);case "array":return arrayToString(e,t,n);case "typedarray":return typedArrayToString(e,t,n);case "set":return setToString(e,t,n);case "map":return mapToString(e,t,n);case "object":return objectToString(e,t,n);case "function":case "generatorfunction":return functionToString(e,t,n);case "arraybuffer":return arrayBufferToString(e,t,n);case "dataview":return dataViewToString(e,t,n)}}function stringifyRef(e,t,n){var r="object"==typeof e&&null!==e||"function"==typeof e,c=n.references.indexOf(e);if(r&&n.visited.has(e)&&c<0)return crossRefs.push({destPath:__spreadArray([],n.currentPath,true),sourcePath:n.visited.get(e)||[]}),"null";if(c<0||"string"==typeof n.references[c]){var o=getInternalType(e),a=n.references.length;switch(r&&!n.visited.has(e)&&n.visited.set(e,__spreadArray([],n.currentPath,true)),n.references.push(e),o){case "object":if(n.nestedObjectsLeft<=0)return "undefined";n.nestedObjectsLeft--;break;case "array":case "typedarray":if(n.nestedArraysLeft<=0)return "undefined";n.nestedArraysLeft--;break;case "function":case "generatorfunction":if(n.nestedFunctionsLeft<=0)return "undefined";n.nestedFunctionsLeft--;}var i=stringify(e,t,n);switch(n.references.splice(a),o){case "object":n.nestedObjectsLeft++;break;case "array":case "typedarray":n.nestedArraysLeft++;break;case "function":case "generatorfunction":n.nestedFunctionsLeft++;}return i}return refs.push({historyRef:n.references.slice(0),source:e}),"null"}function attachCrossRefActions(e,t){if(0===e.length)return t;counter=counter++%Number.MAX_SAFE_INTEGER;var n="___j2s_".concat(counter),r=e.map(function(e){var t=e.destPath.map(function(e){return "['".concat(e.replace(/'/gi,"\\'"),"']")}).join(""),r=e.sourcePath.map(function(e){return "['".concat(e.replace(/'/gi,"\\'"),"']")}).join("");return "".concat(n).concat(t," = ").concat(n).concat(r,"; ")}).join("");return "(function(){ var ".concat(n," = ").concat(t,"; ").concat(r,"return ").concat(n,"; }())")}function javaScriptToString(e,t){var n={includeFunctionProperties:void 0===(t=t||{}).includeFunctionProperties||t.includeFunctionProperties,includeFunctionPrototype:void 0===t.includeFunctionPrototype||t.includeFunctionPrototype,includeBuffers:void 0===t.includeBuffers||t.includeBuffers,nestedObjectsAmount:void 0===t.nestedObjectsAmount?Number.POSITIVE_INFINITY:t.nestedObjectsAmount,nestedArraysAmount:void 0===t.nestedArraysAmount?Number.POSITIVE_INFINITY:t.nestedArraysAmount,nestedFunctionsAmount:void 0===t.nestedFunctionsAmount?Number.POSITIVE_INFINITY:t.nestedFunctionsAmount};refs=[],crossRefs=[],counter=0;var r=new Map;r.set(e,[]);var c=stringify(e,n,{references:[e],nestedObjectsLeft:n.nestedObjectsAmount,nestedArraysLeft:n.nestedArraysAmount,nestedFunctionsLeft:n.nestedFunctionsAmount,visited:r,currentPath:[]}),o=attachActions(getLocalRefs(e),c);return attachCrossRefActions(crossRefs,o)} +var refs=[],crossRefs=[],counter=0;function fillNativeFunctions(e,t,n,r=true){const o=Object.getOwnPropertyNames(r?t.prototype:t),s=r?".prototype.":".";for(const i of o)["caller","callee","arguments"].indexOf(i)<0&&(e[`${n}${s}${i}`]=r?t.prototype[i]:t[i]);}const nativeFunctions=(()=>{const e={};return fillNativeFunctions(e,Array,"Array",false),fillNativeFunctions(e,Array,"Array"),fillNativeFunctions(e,JSON,"JSON",false),fillNativeFunctions(e,Object,"Object",false),fillNativeFunctions(e,Object,"Object"),fillNativeFunctions(e,Function,"Function",false),fillNativeFunctions(e,Function,"Function"),fillNativeFunctions(e,Date,"Date",false),fillNativeFunctions(e,String,"String"),e.Function=Function,e})();function numberToString(e){if(Number.isNaN(e))return "Number.NaN";switch(e){case Number.POSITIVE_INFINITY:return "Number.POSITIVE_INFINITY";case Number.NEGATIVE_INFINITY:return "Number.NEGATIVE_INFINITY";case Number.EPSILON:return "Number.EPSILON";case Number.MAX_SAFE_INTEGER:return "Number.MAX_SAFE_INTEGER";case Number.MIN_SAFE_INTEGER:return "Number.MIN_SAFE_INTEGER";case Number.MAX_VALUE:return "Number.MAX_VALUE";case Number.MIN_VALUE:return "Number.MIN_VALUE";case Math.PI:return "Math.PI";case Math.E:return "Math.E";case Math.LN10:return "Math.LN10";case Math.LN2:return "Math.LN2";case Math.LOG10E:return "Math.LOG10E";case Math.LOG2E:return "Math.LOG2E";case Math.SQRT1_2:return "Math.SQRT1_2";case Math.SQRT2:return "Math.SQRT2";default:return String(e)}}function symbolToString(e){switch(e){case Symbol.asyncIterator:case Symbol.hasInstance:case Symbol.isConcatSpreadable:case Symbol.iterator:case Symbol.match:case Symbol.prototype:case Symbol.replace:case Symbol.search:case Symbol.species:case Symbol.split:case Symbol.toPrimitive:case Symbol.toStringTag:case Symbol.unscopables:return e.description;default:return `Symbol(${e.description?`"${e.description}"`:""})`}}function dateToString(e){return isNaN(e.getTime())?`new Date(${e.toString()})`:`new Date(${e.toISOString()})`}function errorToString(e){return `new Error(${JSON.stringify(e.message)}, ${JSON.stringify(e.fileName)}, ${JSON.stringify(e.lineNumber)})`}function arrayToString(e,t,n){if(0===e.length)return "[]";const r=e.reduce((e,r,o)=>{const s=o.toString();n.references.push(s),n.currentPath.push(s);let i=e?`${e}, `:"";return i+=stringifyRef(r,t,n),n.currentPath.pop(),n.references.pop(),i},"");return attachActions(getLocalRefs(e),`[${r}]`)}function getLocalRefs(e){return refs.filter(t=>t.source===e)}function attachActions(e,t){if(e.length>0){const n=`___j2s_${counter=counter++%Number.MAX_SAFE_INTEGER}`,r=e.reduce((e,t)=>{const r=converToAction(n,t);return refs.splice(refs.indexOf(t),1),e+r},"");return `(function(){ var ${n} = ${t}; ${r} return ${n}; }())`}return t}function converToAction(e,t){const n=t.historyRef.indexOf(t.source);if(n<0)return "";const r=t.historyRef.slice(n);let o,s="";for(let n=0;n{r.push(stringifyRef(o,t,n));}),0===r.length?"new Set()":`new Set([${r.join(", ")}])`}function mapToString(e,t,n){const r=[];return e.forEach((e,o)=>{r.push(`[${stringifyRef(o,t,n)}, ${stringifyRef(e,t,n)}]`);}),0===r.length?"new Map()":`new Map([${r.join(", ")}])`}function objectToString(e,t,n){const r=[];for(let o in e)if(e.hasOwnProperty(o)){n.references.push(o),n.currentPath.push(o);const s=stringifyRef(e[o],t,n);n.currentPath.pop(),n.references.pop(),"undefined"!==s&&(/^[a-zA-Z]+$/.test(o)||(o=`"${o}"`),r.push(`${o}: ${s}`));}return 0===r.length?"{}":attachActions(getLocalRefs(e),`{\n${r.join(",\n")}\n}`)}function functionPropertiesToString(e,t,n,r){let o="";for(const s in t)if(t.hasOwnProperty(s)){r.references.push(s),r.currentPath.push(s);const i=stringifyRef(t[s],n,r);r.currentPath.pop(),r.references.pop(),"undefined"!==i&&(o+=`${e}.${s} = ${i};\n`);}return o}function functionToString(e,t,n){const r=e.name||"anonymousFunction",o=t.includeFunctionProperties?functionPropertiesToString(r,e,t,n):"";n.references.push("prototype"),n.currentPath.push("prototype");const s=t.includeFunctionPrototype?functionPropertiesToString(`${r}.prototype`,e.prototype,t,n):"";n.currentPath.pop(),n.references.pop();let i=String(e);if(i.indexOf("[native code]")>-1&&i.length<100)for(const t in nativeFunctions)nativeFunctions[t]===e&&(i=t);return o||s?attachActions(getLocalRefs(e),`(function(){\n var ${r} = ${String(i)};\n ${o}\n ${s}\n return ${r};\n}())`):i}function arrayBufferToString(e,t,n){if(!t.includeBuffers)return "undefined";return `(${typedArrayToString(new Int8Array(e),t,n)}).buffer`}function dataViewToString(e,t,n){if(!t.includeBuffers)return "undefined";return `new DataView(${arrayBufferToString(e.buffer,t,n)}, ${e.byteOffset}, ${e.byteLength})`}function stringify(e,t,n){switch(getInternalType(e)){case "undefined":case "promise":case "generator":return "undefined";case "null":return "null";case "boolean":case "regexp":return String(e);case "string":default:return JSON.stringify(e);case "number":return numberToString(e);case "bigint":return `BigInt(${e})`;case "symbol":return symbolToString(e);case "date":return dateToString(e);case "error":return errorToString(e);case "array":return arrayToString(e,t,n);case "typedarray":return typedArrayToString(e,t,n);case "set":return setToString(e,t,n);case "map":return mapToString(e,t,n);case "object":return objectToString(e,t,n);case "function":case "generatorfunction":return functionToString(e,t,n);case "arraybuffer":return arrayBufferToString(e,t,n);case "dataview":return dataViewToString(e,t,n)}}function stringifyRef(e,t,n){const r="object"==typeof e&&null!==e||"function"==typeof e,o=n.references.indexOf(e);if(r&&n.visited.has(e)&&o<0)return crossRefs.push({destPath:[...n.currentPath],sourcePath:n.visited.get(e)||[]}),"null";if(o<0||"string"==typeof n.references[o]){const o=getInternalType(e),s=n.references.length;switch(r&&!n.visited.has(e)&&n.visited.set(e,[...n.currentPath]),n.references.push(e),o){case "object":if(n.nestedObjectsLeft<=0)return "undefined";n.nestedObjectsLeft--;break;case "array":case "typedarray":if(n.nestedArraysLeft<=0)return "undefined";n.nestedArraysLeft--;break;case "function":case "generatorfunction":if(n.nestedFunctionsLeft<=0)return "undefined";n.nestedFunctionsLeft--;}const i=stringify(e,t,n);switch(n.references.splice(s),o){case "object":n.nestedObjectsLeft++;break;case "array":case "typedarray":n.nestedArraysLeft++;break;case "function":case "generatorfunction":n.nestedFunctionsLeft++;}return i}return refs.push({historyRef:n.references.slice(0),source:e}),"null"}function attachCrossRefActions(e,t){if(0===e.length)return t;const n=`___j2s_${counter=counter++%Number.MAX_SAFE_INTEGER}`,r=e.map(e=>{const t=e.destPath.map(e=>`['${e.replace(/'/gi,"\\'")}']`).join(""),r=e.sourcePath.map(e=>`['${e.replace(/'/gi,"\\'")}']`).join("");return `${n}${t} = ${n}${r}; `}).join("");return `(function(){ var ${n} = ${t}; ${r}return ${n}; }())`}function javaScriptToString(e,t){const n={includeFunctionProperties:void 0===(t=t||{}).includeFunctionProperties||t.includeFunctionProperties,includeFunctionPrototype:void 0===t.includeFunctionPrototype||t.includeFunctionPrototype,includeBuffers:void 0===t.includeBuffers||t.includeBuffers,nestedObjectsAmount:void 0===t.nestedObjectsAmount?Number.POSITIVE_INFINITY:t.nestedObjectsAmount,nestedArraysAmount:void 0===t.nestedArraysAmount?Number.POSITIVE_INFINITY:t.nestedArraysAmount,nestedFunctionsAmount:void 0===t.nestedFunctionsAmount?Number.POSITIVE_INFINITY:t.nestedFunctionsAmount};refs=[],crossRefs=[],counter=0;const r=new Map;r.set(e,[]);const o=stringify(e,n,{references:[e],nestedObjectsLeft:n.nestedObjectsAmount,nestedArraysLeft:n.nestedArraysAmount,nestedFunctionsLeft:n.nestedFunctionsAmount,visited:r,currentPath:[]}),s=attachActions(getLocalRefs(e),o);return attachCrossRefActions(crossRefs,s)} export { javaScriptToString as default }; //# sourceMappingURL=javascripttostring.es5.js.map diff --git a/dist/javascripttostring.es5.js.map b/dist/javascripttostring.es5.js.map index ff21a19..47914b5 100644 --- a/dist/javascripttostring.es5.js.map +++ b/dist/javascripttostring.es5.js.map @@ -1 +1 @@ -{"version":3,"file":"javascripttostring.es5.js","sources":["../node_modules/tslib/tslib.es6.js","../node_modules/@lopatnov/get-internal-type/dist/get-internal-type.es.js","../src/javascripttostring.ts"],"sourcesContent":["/******************************************************************************\r\nCopyright (c) Microsoft Corporation.\r\n\r\nPermission to use, copy, modify, and/or distribute this software for any\r\npurpose with or without fee is hereby granted.\r\n\r\nTHE SOFTWARE IS PROVIDED \"AS IS\" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH\r\nREGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY\r\nAND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,\r\nINDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM\r\nLOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR\r\nOTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR\r\nPERFORMANCE OF THIS SOFTWARE.\r\n***************************************************************************** */\r\n/* global Reflect, Promise, SuppressedError, Symbol, Iterator */\r\n\r\nvar extendStatics = function(d, b) {\r\n extendStatics = Object.setPrototypeOf ||\r\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\r\n function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };\r\n return extendStatics(d, b);\r\n};\r\n\r\nexport function __extends(d, b) {\r\n if (typeof b !== \"function\" && b !== null)\r\n throw new TypeError(\"Class extends value \" + String(b) + \" is not a constructor or null\");\r\n extendStatics(d, b);\r\n function __() { this.constructor = d; }\r\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\r\n}\r\n\r\nexport var __assign = function() {\r\n __assign = Object.assign || function __assign(t) {\r\n for (var s, i = 1, n = arguments.length; i < n; i++) {\r\n s = arguments[i];\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];\r\n }\r\n return t;\r\n }\r\n return __assign.apply(this, arguments);\r\n}\r\n\r\nexport function __rest(s, e) {\r\n var t = {};\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)\r\n t[p] = s[p];\r\n if (s != null && typeof Object.getOwnPropertySymbols === \"function\")\r\n for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {\r\n if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))\r\n t[p[i]] = s[p[i]];\r\n }\r\n return t;\r\n}\r\n\r\nexport function __decorate(decorators, target, key, desc) {\r\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\r\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\r\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\r\n return c > 3 && r && Object.defineProperty(target, key, r), r;\r\n}\r\n\r\nexport function __param(paramIndex, decorator) {\r\n return function (target, key) { decorator(target, key, paramIndex); }\r\n}\r\n\r\nexport function __esDecorate(ctor, descriptorIn, decorators, contextIn, initializers, extraInitializers) {\r\n function accept(f) { if (f !== void 0 && typeof f !== \"function\") throw new TypeError(\"Function expected\"); return f; }\r\n var kind = contextIn.kind, key = kind === \"getter\" ? \"get\" : kind === \"setter\" ? \"set\" : \"value\";\r\n var target = !descriptorIn && ctor ? contextIn[\"static\"] ? ctor : ctor.prototype : null;\r\n var descriptor = descriptorIn || (target ? Object.getOwnPropertyDescriptor(target, contextIn.name) : {});\r\n var _, done = false;\r\n for (var i = decorators.length - 1; i >= 0; i--) {\r\n var context = {};\r\n for (var p in contextIn) context[p] = p === \"access\" ? {} : contextIn[p];\r\n for (var p in contextIn.access) context.access[p] = contextIn.access[p];\r\n context.addInitializer = function (f) { if (done) throw new TypeError(\"Cannot add initializers after decoration has completed\"); extraInitializers.push(accept(f || null)); };\r\n var result = (0, decorators[i])(kind === \"accessor\" ? { get: descriptor.get, set: descriptor.set } : descriptor[key], context);\r\n if (kind === \"accessor\") {\r\n if (result === void 0) continue;\r\n if (result === null || typeof result !== \"object\") throw new TypeError(\"Object expected\");\r\n if (_ = accept(result.get)) descriptor.get = _;\r\n if (_ = accept(result.set)) descriptor.set = _;\r\n if (_ = accept(result.init)) initializers.unshift(_);\r\n }\r\n else if (_ = accept(result)) {\r\n if (kind === \"field\") initializers.unshift(_);\r\n else descriptor[key] = _;\r\n }\r\n }\r\n if (target) Object.defineProperty(target, contextIn.name, descriptor);\r\n done = true;\r\n};\r\n\r\nexport function __runInitializers(thisArg, initializers, value) {\r\n var useValue = arguments.length > 2;\r\n for (var i = 0; i < initializers.length; i++) {\r\n value = useValue ? initializers[i].call(thisArg, value) : initializers[i].call(thisArg);\r\n }\r\n return useValue ? value : void 0;\r\n};\r\n\r\nexport function __propKey(x) {\r\n return typeof x === \"symbol\" ? x : \"\".concat(x);\r\n};\r\n\r\nexport function __setFunctionName(f, name, prefix) {\r\n if (typeof name === \"symbol\") name = name.description ? \"[\".concat(name.description, \"]\") : \"\";\r\n return Object.defineProperty(f, \"name\", { configurable: true, value: prefix ? \"\".concat(prefix, \" \", name) : name });\r\n};\r\n\r\nexport function __metadata(metadataKey, metadataValue) {\r\n if (typeof Reflect === \"object\" && typeof Reflect.metadata === \"function\") return Reflect.metadata(metadataKey, metadataValue);\r\n}\r\n\r\nexport function __awaiter(thisArg, _arguments, P, generator) {\r\n function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }\r\n return new (P || (P = Promise))(function (resolve, reject) {\r\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\r\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\r\n function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }\r\n step((generator = generator.apply(thisArg, _arguments || [])).next());\r\n });\r\n}\r\n\r\nexport function __generator(thisArg, body) {\r\n var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g = Object.create((typeof Iterator === \"function\" ? Iterator : Object).prototype);\r\n return g.next = verb(0), g[\"throw\"] = verb(1), g[\"return\"] = verb(2), typeof Symbol === \"function\" && (g[Symbol.iterator] = function() { return this; }), g;\r\n function verb(n) { return function (v) { return step([n, v]); }; }\r\n function step(op) {\r\n if (f) throw new TypeError(\"Generator is already executing.\");\r\n while (g && (g = 0, op[0] && (_ = 0)), _) try {\r\n if (f = 1, y && (t = op[0] & 2 ? y[\"return\"] : op[0] ? y[\"throw\"] || ((t = y[\"return\"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;\r\n if (y = 0, t) op = [op[0] & 2, t.value];\r\n switch (op[0]) {\r\n case 0: case 1: t = op; break;\r\n case 4: _.label++; return { value: op[1], done: false };\r\n case 5: _.label++; y = op[1]; op = [0]; continue;\r\n case 7: op = _.ops.pop(); _.trys.pop(); continue;\r\n default:\r\n if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }\r\n if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }\r\n if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }\r\n if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }\r\n if (t[2]) _.ops.pop();\r\n _.trys.pop(); continue;\r\n }\r\n op = body.call(thisArg, _);\r\n } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }\r\n if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };\r\n }\r\n}\r\n\r\nexport var __createBinding = Object.create ? (function(o, m, k, k2) {\r\n if (k2 === undefined) k2 = k;\r\n var desc = Object.getOwnPropertyDescriptor(m, k);\r\n if (!desc || (\"get\" in desc ? !m.__esModule : desc.writable || desc.configurable)) {\r\n desc = { enumerable: true, get: function() { return m[k]; } };\r\n }\r\n Object.defineProperty(o, k2, desc);\r\n}) : (function(o, m, k, k2) {\r\n if (k2 === undefined) k2 = k;\r\n o[k2] = m[k];\r\n});\r\n\r\nexport function __exportStar(m, o) {\r\n for (var p in m) if (p !== \"default\" && !Object.prototype.hasOwnProperty.call(o, p)) __createBinding(o, m, p);\r\n}\r\n\r\nexport function __values(o) {\r\n var s = typeof Symbol === \"function\" && Symbol.iterator, m = s && o[s], i = 0;\r\n if (m) return m.call(o);\r\n if (o && typeof o.length === \"number\") return {\r\n next: function () {\r\n if (o && i >= o.length) o = void 0;\r\n return { value: o && o[i++], done: !o };\r\n }\r\n };\r\n throw new TypeError(s ? \"Object is not iterable.\" : \"Symbol.iterator is not defined.\");\r\n}\r\n\r\nexport function __read(o, n) {\r\n var m = typeof Symbol === \"function\" && o[Symbol.iterator];\r\n if (!m) return o;\r\n var i = m.call(o), r, ar = [], e;\r\n try {\r\n while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);\r\n }\r\n catch (error) { e = { error: error }; }\r\n finally {\r\n try {\r\n if (r && !r.done && (m = i[\"return\"])) m.call(i);\r\n }\r\n finally { if (e) throw e.error; }\r\n }\r\n return ar;\r\n}\r\n\r\n/** @deprecated */\r\nexport function __spread() {\r\n for (var ar = [], i = 0; i < arguments.length; i++)\r\n ar = ar.concat(__read(arguments[i]));\r\n return ar;\r\n}\r\n\r\n/** @deprecated */\r\nexport function __spreadArrays() {\r\n for (var s = 0, i = 0, il = arguments.length; i < il; i++) s += arguments[i].length;\r\n for (var r = Array(s), k = 0, i = 0; i < il; i++)\r\n for (var a = arguments[i], j = 0, jl = a.length; j < jl; j++, k++)\r\n r[k] = a[j];\r\n return r;\r\n}\r\n\r\nexport function __spreadArray(to, from, pack) {\r\n if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {\r\n if (ar || !(i in from)) {\r\n if (!ar) ar = Array.prototype.slice.call(from, 0, i);\r\n ar[i] = from[i];\r\n }\r\n }\r\n return to.concat(ar || Array.prototype.slice.call(from));\r\n}\r\n\r\nexport function __await(v) {\r\n return this instanceof __await ? (this.v = v, this) : new __await(v);\r\n}\r\n\r\nexport function __asyncGenerator(thisArg, _arguments, generator) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var g = generator.apply(thisArg, _arguments || []), i, q = [];\r\n return i = Object.create((typeof AsyncIterator === \"function\" ? AsyncIterator : Object).prototype), verb(\"next\"), verb(\"throw\"), verb(\"return\", awaitReturn), i[Symbol.asyncIterator] = function () { return this; }, i;\r\n function awaitReturn(f) { return function (v) { return Promise.resolve(v).then(f, reject); }; }\r\n function verb(n, f) { if (g[n]) { i[n] = function (v) { return new Promise(function (a, b) { q.push([n, v, a, b]) > 1 || resume(n, v); }); }; if (f) i[n] = f(i[n]); } }\r\n function resume(n, v) { try { step(g[n](v)); } catch (e) { settle(q[0][3], e); } }\r\n function step(r) { r.value instanceof __await ? Promise.resolve(r.value.v).then(fulfill, reject) : settle(q[0][2], r); }\r\n function fulfill(value) { resume(\"next\", value); }\r\n function reject(value) { resume(\"throw\", value); }\r\n function settle(f, v) { if (f(v), q.shift(), q.length) resume(q[0][0], q[0][1]); }\r\n}\r\n\r\nexport function __asyncDelegator(o) {\r\n var i, p;\r\n return i = {}, verb(\"next\"), verb(\"throw\", function (e) { throw e; }), verb(\"return\"), i[Symbol.iterator] = function () { return this; }, i;\r\n function verb(n, f) { i[n] = o[n] ? function (v) { return (p = !p) ? { value: __await(o[n](v)), done: false } : f ? f(v) : v; } : f; }\r\n}\r\n\r\nexport function __asyncValues(o) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var m = o[Symbol.asyncIterator], i;\r\n return m ? m.call(o) : (o = typeof __values === \"function\" ? __values(o) : o[Symbol.iterator](), i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i);\r\n function verb(n) { i[n] = o[n] && function (v) { return new Promise(function (resolve, reject) { v = o[n](v), settle(resolve, reject, v.done, v.value); }); }; }\r\n function settle(resolve, reject, d, v) { Promise.resolve(v).then(function(v) { resolve({ value: v, done: d }); }, reject); }\r\n}\r\n\r\nexport function __makeTemplateObject(cooked, raw) {\r\n if (Object.defineProperty) { Object.defineProperty(cooked, \"raw\", { value: raw }); } else { cooked.raw = raw; }\r\n return cooked;\r\n};\r\n\r\nvar __setModuleDefault = Object.create ? (function(o, v) {\r\n Object.defineProperty(o, \"default\", { enumerable: true, value: v });\r\n}) : function(o, v) {\r\n o[\"default\"] = v;\r\n};\r\n\r\nvar ownKeys = function(o) {\r\n ownKeys = Object.getOwnPropertyNames || function (o) {\r\n var ar = [];\r\n for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;\r\n return ar;\r\n };\r\n return ownKeys(o);\r\n};\r\n\r\nexport function __importStar(mod) {\r\n if (mod && mod.__esModule) return mod;\r\n var result = {};\r\n if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== \"default\") __createBinding(result, mod, k[i]);\r\n __setModuleDefault(result, mod);\r\n return result;\r\n}\r\n\r\nexport function __importDefault(mod) {\r\n return (mod && mod.__esModule) ? mod : { default: mod };\r\n}\r\n\r\nexport function __classPrivateFieldGet(receiver, state, kind, f) {\r\n if (kind === \"a\" && !f) throw new TypeError(\"Private accessor was defined without a getter\");\r\n if (typeof state === \"function\" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError(\"Cannot read private member from an object whose class did not declare it\");\r\n return kind === \"m\" ? f : kind === \"a\" ? f.call(receiver) : f ? f.value : state.get(receiver);\r\n}\r\n\r\nexport function __classPrivateFieldSet(receiver, state, value, kind, f) {\r\n if (kind === \"m\") throw new TypeError(\"Private method is not writable\");\r\n if (kind === \"a\" && !f) throw new TypeError(\"Private accessor was defined without a setter\");\r\n if (typeof state === \"function\" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError(\"Cannot write private member to an object whose class did not declare it\");\r\n return (kind === \"a\" ? f.call(receiver, value) : f ? f.value = value : state.set(receiver, value)), value;\r\n}\r\n\r\nexport function __classPrivateFieldIn(state, receiver) {\r\n if (receiver === null || (typeof receiver !== \"object\" && typeof receiver !== \"function\")) throw new TypeError(\"Cannot use 'in' operator on non-object\");\r\n return typeof state === \"function\" ? receiver === state : state.has(receiver);\r\n}\r\n\r\nexport function __addDisposableResource(env, value, async) {\r\n if (value !== null && value !== void 0) {\r\n if (typeof value !== \"object\" && typeof value !== \"function\") throw new TypeError(\"Object expected.\");\r\n var dispose, inner;\r\n if (async) {\r\n if (!Symbol.asyncDispose) throw new TypeError(\"Symbol.asyncDispose is not defined.\");\r\n dispose = value[Symbol.asyncDispose];\r\n }\r\n if (dispose === void 0) {\r\n if (!Symbol.dispose) throw new TypeError(\"Symbol.dispose is not defined.\");\r\n dispose = value[Symbol.dispose];\r\n if (async) inner = dispose;\r\n }\r\n if (typeof dispose !== \"function\") throw new TypeError(\"Object not disposable.\");\r\n if (inner) dispose = function() { try { inner.call(this); } catch (e) { return Promise.reject(e); } };\r\n env.stack.push({ value: value, dispose: dispose, async: async });\r\n }\r\n else if (async) {\r\n env.stack.push({ async: true });\r\n }\r\n return value;\r\n\r\n}\r\n\r\nvar _SuppressedError = typeof SuppressedError === \"function\" ? SuppressedError : function (error, suppressed, message) {\r\n var e = new Error(message);\r\n return e.name = \"SuppressedError\", e.error = error, e.suppressed = suppressed, e;\r\n};\r\n\r\nexport function __disposeResources(env) {\r\n function fail(e) {\r\n env.error = env.hasError ? new _SuppressedError(e, env.error, \"An error was suppressed during disposal.\") : e;\r\n env.hasError = true;\r\n }\r\n var r, s = 0;\r\n function next() {\r\n while (r = env.stack.pop()) {\r\n try {\r\n if (!r.async && s === 1) return s = 0, env.stack.push(r), Promise.resolve().then(next);\r\n if (r.dispose) {\r\n var result = r.dispose.call(r.value);\r\n if (r.async) return s |= 2, Promise.resolve(result).then(next, function(e) { fail(e); return next(); });\r\n }\r\n else s |= 1;\r\n }\r\n catch (e) {\r\n fail(e);\r\n }\r\n }\r\n if (s === 1) return env.hasError ? Promise.reject(env.error) : Promise.resolve();\r\n if (env.hasError) throw env.error;\r\n }\r\n return next();\r\n}\r\n\r\nexport function __rewriteRelativeImportExtension(path, preserveJsx) {\r\n if (typeof path === \"string\" && /^\\.\\.?\\//.test(path)) {\r\n return path.replace(/\\.(tsx)$|((?:\\.d)?)((?:\\.[^./]+?)?)\\.([cm]?)ts$/i, function (m, tsx, d, ext, cm) {\r\n return tsx ? preserveJsx ? \".jsx\" : \".js\" : d && (!ext || !cm) ? m : (d + ext + \".\" + cm.toLowerCase() + \"js\");\r\n });\r\n }\r\n return path;\r\n}\r\n\r\nexport default {\r\n __extends: __extends,\r\n __assign: __assign,\r\n __rest: __rest,\r\n __decorate: __decorate,\r\n __param: __param,\r\n __esDecorate: __esDecorate,\r\n __runInitializers: __runInitializers,\r\n __propKey: __propKey,\r\n __setFunctionName: __setFunctionName,\r\n __metadata: __metadata,\r\n __awaiter: __awaiter,\r\n __generator: __generator,\r\n __createBinding: __createBinding,\r\n __exportStar: __exportStar,\r\n __values: __values,\r\n __read: __read,\r\n __spread: __spread,\r\n __spreadArrays: __spreadArrays,\r\n __spreadArray: __spreadArray,\r\n __await: __await,\r\n __asyncGenerator: __asyncGenerator,\r\n __asyncDelegator: __asyncDelegator,\r\n __asyncValues: __asyncValues,\r\n __makeTemplateObject: __makeTemplateObject,\r\n __importStar: __importStar,\r\n __importDefault: __importDefault,\r\n __classPrivateFieldGet: __classPrivateFieldGet,\r\n __classPrivateFieldSet: __classPrivateFieldSet,\r\n __classPrivateFieldIn: __classPrivateFieldIn,\r\n __addDisposableResource: __addDisposableResource,\r\n __disposeResources: __disposeResources,\r\n __rewriteRelativeImportExtension: __rewriteRelativeImportExtension,\r\n};\r\n","var types = {}, typesToString = types.toString, buildInList = [\r\n \"Boolean\",\r\n \"Number\",\r\n \"String\",\r\n \"Function\",\r\n \"Array\",\r\n \"Date\",\r\n \"RegExp\",\r\n \"Object\",\r\n \"Error\",\r\n \"Promise\",\r\n \"Generator\",\r\n \"GeneratorFunction\",\r\n \"ArrayBuffer\",\r\n \"DataView\"\r\n], typedArrays = [\r\n \"Int8Array\",\r\n \"Uint8Array\",\r\n \"Uint8ClampedArray\",\r\n \"Int16Array\",\r\n \"Uint16Array\",\r\n \"Int32Array\",\r\n \"Uint32Array\",\r\n \"Float32Array\",\r\n \"Float64Array\",\r\n \"BigInt64Array\",\r\n \"BigUint64Array\"\r\n], maps = [\"Map\", \"WeakMap\"], sets = [\"Set\", \"WeakSet\"];\r\nbuildInList.forEach(function (name) {\r\n types[\"[object \" + name + \"]\"] = name.toLowerCase();\r\n});\r\nmaps.forEach(function (name) {\r\n types[\"[object \" + name + \"]\"] = \"map\";\r\n});\r\nsets.forEach(function (name) {\r\n types[\"[object \" + name + \"]\"] = \"set\";\r\n});\r\ntypedArrays.forEach(function (name) {\r\n types[\"[object \" + name + \"]\"] = \"typedarray\";\r\n});\r\nfunction getInternalType(obj) {\r\n return obj == null\r\n ? obj + \"\"\r\n : typeof obj === \"object\" || typeof obj === \"function\"\r\n ? types[typesToString.call(obj)] || \"object\"\r\n : typeof obj;\r\n}\n\nexport default getInternalType;\n//# sourceMappingURL=get-internal-type.es.js.map\n",null],"names":["__spreadArray","to","from","pack","arguments","length","ar","i","l","Array","prototype","slice","call","concat","SuppressedError","error","suppressed","message","e","Error","name","types","typesToString","toString","buildInList","typedArrays","maps","sets","getInternalType","obj","forEach","toLowerCase","refs","crossRefs","counter","fillNativeFunctions","ext","objName","fromPrototype","protoPath","_i","arrNames_1","Object","getOwnPropertyNames","name_1","indexOf","nativeFunctions","functions","JSON","Function","Date","String","numberToString","value","Number","isNaN","POSITIVE_INFINITY","NEGATIVE_INFINITY","EPSILON","MAX_SAFE_INTEGER","MIN_SAFE_INTEGER","MAX_VALUE","MIN_VALUE","Math","PI","E","LN10","LN2","LOG10E","LOG2E","SQRT1_2","SQRT2","symbolToString","Symbol","asyncIterator","hasInstance","isConcatSpreadable","iterator","match","replace","search","species","split","toPrimitive","toStringTag","unscopables","description","dateToString","getTime","toISOString","errorToString","stringify","fileName","lineNumber","arrayToString","options","history","arrayValues","reduce","x1","x2","index","key","references","push","currentPath","str","stringifyRef","pop","attachActions","getLocalRefs","filter","x","source","localRefs","result","localName_1","actions","action","converToAction","splice","localName","r","destIndex","historyRef","sourceObj","dest","path","destObj","typedArrayToString","arrString","constructorName","constructor","setToString","setValues","value1","value2","set","join","mapToString","mapValues","indexValue","objectToString","objectValues","propertyName","hasOwnProperty","propertyValue","test","functionPropertiesToString","functionName","functionToString","functionObject","includeFunctionProperties","functionPrototype","includeFunctionPrototype","functionStr","nfName","arrayBufferToString","includeBuffers","Int8Array","dataViewToString","bufString","buffer","byteOffset","byteLength","getObjectType","isRefType","visited","has","destPath","sourcePath","get","objectType","referencesLength","nestedObjectsLeft","nestedArraysLeft","nestedFunctionsLeft","refString","attachCrossRefActions","localCrossRefs","map","cr","destAccessor","p","srcAccessor","javaScriptToString","concreteOptions","undefined","nestedObjectsAmount","nestedArraysAmount","nestedFunctionsAmount","Map","circularResult"],"mappings":"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","x_google_ignoreList":[0,1]} \ No newline at end of file +{"version":3,"file":"javascripttostring.es5.js","sources":["../node_modules/@lopatnov/get-internal-type/dist/get-internal-type.es.js","../src/javascripttostring.ts"],"sourcesContent":["var types = {}, typesToString = types.toString, buildInList = [\r\n \"Boolean\",\r\n \"Number\",\r\n \"String\",\r\n \"Function\",\r\n \"Array\",\r\n \"Date\",\r\n \"RegExp\",\r\n \"Object\",\r\n \"Error\",\r\n \"Promise\",\r\n \"Generator\",\r\n \"GeneratorFunction\",\r\n \"ArrayBuffer\",\r\n \"DataView\"\r\n], typedArrays = [\r\n \"Int8Array\",\r\n \"Uint8Array\",\r\n \"Uint8ClampedArray\",\r\n \"Int16Array\",\r\n \"Uint16Array\",\r\n \"Int32Array\",\r\n \"Uint32Array\",\r\n \"Float32Array\",\r\n \"Float64Array\",\r\n \"BigInt64Array\",\r\n \"BigUint64Array\"\r\n], maps = [\"Map\", \"WeakMap\"], sets = [\"Set\", \"WeakSet\"];\r\nbuildInList.forEach(function (name) {\r\n types[\"[object \" + name + \"]\"] = name.toLowerCase();\r\n});\r\nmaps.forEach(function (name) {\r\n types[\"[object \" + name + \"]\"] = \"map\";\r\n});\r\nsets.forEach(function (name) {\r\n types[\"[object \" + name + \"]\"] = \"set\";\r\n});\r\ntypedArrays.forEach(function (name) {\r\n types[\"[object \" + name + \"]\"] = \"typedarray\";\r\n});\r\nfunction getInternalType(obj) {\r\n return obj == null\r\n ? obj + \"\"\r\n : typeof obj === \"object\" || typeof obj === \"function\"\r\n ? types[typesToString.call(obj)] || \"object\"\r\n : typeof obj;\r\n}\n\nexport default getInternalType;\n//# sourceMappingURL=get-internal-type.es.js.map\n",null],"names":["types","typesToString","toString","buildInList","typedArrays","maps","sets","getInternalType","obj","call","forEach","name","toLowerCase","refs","crossRefs","counter","fillNativeFunctions","ext","objName","fromPrototype","arrNames","Object","getOwnPropertyNames","prototype","protoPath","indexOf","nativeFunctions","functions","Array","JSON","Function","Date","String","numberToString","value","Number","isNaN","POSITIVE_INFINITY","NEGATIVE_INFINITY","EPSILON","MAX_SAFE_INTEGER","MIN_SAFE_INTEGER","MAX_VALUE","MIN_VALUE","Math","PI","E","LN10","LN2","LOG10E","LOG2E","SQRT1_2","SQRT2","symbolToString","Symbol","asyncIterator","hasInstance","isConcatSpreadable","iterator","match","replace","search","species","split","toPrimitive","toStringTag","unscopables","description","dateToString","getTime","toISOString","errorToString","stringify","message","fileName","lineNumber","arrayToString","options","history","length","arrayValues","reduce","x1","x2","index","key","references","push","currentPath","str","stringifyRef","pop","attachActions","getLocalRefs","filter","x","source","localRefs","result","localName","actions","action","converToAction","splice","r","destIndex","historyRef","dest","slice","sourceObj","path","i","destObj","typedArrayToString","arrString","from","constructor","setToString","setValues","_","value2","join","mapToString","mapValues","indexValue","objectToString","objectValues","propertyName","hasOwnProperty","propertyValue","test","functionPropertiesToString","functionName","functionToString","functionObject","includeFunctionProperties","functionPrototype","includeFunctionPrototype","functionStr","nfName","arrayBufferToString","includeBuffers","Int8Array","dataViewToString","buffer","byteOffset","byteLength","getObjectType","isRefType","visited","has","destPath","sourcePath","get","objectType","referencesLength","set","nestedObjectsLeft","nestedArraysLeft","nestedFunctionsLeft","refString","attachCrossRefActions","localCrossRefs","map","cr","destAccessor","p","srcAccessor","javaScriptToString","concreteOptions","undefined","nestedObjectsAmount","nestedArraysAmount","nestedFunctionsAmount","Map","circularResult"],"mappings":"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","x_google_ignoreList":[0]} \ No newline at end of file diff --git a/dist/javascripttostring.min.es5.js b/dist/javascripttostring.min.es5.js deleted file mode 100644 index 0b533e5..0000000 --- a/dist/javascripttostring.min.es5.js +++ /dev/null @@ -1,6 +0,0 @@ -var types={},typesToString=types.toString,buildInList=["Boolean","Number","String","Function","Array","Date","RegExp","Object","Error","Promise","Generator","GeneratorFunction","ArrayBuffer","DataView"],typedArrays=["Int8Array","Uint8Array","Uint8ClampedArray","Int16Array","Uint16Array","Int32Array","Uint32Array","Float32Array","Float64Array","BigInt64Array","BigUint64Array"],maps=["Map","WeakMap"],sets=["Set","WeakSet"];function getInternalType(t){return null==t?t+"":"object"==typeof t||"function"==typeof t?types[typesToString.call(t)]||"object":typeof t}buildInList.forEach((function(t){types["[object "+t+"]"]=t.toLowerCase();})),maps.forEach((function(t){types["[object "+t+"]"]="map";})),sets.forEach((function(t){types["[object "+t+"]"]="set";})),typedArrays.forEach((function(t){types["[object "+t+"]"]="typedarray";})); - -var refs=[],counter=0;function fillNativeFunctions(e,r,n,t){void 0===t&&(t=!0);for(var i=t?".prototype.":".",o=0,a=Object.getOwnPropertyNames(t?r.prototype:r);o0){var n="___j2s_"+(counter=counter++%Number.MAX_SAFE_INTEGER),t=e.reduce((function(e,r){var t=converToAction(n,r);return refs.splice(refs.indexOf(r),1),e+t}),"");return "(function(){ var "+n+" = "+r+"; "+t+" return "+n+"; }())"}return r}function converToAction(e,r){var n=r.historyRef.indexOf(r.source);if(n<0)return "";for(var t,i=r.historyRef.slice(n),o="",a=0;a-1&&a.length<100)for(var u in nativeFunctions)nativeFunctions[u]===e&&(a=u);return i||o?attachActions(getLocalRefs(e),"(function(){\n var "+t+" = "+String(a)+";\n "+i+"\n "+o+"\n return "+t+";\n}())"):a}function arrayBufferToString(e,r,n){return r.includeBuffers?"("+typedArrayToString(new Int8Array(e),r,n)+").buffer":"undefined"}function dataViewToString(e,r,n){return r.includeBuffers?"new DataView("+arrayBufferToString(e.buffer,r,n)+", "+e.byteOffset+", "+e.byteLength+")":"undefined"}function stringify(e,r,n){switch(getInternalType(e)){case"undefined":return "undefined";case"null":return "null";case"boolean":case"regexp":return String(e);case"string":return JSON.stringify(e);case"number":return numberToString(e);case"bigint":return "BigInt("+e+")";case"symbol":return symbolToString(e);case"date":return dateToString(e);case"error":return errorToString(e);case"array":return arrayToString(e,r,n);case"typedarray":return typedArrayToString(e,r,n);case"set":return setToString(e,r,n);case"map":return mapToString(e,r,n);case"object":return objectToString(e,r,n);case"function":case"generatorfunction":return functionToString(e,r,n);case"arraybuffer":return arrayBufferToString(e,r,n);case"dataview":return dataViewToString(e,r,n);case"promise":case"generator":return "undefined";default:return JSON.stringify(e)}}function stringifyRef(e,r,n){var t=n.references.indexOf(e);if(t<0||"string"==typeof n.references[t]){var i=getInternalType(e),o=n.references.length;switch(n.references.push(e),i){case"object":if(n.nestedObjectsLeft<=0)return "undefined";n.nestedObjectsLeft--;break;case"array":case"typedarray":if(n.nestedArraysLeft<=0)return "undefined";n.nestedArraysLeft--;break;case"function":case"generatorfunction":if(n.nestedFunctionsLeft<=0)return "undefined";n.nestedFunctionsLeft--;}var a=stringify(e,r,n);switch(n.references.splice(o),i){case"object":n.nestedObjectsLeft++;break;case"array":case"typedarray":n.nestedArraysLeft++;break;case"function":case"generatorfunction":n.nestedFunctionsLeft++;}return a}return refs.push({historyRef:n.references.slice(0),source:e}),"null"}function javaScriptToString(e,r){var n={includeFunctionProperties:void 0===(r=r||{}).includeFunctionProperties||r.includeFunctionProperties,includeFunctionPrototype:void 0===r.includeFunctionPrototype||r.includeFunctionPrototype,includeBuffers:void 0===r.includeBuffers||r.includeBuffers,nestedObjectsAmount:void 0===r.nestedObjectsAmount?Number.POSITIVE_INFINITY:r.nestedObjectsAmount,nestedArraysAmount:void 0===r.nestedArraysAmount?Number.POSITIVE_INFINITY:r.nestedArraysAmount,nestedFunctionsAmount:void 0===r.nestedFunctionsAmount?Number.POSITIVE_INFINITY:r.nestedFunctionsAmount};return stringify(e,n,{references:[e],nestedObjectsLeft:n.nestedObjectsAmount,nestedArraysLeft:n.nestedArraysAmount,nestedFunctionsLeft:n.nestedFunctionsAmount})} - -export default javaScriptToString; -//# sourceMappingURL=javascripttostring.min.es5.js.map diff --git a/dist/javascripttostring.min.es5.js.map b/dist/javascripttostring.min.es5.js.map deleted file mode 100644 index 709532f..0000000 --- a/dist/javascripttostring.min.es5.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"javascripttostring.min.es5.js","sources":["../node_modules/@lopatnov/get-internal-type/dist/get-internal-type.es.js","../src/javascripttostring.ts"],"sourcesContent":["var types = {}, typesToString = types.toString, buildInList = [\r\n \"Boolean\",\r\n \"Number\",\r\n \"String\",\r\n \"Function\",\r\n \"Array\",\r\n \"Date\",\r\n \"RegExp\",\r\n \"Object\",\r\n \"Error\",\r\n \"Promise\",\r\n \"Generator\",\r\n \"GeneratorFunction\",\r\n \"ArrayBuffer\",\r\n \"DataView\"\r\n], typedArrays = [\r\n \"Int8Array\",\r\n \"Uint8Array\",\r\n \"Uint8ClampedArray\",\r\n \"Int16Array\",\r\n \"Uint16Array\",\r\n \"Int32Array\",\r\n \"Uint32Array\",\r\n \"Float32Array\",\r\n \"Float64Array\",\r\n \"BigInt64Array\",\r\n \"BigUint64Array\"\r\n], maps = [\"Map\", \"WeakMap\"], sets = [\"Set\", \"WeakSet\"];\r\nbuildInList.forEach(function (name) {\r\n types[\"[object \" + name + \"]\"] = name.toLowerCase();\r\n});\r\nmaps.forEach(function (name) {\r\n types[\"[object \" + name + \"]\"] = \"map\";\r\n});\r\nsets.forEach(function (name) {\r\n types[\"[object \" + name + \"]\"] = \"set\";\r\n});\r\ntypedArrays.forEach(function (name) {\r\n types[\"[object \" + name + \"]\"] = \"typedarray\";\r\n});\r\nfunction getInternalType(obj) {\r\n return obj == null\r\n ? obj + \"\"\r\n : typeof obj === \"object\" || typeof obj === \"function\"\r\n ? types[typesToString.call(obj)] || \"object\"\r\n : typeof obj;\r\n}\n\nexport default getInternalType;\n//# sourceMappingURL=get-internal-type.es.js.map\n","import getObjectType from \"@lopatnov/get-internal-type\";\r\n\r\nexport interface IJ2SOptions {\r\n includeFunctionProperties?: boolean; // default true\r\n includeFunctionPrototype?: boolean; // default true\r\n includeBuffers?: boolean; // default true\r\n nestedObjectsAmount?: number; // default Number.POSITIVE_INFINITY\r\n nestedArraysAmount?: number; // default Number.POSITIVE_INFINITY\r\n nestedFunctionsAmount?: number; // default Number.POSITIVE_INFINITY\r\n}\r\n\r\ninterface RefInstance {\r\n historyRef: Array,\r\n source: any\r\n}\r\n\r\nvar refs: RefInstance[] = [];\r\nvar counter = 0;\r\n\r\ninterface IJ2SHistory {\r\n references: any[];\r\n nestedObjectsLeft: number;\r\n nestedArraysLeft: number;\r\n nestedFunctionsLeft: number;\r\n}\r\n\r\nfunction fillNativeFunctions(ext: any, obj: any, objName: string, fromPrototype: boolean = true) {\r\n const arrNames = Object.getOwnPropertyNames(fromPrototype ? obj.prototype: obj);\r\n const protoPath = fromPrototype ? '.prototype.' : '.';\r\n for (let name of arrNames) {\r\n if (['caller', 'callee', 'arguments'].indexOf(name) < 0) {\r\n ext[`${objName}${protoPath}${name}`] = fromPrototype ? obj.prototype[name as any] : obj[name as any];\r\n }\r\n }\r\n}\r\n\r\nconst nativeFunctions = (function(){\r\n const functions: any = {};\r\n fillNativeFunctions(functions, Array, 'Array', false);\r\n fillNativeFunctions(functions, Array, 'Array');\r\n fillNativeFunctions(functions, JSON, 'JSON', false);\r\n fillNativeFunctions(functions, Object, 'Object', false);\r\n fillNativeFunctions(functions, Object, 'Object');\r\n fillNativeFunctions(functions, Function, 'Function', false);\r\n fillNativeFunctions(functions, Function, 'Function');\r\n fillNativeFunctions(functions, Date, 'Date', false);\r\n fillNativeFunctions(functions, String, 'String');\r\n functions.Function = Function;\r\n return functions;\r\n}());\r\n\r\nfunction numberToString(value: number): string {\r\n if (Number.isNaN(value)) {\r\n return \"Number.NaN\";\r\n }\r\n switch (value) {\r\n case Number.POSITIVE_INFINITY:\r\n return \"Number.POSITIVE_INFINITY\";\r\n case Number.NEGATIVE_INFINITY:\r\n return \"Number.NEGATIVE_INFINITY\";\r\n case Number.EPSILON:\r\n return \"Number.EPSILON\";\r\n case Number.MAX_SAFE_INTEGER:\r\n return \"Number.MAX_SAFE_INTEGER\";\r\n case Number.MIN_SAFE_INTEGER:\r\n return \"Number.MIN_SAFE_INTEGER\";\r\n case Number.MAX_VALUE:\r\n return \"Number.MAX_VALUE\";\r\n case Number.MIN_VALUE:\r\n return \"Number.MIN_VALUE\";\r\n case Math.PI:\r\n return \"Math.PI\";\r\n case Math.E:\r\n return \"Math.E\";\r\n case Math.LN10:\r\n return \"Math.LN10\";\r\n case Math.LN2:\r\n return \"Math.LN2\";\r\n case Math.LOG10E:\r\n return \"Math.LOG10E\";\r\n case Math.LOG2E:\r\n return \"Math.LOG2E\";\r\n case Math.SQRT1_2:\r\n return \"Math.SQRT1_2\";\r\n case Math.SQRT2:\r\n return \"Math.SQRT2\";\r\n default:\r\n return String(value);\r\n }\r\n}\r\n\r\nfunction symbolToString(value: any): string {\r\n switch (value) {\r\n case Symbol.asyncIterator:\r\n case Symbol.hasInstance:\r\n case Symbol.isConcatSpreadable:\r\n case Symbol.iterator:\r\n case Symbol.match:\r\n case Symbol.prototype:\r\n case Symbol.replace:\r\n case Symbol.search:\r\n case Symbol.species:\r\n case Symbol.split:\r\n case Symbol.toPrimitive:\r\n case Symbol.toStringTag:\r\n case Symbol.unscopables:\r\n return value.description;\r\n default:\r\n let description = value.description ? `\"${value.description}\"` : \"\";\r\n return `Symbol(${description})`;\r\n }\r\n}\r\n\r\nfunction dateToString(value: Date): string {\r\n if (isNaN(value.getTime())) {\r\n return `new Date(${value.toString()})`;\r\n }\r\n return `new Date(${value.toISOString()})`;\r\n}\r\n\r\nfunction errorToString(value: any): string {\r\n let message = JSON.stringify(value.message),\r\n fileName = JSON.stringify(value.fileName),\r\n lineNumber = JSON.stringify(value.lineNumber);\r\n return `new Error(${message}, ${fileName}, ${lineNumber})`;\r\n}\r\n\r\nfunction arrayToString(\r\n value: Array,\r\n options: IJ2SOptions,\r\n history: IJ2SHistory\r\n): string {\r\n if (value.length === 0) return \"[]\";\r\n let arrayValues = value.reduce(\r\n (x1: any, x2: any, index: number) => {\r\n history.references.push(index.toString());\r\n let str = !!x1 ? `${x1}, ` : '';\r\n str += stringifyRef(x2,options,history);\r\n history.references.pop();\r\n return str;\r\n }, '');\r\n return attachActions(getLocalRefs(value), `[${arrayValues}]`);\r\n}\r\n\r\nfunction getLocalRefs(value: any) {\r\n return refs.filter(x => x.source === value)\r\n}\r\n\r\nfunction attachActions(localRefs: RefInstance[], result: string) {\r\n if (localRefs.length > 0) {\r\n counter = (counter++) % Number.MAX_SAFE_INTEGER;\r\n const localName = `___j2s_${counter}`;\r\n const actions = localRefs.reduce((x1: string, x2: RefInstance) => {\r\n const action = converToAction(localName, x2);\r\n refs.splice(refs.indexOf(x2), 1);\r\n return x1 + action;\r\n }, '');\r\n return `(function(){ var ${localName} = ${result}; ${actions} return ${localName}; }())`;\r\n }\r\n return result;\r\n}\r\n\r\nfunction converToAction(localName: string, r: RefInstance) {\r\n const destIndex = r.historyRef.indexOf(r.source);\r\n if (destIndex < 0) {\r\n return '';\r\n }\r\n\r\n const dest = r.historyRef.slice(destIndex);\r\n let sourceObj: any;\r\n let path = '';\r\n for (let i = 0; i < dest.length; i++) {\r\n const destObj = dest[i];\r\n if (destObj === r.source) {\r\n path = localName;\r\n sourceObj = r.source;\r\n } else if (typeof destObj === 'string') {\r\n path += `['${destObj.replace(/'/gi, '\\\\\\'')}']`;\r\n sourceObj = sourceObj[destObj];\r\n } else if (destObj !== sourceObj) {\r\n return '';\r\n }\r\n }\r\n\r\n return `${path} = ${localName}; `;\r\n}\r\n\r\nfunction typedArrayToString(\r\n value: any,\r\n options: IJ2SOptions,\r\n history: IJ2SHistory\r\n): string {\r\n let arr = Array.from(value),\r\n arrString = arrayToString(arr, options, history),\r\n constructorName = value.constructor.name;\r\n return `new ${constructorName}(${arrString})`;\r\n}\r\n\r\nfunction setToString(\r\n value: Set,\r\n options: IJ2SOptions,\r\n history: IJ2SHistory\r\n): string {\r\n let setValues: string[] = [];\r\n\r\n value.forEach((value1: any, value2: any, set: Set) => {\r\n setValues.push(stringifyRef(value2, options, history));\r\n });\r\n\r\n if (setValues.length === 0) return \"new Set()\";\r\n\r\n return `new Set([${setValues.join(\", \")}])`;\r\n}\r\n\r\nfunction mapToString(\r\n value: Map,\r\n options: IJ2SOptions,\r\n history: IJ2SHistory\r\n): string {\r\n let mapValues: string[] = [];\r\n\r\n value.forEach((indexValue: any, key: any) => {\r\n mapValues.push(\r\n `[${stringifyRef(key, options, history)}, ${stringifyRef(\r\n indexValue,\r\n options,\r\n history\r\n )}]`\r\n );\r\n });\r\n\r\n if (mapValues.length === 0) return \"new Map()\";\r\n\r\n return `new Map([${mapValues.join(\", \")}])`;\r\n}\r\n\r\nfunction objectToString(\r\n value: any,\r\n options: IJ2SOptions,\r\n history: IJ2SHistory\r\n): string {\r\n let objectValues = [];\r\n\r\n for (let propertyName in value) {\r\n if (value.hasOwnProperty(propertyName)) {\r\n history.references.push(propertyName);\r\n let propertyValue = stringifyRef(value[propertyName], options, history);\r\n history.references.pop();\r\n if (propertyValue !== \"undefined\") {\r\n if (!(/^[a-zA-Z]+$/).test(propertyName)) {\r\n propertyName = `\"${propertyName}\"`;\r\n }\r\n objectValues.push(`${propertyName}: ${propertyValue}`);\r\n }\r\n }\r\n }\r\n\r\n if (objectValues.length === 0) return \"{}\";\r\n\r\n return attachActions(getLocalRefs(value), `{\\n${objectValues.join(\",\\n\")}\\n}`);\r\n}\r\n\r\nfunction functionPropertiesToString(\r\n functionName: string,\r\n value: any,\r\n options: IJ2SOptions,\r\n history: IJ2SHistory\r\n): string {\r\n let result = \"\";\r\n for (let propertyName in value) {\r\n if (value.hasOwnProperty(propertyName)) {\r\n history.references.push(propertyName);\r\n let propertyValue = stringifyRef(value[propertyName], options, history);\r\n history.references.pop();\r\n if (propertyValue !== \"undefined\") {\r\n result += `${functionName}.${propertyName} = ${propertyValue};\\n`;\r\n }\r\n }\r\n }\r\n return result;\r\n}\r\n\r\nfunction functionToString(\r\n value: any,\r\n options: IJ2SOptions,\r\n history: IJ2SHistory\r\n): string {\r\n let functionName = value.name || \"anonymousFunction\";\r\n let functionObject = options.includeFunctionProperties\r\n ? functionPropertiesToString(functionName, value, options, history)\r\n : \"\";\r\n history.references.push('prototype');\r\n let functionPrototype = options.includeFunctionPrototype\r\n ? functionPropertiesToString(\r\n `${functionName}.prototype`,\r\n value.prototype,\r\n options,\r\n history\r\n )\r\n : \"\";\r\n history.references.pop();\r\n\r\n let functionStr = String(value);\r\n if (functionStr.indexOf('[native code]') > -1 && functionStr.length < 100) {\r\n for (const nfName in nativeFunctions) {\r\n if (nativeFunctions[nfName] === value) {\r\n functionStr = nfName\r\n }\r\n }\r\n }\r\n if (!functionObject && !functionPrototype) {\r\n return functionStr;\r\n }\r\n\r\n return attachActions(getLocalRefs(value), `(function(){\\n var ${functionName} = ${String(\r\n functionStr\r\n )};\\n ${functionObject}\\n ${functionPrototype}\\n return ${functionName};\\n}())`);\r\n}\r\n\r\nfunction arrayBufferToString(\r\n value: ArrayBuffer,\r\n options: IJ2SOptions,\r\n history: IJ2SHistory\r\n): string {\r\n if (!options.includeBuffers) return \"undefined\";\r\n let str = typedArrayToString(new Int8Array(value), options, history);\r\n return `(${str}).buffer`;\r\n}\r\n\r\nfunction dataViewToString(\r\n value: DataView,\r\n options: IJ2SOptions,\r\n history: IJ2SHistory\r\n): string {\r\n if (!options.includeBuffers) return \"undefined\";\r\n let bufString = arrayBufferToString(value.buffer, options, history);\r\n return `new DataView(${bufString}, ${value.byteOffset}, ${value.byteLength})`;\r\n}\r\n\r\n/**\r\n * Converts to string the value, if it wasn't before\r\n * @param value the value, that converts to string\r\n * @param references the references to stringified objects\r\n */\r\nfunction stringify(\r\n value: any,\r\n options: IJ2SOptions,\r\n history: IJ2SHistory\r\n): string {\r\n switch (getObjectType(value)) {\r\n case \"undefined\":\r\n return \"undefined\";\r\n case \"null\":\r\n return \"null\";\r\n case \"boolean\":\r\n return String(value);\r\n case \"regexp\":\r\n return String(value);\r\n case \"string\":\r\n return JSON.stringify(value);\r\n case \"number\":\r\n return numberToString(value);\r\n case \"bigint\":\r\n return `BigInt(${value})`;\r\n case \"symbol\":\r\n return symbolToString(value);\r\n case \"date\":\r\n return dateToString(value);\r\n case \"error\":\r\n return errorToString(value);\r\n case \"array\":\r\n return arrayToString(value, options, history);\r\n case \"typedarray\":\r\n return typedArrayToString(value, options, history);\r\n case \"set\":\r\n return setToString(value, options, history);\r\n case \"map\":\r\n return mapToString(value, options, history);\r\n case \"object\":\r\n return objectToString(value, options, history);\r\n case \"function\":\r\n case \"generatorfunction\":\r\n return functionToString(value, options, history);\r\n case \"arraybuffer\":\r\n return arrayBufferToString(value, options, history);\r\n case \"dataview\":\r\n return dataViewToString(value, options, history);\r\n case \"promise\":\r\n case \"generator\":\r\n return \"undefined\";\r\n default:\r\n return JSON.stringify(value);\r\n }\r\n}\r\n\r\n/**\r\n * Stringify the value, if it wasn't before\r\n * @param value the value, that converts to string\r\n * @param references the references to stringified objects\r\n */\r\nfunction stringifyRef(\r\n value: any,\r\n options: IJ2SOptions,\r\n history: IJ2SHistory\r\n): string {\r\n const index = history.references.indexOf(value);\r\n if (index < 0 || typeof(history.references[index]) === 'string') {\r\n let objectType = getObjectType(value);\r\n let referencesLength = history.references.length;\r\n history.references.push(value);\r\n switch (objectType) {\r\n case \"object\":\r\n if (history.nestedObjectsLeft <= 0) return \"undefined\";\r\n history.nestedObjectsLeft--;\r\n break;\r\n case \"array\":\r\n case \"typedarray\":\r\n if (history.nestedArraysLeft <= 0) return \"undefined\";\r\n history.nestedArraysLeft--;\r\n break;\r\n case \"function\":\r\n case \"generatorfunction\":\r\n if (history.nestedFunctionsLeft <= 0) return \"undefined\";\r\n history.nestedFunctionsLeft--;\r\n break;\r\n }\r\n\r\n let refString = stringify(value, options, history);\r\n\r\n history.references.splice(referencesLength);\r\n switch (objectType) {\r\n case \"object\":\r\n history.nestedObjectsLeft++;\r\n break;\r\n case \"array\":\r\n case \"typedarray\":\r\n history.nestedArraysLeft++;\r\n break;\r\n case \"function\":\r\n case \"generatorfunction\":\r\n history.nestedFunctionsLeft++;\r\n break;\r\n }\r\n\r\n return refString;\r\n } else {\r\n refs.push({\r\n historyRef: history.references.slice(0),\r\n source: value\r\n })\r\n }\r\n return \"null\";\r\n}\r\n\r\n/**\r\n * Converts JavaScript value to string\r\n * @param value the value of any type\r\n * @param options [optional] The options of conversion\r\n */\r\nfunction javaScriptToString(value: any, options?: IJ2SOptions): string {\r\n options = options || {};\r\n let concreteOptions: IJ2SOptions = {\r\n includeFunctionProperties:\r\n options.includeFunctionProperties === undefined\r\n ? true\r\n : options.includeFunctionProperties,\r\n includeFunctionPrototype:\r\n options.includeFunctionPrototype === undefined\r\n ? true\r\n : options.includeFunctionPrototype,\r\n includeBuffers:\r\n options.includeBuffers === undefined ? true : options.includeBuffers,\r\n nestedObjectsAmount:\r\n options.nestedObjectsAmount === undefined\r\n ? Number.POSITIVE_INFINITY\r\n : options.nestedObjectsAmount,\r\n nestedArraysAmount:\r\n options.nestedArraysAmount === undefined\r\n ? Number.POSITIVE_INFINITY\r\n : options.nestedArraysAmount,\r\n nestedFunctionsAmount:\r\n options.nestedFunctionsAmount === undefined\r\n ? Number.POSITIVE_INFINITY\r\n : options.nestedFunctionsAmount\r\n };\r\n\r\n return stringify(value, concreteOptions, {\r\n references: [value],\r\n nestedObjectsLeft: concreteOptions.nestedObjectsAmount as number,\r\n nestedArraysLeft: concreteOptions.nestedArraysAmount as number,\r\n nestedFunctionsLeft: concreteOptions.nestedFunctionsAmount as number\r\n });\r\n}\r\n\r\nexport default javaScriptToString;\r\n"],"names":["types","typesToString","toString","buildInList","typedArrays","maps","sets","getInternalType","obj","call","forEach","name","toLowerCase","refs","counter","fillNativeFunctions","ext","objName","fromPrototype","protoPath","arrNames_1","Object","getOwnPropertyNames","prototype","_i","name_1","indexOf","nativeFunctions","functions","Array","JSON","Function","Date","String","numberToString","value","Number","isNaN","POSITIVE_INFINITY","NEGATIVE_INFINITY","EPSILON","MAX_SAFE_INTEGER","MIN_SAFE_INTEGER","MAX_VALUE","MIN_VALUE","Math","PI","E","LN10","LN2","LOG10E","LOG2E","SQRT1_2","SQRT2","symbolToString","Symbol","asyncIterator","hasInstance","isConcatSpreadable","iterator","match","replace","search","species","split","toPrimitive","toStringTag","unscopables","description","dateToString","getTime","toISOString","errorToString","stringify","message","fileName","lineNumber","arrayToString","options","history","length","arrayValues","reduce","x1","x2","index","references","push","str","stringifyRef","pop","attachActions","getLocalRefs","filter","x","source","localRefs","result","localName_1","actions","action","converToAction","splice","localName","r","destIndex","historyRef","sourceObj","dest","slice","path","i","destObj","typedArrayToString","arrString","from","constructor","setToString","setValues","value1","value2","set","join","mapToString","mapValues","indexValue","key","objectToString","objectValues","propertyName","hasOwnProperty","propertyValue","test","functionPropertiesToString","functionName","functionToString","functionObject","includeFunctionProperties","functionPrototype","includeFunctionPrototype","functionStr","nfName","arrayBufferToString","includeBuffers","Int8Array","dataViewToString","buffer","byteOffset","byteLength","getObjectType","objectType","referencesLength","nestedObjectsLeft","nestedArraysLeft","nestedFunctionsLeft","refString","javaScriptToString","concreteOptions","undefined","nestedObjectsAmount","nestedArraysAmount","nestedFunctionsAmount"],"mappings":"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"} \ No newline at end of file diff --git a/dist/javascripttostring.min.umd.js b/dist/javascripttostring.min.umd.js deleted file mode 100644 index 9c7f4ef..0000000 --- a/dist/javascripttostring.min.umd.js +++ /dev/null @@ -1,14 +0,0 @@ -(function (global, factory) { - typeof exports === 'object' && typeof module !== 'undefined' ? module.exports = factory() : - typeof define === 'function' && define.amd ? define(factory) : - (global = typeof globalThis !== 'undefined' ? globalThis : global || self, global.javaScriptToString = factory()); -}(this, (function () { 'use strict'; - - var types={},typesToString=types.toString,buildInList=["Boolean","Number","String","Function","Array","Date","RegExp","Object","Error","Promise","Generator","GeneratorFunction","ArrayBuffer","DataView"],typedArrays=["Int8Array","Uint8Array","Uint8ClampedArray","Int16Array","Uint16Array","Int32Array","Uint32Array","Float32Array","Float64Array","BigInt64Array","BigUint64Array"],maps=["Map","WeakMap"],sets=["Set","WeakSet"];function getInternalType(t){return null==t?t+"":"object"==typeof t||"function"==typeof t?types[typesToString.call(t)]||"object":typeof t}buildInList.forEach((function(t){types["[object "+t+"]"]=t.toLowerCase();})),maps.forEach((function(t){types["[object "+t+"]"]="map";})),sets.forEach((function(t){types["[object "+t+"]"]="set";})),typedArrays.forEach((function(t){types["[object "+t+"]"]="typedarray";})); - - var refs=[],counter=0;function fillNativeFunctions(e,r,n,t){void 0===t&&(t=!0);for(var i=t?".prototype.":".",o=0,a=Object.getOwnPropertyNames(t?r.prototype:r);o0){var n="___j2s_"+(counter=counter++%Number.MAX_SAFE_INTEGER),t=e.reduce((function(e,r){var t=converToAction(n,r);return refs.splice(refs.indexOf(r),1),e+t}),"");return "(function(){ var "+n+" = "+r+"; "+t+" return "+n+"; }())"}return r}function converToAction(e,r){var n=r.historyRef.indexOf(r.source);if(n<0)return "";for(var t,i=r.historyRef.slice(n),o="",a=0;a-1&&a.length<100)for(var u in nativeFunctions)nativeFunctions[u]===e&&(a=u);return i||o?attachActions(getLocalRefs(e),"(function(){\n var "+t+" = "+String(a)+";\n "+i+"\n "+o+"\n return "+t+";\n}())"):a}function arrayBufferToString(e,r,n){return r.includeBuffers?"("+typedArrayToString(new Int8Array(e),r,n)+").buffer":"undefined"}function dataViewToString(e,r,n){return r.includeBuffers?"new DataView("+arrayBufferToString(e.buffer,r,n)+", "+e.byteOffset+", "+e.byteLength+")":"undefined"}function stringify(e,r,n){switch(getInternalType(e)){case"undefined":return "undefined";case"null":return "null";case"boolean":case"regexp":return String(e);case"string":return JSON.stringify(e);case"number":return numberToString(e);case"bigint":return "BigInt("+e+")";case"symbol":return symbolToString(e);case"date":return dateToString(e);case"error":return errorToString(e);case"array":return arrayToString(e,r,n);case"typedarray":return typedArrayToString(e,r,n);case"set":return setToString(e,r,n);case"map":return mapToString(e,r,n);case"object":return objectToString(e,r,n);case"function":case"generatorfunction":return functionToString(e,r,n);case"arraybuffer":return arrayBufferToString(e,r,n);case"dataview":return dataViewToString(e,r,n);case"promise":case"generator":return "undefined";default:return JSON.stringify(e)}}function stringifyRef(e,r,n){var t=n.references.indexOf(e);if(t<0||"string"==typeof n.references[t]){var i=getInternalType(e),o=n.references.length;switch(n.references.push(e),i){case"object":if(n.nestedObjectsLeft<=0)return "undefined";n.nestedObjectsLeft--;break;case"array":case"typedarray":if(n.nestedArraysLeft<=0)return "undefined";n.nestedArraysLeft--;break;case"function":case"generatorfunction":if(n.nestedFunctionsLeft<=0)return "undefined";n.nestedFunctionsLeft--;}var a=stringify(e,r,n);switch(n.references.splice(o),i){case"object":n.nestedObjectsLeft++;break;case"array":case"typedarray":n.nestedArraysLeft++;break;case"function":case"generatorfunction":n.nestedFunctionsLeft++;}return a}return refs.push({historyRef:n.references.slice(0),source:e}),"null"}function javaScriptToString(e,r){var n={includeFunctionProperties:void 0===(r=r||{}).includeFunctionProperties||r.includeFunctionProperties,includeFunctionPrototype:void 0===r.includeFunctionPrototype||r.includeFunctionPrototype,includeBuffers:void 0===r.includeBuffers||r.includeBuffers,nestedObjectsAmount:void 0===r.nestedObjectsAmount?Number.POSITIVE_INFINITY:r.nestedObjectsAmount,nestedArraysAmount:void 0===r.nestedArraysAmount?Number.POSITIVE_INFINITY:r.nestedArraysAmount,nestedFunctionsAmount:void 0===r.nestedFunctionsAmount?Number.POSITIVE_INFINITY:r.nestedFunctionsAmount};return stringify(e,n,{references:[e],nestedObjectsLeft:n.nestedObjectsAmount,nestedArraysLeft:n.nestedArraysAmount,nestedFunctionsLeft:n.nestedFunctionsAmount})} - - return javaScriptToString; - -}))); -//# sourceMappingURL=javascripttostring.min.umd.js.map diff --git a/dist/javascripttostring.min.umd.js.map b/dist/javascripttostring.min.umd.js.map deleted file mode 100644 index 51206b6..0000000 --- a/dist/javascripttostring.min.umd.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"javascripttostring.min.umd.js","sources":["../node_modules/@lopatnov/get-internal-type/dist/get-internal-type.es.js","../src/javascripttostring.ts"],"sourcesContent":["var types = {}, typesToString = types.toString, buildInList = [\r\n \"Boolean\",\r\n \"Number\",\r\n \"String\",\r\n \"Function\",\r\n \"Array\",\r\n \"Date\",\r\n \"RegExp\",\r\n \"Object\",\r\n \"Error\",\r\n \"Promise\",\r\n \"Generator\",\r\n \"GeneratorFunction\",\r\n \"ArrayBuffer\",\r\n \"DataView\"\r\n], typedArrays = [\r\n \"Int8Array\",\r\n \"Uint8Array\",\r\n \"Uint8ClampedArray\",\r\n \"Int16Array\",\r\n \"Uint16Array\",\r\n \"Int32Array\",\r\n \"Uint32Array\",\r\n \"Float32Array\",\r\n \"Float64Array\",\r\n \"BigInt64Array\",\r\n \"BigUint64Array\"\r\n], maps = [\"Map\", \"WeakMap\"], sets = [\"Set\", \"WeakSet\"];\r\nbuildInList.forEach(function (name) {\r\n types[\"[object \" + name + \"]\"] = name.toLowerCase();\r\n});\r\nmaps.forEach(function (name) {\r\n types[\"[object \" + name + \"]\"] = \"map\";\r\n});\r\nsets.forEach(function (name) {\r\n types[\"[object \" + name + \"]\"] = \"set\";\r\n});\r\ntypedArrays.forEach(function (name) {\r\n types[\"[object \" + name + \"]\"] = \"typedarray\";\r\n});\r\nfunction getInternalType(obj) {\r\n return obj == null\r\n ? obj + \"\"\r\n : typeof obj === \"object\" || typeof obj === \"function\"\r\n ? types[typesToString.call(obj)] || \"object\"\r\n : typeof obj;\r\n}\n\nexport default getInternalType;\n//# sourceMappingURL=get-internal-type.es.js.map\n","import getObjectType from \"@lopatnov/get-internal-type\";\r\n\r\nexport interface IJ2SOptions {\r\n includeFunctionProperties?: boolean; // default true\r\n includeFunctionPrototype?: boolean; // default true\r\n includeBuffers?: boolean; // default true\r\n nestedObjectsAmount?: number; // default Number.POSITIVE_INFINITY\r\n nestedArraysAmount?: number; // default Number.POSITIVE_INFINITY\r\n nestedFunctionsAmount?: number; // default Number.POSITIVE_INFINITY\r\n}\r\n\r\ninterface RefInstance {\r\n historyRef: Array,\r\n source: any\r\n}\r\n\r\nvar refs: RefInstance[] = [];\r\nvar counter = 0;\r\n\r\ninterface IJ2SHistory {\r\n references: any[];\r\n nestedObjectsLeft: number;\r\n nestedArraysLeft: number;\r\n nestedFunctionsLeft: number;\r\n}\r\n\r\nfunction fillNativeFunctions(ext: any, obj: any, objName: string, fromPrototype: boolean = true) {\r\n const arrNames = Object.getOwnPropertyNames(fromPrototype ? obj.prototype: obj);\r\n const protoPath = fromPrototype ? '.prototype.' : '.';\r\n for (let name of arrNames) {\r\n if (['caller', 'callee', 'arguments'].indexOf(name) < 0) {\r\n ext[`${objName}${protoPath}${name}`] = fromPrototype ? obj.prototype[name as any] : obj[name as any];\r\n }\r\n }\r\n}\r\n\r\nconst nativeFunctions = (function(){\r\n const functions: any = {};\r\n fillNativeFunctions(functions, Array, 'Array', false);\r\n fillNativeFunctions(functions, Array, 'Array');\r\n fillNativeFunctions(functions, JSON, 'JSON', false);\r\n fillNativeFunctions(functions, Object, 'Object', false);\r\n fillNativeFunctions(functions, Object, 'Object');\r\n fillNativeFunctions(functions, Function, 'Function', false);\r\n fillNativeFunctions(functions, Function, 'Function');\r\n fillNativeFunctions(functions, Date, 'Date', false);\r\n fillNativeFunctions(functions, String, 'String');\r\n functions.Function = Function;\r\n return functions;\r\n}());\r\n\r\nfunction numberToString(value: number): string {\r\n if (Number.isNaN(value)) {\r\n return \"Number.NaN\";\r\n }\r\n switch (value) {\r\n case Number.POSITIVE_INFINITY:\r\n return \"Number.POSITIVE_INFINITY\";\r\n case Number.NEGATIVE_INFINITY:\r\n return \"Number.NEGATIVE_INFINITY\";\r\n case Number.EPSILON:\r\n return \"Number.EPSILON\";\r\n case Number.MAX_SAFE_INTEGER:\r\n return \"Number.MAX_SAFE_INTEGER\";\r\n case Number.MIN_SAFE_INTEGER:\r\n return \"Number.MIN_SAFE_INTEGER\";\r\n case Number.MAX_VALUE:\r\n return \"Number.MAX_VALUE\";\r\n case Number.MIN_VALUE:\r\n return \"Number.MIN_VALUE\";\r\n case Math.PI:\r\n return \"Math.PI\";\r\n case Math.E:\r\n return \"Math.E\";\r\n case Math.LN10:\r\n return \"Math.LN10\";\r\n case Math.LN2:\r\n return \"Math.LN2\";\r\n case Math.LOG10E:\r\n return \"Math.LOG10E\";\r\n case Math.LOG2E:\r\n return \"Math.LOG2E\";\r\n case Math.SQRT1_2:\r\n return \"Math.SQRT1_2\";\r\n case Math.SQRT2:\r\n return \"Math.SQRT2\";\r\n default:\r\n return String(value);\r\n }\r\n}\r\n\r\nfunction symbolToString(value: any): string {\r\n switch (value) {\r\n case Symbol.asyncIterator:\r\n case Symbol.hasInstance:\r\n case Symbol.isConcatSpreadable:\r\n case Symbol.iterator:\r\n case Symbol.match:\r\n case Symbol.prototype:\r\n case Symbol.replace:\r\n case Symbol.search:\r\n case Symbol.species:\r\n case Symbol.split:\r\n case Symbol.toPrimitive:\r\n case Symbol.toStringTag:\r\n case Symbol.unscopables:\r\n return value.description;\r\n default:\r\n let description = value.description ? `\"${value.description}\"` : \"\";\r\n return `Symbol(${description})`;\r\n }\r\n}\r\n\r\nfunction dateToString(value: Date): string {\r\n if (isNaN(value.getTime())) {\r\n return `new Date(${value.toString()})`;\r\n }\r\n return `new Date(${value.toISOString()})`;\r\n}\r\n\r\nfunction errorToString(value: any): string {\r\n let message = JSON.stringify(value.message),\r\n fileName = JSON.stringify(value.fileName),\r\n lineNumber = JSON.stringify(value.lineNumber);\r\n return `new Error(${message}, ${fileName}, ${lineNumber})`;\r\n}\r\n\r\nfunction arrayToString(\r\n value: Array,\r\n options: IJ2SOptions,\r\n history: IJ2SHistory\r\n): string {\r\n if (value.length === 0) return \"[]\";\r\n let arrayValues = value.reduce(\r\n (x1: any, x2: any, index: number) => {\r\n history.references.push(index.toString());\r\n let str = !!x1 ? `${x1}, ` : '';\r\n str += stringifyRef(x2,options,history);\r\n history.references.pop();\r\n return str;\r\n }, '');\r\n return attachActions(getLocalRefs(value), `[${arrayValues}]`);\r\n}\r\n\r\nfunction getLocalRefs(value: any) {\r\n return refs.filter(x => x.source === value)\r\n}\r\n\r\nfunction attachActions(localRefs: RefInstance[], result: string) {\r\n if (localRefs.length > 0) {\r\n counter = (counter++) % Number.MAX_SAFE_INTEGER;\r\n const localName = `___j2s_${counter}`;\r\n const actions = localRefs.reduce((x1: string, x2: RefInstance) => {\r\n const action = converToAction(localName, x2);\r\n refs.splice(refs.indexOf(x2), 1);\r\n return x1 + action;\r\n }, '');\r\n return `(function(){ var ${localName} = ${result}; ${actions} return ${localName}; }())`;\r\n }\r\n return result;\r\n}\r\n\r\nfunction converToAction(localName: string, r: RefInstance) {\r\n const destIndex = r.historyRef.indexOf(r.source);\r\n if (destIndex < 0) {\r\n return '';\r\n }\r\n\r\n const dest = r.historyRef.slice(destIndex);\r\n let sourceObj: any;\r\n let path = '';\r\n for (let i = 0; i < dest.length; i++) {\r\n const destObj = dest[i];\r\n if (destObj === r.source) {\r\n path = localName;\r\n sourceObj = r.source;\r\n } else if (typeof destObj === 'string') {\r\n path += `['${destObj.replace(/'/gi, '\\\\\\'')}']`;\r\n sourceObj = sourceObj[destObj];\r\n } else if (destObj !== sourceObj) {\r\n return '';\r\n }\r\n }\r\n\r\n return `${path} = ${localName}; `;\r\n}\r\n\r\nfunction typedArrayToString(\r\n value: any,\r\n options: IJ2SOptions,\r\n history: IJ2SHistory\r\n): string {\r\n let arr = Array.from(value),\r\n arrString = arrayToString(arr, options, history),\r\n constructorName = value.constructor.name;\r\n return `new ${constructorName}(${arrString})`;\r\n}\r\n\r\nfunction setToString(\r\n value: Set,\r\n options: IJ2SOptions,\r\n history: IJ2SHistory\r\n): string {\r\n let setValues: string[] = [];\r\n\r\n value.forEach((value1: any, value2: any, set: Set) => {\r\n setValues.push(stringifyRef(value2, options, history));\r\n });\r\n\r\n if (setValues.length === 0) return \"new Set()\";\r\n\r\n return `new Set([${setValues.join(\", \")}])`;\r\n}\r\n\r\nfunction mapToString(\r\n value: Map,\r\n options: IJ2SOptions,\r\n history: IJ2SHistory\r\n): string {\r\n let mapValues: string[] = [];\r\n\r\n value.forEach((indexValue: any, key: any) => {\r\n mapValues.push(\r\n `[${stringifyRef(key, options, history)}, ${stringifyRef(\r\n indexValue,\r\n options,\r\n history\r\n )}]`\r\n );\r\n });\r\n\r\n if (mapValues.length === 0) return \"new Map()\";\r\n\r\n return `new Map([${mapValues.join(\", \")}])`;\r\n}\r\n\r\nfunction objectToString(\r\n value: any,\r\n options: IJ2SOptions,\r\n history: IJ2SHistory\r\n): string {\r\n let objectValues = [];\r\n\r\n for (let propertyName in value) {\r\n if (value.hasOwnProperty(propertyName)) {\r\n history.references.push(propertyName);\r\n let propertyValue = stringifyRef(value[propertyName], options, history);\r\n history.references.pop();\r\n if (propertyValue !== \"undefined\") {\r\n if (!(/^[a-zA-Z]+$/).test(propertyName)) {\r\n propertyName = `\"${propertyName}\"`;\r\n }\r\n objectValues.push(`${propertyName}: ${propertyValue}`);\r\n }\r\n }\r\n }\r\n\r\n if (objectValues.length === 0) return \"{}\";\r\n\r\n return attachActions(getLocalRefs(value), `{\\n${objectValues.join(\",\\n\")}\\n}`);\r\n}\r\n\r\nfunction functionPropertiesToString(\r\n functionName: string,\r\n value: any,\r\n options: IJ2SOptions,\r\n history: IJ2SHistory\r\n): string {\r\n let result = \"\";\r\n for (let propertyName in value) {\r\n if (value.hasOwnProperty(propertyName)) {\r\n history.references.push(propertyName);\r\n let propertyValue = stringifyRef(value[propertyName], options, history);\r\n history.references.pop();\r\n if (propertyValue !== \"undefined\") {\r\n result += `${functionName}.${propertyName} = ${propertyValue};\\n`;\r\n }\r\n }\r\n }\r\n return result;\r\n}\r\n\r\nfunction functionToString(\r\n value: any,\r\n options: IJ2SOptions,\r\n history: IJ2SHistory\r\n): string {\r\n let functionName = value.name || \"anonymousFunction\";\r\n let functionObject = options.includeFunctionProperties\r\n ? functionPropertiesToString(functionName, value, options, history)\r\n : \"\";\r\n history.references.push('prototype');\r\n let functionPrototype = options.includeFunctionPrototype\r\n ? functionPropertiesToString(\r\n `${functionName}.prototype`,\r\n value.prototype,\r\n options,\r\n history\r\n )\r\n : \"\";\r\n history.references.pop();\r\n\r\n let functionStr = String(value);\r\n if (functionStr.indexOf('[native code]') > -1 && functionStr.length < 100) {\r\n for (const nfName in nativeFunctions) {\r\n if (nativeFunctions[nfName] === value) {\r\n functionStr = nfName\r\n }\r\n }\r\n }\r\n if (!functionObject && !functionPrototype) {\r\n return functionStr;\r\n }\r\n\r\n return attachActions(getLocalRefs(value), `(function(){\\n var ${functionName} = ${String(\r\n functionStr\r\n )};\\n ${functionObject}\\n ${functionPrototype}\\n return ${functionName};\\n}())`);\r\n}\r\n\r\nfunction arrayBufferToString(\r\n value: ArrayBuffer,\r\n options: IJ2SOptions,\r\n history: IJ2SHistory\r\n): string {\r\n if (!options.includeBuffers) return \"undefined\";\r\n let str = typedArrayToString(new Int8Array(value), options, history);\r\n return `(${str}).buffer`;\r\n}\r\n\r\nfunction dataViewToString(\r\n value: DataView,\r\n options: IJ2SOptions,\r\n history: IJ2SHistory\r\n): string {\r\n if (!options.includeBuffers) return \"undefined\";\r\n let bufString = arrayBufferToString(value.buffer, options, history);\r\n return `new DataView(${bufString}, ${value.byteOffset}, ${value.byteLength})`;\r\n}\r\n\r\n/**\r\n * Converts to string the value, if it wasn't before\r\n * @param value the value, that converts to string\r\n * @param references the references to stringified objects\r\n */\r\nfunction stringify(\r\n value: any,\r\n options: IJ2SOptions,\r\n history: IJ2SHistory\r\n): string {\r\n switch (getObjectType(value)) {\r\n case \"undefined\":\r\n return \"undefined\";\r\n case \"null\":\r\n return \"null\";\r\n case \"boolean\":\r\n return String(value);\r\n case \"regexp\":\r\n return String(value);\r\n case \"string\":\r\n return JSON.stringify(value);\r\n case \"number\":\r\n return numberToString(value);\r\n case \"bigint\":\r\n return `BigInt(${value})`;\r\n case \"symbol\":\r\n return symbolToString(value);\r\n case \"date\":\r\n return dateToString(value);\r\n case \"error\":\r\n return errorToString(value);\r\n case \"array\":\r\n return arrayToString(value, options, history);\r\n case \"typedarray\":\r\n return typedArrayToString(value, options, history);\r\n case \"set\":\r\n return setToString(value, options, history);\r\n case \"map\":\r\n return mapToString(value, options, history);\r\n case \"object\":\r\n return objectToString(value, options, history);\r\n case \"function\":\r\n case \"generatorfunction\":\r\n return functionToString(value, options, history);\r\n case \"arraybuffer\":\r\n return arrayBufferToString(value, options, history);\r\n case \"dataview\":\r\n return dataViewToString(value, options, history);\r\n case \"promise\":\r\n case \"generator\":\r\n return \"undefined\";\r\n default:\r\n return JSON.stringify(value);\r\n }\r\n}\r\n\r\n/**\r\n * Stringify the value, if it wasn't before\r\n * @param value the value, that converts to string\r\n * @param references the references to stringified objects\r\n */\r\nfunction stringifyRef(\r\n value: any,\r\n options: IJ2SOptions,\r\n history: IJ2SHistory\r\n): string {\r\n const index = history.references.indexOf(value);\r\n if (index < 0 || typeof(history.references[index]) === 'string') {\r\n let objectType = getObjectType(value);\r\n let referencesLength = history.references.length;\r\n history.references.push(value);\r\n switch (objectType) {\r\n case \"object\":\r\n if (history.nestedObjectsLeft <= 0) return \"undefined\";\r\n history.nestedObjectsLeft--;\r\n break;\r\n case \"array\":\r\n case \"typedarray\":\r\n if (history.nestedArraysLeft <= 0) return \"undefined\";\r\n history.nestedArraysLeft--;\r\n break;\r\n case \"function\":\r\n case \"generatorfunction\":\r\n if (history.nestedFunctionsLeft <= 0) return \"undefined\";\r\n history.nestedFunctionsLeft--;\r\n break;\r\n }\r\n\r\n let refString = stringify(value, options, history);\r\n\r\n history.references.splice(referencesLength);\r\n switch (objectType) {\r\n case \"object\":\r\n history.nestedObjectsLeft++;\r\n break;\r\n case \"array\":\r\n case \"typedarray\":\r\n history.nestedArraysLeft++;\r\n break;\r\n case \"function\":\r\n case \"generatorfunction\":\r\n history.nestedFunctionsLeft++;\r\n break;\r\n }\r\n\r\n return refString;\r\n } else {\r\n refs.push({\r\n historyRef: history.references.slice(0),\r\n source: value\r\n })\r\n }\r\n return \"null\";\r\n}\r\n\r\n/**\r\n * Converts JavaScript value to string\r\n * @param value the value of any type\r\n * @param options [optional] The options of conversion\r\n */\r\nfunction javaScriptToString(value: any, options?: IJ2SOptions): string {\r\n options = options || {};\r\n let concreteOptions: IJ2SOptions = {\r\n includeFunctionProperties:\r\n options.includeFunctionProperties === undefined\r\n ? true\r\n : options.includeFunctionProperties,\r\n includeFunctionPrototype:\r\n options.includeFunctionPrototype === undefined\r\n ? true\r\n : options.includeFunctionPrototype,\r\n includeBuffers:\r\n options.includeBuffers === undefined ? true : options.includeBuffers,\r\n nestedObjectsAmount:\r\n options.nestedObjectsAmount === undefined\r\n ? Number.POSITIVE_INFINITY\r\n : options.nestedObjectsAmount,\r\n nestedArraysAmount:\r\n options.nestedArraysAmount === undefined\r\n ? Number.POSITIVE_INFINITY\r\n : options.nestedArraysAmount,\r\n nestedFunctionsAmount:\r\n options.nestedFunctionsAmount === undefined\r\n ? Number.POSITIVE_INFINITY\r\n : options.nestedFunctionsAmount\r\n };\r\n\r\n return stringify(value, concreteOptions, {\r\n references: [value],\r\n nestedObjectsLeft: concreteOptions.nestedObjectsAmount as number,\r\n nestedArraysLeft: concreteOptions.nestedArraysAmount as number,\r\n nestedFunctionsLeft: concreteOptions.nestedFunctionsAmount as number\r\n });\r\n}\r\n\r\nexport default javaScriptToString;\r\n"],"names":["types","typesToString","toString","buildInList","typedArrays","maps","sets","getInternalType","obj","call","forEach","name","toLowerCase","refs","counter","fillNativeFunctions","ext","objName","fromPrototype","protoPath","arrNames_1","Object","getOwnPropertyNames","prototype","_i","name_1","indexOf","nativeFunctions","functions","Array","JSON","Function","Date","String","numberToString","value","Number","isNaN","POSITIVE_INFINITY","NEGATIVE_INFINITY","EPSILON","MAX_SAFE_INTEGER","MIN_SAFE_INTEGER","MAX_VALUE","MIN_VALUE","Math","PI","E","LN10","LN2","LOG10E","LOG2E","SQRT1_2","SQRT2","symbolToString","Symbol","asyncIterator","hasInstance","isConcatSpreadable","iterator","match","replace","search","species","split","toPrimitive","toStringTag","unscopables","description","dateToString","getTime","toISOString","errorToString","stringify","message","fileName","lineNumber","arrayToString","options","history","length","arrayValues","reduce","x1","x2","index","references","push","str","stringifyRef","pop","attachActions","getLocalRefs","filter","x","source","localRefs","result","localName_1","actions","action","converToAction","splice","localName","r","destIndex","historyRef","sourceObj","dest","slice","path","i","destObj","typedArrayToString","arrString","from","constructor","setToString","setValues","value1","value2","set","join","mapToString","mapValues","indexValue","key","objectToString","objectValues","propertyName","hasOwnProperty","propertyValue","test","functionPropertiesToString","functionName","functionToString","functionObject","includeFunctionProperties","functionPrototype","includeFunctionPrototype","functionStr","nfName","arrayBufferToString","includeBuffers","Int8Array","dataViewToString","buffer","byteOffset","byteLength","getObjectType","objectType","referencesLength","nestedObjectsLeft","nestedArraysLeft","nestedFunctionsLeft","refString","javaScriptToString","concreteOptions","undefined","nestedObjectsAmount","nestedArraysAmount","nestedFunctionsAmount"],"mappings":"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"} \ No newline at end of file diff --git a/dist/javascripttostring.umd.js b/dist/javascripttostring.umd.js index e18157e..dc1a8b7 100644 --- a/dist/javascripttostring.umd.js +++ b/dist/javascripttostring.umd.js @@ -4,11 +4,9 @@ (global = typeof globalThis !== 'undefined' ? globalThis : global || self, global.javaScriptToString = factory()); })(this, (function () { 'use strict'; - function __spreadArray(e,t,r){if(r||2===arguments.length)for(var n,o=0,a=t.length;o0){counter=counter++%Number.MAX_SAFE_INTEGER;var n="___j2s_".concat(counter),r=e.reduce(function(e,t){var r=converToAction(n,t);return refs.splice(refs.indexOf(t),1),e+r},"");return "(function(){ var ".concat(n," = ").concat(t,"; ").concat(r," return ").concat(n,"; }())")}return t}function converToAction(e,t){var n=t.historyRef.indexOf(t.source);if(n<0)return "";for(var r,c=t.historyRef.slice(n),o="",a=0;a-1&&a.length<100)for(var i in nativeFunctions)nativeFunctions[i]===e&&(a=i);return c||o?attachActions(getLocalRefs(e),"(function(){\n var ".concat(r," = ").concat(String(a),";\n ").concat(c,"\n ").concat(o,"\n return ").concat(r,";\n}())")):a}function arrayBufferToString(e,t,n){if(!t.includeBuffers)return "undefined";var r=typedArrayToString(new Int8Array(e),t,n);return "(".concat(r,").buffer")}function dataViewToString(e,t,n){if(!t.includeBuffers)return "undefined";var r=arrayBufferToString(e.buffer,t,n);return "new DataView(".concat(r,", ").concat(e.byteOffset,", ").concat(e.byteLength,")")}function stringify(e,t,n){switch(getInternalType(e)){case "undefined":case "promise":case "generator":return "undefined";case "null":return "null";case "boolean":case "regexp":return String(e);case "string":default:return JSON.stringify(e);case "number":return numberToString(e);case "bigint":return "BigInt(".concat(e,")");case "symbol":return symbolToString(e);case "date":return dateToString(e);case "error":return errorToString(e);case "array":return arrayToString(e,t,n);case "typedarray":return typedArrayToString(e,t,n);case "set":return setToString(e,t,n);case "map":return mapToString(e,t,n);case "object":return objectToString(e,t,n);case "function":case "generatorfunction":return functionToString(e,t,n);case "arraybuffer":return arrayBufferToString(e,t,n);case "dataview":return dataViewToString(e,t,n)}}function stringifyRef(e,t,n){var r="object"==typeof e&&null!==e||"function"==typeof e,c=n.references.indexOf(e);if(r&&n.visited.has(e)&&c<0)return crossRefs.push({destPath:__spreadArray([],n.currentPath,true),sourcePath:n.visited.get(e)||[]}),"null";if(c<0||"string"==typeof n.references[c]){var o=getInternalType(e),a=n.references.length;switch(r&&!n.visited.has(e)&&n.visited.set(e,__spreadArray([],n.currentPath,true)),n.references.push(e),o){case "object":if(n.nestedObjectsLeft<=0)return "undefined";n.nestedObjectsLeft--;break;case "array":case "typedarray":if(n.nestedArraysLeft<=0)return "undefined";n.nestedArraysLeft--;break;case "function":case "generatorfunction":if(n.nestedFunctionsLeft<=0)return "undefined";n.nestedFunctionsLeft--;}var i=stringify(e,t,n);switch(n.references.splice(a),o){case "object":n.nestedObjectsLeft++;break;case "array":case "typedarray":n.nestedArraysLeft++;break;case "function":case "generatorfunction":n.nestedFunctionsLeft++;}return i}return refs.push({historyRef:n.references.slice(0),source:e}),"null"}function attachCrossRefActions(e,t){if(0===e.length)return t;counter=counter++%Number.MAX_SAFE_INTEGER;var n="___j2s_".concat(counter),r=e.map(function(e){var t=e.destPath.map(function(e){return "['".concat(e.replace(/'/gi,"\\'"),"']")}).join(""),r=e.sourcePath.map(function(e){return "['".concat(e.replace(/'/gi,"\\'"),"']")}).join("");return "".concat(n).concat(t," = ").concat(n).concat(r,"; ")}).join("");return "(function(){ var ".concat(n," = ").concat(t,"; ").concat(r,"return ").concat(n,"; }())")}function javaScriptToString(e,t){var n={includeFunctionProperties:void 0===(t=t||{}).includeFunctionProperties||t.includeFunctionProperties,includeFunctionPrototype:void 0===t.includeFunctionPrototype||t.includeFunctionPrototype,includeBuffers:void 0===t.includeBuffers||t.includeBuffers,nestedObjectsAmount:void 0===t.nestedObjectsAmount?Number.POSITIVE_INFINITY:t.nestedObjectsAmount,nestedArraysAmount:void 0===t.nestedArraysAmount?Number.POSITIVE_INFINITY:t.nestedArraysAmount,nestedFunctionsAmount:void 0===t.nestedFunctionsAmount?Number.POSITIVE_INFINITY:t.nestedFunctionsAmount};refs=[],crossRefs=[],counter=0;var r=new Map;r.set(e,[]);var c=stringify(e,n,{references:[e],nestedObjectsLeft:n.nestedObjectsAmount,nestedArraysLeft:n.nestedArraysAmount,nestedFunctionsLeft:n.nestedFunctionsAmount,visited:r,currentPath:[]}),o=attachActions(getLocalRefs(e),c);return attachCrossRefActions(crossRefs,o)} + var refs=[],crossRefs=[],counter=0;function fillNativeFunctions(e,t,n,r=true){const o=Object.getOwnPropertyNames(r?t.prototype:t),s=r?".prototype.":".";for(const i of o)["caller","callee","arguments"].indexOf(i)<0&&(e[`${n}${s}${i}`]=r?t.prototype[i]:t[i]);}const nativeFunctions=(()=>{const e={};return fillNativeFunctions(e,Array,"Array",false),fillNativeFunctions(e,Array,"Array"),fillNativeFunctions(e,JSON,"JSON",false),fillNativeFunctions(e,Object,"Object",false),fillNativeFunctions(e,Object,"Object"),fillNativeFunctions(e,Function,"Function",false),fillNativeFunctions(e,Function,"Function"),fillNativeFunctions(e,Date,"Date",false),fillNativeFunctions(e,String,"String"),e.Function=Function,e})();function numberToString(e){if(Number.isNaN(e))return "Number.NaN";switch(e){case Number.POSITIVE_INFINITY:return "Number.POSITIVE_INFINITY";case Number.NEGATIVE_INFINITY:return "Number.NEGATIVE_INFINITY";case Number.EPSILON:return "Number.EPSILON";case Number.MAX_SAFE_INTEGER:return "Number.MAX_SAFE_INTEGER";case Number.MIN_SAFE_INTEGER:return "Number.MIN_SAFE_INTEGER";case Number.MAX_VALUE:return "Number.MAX_VALUE";case Number.MIN_VALUE:return "Number.MIN_VALUE";case Math.PI:return "Math.PI";case Math.E:return "Math.E";case Math.LN10:return "Math.LN10";case Math.LN2:return "Math.LN2";case Math.LOG10E:return "Math.LOG10E";case Math.LOG2E:return "Math.LOG2E";case Math.SQRT1_2:return "Math.SQRT1_2";case Math.SQRT2:return "Math.SQRT2";default:return String(e)}}function symbolToString(e){switch(e){case Symbol.asyncIterator:case Symbol.hasInstance:case Symbol.isConcatSpreadable:case Symbol.iterator:case Symbol.match:case Symbol.prototype:case Symbol.replace:case Symbol.search:case Symbol.species:case Symbol.split:case Symbol.toPrimitive:case Symbol.toStringTag:case Symbol.unscopables:return e.description;default:return `Symbol(${e.description?`"${e.description}"`:""})`}}function dateToString(e){return isNaN(e.getTime())?`new Date(${e.toString()})`:`new Date(${e.toISOString()})`}function errorToString(e){return `new Error(${JSON.stringify(e.message)}, ${JSON.stringify(e.fileName)}, ${JSON.stringify(e.lineNumber)})`}function arrayToString(e,t,n){if(0===e.length)return "[]";const r=e.reduce((e,r,o)=>{const s=o.toString();n.references.push(s),n.currentPath.push(s);let i=e?`${e}, `:"";return i+=stringifyRef(r,t,n),n.currentPath.pop(),n.references.pop(),i},"");return attachActions(getLocalRefs(e),`[${r}]`)}function getLocalRefs(e){return refs.filter(t=>t.source===e)}function attachActions(e,t){if(e.length>0){const n=`___j2s_${counter=counter++%Number.MAX_SAFE_INTEGER}`,r=e.reduce((e,t)=>{const r=converToAction(n,t);return refs.splice(refs.indexOf(t),1),e+r},"");return `(function(){ var ${n} = ${t}; ${r} return ${n}; }())`}return t}function converToAction(e,t){const n=t.historyRef.indexOf(t.source);if(n<0)return "";const r=t.historyRef.slice(n);let o,s="";for(let n=0;n{r.push(stringifyRef(o,t,n));}),0===r.length?"new Set()":`new Set([${r.join(", ")}])`}function mapToString(e,t,n){const r=[];return e.forEach((e,o)=>{r.push(`[${stringifyRef(o,t,n)}, ${stringifyRef(e,t,n)}]`);}),0===r.length?"new Map()":`new Map([${r.join(", ")}])`}function objectToString(e,t,n){const r=[];for(let o in e)if(e.hasOwnProperty(o)){n.references.push(o),n.currentPath.push(o);const s=stringifyRef(e[o],t,n);n.currentPath.pop(),n.references.pop(),"undefined"!==s&&(/^[a-zA-Z]+$/.test(o)||(o=`"${o}"`),r.push(`${o}: ${s}`));}return 0===r.length?"{}":attachActions(getLocalRefs(e),`{\n${r.join(",\n")}\n}`)}function functionPropertiesToString(e,t,n,r){let o="";for(const s in t)if(t.hasOwnProperty(s)){r.references.push(s),r.currentPath.push(s);const i=stringifyRef(t[s],n,r);r.currentPath.pop(),r.references.pop(),"undefined"!==i&&(o+=`${e}.${s} = ${i};\n`);}return o}function functionToString(e,t,n){const r=e.name||"anonymousFunction",o=t.includeFunctionProperties?functionPropertiesToString(r,e,t,n):"";n.references.push("prototype"),n.currentPath.push("prototype");const s=t.includeFunctionPrototype?functionPropertiesToString(`${r}.prototype`,e.prototype,t,n):"";n.currentPath.pop(),n.references.pop();let i=String(e);if(i.indexOf("[native code]")>-1&&i.length<100)for(const t in nativeFunctions)nativeFunctions[t]===e&&(i=t);return o||s?attachActions(getLocalRefs(e),`(function(){\n var ${r} = ${String(i)};\n ${o}\n ${s}\n return ${r};\n}())`):i}function arrayBufferToString(e,t,n){if(!t.includeBuffers)return "undefined";return `(${typedArrayToString(new Int8Array(e),t,n)}).buffer`}function dataViewToString(e,t,n){if(!t.includeBuffers)return "undefined";return `new DataView(${arrayBufferToString(e.buffer,t,n)}, ${e.byteOffset}, ${e.byteLength})`}function stringify(e,t,n){switch(getInternalType(e)){case "undefined":case "promise":case "generator":return "undefined";case "null":return "null";case "boolean":case "regexp":return String(e);case "string":default:return JSON.stringify(e);case "number":return numberToString(e);case "bigint":return `BigInt(${e})`;case "symbol":return symbolToString(e);case "date":return dateToString(e);case "error":return errorToString(e);case "array":return arrayToString(e,t,n);case "typedarray":return typedArrayToString(e,t,n);case "set":return setToString(e,t,n);case "map":return mapToString(e,t,n);case "object":return objectToString(e,t,n);case "function":case "generatorfunction":return functionToString(e,t,n);case "arraybuffer":return arrayBufferToString(e,t,n);case "dataview":return dataViewToString(e,t,n)}}function stringifyRef(e,t,n){const r="object"==typeof e&&null!==e||"function"==typeof e,o=n.references.indexOf(e);if(r&&n.visited.has(e)&&o<0)return crossRefs.push({destPath:[...n.currentPath],sourcePath:n.visited.get(e)||[]}),"null";if(o<0||"string"==typeof n.references[o]){const o=getInternalType(e),s=n.references.length;switch(r&&!n.visited.has(e)&&n.visited.set(e,[...n.currentPath]),n.references.push(e),o){case "object":if(n.nestedObjectsLeft<=0)return "undefined";n.nestedObjectsLeft--;break;case "array":case "typedarray":if(n.nestedArraysLeft<=0)return "undefined";n.nestedArraysLeft--;break;case "function":case "generatorfunction":if(n.nestedFunctionsLeft<=0)return "undefined";n.nestedFunctionsLeft--;}const i=stringify(e,t,n);switch(n.references.splice(s),o){case "object":n.nestedObjectsLeft++;break;case "array":case "typedarray":n.nestedArraysLeft++;break;case "function":case "generatorfunction":n.nestedFunctionsLeft++;}return i}return refs.push({historyRef:n.references.slice(0),source:e}),"null"}function attachCrossRefActions(e,t){if(0===e.length)return t;const n=`___j2s_${counter=counter++%Number.MAX_SAFE_INTEGER}`,r=e.map(e=>{const t=e.destPath.map(e=>`['${e.replace(/'/gi,"\\'")}']`).join(""),r=e.sourcePath.map(e=>`['${e.replace(/'/gi,"\\'")}']`).join("");return `${n}${t} = ${n}${r}; `}).join("");return `(function(){ var ${n} = ${t}; ${r}return ${n}; }())`}function javaScriptToString(e,t){const n={includeFunctionProperties:void 0===(t=t||{}).includeFunctionProperties||t.includeFunctionProperties,includeFunctionPrototype:void 0===t.includeFunctionPrototype||t.includeFunctionPrototype,includeBuffers:void 0===t.includeBuffers||t.includeBuffers,nestedObjectsAmount:void 0===t.nestedObjectsAmount?Number.POSITIVE_INFINITY:t.nestedObjectsAmount,nestedArraysAmount:void 0===t.nestedArraysAmount?Number.POSITIVE_INFINITY:t.nestedArraysAmount,nestedFunctionsAmount:void 0===t.nestedFunctionsAmount?Number.POSITIVE_INFINITY:t.nestedFunctionsAmount};refs=[],crossRefs=[],counter=0;const r=new Map;r.set(e,[]);const o=stringify(e,n,{references:[e],nestedObjectsLeft:n.nestedObjectsAmount,nestedArraysLeft:n.nestedArraysAmount,nestedFunctionsLeft:n.nestedFunctionsAmount,visited:r,currentPath:[]}),s=attachActions(getLocalRefs(e),o);return attachCrossRefActions(crossRefs,s)} return javaScriptToString; diff --git a/dist/javascripttostring.umd.js.map b/dist/javascripttostring.umd.js.map index 1a97054..9cc11cd 100644 --- a/dist/javascripttostring.umd.js.map +++ b/dist/javascripttostring.umd.js.map @@ -1 +1 @@ -{"version":3,"file":"javascripttostring.umd.js","sources":["../node_modules/tslib/tslib.es6.js","../node_modules/@lopatnov/get-internal-type/dist/get-internal-type.es.js","../src/javascripttostring.ts"],"sourcesContent":["/******************************************************************************\r\nCopyright (c) Microsoft Corporation.\r\n\r\nPermission to use, copy, modify, and/or distribute this software for any\r\npurpose with or without fee is hereby granted.\r\n\r\nTHE SOFTWARE IS PROVIDED \"AS IS\" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH\r\nREGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY\r\nAND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,\r\nINDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM\r\nLOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR\r\nOTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR\r\nPERFORMANCE OF THIS SOFTWARE.\r\n***************************************************************************** */\r\n/* global Reflect, Promise, SuppressedError, Symbol, Iterator */\r\n\r\nvar extendStatics = function(d, b) {\r\n extendStatics = Object.setPrototypeOf ||\r\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\r\n function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };\r\n return extendStatics(d, b);\r\n};\r\n\r\nexport function __extends(d, b) {\r\n if (typeof b !== \"function\" && b !== null)\r\n throw new TypeError(\"Class extends value \" + String(b) + \" is not a constructor or null\");\r\n extendStatics(d, b);\r\n function __() { this.constructor = d; }\r\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\r\n}\r\n\r\nexport var __assign = function() {\r\n __assign = Object.assign || function __assign(t) {\r\n for (var s, i = 1, n = arguments.length; i < n; i++) {\r\n s = arguments[i];\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];\r\n }\r\n return t;\r\n }\r\n return __assign.apply(this, arguments);\r\n}\r\n\r\nexport function __rest(s, e) {\r\n var t = {};\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)\r\n t[p] = s[p];\r\n if (s != null && typeof Object.getOwnPropertySymbols === \"function\")\r\n for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {\r\n if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))\r\n t[p[i]] = s[p[i]];\r\n }\r\n return t;\r\n}\r\n\r\nexport function __decorate(decorators, target, key, desc) {\r\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\r\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\r\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\r\n return c > 3 && r && Object.defineProperty(target, key, r), r;\r\n}\r\n\r\nexport function __param(paramIndex, decorator) {\r\n return function (target, key) { decorator(target, key, paramIndex); }\r\n}\r\n\r\nexport function __esDecorate(ctor, descriptorIn, decorators, contextIn, initializers, extraInitializers) {\r\n function accept(f) { if (f !== void 0 && typeof f !== \"function\") throw new TypeError(\"Function expected\"); return f; }\r\n var kind = contextIn.kind, key = kind === \"getter\" ? \"get\" : kind === \"setter\" ? \"set\" : \"value\";\r\n var target = !descriptorIn && ctor ? contextIn[\"static\"] ? ctor : ctor.prototype : null;\r\n var descriptor = descriptorIn || (target ? Object.getOwnPropertyDescriptor(target, contextIn.name) : {});\r\n var _, done = false;\r\n for (var i = decorators.length - 1; i >= 0; i--) {\r\n var context = {};\r\n for (var p in contextIn) context[p] = p === \"access\" ? {} : contextIn[p];\r\n for (var p in contextIn.access) context.access[p] = contextIn.access[p];\r\n context.addInitializer = function (f) { if (done) throw new TypeError(\"Cannot add initializers after decoration has completed\"); extraInitializers.push(accept(f || null)); };\r\n var result = (0, decorators[i])(kind === \"accessor\" ? { get: descriptor.get, set: descriptor.set } : descriptor[key], context);\r\n if (kind === \"accessor\") {\r\n if (result === void 0) continue;\r\n if (result === null || typeof result !== \"object\") throw new TypeError(\"Object expected\");\r\n if (_ = accept(result.get)) descriptor.get = _;\r\n if (_ = accept(result.set)) descriptor.set = _;\r\n if (_ = accept(result.init)) initializers.unshift(_);\r\n }\r\n else if (_ = accept(result)) {\r\n if (kind === \"field\") initializers.unshift(_);\r\n else descriptor[key] = _;\r\n }\r\n }\r\n if (target) Object.defineProperty(target, contextIn.name, descriptor);\r\n done = true;\r\n};\r\n\r\nexport function __runInitializers(thisArg, initializers, value) {\r\n var useValue = arguments.length > 2;\r\n for (var i = 0; i < initializers.length; i++) {\r\n value = useValue ? initializers[i].call(thisArg, value) : initializers[i].call(thisArg);\r\n }\r\n return useValue ? value : void 0;\r\n};\r\n\r\nexport function __propKey(x) {\r\n return typeof x === \"symbol\" ? x : \"\".concat(x);\r\n};\r\n\r\nexport function __setFunctionName(f, name, prefix) {\r\n if (typeof name === \"symbol\") name = name.description ? \"[\".concat(name.description, \"]\") : \"\";\r\n return Object.defineProperty(f, \"name\", { configurable: true, value: prefix ? \"\".concat(prefix, \" \", name) : name });\r\n};\r\n\r\nexport function __metadata(metadataKey, metadataValue) {\r\n if (typeof Reflect === \"object\" && typeof Reflect.metadata === \"function\") return Reflect.metadata(metadataKey, metadataValue);\r\n}\r\n\r\nexport function __awaiter(thisArg, _arguments, P, generator) {\r\n function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }\r\n return new (P || (P = Promise))(function (resolve, reject) {\r\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\r\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\r\n function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }\r\n step((generator = generator.apply(thisArg, _arguments || [])).next());\r\n });\r\n}\r\n\r\nexport function __generator(thisArg, body) {\r\n var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g = Object.create((typeof Iterator === \"function\" ? Iterator : Object).prototype);\r\n return g.next = verb(0), g[\"throw\"] = verb(1), g[\"return\"] = verb(2), typeof Symbol === \"function\" && (g[Symbol.iterator] = function() { return this; }), g;\r\n function verb(n) { return function (v) { return step([n, v]); }; }\r\n function step(op) {\r\n if (f) throw new TypeError(\"Generator is already executing.\");\r\n while (g && (g = 0, op[0] && (_ = 0)), _) try {\r\n if (f = 1, y && (t = op[0] & 2 ? y[\"return\"] : op[0] ? y[\"throw\"] || ((t = y[\"return\"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;\r\n if (y = 0, t) op = [op[0] & 2, t.value];\r\n switch (op[0]) {\r\n case 0: case 1: t = op; break;\r\n case 4: _.label++; return { value: op[1], done: false };\r\n case 5: _.label++; y = op[1]; op = [0]; continue;\r\n case 7: op = _.ops.pop(); _.trys.pop(); continue;\r\n default:\r\n if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }\r\n if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }\r\n if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }\r\n if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }\r\n if (t[2]) _.ops.pop();\r\n _.trys.pop(); continue;\r\n }\r\n op = body.call(thisArg, _);\r\n } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }\r\n if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };\r\n }\r\n}\r\n\r\nexport var __createBinding = Object.create ? (function(o, m, k, k2) {\r\n if (k2 === undefined) k2 = k;\r\n var desc = Object.getOwnPropertyDescriptor(m, k);\r\n if (!desc || (\"get\" in desc ? !m.__esModule : desc.writable || desc.configurable)) {\r\n desc = { enumerable: true, get: function() { return m[k]; } };\r\n }\r\n Object.defineProperty(o, k2, desc);\r\n}) : (function(o, m, k, k2) {\r\n if (k2 === undefined) k2 = k;\r\n o[k2] = m[k];\r\n});\r\n\r\nexport function __exportStar(m, o) {\r\n for (var p in m) if (p !== \"default\" && !Object.prototype.hasOwnProperty.call(o, p)) __createBinding(o, m, p);\r\n}\r\n\r\nexport function __values(o) {\r\n var s = typeof Symbol === \"function\" && Symbol.iterator, m = s && o[s], i = 0;\r\n if (m) return m.call(o);\r\n if (o && typeof o.length === \"number\") return {\r\n next: function () {\r\n if (o && i >= o.length) o = void 0;\r\n return { value: o && o[i++], done: !o };\r\n }\r\n };\r\n throw new TypeError(s ? \"Object is not iterable.\" : \"Symbol.iterator is not defined.\");\r\n}\r\n\r\nexport function __read(o, n) {\r\n var m = typeof Symbol === \"function\" && o[Symbol.iterator];\r\n if (!m) return o;\r\n var i = m.call(o), r, ar = [], e;\r\n try {\r\n while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);\r\n }\r\n catch (error) { e = { error: error }; }\r\n finally {\r\n try {\r\n if (r && !r.done && (m = i[\"return\"])) m.call(i);\r\n }\r\n finally { if (e) throw e.error; }\r\n }\r\n return ar;\r\n}\r\n\r\n/** @deprecated */\r\nexport function __spread() {\r\n for (var ar = [], i = 0; i < arguments.length; i++)\r\n ar = ar.concat(__read(arguments[i]));\r\n return ar;\r\n}\r\n\r\n/** @deprecated */\r\nexport function __spreadArrays() {\r\n for (var s = 0, i = 0, il = arguments.length; i < il; i++) s += arguments[i].length;\r\n for (var r = Array(s), k = 0, i = 0; i < il; i++)\r\n for (var a = arguments[i], j = 0, jl = a.length; j < jl; j++, k++)\r\n r[k] = a[j];\r\n return r;\r\n}\r\n\r\nexport function __spreadArray(to, from, pack) {\r\n if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {\r\n if (ar || !(i in from)) {\r\n if (!ar) ar = Array.prototype.slice.call(from, 0, i);\r\n ar[i] = from[i];\r\n }\r\n }\r\n return to.concat(ar || Array.prototype.slice.call(from));\r\n}\r\n\r\nexport function __await(v) {\r\n return this instanceof __await ? (this.v = v, this) : new __await(v);\r\n}\r\n\r\nexport function __asyncGenerator(thisArg, _arguments, generator) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var g = generator.apply(thisArg, _arguments || []), i, q = [];\r\n return i = Object.create((typeof AsyncIterator === \"function\" ? AsyncIterator : Object).prototype), verb(\"next\"), verb(\"throw\"), verb(\"return\", awaitReturn), i[Symbol.asyncIterator] = function () { return this; }, i;\r\n function awaitReturn(f) { return function (v) { return Promise.resolve(v).then(f, reject); }; }\r\n function verb(n, f) { if (g[n]) { i[n] = function (v) { return new Promise(function (a, b) { q.push([n, v, a, b]) > 1 || resume(n, v); }); }; if (f) i[n] = f(i[n]); } }\r\n function resume(n, v) { try { step(g[n](v)); } catch (e) { settle(q[0][3], e); } }\r\n function step(r) { r.value instanceof __await ? Promise.resolve(r.value.v).then(fulfill, reject) : settle(q[0][2], r); }\r\n function fulfill(value) { resume(\"next\", value); }\r\n function reject(value) { resume(\"throw\", value); }\r\n function settle(f, v) { if (f(v), q.shift(), q.length) resume(q[0][0], q[0][1]); }\r\n}\r\n\r\nexport function __asyncDelegator(o) {\r\n var i, p;\r\n return i = {}, verb(\"next\"), verb(\"throw\", function (e) { throw e; }), verb(\"return\"), i[Symbol.iterator] = function () { return this; }, i;\r\n function verb(n, f) { i[n] = o[n] ? function (v) { return (p = !p) ? { value: __await(o[n](v)), done: false } : f ? f(v) : v; } : f; }\r\n}\r\n\r\nexport function __asyncValues(o) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var m = o[Symbol.asyncIterator], i;\r\n return m ? m.call(o) : (o = typeof __values === \"function\" ? __values(o) : o[Symbol.iterator](), i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i);\r\n function verb(n) { i[n] = o[n] && function (v) { return new Promise(function (resolve, reject) { v = o[n](v), settle(resolve, reject, v.done, v.value); }); }; }\r\n function settle(resolve, reject, d, v) { Promise.resolve(v).then(function(v) { resolve({ value: v, done: d }); }, reject); }\r\n}\r\n\r\nexport function __makeTemplateObject(cooked, raw) {\r\n if (Object.defineProperty) { Object.defineProperty(cooked, \"raw\", { value: raw }); } else { cooked.raw = raw; }\r\n return cooked;\r\n};\r\n\r\nvar __setModuleDefault = Object.create ? (function(o, v) {\r\n Object.defineProperty(o, \"default\", { enumerable: true, value: v });\r\n}) : function(o, v) {\r\n o[\"default\"] = v;\r\n};\r\n\r\nvar ownKeys = function(o) {\r\n ownKeys = Object.getOwnPropertyNames || function (o) {\r\n var ar = [];\r\n for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;\r\n return ar;\r\n };\r\n return ownKeys(o);\r\n};\r\n\r\nexport function __importStar(mod) {\r\n if (mod && mod.__esModule) return mod;\r\n var result = {};\r\n if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== \"default\") __createBinding(result, mod, k[i]);\r\n __setModuleDefault(result, mod);\r\n return result;\r\n}\r\n\r\nexport function __importDefault(mod) {\r\n return (mod && mod.__esModule) ? mod : { default: mod };\r\n}\r\n\r\nexport function __classPrivateFieldGet(receiver, state, kind, f) {\r\n if (kind === \"a\" && !f) throw new TypeError(\"Private accessor was defined without a getter\");\r\n if (typeof state === \"function\" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError(\"Cannot read private member from an object whose class did not declare it\");\r\n return kind === \"m\" ? f : kind === \"a\" ? f.call(receiver) : f ? f.value : state.get(receiver);\r\n}\r\n\r\nexport function __classPrivateFieldSet(receiver, state, value, kind, f) {\r\n if (kind === \"m\") throw new TypeError(\"Private method is not writable\");\r\n if (kind === \"a\" && !f) throw new TypeError(\"Private accessor was defined without a setter\");\r\n if (typeof state === \"function\" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError(\"Cannot write private member to an object whose class did not declare it\");\r\n return (kind === \"a\" ? f.call(receiver, value) : f ? f.value = value : state.set(receiver, value)), value;\r\n}\r\n\r\nexport function __classPrivateFieldIn(state, receiver) {\r\n if (receiver === null || (typeof receiver !== \"object\" && typeof receiver !== \"function\")) throw new TypeError(\"Cannot use 'in' operator on non-object\");\r\n return typeof state === \"function\" ? receiver === state : state.has(receiver);\r\n}\r\n\r\nexport function __addDisposableResource(env, value, async) {\r\n if (value !== null && value !== void 0) {\r\n if (typeof value !== \"object\" && typeof value !== \"function\") throw new TypeError(\"Object expected.\");\r\n var dispose, inner;\r\n if (async) {\r\n if (!Symbol.asyncDispose) throw new TypeError(\"Symbol.asyncDispose is not defined.\");\r\n dispose = value[Symbol.asyncDispose];\r\n }\r\n if (dispose === void 0) {\r\n if (!Symbol.dispose) throw new TypeError(\"Symbol.dispose is not defined.\");\r\n dispose = value[Symbol.dispose];\r\n if (async) inner = dispose;\r\n }\r\n if (typeof dispose !== \"function\") throw new TypeError(\"Object not disposable.\");\r\n if (inner) dispose = function() { try { inner.call(this); } catch (e) { return Promise.reject(e); } };\r\n env.stack.push({ value: value, dispose: dispose, async: async });\r\n }\r\n else if (async) {\r\n env.stack.push({ async: true });\r\n }\r\n return value;\r\n\r\n}\r\n\r\nvar _SuppressedError = typeof SuppressedError === \"function\" ? SuppressedError : function (error, suppressed, message) {\r\n var e = new Error(message);\r\n return e.name = \"SuppressedError\", e.error = error, e.suppressed = suppressed, e;\r\n};\r\n\r\nexport function __disposeResources(env) {\r\n function fail(e) {\r\n env.error = env.hasError ? new _SuppressedError(e, env.error, \"An error was suppressed during disposal.\") : e;\r\n env.hasError = true;\r\n }\r\n var r, s = 0;\r\n function next() {\r\n while (r = env.stack.pop()) {\r\n try {\r\n if (!r.async && s === 1) return s = 0, env.stack.push(r), Promise.resolve().then(next);\r\n if (r.dispose) {\r\n var result = r.dispose.call(r.value);\r\n if (r.async) return s |= 2, Promise.resolve(result).then(next, function(e) { fail(e); return next(); });\r\n }\r\n else s |= 1;\r\n }\r\n catch (e) {\r\n fail(e);\r\n }\r\n }\r\n if (s === 1) return env.hasError ? Promise.reject(env.error) : Promise.resolve();\r\n if (env.hasError) throw env.error;\r\n }\r\n return next();\r\n}\r\n\r\nexport function __rewriteRelativeImportExtension(path, preserveJsx) {\r\n if (typeof path === \"string\" && /^\\.\\.?\\//.test(path)) {\r\n return path.replace(/\\.(tsx)$|((?:\\.d)?)((?:\\.[^./]+?)?)\\.([cm]?)ts$/i, function (m, tsx, d, ext, cm) {\r\n return tsx ? preserveJsx ? \".jsx\" : \".js\" : d && (!ext || !cm) ? m : (d + ext + \".\" + cm.toLowerCase() + \"js\");\r\n });\r\n }\r\n return path;\r\n}\r\n\r\nexport default {\r\n __extends: __extends,\r\n __assign: __assign,\r\n __rest: __rest,\r\n __decorate: __decorate,\r\n __param: __param,\r\n __esDecorate: __esDecorate,\r\n __runInitializers: __runInitializers,\r\n __propKey: __propKey,\r\n __setFunctionName: __setFunctionName,\r\n __metadata: __metadata,\r\n __awaiter: __awaiter,\r\n __generator: __generator,\r\n __createBinding: __createBinding,\r\n __exportStar: __exportStar,\r\n __values: __values,\r\n __read: __read,\r\n __spread: __spread,\r\n __spreadArrays: __spreadArrays,\r\n __spreadArray: __spreadArray,\r\n __await: __await,\r\n __asyncGenerator: __asyncGenerator,\r\n __asyncDelegator: __asyncDelegator,\r\n __asyncValues: __asyncValues,\r\n __makeTemplateObject: __makeTemplateObject,\r\n __importStar: __importStar,\r\n __importDefault: __importDefault,\r\n __classPrivateFieldGet: __classPrivateFieldGet,\r\n __classPrivateFieldSet: __classPrivateFieldSet,\r\n __classPrivateFieldIn: __classPrivateFieldIn,\r\n __addDisposableResource: __addDisposableResource,\r\n __disposeResources: __disposeResources,\r\n __rewriteRelativeImportExtension: __rewriteRelativeImportExtension,\r\n};\r\n","var types = {}, typesToString = types.toString, buildInList = [\r\n \"Boolean\",\r\n \"Number\",\r\n \"String\",\r\n \"Function\",\r\n \"Array\",\r\n \"Date\",\r\n \"RegExp\",\r\n \"Object\",\r\n \"Error\",\r\n \"Promise\",\r\n \"Generator\",\r\n \"GeneratorFunction\",\r\n \"ArrayBuffer\",\r\n \"DataView\"\r\n], typedArrays = [\r\n \"Int8Array\",\r\n \"Uint8Array\",\r\n \"Uint8ClampedArray\",\r\n \"Int16Array\",\r\n \"Uint16Array\",\r\n \"Int32Array\",\r\n \"Uint32Array\",\r\n \"Float32Array\",\r\n \"Float64Array\",\r\n \"BigInt64Array\",\r\n \"BigUint64Array\"\r\n], maps = [\"Map\", \"WeakMap\"], sets = [\"Set\", \"WeakSet\"];\r\nbuildInList.forEach(function (name) {\r\n types[\"[object \" + name + \"]\"] = name.toLowerCase();\r\n});\r\nmaps.forEach(function (name) {\r\n types[\"[object \" + name + \"]\"] = \"map\";\r\n});\r\nsets.forEach(function (name) {\r\n types[\"[object \" + name + \"]\"] = \"set\";\r\n});\r\ntypedArrays.forEach(function (name) {\r\n types[\"[object \" + name + \"]\"] = \"typedarray\";\r\n});\r\nfunction getInternalType(obj) {\r\n return obj == null\r\n ? obj + \"\"\r\n : typeof obj === \"object\" || typeof obj === \"function\"\r\n ? types[typesToString.call(obj)] || \"object\"\r\n : typeof obj;\r\n}\n\nexport default getInternalType;\n//# sourceMappingURL=get-internal-type.es.js.map\n",null],"names":["__spreadArray","to","from","pack","arguments","length","ar","i","l","Array","prototype","slice","call","concat","SuppressedError","error","suppressed","message","e","Error","name","types","typesToString","toString","buildInList","typedArrays","maps","sets","getInternalType","obj","forEach","toLowerCase","refs","crossRefs","counter","fillNativeFunctions","ext","objName","fromPrototype","protoPath","_i","arrNames_1","Object","getOwnPropertyNames","name_1","indexOf","nativeFunctions","functions","JSON","Function","Date","String","numberToString","value","Number","isNaN","POSITIVE_INFINITY","NEGATIVE_INFINITY","EPSILON","MAX_SAFE_INTEGER","MIN_SAFE_INTEGER","MAX_VALUE","MIN_VALUE","Math","PI","E","LN10","LN2","LOG10E","LOG2E","SQRT1_2","SQRT2","symbolToString","Symbol","asyncIterator","hasInstance","isConcatSpreadable","iterator","match","replace","search","species","split","toPrimitive","toStringTag","unscopables","description","dateToString","getTime","toISOString","errorToString","stringify","fileName","lineNumber","arrayToString","options","history","arrayValues","reduce","x1","x2","index","key","references","push","currentPath","str","stringifyRef","pop","attachActions","getLocalRefs","filter","x","source","localRefs","result","localName_1","actions","action","converToAction","splice","localName","r","destIndex","historyRef","sourceObj","dest","path","destObj","typedArrayToString","arrString","constructorName","constructor","setToString","setValues","value1","value2","set","join","mapToString","mapValues","indexValue","objectToString","objectValues","propertyName","hasOwnProperty","propertyValue","test","functionPropertiesToString","functionName","functionToString","functionObject","includeFunctionProperties","functionPrototype","includeFunctionPrototype","functionStr","nfName","arrayBufferToString","includeBuffers","Int8Array","dataViewToString","bufString","buffer","byteOffset","byteLength","getObjectType","isRefType","visited","has","destPath","sourcePath","get","objectType","referencesLength","nestedObjectsLeft","nestedArraysLeft","nestedFunctionsLeft","refString","attachCrossRefActions","localCrossRefs","map","cr","destAccessor","p","srcAccessor","javaScriptToString","concreteOptions","undefined","nestedObjectsAmount","nestedArraysAmount","nestedFunctionsAmount","Map","circularResult"],"mappings":"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","x_google_ignoreList":[0,1]} \ No newline at end of file +{"version":3,"file":"javascripttostring.umd.js","sources":["../node_modules/@lopatnov/get-internal-type/dist/get-internal-type.es.js","../src/javascripttostring.ts"],"sourcesContent":["var types = {}, typesToString = types.toString, buildInList = [\r\n \"Boolean\",\r\n \"Number\",\r\n \"String\",\r\n \"Function\",\r\n \"Array\",\r\n \"Date\",\r\n \"RegExp\",\r\n \"Object\",\r\n \"Error\",\r\n \"Promise\",\r\n \"Generator\",\r\n \"GeneratorFunction\",\r\n \"ArrayBuffer\",\r\n \"DataView\"\r\n], typedArrays = [\r\n \"Int8Array\",\r\n \"Uint8Array\",\r\n \"Uint8ClampedArray\",\r\n \"Int16Array\",\r\n \"Uint16Array\",\r\n \"Int32Array\",\r\n \"Uint32Array\",\r\n \"Float32Array\",\r\n \"Float64Array\",\r\n \"BigInt64Array\",\r\n \"BigUint64Array\"\r\n], maps = [\"Map\", \"WeakMap\"], sets = [\"Set\", \"WeakSet\"];\r\nbuildInList.forEach(function (name) {\r\n types[\"[object \" + name + \"]\"] = name.toLowerCase();\r\n});\r\nmaps.forEach(function (name) {\r\n types[\"[object \" + name + \"]\"] = \"map\";\r\n});\r\nsets.forEach(function (name) {\r\n types[\"[object \" + name + \"]\"] = \"set\";\r\n});\r\ntypedArrays.forEach(function (name) {\r\n types[\"[object \" + name + \"]\"] = \"typedarray\";\r\n});\r\nfunction getInternalType(obj) {\r\n return obj == null\r\n ? obj + \"\"\r\n : typeof obj === \"object\" || typeof obj === \"function\"\r\n ? types[typesToString.call(obj)] || \"object\"\r\n : typeof obj;\r\n}\n\nexport default getInternalType;\n//# sourceMappingURL=get-internal-type.es.js.map\n",null],"names":["types","typesToString","toString","buildInList","typedArrays","maps","sets","getInternalType","obj","call","forEach","name","toLowerCase","refs","crossRefs","counter","fillNativeFunctions","ext","objName","fromPrototype","arrNames","Object","getOwnPropertyNames","prototype","protoPath","indexOf","nativeFunctions","functions","Array","JSON","Function","Date","String","numberToString","value","Number","isNaN","POSITIVE_INFINITY","NEGATIVE_INFINITY","EPSILON","MAX_SAFE_INTEGER","MIN_SAFE_INTEGER","MAX_VALUE","MIN_VALUE","Math","PI","E","LN10","LN2","LOG10E","LOG2E","SQRT1_2","SQRT2","symbolToString","Symbol","asyncIterator","hasInstance","isConcatSpreadable","iterator","match","replace","search","species","split","toPrimitive","toStringTag","unscopables","description","dateToString","getTime","toISOString","errorToString","stringify","message","fileName","lineNumber","arrayToString","options","history","length","arrayValues","reduce","x1","x2","index","key","references","push","currentPath","str","stringifyRef","pop","attachActions","getLocalRefs","filter","x","source","localRefs","result","localName","actions","action","converToAction","splice","r","destIndex","historyRef","dest","slice","sourceObj","path","i","destObj","typedArrayToString","arrString","from","constructor","setToString","setValues","_","value2","join","mapToString","mapValues","indexValue","objectToString","objectValues","propertyName","hasOwnProperty","propertyValue","test","functionPropertiesToString","functionName","functionToString","functionObject","includeFunctionProperties","functionPrototype","includeFunctionPrototype","functionStr","nfName","arrayBufferToString","includeBuffers","Int8Array","dataViewToString","buffer","byteOffset","byteLength","getObjectType","isRefType","visited","has","destPath","sourcePath","get","objectType","referencesLength","set","nestedObjectsLeft","nestedArraysLeft","nestedFunctionsLeft","refString","attachCrossRefActions","localCrossRefs","map","cr","destAccessor","p","srcAccessor","javaScriptToString","concreteOptions","undefined","nestedObjectsAmount","nestedArraysAmount","nestedFunctionsAmount","Map","circularResult"],"mappings":"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","x_google_ignoreList":[0]} \ No newline at end of file diff --git a/dist/lib/javascripttostring.js b/dist/lib/javascripttostring.js index 32cc42a..f498611 100644 --- a/dist/lib/javascripttostring.js +++ b/dist/lib/javascripttostring.js @@ -1,435 +1,8 @@ -"use strict"; -var __spreadArray = (this && this.__spreadArray) || function (to, from, pack) { - if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) { - if (ar || !(i in from)) { - if (!ar) ar = Array.prototype.slice.call(from, 0, i); - ar[i] = from[i]; - } - } - return to.concat(ar || Array.prototype.slice.call(from)); -}; -var __importDefault = (this && this.__importDefault) || function (mod) { - return (mod && mod.__esModule) ? mod : { "default": mod }; -}; -Object.defineProperty(exports, "__esModule", { value: true }); -var get_internal_type_1 = __importDefault(require("@lopatnov/get-internal-type")); -var refs = []; -var crossRefs = []; -var counter = 0; -function fillNativeFunctions(ext, obj, objName, fromPrototype) { - if (fromPrototype === void 0) { fromPrototype = true; } - var arrNames = Object.getOwnPropertyNames(fromPrototype ? obj.prototype : obj); - var protoPath = fromPrototype ? ".prototype." : "."; - for (var _i = 0, arrNames_1 = arrNames; _i < arrNames_1.length; _i++) { - var name_1 = arrNames_1[_i]; - if (["caller", "callee", "arguments"].indexOf(name_1) < 0) { - ext["".concat(objName).concat(protoPath).concat(name_1)] = fromPrototype ? obj.prototype[name_1] : obj[name_1]; - } - } -} -var nativeFunctions = (function () { - var functions = {}; - fillNativeFunctions(functions, Array, "Array", false); - fillNativeFunctions(functions, Array, "Array"); - fillNativeFunctions(functions, JSON, "JSON", false); - fillNativeFunctions(functions, Object, "Object", false); - fillNativeFunctions(functions, Object, "Object"); - fillNativeFunctions(functions, Function, "Function", false); - fillNativeFunctions(functions, Function, "Function"); - fillNativeFunctions(functions, Date, "Date", false); - fillNativeFunctions(functions, String, "String"); - functions.Function = Function; - return functions; -})(); -function numberToString(value) { - if (Number.isNaN(value)) { - return "Number.NaN"; - } - switch (value) { - case Number.POSITIVE_INFINITY: - return "Number.POSITIVE_INFINITY"; - case Number.NEGATIVE_INFINITY: - return "Number.NEGATIVE_INFINITY"; - case Number.EPSILON: - return "Number.EPSILON"; - case Number.MAX_SAFE_INTEGER: - return "Number.MAX_SAFE_INTEGER"; - case Number.MIN_SAFE_INTEGER: - return "Number.MIN_SAFE_INTEGER"; - case Number.MAX_VALUE: - return "Number.MAX_VALUE"; - case Number.MIN_VALUE: - return "Number.MIN_VALUE"; - case Math.PI: - return "Math.PI"; - case Math.E: - return "Math.E"; - case Math.LN10: - return "Math.LN10"; - case Math.LN2: - return "Math.LN2"; - case Math.LOG10E: - return "Math.LOG10E"; - case Math.LOG2E: - return "Math.LOG2E"; - case Math.SQRT1_2: - return "Math.SQRT1_2"; - case Math.SQRT2: - return "Math.SQRT2"; - default: - return String(value); - } -} -function symbolToString(value) { - switch (value) { - case Symbol.asyncIterator: - case Symbol.hasInstance: - case Symbol.isConcatSpreadable: - case Symbol.iterator: - case Symbol.match: - case Symbol.prototype: - case Symbol.replace: - case Symbol.search: - case Symbol.species: - case Symbol.split: - case Symbol.toPrimitive: - case Symbol.toStringTag: - case Symbol.unscopables: - return value.description; - default: - var description = value.description ? "\"".concat(value.description, "\"") : ""; - return "Symbol(".concat(description, ")"); - } -} -function dateToString(value) { - if (isNaN(value.getTime())) { - return "new Date(".concat(value.toString(), ")"); - } - return "new Date(".concat(value.toISOString(), ")"); -} -function errorToString(value) { - var message = JSON.stringify(value.message), fileName = JSON.stringify(value.fileName), lineNumber = JSON.stringify(value.lineNumber); - return "new Error(".concat(message, ", ").concat(fileName, ", ").concat(lineNumber, ")"); -} -function arrayToString(value, options, history) { - if (value.length === 0) - return "[]"; - var arrayValues = value.reduce(function (x1, x2, index) { - var key = index.toString(); - history.references.push(key); - history.currentPath.push(key); - var str = !!x1 ? "".concat(x1, ", ") : ""; - str += stringifyRef(x2, options, history); - history.currentPath.pop(); - history.references.pop(); - return str; - }, ""); - return attachActions(getLocalRefs(value), "[".concat(arrayValues, "]")); -} -function getLocalRefs(value) { - return refs.filter(function (x) { return x.source === value; }); -} -function attachActions(localRefs, result) { - if (localRefs.length > 0) { - counter = counter++ % Number.MAX_SAFE_INTEGER; - var localName_1 = "___j2s_".concat(counter); - var actions = localRefs.reduce(function (x1, x2) { - var action = converToAction(localName_1, x2); - refs.splice(refs.indexOf(x2), 1); - return x1 + action; - }, ""); - return "(function(){ var ".concat(localName_1, " = ").concat(result, "; ").concat(actions, " return ").concat(localName_1, "; }())"); - } - return result; -} -function converToAction(localName, r) { - var destIndex = r.historyRef.indexOf(r.source); - if (destIndex < 0) { - return ""; - } - var dest = r.historyRef.slice(destIndex); - var sourceObj; - var path = ""; - for (var i = 0; i < dest.length; i++) { - var destObj = dest[i]; - if (destObj === r.source) { - path = localName; - sourceObj = r.source; - } - else if (typeof destObj === "string") { - path += "['".concat(destObj.replace(/'/gi, "\\'"), "']"); - sourceObj = sourceObj[destObj]; - } - else if (destObj !== sourceObj) { - return ""; - } - } - return "".concat(path, " = ").concat(localName, "; "); -} -function typedArrayToString(value, options, history) { - var arr = Array.from(value), arrString = arrayToString(arr, options, history), constructorName = value.constructor.name; - return "new ".concat(constructorName, "(").concat(arrString, ")"); -} -function setToString(value, options, history) { - var setValues = []; - value.forEach(function (value1, value2, set) { - setValues.push(stringifyRef(value2, options, history)); - }); - if (setValues.length === 0) - return "new Set()"; - return "new Set([".concat(setValues.join(", "), "])"); -} -function mapToString(value, options, history) { - var mapValues = []; - value.forEach(function (indexValue, key) { - mapValues.push("[".concat(stringifyRef(key, options, history), ", ").concat(stringifyRef(indexValue, options, history), "]")); - }); - if (mapValues.length === 0) - return "new Map()"; - return "new Map([".concat(mapValues.join(", "), "])"); -} -function objectToString(value, options, history) { - var objectValues = []; - for (var propertyName in value) { - if (value.hasOwnProperty(propertyName)) { - history.references.push(propertyName); - history.currentPath.push(propertyName); - var propertyValue = stringifyRef(value[propertyName], options, history); - history.currentPath.pop(); - history.references.pop(); - if (propertyValue !== "undefined") { - if (!/^[a-zA-Z]+$/.test(propertyName)) { - propertyName = "\"".concat(propertyName, "\""); - } - objectValues.push("".concat(propertyName, ": ").concat(propertyValue)); - } - } - } - if (objectValues.length === 0) - return "{}"; - return attachActions(getLocalRefs(value), "{\n".concat(objectValues.join(",\n"), "\n}")); -} -function functionPropertiesToString(functionName, value, options, history) { - var result = ""; - for (var propertyName in value) { - if (value.hasOwnProperty(propertyName)) { - history.references.push(propertyName); - history.currentPath.push(propertyName); - var propertyValue = stringifyRef(value[propertyName], options, history); - history.currentPath.pop(); - history.references.pop(); - if (propertyValue !== "undefined") { - result += "".concat(functionName, ".").concat(propertyName, " = ").concat(propertyValue, ";\n"); - } - } - } - return result; -} -function functionToString(value, options, history) { - var functionName = value.name || "anonymousFunction"; - var functionObject = options.includeFunctionProperties - ? functionPropertiesToString(functionName, value, options, history) - : ""; - history.references.push("prototype"); - history.currentPath.push("prototype"); - var functionPrototype = options.includeFunctionPrototype - ? functionPropertiesToString("".concat(functionName, ".prototype"), value.prototype, options, history) - : ""; - history.currentPath.pop(); - history.references.pop(); - var functionStr = String(value); - if (functionStr.indexOf("[native code]") > -1 && functionStr.length < 100) { - for (var nfName in nativeFunctions) { - if (nativeFunctions[nfName] === value) { - functionStr = nfName; - } - } - } - if (!functionObject && !functionPrototype) { - return functionStr; - } - return attachActions(getLocalRefs(value), "(function(){\n var ".concat(functionName, " = ").concat(String(functionStr), ";\n ").concat(functionObject, "\n ").concat(functionPrototype, "\n return ").concat(functionName, ";\n}())")); -} -function arrayBufferToString(value, options, history) { - if (!options.includeBuffers) - return "undefined"; - var str = typedArrayToString(new Int8Array(value), options, history); - return "(".concat(str, ").buffer"); -} -function dataViewToString(value, options, history) { - if (!options.includeBuffers) - return "undefined"; - var bufString = arrayBufferToString(value.buffer, options, history); - return "new DataView(".concat(bufString, ", ").concat(value.byteOffset, ", ").concat(value.byteLength, ")"); -} -/** - * Converts to string the value, if it wasn't before - * @param value the value, that converts to string - * @param references the references to stringified objects - */ -function stringify(value, options, history) { - switch ((0, get_internal_type_1.default)(value)) { - case "undefined": - return "undefined"; - case "null": - return "null"; - case "boolean": - return String(value); - case "regexp": - return String(value); - case "string": - return JSON.stringify(value); - case "number": - return numberToString(value); - case "bigint": - return "BigInt(".concat(value, ")"); - case "symbol": - return symbolToString(value); - case "date": - return dateToString(value); - case "error": - return errorToString(value); - case "array": - return arrayToString(value, options, history); - case "typedarray": - return typedArrayToString(value, options, history); - case "set": - return setToString(value, options, history); - case "map": - return mapToString(value, options, history); - case "object": - return objectToString(value, options, history); - case "function": - case "generatorfunction": - return functionToString(value, options, history); - case "arraybuffer": - return arrayBufferToString(value, options, history); - case "dataview": - return dataViewToString(value, options, history); - case "promise": - case "generator": - return "undefined"; - default: - return JSON.stringify(value); - } -} -/** - * Stringify the value, if it wasn't before - * @param value the value, that converts to string - * @param references the references to stringified objects - */ -function stringifyRef(value, options, history) { - var isRefType = (typeof value === "object" && value !== null) || typeof value === "function"; - var index = history.references.indexOf(value); - // Cross-reference: object was already stringified in a different branch - if (isRefType && history.visited.has(value) && index < 0) { - crossRefs.push({ - destPath: __spreadArray([], history.currentPath, true), - sourcePath: history.visited.get(value) || [], - }); - return "null"; - } - if (index < 0 || typeof history.references[index] === "string") { - var objectType = (0, get_internal_type_1.default)(value); - var referencesLength = history.references.length; - // Track first-seen path for reference types - if (isRefType && !history.visited.has(value)) { - history.visited.set(value, __spreadArray([], history.currentPath, true)); - } - history.references.push(value); - switch (objectType) { - case "object": - if (history.nestedObjectsLeft <= 0) - return "undefined"; - history.nestedObjectsLeft--; - break; - case "array": - case "typedarray": - if (history.nestedArraysLeft <= 0) - return "undefined"; - history.nestedArraysLeft--; - break; - case "function": - case "generatorfunction": - if (history.nestedFunctionsLeft <= 0) - return "undefined"; - history.nestedFunctionsLeft--; - break; - } - var refString = stringify(value, options, history); - history.references.splice(referencesLength); - switch (objectType) { - case "object": - history.nestedObjectsLeft++; - break; - case "array": - case "typedarray": - history.nestedArraysLeft++; - break; - case "function": - case "generatorfunction": - history.nestedFunctionsLeft++; - break; - } - return refString; - } - else { - // Circular reference: back-reference to an ancestor in current path - refs.push({ - historyRef: history.references.slice(0), - source: value, - }); - } - return "null"; -} -function attachCrossRefActions(localCrossRefs, result) { - if (localCrossRefs.length === 0) { - return result; - } - counter = counter++ % Number.MAX_SAFE_INTEGER; - var localName = "___j2s_".concat(counter); - var actions = localCrossRefs - .map(function (cr) { - var destAccessor = cr.destPath.map(function (p) { return "['".concat(p.replace(/'/gi, "\\'"), "']"); }).join(""); - var srcAccessor = cr.sourcePath.map(function (p) { return "['".concat(p.replace(/'/gi, "\\'"), "']"); }).join(""); - return "".concat(localName).concat(destAccessor, " = ").concat(localName).concat(srcAccessor, "; "); - }) - .join(""); - return "(function(){ var ".concat(localName, " = ").concat(result, "; ").concat(actions, "return ").concat(localName, "; }())"); -} -/** - * Converts JavaScript value to string - * @param value the value of any type - * @param options [optional] The options of conversion - */ -function javaScriptToString(value, options) { - options = options || {}; - var concreteOptions = { - includeFunctionProperties: options.includeFunctionProperties === undefined ? true : options.includeFunctionProperties, - includeFunctionPrototype: options.includeFunctionPrototype === undefined ? true : options.includeFunctionPrototype, - includeBuffers: options.includeBuffers === undefined ? true : options.includeBuffers, - nestedObjectsAmount: options.nestedObjectsAmount === undefined ? Number.POSITIVE_INFINITY : options.nestedObjectsAmount, - nestedArraysAmount: options.nestedArraysAmount === undefined ? Number.POSITIVE_INFINITY : options.nestedArraysAmount, - nestedFunctionsAmount: options.nestedFunctionsAmount === undefined ? Number.POSITIVE_INFINITY : options.nestedFunctionsAmount, - }; - // Clear global state before conversion - refs = []; - crossRefs = []; - counter = 0; - var visited = new Map(); - visited.set(value, []); - var result = stringify(value, concreteOptions, { - references: [value], - nestedObjectsLeft: concreteOptions.nestedObjectsAmount, - nestedArraysLeft: concreteOptions.nestedArraysAmount, - nestedFunctionsLeft: concreteOptions.nestedFunctionsAmount, - visited: visited, - currentPath: [], - }); - // Handle circular references at the top level (Issue #1) - var circularResult = attachActions(getLocalRefs(value), result); - // Handle cross-references between different branches - return attachCrossRefActions(crossRefs, circularResult); -} -exports.default = javaScriptToString; -//# sourceMappingURL=javascripttostring.js.map \ No newline at end of file +'use strict'; + +var types={},typesToString=types.toString,buildInList=["Boolean","Number","String","Function","Array","Date","RegExp","Object","Error","Promise","Generator","GeneratorFunction","ArrayBuffer","DataView"],typedArrays=["Int8Array","Uint8Array","Uint8ClampedArray","Int16Array","Uint16Array","Int32Array","Uint32Array","Float32Array","Float64Array","BigInt64Array","BigUint64Array"],maps=["Map","WeakMap"],sets=["Set","WeakSet"];function getInternalType(t){return null==t?t+"":"object"==typeof t||"function"==typeof t?types[typesToString.call(t)]||"object":typeof t}buildInList.forEach(function(t){types["[object "+t+"]"]=t.toLowerCase();}),maps.forEach(function(t){types["[object "+t+"]"]="map";}),sets.forEach(function(t){types["[object "+t+"]"]="set";}),typedArrays.forEach(function(t){types["[object "+t+"]"]="typedarray";}); + +var refs=[],crossRefs=[],counter=0;function fillNativeFunctions(e,t,n,r=true){const o=Object.getOwnPropertyNames(r?t.prototype:t),s=r?".prototype.":".";for(const i of o)["caller","callee","arguments"].indexOf(i)<0&&(e[`${n}${s}${i}`]=r?t.prototype[i]:t[i]);}const nativeFunctions=(()=>{const e={};return fillNativeFunctions(e,Array,"Array",false),fillNativeFunctions(e,Array,"Array"),fillNativeFunctions(e,JSON,"JSON",false),fillNativeFunctions(e,Object,"Object",false),fillNativeFunctions(e,Object,"Object"),fillNativeFunctions(e,Function,"Function",false),fillNativeFunctions(e,Function,"Function"),fillNativeFunctions(e,Date,"Date",false),fillNativeFunctions(e,String,"String"),e.Function=Function,e})();function numberToString(e){if(Number.isNaN(e))return "Number.NaN";switch(e){case Number.POSITIVE_INFINITY:return "Number.POSITIVE_INFINITY";case Number.NEGATIVE_INFINITY:return "Number.NEGATIVE_INFINITY";case Number.EPSILON:return "Number.EPSILON";case Number.MAX_SAFE_INTEGER:return "Number.MAX_SAFE_INTEGER";case Number.MIN_SAFE_INTEGER:return "Number.MIN_SAFE_INTEGER";case Number.MAX_VALUE:return "Number.MAX_VALUE";case Number.MIN_VALUE:return "Number.MIN_VALUE";case Math.PI:return "Math.PI";case Math.E:return "Math.E";case Math.LN10:return "Math.LN10";case Math.LN2:return "Math.LN2";case Math.LOG10E:return "Math.LOG10E";case Math.LOG2E:return "Math.LOG2E";case Math.SQRT1_2:return "Math.SQRT1_2";case Math.SQRT2:return "Math.SQRT2";default:return String(e)}}function symbolToString(e){switch(e){case Symbol.asyncIterator:case Symbol.hasInstance:case Symbol.isConcatSpreadable:case Symbol.iterator:case Symbol.match:case Symbol.prototype:case Symbol.replace:case Symbol.search:case Symbol.species:case Symbol.split:case Symbol.toPrimitive:case Symbol.toStringTag:case Symbol.unscopables:return e.description;default:return `Symbol(${e.description?`"${e.description}"`:""})`}}function dateToString(e){return isNaN(e.getTime())?`new Date(${e.toString()})`:`new Date(${e.toISOString()})`}function errorToString(e){return `new Error(${JSON.stringify(e.message)}, ${JSON.stringify(e.fileName)}, ${JSON.stringify(e.lineNumber)})`}function arrayToString(e,t,n){if(0===e.length)return "[]";const r=e.reduce((e,r,o)=>{const s=o.toString();n.references.push(s),n.currentPath.push(s);let i=e?`${e}, `:"";return i+=stringifyRef(r,t,n),n.currentPath.pop(),n.references.pop(),i},"");return attachActions(getLocalRefs(e),`[${r}]`)}function getLocalRefs(e){return refs.filter(t=>t.source===e)}function attachActions(e,t){if(e.length>0){const n=`___j2s_${counter=counter++%Number.MAX_SAFE_INTEGER}`,r=e.reduce((e,t)=>{const r=converToAction(n,t);return refs.splice(refs.indexOf(t),1),e+r},"");return `(function(){ var ${n} = ${t}; ${r} return ${n}; }())`}return t}function converToAction(e,t){const n=t.historyRef.indexOf(t.source);if(n<0)return "";const r=t.historyRef.slice(n);let o,s="";for(let n=0;n{r.push(stringifyRef(o,t,n));}),0===r.length?"new Set()":`new Set([${r.join(", ")}])`}function mapToString(e,t,n){const r=[];return e.forEach((e,o)=>{r.push(`[${stringifyRef(o,t,n)}, ${stringifyRef(e,t,n)}]`);}),0===r.length?"new Map()":`new Map([${r.join(", ")}])`}function objectToString(e,t,n){const r=[];for(let o in e)if(e.hasOwnProperty(o)){n.references.push(o),n.currentPath.push(o);const s=stringifyRef(e[o],t,n);n.currentPath.pop(),n.references.pop(),"undefined"!==s&&(/^[a-zA-Z]+$/.test(o)||(o=`"${o}"`),r.push(`${o}: ${s}`));}return 0===r.length?"{}":attachActions(getLocalRefs(e),`{\n${r.join(",\n")}\n}`)}function functionPropertiesToString(e,t,n,r){let o="";for(const s in t)if(t.hasOwnProperty(s)){r.references.push(s),r.currentPath.push(s);const i=stringifyRef(t[s],n,r);r.currentPath.pop(),r.references.pop(),"undefined"!==i&&(o+=`${e}.${s} = ${i};\n`);}return o}function functionToString(e,t,n){const r=e.name||"anonymousFunction",o=t.includeFunctionProperties?functionPropertiesToString(r,e,t,n):"";n.references.push("prototype"),n.currentPath.push("prototype");const s=t.includeFunctionPrototype?functionPropertiesToString(`${r}.prototype`,e.prototype,t,n):"";n.currentPath.pop(),n.references.pop();let i=String(e);if(i.indexOf("[native code]")>-1&&i.length<100)for(const t in nativeFunctions)nativeFunctions[t]===e&&(i=t);return o||s?attachActions(getLocalRefs(e),`(function(){\n var ${r} = ${String(i)};\n ${o}\n ${s}\n return ${r};\n}())`):i}function arrayBufferToString(e,t,n){if(!t.includeBuffers)return "undefined";return `(${typedArrayToString(new Int8Array(e),t,n)}).buffer`}function dataViewToString(e,t,n){if(!t.includeBuffers)return "undefined";return `new DataView(${arrayBufferToString(e.buffer,t,n)}, ${e.byteOffset}, ${e.byteLength})`}function stringify(e,t,n){switch(getInternalType(e)){case "undefined":case "promise":case "generator":return "undefined";case "null":return "null";case "boolean":case "regexp":return String(e);case "string":default:return JSON.stringify(e);case "number":return numberToString(e);case "bigint":return `BigInt(${e})`;case "symbol":return symbolToString(e);case "date":return dateToString(e);case "error":return errorToString(e);case "array":return arrayToString(e,t,n);case "typedarray":return typedArrayToString(e,t,n);case "set":return setToString(e,t,n);case "map":return mapToString(e,t,n);case "object":return objectToString(e,t,n);case "function":case "generatorfunction":return functionToString(e,t,n);case "arraybuffer":return arrayBufferToString(e,t,n);case "dataview":return dataViewToString(e,t,n)}}function stringifyRef(e,t,n){const r="object"==typeof e&&null!==e||"function"==typeof e,o=n.references.indexOf(e);if(r&&n.visited.has(e)&&o<0)return crossRefs.push({destPath:[...n.currentPath],sourcePath:n.visited.get(e)||[]}),"null";if(o<0||"string"==typeof n.references[o]){const o=getInternalType(e),s=n.references.length;switch(r&&!n.visited.has(e)&&n.visited.set(e,[...n.currentPath]),n.references.push(e),o){case "object":if(n.nestedObjectsLeft<=0)return "undefined";n.nestedObjectsLeft--;break;case "array":case "typedarray":if(n.nestedArraysLeft<=0)return "undefined";n.nestedArraysLeft--;break;case "function":case "generatorfunction":if(n.nestedFunctionsLeft<=0)return "undefined";n.nestedFunctionsLeft--;}const i=stringify(e,t,n);switch(n.references.splice(s),o){case "object":n.nestedObjectsLeft++;break;case "array":case "typedarray":n.nestedArraysLeft++;break;case "function":case "generatorfunction":n.nestedFunctionsLeft++;}return i}return refs.push({historyRef:n.references.slice(0),source:e}),"null"}function attachCrossRefActions(e,t){if(0===e.length)return t;const n=`___j2s_${counter=counter++%Number.MAX_SAFE_INTEGER}`,r=e.map(e=>{const t=e.destPath.map(e=>`['${e.replace(/'/gi,"\\'")}']`).join(""),r=e.sourcePath.map(e=>`['${e.replace(/'/gi,"\\'")}']`).join("");return `${n}${t} = ${n}${r}; `}).join("");return `(function(){ var ${n} = ${t}; ${r}return ${n}; }())`}function javaScriptToString(e,t){const n={includeFunctionProperties:void 0===(t=t||{}).includeFunctionProperties||t.includeFunctionProperties,includeFunctionPrototype:void 0===t.includeFunctionPrototype||t.includeFunctionPrototype,includeBuffers:void 0===t.includeBuffers||t.includeBuffers,nestedObjectsAmount:void 0===t.nestedObjectsAmount?Number.POSITIVE_INFINITY:t.nestedObjectsAmount,nestedArraysAmount:void 0===t.nestedArraysAmount?Number.POSITIVE_INFINITY:t.nestedArraysAmount,nestedFunctionsAmount:void 0===t.nestedFunctionsAmount?Number.POSITIVE_INFINITY:t.nestedFunctionsAmount};refs=[],crossRefs=[],counter=0;const r=new Map;r.set(e,[]);const o=stringify(e,n,{references:[e],nestedObjectsLeft:n.nestedObjectsAmount,nestedArraysLeft:n.nestedArraysAmount,nestedFunctionsLeft:n.nestedFunctionsAmount,visited:r,currentPath:[]}),s=attachActions(getLocalRefs(e),o);return attachCrossRefActions(crossRefs,s)} + +module.exports = javaScriptToString; +//# sourceMappingURL=javascripttostring.js.map diff --git a/dist/lib/javascripttostring.js.map b/dist/lib/javascripttostring.js.map index 8abc968..c42870a 100644 --- a/dist/lib/javascripttostring.js.map +++ b/dist/lib/javascripttostring.js.map @@ -1 +1 @@ -{"version":3,"file":"javascripttostring.js","sourceRoot":"","sources":["../../src/javascripttostring.ts"],"names":[],"mappings":";;;;;;;;;;;;;;AAAA,kFAAwD;AAqBxD,IAAI,IAAI,GAAkB,EAAE,CAAC;AAC7B,IAAI,SAAS,GAAuB,EAAE,CAAC;AACvC,IAAI,OAAO,GAAG,CAAC,CAAC;AAWhB,SAAS,mBAAmB,CAAC,GAAQ,EAAE,GAAQ,EAAE,OAAe,EAAE,aAAoB;IAApB,8BAAA,EAAA,oBAAoB;IACpF,IAAM,QAAQ,GAAG,MAAM,CAAC,mBAAmB,CAAC,aAAa,CAAC,CAAC,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC;IACjF,IAAM,SAAS,GAAG,aAAa,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,GAAG,CAAC;IACtD,KAAmB,UAAQ,EAAR,qBAAQ,EAAR,sBAAQ,EAAR,IAAQ,EAAE,CAAC;QAAzB,IAAM,MAAI,iBAAA;QACb,IAAI,CAAC,QAAQ,EAAE,QAAQ,EAAE,WAAW,CAAC,CAAC,OAAO,CAAC,MAAI,CAAC,GAAG,CAAC,EAAE,CAAC;YACxD,GAAG,CAAC,UAAG,OAAO,SAAG,SAAS,SAAG,MAAI,CAAE,CAAC,GAAG,aAAa,CAAC,CAAC,CAAC,GAAG,CAAC,SAAS,CAAC,MAAW,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,MAAW,CAAC,CAAC;QACvG,CAAC;IACH,CAAC;AACH,CAAC;AAED,IAAM,eAAe,GAAG,CAAC;IACvB,IAAM,SAAS,GAAQ,EAAE,CAAC;IAC1B,mBAAmB,CAAC,SAAS,EAAE,KAAK,EAAE,OAAO,EAAE,KAAK,CAAC,CAAC;IACtD,mBAAmB,CAAC,SAAS,EAAE,KAAK,EAAE,OAAO,CAAC,CAAC;IAC/C,mBAAmB,CAAC,SAAS,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,CAAC,CAAC;IACpD,mBAAmB,CAAC,SAAS,EAAE,MAAM,EAAE,QAAQ,EAAE,KAAK,CAAC,CAAC;IACxD,mBAAmB,CAAC,SAAS,EAAE,MAAM,EAAE,QAAQ,CAAC,CAAC;IACjD,mBAAmB,CAAC,SAAS,EAAE,QAAQ,EAAE,UAAU,EAAE,KAAK,CAAC,CAAC;IAC5D,mBAAmB,CAAC,SAAS,EAAE,QAAQ,EAAE,UAAU,CAAC,CAAC;IACrD,mBAAmB,CAAC,SAAS,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,CAAC,CAAC;IACpD,mBAAmB,CAAC,SAAS,EAAE,MAAM,EAAE,QAAQ,CAAC,CAAC;IACjD,SAAS,CAAC,QAAQ,GAAG,QAAQ,CAAC;IAC9B,OAAO,SAAS,CAAC;AACnB,CAAC,CAAC,EAAE,CAAC;AAEL,SAAS,cAAc,CAAC,KAAa;IACnC,IAAI,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,EAAE,CAAC;QACxB,OAAO,YAAY,CAAC;IACtB,CAAC;IACD,QAAQ,KAAK,EAAE,CAAC;QACd,KAAK,MAAM,CAAC,iBAAiB;YAC3B,OAAO,0BAA0B,CAAC;QACpC,KAAK,MAAM,CAAC,iBAAiB;YAC3B,OAAO,0BAA0B,CAAC;QACpC,KAAK,MAAM,CAAC,OAAO;YACjB,OAAO,gBAAgB,CAAC;QAC1B,KAAK,MAAM,CAAC,gBAAgB;YAC1B,OAAO,yBAAyB,CAAC;QACnC,KAAK,MAAM,CAAC,gBAAgB;YAC1B,OAAO,yBAAyB,CAAC;QACnC,KAAK,MAAM,CAAC,SAAS;YACnB,OAAO,kBAAkB,CAAC;QAC5B,KAAK,MAAM,CAAC,SAAS;YACnB,OAAO,kBAAkB,CAAC;QAC5B,KAAK,IAAI,CAAC,EAAE;YACV,OAAO,SAAS,CAAC;QACnB,KAAK,IAAI,CAAC,CAAC;YACT,OAAO,QAAQ,CAAC;QAClB,KAAK,IAAI,CAAC,IAAI;YACZ,OAAO,WAAW,CAAC;QACrB,KAAK,IAAI,CAAC,GAAG;YACX,OAAO,UAAU,CAAC;QACpB,KAAK,IAAI,CAAC,MAAM;YACd,OAAO,aAAa,CAAC;QACvB,KAAK,IAAI,CAAC,KAAK;YACb,OAAO,YAAY,CAAC;QACtB,KAAK,IAAI,CAAC,OAAO;YACf,OAAO,cAAc,CAAC;QACxB,KAAK,IAAI,CAAC,KAAK;YACb,OAAO,YAAY,CAAC;QACtB;YACE,OAAO,MAAM,CAAC,KAAK,CAAC,CAAC;IACzB,CAAC;AACH,CAAC;AAED,SAAS,cAAc,CAAC,KAAU;IAChC,QAAQ,KAAK,EAAE,CAAC;QACd,KAAK,MAAM,CAAC,aAAa,CAAC;QAC1B,KAAK,MAAM,CAAC,WAAW,CAAC;QACxB,KAAK,MAAM,CAAC,kBAAkB,CAAC;QAC/B,KAAK,MAAM,CAAC,QAAQ,CAAC;QACrB,KAAK,MAAM,CAAC,KAAK,CAAC;QAClB,KAAK,MAAM,CAAC,SAAS,CAAC;QACtB,KAAK,MAAM,CAAC,OAAO,CAAC;QACpB,KAAK,MAAM,CAAC,MAAM,CAAC;QACnB,KAAK,MAAM,CAAC,OAAO,CAAC;QACpB,KAAK,MAAM,CAAC,KAAK,CAAC;QAClB,KAAK,MAAM,CAAC,WAAW,CAAC;QACxB,KAAK,MAAM,CAAC,WAAW,CAAC;QACxB,KAAK,MAAM,CAAC,WAAW;YACrB,OAAO,KAAK,CAAC,WAAW,CAAC;QAC3B;YACE,IAAM,WAAW,GAAG,KAAK,CAAC,WAAW,CAAC,CAAC,CAAC,YAAI,KAAK,CAAC,WAAW,OAAG,CAAC,CAAC,CAAC,EAAE,CAAC;YACtE,OAAO,iBAAU,WAAW,MAAG,CAAC;IACpC,CAAC;AACH,CAAC;AAED,SAAS,YAAY,CAAC,KAAW;IAC/B,IAAI,KAAK,CAAC,KAAK,CAAC,OAAO,EAAE,CAAC,EAAE,CAAC;QAC3B,OAAO,mBAAY,KAAK,CAAC,QAAQ,EAAE,MAAG,CAAC;IACzC,CAAC;IACD,OAAO,mBAAY,KAAK,CAAC,WAAW,EAAE,MAAG,CAAC;AAC5C,CAAC;AAED,SAAS,aAAa,CAAC,KAAU;IAC/B,IAAM,OAAO,GAAG,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,OAAO,CAAC,EAC3C,QAAQ,GAAG,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,QAAQ,CAAC,EACzC,UAAU,GAAG,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC;IAChD,OAAO,oBAAa,OAAO,eAAK,QAAQ,eAAK,UAAU,MAAG,CAAC;AAC7D,CAAC;AAED,SAAS,aAAa,CAAC,KAAiB,EAAE,OAAoB,EAAE,OAAoB;IAClF,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,IAAI,CAAC;IACpC,IAAM,WAAW,GAAG,KAAK,CAAC,MAAM,CAAC,UAAC,EAAO,EAAE,EAAO,EAAE,KAAa;QAC/D,IAAM,GAAG,GAAG,KAAK,CAAC,QAAQ,EAAE,CAAC;QAC7B,OAAO,CAAC,UAAU,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QAC7B,OAAO,CAAC,WAAW,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QAC9B,IAAI,GAAG,GAAG,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,UAAG,EAAE,OAAI,CAAC,CAAC,CAAC,EAAE,CAAC;QAChC,GAAG,IAAI,YAAY,CAAC,EAAE,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC;QAC1C,OAAO,CAAC,WAAW,CAAC,GAAG,EAAE,CAAC;QAC1B,OAAO,CAAC,UAAU,CAAC,GAAG,EAAE,CAAC;QACzB,OAAO,GAAG,CAAC;IACb,CAAC,EAAE,EAAE,CAAC,CAAC;IACP,OAAO,aAAa,CAAC,YAAY,CAAC,KAAK,CAAC,EAAE,WAAI,WAAW,MAAG,CAAC,CAAC;AAChE,CAAC;AAED,SAAS,YAAY,CAAC,KAAU;IAC9B,OAAO,IAAI,CAAC,MAAM,CAAC,UAAC,CAAC,IAAK,OAAA,CAAC,CAAC,MAAM,KAAK,KAAK,EAAlB,CAAkB,CAAC,CAAC;AAChD,CAAC;AAED,SAAS,aAAa,CAAC,SAAwB,EAAE,MAAc;IAC7D,IAAI,SAAS,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACzB,OAAO,GAAG,OAAO,EAAE,GAAG,MAAM,CAAC,gBAAgB,CAAC;QAC9C,IAAM,WAAS,GAAG,iBAAU,OAAO,CAAE,CAAC;QACtC,IAAM,OAAO,GAAG,SAAS,CAAC,MAAM,CAAC,UAAC,EAAU,EAAE,EAAe;YAC3D,IAAM,MAAM,GAAG,cAAc,CAAC,WAAS,EAAE,EAAE,CAAC,CAAC;YAC7C,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;YACjC,OAAO,EAAE,GAAG,MAAM,CAAC;QACrB,CAAC,EAAE,EAAE,CAAC,CAAC;QACP,OAAO,2BAAoB,WAAS,gBAAM,MAAM,eAAK,OAAO,qBAAW,WAAS,WAAQ,CAAC;IAC3F,CAAC;IACD,OAAO,MAAM,CAAC;AAChB,CAAC;AAED,SAAS,cAAc,CAAC,SAAiB,EAAE,CAAc;IACvD,IAAM,SAAS,GAAG,CAAC,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC;IACjD,IAAI,SAAS,GAAG,CAAC,EAAE,CAAC;QAClB,OAAO,EAAE,CAAC;IACZ,CAAC;IAED,IAAM,IAAI,GAAG,CAAC,CAAC,UAAU,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC;IAC3C,IAAI,SAAc,CAAC;IACnB,IAAI,IAAI,GAAG,EAAE,CAAC;IACd,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;QACrC,IAAM,OAAO,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC;QACxB,IAAI,OAAO,KAAK,CAAC,CAAC,MAAM,EAAE,CAAC;YACzB,IAAI,GAAG,SAAS,CAAC;YACjB,SAAS,GAAG,CAAC,CAAC,MAAM,CAAC;QACvB,CAAC;aAAM,IAAI,OAAO,OAAO,KAAK,QAAQ,EAAE,CAAC;YACvC,IAAI,IAAI,YAAK,OAAO,CAAC,OAAO,CAAC,KAAK,EAAE,KAAK,CAAC,OAAI,CAAC;YAC/C,SAAS,GAAG,SAAS,CAAC,OAAO,CAAC,CAAC;QACjC,CAAC;aAAM,IAAI,OAAO,KAAK,SAAS,EAAE,CAAC;YACjC,OAAO,EAAE,CAAC;QACZ,CAAC;IACH,CAAC;IAED,OAAO,UAAG,IAAI,gBAAM,SAAS,OAAI,CAAC;AACpC,CAAC;AAED,SAAS,kBAAkB,CAAC,KAAU,EAAE,OAAoB,EAAE,OAAoB;IAChF,IAAM,GAAG,GAAG,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,EAC3B,SAAS,GAAG,aAAa,CAAC,GAAG,EAAE,OAAO,EAAE,OAAO,CAAC,EAChD,eAAe,GAAG,KAAK,CAAC,WAAW,CAAC,IAAI,CAAC;IAC3C,OAAO,cAAO,eAAe,cAAI,SAAS,MAAG,CAAC;AAChD,CAAC;AAED,SAAS,WAAW,CAAC,KAAe,EAAE,OAAoB,EAAE,OAAoB;IAC9E,IAAM,SAAS,GAAa,EAAE,CAAC;IAE/B,KAAK,CAAC,OAAO,CAAC,UAAC,MAAW,EAAE,MAAW,EAAE,GAAa;QACpD,SAAS,CAAC,IAAI,CAAC,YAAY,CAAC,MAAM,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC,CAAC;IACzD,CAAC,CAAC,CAAC;IAEH,IAAI,SAAS,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,WAAW,CAAC;IAE/C,OAAO,mBAAY,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,OAAI,CAAC;AAC9C,CAAC;AAED,SAAS,WAAW,CAAC,KAAoB,EAAE,OAAoB,EAAE,OAAoB;IACnF,IAAM,SAAS,GAAa,EAAE,CAAC;IAE/B,KAAK,CAAC,OAAO,CAAC,UAAC,UAAe,EAAE,GAAQ;QACtC,SAAS,CAAC,IAAI,CAAC,WAAI,YAAY,CAAC,GAAG,EAAE,OAAO,EAAE,OAAO,CAAC,eAAK,YAAY,CAAC,UAAU,EAAE,OAAO,EAAE,OAAO,CAAC,MAAG,CAAC,CAAC;IAC5G,CAAC,CAAC,CAAC;IAEH,IAAI,SAAS,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,WAAW,CAAC;IAE/C,OAAO,mBAAY,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,OAAI,CAAC;AAC9C,CAAC;AAED,SAAS,cAAc,CAAC,KAAU,EAAE,OAAoB,EAAE,OAAoB;IAC5E,IAAM,YAAY,GAAG,EAAE,CAAC;IAExB,KAAK,IAAI,YAAY,IAAI,KAAK,EAAE,CAAC;QAC/B,IAAI,KAAK,CAAC,cAAc,CAAC,YAAY,CAAC,EAAE,CAAC;YACvC,OAAO,CAAC,UAAU,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;YACtC,OAAO,CAAC,WAAW,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;YACvC,IAAM,aAAa,GAAG,YAAY,CAAC,KAAK,CAAC,YAAY,CAAC,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC;YAC1E,OAAO,CAAC,WAAW,CAAC,GAAG,EAAE,CAAC;YAC1B,OAAO,CAAC,UAAU,CAAC,GAAG,EAAE,CAAC;YACzB,IAAI,aAAa,KAAK,WAAW,EAAE,CAAC;gBAClC,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,YAAY,CAAC,EAAE,CAAC;oBACtC,YAAY,GAAG,YAAI,YAAY,OAAG,CAAC;gBACrC,CAAC;gBACD,YAAY,CAAC,IAAI,CAAC,UAAG,YAAY,eAAK,aAAa,CAAE,CAAC,CAAC;YACzD,CAAC;QACH,CAAC;IACH,CAAC;IAED,IAAI,YAAY,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,IAAI,CAAC;IAE3C,OAAO,aAAa,CAAC,YAAY,CAAC,KAAK,CAAC,EAAE,aAAM,YAAY,CAAC,IAAI,CAAC,KAAK,CAAC,QAAK,CAAC,CAAC;AACjF,CAAC;AAED,SAAS,0BAA0B,CACjC,YAAoB,EACpB,KAAU,EACV,OAAoB,EACpB,OAAoB;IAEpB,IAAI,MAAM,GAAG,EAAE,CAAC;IAChB,KAAK,IAAM,YAAY,IAAI,KAAK,EAAE,CAAC;QACjC,IAAI,KAAK,CAAC,cAAc,CAAC,YAAY,CAAC,EAAE,CAAC;YACvC,OAAO,CAAC,UAAU,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;YACtC,OAAO,CAAC,WAAW,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;YACvC,IAAM,aAAa,GAAG,YAAY,CAAC,KAAK,CAAC,YAAY,CAAC,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC;YAC1E,OAAO,CAAC,WAAW,CAAC,GAAG,EAAE,CAAC;YAC1B,OAAO,CAAC,UAAU,CAAC,GAAG,EAAE,CAAC;YACzB,IAAI,aAAa,KAAK,WAAW,EAAE,CAAC;gBAClC,MAAM,IAAI,UAAG,YAAY,cAAI,YAAY,gBAAM,aAAa,QAAK,CAAC;YACpE,CAAC;QACH,CAAC;IACH,CAAC;IACD,OAAO,MAAM,CAAC;AAChB,CAAC;AAED,SAAS,gBAAgB,CAAC,KAAU,EAAE,OAAoB,EAAE,OAAoB;IAC9E,IAAM,YAAY,GAAG,KAAK,CAAC,IAAI,IAAI,mBAAmB,CAAC;IACvD,IAAM,cAAc,GAAG,OAAO,CAAC,yBAAyB;QACtD,CAAC,CAAC,0BAA0B,CAAC,YAAY,EAAE,KAAK,EAAE,OAAO,EAAE,OAAO,CAAC;QACnE,CAAC,CAAC,EAAE,CAAC;IACP,OAAO,CAAC,UAAU,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;IACrC,OAAO,CAAC,WAAW,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;IACtC,IAAM,iBAAiB,GAAG,OAAO,CAAC,wBAAwB;QACxD,CAAC,CAAC,0BAA0B,CAAC,UAAG,YAAY,eAAY,EAAE,KAAK,CAAC,SAAS,EAAE,OAAO,EAAE,OAAO,CAAC;QAC5F,CAAC,CAAC,EAAE,CAAC;IACP,OAAO,CAAC,WAAW,CAAC,GAAG,EAAE,CAAC;IAC1B,OAAO,CAAC,UAAU,CAAC,GAAG,EAAE,CAAC;IAEzB,IAAI,WAAW,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC;IAChC,IAAI,WAAW,CAAC,OAAO,CAAC,eAAe,CAAC,GAAG,CAAC,CAAC,IAAI,WAAW,CAAC,MAAM,GAAG,GAAG,EAAE,CAAC;QAC1E,KAAK,IAAM,MAAM,IAAI,eAAe,EAAE,CAAC;YACrC,IAAI,eAAe,CAAC,MAAM,CAAC,KAAK,KAAK,EAAE,CAAC;gBACtC,WAAW,GAAG,MAAM,CAAC;YACvB,CAAC;QACH,CAAC;IACH,CAAC;IACD,IAAI,CAAC,cAAc,IAAI,CAAC,iBAAiB,EAAE,CAAC;QAC1C,OAAO,WAAW,CAAC;IACrB,CAAC;IAED,OAAO,aAAa,CAClB,YAAY,CAAC,KAAK,CAAC,EACnB,6BAAsB,YAAY,gBAAM,MAAM,CAC5C,WAAW,CACZ,iBAAO,cAAc,gBAAM,iBAAiB,uBAAa,YAAY,YAAS,CAChF,CAAC;AACJ,CAAC;AAED,SAAS,mBAAmB,CAAC,KAAkB,EAAE,OAAoB,EAAE,OAAoB;IACzF,IAAI,CAAC,OAAO,CAAC,cAAc;QAAE,OAAO,WAAW,CAAC;IAChD,IAAM,GAAG,GAAG,kBAAkB,CAAC,IAAI,SAAS,CAAC,KAAK,CAAC,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC;IACvE,OAAO,WAAI,GAAG,aAAU,CAAC;AAC3B,CAAC;AAED,SAAS,gBAAgB,CAAC,KAAe,EAAE,OAAoB,EAAE,OAAoB;IACnF,IAAI,CAAC,OAAO,CAAC,cAAc;QAAE,OAAO,WAAW,CAAC;IAChD,IAAM,SAAS,GAAG,mBAAmB,CAAC,KAAK,CAAC,MAAqB,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC;IACrF,OAAO,uBAAgB,SAAS,eAAK,KAAK,CAAC,UAAU,eAAK,KAAK,CAAC,UAAU,MAAG,CAAC;AAChF,CAAC;AAED;;;;GAIG;AACH,SAAS,SAAS,CAAC,KAAU,EAAE,OAAoB,EAAE,OAAoB;IACvE,QAAQ,IAAA,2BAAa,EAAC,KAAK,CAAC,EAAE,CAAC;QAC7B,KAAK,WAAW;YACd,OAAO,WAAW,CAAC;QACrB,KAAK,MAAM;YACT,OAAO,MAAM,CAAC;QAChB,KAAK,SAAS;YACZ,OAAO,MAAM,CAAC,KAAK,CAAC,CAAC;QACvB,KAAK,QAAQ;YACX,OAAO,MAAM,CAAC,KAAK,CAAC,CAAC;QACvB,KAAK,QAAQ;YACX,OAAO,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC;QAC/B,KAAK,QAAQ;YACX,OAAO,cAAc,CAAC,KAAK,CAAC,CAAC;QAC/B,KAAK,QAAQ;YACX,OAAO,iBAAU,KAAK,MAAG,CAAC;QAC5B,KAAK,QAAQ;YACX,OAAO,cAAc,CAAC,KAAK,CAAC,CAAC;QAC/B,KAAK,MAAM;YACT,OAAO,YAAY,CAAC,KAAK,CAAC,CAAC;QAC7B,KAAK,OAAO;YACV,OAAO,aAAa,CAAC,KAAK,CAAC,CAAC;QAC9B,KAAK,OAAO;YACV,OAAO,aAAa,CAAC,KAAK,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC;QAChD,KAAK,YAAY;YACf,OAAO,kBAAkB,CAAC,KAAK,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC;QACrD,KAAK,KAAK;YACR,OAAO,WAAW,CAAC,KAAK,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC;QAC9C,KAAK,KAAK;YACR,OAAO,WAAW,CAAC,KAAK,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC;QAC9C,KAAK,QAAQ;YACX,OAAO,cAAc,CAAC,KAAK,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC;QACjD,KAAK,UAAU,CAAC;QAChB,KAAK,mBAAmB;YACtB,OAAO,gBAAgB,CAAC,KAAK,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC;QACnD,KAAK,aAAa;YAChB,OAAO,mBAAmB,CAAC,KAAK,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC;QACtD,KAAK,UAAU;YACb,OAAO,gBAAgB,CAAC,KAAK,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC;QACnD,KAAK,SAAS,CAAC;QACf,KAAK,WAAW;YACd,OAAO,WAAW,CAAC;QACrB;YACE,OAAO,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC;IACjC,CAAC;AACH,CAAC;AAED;;;;GAIG;AACH,SAAS,YAAY,CAAC,KAAU,EAAE,OAAoB,EAAE,OAAoB;IAC1E,IAAM,SAAS,GAAG,CAAC,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,KAAK,IAAI,CAAC,IAAI,OAAO,KAAK,KAAK,UAAU,CAAC;IAC/F,IAAM,KAAK,GAAG,OAAO,CAAC,UAAU,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;IAEhD,wEAAwE;IACxE,IAAI,SAAS,IAAI,OAAO,CAAC,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,KAAK,GAAG,CAAC,EAAE,CAAC;QACzD,SAAS,CAAC,IAAI,CAAC;YACb,QAAQ,oBAAM,OAAO,CAAC,WAAW,OAAC;YAClC,UAAU,EAAE,OAAO,CAAC,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,EAAE;SAC7C,CAAC,CAAC;QACH,OAAO,MAAM,CAAC;IAChB,CAAC;IAED,IAAI,KAAK,GAAG,CAAC,IAAI,OAAO,OAAO,CAAC,UAAU,CAAC,KAAK,CAAC,KAAK,QAAQ,EAAE,CAAC;QAC/D,IAAM,UAAU,GAAG,IAAA,2BAAa,EAAC,KAAK,CAAC,CAAC;QACxC,IAAM,gBAAgB,GAAG,OAAO,CAAC,UAAU,CAAC,MAAM,CAAC;QAEnD,4CAA4C;QAC5C,IAAI,SAAS,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC;YAC7C,OAAO,CAAC,OAAO,CAAC,GAAG,CAAC,KAAK,oBAAM,OAAO,CAAC,WAAW,QAAE,CAAC;QACvD,CAAC;QAED,OAAO,CAAC,UAAU,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QAC/B,QAAQ,UAAU,EAAE,CAAC;YACnB,KAAK,QAAQ;gBACX,IAAI,OAAO,CAAC,iBAAiB,IAAI,CAAC;oBAAE,OAAO,WAAW,CAAC;gBACvD,OAAO,CAAC,iBAAiB,EAAE,CAAC;gBAC5B,MAAM;YACR,KAAK,OAAO,CAAC;YACb,KAAK,YAAY;gBACf,IAAI,OAAO,CAAC,gBAAgB,IAAI,CAAC;oBAAE,OAAO,WAAW,CAAC;gBACtD,OAAO,CAAC,gBAAgB,EAAE,CAAC;gBAC3B,MAAM;YACR,KAAK,UAAU,CAAC;YAChB,KAAK,mBAAmB;gBACtB,IAAI,OAAO,CAAC,mBAAmB,IAAI,CAAC;oBAAE,OAAO,WAAW,CAAC;gBACzD,OAAO,CAAC,mBAAmB,EAAE,CAAC;gBAC9B,MAAM;QACV,CAAC;QAED,IAAM,SAAS,GAAG,SAAS,CAAC,KAAK,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC;QAErD,OAAO,CAAC,UAAU,CAAC,MAAM,CAAC,gBAAgB,CAAC,CAAC;QAC5C,QAAQ,UAAU,EAAE,CAAC;YACnB,KAAK,QAAQ;gBACX,OAAO,CAAC,iBAAiB,EAAE,CAAC;gBAC5B,MAAM;YACR,KAAK,OAAO,CAAC;YACb,KAAK,YAAY;gBACf,OAAO,CAAC,gBAAgB,EAAE,CAAC;gBAC3B,MAAM;YACR,KAAK,UAAU,CAAC;YAChB,KAAK,mBAAmB;gBACtB,OAAO,CAAC,mBAAmB,EAAE,CAAC;gBAC9B,MAAM;QACV,CAAC;QAED,OAAO,SAAS,CAAC;IACnB,CAAC;SAAM,CAAC;QACN,oEAAoE;QACpE,IAAI,CAAC,IAAI,CAAC;YACR,UAAU,EAAE,OAAO,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC,CAAC;YACvC,MAAM,EAAE,KAAK;SACd,CAAC,CAAC;IACL,CAAC;IACD,OAAO,MAAM,CAAC;AAChB,CAAC;AAED,SAAS,qBAAqB,CAAC,cAAkC,EAAE,MAAc;IAC/E,IAAI,cAAc,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAChC,OAAO,MAAM,CAAC;IAChB,CAAC;IACD,OAAO,GAAG,OAAO,EAAE,GAAG,MAAM,CAAC,gBAAgB,CAAC;IAC9C,IAAM,SAAS,GAAG,iBAAU,OAAO,CAAE,CAAC;IACtC,IAAM,OAAO,GAAG,cAAc;SAC3B,GAAG,CAAC,UAAC,EAAE;QACN,IAAM,YAAY,GAAG,EAAE,CAAC,QAAQ,CAAC,GAAG,CAAC,UAAC,CAAC,IAAK,OAAA,YAAK,CAAC,CAAC,OAAO,CAAC,KAAK,EAAE,KAAK,CAAC,OAAI,EAAhC,CAAgC,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QACvF,IAAM,WAAW,GAAG,EAAE,CAAC,UAAU,CAAC,GAAG,CAAC,UAAC,CAAC,IAAK,OAAA,YAAK,CAAC,CAAC,OAAO,CAAC,KAAK,EAAE,KAAK,CAAC,OAAI,EAAhC,CAAgC,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QACxF,OAAO,UAAG,SAAS,SAAG,YAAY,gBAAM,SAAS,SAAG,WAAW,OAAI,CAAC;IACtE,CAAC,CAAC;SACD,IAAI,CAAC,EAAE,CAAC,CAAC;IACZ,OAAO,2BAAoB,SAAS,gBAAM,MAAM,eAAK,OAAO,oBAAU,SAAS,WAAQ,CAAC;AAC1F,CAAC;AAED;;;;GAIG;AACH,SAAS,kBAAkB,CAAC,KAAU,EAAE,OAAqB;IAC3D,OAAO,GAAG,OAAO,IAAI,EAAE,CAAC;IACxB,IAAM,eAAe,GAAgB;QACnC,yBAAyB,EACvB,OAAO,CAAC,yBAAyB,KAAK,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC,yBAAyB;QAC5F,wBAAwB,EAAE,OAAO,CAAC,wBAAwB,KAAK,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC,wBAAwB;QAClH,cAAc,EAAE,OAAO,CAAC,cAAc,KAAK,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC,cAAc;QACpF,mBAAmB,EACjB,OAAO,CAAC,mBAAmB,KAAK,SAAS,CAAC,CAAC,CAAC,MAAM,CAAC,iBAAiB,CAAC,CAAC,CAAC,OAAO,CAAC,mBAAmB;QACpG,kBAAkB,EAChB,OAAO,CAAC,kBAAkB,KAAK,SAAS,CAAC,CAAC,CAAC,MAAM,CAAC,iBAAiB,CAAC,CAAC,CAAC,OAAO,CAAC,kBAAkB;QAClG,qBAAqB,EACnB,OAAO,CAAC,qBAAqB,KAAK,SAAS,CAAC,CAAC,CAAC,MAAM,CAAC,iBAAiB,CAAC,CAAC,CAAC,OAAO,CAAC,qBAAqB;KACzG,CAAC;IAEF,uCAAuC;IACvC,IAAI,GAAG,EAAE,CAAC;IACV,SAAS,GAAG,EAAE,CAAC;IACf,OAAO,GAAG,CAAC,CAAC;IAEZ,IAAM,OAAO,GAAG,IAAI,GAAG,EAAiB,CAAC;IACzC,OAAO,CAAC,GAAG,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;IAEvB,IAAM,MAAM,GAAG,SAAS,CAAC,KAAK,EAAE,eAAe,EAAE;QAC/C,UAAU,EAAE,CAAC,KAAK,CAAC;QACnB,iBAAiB,EAAE,eAAe,CAAC,mBAA6B;QAChE,gBAAgB,EAAE,eAAe,CAAC,kBAA4B;QAC9D,mBAAmB,EAAE,eAAe,CAAC,qBAA+B;QACpE,OAAO,SAAA;QACP,WAAW,EAAE,EAAE;KAChB,CAAC,CAAC;IAEH,yDAAyD;IACzD,IAAM,cAAc,GAAG,aAAa,CAAC,YAAY,CAAC,KAAK,CAAC,EAAE,MAAM,CAAC,CAAC;IAElE,qDAAqD;IACrD,OAAO,qBAAqB,CAAC,SAAS,EAAE,cAAc,CAAC,CAAC;AAC1D,CAAC;AAED,kBAAe,kBAAkB,CAAC"} \ No newline at end of file +{"version":3,"file":"javascripttostring.js","sources":["../../node_modules/@lopatnov/get-internal-type/dist/get-internal-type.es.js","../../src/javascripttostring.ts"],"sourcesContent":["var types = {}, typesToString = types.toString, buildInList = [\r\n \"Boolean\",\r\n \"Number\",\r\n \"String\",\r\n \"Function\",\r\n \"Array\",\r\n \"Date\",\r\n \"RegExp\",\r\n \"Object\",\r\n \"Error\",\r\n \"Promise\",\r\n \"Generator\",\r\n \"GeneratorFunction\",\r\n \"ArrayBuffer\",\r\n \"DataView\"\r\n], typedArrays = [\r\n \"Int8Array\",\r\n \"Uint8Array\",\r\n \"Uint8ClampedArray\",\r\n \"Int16Array\",\r\n \"Uint16Array\",\r\n \"Int32Array\",\r\n \"Uint32Array\",\r\n \"Float32Array\",\r\n \"Float64Array\",\r\n \"BigInt64Array\",\r\n \"BigUint64Array\"\r\n], maps = [\"Map\", \"WeakMap\"], sets = [\"Set\", \"WeakSet\"];\r\nbuildInList.forEach(function (name) {\r\n types[\"[object \" + name + \"]\"] = name.toLowerCase();\r\n});\r\nmaps.forEach(function (name) {\r\n types[\"[object \" + name + \"]\"] = \"map\";\r\n});\r\nsets.forEach(function (name) {\r\n types[\"[object \" + name + \"]\"] = \"set\";\r\n});\r\ntypedArrays.forEach(function (name) {\r\n types[\"[object \" + name + \"]\"] = \"typedarray\";\r\n});\r\nfunction getInternalType(obj) {\r\n return obj == null\r\n ? obj + \"\"\r\n : typeof obj === \"object\" || typeof obj === \"function\"\r\n ? types[typesToString.call(obj)] || \"object\"\r\n : typeof obj;\r\n}\n\nexport default getInternalType;\n//# sourceMappingURL=get-internal-type.es.js.map\n",null],"names":["types","typesToString","toString","buildInList","typedArrays","maps","sets","getInternalType","obj","call","forEach","name","toLowerCase","refs","crossRefs","counter","fillNativeFunctions","ext","objName","fromPrototype","arrNames","Object","getOwnPropertyNames","prototype","protoPath","indexOf","nativeFunctions","functions","Array","JSON","Function","Date","String","numberToString","value","Number","isNaN","POSITIVE_INFINITY","NEGATIVE_INFINITY","EPSILON","MAX_SAFE_INTEGER","MIN_SAFE_INTEGER","MAX_VALUE","MIN_VALUE","Math","PI","E","LN10","LN2","LOG10E","LOG2E","SQRT1_2","SQRT2","symbolToString","Symbol","asyncIterator","hasInstance","isConcatSpreadable","iterator","match","replace","search","species","split","toPrimitive","toStringTag","unscopables","description","dateToString","getTime","toISOString","errorToString","stringify","message","fileName","lineNumber","arrayToString","options","history","length","arrayValues","reduce","x1","x2","index","key","references","push","currentPath","str","stringifyRef","pop","attachActions","getLocalRefs","filter","x","source","localRefs","result","localName","actions","action","converToAction","splice","r","destIndex","historyRef","dest","slice","sourceObj","path","i","destObj","typedArrayToString","arrString","from","constructor","setToString","setValues","_","value2","join","mapToString","mapValues","indexValue","objectToString","objectValues","propertyName","hasOwnProperty","propertyValue","test","functionPropertiesToString","functionName","functionToString","functionObject","includeFunctionProperties","functionPrototype","includeFunctionPrototype","functionStr","nfName","arrayBufferToString","includeBuffers","Int8Array","dataViewToString","buffer","byteOffset","byteLength","getObjectType","isRefType","visited","has","destPath","sourcePath","get","objectType","referencesLength","set","nestedObjectsLeft","nestedArraysLeft","nestedFunctionsLeft","refString","attachCrossRefActions","localCrossRefs","map","cr","destAccessor","p","srcAccessor","javaScriptToString","concreteOptions","undefined","nestedObjectsAmount","nestedArraysAmount","nestedFunctionsAmount","Map","circularResult"],"mappings":"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","x_google_ignoreList":[0]} \ No newline at end of file diff --git a/docs/functions/default.html b/docs/functions/default.html index d4a6e51..68b3e42 100644 --- a/docs/functions/default.html +++ b/docs/functions/default.html @@ -1,4 +1,4 @@ default | @lopatnov/javascripttostring
                                    @lopatnov/javascripttostring
                                      Preparing search index...

                                      Function default

                                      • Converts JavaScript value to string

                                        Parameters

                                        • value: any

                                          the value of any type

                                        • Optionaloptions: IJ2SOptions

                                          [optional] The options of conversion

                                          -

                                        Returns string

                                      +

                                      Returns string

                                      diff --git a/docs/index.html b/docs/index.html index 076f291..b1b5caa 100644 --- a/docs/index.html +++ b/docs/index.html @@ -5,16 +5,6 @@ TypeScript GitHub stars

                                      A TypeScript library that converts any JavaScript runtime value into its string source code representation. Supports objects, arrays, functions, circular references, cross-references, and more.

                                      - -
                                        -
                                      • Full TypeScript support with type definitions
                                      • -
                                      • Multiple output formats: CommonJS, ES Modules, UMD
                                      • -
                                      • Handles circular references (self-referencing objects/arrays)
                                      • -
                                      • Handles cross-references (shared objects between branches)
                                      • -
                                      • Converts functions with their properties and prototypes
                                      • -
                                      • Supports built-in types: Date, RegExp, Error, Map, Set, TypedArrays, Symbols, BigInt
                                      • -
                                      • Configurable nesting depth for objects, arrays, and functions
                                      • -
                                      npm install @lopatnov/javascripttostring
                                       
                                      @@ -134,7 +124,12 @@

                                      Objects shared between different branches are preserved as references:

                                      -
                                      var shared = { value: 42 };
                                      var obj = { a: shared, b: shared };

                                      javaScriptToString(obj);
                                      // Generates code where obj.a === obj.b (same reference) +
                                      var shared = { value: 42 };
                                      var obj = { a: shared, b: shared };

                                      javaScriptToString(obj);
                                      // Generates code where obj.a === obj.b (same reference), like:
                                      // (function(){ var ___j2s_0 = {
                                      // a: {
                                      // value: 42
                                      // },
                                      // b: null
                                      // }; ___j2s_0['b'] = ___j2s_0['a']; return ___j2s_0; }()) +
                                      + + +

                                      Combine with @lopatnov/worker-from-string to serialize functions and data for execution in a Web Worker:

                                      +
                                      import javaScriptToString from "@lopatnov/javascripttostring";
                                      import workerFromString from "@lopatnov/worker-from-string";

                                      // Define a computation function
                                      const fibonacci = function(n) {
                                      if (n <= 1) return n;
                                      let a = 0, b = 1;
                                      for (let i = 2; i <= n; i++) {
                                      [a, b] = [b, a + b];
                                      }
                                      return b;
                                      };

                                      // Serialize and send to a worker
                                      const fnString = javaScriptToString(fibonacci);

                                      const worker = workerFromString(`
                                      const fibonacci = ${fnString};
                                      self.onmessage = function(e) {
                                      postMessage({ input: e.data, result: fibonacci(e.data) });
                                      };
                                      `);

                                      worker.onmessage = (e) => console.log(e.data); // { input: 40, result: 102334155 }
                                      worker.postMessage(40);
                                      @@ -210,10 +205,63 @@ - +

                                      Try the library interactively:

                                      + + + + + + + + + + + + + + + + + +
                                      Link
                                      Interactive Demodemo/index.html
                                      RunKit Playgroundrunkit.com
                                      + + + + + + + + + + + + + + + + + + +
                                      Link
                                      API Referencedocs/index.html
                                      ChangelogCHANGELOG.md
                                      + + + + + + + + + + + + + + + + + + +
                                      PackageDescription
                                      @lopatnov/worker-from-stringCreate Web Workers from strings — pairs well with javaScriptToString
                                      @lopatnov/get-internal-typeRuntime type detection used internally by this library

                                      Contributions are welcome! Please see CONTRIBUTING.md for guidelines.

                                      @@ -225,4 +273,4 @@
                                      -
                                      <!-- Development version -->
                                      <script src="https://lopatnov.github.io/jsToString/dist/javascripttostring.umd.js"></script> +
                                      <script src="https://unpkg.com/@lopatnov/javascripttostring"></script>
                                       
                                      -
                                      import javaScriptToString from "@lopatnov/javascripttostring";
                                      +
                                      import javaScriptToString from "@lopatnov/javascripttostring";
                                       
                                      -
                                      const javaScriptToString = require("@lopatnov/javascripttostring");
                                      +
                                      const javaScriptToString = require("@lopatnov/javascripttostring");
                                       
                                      -
                                      const javaScriptToString = window.javaScriptToString;
                                      +
                                      const javaScriptToString = window.javaScriptToString;
                                       
                                      @@ -102,39 +102,39 @@ -
                                      javaScriptToString("Hello world");   // '"Hello world"'
                                      javaScriptToString(42); // '42'
                                      javaScriptToString(true); // 'true'
                                      javaScriptToString(undefined); // 'undefined'
                                      javaScriptToString(null); // 'null' +
                                      javaScriptToString("Hello world");   // '"Hello world"'
                                      javaScriptToString(42); // '42'
                                      javaScriptToString(true); // 'true'
                                      javaScriptToString(undefined); // 'undefined'
                                      javaScriptToString(null); // 'null'
                                      -
                                      javaScriptToString(["Hello", "World"]);
                                      // '["Hello", "World"]' +
                                      javaScriptToString(["Hello", "World"]);
                                      // '["Hello", "World"]'
                                      -
                                      javaScriptToString({
                                      name: "Alex",
                                      friends: ["Shurik", "Hola"],
                                      greet: () => {
                                      console.log("How you doing?");
                                      }
                                      });
                                      // '{name: "Alex", friends: ["Shurik", "Hola"], greet: () => { console.log("How you doing?"); }}' +
                                      javaScriptToString({
                                      name: "Alex",
                                      friends: ["Shurik", "Hola"],
                                      greet: () => {
                                      console.log("How you doing?");
                                      }
                                      });
                                      // '{name: "Alex", friends: ["Shurik", "Hola"], greet: () => { console.log("How you doing?"); }}'
                                      -
                                      function Simple(title) {
                                      this.title = title || "world";
                                      }
                                      Simple.count = 0;
                                      Simple.prototype.show = function () {
                                      Simple.count++;
                                      console.log("title =", this.title);
                                      };

                                      javaScriptToString(Simple);
                                      // '(function(){ var Simple = function Simple(title) { ... }; Simple.count = 0; Simple.prototype.show = function(){ ... }; return Simple; }())' +
                                      function Simple(title) {
                                      this.title = title || "world";
                                      }
                                      Simple.count = 0;
                                      Simple.prototype.show = function () {
                                      Simple.count++;
                                      console.log("title =", this.title);
                                      };

                                      javaScriptToString(Simple);
                                      // '(function(){ var Simple = function Simple(title) { ... }; Simple.count = 0; Simple.prototype.show = function(){ ... }; return Simple; }())'

                                      Objects that reference themselves are fully supported:

                                      -
                                      var x = [1, 2, 3];
                                      x[0] = x;

                                      javaScriptToString(x);
                                      // '(function(){ var ___j2s_0 = [null, 2, 3]; ___j2s_0['0'] = ___j2s_0; return ___j2s_0; }())' +
                                      var x = [1, 2, 3];
                                      x[0] = x;

                                      javaScriptToString(x);
                                      // '(function(){ var ___j2s_0 = [null, 2, 3]; ___j2s_0['0'] = ___j2s_0; return ___j2s_0; }())'

                                      Objects shared between different branches are preserved as references:

                                      -
                                      var shared = { value: 42 };
                                      var obj = { a: shared, b: shared };

                                      javaScriptToString(obj);
                                      // Generates code where obj.a === obj.b (same reference), like:
                                      // (function(){ var ___j2s_0 = {
                                      // a: {
                                      // value: 42
                                      // },
                                      // b: null
                                      // }; ___j2s_0['b'] = ___j2s_0['a']; return ___j2s_0; }()) +
                                      var shared = { value: 42 };
                                      var obj = { a: shared, b: shared };

                                      javaScriptToString(obj);
                                      // Generates code where obj.a === obj.b (same reference), like:
                                      // (function(){ var ___j2s_0 = {
                                      // a: {
                                      // value: 42
                                      // },
                                      // b: null
                                      // }; ___j2s_0['b'] = ___j2s_0['a']; return ___j2s_0; }())

                                      Combine with @lopatnov/worker-from-string to serialize functions and data for execution in a Web Worker:

                                      -
                                      import javaScriptToString from "@lopatnov/javascripttostring";
                                      import workerFromString from "@lopatnov/worker-from-string";

                                      // Define a computation function
                                      const fibonacci = function(n) {
                                      if (n <= 1) return n;
                                      let a = 0, b = 1;
                                      for (let i = 2; i <= n; i++) {
                                      [a, b] = [b, a + b];
                                      }
                                      return b;
                                      };

                                      // Serialize and send to a worker
                                      const fnString = javaScriptToString(fibonacci);

                                      const worker = workerFromString(`
                                      const fibonacci = ${fnString};
                                      self.onmessage = function(e) {
                                      postMessage({ input: e.data, result: fibonacci(e.data) });
                                      };
                                      `);

                                      worker.onmessage = (e) => console.log(e.data); // { input: 40, result: 102334155 }
                                      worker.postMessage(40); +
                                      import javaScriptToString from "@lopatnov/javascripttostring";
                                      import workerFromString from "@lopatnov/worker-from-string";

                                      // Define a computation function
                                      const fibonacci = function(n) {
                                      if (n <= 1) return n;
                                      let a = 0, b = 1;
                                      for (let i = 2; i <= n; i++) {
                                      [a, b] = [b, a + b];
                                      }
                                      return b;
                                      };

                                      // Serialize and send to a worker
                                      const fnString = javaScriptToString(fibonacci);

                                      const worker = workerFromString(`
                                      const fibonacci = ${fnString};
                                      self.onmessage = function(e) {
                                      postMessage({ input: e.data, result: fibonacci(e.data) });
                                      };
                                      `);

                                      worker.onmessage = (e) => console.log(e.data); // { input: 40, result: 102334155 }
                                      worker.postMessage(40);

                                      The generated string can be evaluated back to a working JavaScript value:

                                      -
                                      var original = { name: "test" };
                                      original.self = original;

                                      var code = javaScriptToString(original);
                                      var restored = Function("return " + code)();

                                      console.log(restored.self === restored); // true
                                      console.log(restored.name); // "test" +
                                      var original = { name: "test" };
                                      original.self = original;

                                      var code = javaScriptToString(original);
                                      var restored = Function("return " + code)();

                                      console.log(restored.self === restored); // true
                                      console.log(restored.name); // "test"
                                      diff --git a/docs/interfaces/ij2soptions.html b/docs/interfaces/ij2soptions.html index ce832e6..8773d32 100644 --- a/docs/interfaces/ij2soptions.html +++ b/docs/interfaces/ij2soptions.html @@ -1,7 +1,7 @@ -IJ2SOptions | @lopatnov/javascripttostring
                                      @lopatnov/javascripttostring
                                        Preparing search index...

                                        Interface IJ2SOptions

                                        interface IJ2SOptions {
                                            includeBuffers?: boolean;
                                            includeFunctionProperties?: boolean;
                                            includeFunctionPrototype?: boolean;
                                            nestedArraysAmount?: number;
                                            nestedFunctionsAmount?: number;
                                            nestedObjectsAmount?: number;
                                        }
                                        Index

                                        Properties

                                        includeBuffers? +IJ2SOptions | @lopatnov/javascripttostring
                                        @lopatnov/javascripttostring
                                          Preparing search index...

                                          Interface IJ2SOptions

                                          interface IJ2SOptions {
                                              includeBuffers?: boolean;
                                              includeFunctionProperties?: boolean;
                                              includeFunctionPrototype?: boolean;
                                              nestedArraysAmount?: number;
                                              nestedFunctionsAmount?: number;
                                              nestedObjectsAmount?: number;
                                          }
                                          Index

                                          Properties

                                          includeBuffers?: boolean
                                          includeFunctionProperties?: boolean
                                          includeFunctionPrototype?: boolean
                                          nestedArraysAmount?: number
                                          nestedFunctionsAmount?: number
                                          nestedObjectsAmount?: number
                                          +

                                          Properties

                                          includeBuffers?: boolean
                                          includeFunctionProperties?: boolean
                                          includeFunctionPrototype?: boolean
                                          nestedArraysAmount?: number
                                          nestedFunctionsAmount?: number
                                          nestedObjectsAmount?: number
                                          diff --git a/docs/media/CHANGELOG.md b/docs/media/CHANGELOG.md index c3e7747..96921f7 100644 --- a/docs/media/CHANGELOG.md +++ b/docs/media/CHANGELOG.md @@ -2,7 +2,7 @@ All notable changes to this project will be documented in this file. -## [2.0.0] +## [2.0.0] - 2026-02-13 ### Added diff --git a/docs/media/index-1.html b/docs/media/index-1.html index b1b5caa..5668473 100644 --- a/docs/media/index-1.html +++ b/docs/media/index-1.html @@ -10,20 +10,20 @@
                                          -
                                          <!-- Development version -->
                                          <script src="https://lopatnov.github.io/jsToString/dist/javascripttostring.umd.js"></script> +
                                          <script src="https://unpkg.com/@lopatnov/javascripttostring"></script>
                                           
                                          -
                                          import javaScriptToString from "@lopatnov/javascripttostring";
                                          +
                                          import javaScriptToString from "@lopatnov/javascripttostring";
                                           
                                          -
                                          const javaScriptToString = require("@lopatnov/javascripttostring");
                                          +
                                          const javaScriptToString = require("@lopatnov/javascripttostring");
                                           
                                          -
                                          const javaScriptToString = window.javaScriptToString;
                                          +
                                          const javaScriptToString = window.javaScriptToString;
                                           
                                          @@ -102,39 +102,39 @@ -
                                          javaScriptToString("Hello world");   // '"Hello world"'
                                          javaScriptToString(42); // '42'
                                          javaScriptToString(true); // 'true'
                                          javaScriptToString(undefined); // 'undefined'
                                          javaScriptToString(null); // 'null' +
                                          javaScriptToString("Hello world");   // '"Hello world"'
                                          javaScriptToString(42); // '42'
                                          javaScriptToString(true); // 'true'
                                          javaScriptToString(undefined); // 'undefined'
                                          javaScriptToString(null); // 'null'
                                          -
                                          javaScriptToString(["Hello", "World"]);
                                          // '["Hello", "World"]' +
                                          javaScriptToString(["Hello", "World"]);
                                          // '["Hello", "World"]'
                                          -
                                          javaScriptToString({
                                          name: "Alex",
                                          friends: ["Shurik", "Hola"],
                                          greet: () => {
                                          console.log("How you doing?");
                                          }
                                          });
                                          // '{name: "Alex", friends: ["Shurik", "Hola"], greet: () => { console.log("How you doing?"); }}' +
                                          javaScriptToString({
                                          name: "Alex",
                                          friends: ["Shurik", "Hola"],
                                          greet: () => {
                                          console.log("How you doing?");
                                          }
                                          });
                                          // '{name: "Alex", friends: ["Shurik", "Hola"], greet: () => { console.log("How you doing?"); }}'
                                          -
                                          function Simple(title) {
                                          this.title = title || "world";
                                          }
                                          Simple.count = 0;
                                          Simple.prototype.show = function () {
                                          Simple.count++;
                                          console.log("title =", this.title);
                                          };

                                          javaScriptToString(Simple);
                                          // '(function(){ var Simple = function Simple(title) { ... }; Simple.count = 0; Simple.prototype.show = function(){ ... }; return Simple; }())' +
                                          function Simple(title) {
                                          this.title = title || "world";
                                          }
                                          Simple.count = 0;
                                          Simple.prototype.show = function () {
                                          Simple.count++;
                                          console.log("title =", this.title);
                                          };

                                          javaScriptToString(Simple);
                                          // '(function(){ var Simple = function Simple(title) { ... }; Simple.count = 0; Simple.prototype.show = function(){ ... }; return Simple; }())'

                                          Objects that reference themselves are fully supported:

                                          -
                                          var x = [1, 2, 3];
                                          x[0] = x;

                                          javaScriptToString(x);
                                          // '(function(){ var ___j2s_0 = [null, 2, 3]; ___j2s_0['0'] = ___j2s_0; return ___j2s_0; }())' +
                                          var x = [1, 2, 3];
                                          x[0] = x;

                                          javaScriptToString(x);
                                          // '(function(){ var ___j2s_0 = [null, 2, 3]; ___j2s_0['0'] = ___j2s_0; return ___j2s_0; }())'

                                          Objects shared between different branches are preserved as references:

                                          -
                                          var shared = { value: 42 };
                                          var obj = { a: shared, b: shared };

                                          javaScriptToString(obj);
                                          // Generates code where obj.a === obj.b (same reference), like:
                                          // (function(){ var ___j2s_0 = {
                                          // a: {
                                          // value: 42
                                          // },
                                          // b: null
                                          // }; ___j2s_0['b'] = ___j2s_0['a']; return ___j2s_0; }()) +
                                          var shared = { value: 42 };
                                          var obj = { a: shared, b: shared };

                                          javaScriptToString(obj);
                                          // Generates code where obj.a === obj.b (same reference), like:
                                          // (function(){ var ___j2s_0 = {
                                          // a: {
                                          // value: 42
                                          // },
                                          // b: null
                                          // }; ___j2s_0['b'] = ___j2s_0['a']; return ___j2s_0; }())

                                          Combine with @lopatnov/worker-from-string to serialize functions and data for execution in a Web Worker:

                                          -
                                          import javaScriptToString from "@lopatnov/javascripttostring";
                                          import workerFromString from "@lopatnov/worker-from-string";

                                          // Define a computation function
                                          const fibonacci = function(n) {
                                          if (n <= 1) return n;
                                          let a = 0, b = 1;
                                          for (let i = 2; i <= n; i++) {
                                          [a, b] = [b, a + b];
                                          }
                                          return b;
                                          };

                                          // Serialize and send to a worker
                                          const fnString = javaScriptToString(fibonacci);

                                          const worker = workerFromString(`
                                          const fibonacci = ${fnString};
                                          self.onmessage = function(e) {
                                          postMessage({ input: e.data, result: fibonacci(e.data) });
                                          };
                                          `);

                                          worker.onmessage = (e) => console.log(e.data); // { input: 40, result: 102334155 }
                                          worker.postMessage(40); +
                                          import javaScriptToString from "@lopatnov/javascripttostring";
                                          import workerFromString from "@lopatnov/worker-from-string";

                                          // Define a computation function
                                          const fibonacci = function(n) {
                                          if (n <= 1) return n;
                                          let a = 0, b = 1;
                                          for (let i = 2; i <= n; i++) {
                                          [a, b] = [b, a + b];
                                          }
                                          return b;
                                          };

                                          // Serialize and send to a worker
                                          const fnString = javaScriptToString(fibonacci);

                                          const worker = workerFromString(`
                                          const fibonacci = ${fnString};
                                          self.onmessage = function(e) {
                                          postMessage({ input: e.data, result: fibonacci(e.data) });
                                          };
                                          `);

                                          worker.onmessage = (e) => console.log(e.data); // { input: 40, result: 102334155 }
                                          worker.postMessage(40);

                                          The generated string can be evaluated back to a working JavaScript value:

                                          -
                                          var original = { name: "test" };
                                          original.self = original;

                                          var code = javaScriptToString(original);
                                          var restored = Function("return " + code)();

                                          console.log(restored.self === restored); // true
                                          console.log(restored.name); // "test" +
                                          var original = { name: "test" };
                                          original.self = original;

                                          var code = javaScriptToString(original);
                                          var restored = Function("return " + code)();

                                          console.log(restored.self === restored); // true
                                          console.log(restored.name); // "test"
                                          diff --git a/rollup.config.ts b/rollup.config.ts index 9e4fccf..c4280ed 100644 --- a/rollup.config.ts +++ b/rollup.config.ts @@ -18,7 +18,8 @@ export default { file: pkg.browser, name: camelCase(libraryName), format: 'umd', - sourcemap: true + sourcemap: true, + plugins: [uglify({ sourceMap: true })] }, { file: pkg.module, @@ -56,8 +57,5 @@ export default { // which external modules to include in the bundle // https://github.com/rollup/rollup-plugin-node-resolve#usage resolve(), - uglify({ - sourceMap: true - }), ], }; diff --git a/set-registry.js b/set-registry.js index 8a6d214..cfcf82a 100644 --- a/set-registry.js +++ b/set-registry.js @@ -17,4 +17,4 @@ if (!!registry) { delete pkg.publishConfig.registry; } -fs.writeFileSync("package.json", JSON.stringify(pkg, null, 4)); \ No newline at end of file +fs.writeFileSync("package.json", JSON.stringify(pkg, null, 2)); \ No newline at end of file diff --git a/src/javascripttostring.ts b/src/javascripttostring.ts index 6163370..29260a9 100644 --- a/src/javascripttostring.ts +++ b/src/javascripttostring.ts @@ -104,7 +104,6 @@ function symbolToString(value: any): string { case Symbol.isConcatSpreadable: case Symbol.iterator: case Symbol.match: - case Symbol.prototype: case Symbol.replace: case Symbol.search: case Symbol.species: @@ -113,6 +112,8 @@ function symbolToString(value: any): string { case Symbol.toStringTag: case Symbol.unscopables: return value.description; + case Symbol.prototype: + return "Symbol.prototype"; default: const description = value.description ? `"${value.description}"` : ""; return `Symbol(${description})`; @@ -121,16 +122,22 @@ function symbolToString(value: any): string { function dateToString(value: Date): string { if (isNaN(value.getTime())) { - return `new Date(${value.toString()})`; + return "new Date(NaN)"; } - return `new Date(${value.toISOString()})`; + return `new Date("${value.toISOString()}")`; } function errorToString(value: any): string { - const message = JSON.stringify(value.message), - fileName = JSON.stringify(value.fileName), - lineNumber = JSON.stringify(value.lineNumber); - return `new Error(${message}, ${fileName}, ${lineNumber})`; + const message = JSON.stringify(value.message); + const errorClass = value.constructor?.name || "Error"; + const knownErrors = [ + "Error", "TypeError", "RangeError", "ReferenceError", + "SyntaxError", "URIError", "EvalError" + ]; + if (knownErrors.includes(errorClass)) { + return `new ${errorClass}(${message})`; + } + return `new Error(${message})`; } function arrayToString(value: Array, options: IJ2SOptions, history: IJ2SHistory): string { @@ -154,7 +161,7 @@ function getLocalRefs(value: any) { function attachActions(localRefs: RefInstance[], result: string) { if (localRefs.length > 0) { - counter = counter++ % Number.MAX_SAFE_INTEGER; + counter = (counter + 1) % Number.MAX_SAFE_INTEGER; const localName = `___j2s_${counter}`; const actions = localRefs.reduce((x1: string, x2: RefInstance) => { const action = converToAction(localName, x2); @@ -233,8 +240,9 @@ function objectToString(value: any, options: IJ2SOptions, history: IJ2SHistory): history.currentPath.pop(); history.references.pop(); if (propertyValue !== "undefined") { - if (!/^[a-zA-Z]+$/.test(propertyName)) { - propertyName = `"${propertyName}"`; + if (!/^[a-zA-Z_$][a-zA-Z0-9_$]*$/.test(propertyName)) { + const escaped = propertyName.replace(/\\/g, "\\\\").replace(/"/g, '\\"'); + propertyName = `"${escaped}"`; } objectValues.push(`${propertyName}: ${propertyValue}`); } @@ -442,7 +450,7 @@ function attachCrossRefActions(localCrossRefs: CrossRefInstance[], result: strin if (localCrossRefs.length === 0) { return result; } - counter = counter++ % Number.MAX_SAFE_INTEGER; + counter = (counter + 1) % Number.MAX_SAFE_INTEGER; const localName = `___j2s_${counter}`; const actions = localCrossRefs .map((cr) => { diff --git a/test/generator.test.js b/test/generator.test.js index c3624b5..c012bfc 100644 --- a/test/generator.test.js +++ b/test/generator.test.js @@ -1,4 +1,4 @@ -var j2s = require("../dist/javascripttostring.umd.js"); +var j2s = require("../src/javascripttostring").default; describe("Function to String", () => { it("should convert generator function", () => { diff --git a/test/javascripttostring.test.js b/test/javascripttostring.test.js index f50bbcb..a074f1e 100644 --- a/test/javascripttostring.test.js +++ b/test/javascripttostring.test.js @@ -117,9 +117,17 @@ describe("RegExp to String", () => { describe("Error to String", () => { it("should convert Error", () => { const actual = (0, javascripttostring_1.default)(new Error("A mistake")); - const expected = 'new Error("A mistake", undefined, undefined)'; + const expected = 'new Error("A mistake")'; expect(actual).toBe(expected); }); + it("should convert TypeError", () => { + const actual = (0, javascripttostring_1.default)(new TypeError("bad type")); + expect(actual).toBe('new TypeError("bad type")'); + }); + it("should convert RangeError", () => { + const actual = (0, javascripttostring_1.default)(new RangeError("out of range")); + expect(actual).toBe('new RangeError("out of range")'); + }); }); describe("Array to String", () => { it("should convert empty Array", () => { diff --git a/test/javascripttostring.test.ts b/test/javascripttostring.test.ts index 196afb1..bda1d32 100644 --- a/test/javascripttostring.test.ts +++ b/test/javascripttostring.test.ts @@ -140,10 +140,94 @@ describe("RegExp to String", () => { describe("Error to String", () => { it("should convert Error", () => { const actual = j2s(new Error("A mistake")); - const expected = 'new Error("A mistake", undefined, undefined)'; + const expected = 'new Error("A mistake")'; expect(actual).toBe(expected); }); + it("should eval Error back", () => { + const err = new Error("test error"); + const str = j2s(err); + const restored = Function("return " + str)(); + + expect(restored).toBeInstanceOf(Error); + expect(restored.message).toBe("test error"); + }); + it("should convert TypeError", () => { + const actual = j2s(new TypeError("bad type")); + expect(actual).toBe('new TypeError("bad type")'); + const restored = Function("return " + actual)(); + expect(restored).toBeInstanceOf(TypeError); + expect(restored.message).toBe("bad type"); + }); + it("should convert RangeError", () => { + const actual = j2s(new RangeError("out of range")); + expect(actual).toBe('new RangeError("out of range")'); + const restored = Function("return " + actual)(); + expect(restored).toBeInstanceOf(RangeError); + expect(restored.message).toBe("out of range"); + }); + it("should convert ReferenceError", () => { + const actual = j2s(new ReferenceError("not defined")); + expect(actual).toBe('new ReferenceError("not defined")'); + const restored = Function("return " + actual)(); + expect(restored).toBeInstanceOf(ReferenceError); + expect(restored.message).toBe("not defined"); + }); +}); + +describe("Date to String", () => { + it("should convert valid Date and eval back", () => { + const date = new Date("2026-01-15T10:30:00.000Z"); + const str = j2s(date); + const restored = Function("return " + str)(); + + expect(restored).toBeInstanceOf(Date); + expect(restored.toISOString()).toBe("2026-01-15T10:30:00.000Z"); + }); + it("should convert invalid Date", () => { + const date = new Date("not a date"); + const str = j2s(date); + const restored = Function("return " + str)(); + + expect(restored).toBeInstanceOf(Date); + expect(isNaN(restored.getTime())).toBe(true); + }); +}); + +describe("Edge cases", () => { + it("should convert NaN", () => { + const str = j2s(NaN); + expect(str).toBe("Number.NaN"); + const restored = Function("return " + str)(); + expect(Number.isNaN(restored)).toBe(true); + }); + it("should convert Infinity", () => { + const str = j2s(Infinity); + expect(str).toBe("Number.POSITIVE_INFINITY"); + }); + it("should convert -Infinity", () => { + const str = j2s(-Infinity); + expect(str).toBe("Number.NEGATIVE_INFINITY"); + }); + it("should handle property names with special characters", () => { + const obj = { "key-with-dash": 1, "key.with.dot": 2, normal: 3, _under: 4, $dollar: 5 }; + const str = j2s(obj); + const restored = Function("return " + str)(); + + expect(restored["key-with-dash"]).toBe(1); + expect(restored["key.with.dot"]).toBe(2); + expect(restored.normal).toBe(3); + expect(restored._under).toBe(4); + expect(restored.$dollar).toBe(5); + }); + it("should handle property names with quotes", () => { + const obj: any = {}; + obj['key"quote'] = 42; + const str = j2s(obj); + const restored = Function("return " + str)(); + + expect(restored['key"quote']).toBe(42); + }); }); describe("Array to String", () => { diff --git a/tsconfig.json b/tsconfig.json index 3f2639f..b2d6764 100644 --- a/tsconfig.json +++ b/tsconfig.json @@ -3,7 +3,7 @@ "moduleResolution": "bundler", "target": "es2017", "module": "esnext", - "lib": ["es2017", "dom"], + "lib": ["es2017"], "strict": true, "sourceMap": true, "declaration": true, From 4b455c705451f9e0b6317dff1cfe2f21e71434ad Mon Sep 17 00:00:00 2001 From: lopatnov Date: Fri, 13 Feb 2026 14:49:33 +0200 Subject: [PATCH 09/18] Fixed issues --- dist/javascripttostring.es5.js | 56 +++++++++++++++++-------- dist/javascripttostring.es5.js.map | 2 +- dist/javascripttostring.umd.js | 56 +++++++++++++++++-------- dist/javascripttostring.umd.js.map | 2 +- dist/lib/javascripttostring.js | 56 +++++++++++++++++-------- dist/lib/javascripttostring.js.map | 2 +- docs/functions/default.html | 2 +- docs/interfaces/ij2soptions.html | 4 +- src/javascripttostring.ts | 55 +++++++++++++++++-------- test/javascripttostring.test.ts | 65 ++++++++++++++++++++++++++++++ 10 files changed, 230 insertions(+), 70 deletions(-) diff --git a/dist/javascripttostring.es5.js b/dist/javascripttostring.es5.js index 012d66a..9014a0a 100644 --- a/dist/javascripttostring.es5.js +++ b/dist/javascripttostring.es5.js @@ -76,6 +76,9 @@ function numberToString(value) { if (Number.isNaN(value)) { return "Number.NaN"; } + if (Object.is(value, -0)) { + return "-0"; + } switch (value) { case Number.POSITIVE_INFINITY: return "Number.POSITIVE_INFINITY"; @@ -129,7 +132,11 @@ function symbolToString(value) { case Symbol.prototype: return "Symbol.prototype"; default: - const description = value.description ? `"${value.description}"` : ""; + const registryKey = Symbol.keyFor(value); + if (registryKey !== undefined) { + return `Symbol.for(${JSON.stringify(registryKey)})`; + } + const description = value.description !== undefined ? JSON.stringify(value.description) : ""; return `Symbol(${description})`; } } @@ -139,6 +146,13 @@ function dateToString(value) { } return `new Date("${value.toISOString()}")`; } +function regexpToString(value) { + const str = String(value); + if (value.lastIndex !== 0) { + return `(function(){ var r = ${str}; r.lastIndex = ${value.lastIndex}; return r; }())`; + } + return str; +} function errorToString(value) { var _a; const message = JSON.stringify(value.message); @@ -155,17 +169,21 @@ function errorToString(value) { function arrayToString(value, options, history) { if (value.length === 0) return "[]"; - const arrayValues = value.reduce((x1, x2, index) => { - const key = index.toString(); - history.references.push(key); - history.currentPath.push(key); - let str = !!x1 ? `${x1}, ` : ""; - str += stringifyRef(x2, options, history); - history.currentPath.pop(); - history.references.pop(); - return str; - }, ""); - return attachActions(getLocalRefs(value), `[${arrayValues}]`); + const parts = []; + for (let i = 0; i < value.length; i++) { + if (!(i in value)) { + parts.push(""); + } + else { + const key = i.toString(); + history.references.push(key); + history.currentPath.push(key); + parts.push(stringifyRef(value[i], options, history)); + history.currentPath.pop(); + history.references.pop(); + } + } + return attachActions(getLocalRefs(value), `[${parts.join(", ")}]`); } function getLocalRefs(value) { return refs.filter((x) => x.source === value); @@ -232,7 +250,7 @@ function mapToString(value, options, history) { function objectToString(value, options, history) { const objectValues = []; for (let propertyName in value) { - if (value.hasOwnProperty(propertyName)) { + if (Object.prototype.hasOwnProperty.call(value, propertyName)) { history.references.push(propertyName); history.currentPath.push(propertyName); const propertyValue = stringifyRef(value[propertyName], options, history); @@ -254,14 +272,20 @@ function objectToString(value, options, history) { function functionPropertiesToString(functionName, value, options, history) { let result = ""; for (const propertyName in value) { - if (value.hasOwnProperty(propertyName)) { + if (Object.prototype.hasOwnProperty.call(value, propertyName)) { history.references.push(propertyName); history.currentPath.push(propertyName); const propertyValue = stringifyRef(value[propertyName], options, history); history.currentPath.pop(); history.references.pop(); if (propertyValue !== "undefined") { - result += `${functionName}.${propertyName} = ${propertyValue};\n`; + if (/^[a-zA-Z_$][a-zA-Z0-9_$]*$/.test(propertyName)) { + result += `${functionName}.${propertyName} = ${propertyValue};\n`; + } + else { + const escaped = propertyName.replace(/\\/g, "\\\\").replace(/"/g, '\\"'); + result += `${functionName}["${escaped}"] = ${propertyValue};\n`; + } } } } @@ -318,7 +342,7 @@ function stringify(value, options, history) { case "boolean": return String(value); case "regexp": - return String(value); + return regexpToString(value); case "string": return JSON.stringify(value); case "number": diff --git a/dist/javascripttostring.es5.js.map b/dist/javascripttostring.es5.js.map index 7b80487..391647a 100644 --- a/dist/javascripttostring.es5.js.map +++ b/dist/javascripttostring.es5.js.map @@ -1 +1 @@ -{"version":3,"file":"javascripttostring.es5.js","sources":["../node_modules/@lopatnov/get-internal-type/dist/get-internal-type.es.js","../src/javascripttostring.ts"],"sourcesContent":["var types = {}, typesToString = types.toString, buildInList = [\r\n \"Boolean\",\r\n \"Number\",\r\n \"String\",\r\n \"Function\",\r\n \"Array\",\r\n \"Date\",\r\n \"RegExp\",\r\n \"Object\",\r\n \"Error\",\r\n \"Promise\",\r\n \"Generator\",\r\n \"GeneratorFunction\",\r\n \"ArrayBuffer\",\r\n \"DataView\"\r\n], typedArrays = [\r\n \"Int8Array\",\r\n \"Uint8Array\",\r\n \"Uint8ClampedArray\",\r\n \"Int16Array\",\r\n \"Uint16Array\",\r\n \"Int32Array\",\r\n \"Uint32Array\",\r\n \"Float32Array\",\r\n \"Float64Array\",\r\n \"BigInt64Array\",\r\n \"BigUint64Array\"\r\n], maps = [\"Map\", \"WeakMap\"], sets = [\"Set\", \"WeakSet\"];\r\nbuildInList.forEach(function (name) {\r\n types[\"[object \" + name + \"]\"] = name.toLowerCase();\r\n});\r\nmaps.forEach(function (name) {\r\n types[\"[object \" + name + \"]\"] = \"map\";\r\n});\r\nsets.forEach(function (name) {\r\n types[\"[object \" + name + \"]\"] = \"set\";\r\n});\r\ntypedArrays.forEach(function (name) {\r\n types[\"[object \" + name + \"]\"] = \"typedarray\";\r\n});\r\nfunction getInternalType(obj) {\r\n return obj == null\r\n ? obj + \"\"\r\n : typeof obj === \"object\" || typeof obj === \"function\"\r\n ? types[typesToString.call(obj)] || \"object\"\r\n : typeof obj;\r\n}\n\nexport default getInternalType;\n//# sourceMappingURL=get-internal-type.es.js.map\n",null],"names":["getObjectType"],"mappings":"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","x_google_ignoreList":[0]} \ No newline at end of file +{"version":3,"file":"javascripttostring.es5.js","sources":["../node_modules/@lopatnov/get-internal-type/dist/get-internal-type.es.js","../src/javascripttostring.ts"],"sourcesContent":["var types = {}, typesToString = types.toString, buildInList = [\r\n \"Boolean\",\r\n \"Number\",\r\n \"String\",\r\n \"Function\",\r\n \"Array\",\r\n \"Date\",\r\n \"RegExp\",\r\n \"Object\",\r\n \"Error\",\r\n \"Promise\",\r\n \"Generator\",\r\n \"GeneratorFunction\",\r\n \"ArrayBuffer\",\r\n \"DataView\"\r\n], typedArrays = [\r\n \"Int8Array\",\r\n \"Uint8Array\",\r\n \"Uint8ClampedArray\",\r\n \"Int16Array\",\r\n \"Uint16Array\",\r\n \"Int32Array\",\r\n \"Uint32Array\",\r\n \"Float32Array\",\r\n \"Float64Array\",\r\n \"BigInt64Array\",\r\n \"BigUint64Array\"\r\n], maps = [\"Map\", \"WeakMap\"], sets = [\"Set\", \"WeakSet\"];\r\nbuildInList.forEach(function (name) {\r\n types[\"[object \" + name + \"]\"] = name.toLowerCase();\r\n});\r\nmaps.forEach(function (name) {\r\n types[\"[object \" + name + \"]\"] = \"map\";\r\n});\r\nsets.forEach(function (name) {\r\n types[\"[object \" + name + \"]\"] = \"set\";\r\n});\r\ntypedArrays.forEach(function (name) {\r\n types[\"[object \" + name + \"]\"] = \"typedarray\";\r\n});\r\nfunction getInternalType(obj) {\r\n return obj == null\r\n ? obj + \"\"\r\n : typeof obj === \"object\" || typeof obj === \"function\"\r\n ? types[typesToString.call(obj)] || \"object\"\r\n : typeof obj;\r\n}\n\nexport default getInternalType;\n//# sourceMappingURL=get-internal-type.es.js.map\n",null],"names":["getObjectType"],"mappings":"AAAA,IAAI,KAAK,GAAG,EAAE,EAAE,aAAa,GAAG,KAAK,CAAC,QAAQ,EAAE,WAAW,GAAG;AAC9D,IAAI,SAAS;AACb,IAAI,QAAQ;AACZ,IAAI,QAAQ;AACZ,IAAI,UAAU;AACd,IAAI,OAAO;AACX,IAAI,MAAM;AACV,IAAI,QAAQ;AACZ,IAAI,QAAQ;AACZ,IAAI,OAAO;AACX,IAAI,SAAS;AACb,IAAI,WAAW;AACf,IAAI,mBAAmB;AACvB,IAAI,aAAa;AACjB,IAAI,UAAU;AACd,CAAC,EAAE,WAAW,GAAG;AACjB,IAAI,WAAW;AACf,IAAI,YAAY;AAChB,IAAI,mBAAmB;AACvB,IAAI,YAAY;AAChB,IAAI,aAAa;AACjB,IAAI,YAAY;AAChB,IAAI,aAAa;AACjB,IAAI,cAAc;AAClB,IAAI,cAAc;AAClB,IAAI,eAAe;AACnB,IAAI,gBAAgB;AACpB,CAAC,EAAE,IAAI,GAAG,CAAC,KAAK,EAAE,SAAS,CAAC,EAAE,IAAI,GAAG,CAAC,KAAK,EAAE,SAAS,CAAC,CAAC;AACxD,WAAW,CAAC,OAAO,CAAC,UAAU,IAAI,EAAE;AACpC,IAAI,KAAK,CAAC,UAAU,GAAG,IAAI,GAAG,GAAG,CAAC,GAAG,IAAI,CAAC,WAAW,EAAE,CAAC;AACxD,CAAC,CAAC,CAAC;AACH,IAAI,CAAC,OAAO,CAAC,UAAU,IAAI,EAAE;AAC7B,IAAI,KAAK,CAAC,UAAU,GAAG,IAAI,GAAG,GAAG,CAAC,GAAG,KAAK,CAAC;AAC3C,CAAC,CAAC,CAAC;AACH,IAAI,CAAC,OAAO,CAAC,UAAU,IAAI,EAAE;AAC7B,IAAI,KAAK,CAAC,UAAU,GAAG,IAAI,GAAG,GAAG,CAAC,GAAG,KAAK,CAAC;AAC3C,CAAC,CAAC,CAAC;AACH,WAAW,CAAC,OAAO,CAAC,UAAU,IAAI,EAAE;AACpC,IAAI,KAAK,CAAC,UAAU,GAAG,IAAI,GAAG,GAAG,CAAC,GAAG,YAAY,CAAC;AAClD,CAAC,CAAC,CAAC;AACH,SAAS,eAAe,CAAC,GAAG,EAAE;AAC9B,IAAI,OAAO,GAAG,IAAI,IAAI;AACtB,UAAU,GAAG,GAAG,EAAE;AAClB,UAAU,OAAO,GAAG,KAAK,QAAQ,IAAI,OAAO,GAAG,KAAK,UAAU;AAC9D,cAAc,KAAK,CAAC,aAAa,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,IAAI,QAAQ;AACxD,cAAc,OAAO,GAAG,CAAC;AACzB;;ACzBA,IAAI,IAAI,GAAkB,EAAE;AAC5B,IAAI,SAAS,GAAuB,EAAE;AACtC,IAAI,OAAO,GAAG,CAAC;AAWf,SAAS,mBAAmB,CAAC,GAAQ,EAAE,GAAQ,EAAE,OAAe,EAAE,aAAa,GAAG,IAAI,EAAA;AACpF,IAAA,MAAM,QAAQ,GAAG,MAAM,CAAC,mBAAmB,CAAC,aAAa,GAAG,GAAG,CAAC,SAAS,GAAG,GAAG,CAAC;IAChF,MAAM,SAAS,GAAG,aAAa,GAAG,aAAa,GAAG,GAAG;AACrD,IAAA,KAAK,MAAM,IAAI,IAAI,QAAQ,EAAE;AAC3B,QAAA,IAAI,CAAC,QAAQ,EAAE,QAAQ,EAAE,WAAW,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE;YACvD,GAAG,CAAC,CAAA,EAAG,OAAO,CAAA,EAAG,SAAS,CAAA,EAAG,IAAI,CAAA,CAAE,CAAC,GAAG,aAAa,GAAG,GAAG,CAAC,SAAS,CAAC,IAAW,CAAC,GAAG,GAAG,CAAC,IAAW,CAAC;QACtG;IACF;AACF;AAEA,MAAM,eAAe,GAAG,CAAC,MAAK;IAC5B,MAAM,SAAS,GAAQ,EAAE;IACzB,mBAAmB,CAAC,SAAS,EAAE,KAAK,EAAE,OAAO,EAAE,KAAK,CAAC;AACrD,IAAA,mBAAmB,CAAC,SAAS,EAAE,KAAK,EAAE,OAAO,CAAC;IAC9C,mBAAmB,CAAC,SAAS,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,CAAC;IACnD,mBAAmB,CAAC,SAAS,EAAE,MAAM,EAAE,QAAQ,EAAE,KAAK,CAAC;AACvD,IAAA,mBAAmB,CAAC,SAAS,EAAE,MAAM,EAAE,QAAQ,CAAC;IAChD,mBAAmB,CAAC,SAAS,EAAE,QAAQ,EAAE,UAAU,EAAE,KAAK,CAAC;AAC3D,IAAA,mBAAmB,CAAC,SAAS,EAAE,QAAQ,EAAE,UAAU,CAAC;IACpD,mBAAmB,CAAC,SAAS,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,CAAC;AACnD,IAAA,mBAAmB,CAAC,SAAS,EAAE,MAAM,EAAE,QAAQ,CAAC;AAChD,IAAA,SAAS,CAAC,QAAQ,GAAG,QAAQ;AAC7B,IAAA,OAAO,SAAS;AAClB,CAAC,GAAG;AAEJ,SAAS,cAAc,CAAC,KAAa,EAAA;AACnC,IAAA,IAAI,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,EAAE;AACvB,QAAA,OAAO,YAAY;IACrB;IACA,IAAI,MAAM,CAAC,EAAE,CAAC,KAAK,EAAE,EAAE,CAAC,EAAE;AACxB,QAAA,OAAO,IAAI;IACb;IACA,QAAQ,KAAK;QACX,KAAK,MAAM,CAAC,iBAAiB;AAC3B,YAAA,OAAO,0BAA0B;QACnC,KAAK,MAAM,CAAC,iBAAiB;AAC3B,YAAA,OAAO,0BAA0B;QACnC,KAAK,MAAM,CAAC,OAAO;AACjB,YAAA,OAAO,gBAAgB;QACzB,KAAK,MAAM,CAAC,gBAAgB;AAC1B,YAAA,OAAO,yBAAyB;QAClC,KAAK,MAAM,CAAC,gBAAgB;AAC1B,YAAA,OAAO,yBAAyB;QAClC,KAAK,MAAM,CAAC,SAAS;AACnB,YAAA,OAAO,kBAAkB;QAC3B,KAAK,MAAM,CAAC,SAAS;AACnB,YAAA,OAAO,kBAAkB;QAC3B,KAAK,IAAI,CAAC,EAAE;AACV,YAAA,OAAO,SAAS;QAClB,KAAK,IAAI,CAAC,CAAC;AACT,YAAA,OAAO,QAAQ;QACjB,KAAK,IAAI,CAAC,IAAI;AACZ,YAAA,OAAO,WAAW;QACpB,KAAK,IAAI,CAAC,GAAG;AACX,YAAA,OAAO,UAAU;QACnB,KAAK,IAAI,CAAC,MAAM;AACd,YAAA,OAAO,aAAa;QACtB,KAAK,IAAI,CAAC,KAAK;AACb,YAAA,OAAO,YAAY;QACrB,KAAK,IAAI,CAAC,OAAO;AACf,YAAA,OAAO,cAAc;QACvB,KAAK,IAAI,CAAC,KAAK;AACb,YAAA,OAAO,YAAY;AACrB,QAAA;AACE,YAAA,OAAO,MAAM,CAAC,KAAK,CAAC;;AAE1B;AAEA,SAAS,cAAc,CAAC,KAAU,EAAA;IAChC,QAAQ,KAAK;QACX,KAAK,MAAM,CAAC,aAAa;QACzB,KAAK,MAAM,CAAC,WAAW;QACvB,KAAK,MAAM,CAAC,kBAAkB;QAC9B,KAAK,MAAM,CAAC,QAAQ;QACpB,KAAK,MAAM,CAAC,KAAK;QACjB,KAAK,MAAM,CAAC,OAAO;QACnB,KAAK,MAAM,CAAC,MAAM;QAClB,KAAK,MAAM,CAAC,OAAO;QACnB,KAAK,MAAM,CAAC,KAAK;QACjB,KAAK,MAAM,CAAC,WAAW;QACvB,KAAK,MAAM,CAAC,WAAW;QACvB,KAAK,MAAM,CAAC,WAAW;YACrB,OAAO,KAAK,CAAC,WAAW;QAC1B,KAAK,MAAM,CAAC,SAAS;AACnB,YAAA,OAAO,kBAAkB;AAC3B,QAAA;YACE,MAAM,WAAW,GAAG,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC;AACxC,YAAA,IAAI,WAAW,KAAK,SAAS,EAAE;gBAC7B,OAAO,CAAA,WAAA,EAAc,IAAI,CAAC,SAAS,CAAC,WAAW,CAAC,GAAG;YACrD;YACA,MAAM,WAAW,GAAG,KAAK,CAAC,WAAW,KAAK,SAAS,GAAG,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,WAAW,CAAC,GAAG,EAAE;YAC5F,OAAO,CAAA,OAAA,EAAU,WAAW,CAAA,CAAA,CAAG;;AAErC;AAEA,SAAS,YAAY,CAAC,KAAW,EAAA;IAC/B,IAAI,KAAK,CAAC,KAAK,CAAC,OAAO,EAAE,CAAC,EAAE;AAC1B,QAAA,OAAO,eAAe;IACxB;AACA,IAAA,OAAO,aAAa,KAAK,CAAC,WAAW,EAAE,IAAI;AAC7C;AAEA,SAAS,cAAc,CAAC,KAAa,EAAA;AACnC,IAAA,MAAM,GAAG,GAAG,MAAM,CAAC,KAAK,CAAC;AACzB,IAAA,IAAI,KAAK,CAAC,SAAS,KAAK,CAAC,EAAE;AACzB,QAAA,OAAO,wBAAwB,GAAG,CAAA,gBAAA,EAAmB,KAAK,CAAC,SAAS,kBAAkB;IACxF;AACA,IAAA,OAAO,GAAG;AACZ;AAEA,SAAS,aAAa,CAAC,KAAU,EAAA;;IAC/B,MAAM,OAAO,GAAG,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,OAAO,CAAC;IAC7C,MAAM,UAAU,GAAG,CAAA,CAAA,EAAA,GAAA,KAAK,CAAC,WAAW,MAAA,IAAA,IAAA,EAAA,KAAA,MAAA,GAAA,MAAA,GAAA,EAAA,CAAE,IAAI,KAAI,OAAO;AACrD,IAAA,MAAM,WAAW,GAAG;AAClB,QAAA,OAAO,EAAE,WAAW,EAAE,YAAY,EAAE,gBAAgB;QACpD,aAAa,EAAE,UAAU,EAAE;KAC5B;AACD,IAAA,IAAI,WAAW,CAAC,QAAQ,CAAC,UAAU,CAAC,EAAE;AACpC,QAAA,OAAO,CAAA,IAAA,EAAO,UAAU,CAAA,CAAA,EAAI,OAAO,GAAG;IACxC;IACA,OAAO,CAAA,UAAA,EAAa,OAAO,CAAA,CAAA,CAAG;AAChC;AAEA,SAAS,aAAa,CAAC,KAAiB,EAAE,OAAoB,EAAE,OAAoB,EAAA;AAClF,IAAA,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC;AAAE,QAAA,OAAO,IAAI;IACnC,MAAM,KAAK,GAAa,EAAE;AAC1B,IAAA,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,KAAK,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;AACrC,QAAA,IAAI,EAAE,CAAC,IAAI,KAAK,CAAC,EAAE;AACjB,YAAA,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC;QAChB;aAAO;AACL,YAAA,MAAM,GAAG,GAAG,CAAC,CAAC,QAAQ,EAAE;AACxB,YAAA,OAAO,CAAC,UAAU,CAAC,IAAI,CAAC,GAAG,CAAC;AAC5B,YAAA,OAAO,CAAC,WAAW,CAAC,IAAI,CAAC,GAAG,CAAC;AAC7B,YAAA,KAAK,CAAC,IAAI,CAAC,YAAY,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC;AACpD,YAAA,OAAO,CAAC,WAAW,CAAC,GAAG,EAAE;AACzB,YAAA,OAAO,CAAC,UAAU,CAAC,GAAG,EAAE;QAC1B;IACF;AACA,IAAA,OAAO,aAAa,CAAC,YAAY,CAAC,KAAK,CAAC,EAAE,CAAA,CAAA,EAAI,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA,CAAA,CAAG,CAAC;AACpE;AAEA,SAAS,YAAY,CAAC,KAAU,EAAA;AAC9B,IAAA,OAAO,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,MAAM,KAAK,KAAK,CAAC;AAC/C;AAEA,SAAS,aAAa,CAAC,SAAwB,EAAE,MAAc,EAAA;AAC7D,IAAA,IAAI,SAAS,CAAC,MAAM,GAAG,CAAC,EAAE;QACxB,OAAO,GAAG,CAAC,OAAO,GAAG,CAAC,IAAI,MAAM,CAAC,gBAAgB;AACjD,QAAA,MAAM,SAAS,GAAG,CAAA,OAAA,EAAU,OAAO,EAAE;QACrC,MAAM,OAAO,GAAG,SAAS,CAAC,MAAM,CAAC,CAAC,EAAU,EAAE,EAAe,KAAI;YAC/D,MAAM,MAAM,GAAG,cAAc,CAAC,SAAS,EAAE,EAAE,CAAC;AAC5C,YAAA,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;YAChC,OAAO,EAAE,GAAG,MAAM;QACpB,CAAC,EAAE,EAAE,CAAC;QACN,OAAO,CAAA,iBAAA,EAAoB,SAAS,CAAA,GAAA,EAAM,MAAM,KAAK,OAAO,CAAA,QAAA,EAAW,SAAS,CAAA,MAAA,CAAQ;IAC1F;AACA,IAAA,OAAO,MAAM;AACf;AAEA,SAAS,cAAc,CAAC,SAAiB,EAAE,CAAc,EAAA;AACvD,IAAA,MAAM,SAAS,GAAG,CAAC,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC;AAChD,IAAA,IAAI,SAAS,GAAG,CAAC,EAAE;AACjB,QAAA,OAAO,EAAE;IACX;IAEA,MAAM,IAAI,GAAG,CAAC,CAAC,UAAU,CAAC,KAAK,CAAC,SAAS,CAAC;AAC1C,IAAA,IAAI,SAAc;IAClB,IAAI,IAAI,GAAG,EAAE;AACb,IAAA,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;AACpC,QAAA,MAAM,OAAO,GAAG,IAAI,CAAC,CAAC,CAAC;AACvB,QAAA,IAAI,OAAO,KAAK,CAAC,CAAC,MAAM,EAAE;YACxB,IAAI,GAAG,SAAS;AAChB,YAAA,SAAS,GAAG,CAAC,CAAC,MAAM;QACtB;AAAO,aAAA,IAAI,OAAO,OAAO,KAAK,QAAQ,EAAE;YACtC,IAAI,IAAI,CAAA,EAAA,EAAK,OAAO,CAAC,OAAO,CAAC,KAAK,EAAE,KAAK,CAAC,CAAA,EAAA,CAAI;AAC9C,YAAA,SAAS,GAAG,SAAS,CAAC,OAAO,CAAC;QAChC;AAAO,aAAA,IAAI,OAAO,KAAK,SAAS,EAAE;AAChC,YAAA,OAAO,EAAE;QACX;IACF;AAEA,IAAA,OAAO,CAAA,EAAG,IAAI,CAAA,GAAA,EAAM,SAAS,IAAI;AACnC;AAEA,SAAS,kBAAkB,CAAC,KAAU,EAAE,OAAoB,EAAE,OAAoB,EAAA;IAChF,MAAM,GAAG,GAAG,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,EAC3B,SAAS,GAAG,aAAa,CAAC,GAAG,EAAE,OAAO,EAAE,OAAO,CAAC,EAChD,eAAe,GAAG,KAAK,CAAC,WAAW,CAAC,IAAI;AAC1C,IAAA,OAAO,CAAA,IAAA,EAAO,eAAe,CAAA,CAAA,EAAI,SAAS,GAAG;AAC/C;AAEA,SAAS,WAAW,CAAC,KAAe,EAAE,OAAoB,EAAE,OAAoB,EAAA;IAC9E,MAAM,SAAS,GAAa,EAAE;IAE9B,KAAK,CAAC,OAAO,CAAC,CAAC,CAAM,EAAE,MAAW,KAAI;AACpC,QAAA,SAAS,CAAC,IAAI,CAAC,YAAY,CAAC,MAAM,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC;AACxD,IAAA,CAAC,CAAC;AAEF,IAAA,IAAI,SAAS,CAAC,MAAM,KAAK,CAAC;AAAE,QAAA,OAAO,WAAW;IAE9C,OAAO,CAAA,SAAA,EAAY,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI;AAC7C;AAEA,SAAS,WAAW,CAAC,KAAoB,EAAE,OAAoB,EAAE,OAAoB,EAAA;IACnF,MAAM,SAAS,GAAa,EAAE;IAE9B,KAAK,CAAC,OAAO,CAAC,CAAC,UAAe,EAAE,GAAQ,KAAI;QAC1C,SAAS,CAAC,IAAI,CAAC,CAAA,CAAA,EAAI,YAAY,CAAC,GAAG,EAAE,OAAO,EAAE,OAAO,CAAC,CAAA,EAAA,EAAK,YAAY,CAAC,UAAU,EAAE,OAAO,EAAE,OAAO,CAAC,CAAA,CAAA,CAAG,CAAC;AAC3G,IAAA,CAAC,CAAC;AAEF,IAAA,IAAI,SAAS,CAAC,MAAM,KAAK,CAAC;AAAE,QAAA,OAAO,WAAW;IAE9C,OAAO,CAAA,SAAA,EAAY,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI;AAC7C;AAEA,SAAS,cAAc,CAAC,KAAU,EAAE,OAAoB,EAAE,OAAoB,EAAA;IAC5E,MAAM,YAAY,GAAG,EAAE;AAEvB,IAAA,KAAK,IAAI,YAAY,IAAI,KAAK,EAAE;AAC9B,QAAA,IAAI,MAAM,CAAC,SAAS,CAAC,cAAc,CAAC,IAAI,CAAC,KAAK,EAAE,YAAY,CAAC,EAAE;AAC7D,YAAA,OAAO,CAAC,UAAU,CAAC,IAAI,CAAC,YAAY,CAAC;AACrC,YAAA,OAAO,CAAC,WAAW,CAAC,IAAI,CAAC,YAAY,CAAC;AACtC,YAAA,MAAM,aAAa,GAAG,YAAY,CAAC,KAAK,CAAC,YAAY,CAAC,EAAE,OAAO,EAAE,OAAO,CAAC;AACzE,YAAA,OAAO,CAAC,WAAW,CAAC,GAAG,EAAE;AACzB,YAAA,OAAO,CAAC,UAAU,CAAC,GAAG,EAAE;AACxB,YAAA,IAAI,aAAa,KAAK,WAAW,EAAE;gBACjC,IAAI,CAAC,4BAA4B,CAAC,IAAI,CAAC,YAAY,CAAC,EAAE;AACpD,oBAAA,MAAM,OAAO,GAAG,YAAY,CAAC,OAAO,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC,OAAO,CAAC,IAAI,EAAE,KAAK,CAAC;AACxE,oBAAA,YAAY,GAAG,CAAA,CAAA,EAAI,OAAO,CAAA,CAAA,CAAG;gBAC/B;gBACA,YAAY,CAAC,IAAI,CAAC,CAAA,EAAG,YAAY,CAAA,EAAA,EAAK,aAAa,CAAA,CAAE,CAAC;YACxD;QACF;IACF;AAEA,IAAA,IAAI,YAAY,CAAC,MAAM,KAAK,CAAC;AAAE,QAAA,OAAO,IAAI;AAE1C,IAAA,OAAO,aAAa,CAAC,YAAY,CAAC,KAAK,CAAC,EAAE,CAAA,GAAA,EAAM,YAAY,CAAC,IAAI,CAAC,KAAK,CAAC,CAAA,GAAA,CAAK,CAAC;AAChF;AAEA,SAAS,0BAA0B,CACjC,YAAoB,EACpB,KAAU,EACV,OAAoB,EACpB,OAAoB,EAAA;IAEpB,IAAI,MAAM,GAAG,EAAE;AACf,IAAA,KAAK,MAAM,YAAY,IAAI,KAAK,EAAE;AAChC,QAAA,IAAI,MAAM,CAAC,SAAS,CAAC,cAAc,CAAC,IAAI,CAAC,KAAK,EAAE,YAAY,CAAC,EAAE;AAC7D,YAAA,OAAO,CAAC,UAAU,CAAC,IAAI,CAAC,YAAY,CAAC;AACrC,YAAA,OAAO,CAAC,WAAW,CAAC,IAAI,CAAC,YAAY,CAAC;AACtC,YAAA,MAAM,aAAa,GAAG,YAAY,CAAC,KAAK,CAAC,YAAY,CAAC,EAAE,OAAO,EAAE,OAAO,CAAC;AACzE,YAAA,OAAO,CAAC,WAAW,CAAC,GAAG,EAAE;AACzB,YAAA,OAAO,CAAC,UAAU,CAAC,GAAG,EAAE;AACxB,YAAA,IAAI,aAAa,KAAK,WAAW,EAAE;AACjC,gBAAA,IAAI,4BAA4B,CAAC,IAAI,CAAC,YAAY,CAAC,EAAE;oBACnD,MAAM,IAAI,GAAG,YAAY,CAAA,CAAA,EAAI,YAAY,CAAA,GAAA,EAAM,aAAa,KAAK;gBACnE;qBAAO;AACL,oBAAA,MAAM,OAAO,GAAG,YAAY,CAAC,OAAO,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC,OAAO,CAAC,IAAI,EAAE,KAAK,CAAC;oBACxE,MAAM,IAAI,GAAG,YAAY,CAAA,EAAA,EAAK,OAAO,CAAA,KAAA,EAAQ,aAAa,KAAK;gBACjE;YACF;QACF;IACF;AACA,IAAA,OAAO,MAAM;AACf;AAEA,SAAS,gBAAgB,CAAC,KAAU,EAAE,OAAoB,EAAE,OAAoB,EAAA;AAC9E,IAAA,MAAM,YAAY,GAAG,KAAK,CAAC,IAAI,IAAI,mBAAmB;AACtD,IAAA,MAAM,cAAc,GAAG,OAAO,CAAC;UAC3B,0BAA0B,CAAC,YAAY,EAAE,KAAK,EAAE,OAAO,EAAE,OAAO;UAChE,EAAE;AACN,IAAA,OAAO,CAAC,UAAU,CAAC,IAAI,CAAC,WAAW,CAAC;AACpC,IAAA,OAAO,CAAC,WAAW,CAAC,IAAI,CAAC,WAAW,CAAC;AACrC,IAAA,MAAM,iBAAiB,GAAG,OAAO,CAAC;AAChC,UAAE,0BAA0B,CAAC,CAAA,EAAG,YAAY,CAAA,UAAA,CAAY,EAAE,KAAK,CAAC,SAAS,EAAE,OAAO,EAAE,OAAO;UACzF,EAAE;AACN,IAAA,OAAO,CAAC,WAAW,CAAC,GAAG,EAAE;AACzB,IAAA,OAAO,CAAC,UAAU,CAAC,GAAG,EAAE;AAExB,IAAA,IAAI,WAAW,GAAG,MAAM,CAAC,KAAK,CAAC;AAC/B,IAAA,IAAI,WAAW,CAAC,OAAO,CAAC,eAAe,CAAC,GAAG,EAAE,IAAI,WAAW,CAAC,MAAM,GAAG,GAAG,EAAE;AACzE,QAAA,KAAK,MAAM,MAAM,IAAI,eAAe,EAAE;AACpC,YAAA,IAAI,eAAe,CAAC,MAAM,CAAC,KAAK,KAAK,EAAE;gBACrC,WAAW,GAAG,MAAM;YACtB;QACF;IACF;AACA,IAAA,IAAI,CAAC,cAAc,IAAI,CAAC,iBAAiB,EAAE;AACzC,QAAA,OAAO,WAAW;IACpB;IAEA,OAAO,aAAa,CAClB,YAAY,CAAC,KAAK,CAAC,EACnB,CAAA,mBAAA,EAAsB,YAAY,CAAA,GAAA,EAAM,MAAM,CAC5C,WAAW,CACZ,OAAO,cAAc,CAAA,GAAA,EAAM,iBAAiB,CAAA,UAAA,EAAa,YAAY,CAAA,OAAA,CAAS,CAChF;AACH;AAEA,SAAS,mBAAmB,CAAC,KAAkB,EAAE,OAAoB,EAAE,OAAoB,EAAA;IACzF,IAAI,CAAC,OAAO,CAAC,cAAc;AAAE,QAAA,OAAO,WAAW;AAC/C,IAAA,MAAM,GAAG,GAAG,kBAAkB,CAAC,IAAI,SAAS,CAAC,KAAK,CAAC,EAAE,OAAO,EAAE,OAAO,CAAC;IACtE,OAAO,CAAA,CAAA,EAAI,GAAG,CAAA,QAAA,CAAU;AAC1B;AAEA,SAAS,gBAAgB,CAAC,KAAe,EAAE,OAAoB,EAAE,OAAoB,EAAA;IACnF,IAAI,CAAC,OAAO,CAAC,cAAc;AAAE,QAAA,OAAO,WAAW;AAC/C,IAAA,MAAM,SAAS,GAAG,mBAAmB,CAAC,KAAK,CAAC,MAAqB,EAAE,OAAO,EAAE,OAAO,CAAC;IACpF,OAAO,CAAA,aAAA,EAAgB,SAAS,CAAA,EAAA,EAAK,KAAK,CAAC,UAAU,CAAA,EAAA,EAAK,KAAK,CAAC,UAAU,CAAA,CAAA,CAAG;AAC/E;AAEA;;;;AAIG;AACH,SAAS,SAAS,CAAC,KAAU,EAAE,OAAoB,EAAE,OAAoB,EAAA;AACvE,IAAA,QAAQA,eAAa,CAAC,KAAK,CAAC;AAC1B,QAAA,KAAK,WAAW;AACd,YAAA,OAAO,WAAW;AACpB,QAAA,KAAK,MAAM;AACT,YAAA,OAAO,MAAM;AACf,QAAA,KAAK,SAAS;AACZ,YAAA,OAAO,MAAM,CAAC,KAAK,CAAC;AACtB,QAAA,KAAK,QAAQ;AACX,YAAA,OAAO,cAAc,CAAC,KAAK,CAAC;AAC9B,QAAA,KAAK,QAAQ;AACX,YAAA,OAAO,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC;AAC9B,QAAA,KAAK,QAAQ;AACX,YAAA,OAAO,cAAc,CAAC,KAAK,CAAC;AAC9B,QAAA,KAAK,QAAQ;YACX,OAAO,CAAA,OAAA,EAAU,KAAK,CAAA,CAAA,CAAG;AAC3B,QAAA,KAAK,QAAQ;AACX,YAAA,OAAO,cAAc,CAAC,KAAK,CAAC;AAC9B,QAAA,KAAK,MAAM;AACT,YAAA,OAAO,YAAY,CAAC,KAAK,CAAC;AAC5B,QAAA,KAAK,OAAO;AACV,YAAA,OAAO,aAAa,CAAC,KAAK,CAAC;AAC7B,QAAA,KAAK,OAAO;YACV,OAAO,aAAa,CAAC,KAAK,EAAE,OAAO,EAAE,OAAO,CAAC;AAC/C,QAAA,KAAK,YAAY;YACf,OAAO,kBAAkB,CAAC,KAAK,EAAE,OAAO,EAAE,OAAO,CAAC;AACpD,QAAA,KAAK,KAAK;YACR,OAAO,WAAW,CAAC,KAAK,EAAE,OAAO,EAAE,OAAO,CAAC;AAC7C,QAAA,KAAK,KAAK;YACR,OAAO,WAAW,CAAC,KAAK,EAAE,OAAO,EAAE,OAAO,CAAC;AAC7C,QAAA,KAAK,QAAQ;YACX,OAAO,cAAc,CAAC,KAAK,EAAE,OAAO,EAAE,OAAO,CAAC;AAChD,QAAA,KAAK,UAAU;AACf,QAAA,KAAK,mBAAmB;YACtB,OAAO,gBAAgB,CAAC,KAAK,EAAE,OAAO,EAAE,OAAO,CAAC;AAClD,QAAA,KAAK,aAAa;YAChB,OAAO,mBAAmB,CAAC,KAAK,EAAE,OAAO,EAAE,OAAO,CAAC;AACrD,QAAA,KAAK,UAAU;YACb,OAAO,gBAAgB,CAAC,KAAK,EAAE,OAAO,EAAE,OAAO,CAAC;AAClD,QAAA,KAAK,SAAS;AACd,QAAA,KAAK,WAAW;AACd,YAAA,OAAO,WAAW;AACpB,QAAA;AACE,YAAA,OAAO,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC;;AAElC;AAEA;;;;AAIG;AACH,SAAS,YAAY,CAAC,KAAU,EAAE,OAAoB,EAAE,OAAoB,EAAA;AAC1E,IAAA,MAAM,SAAS,GAAG,CAAC,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,KAAK,IAAI,KAAK,OAAO,KAAK,KAAK,UAAU;IAC9F,MAAM,KAAK,GAAG,OAAO,CAAC,UAAU,CAAC,OAAO,CAAC,KAAK,CAAC;;AAG/C,IAAA,IAAI,SAAS,IAAI,OAAO,CAAC,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,KAAK,GAAG,CAAC,EAAE;QACxD,SAAS,CAAC,IAAI,CAAC;AACb,YAAA,QAAQ,EAAE,CAAC,GAAG,OAAO,CAAC,WAAW,CAAC;YAClC,UAAU,EAAE,OAAO,CAAC,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,EAAE;AAC7C,SAAA,CAAC;AACF,QAAA,OAAO,MAAM;IACf;AAEA,IAAA,IAAI,KAAK,GAAG,CAAC,IAAI,OAAO,OAAO,CAAC,UAAU,CAAC,KAAK,CAAC,KAAK,QAAQ,EAAE;AAC9D,QAAA,MAAM,UAAU,GAAGA,eAAa,CAAC,KAAK,CAAC;AACvC,QAAA,MAAM,gBAAgB,GAAG,OAAO,CAAC,UAAU,CAAC,MAAM;;AAGlD,QAAA,IAAI,SAAS,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE;AAC5C,YAAA,OAAO,CAAC,OAAO,CAAC,GAAG,CAAC,KAAK,EAAE,CAAC,GAAG,OAAO,CAAC,WAAW,CAAC,CAAC;QACtD;AAEA,QAAA,OAAO,CAAC,UAAU,CAAC,IAAI,CAAC,KAAK,CAAC;QAC9B,QAAQ,UAAU;AAChB,YAAA,KAAK,QAAQ;AACX,gBAAA,IAAI,OAAO,CAAC,iBAAiB,IAAI,CAAC;AAAE,oBAAA,OAAO,WAAW;gBACtD,OAAO,CAAC,iBAAiB,EAAE;gBAC3B;AACF,YAAA,KAAK,OAAO;AACZ,YAAA,KAAK,YAAY;AACf,gBAAA,IAAI,OAAO,CAAC,gBAAgB,IAAI,CAAC;AAAE,oBAAA,OAAO,WAAW;gBACrD,OAAO,CAAC,gBAAgB,EAAE;gBAC1B;AACF,YAAA,KAAK,UAAU;AACf,YAAA,KAAK,mBAAmB;AACtB,gBAAA,IAAI,OAAO,CAAC,mBAAmB,IAAI,CAAC;AAAE,oBAAA,OAAO,WAAW;gBACxD,OAAO,CAAC,mBAAmB,EAAE;gBAC7B;;QAGJ,MAAM,SAAS,GAAG,SAAS,CAAC,KAAK,EAAE,OAAO,EAAE,OAAO,CAAC;AAEpD,QAAA,OAAO,CAAC,UAAU,CAAC,MAAM,CAAC,gBAAgB,CAAC;QAC3C,QAAQ,UAAU;AAChB,YAAA,KAAK,QAAQ;gBACX,OAAO,CAAC,iBAAiB,EAAE;gBAC3B;AACF,YAAA,KAAK,OAAO;AACZ,YAAA,KAAK,YAAY;gBACf,OAAO,CAAC,gBAAgB,EAAE;gBAC1B;AACF,YAAA,KAAK,UAAU;AACf,YAAA,KAAK,mBAAmB;gBACtB,OAAO,CAAC,mBAAmB,EAAE;gBAC7B;;AAGJ,QAAA,OAAO,SAAS;IAClB;SAAO;;QAEL,IAAI,CAAC,IAAI,CAAC;YACR,UAAU,EAAE,OAAO,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC,CAAC;AACvC,YAAA,MAAM,EAAE,KAAK;AACd,SAAA,CAAC;IACJ;AACA,IAAA,OAAO,MAAM;AACf;AAEA,SAAS,qBAAqB,CAAC,cAAkC,EAAE,MAAc,EAAA;AAC/E,IAAA,IAAI,cAAc,CAAC,MAAM,KAAK,CAAC,EAAE;AAC/B,QAAA,OAAO,MAAM;IACf;IACA,OAAO,GAAG,CAAC,OAAO,GAAG,CAAC,IAAI,MAAM,CAAC,gBAAgB;AACjD,IAAA,MAAM,SAAS,GAAG,CAAA,OAAA,EAAU,OAAO,EAAE;IACrC,MAAM,OAAO,GAAG;AACb,SAAA,GAAG,CAAC,CAAC,EAAE,KAAI;AACV,QAAA,MAAM,YAAY,GAAG,EAAE,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,KAAK,CAAA,EAAA,EAAK,CAAC,CAAC,OAAO,CAAC,KAAK,EAAE,KAAK,CAAC,CAAA,EAAA,CAAI,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC;AACtF,QAAA,MAAM,WAAW,GAAG,EAAE,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC,KAAK,CAAA,EAAA,EAAK,CAAC,CAAC,OAAO,CAAC,KAAK,EAAE,KAAK,CAAC,CAAA,EAAA,CAAI,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC;QACvF,OAAO,CAAA,EAAG,SAAS,CAAA,EAAG,YAAY,MAAM,SAAS,CAAA,EAAG,WAAW,CAAA,EAAA,CAAI;AACrE,IAAA,CAAC;SACA,IAAI,CAAC,EAAE,CAAC;IACX,OAAO,CAAA,iBAAA,EAAoB,SAAS,CAAA,GAAA,EAAM,MAAM,KAAK,OAAO,CAAA,OAAA,EAAU,SAAS,CAAA,MAAA,CAAQ;AACzF;AAEA;;;;AAIG;AACH,SAAS,kBAAkB,CAAC,KAAU,EAAE,OAAqB,EAAA;AAC3D,IAAA,OAAO,GAAG,OAAO,IAAI,EAAE;AACvB,IAAA,MAAM,eAAe,GAAgB;AACnC,QAAA,yBAAyB,EACvB,OAAO,CAAC,yBAAyB,KAAK,SAAS,GAAG,IAAI,GAAG,OAAO,CAAC,yBAAyB;AAC5F,QAAA,wBAAwB,EAAE,OAAO,CAAC,wBAAwB,KAAK,SAAS,GAAG,IAAI,GAAG,OAAO,CAAC,wBAAwB;AAClH,QAAA,cAAc,EAAE,OAAO,CAAC,cAAc,KAAK,SAAS,GAAG,IAAI,GAAG,OAAO,CAAC,cAAc;AACpF,QAAA,mBAAmB,EACjB,OAAO,CAAC,mBAAmB,KAAK,SAAS,GAAG,MAAM,CAAC,iBAAiB,GAAG,OAAO,CAAC,mBAAmB;AACpG,QAAA,kBAAkB,EAChB,OAAO,CAAC,kBAAkB,KAAK,SAAS,GAAG,MAAM,CAAC,iBAAiB,GAAG,OAAO,CAAC,kBAAkB;AAClG,QAAA,qBAAqB,EACnB,OAAO,CAAC,qBAAqB,KAAK,SAAS,GAAG,MAAM,CAAC,iBAAiB,GAAG,OAAO,CAAC,qBAAqB;KACzG;;IAGD,IAAI,GAAG,EAAE;IACT,SAAS,GAAG,EAAE;IACd,OAAO,GAAG,CAAC;AAEX,IAAA,MAAM,OAAO,GAAG,IAAI,GAAG,EAAiB;AACxC,IAAA,OAAO,CAAC,GAAG,CAAC,KAAK,EAAE,EAAE,CAAC;AAEtB,IAAA,MAAM,MAAM,GAAG,SAAS,CAAC,KAAK,EAAE,eAAe,EAAE;QAC/C,UAAU,EAAE,CAAC,KAAK,CAAC;QACnB,iBAAiB,EAAE,eAAe,CAAC,mBAA6B;QAChE,gBAAgB,EAAE,eAAe,CAAC,kBAA4B;QAC9D,mBAAmB,EAAE,eAAe,CAAC,qBAA+B;QACpE,OAAO;AACP,QAAA,WAAW,EAAE,EAAE;AAChB,KAAA,CAAC;;IAGF,MAAM,cAAc,GAAG,aAAa,CAAC,YAAY,CAAC,KAAK,CAAC,EAAE,MAAM,CAAC;;AAGjE,IAAA,OAAO,qBAAqB,CAAC,SAAS,EAAE,cAAc,CAAC;AACzD;;;;","x_google_ignoreList":[0]} \ No newline at end of file diff --git a/dist/javascripttostring.umd.js b/dist/javascripttostring.umd.js index c609250..2c85132 100644 --- a/dist/javascripttostring.umd.js +++ b/dist/javascripttostring.umd.js @@ -82,6 +82,9 @@ if (Number.isNaN(value)) { return "Number.NaN"; } + if (Object.is(value, -0)) { + return "-0"; + } switch (value) { case Number.POSITIVE_INFINITY: return "Number.POSITIVE_INFINITY"; @@ -135,7 +138,11 @@ case Symbol.prototype: return "Symbol.prototype"; default: - const description = value.description ? `"${value.description}"` : ""; + const registryKey = Symbol.keyFor(value); + if (registryKey !== undefined) { + return `Symbol.for(${JSON.stringify(registryKey)})`; + } + const description = value.description !== undefined ? JSON.stringify(value.description) : ""; return `Symbol(${description})`; } } @@ -145,6 +152,13 @@ } return `new Date("${value.toISOString()}")`; } + function regexpToString(value) { + const str = String(value); + if (value.lastIndex !== 0) { + return `(function(){ var r = ${str}; r.lastIndex = ${value.lastIndex}; return r; }())`; + } + return str; + } function errorToString(value) { var _a; const message = JSON.stringify(value.message); @@ -161,17 +175,21 @@ function arrayToString(value, options, history) { if (value.length === 0) return "[]"; - const arrayValues = value.reduce((x1, x2, index) => { - const key = index.toString(); - history.references.push(key); - history.currentPath.push(key); - let str = !!x1 ? `${x1}, ` : ""; - str += stringifyRef(x2, options, history); - history.currentPath.pop(); - history.references.pop(); - return str; - }, ""); - return attachActions(getLocalRefs(value), `[${arrayValues}]`); + const parts = []; + for (let i = 0; i < value.length; i++) { + if (!(i in value)) { + parts.push(""); + } + else { + const key = i.toString(); + history.references.push(key); + history.currentPath.push(key); + parts.push(stringifyRef(value[i], options, history)); + history.currentPath.pop(); + history.references.pop(); + } + } + return attachActions(getLocalRefs(value), `[${parts.join(", ")}]`); } function getLocalRefs(value) { return refs.filter((x) => x.source === value); @@ -238,7 +256,7 @@ function objectToString(value, options, history) { const objectValues = []; for (let propertyName in value) { - if (value.hasOwnProperty(propertyName)) { + if (Object.prototype.hasOwnProperty.call(value, propertyName)) { history.references.push(propertyName); history.currentPath.push(propertyName); const propertyValue = stringifyRef(value[propertyName], options, history); @@ -260,14 +278,20 @@ function functionPropertiesToString(functionName, value, options, history) { let result = ""; for (const propertyName in value) { - if (value.hasOwnProperty(propertyName)) { + if (Object.prototype.hasOwnProperty.call(value, propertyName)) { history.references.push(propertyName); history.currentPath.push(propertyName); const propertyValue = stringifyRef(value[propertyName], options, history); history.currentPath.pop(); history.references.pop(); if (propertyValue !== "undefined") { - result += `${functionName}.${propertyName} = ${propertyValue};\n`; + if (/^[a-zA-Z_$][a-zA-Z0-9_$]*$/.test(propertyName)) { + result += `${functionName}.${propertyName} = ${propertyValue};\n`; + } + else { + const escaped = propertyName.replace(/\\/g, "\\\\").replace(/"/g, '\\"'); + result += `${functionName}["${escaped}"] = ${propertyValue};\n`; + } } } } @@ -324,7 +348,7 @@ case "boolean": return String(value); case "regexp": - return String(value); + return regexpToString(value); case "string": return JSON.stringify(value); case "number": diff --git a/dist/javascripttostring.umd.js.map b/dist/javascripttostring.umd.js.map index 720827e..9c74943 100644 --- a/dist/javascripttostring.umd.js.map +++ b/dist/javascripttostring.umd.js.map @@ -1 +1 @@ -{"version":3,"file":"javascripttostring.umd.js","sources":["../node_modules/@lopatnov/get-internal-type/dist/get-internal-type.es.js","../src/javascripttostring.ts"],"sourcesContent":["var types = {}, typesToString = types.toString, buildInList = [\r\n \"Boolean\",\r\n \"Number\",\r\n \"String\",\r\n \"Function\",\r\n \"Array\",\r\n \"Date\",\r\n \"RegExp\",\r\n \"Object\",\r\n \"Error\",\r\n \"Promise\",\r\n \"Generator\",\r\n \"GeneratorFunction\",\r\n \"ArrayBuffer\",\r\n \"DataView\"\r\n], typedArrays = [\r\n \"Int8Array\",\r\n \"Uint8Array\",\r\n \"Uint8ClampedArray\",\r\n \"Int16Array\",\r\n \"Uint16Array\",\r\n \"Int32Array\",\r\n \"Uint32Array\",\r\n \"Float32Array\",\r\n \"Float64Array\",\r\n \"BigInt64Array\",\r\n \"BigUint64Array\"\r\n], maps = [\"Map\", \"WeakMap\"], sets = [\"Set\", \"WeakSet\"];\r\nbuildInList.forEach(function (name) {\r\n types[\"[object \" + name + \"]\"] = name.toLowerCase();\r\n});\r\nmaps.forEach(function (name) {\r\n types[\"[object \" + name + \"]\"] = \"map\";\r\n});\r\nsets.forEach(function (name) {\r\n types[\"[object \" + name + \"]\"] = \"set\";\r\n});\r\ntypedArrays.forEach(function (name) {\r\n types[\"[object \" + name + \"]\"] = \"typedarray\";\r\n});\r\nfunction getInternalType(obj) {\r\n return obj == null\r\n ? obj + \"\"\r\n : typeof obj === \"object\" || typeof obj === \"function\"\r\n ? types[typesToString.call(obj)] || \"object\"\r\n : typeof obj;\r\n}\n\nexport default getInternalType;\n//# sourceMappingURL=get-internal-type.es.js.map\n",null],"names":["getObjectType"],"mappings":"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","x_google_ignoreList":[0]} \ No newline at end of file +{"version":3,"file":"javascripttostring.umd.js","sources":["../node_modules/@lopatnov/get-internal-type/dist/get-internal-type.es.js","../src/javascripttostring.ts"],"sourcesContent":["var types = {}, typesToString = types.toString, buildInList = [\r\n \"Boolean\",\r\n \"Number\",\r\n \"String\",\r\n \"Function\",\r\n \"Array\",\r\n \"Date\",\r\n \"RegExp\",\r\n \"Object\",\r\n \"Error\",\r\n \"Promise\",\r\n \"Generator\",\r\n \"GeneratorFunction\",\r\n \"ArrayBuffer\",\r\n \"DataView\"\r\n], typedArrays = [\r\n \"Int8Array\",\r\n \"Uint8Array\",\r\n \"Uint8ClampedArray\",\r\n \"Int16Array\",\r\n \"Uint16Array\",\r\n \"Int32Array\",\r\n \"Uint32Array\",\r\n \"Float32Array\",\r\n \"Float64Array\",\r\n \"BigInt64Array\",\r\n \"BigUint64Array\"\r\n], maps = [\"Map\", \"WeakMap\"], sets = [\"Set\", \"WeakSet\"];\r\nbuildInList.forEach(function (name) {\r\n types[\"[object \" + name + \"]\"] = name.toLowerCase();\r\n});\r\nmaps.forEach(function (name) {\r\n types[\"[object \" + name + \"]\"] = \"map\";\r\n});\r\nsets.forEach(function (name) {\r\n types[\"[object \" + name + \"]\"] = \"set\";\r\n});\r\ntypedArrays.forEach(function (name) {\r\n types[\"[object \" + name + \"]\"] = \"typedarray\";\r\n});\r\nfunction getInternalType(obj) {\r\n return obj == null\r\n ? obj + \"\"\r\n : typeof obj === \"object\" || typeof obj === \"function\"\r\n ? types[typesToString.call(obj)] || \"object\"\r\n : typeof obj;\r\n}\n\nexport default getInternalType;\n//# sourceMappingURL=get-internal-type.es.js.map\n",null],"names":["getObjectType"],"mappings":"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","x_google_ignoreList":[0]} \ No newline at end of file diff --git a/dist/lib/javascripttostring.js b/dist/lib/javascripttostring.js index 442ef97..ba761ce 100644 --- a/dist/lib/javascripttostring.js +++ b/dist/lib/javascripttostring.js @@ -78,6 +78,9 @@ function numberToString(value) { if (Number.isNaN(value)) { return "Number.NaN"; } + if (Object.is(value, -0)) { + return "-0"; + } switch (value) { case Number.POSITIVE_INFINITY: return "Number.POSITIVE_INFINITY"; @@ -131,7 +134,11 @@ function symbolToString(value) { case Symbol.prototype: return "Symbol.prototype"; default: - const description = value.description ? `"${value.description}"` : ""; + const registryKey = Symbol.keyFor(value); + if (registryKey !== undefined) { + return `Symbol.for(${JSON.stringify(registryKey)})`; + } + const description = value.description !== undefined ? JSON.stringify(value.description) : ""; return `Symbol(${description})`; } } @@ -141,6 +148,13 @@ function dateToString(value) { } return `new Date("${value.toISOString()}")`; } +function regexpToString(value) { + const str = String(value); + if (value.lastIndex !== 0) { + return `(function(){ var r = ${str}; r.lastIndex = ${value.lastIndex}; return r; }())`; + } + return str; +} function errorToString(value) { var _a; const message = JSON.stringify(value.message); @@ -157,17 +171,21 @@ function errorToString(value) { function arrayToString(value, options, history) { if (value.length === 0) return "[]"; - const arrayValues = value.reduce((x1, x2, index) => { - const key = index.toString(); - history.references.push(key); - history.currentPath.push(key); - let str = !!x1 ? `${x1}, ` : ""; - str += stringifyRef(x2, options, history); - history.currentPath.pop(); - history.references.pop(); - return str; - }, ""); - return attachActions(getLocalRefs(value), `[${arrayValues}]`); + const parts = []; + for (let i = 0; i < value.length; i++) { + if (!(i in value)) { + parts.push(""); + } + else { + const key = i.toString(); + history.references.push(key); + history.currentPath.push(key); + parts.push(stringifyRef(value[i], options, history)); + history.currentPath.pop(); + history.references.pop(); + } + } + return attachActions(getLocalRefs(value), `[${parts.join(", ")}]`); } function getLocalRefs(value) { return refs.filter((x) => x.source === value); @@ -234,7 +252,7 @@ function mapToString(value, options, history) { function objectToString(value, options, history) { const objectValues = []; for (let propertyName in value) { - if (value.hasOwnProperty(propertyName)) { + if (Object.prototype.hasOwnProperty.call(value, propertyName)) { history.references.push(propertyName); history.currentPath.push(propertyName); const propertyValue = stringifyRef(value[propertyName], options, history); @@ -256,14 +274,20 @@ function objectToString(value, options, history) { function functionPropertiesToString(functionName, value, options, history) { let result = ""; for (const propertyName in value) { - if (value.hasOwnProperty(propertyName)) { + if (Object.prototype.hasOwnProperty.call(value, propertyName)) { history.references.push(propertyName); history.currentPath.push(propertyName); const propertyValue = stringifyRef(value[propertyName], options, history); history.currentPath.pop(); history.references.pop(); if (propertyValue !== "undefined") { - result += `${functionName}.${propertyName} = ${propertyValue};\n`; + if (/^[a-zA-Z_$][a-zA-Z0-9_$]*$/.test(propertyName)) { + result += `${functionName}.${propertyName} = ${propertyValue};\n`; + } + else { + const escaped = propertyName.replace(/\\/g, "\\\\").replace(/"/g, '\\"'); + result += `${functionName}["${escaped}"] = ${propertyValue};\n`; + } } } } @@ -320,7 +344,7 @@ function stringify(value, options, history) { case "boolean": return String(value); case "regexp": - return String(value); + return regexpToString(value); case "string": return JSON.stringify(value); case "number": diff --git a/dist/lib/javascripttostring.js.map b/dist/lib/javascripttostring.js.map index 86805a8..1f998a5 100644 --- a/dist/lib/javascripttostring.js.map +++ b/dist/lib/javascripttostring.js.map @@ -1 +1 @@ -{"version":3,"file":"javascripttostring.js","sources":["../../node_modules/@lopatnov/get-internal-type/dist/get-internal-type.es.js","../../src/javascripttostring.ts"],"sourcesContent":["var types = {}, typesToString = types.toString, buildInList = [\r\n \"Boolean\",\r\n \"Number\",\r\n \"String\",\r\n \"Function\",\r\n \"Array\",\r\n \"Date\",\r\n \"RegExp\",\r\n \"Object\",\r\n \"Error\",\r\n \"Promise\",\r\n \"Generator\",\r\n \"GeneratorFunction\",\r\n \"ArrayBuffer\",\r\n \"DataView\"\r\n], typedArrays = [\r\n \"Int8Array\",\r\n \"Uint8Array\",\r\n \"Uint8ClampedArray\",\r\n \"Int16Array\",\r\n \"Uint16Array\",\r\n \"Int32Array\",\r\n \"Uint32Array\",\r\n \"Float32Array\",\r\n \"Float64Array\",\r\n \"BigInt64Array\",\r\n \"BigUint64Array\"\r\n], maps = [\"Map\", \"WeakMap\"], sets = [\"Set\", \"WeakSet\"];\r\nbuildInList.forEach(function (name) {\r\n types[\"[object \" + name + \"]\"] = name.toLowerCase();\r\n});\r\nmaps.forEach(function (name) {\r\n types[\"[object \" + name + \"]\"] = \"map\";\r\n});\r\nsets.forEach(function (name) {\r\n types[\"[object \" + name + \"]\"] = \"set\";\r\n});\r\ntypedArrays.forEach(function (name) {\r\n types[\"[object \" + name + \"]\"] = \"typedarray\";\r\n});\r\nfunction getInternalType(obj) {\r\n return obj == null\r\n ? obj + \"\"\r\n : typeof obj === \"object\" || typeof obj === \"function\"\r\n ? types[typesToString.call(obj)] || \"object\"\r\n : typeof obj;\r\n}\n\nexport default getInternalType;\n//# sourceMappingURL=get-internal-type.es.js.map\n",null],"names":["getObjectType"],"mappings":"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","x_google_ignoreList":[0]} \ No newline at end of file +{"version":3,"file":"javascripttostring.js","sources":["../../node_modules/@lopatnov/get-internal-type/dist/get-internal-type.es.js","../../src/javascripttostring.ts"],"sourcesContent":["var types = {}, typesToString = types.toString, buildInList = [\r\n \"Boolean\",\r\n \"Number\",\r\n \"String\",\r\n \"Function\",\r\n \"Array\",\r\n \"Date\",\r\n \"RegExp\",\r\n \"Object\",\r\n \"Error\",\r\n \"Promise\",\r\n \"Generator\",\r\n \"GeneratorFunction\",\r\n \"ArrayBuffer\",\r\n \"DataView\"\r\n], typedArrays = [\r\n \"Int8Array\",\r\n \"Uint8Array\",\r\n \"Uint8ClampedArray\",\r\n \"Int16Array\",\r\n \"Uint16Array\",\r\n \"Int32Array\",\r\n \"Uint32Array\",\r\n \"Float32Array\",\r\n \"Float64Array\",\r\n \"BigInt64Array\",\r\n \"BigUint64Array\"\r\n], maps = [\"Map\", \"WeakMap\"], sets = [\"Set\", \"WeakSet\"];\r\nbuildInList.forEach(function (name) {\r\n types[\"[object \" + name + \"]\"] = name.toLowerCase();\r\n});\r\nmaps.forEach(function (name) {\r\n types[\"[object \" + name + \"]\"] = \"map\";\r\n});\r\nsets.forEach(function (name) {\r\n types[\"[object \" + name + \"]\"] = \"set\";\r\n});\r\ntypedArrays.forEach(function (name) {\r\n types[\"[object \" + name + \"]\"] = \"typedarray\";\r\n});\r\nfunction getInternalType(obj) {\r\n return obj == null\r\n ? obj + \"\"\r\n : typeof obj === \"object\" || typeof obj === \"function\"\r\n ? types[typesToString.call(obj)] || \"object\"\r\n : typeof obj;\r\n}\n\nexport default getInternalType;\n//# sourceMappingURL=get-internal-type.es.js.map\n",null],"names":["getObjectType"],"mappings":"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","x_google_ignoreList":[0]} \ No newline at end of file diff --git a/docs/functions/default.html b/docs/functions/default.html index b4af5c0..1763b10 100644 --- a/docs/functions/default.html +++ b/docs/functions/default.html @@ -1,4 +1,4 @@ default | @lopatnov/javascripttostring
                                          @lopatnov/javascripttostring
                                            Preparing search index...

                                            Function default

                                            • Converts JavaScript value to string

                                              Parameters

                                              • value: any

                                                the value of any type

                                              • Optionaloptions: IJ2SOptions

                                                [optional] The options of conversion

                                                -

                                              Returns string

                                            +

                                            Returns string

                                            diff --git a/docs/interfaces/ij2soptions.html b/docs/interfaces/ij2soptions.html index 8773d32..9861b82 100644 --- a/docs/interfaces/ij2soptions.html +++ b/docs/interfaces/ij2soptions.html @@ -1,7 +1,7 @@ -IJ2SOptions | @lopatnov/javascripttostring
                                            @lopatnov/javascripttostring
                                              Preparing search index...

                                              Interface IJ2SOptions

                                              interface IJ2SOptions {
                                                  includeBuffers?: boolean;
                                                  includeFunctionProperties?: boolean;
                                                  includeFunctionPrototype?: boolean;
                                                  nestedArraysAmount?: number;
                                                  nestedFunctionsAmount?: number;
                                                  nestedObjectsAmount?: number;
                                              }
                                              Index

                                              Properties

                                              includeBuffers? +IJ2SOptions | @lopatnov/javascripttostring
                                              @lopatnov/javascripttostring
                                                Preparing search index...

                                                Interface IJ2SOptions

                                                interface IJ2SOptions {
                                                    includeBuffers?: boolean;
                                                    includeFunctionProperties?: boolean;
                                                    includeFunctionPrototype?: boolean;
                                                    nestedArraysAmount?: number;
                                                    nestedFunctionsAmount?: number;
                                                    nestedObjectsAmount?: number;
                                                }
                                                Index

                                                Properties

                                                includeBuffers?: boolean
                                                includeFunctionProperties?: boolean
                                                includeFunctionPrototype?: boolean
                                                nestedArraysAmount?: number
                                                nestedFunctionsAmount?: number
                                                nestedObjectsAmount?: number
                                                +

                                                Properties

                                                includeBuffers?: boolean
                                                includeFunctionProperties?: boolean
                                                includeFunctionPrototype?: boolean
                                                nestedArraysAmount?: number
                                                nestedFunctionsAmount?: number
                                                nestedObjectsAmount?: number
                                                diff --git a/src/javascripttostring.ts b/src/javascripttostring.ts index 29260a9..f0bea3c 100644 --- a/src/javascripttostring.ts +++ b/src/javascripttostring.ts @@ -61,6 +61,9 @@ function numberToString(value: number): string { if (Number.isNaN(value)) { return "Number.NaN"; } + if (Object.is(value, -0)) { + return "-0"; + } switch (value) { case Number.POSITIVE_INFINITY: return "Number.POSITIVE_INFINITY"; @@ -115,7 +118,11 @@ function symbolToString(value: any): string { case Symbol.prototype: return "Symbol.prototype"; default: - const description = value.description ? `"${value.description}"` : ""; + const registryKey = Symbol.keyFor(value); + if (registryKey !== undefined) { + return `Symbol.for(${JSON.stringify(registryKey)})`; + } + const description = value.description !== undefined ? JSON.stringify(value.description) : ""; return `Symbol(${description})`; } } @@ -127,6 +134,14 @@ function dateToString(value: Date): string { return `new Date("${value.toISOString()}")`; } +function regexpToString(value: RegExp): string { + const str = String(value); + if (value.lastIndex !== 0) { + return `(function(){ var r = ${str}; r.lastIndex = ${value.lastIndex}; return r; }())`; + } + return str; +} + function errorToString(value: any): string { const message = JSON.stringify(value.message); const errorClass = value.constructor?.name || "Error"; @@ -142,17 +157,20 @@ function errorToString(value: any): string { function arrayToString(value: Array, options: IJ2SOptions, history: IJ2SHistory): string { if (value.length === 0) return "[]"; - const arrayValues = value.reduce((x1: any, x2: any, index: number) => { - const key = index.toString(); - history.references.push(key); - history.currentPath.push(key); - let str = !!x1 ? `${x1}, ` : ""; - str += stringifyRef(x2, options, history); - history.currentPath.pop(); - history.references.pop(); - return str; - }, ""); - return attachActions(getLocalRefs(value), `[${arrayValues}]`); + const parts: string[] = []; + for (let i = 0; i < value.length; i++) { + if (!(i in value)) { + parts.push(""); + } else { + const key = i.toString(); + history.references.push(key); + history.currentPath.push(key); + parts.push(stringifyRef(value[i], options, history)); + history.currentPath.pop(); + history.references.pop(); + } + } + return attachActions(getLocalRefs(value), `[${parts.join(", ")}]`); } function getLocalRefs(value: any) { @@ -233,7 +251,7 @@ function objectToString(value: any, options: IJ2SOptions, history: IJ2SHistory): const objectValues = []; for (let propertyName in value) { - if (value.hasOwnProperty(propertyName)) { + if (Object.prototype.hasOwnProperty.call(value, propertyName)) { history.references.push(propertyName); history.currentPath.push(propertyName); const propertyValue = stringifyRef(value[propertyName], options, history); @@ -262,14 +280,19 @@ function functionPropertiesToString( ): string { let result = ""; for (const propertyName in value) { - if (value.hasOwnProperty(propertyName)) { + if (Object.prototype.hasOwnProperty.call(value, propertyName)) { history.references.push(propertyName); history.currentPath.push(propertyName); const propertyValue = stringifyRef(value[propertyName], options, history); history.currentPath.pop(); history.references.pop(); if (propertyValue !== "undefined") { - result += `${functionName}.${propertyName} = ${propertyValue};\n`; + if (/^[a-zA-Z_$][a-zA-Z0-9_$]*$/.test(propertyName)) { + result += `${functionName}.${propertyName} = ${propertyValue};\n`; + } else { + const escaped = propertyName.replace(/\\/g, "\\\\").replace(/"/g, '\\"'); + result += `${functionName}["${escaped}"] = ${propertyValue};\n`; + } } } } @@ -335,7 +358,7 @@ function stringify(value: any, options: IJ2SOptions, history: IJ2SHistory): stri case "boolean": return String(value); case "regexp": - return String(value); + return regexpToString(value); case "string": return JSON.stringify(value); case "number": diff --git a/test/javascripttostring.test.ts b/test/javascripttostring.test.ts index bda1d32..4367adc 100644 --- a/test/javascripttostring.test.ts +++ b/test/javascripttostring.test.ts @@ -228,6 +228,71 @@ describe("Edge cases", () => { expect(restored['key"quote']).toBe(42); }); + it("should convert negative zero", () => { + const str = j2s(-0); + expect(str).toBe("-0"); + const restored = Function("return " + str)(); + expect(Object.is(restored, -0)).toBe(true); + }); + it("should handle sparse arrays", () => { + const arr = new Array(3); + arr[0] = 1; + arr[2] = 3; + const str = j2s(arr); + const restored = Function("return " + str)(); + expect(restored.length).toBe(3); + expect(restored[0]).toBe(1); + expect(1 in restored).toBe(false); + expect(restored[2]).toBe(3); + }); + it("should handle Symbol.for() registry symbols", () => { + const sym = Symbol.for("myGlobalKey"); + const str = j2s(sym); + expect(str).toBe('Symbol.for("myGlobalKey")'); + const restored = Function("return " + str)(); + expect(restored).toBe(Symbol.for("myGlobalKey")); + }); + it("should handle RegExp with lastIndex", () => { + const re = /test/g; + re.lastIndex = 4; + const str = j2s(re); + expect(str).toContain("lastIndex = 4"); + const restored = Function("return " + str)(); + expect(restored.lastIndex).toBe(4); + expect(restored.source).toBe("test"); + expect(restored.flags).toBe("g"); + }); + it("should handle RegExp without lastIndex", () => { + const re = /hello/i; + const str = j2s(re); + expect(str).toBe("/hello/i"); + }); + it("should handle function properties with special names", () => { + function myFn() { return 1; } + (myFn as any)["my-prop"] = 42; + (myFn as any)["normal"] = 10; + const str = j2s(myFn); + const restored = Function("return " + str)(); + expect(restored["my-prop"]).toBe(42); + expect(restored["normal"]).toBe(10); + }); + it("should handle Object.create(null)", () => { + const obj = Object.create(null); + obj.foo = "bar"; + obj.num = 42; + const str = j2s(obj); + const restored = Function("return " + str)(); + expect(restored.foo).toBe("bar"); + expect(restored.num).toBe(42); + }); + it("should distinguish Symbol('') from Symbol()", () => { + const s1 = Symbol(""); + const s2 = Symbol(); + const str1 = j2s(s1); + const str2 = j2s(s2); + expect(str1).toBe('Symbol("")'); + expect(str2).toBe("Symbol()"); + }); }); describe("Array to String", () => { From 250fdfca718e0ade3aee92ef2847f1cf5beb9cf5 Mon Sep 17 00:00:00 2001 From: lopatnov Date: Fri, 13 Feb 2026 15:04:21 +0200 Subject: [PATCH 10/18] Updated sample --- README.md | 32 ++++++++++++++++---------------- 1 file changed, 16 insertions(+), 16 deletions(-) diff --git a/README.md b/README.md index d963576..686a325 100644 --- a/README.md +++ b/README.md @@ -150,28 +150,28 @@ Combine with [@lopatnov/worker-from-string](https://www.npmjs.com/package/@lopat import javaScriptToString from "@lopatnov/javascripttostring"; import workerFromString from "@lopatnov/worker-from-string"; -// Define a computation function -const fibonacci = function(n) { - if (n <= 1) return n; - let a = 0, b = 1; - for (let i = 2; i <= n; i++) { - [a, b] = [b, a + b]; - } - return b; -}; +// Function with attached lookup data +function classify(value) { + const range = classify.ranges.find(r => value >= r.min && value < r.max); + return range ? range.label : "unknown"; +} +classify.ranges = [ + { min: 0, max: 30, label: "cold" }, + { min: 30, max: 60, label: "warm" }, + { min: 60, max: 100, label: "hot" }, +]; // Serialize and send to a worker -const fnString = javaScriptToString(fibonacci); +// javaScriptToString preserves the function AND its properties: +const code = javaScriptToString(classify); const worker = workerFromString(` - const fibonacci = ${fnString}; - self.onmessage = function(e) { - postMessage({ input: e.data, result: fibonacci(e.data) }); - }; + const classify = ${code}; + self.onmessage = (e) => postMessage(classify(e.data)); `); -worker.onmessage = (e) => console.log(e.data); // { input: 40, result: 102334155 } -worker.postMessage(40); +worker.onmessage = (e) => console.log(e.data); +worker.postMessage(45); // "warm" ``` ### Restoring Values From 78c60395f1d4b35c844e02d39ca07d3acae38c5b Mon Sep 17 00:00:00 2001 From: lopatnov Date: Fri, 13 Feb 2026 15:07:41 +0200 Subject: [PATCH 11/18] Updated docs --- docs/functions/default.html | 2 +- docs/index.html | 2 +- docs/interfaces/ij2soptions.html | 4 ++-- docs/media/index-1.html | 2 +- 4 files changed, 5 insertions(+), 5 deletions(-) diff --git a/docs/functions/default.html b/docs/functions/default.html index 1763b10..3193a6f 100644 --- a/docs/functions/default.html +++ b/docs/functions/default.html @@ -1,4 +1,4 @@ default | @lopatnov/javascripttostring
                                                @lopatnov/javascripttostring
                                                  Preparing search index...

                                                  Function default

                                                  • Converts JavaScript value to string

                                                    Parameters

                                                    • value: any

                                                      the value of any type

                                                    • Optionaloptions: IJ2SOptions

                                                      [optional] The options of conversion

                                                      -

                                                    Returns string

                                                  +

                                                  Returns string

                                                  diff --git a/docs/index.html b/docs/index.html index 5668473..31d8179 100644 --- a/docs/index.html +++ b/docs/index.html @@ -129,7 +129,7 @@

                                                  Combine with @lopatnov/worker-from-string to serialize functions and data for execution in a Web Worker:

                                                  -
                                                  import javaScriptToString from "@lopatnov/javascripttostring";
                                                  import workerFromString from "@lopatnov/worker-from-string";

                                                  // Define a computation function
                                                  const fibonacci = function(n) {
                                                  if (n <= 1) return n;
                                                  let a = 0, b = 1;
                                                  for (let i = 2; i <= n; i++) {
                                                  [a, b] = [b, a + b];
                                                  }
                                                  return b;
                                                  };

                                                  // Serialize and send to a worker
                                                  const fnString = javaScriptToString(fibonacci);

                                                  const worker = workerFromString(`
                                                  const fibonacci = ${fnString};
                                                  self.onmessage = function(e) {
                                                  postMessage({ input: e.data, result: fibonacci(e.data) });
                                                  };
                                                  `);

                                                  worker.onmessage = (e) => console.log(e.data); // { input: 40, result: 102334155 }
                                                  worker.postMessage(40); +
                                                  import javaScriptToString from "@lopatnov/javascripttostring";
                                                  import workerFromString from "@lopatnov/worker-from-string";

                                                  // Function with attached lookup data
                                                  function classify(value) {
                                                  const range = classify.ranges.find(r => value >= r.min && value < r.max);
                                                  return range ? range.label : "unknown";
                                                  }
                                                  classify.ranges = [
                                                  { min: 0, max: 30, label: "cold" },
                                                  { min: 30, max: 60, label: "warm" },
                                                  { min: 60, max: 100, label: "hot" },
                                                  ];

                                                  // Serialize and send to a worker
                                                  // javaScriptToString preserves the function AND its properties:
                                                  const code = javaScriptToString(classify);

                                                  const worker = workerFromString(`
                                                  const classify = ${code};
                                                  self.onmessage = (e) => postMessage(classify(e.data));
                                                  `);

                                                  worker.onmessage = (e) => console.log(e.data);
                                                  worker.postMessage(45); // "warm"
                                                  diff --git a/docs/interfaces/ij2soptions.html b/docs/interfaces/ij2soptions.html index 9861b82..2001415 100644 --- a/docs/interfaces/ij2soptions.html +++ b/docs/interfaces/ij2soptions.html @@ -1,7 +1,7 @@ -IJ2SOptions | @lopatnov/javascripttostring
                                                  @lopatnov/javascripttostring
                                                    Preparing search index...

                                                    Interface IJ2SOptions

                                                    interface IJ2SOptions {
                                                        includeBuffers?: boolean;
                                                        includeFunctionProperties?: boolean;
                                                        includeFunctionPrototype?: boolean;
                                                        nestedArraysAmount?: number;
                                                        nestedFunctionsAmount?: number;
                                                        nestedObjectsAmount?: number;
                                                    }
                                                    Index

                                                    Properties

                                                    includeBuffers? +IJ2SOptions | @lopatnov/javascripttostring
                                                    @lopatnov/javascripttostring
                                                      Preparing search index...

                                                      Interface IJ2SOptions

                                                      interface IJ2SOptions {
                                                          includeBuffers?: boolean;
                                                          includeFunctionProperties?: boolean;
                                                          includeFunctionPrototype?: boolean;
                                                          nestedArraysAmount?: number;
                                                          nestedFunctionsAmount?: number;
                                                          nestedObjectsAmount?: number;
                                                      }
                                                      Index

                                                      Properties

                                                      includeBuffers?: boolean
                                                      includeFunctionProperties?: boolean
                                                      includeFunctionPrototype?: boolean
                                                      nestedArraysAmount?: number
                                                      nestedFunctionsAmount?: number
                                                      nestedObjectsAmount?: number
                                                      +

                                                      Properties

                                                      includeBuffers?: boolean
                                                      includeFunctionProperties?: boolean
                                                      includeFunctionPrototype?: boolean
                                                      nestedArraysAmount?: number
                                                      nestedFunctionsAmount?: number
                                                      nestedObjectsAmount?: number
                                                      diff --git a/docs/media/index-1.html b/docs/media/index-1.html index 5668473..31d8179 100644 --- a/docs/media/index-1.html +++ b/docs/media/index-1.html @@ -129,7 +129,7 @@

                                                      Combine with @lopatnov/worker-from-string to serialize functions and data for execution in a Web Worker:

                                                      -
                                                      import javaScriptToString from "@lopatnov/javascripttostring";
                                                      import workerFromString from "@lopatnov/worker-from-string";

                                                      // Define a computation function
                                                      const fibonacci = function(n) {
                                                      if (n <= 1) return n;
                                                      let a = 0, b = 1;
                                                      for (let i = 2; i <= n; i++) {
                                                      [a, b] = [b, a + b];
                                                      }
                                                      return b;
                                                      };

                                                      // Serialize and send to a worker
                                                      const fnString = javaScriptToString(fibonacci);

                                                      const worker = workerFromString(`
                                                      const fibonacci = ${fnString};
                                                      self.onmessage = function(e) {
                                                      postMessage({ input: e.data, result: fibonacci(e.data) });
                                                      };
                                                      `);

                                                      worker.onmessage = (e) => console.log(e.data); // { input: 40, result: 102334155 }
                                                      worker.postMessage(40); +
                                                      import javaScriptToString from "@lopatnov/javascripttostring";
                                                      import workerFromString from "@lopatnov/worker-from-string";

                                                      // Function with attached lookup data
                                                      function classify(value) {
                                                      const range = classify.ranges.find(r => value >= r.min && value < r.max);
                                                      return range ? range.label : "unknown";
                                                      }
                                                      classify.ranges = [
                                                      { min: 0, max: 30, label: "cold" },
                                                      { min: 30, max: 60, label: "warm" },
                                                      { min: 60, max: 100, label: "hot" },
                                                      ];

                                                      // Serialize and send to a worker
                                                      // javaScriptToString preserves the function AND its properties:
                                                      const code = javaScriptToString(classify);

                                                      const worker = workerFromString(`
                                                      const classify = ${code};
                                                      self.onmessage = (e) => postMessage(classify(e.data));
                                                      `);

                                                      worker.onmessage = (e) => console.log(e.data);
                                                      worker.postMessage(45); // "warm"
                                                      From a9e7f78b3d27b81e582da07f31b6064e603efa34 Mon Sep 17 00:00:00 2001 From: lopatnov Date: Fri, 13 Feb 2026 15:11:12 +0200 Subject: [PATCH 12/18] Returned typedoc --- docs/functions/default.html | 2 +- docs/interfaces/ij2soptions.html | 28 ++++++++++++++++++++++++++-- src/javascripttostring.ts | 18 ++++++++++++------ 3 files changed, 39 insertions(+), 9 deletions(-) diff --git a/docs/functions/default.html b/docs/functions/default.html index 3193a6f..abc3f86 100644 --- a/docs/functions/default.html +++ b/docs/functions/default.html @@ -1,4 +1,4 @@ default | @lopatnov/javascripttostring
                                                      @lopatnov/javascripttostring
                                                        Preparing search index...

                                                        Function default

                                                        • Converts JavaScript value to string

                                                          Parameters

                                                          • value: any

                                                            the value of any type

                                                          • Optionaloptions: IJ2SOptions

                                                            [optional] The options of conversion

                                                            -

                                                          Returns string

                                                        +

                                                        Returns string

                                                        diff --git a/docs/interfaces/ij2soptions.html b/docs/interfaces/ij2soptions.html index 2001415..46940ca 100644 --- a/docs/interfaces/ij2soptions.html +++ b/docs/interfaces/ij2soptions.html @@ -1,7 +1,31 @@ -IJ2SOptions | @lopatnov/javascripttostring
                                                        @lopatnov/javascripttostring
                                                          Preparing search index...

                                                          Interface IJ2SOptions

                                                          interface IJ2SOptions {
                                                              includeBuffers?: boolean;
                                                              includeFunctionProperties?: boolean;
                                                              includeFunctionPrototype?: boolean;
                                                              nestedArraysAmount?: number;
                                                              nestedFunctionsAmount?: number;
                                                              nestedObjectsAmount?: number;
                                                          }
                                                          Index

                                                          Properties

                                                          includeBuffers? +IJ2SOptions | @lopatnov/javascripttostring
                                                          @lopatnov/javascripttostring
                                                            Preparing search index...

                                                            Interface IJ2SOptions

                                                            interface IJ2SOptions {
                                                                includeBuffers?: boolean;
                                                                includeFunctionProperties?: boolean;
                                                                includeFunctionPrototype?: boolean;
                                                                nestedArraysAmount?: number;
                                                                nestedFunctionsAmount?: number;
                                                                nestedObjectsAmount?: number;
                                                            }
                                                            Index

                                                            Properties

                                                            includeBuffers?: boolean
                                                            includeFunctionProperties?: boolean
                                                            includeFunctionPrototype?: boolean
                                                            nestedArraysAmount?: number
                                                            nestedFunctionsAmount?: number
                                                            nestedObjectsAmount?: number
                                                            +

                                                            Properties

                                                            includeBuffers?: boolean

                                                            Include ArrayBuffer and TypedArray contents.

                                                            +
                                                            true
                                                            +
                                                            + +
                                                            includeFunctionProperties?: boolean

                                                            Include function's own enumerable properties.

                                                            +
                                                            true
                                                            +
                                                            + +
                                                            includeFunctionPrototype?: boolean

                                                            Include function's prototype properties.

                                                            +
                                                            true
                                                            +
                                                            + +
                                                            nestedArraysAmount?: number

                                                            Max depth for nested arrays.

                                                            +
                                                            Number.POSITIVE_INFINITY
                                                            +
                                                            + +
                                                            nestedFunctionsAmount?: number

                                                            Max depth for nested functions.

                                                            +
                                                            Number.POSITIVE_INFINITY
                                                            +
                                                            + +
                                                            nestedObjectsAmount?: number

                                                            Max depth for nested objects.

                                                            +
                                                            Number.POSITIVE_INFINITY
                                                            +
                                                            + +
                                                            diff --git a/src/javascripttostring.ts b/src/javascripttostring.ts index f0bea3c..0fb0575 100644 --- a/src/javascripttostring.ts +++ b/src/javascripttostring.ts @@ -1,12 +1,18 @@ import getObjectType from "@lopatnov/get-internal-type"; export interface IJ2SOptions { - includeFunctionProperties?: boolean; // default true - includeFunctionPrototype?: boolean; // default true - includeBuffers?: boolean; // default true - nestedObjectsAmount?: number; // default Number.POSITIVE_INFINITY - nestedArraysAmount?: number; // default Number.POSITIVE_INFINITY - nestedFunctionsAmount?: number; // default Number.POSITIVE_INFINITY + /** Include function's own enumerable properties. @defaultValue true */ + includeFunctionProperties?: boolean; + /** Include function's prototype properties. @defaultValue true */ + includeFunctionPrototype?: boolean; + /** Include ArrayBuffer and TypedArray contents. @defaultValue true */ + includeBuffers?: boolean; + /** Max depth for nested objects. @defaultValue Number.POSITIVE_INFINITY */ + nestedObjectsAmount?: number; + /** Max depth for nested arrays. @defaultValue Number.POSITIVE_INFINITY */ + nestedArraysAmount?: number; + /** Max depth for nested functions. @defaultValue Number.POSITIVE_INFINITY */ + nestedFunctionsAmount?: number; } interface RefInstance { From c35c12226704a567d64516617ac31de656169191 Mon Sep 17 00:00:00 2001 From: lopatnov Date: Fri, 13 Feb 2026 15:18:22 +0200 Subject: [PATCH 13/18] lint fix --- biome.json | 1 - src/javascripttostring.ts | 5 +- test/javascripttostring.test.js | 1630 ++++++++++++++++--------------- test/javascripttostring.test.ts | 20 +- 4 files changed, 839 insertions(+), 817 deletions(-) diff --git a/biome.json b/biome.json index be5dd6b..2254683 100644 --- a/biome.json +++ b/biome.json @@ -44,7 +44,6 @@ "includes": [ "**/src/**/*.ts", "**/test/**/*.ts", - "**/test/**/*.js", "!**/dist/**", "!**/node_modules/**", "!**/docs/**", diff --git a/src/javascripttostring.ts b/src/javascripttostring.ts index 0fb0575..754edf9 100644 --- a/src/javascripttostring.ts +++ b/src/javascripttostring.ts @@ -151,10 +151,7 @@ function regexpToString(value: RegExp): string { function errorToString(value: any): string { const message = JSON.stringify(value.message); const errorClass = value.constructor?.name || "Error"; - const knownErrors = [ - "Error", "TypeError", "RangeError", "ReferenceError", - "SyntaxError", "URIError", "EvalError" - ]; + const knownErrors = ["Error", "TypeError", "RangeError", "ReferenceError", "SyntaxError", "URIError", "EvalError"]; if (knownErrors.includes(errorClass)) { return `new ${errorClass}(${message})`; } diff --git a/test/javascripttostring.test.js b/test/javascripttostring.test.js index a074f1e..70af5bb 100644 --- a/test/javascripttostring.test.js +++ b/test/javascripttostring.test.js @@ -1,837 +1,855 @@ -"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); const javascripttostring_1 = require("../src/javascripttostring"); describe("Null to String", () => { - it("should convert null to string", () => { - const actual = (0, javascripttostring_1.default)(null); - const expected = "null"; - expect(actual).toBe(expected); - }); - it("should convert undefined to string", () => { - const actual = (0, javascripttostring_1.default)(undefined); - const expected = "undefined"; - expect(actual).toBe(expected); - }); + it("should convert null to string", () => { + const actual = (0, javascripttostring_1.default)(null); + const expected = "null"; + expect(actual).toBe(expected); + }); + it("should convert undefined to string", () => { + const actual = (0, javascripttostring_1.default)(undefined); + const expected = "undefined"; + expect(actual).toBe(expected); + }); }); describe("Boolean to String", () => { - it("should convert true", () => { - const actual = (0, javascripttostring_1.default)(true); - const expected = "true"; - expect(actual).toBe(expected); - }); - it("should convert false", () => { - const actual = (0, javascripttostring_1.default)(false); - const expected = "false"; - expect(actual).toBe(expected); - }); - it("should convert boolean object", () => { - const actual = (0, javascripttostring_1.default)(new Boolean(1000)); - const expected = "true"; - expect(actual).toBe(expected); - }); + it("should convert true", () => { + const actual = (0, javascripttostring_1.default)(true); + const expected = "true"; + expect(actual).toBe(expected); + }); + it("should convert false", () => { + const actual = (0, javascripttostring_1.default)(false); + const expected = "false"; + expect(actual).toBe(expected); + }); + it("should convert boolean object", () => { + const actual = (0, javascripttostring_1.default)(new Boolean(1000)); + const expected = "true"; + expect(actual).toBe(expected); + }); }); describe("Number to String", () => { - it("should convert 0", () => { - const actual = (0, javascripttostring_1.default)(0); - const expected = "0"; - expect(actual).toBe(expected); - }); - it("should convert numbers 0 < N < 1", () => { - const actual = (0, javascripttostring_1.default)(0.75); - const expected = "0.75"; - expect(actual).toBe(expected); - }); - it("should convert negative numbers", () => { - const actual = (0, javascripttostring_1.default)(-123); - const expected = "-123"; - expect(actual).toBe(expected); - }); - it("should convert positive numbers", () => { - const actual = (0, javascripttostring_1.default)(456); - const expected = "456"; - expect(actual).toBe(expected); - }); - it("should convert infinity", () => { - const actual1 = (0, javascripttostring_1.default)(Number.POSITIVE_INFINITY); - const expected1 = "Number.POSITIVE_INFINITY"; - const actual2 = (0, javascripttostring_1.default)(Number.NEGATIVE_INFINITY); - const expected2 = "Number.NEGATIVE_INFINITY"; - expect(actual1).toBe(expected1); - expect(actual2).toBe(expected2); - }); - it("should convert min/max values", () => { - const actual1 = (0, javascripttostring_1.default)(Number.MAX_VALUE); - const expected1 = "Number.MAX_VALUE"; - const actual2 = (0, javascripttostring_1.default)(Number.MIN_VALUE); - const expected2 = "Number.MIN_VALUE"; - expect(actual1).toBe(expected1); - expect(actual2).toBe(expected2); - }); - it("should convert BigInt numbers", () => { - const actual = (0, javascripttostring_1.default)(BigInt(9007199254740991)); - const expected = "BigInt(9007199254740991)"; - expect(actual).toBe(expected); - }); + it("should convert 0", () => { + const actual = (0, javascripttostring_1.default)(0); + const expected = "0"; + expect(actual).toBe(expected); + }); + it("should convert numbers 0 < N < 1", () => { + const actual = (0, javascripttostring_1.default)(0.75); + const expected = "0.75"; + expect(actual).toBe(expected); + }); + it("should convert negative numbers", () => { + const actual = (0, javascripttostring_1.default)(-123); + const expected = "-123"; + expect(actual).toBe(expected); + }); + it("should convert positive numbers", () => { + const actual = (0, javascripttostring_1.default)(456); + const expected = "456"; + expect(actual).toBe(expected); + }); + it("should convert infinity", () => { + const actual1 = (0, javascripttostring_1.default)(Number.POSITIVE_INFINITY); + const expected1 = "Number.POSITIVE_INFINITY"; + const actual2 = (0, javascripttostring_1.default)(Number.NEGATIVE_INFINITY); + const expected2 = "Number.NEGATIVE_INFINITY"; + expect(actual1).toBe(expected1); + expect(actual2).toBe(expected2); + }); + it("should convert min/max values", () => { + const actual1 = (0, javascripttostring_1.default)(Number.MAX_VALUE); + const expected1 = "Number.MAX_VALUE"; + const actual2 = (0, javascripttostring_1.default)(Number.MIN_VALUE); + const expected2 = "Number.MIN_VALUE"; + expect(actual1).toBe(expected1); + expect(actual2).toBe(expected2); + }); + it("should convert BigInt numbers", () => { + const actual = (0, javascripttostring_1.default)(BigInt(9007199254740991)); + const expected = "BigInt(9007199254740991)"; + expect(actual).toBe(expected); + }); }); describe("Symbol to String", () => { - it("should convert empty Symbol", () => { - const actual = (0, javascripttostring_1.default)(Symbol()); - const expected = "Symbol()"; - expect(actual).toBe(expected); - }); - it("should convert Symbol with description", () => { - const actual = (0, javascripttostring_1.default)(Symbol("Hello")); - const expected = 'Symbol("Hello")'; - expect(actual).toBe(expected); - }); - it("should convert built-in symbols", () => { - expect((0, javascripttostring_1.default)(Symbol.iterator)).toBe("Symbol.iterator"); - expect((0, javascripttostring_1.default)(Symbol.asyncIterator)).toBe("Symbol.asyncIterator"); - expect((0, javascripttostring_1.default)(Symbol.hasInstance)).toBe("Symbol.hasInstance"); - }); + it("should convert empty Symbol", () => { + const actual = (0, javascripttostring_1.default)(Symbol()); + const expected = "Symbol()"; + expect(actual).toBe(expected); + }); + it("should convert Symbol with description", () => { + const actual = (0, javascripttostring_1.default)(Symbol("Hello")); + const expected = 'Symbol("Hello")'; + expect(actual).toBe(expected); + }); + it("should convert built-in symbols", () => { + expect((0, javascripttostring_1.default)(Symbol.iterator)).toBe("Symbol.iterator"); + expect((0, javascripttostring_1.default)(Symbol.asyncIterator)).toBe("Symbol.asyncIterator"); + expect((0, javascripttostring_1.default)(Symbol.hasInstance)).toBe("Symbol.hasInstance"); + }); }); describe("String to String", () => { - it("should convert empty string", () => { - const actual = (0, javascripttostring_1.default)(""); - const expected = '""'; - expect(actual).toBe(expected); - }); - it("should convert a string", () => { - const actual = (0, javascripttostring_1.default)("JavaScript value to string converter. It converts a runtime value into string value."); - const expected = '"JavaScript value to string converter. It converts a runtime value into string value."'; - expect(actual).toBe(expected); - }); - it("should convert special symbols", () => { - const actual = (0, javascripttostring_1.default)("Check symbols: '\"\t\n—“”⚡"); - const expected = '"Check symbols: \'\\"\\t\\n—“”⚡"'; - expect(actual).toBe(expected); - }); + it("should convert empty string", () => { + const actual = (0, javascripttostring_1.default)(""); + const expected = '""'; + expect(actual).toBe(expected); + }); + it("should convert a string", () => { + const actual = (0, javascripttostring_1.default)( + "JavaScript value to string converter. It converts a runtime value into string value.", + ); + const expected = '"JavaScript value to string converter. It converts a runtime value into string value."'; + expect(actual).toBe(expected); + }); + it("should convert special symbols", () => { + const actual = (0, javascripttostring_1.default)("Check symbols: '\"\t\n—“”⚡"); + const expected = '"Check symbols: \'\\"\\t\\n—“”⚡"'; + expect(actual).toBe(expected); + }); }); describe("RegExp to String", () => { - it("should convert RegExp", () => { - const actual = (0, javascripttostring_1.default)(/s+/gi); - const expected = "/s+/gi"; - expect(actual).toBe(expected); - }); + it("should convert RegExp", () => { + const actual = (0, javascripttostring_1.default)(/s+/gi); + const expected = "/s+/gi"; + expect(actual).toBe(expected); + }); }); describe("Error to String", () => { - it("should convert Error", () => { - const actual = (0, javascripttostring_1.default)(new Error("A mistake")); - const expected = 'new Error("A mistake")'; - expect(actual).toBe(expected); - }); - it("should convert TypeError", () => { - const actual = (0, javascripttostring_1.default)(new TypeError("bad type")); - expect(actual).toBe('new TypeError("bad type")'); - }); - it("should convert RangeError", () => { - const actual = (0, javascripttostring_1.default)(new RangeError("out of range")); - expect(actual).toBe('new RangeError("out of range")'); - }); + it("should convert Error", () => { + const actual = (0, javascripttostring_1.default)(new Error("A mistake")); + const expected = 'new Error("A mistake")'; + expect(actual).toBe(expected); + }); + it("should convert TypeError", () => { + const actual = (0, javascripttostring_1.default)(new TypeError("bad type")); + expect(actual).toBe('new TypeError("bad type")'); + }); + it("should convert RangeError", () => { + const actual = (0, javascripttostring_1.default)(new RangeError("out of range")); + expect(actual).toBe('new RangeError("out of range")'); + }); }); describe("Array to String", () => { - it("should convert empty Array", () => { - const actual = (0, javascripttostring_1.default)([]); - const expected = "[]"; - expect(actual).toBe(expected); - }); - it("should convert an Array", () => { - const arr = [1, 2, 3, "hello", "world"]; - const actual = (0, javascripttostring_1.default)(arr); - const expected = '[1, 2, 3, "hello", "world"]'; - expect(actual).toBe(expected); - expect(arr[0]).toBe(1); - expect(arr[1]).toBe(2); - }); - it("should convert a typed Array", () => { - const arr = new Int8Array([1, 2, 3]); - const str = (0, javascripttostring_1.default)(arr); - const actual = Function(`return ${str};`)(); - expect(arr[0]).toBe(1); - expect(arr[1]).toBe(2); - expect(actual instanceof Int8Array).toBeTruthy(); - expect(actual[0]).toBe(1); - expect(actual[1]).toBe(2); - expect(actual[2]).toBe(3); - }); - it("should convert with nestedArraysAmount = 0", () => { - const str = (0, javascripttostring_1.default)([1, 2, 3, [4, 5, 6, [7, 8, 9]]], { - nestedArraysAmount: 0, - }); - const actual = Function(`return ${str};`)(); - expect(actual[2]).toBe(3); - expect(actual[3]).not.toBeDefined(); - }); - it("should convert with nestedArraysAmount = 1", () => { - const str = (0, javascripttostring_1.default)([1, 2, 3, [4, 5, 6, [7, 8, 9]]], { - nestedArraysAmount: 1, - }); - const actual = Function(`return ${str};`)(); - expect(actual[2]).toBe(3); - expect(actual[3]).toBeDefined(); - expect(actual[3][0]).toBe(4); - expect(actual[3][3]).not.toBeDefined(); - }); + it("should convert empty Array", () => { + const actual = (0, javascripttostring_1.default)([]); + const expected = "[]"; + expect(actual).toBe(expected); + }); + it("should convert an Array", () => { + const arr = [1, 2, 3, "hello", "world"]; + const actual = (0, javascripttostring_1.default)(arr); + const expected = '[1, 2, 3, "hello", "world"]'; + expect(actual).toBe(expected); + expect(arr[0]).toBe(1); + expect(arr[1]).toBe(2); + }); + it("should convert a typed Array", () => { + const arr = new Int8Array([1, 2, 3]); + const str = (0, javascripttostring_1.default)(arr); + const actual = Function(`return ${str};`)(); + expect(arr[0]).toBe(1); + expect(arr[1]).toBe(2); + expect(actual instanceof Int8Array).toBeTruthy(); + expect(actual[0]).toBe(1); + expect(actual[1]).toBe(2); + expect(actual[2]).toBe(3); + }); + it("should convert with nestedArraysAmount = 0", () => { + const str = (0, javascripttostring_1.default)([1, 2, 3, [4, 5, 6, [7, 8, 9]]], { + nestedArraysAmount: 0, + }); + const actual = Function(`return ${str};`)(); + expect(actual[2]).toBe(3); + expect(actual[3]).not.toBeDefined(); + }); + it("should convert with nestedArraysAmount = 1", () => { + const str = (0, javascripttostring_1.default)([1, 2, 3, [4, 5, 6, [7, 8, 9]]], { + nestedArraysAmount: 1, + }); + const actual = Function(`return ${str};`)(); + expect(actual[2]).toBe(3); + expect(actual[3]).toBeDefined(); + expect(actual[3][0]).toBe(4); + expect(actual[3][3]).not.toBeDefined(); + }); }); describe("Function to String", () => { - it("should convert an anonymous function", () => { - const stringFunction = (0, javascripttostring_1.default)((a, b, c) => a + b + c); - const actual = Function("return " + stringFunction)(); - const expected = 6; - expect(actual(1, 2, 3)).toBe(expected); - }); - it("should convert an named function", () => { - function sum(...numbers) { - return Array.prototype.reduce.call(numbers, (accumulator, currentValue) => { - return accumulator + currentValue; - }, 0); - } - const stringFunction = (0, javascripttostring_1.default)(sum); - const actual = Function("return " + stringFunction)(); - const expected = 10; - expect(actual(1, 2, 3, 4)).toBe(expected); - }); - it("should convert lambda function", () => { - const stringFunction = (0, javascripttostring_1.default)((a, b) => { - return a * b; - }); - const actual = Function("return " + stringFunction)(); - const expected = 12; - expect(actual(3, 4)).toBe(expected); - }); - it("should convert class", () => { - const stringFunction = (0, javascripttostring_1.default)(class TestClass { - constructor() { - this.TestVariable = "Hello Test"; - } - }); - const actualClass = Function("return " + stringFunction)(); - const actualObject = new actualClass(); - const expected = "Hello Test"; - expect(actualObject.TestVariable).toBe(expected); - }); - it("should work with function prototype", () => { - class TestClass { - constructor() { - this.TestVariable = "Hello Test"; - } - TestMethod() { - return "It Works"; - } + it("should convert an anonymous function", () => { + const stringFunction = (0, javascripttostring_1.default)((a, b, c) => a + b + c); + const actual = Function("return " + stringFunction)(); + const expected = 6; + expect(actual(1, 2, 3)).toBe(expected); + }); + it("should convert an named function", () => { + function sum(...numbers) { + return Array.prototype.reduce.call( + numbers, + (accumulator, currentValue) => { + return accumulator + currentValue; + }, + 0, + ); + } + const stringFunction = (0, javascripttostring_1.default)(sum); + const actual = Function("return " + stringFunction)(); + const expected = 10; + expect(actual(1, 2, 3, 4)).toBe(expected); + }); + it("should convert lambda function", () => { + const stringFunction = (0, javascripttostring_1.default)((a, b) => { + return a * b; + }); + const actual = Function("return " + stringFunction)(); + const expected = 12; + expect(actual(3, 4)).toBe(expected); + }); + it("should convert class", () => { + const stringFunction = (0, javascripttostring_1.default)( + class TestClass { + constructor() { + this.TestVariable = "Hello Test"; } - const stringFunction = (0, javascripttostring_1.default)(TestClass); - const actualClass = Function("return " + stringFunction)(); - const actualObject = new actualClass(); - const expected = "It Works"; - expect(actualObject.TestMethod()).toBe(expected); - }); - it("should work with includeFunctionProperties = false & includeFunctionPrototype = false", () => { - function TestConstructor() { } - TestConstructor.Test1 = "Completed"; - TestConstructor.prototype.testMethod = () => "It works"; - const stringFunction = (0, javascripttostring_1.default)(TestConstructor, { - includeFunctionProperties: false, - includeFunctionPrototype: false, - }); - const actualClass = Function("return " + stringFunction)(); - expect(actualClass.name).toBe("TestConstructor"); - expect(actualClass.Test1).not.toBeDefined(); - expect(actualClass.prototype.testMethod).not.toBeDefined(); - }); - it("should work with includeFunctionProperties = false", () => { - function TestConstructor() { } - TestConstructor.Test1 = "Completed"; - TestConstructor.prototype.testMethod = function() { return "It works"; }; - TestConstructor.prototype.testMethod.subTestMethod = function() { return "It not works"; }; - TestConstructor.prototype.testMethod.prototype.subTestMethod = function() { return "It works too"; }; - const stringFunction = (0, javascripttostring_1.default)(TestConstructor, { - includeFunctionProperties: false, - }); - const actualClass = Function("return " + stringFunction)(); - expect(actualClass.name).toBe("TestConstructor"); - expect(actualClass.Test1).not.toBeDefined(); - expect(actualClass.prototype.testMethod()).toBe("It works"); - expect(actualClass.prototype.testMethod.subTestMethod).not.toBeDefined(); - expect(actualClass.prototype.testMethod.prototype.subTestMethod()).toBe("It works too"); - }); - it("should work with includeFunctionPrototype = false", () => { - function TestConstructor() { } - TestConstructor.Test1 = "Completed"; - TestConstructor.prototype.testMethod = () => "It works"; - const stringFunction = (0, javascripttostring_1.default)(TestConstructor, { - includeFunctionPrototype: false, - }); - const actualClass = Function("return " + stringFunction)(); - expect(actualClass.name).toBe("TestConstructor"); - expect(actualClass.Test1).toBe("Completed"); - expect(actualClass.prototype.testMethod).not.toBeDefined(); - }); - it("should work with nestedFunctionsAmount = 0", () => { - function TestConstructor() { } - TestConstructor.Test1 = "Completed"; - TestConstructor.prototype.testMethod = () => "It works"; - const stringFunction = (0, javascripttostring_1.default)(TestConstructor, { - nestedFunctionsAmount: 0, - }); - const actualClass = Function("return " + stringFunction)(); - expect(actualClass.name).toBe("TestConstructor"); - expect(actualClass.Test1).toBe("Completed"); - expect(actualClass.prototype.testMethod).not.toBeDefined(); - }); - it("should work with nestedFunctionsAmount = 1", () => { - function TestConstructor() { } - TestConstructor.Test1 = "Completed"; - TestConstructor.prototype.testMethod = () => "It works"; - TestConstructor.prototype.testMethod.subTestMethod = () => "It works too"; - const stringFunction = (0, javascripttostring_1.default)(TestConstructor, { - nestedFunctionsAmount: 1, - }); - const actualClass = Function("return " + stringFunction)(); - expect(actualClass.name).toBe("TestConstructor"); - expect(actualClass.Test1).toBe("Completed"); - expect(actualClass.prototype.testMethod()).toBe("It works"); - expect(actualClass.prototype.testMethod.subTestMethod).not.toBeDefined(); - }); - it("should convert native functions", () => { - const actual = (0, javascripttostring_1.default)([].map); - const expected = "Array.prototype.map"; - expect(actual).toBe(expected); - }); + }, + ); + const actualClass = Function("return " + stringFunction)(); + const actualObject = new actualClass(); + const expected = "Hello Test"; + expect(actualObject.TestVariable).toBe(expected); + }); + it("should work with function prototype", () => { + class TestClass { + constructor() { + this.TestVariable = "Hello Test"; + } + TestMethod() { + return "It Works"; + } + } + const stringFunction = (0, javascripttostring_1.default)(TestClass); + const actualClass = Function("return " + stringFunction)(); + const actualObject = new actualClass(); + const expected = "It Works"; + expect(actualObject.TestMethod()).toBe(expected); + }); + it("should work with includeFunctionProperties = false & includeFunctionPrototype = false", () => { + function TestConstructor() {} + TestConstructor.Test1 = "Completed"; + TestConstructor.prototype.testMethod = () => "It works"; + const stringFunction = (0, javascripttostring_1.default)(TestConstructor, { + includeFunctionProperties: false, + includeFunctionPrototype: false, + }); + const actualClass = Function("return " + stringFunction)(); + expect(actualClass.name).toBe("TestConstructor"); + expect(actualClass.Test1).not.toBeDefined(); + expect(actualClass.prototype.testMethod).not.toBeDefined(); + }); + it("should work with includeFunctionProperties = false", () => { + function TestConstructor() {} + TestConstructor.Test1 = "Completed"; + TestConstructor.prototype.testMethod = function () { return "It works"; }; + TestConstructor.prototype.testMethod.subTestMethod = function () { return "It not works"; }; + TestConstructor.prototype.testMethod.prototype.subTestMethod = function () { return "It works too"; }; + const stringFunction = (0, javascripttostring_1.default)(TestConstructor, { + includeFunctionProperties: false, + }); + const actualClass = Function("return " + stringFunction)(); + expect(actualClass.name).toBe("TestConstructor"); + expect(actualClass.Test1).not.toBeDefined(); + expect(actualClass.prototype.testMethod()).toBe("It works"); + expect(actualClass.prototype.testMethod.subTestMethod).not.toBeDefined(); + expect(actualClass.prototype.testMethod.prototype.subTestMethod()).toBe("It works too"); + }); + it("should work with includeFunctionPrototype = false", () => { + function TestConstructor() {} + TestConstructor.Test1 = "Completed"; + TestConstructor.prototype.testMethod = () => "It works"; + const stringFunction = (0, javascripttostring_1.default)(TestConstructor, { + includeFunctionPrototype: false, + }); + const actualClass = Function("return " + stringFunction)(); + expect(actualClass.name).toBe("TestConstructor"); + expect(actualClass.Test1).toBe("Completed"); + expect(actualClass.prototype.testMethod).not.toBeDefined(); + }); + it("should work with nestedFunctionsAmount = 0", () => { + function TestConstructor() {} + TestConstructor.Test1 = "Completed"; + TestConstructor.prototype.testMethod = () => "It works"; + const stringFunction = (0, javascripttostring_1.default)(TestConstructor, { + nestedFunctionsAmount: 0, + }); + const actualClass = Function("return " + stringFunction)(); + expect(actualClass.name).toBe("TestConstructor"); + expect(actualClass.Test1).toBe("Completed"); + expect(actualClass.prototype.testMethod).not.toBeDefined(); + }); + it("should work with nestedFunctionsAmount = 1", () => { + function TestConstructor() {} + TestConstructor.Test1 = "Completed"; + TestConstructor.prototype.testMethod = () => "It works"; + TestConstructor.prototype.testMethod.subTestMethod = () => "It works too"; + const stringFunction = (0, javascripttostring_1.default)(TestConstructor, { + nestedFunctionsAmount: 1, + }); + const actualClass = Function("return " + stringFunction)(); + expect(actualClass.name).toBe("TestConstructor"); + expect(actualClass.Test1).toBe("Completed"); + expect(actualClass.prototype.testMethod()).toBe("It works"); + expect(actualClass.prototype.testMethod.subTestMethod).not.toBeDefined(); + }); + it("should convert native functions", () => { + const actual = (0, javascripttostring_1.default)([].map); + const expected = "Array.prototype.map"; + expect(actual).toBe(expected); + }); }); describe("Object to String", () => { - it("should convert empty Object", () => { - const actual = (0, javascripttostring_1.default)({}); - const expected = "{}"; - expect(actual).toBe(expected); - }); - it("should convert an Object", () => { - const stringObject = (0, javascripttostring_1.default)({ - a: 1, - hello: "world", - innerObject: { - testFunction: (x1, y1, x2, y2) => { - return Math.pow(Math.pow(x1 - x2, 2) + Math.pow(y1 - y2, 2), 0.5); - }, + it("should convert empty Object", () => { + const actual = (0, javascripttostring_1.default)({}); + const expected = "{}"; + expect(actual).toBe(expected); + }); + it("should convert an Object", () => { + const stringObject = (0, javascripttostring_1.default)({ + a: 1, + hello: "world", + innerObject: { + testFunction: (x1, y1, x2, y2) => { + return Math.pow(Math.pow(x1 - x2, 2) + Math.pow(y1 - y2, 2), 0.5); + }, + }, + }); + const actual = Function("return " + stringObject)(); + const expected1 = 1; + const expected2 = "world"; + const expected3 = 5; + expect(actual.a).toBe(expected1); + expect(actual.hello).toBe(expected2); + expect(actual.innerObject).toBeDefined(); + expect(actual.innerObject.testFunction(3, 0, 0, 4)).toBe(expected3); + }); + it("should work with nestedObjectsAmount = 0", () => { + const objectString = (0, javascripttostring_1.default)( + { + a: "hello", + b: true, + c: { + d: "world", + }, + }, + { + nestedObjectsAmount: 0, + }, + ); + const actual = Function(`return ${objectString};`)(); + expect(actual.a).toBe("hello"); + expect(actual.b).toBe(true); + expect(actual.c).not.toBeDefined(); + }); + it("should work with nestedObjectsAmount = 1", () => { + const objectString = (0, javascripttostring_1.default)( + { + a: "hello", + b: true, + c: { + d: { + e: { + f: "world", }, - }); - const actual = Function("return " + stringObject)(); - const expected1 = 1; - const expected2 = "world"; - const expected3 = 5; - expect(actual.a).toBe(expected1); - expect(actual.hello).toBe(expected2); - expect(actual.innerObject).toBeDefined(); - expect(actual.innerObject.testFunction(3, 0, 0, 4)).toBe(expected3); - }); - it("should work with nestedObjectsAmount = 0", () => { - const objectString = (0, javascripttostring_1.default)({ - a: "hello", - b: true, - c: { - d: "world", + g: 123, + }, + j: () => "ok", + }, + }, + { + nestedObjectsAmount: 1, + }, + ); + const actual = Function(`return ${objectString};`)(); + expect(actual.a).toBe("hello"); + expect(actual.b).toBe(true); + expect(actual.c).toBeDefined(); + expect(actual.c.d).not.toBeDefined(); + expect(actual.c.j).toBeDefined(); + expect(actual.c.j()).toBe("ok"); + }); + it("should work with nestedObjectsAmount = 2", () => { + const objectString = (0, javascripttostring_1.default)( + { + a: "hello", + b: true, + c: { + d: { + e: { + f: "world", }, - }, { - nestedObjectsAmount: 0, - }); - const actual = Function(`return ${objectString};`)(); - expect(actual.a).toBe("hello"); - expect(actual.b).toBe(true); - expect(actual.c).not.toBeDefined(); - }); - it("should work with nestedObjectsAmount = 1", () => { - const objectString = (0, javascripttostring_1.default)({ - a: "hello", - b: true, - c: { - d: { - e: { - f: "world", - }, - g: 123, - }, - j: () => "ok", - }, - }, { - nestedObjectsAmount: 1, - }); - const actual = Function(`return ${objectString};`)(); - expect(actual.a).toBe("hello"); - expect(actual.b).toBe(true); - expect(actual.c).toBeDefined(); - expect(actual.c.d).not.toBeDefined(); - expect(actual.c.j).toBeDefined(); - expect(actual.c.j()).toBe("ok"); - }); - it("should work with nestedObjectsAmount = 2", () => { - const objectString = (0, javascripttostring_1.default)({ - a: "hello", - b: true, - c: { - d: { - e: { - f: "world", - }, - g: 123, - }, - j: () => "ok", - }, - }, { - nestedObjectsAmount: 2, - }); - const actual = Function(`return ${objectString};`)(); - expect(actual.a).toBe("hello"); - expect(actual.b).toBe(true); - expect(actual.c).toBeDefined(); - expect(actual.c.j).toBeDefined(); - expect(actual.c.j()).toBe("ok"); - expect(actual.c.d.e).not.toBeDefined(); - expect(actual.c.d.g).toBe(123); - }); + g: 123, + }, + j: () => "ok", + }, + }, + { + nestedObjectsAmount: 2, + }, + ); + const actual = Function(`return ${objectString};`)(); + expect(actual.a).toBe("hello"); + expect(actual.b).toBe(true); + expect(actual.c).toBeDefined(); + expect(actual.c.j).toBeDefined(); + expect(actual.c.j()).toBe("ok"); + expect(actual.c.d.e).not.toBeDefined(); + expect(actual.c.d.g).toBe(123); + }); }); describe("Set to String", () => { - it("should convert the empty set", () => { - const actual = (0, javascripttostring_1.default)(new Set()); - const expected = "new Set()"; - expect(actual).toBe(expected); - }); - it("should convert a set", () => { - const actual = (0, javascripttostring_1.default)(new Set([1, 2, 3])); - const expected = "new Set([1, 2, 3])"; - expect(actual).toBe(expected); - }); + it("should convert the empty set", () => { + const actual = (0, javascripttostring_1.default)(new Set()); + const expected = "new Set()"; + expect(actual).toBe(expected); + }); + it("should convert a set", () => { + const actual = (0, javascripttostring_1.default)(new Set([1, 2, 3])); + const expected = "new Set([1, 2, 3])"; + expect(actual).toBe(expected); + }); }); describe("Map to String", () => { - it("should convert the empty map", () => { - const actual = (0, javascripttostring_1.default)(new Map()); - const expected = "new Map()"; - expect(actual).toBe(expected); - }); - it("should convert a map", () => { - const actual = (0, javascripttostring_1.default)(new Map([ - [1, 2], - [3, 4], - ])); - const expected = "new Map([[1, 2], [3, 4]])"; - expect(actual).toBe(expected); - }); + it("should convert the empty map", () => { + const actual = (0, javascripttostring_1.default)(new Map()); + const expected = "new Map()"; + expect(actual).toBe(expected); + }); + it("should convert a map", () => { + const actual = (0, javascripttostring_1.default)( + new Map([ + [1, 2], + [3, 4], + ]), + ); + const expected = "new Map([[1, 2], [3, 4]])"; + expect(actual).toBe(expected); + }); }); describe("Resolve references to itself", () => { - it("should resolve the array itself", () => { - var x = [1, 2, 3]; - x[0] = x; - const actual = (0, javascripttostring_1.default)(x); - const expected = Function(`return ${actual}`)(); - expect(expected[0]).toBe(expected); - expect(expected[1]).toBe(2); - expect(expected[2]).toBe(3); - expect(expected.length).toBe(3); - }); - it("should resolve the array inside arrays", () => { - var x = [[4, 5, [6, 7, 8]], 22, 33]; - x[0][2][1] = x; - x[0][2][2] = x; - const actual = (0, javascripttostring_1.default)(x); - const expected = Function(`return ${actual}`)(); - expect(expected[0][2][2]).toBe(expected); - expect(expected[0][2][1]).toBe(expected); - expect(expected[0][2][0]).toBe(6); - expect(expected[1]).toBe(22); - expect(expected[2]).toBe(33); - expect(expected.length).toBe(3); - }); - it("should resolve the object itself", () => { - var x = { a: { b: { c: { hello: "world" } } } }; - x.a.b.c.hello = x; - const actual = (0, javascripttostring_1.default)(x); - const expected = Function(`return ${actual}`)(); - expect(expected).toBeTruthy(); - expect(expected.a).toBeTruthy(); - expect(expected.a.b).toBeTruthy(); - expect(expected.a.b.c).toBeTruthy(); - expect(expected.a.b.c.hello).toBe(expected); - }); - it("should resolve objects and arrays", () => { - const y = ["an", "array", null]; - const x = { - a: 123, - b: "an object", - c: y, - }; - y[2] = x; - const z = { - arr: [x], - }; - const actual = (0, javascripttostring_1.default)(z); - const expected = Function(`return ${actual}`)(); - expect(expected).toBeTruthy(); - expect(expected.arr[0].a).toBe(123); - expect(expected.arr[0].b).toBe("an object"); - expect(Array.isArray(expected.arr[0].c)).toBeTruthy(); - expect(expected.arr[0].c[0]).toBe("an"); - expect(expected.arr[0].c[1]).toBe("array"); - expect(expected.arr[0].c[2].a).toBe(123); - expect(expected.arr[0].c[2].c[2].a).toBe(123); - }); - it("should resolve the function itself", () => { - function Narcissus() { - return "narcissus"; - } - Narcissus.itself = Narcissus; - Narcissus.prototype.me = Narcissus; - Narcissus.prototype.deep = { - arr: [Narcissus], - }; - const actual = (0, javascripttostring_1.default)(Narcissus); - const expected = Function(`return ${actual}`)(); - expect(expected instanceof Function).toBeTruthy(); - expect(expected()).toBe("narcissus"); - expect(expected.itself).toBe(expected); - expect(expected.prototype.me).toBe(expected); - expect(expected.prototype.deep.arr[0]).toBe(expected); - }); - // Issue #1: Self-referencing array at top level - it("should handle self-referencing array (Issue #1)", () => { - var x = [1, 2, 3]; - x[0] = x; - const actual = (0, javascripttostring_1.default)(x); - const restored = Function(`return ${actual}`)(); - expect(restored[0]).toBe(restored); - expect(restored[1]).toBe(2); - expect(restored[2]).toBe(3); - }); - // Issue #1: Self-referencing object at top level - it("should handle self-referencing object (Issue #1)", () => { - var obj = { a: 1, b: 2 }; - obj.self = obj; - const actual = (0, javascripttostring_1.default)(obj); - const restored = Function(`return ${actual}`)(); - expect(restored.self).toBe(restored); - expect(restored.a).toBe(1); - expect(restored.b).toBe(2); - }); - // Issue #1: Deep circular chain A -> B -> C -> A (back to root) - it("should handle deep circular chain back to root (Issue #1)", () => { - var a = { name: "A" }; - var b = { name: "B" }; - var c = { name: "C" }; - a.next = b; - b.next = c; - c.next = a; // circular back to root - const actual = (0, javascripttostring_1.default)(a); - const restored = Function(`return ${actual}`)(); - expect(restored.name).toBe("A"); - expect(restored.next.name).toBe("B"); - expect(restored.next.next.name).toBe("C"); - expect(restored.next.next.next).toBe(restored); // should be same reference - }); - // Issue #1: Object with array that references back to parent (root) - it("should handle object with array referencing parent root (Issue #1)", () => { - var parent = { - name: "parent", - children: [], - }; - parent.children.push({ name: "child1", parent: parent }); - parent.children.push({ name: "child2", parent: parent }); - const actual = (0, javascripttostring_1.default)(parent); - const restored = Function(`return ${actual}`)(); - expect(restored.name).toBe("parent"); - expect(restored.children[0].name).toBe("child1"); - expect(restored.children[0].parent).toBe(restored); - expect(restored.children[1].parent).toBe(restored); - }); - // Cross-reference between objects - nested object referenced from another branch - it("should handle cross-references between nested objects (Issue #1)", () => { - var a = { b: { c: "hello" } }; - var d = { e: a.b }; - a.f = d; - const actual = (0, javascripttostring_1.default)(a); - const restored = Function(`return ${actual}`)(); - expect(restored.b.c).toBe("hello"); - expect(restored.f.e).toBe(restored.b); // d.e should reference a.b - expect(restored.f.e.c).toBe("hello"); - }); - // Multiple objects sharing the same nested reference - it("should handle multiple references to same nested object (Issue #1)", () => { - var shared = { value: 42 }; - var obj = { - first: shared, - second: shared, - nested: { - third: shared, - }, - }; - const actual = (0, javascripttostring_1.default)(obj); - const restored = Function(`return ${actual}`)(); - expect(restored.first).toBe(restored.second); - expect(restored.first).toBe(restored.nested.third); - expect(restored.first.value).toBe(42); - }); - // Array containing objects with cross-references between each other - it("should handle array with cross-referencing objects (Issue #1)", () => { - var obj1 = { id: 1 }; - var obj2 = { id: 2, ref: obj1 }; - obj1.ref = obj2; - var arr = [obj1, obj2]; - const actual = (0, javascripttostring_1.default)(arr); - const restored = Function(`return ${actual}`)(); - expect(restored[0].id).toBe(1); - expect(restored[1].id).toBe(2); - expect(restored[0].ref).toBe(restored[1]); - expect(restored[1].ref).toBe(restored[0]); - }); - // Complex graph structure with multiple interconnections - it("should handle complex graph with multiple interconnections (Issue #1)", () => { - var node1 = { id: 1, connections: [] }; - var node2 = { id: 2, connections: [] }; - var node3 = { id: 3, connections: [] }; - // Create a mesh: each node references the others - node1.connections.push(node2, node3); - node2.connections.push(node1, node3); - node3.connections.push(node1, node2); - var graph = { nodes: [node1, node2, node3], root: node1 }; - const actual = (0, javascripttostring_1.default)(graph); - const restored = Function(`return ${actual}`)(); - expect(restored.nodes[0].id).toBe(1); - expect(restored.nodes[1].id).toBe(2); - expect(restored.nodes[2].id).toBe(3); - expect(restored.root).toBe(restored.nodes[0]); - expect(restored.nodes[0].connections[0]).toBe(restored.nodes[1]); - expect(restored.nodes[0].connections[1]).toBe(restored.nodes[2]); - expect(restored.nodes[1].connections[0]).toBe(restored.nodes[0]); - }); - // Diamond pattern: A -> B -> D, A -> C -> D (D is shared) - it("should handle diamond-shaped references (Issue #1)", () => { - var d = { value: "diamond" }; - var b = { ref: d }; - var c = { ref: d }; - var a = { left: b, right: c }; - const actual = (0, javascripttostring_1.default)(a); - const restored = Function(`return ${actual}`)(); - expect(restored.left.ref.value).toBe("diamond"); - expect(restored.left.ref).toBe(restored.right.ref); - }); - // Shared array between two object branches - it("should handle shared array between branches (Issue #1)", () => { - var items = [10, 20, 30]; - var obj = { - source: items, - copy: items, - }; - const actual = (0, javascripttostring_1.default)(obj); - const restored = Function(`return ${actual}`)(); - expect(restored.source).toBe(restored.copy); - expect(restored.source[0]).toBe(10); - expect(restored.source.length).toBe(3); - }); - // Nested self-reference (not root): inner object references itself - it("should handle nested object self-reference (Issue #1)", () => { - var inner = { name: "inner" }; - inner.self = inner; - var outer = { data: inner }; - const actual = (0, javascripttostring_1.default)(outer); - const restored = Function(`return ${actual}`)(); - expect(restored.data.name).toBe("inner"); - expect(restored.data.self).toBe(restored.data); - }); - // Cross-reference + circular mix: A.b references C, C.back references A - it("should handle mixed circular and cross-references (Issue #1)", () => { - var a = { name: "A" }; - var b = { name: "B" }; - var c = { name: "C", back: a }; - a.child = b; - b.friend = c; - const actual = (0, javascripttostring_1.default)(a); - const restored = Function(`return ${actual}`)(); - expect(restored.name).toBe("A"); - expect(restored.child.name).toBe("B"); - expect(restored.child.friend.name).toBe("C"); - expect(restored.child.friend.back).toBe(restored); - }); - // Deep diamond: shared object at depth 3 - it("should handle deeply nested shared reference (Issue #1)", () => { - var leaf = { x: 1, y: 2 }; - var obj = { - a: { b: { c: leaf } }, - d: { e: { f: leaf } }, - }; - const actual = (0, javascripttostring_1.default)(obj); - const restored = Function(`return ${actual}`)(); - expect(restored.a.b.c).toBe(restored.d.e.f); - expect(restored.a.b.c.x).toBe(1); - }); - // Array of arrays sharing a sub-array - it("should handle shared sub-arrays (Issue #1)", () => { - var shared = [1, 2, 3]; - var arr = [shared, [shared, 4], shared]; - const actual = (0, javascripttostring_1.default)(arr); - const restored = Function(`return ${actual}`)(); - expect(restored[0]).toBe(restored[2]); - expect(restored[1][0]).toBe(restored[0]); - expect(restored[0][0]).toBe(1); - }); - // Circular chain through non-root: A -> B -> C -> B (not back to A) - it("should handle circular chain to non-root ancestor (Issue #1)", () => { - var a = { name: "A" }; - var b = { name: "B" }; - var c = { name: "C", back: b }; - a.next = b; - b.next = c; - const actual = (0, javascripttostring_1.default)(a); - const restored = Function(`return ${actual}`)(); - expect(restored.name).toBe("A"); - expect(restored.next.name).toBe("B"); - expect(restored.next.next.name).toBe("C"); - expect(restored.next.next.back).toBe(restored.next); - }); - // Property key with special characters in cross-reference path - it("should handle cross-references with special property names (Issue #1)", () => { - var shared = { ok: true }; - var obj = { - "my-key": shared, - "other's": shared, - }; - const actual = (0, javascripttostring_1.default)(obj); - const restored = Function(`return ${actual}`)(); - expect(restored["my-key"]).toBe(restored["other's"]); - expect(restored["my-key"].ok).toBe(true); - }); - // Three-level tree: root -> [branch1, branch2], both branches share a leaf - it("should handle tree with shared leaves (Issue #1)", () => { - var leaf = { type: "leaf" }; - var root = { - branches: [ - { name: "b1", items: [leaf, { type: "other" }] }, - { name: "b2", items: [{ type: "other2" }, leaf] }, - ], - }; - const actual = (0, javascripttostring_1.default)(root); - const restored = Function(`return ${actual}`)(); - expect(restored.branches[0].items[0]).toBe(restored.branches[1].items[1]); - expect(restored.branches[0].items[0].type).toBe("leaf"); - }); - // Object referencing root from deep nesting + cross-ref - it("should handle root circular ref combined with cross-ref (Issue #1)", () => { - var shared = { val: 99 }; - var root = { - a: { ref: shared }, - b: { ref: shared }, - }; - root.a.root = root; - const actual = (0, javascripttostring_1.default)(root); - const restored = Function(`return ${actual}`)(); - expect(restored.a.root).toBe(restored); - expect(restored.a.ref).toBe(restored.b.ref); - expect(restored.a.ref.val).toBe(99); - }); - // Object -> function -> array: shared function referenced from multiple places - it("should handle shared function between object branches (Issue #1)", () => { - var handler = function greet(name) { - return "hello " + name; - }; - var obj = { - a: { action: handler }, - b: { action: handler }, - }; - const actual = (0, javascripttostring_1.default)(obj); - const restored = Function(`return ${actual}`)(); - expect(restored.a.action).toBe(restored.b.action); - expect(restored.a.action("world")).toBe("hello world"); - }); - // Object containing function with properties that reference back - it("should handle function with property referencing parent object (Issue #1)", () => { - var obj = { name: "container" }; - var fn = function process() { - return 42; - }; - fn.owner = obj; - obj.run = fn; - const actual = (0, javascripttostring_1.default)(obj); - const restored = Function(`return ${actual}`)(); - expect(restored.name).toBe("container"); - expect(restored.run()).toBe(42); - expect(restored.run.owner).toBe(restored); - }); - // Mixed: object -> array -> function -> object cross-refs - it("should handle object-array-function chain with cross-refs (Issue #1)", () => { - var config = { debug: true }; - var fn = function log(msg) { - return msg; - }; - var pipeline = { - steps: [fn, config], - settings: config, - handler: fn, - }; - const actual = (0, javascripttostring_1.default)(pipeline); - const restored = Function(`return ${actual}`)(); - expect(restored.steps[0]).toBe(restored.handler); - expect(restored.steps[1]).toBe(restored.settings); - expect(restored.handler("test")).toBe("test"); - expect(restored.settings.debug).toBe(true); - }); - // Array with functions referencing shared objects - it("should handle array of functions sharing an object (Issue #1)", () => { - var state = { count: 0 }; - var inc = function increment() { - return 1; - }; - inc.state = state; - var dec = function decrement() { - return -1; - }; - dec.state = state; - var arr = [inc, dec]; - const actual = (0, javascripttostring_1.default)(arr); - const restored = Function(`return ${actual}`)(); - expect(restored[0].state).toBe(restored[1].state); - expect(restored[0].state.count).toBe(0); - expect(restored[0]()).toBe(1); - expect(restored[1]()).toBe(-1); - }); - // Deeply nested: object -> array -> object -> function -> back to array - it("should handle deep mixed nesting with circular ref (Issue #1)", () => { - var arr = []; - var inner = { - process: function doWork() { - return "done"; - }, - }; - inner.process.list = arr; - var root = { items: arr }; - arr.push(inner); - const actual = (0, javascripttostring_1.default)(root); - const restored = Function(`return ${actual}`)(); - expect(restored.items[0].process()).toBe("done"); - expect(restored.items[0].process.list).toBe(restored.items); - }); - // Function referencing itself via a property (function self-ref) - it("should handle function self-reference via property (Issue #1)", () => { - var fn = function recursive() { - return 1; - }; - fn.self = fn; - var obj = { action: fn }; - const actual = (0, javascripttostring_1.default)(obj); - const restored = Function(`return ${actual}`)(); - expect(restored.action()).toBe(1); - expect(restored.action.self).toBe(restored.action); - }); - // Two functions referencing each other - it("should handle mutually referencing functions (Issue #1)", () => { - var fnA = function a() { - return "A"; - }; - var fnB = function b() { - return "B"; - }; - fnA.partner = fnB; - fnB.partner = fnA; - var obj = { first: fnA, second: fnB }; - const actual = (0, javascripttostring_1.default)(obj); - const restored = Function(`return ${actual}`)(); - expect(restored.first()).toBe("A"); - expect(restored.second()).toBe("B"); - expect(restored.first.partner).toBe(restored.second); - expect(restored.second.partner).toBe(restored.first); - }); + it("should resolve the array itself", () => { + var x = [1, 2, 3]; + x[0] = x; + const actual = (0, javascripttostring_1.default)(x); + const expected = Function(`return ${actual}`)(); + expect(expected[0]).toBe(expected); + expect(expected[1]).toBe(2); + expect(expected[2]).toBe(3); + expect(expected.length).toBe(3); + }); + it("should resolve the array inside arrays", () => { + var x = [[4, 5, [6, 7, 8]], 22, 33]; + x[0][2][1] = x; + x[0][2][2] = x; + const actual = (0, javascripttostring_1.default)(x); + const expected = Function(`return ${actual}`)(); + expect(expected[0][2][2]).toBe(expected); + expect(expected[0][2][1]).toBe(expected); + expect(expected[0][2][0]).toBe(6); + expect(expected[1]).toBe(22); + expect(expected[2]).toBe(33); + expect(expected.length).toBe(3); + }); + it("should resolve the object itself", () => { + var x = { a: { b: { c: { hello: "world" } } } }; + x.a.b.c.hello = x; + const actual = (0, javascripttostring_1.default)(x); + const expected = Function(`return ${actual}`)(); + expect(expected).toBeTruthy(); + expect(expected.a).toBeTruthy(); + expect(expected.a.b).toBeTruthy(); + expect(expected.a.b.c).toBeTruthy(); + expect(expected.a.b.c.hello).toBe(expected); + }); + it("should resolve objects and arrays", () => { + const y = ["an", "array", null]; + const x = { + a: 123, + b: "an object", + c: y, + }; + y[2] = x; + const z = { + arr: [x], + }; + const actual = (0, javascripttostring_1.default)(z); + const expected = Function(`return ${actual}`)(); + expect(expected).toBeTruthy(); + expect(expected.arr[0].a).toBe(123); + expect(expected.arr[0].b).toBe("an object"); + expect(Array.isArray(expected.arr[0].c)).toBeTruthy(); + expect(expected.arr[0].c[0]).toBe("an"); + expect(expected.arr[0].c[1]).toBe("array"); + expect(expected.arr[0].c[2].a).toBe(123); + expect(expected.arr[0].c[2].c[2].a).toBe(123); + }); + it("should resolve the function itself", () => { + function Narcissus() { + return "narcissus"; + } + Narcissus.itself = Narcissus; + Narcissus.prototype.me = Narcissus; + Narcissus.prototype.deep = { + arr: [Narcissus], + }; + const actual = (0, javascripttostring_1.default)(Narcissus); + const expected = Function(`return ${actual}`)(); + expect(expected instanceof Function).toBeTruthy(); + expect(expected()).toBe("narcissus"); + expect(expected.itself).toBe(expected); + expect(expected.prototype.me).toBe(expected); + expect(expected.prototype.deep.arr[0]).toBe(expected); + }); + // Issue #1: Self-referencing array at top level + it("should handle self-referencing array (Issue #1)", () => { + var x = [1, 2, 3]; + x[0] = x; + const actual = (0, javascripttostring_1.default)(x); + const restored = Function(`return ${actual}`)(); + expect(restored[0]).toBe(restored); + expect(restored[1]).toBe(2); + expect(restored[2]).toBe(3); + }); + // Issue #1: Self-referencing object at top level + it("should handle self-referencing object (Issue #1)", () => { + var obj = { a: 1, b: 2 }; + obj.self = obj; + const actual = (0, javascripttostring_1.default)(obj); + const restored = Function(`return ${actual}`)(); + expect(restored.self).toBe(restored); + expect(restored.a).toBe(1); + expect(restored.b).toBe(2); + }); + // Issue #1: Deep circular chain A -> B -> C -> A (back to root) + it("should handle deep circular chain back to root (Issue #1)", () => { + var a = { name: "A" }; + var b = { name: "B" }; + var c = { name: "C" }; + a.next = b; + b.next = c; + c.next = a; // circular back to root + const actual = (0, javascripttostring_1.default)(a); + const restored = Function(`return ${actual}`)(); + expect(restored.name).toBe("A"); + expect(restored.next.name).toBe("B"); + expect(restored.next.next.name).toBe("C"); + expect(restored.next.next.next).toBe(restored); // should be same reference + }); + // Issue #1: Object with array that references back to parent (root) + it("should handle object with array referencing parent root (Issue #1)", () => { + var parent = { + name: "parent", + children: [], + }; + parent.children.push({ name: "child1", parent: parent }); + parent.children.push({ name: "child2", parent: parent }); + const actual = (0, javascripttostring_1.default)(parent); + const restored = Function(`return ${actual}`)(); + expect(restored.name).toBe("parent"); + expect(restored.children[0].name).toBe("child1"); + expect(restored.children[0].parent).toBe(restored); + expect(restored.children[1].parent).toBe(restored); + }); + // Cross-reference between objects - nested object referenced from another branch + it("should handle cross-references between nested objects (Issue #1)", () => { + var a = { b: { c: "hello" } }; + var d = { e: a.b }; + a.f = d; + const actual = (0, javascripttostring_1.default)(a); + const restored = Function(`return ${actual}`)(); + expect(restored.b.c).toBe("hello"); + expect(restored.f.e).toBe(restored.b); // d.e should reference a.b + expect(restored.f.e.c).toBe("hello"); + }); + // Multiple objects sharing the same nested reference + it("should handle multiple references to same nested object (Issue #1)", () => { + var shared = { value: 42 }; + var obj = { + first: shared, + second: shared, + nested: { + third: shared, + }, + }; + const actual = (0, javascripttostring_1.default)(obj); + const restored = Function(`return ${actual}`)(); + expect(restored.first).toBe(restored.second); + expect(restored.first).toBe(restored.nested.third); + expect(restored.first.value).toBe(42); + }); + // Array containing objects with cross-references between each other + it("should handle array with cross-referencing objects (Issue #1)", () => { + var obj1 = { id: 1 }; + var obj2 = { id: 2, ref: obj1 }; + obj1.ref = obj2; + var arr = [obj1, obj2]; + const actual = (0, javascripttostring_1.default)(arr); + const restored = Function(`return ${actual}`)(); + expect(restored[0].id).toBe(1); + expect(restored[1].id).toBe(2); + expect(restored[0].ref).toBe(restored[1]); + expect(restored[1].ref).toBe(restored[0]); + }); + // Complex graph structure with multiple interconnections + it("should handle complex graph with multiple interconnections (Issue #1)", () => { + var node1 = { id: 1, connections: [] }; + var node2 = { id: 2, connections: [] }; + var node3 = { id: 3, connections: [] }; + // Create a mesh: each node references the others + node1.connections.push(node2, node3); + node2.connections.push(node1, node3); + node3.connections.push(node1, node2); + var graph = { nodes: [node1, node2, node3], root: node1 }; + const actual = (0, javascripttostring_1.default)(graph); + const restored = Function(`return ${actual}`)(); + expect(restored.nodes[0].id).toBe(1); + expect(restored.nodes[1].id).toBe(2); + expect(restored.nodes[2].id).toBe(3); + expect(restored.root).toBe(restored.nodes[0]); + expect(restored.nodes[0].connections[0]).toBe(restored.nodes[1]); + expect(restored.nodes[0].connections[1]).toBe(restored.nodes[2]); + expect(restored.nodes[1].connections[0]).toBe(restored.nodes[0]); + }); + // Diamond pattern: A -> B -> D, A -> C -> D (D is shared) + it("should handle diamond-shaped references (Issue #1)", () => { + var d = { value: "diamond" }; + var b = { ref: d }; + var c = { ref: d }; + var a = { left: b, right: c }; + const actual = (0, javascripttostring_1.default)(a); + const restored = Function(`return ${actual}`)(); + expect(restored.left.ref.value).toBe("diamond"); + expect(restored.left.ref).toBe(restored.right.ref); + }); + // Shared array between two object branches + it("should handle shared array between branches (Issue #1)", () => { + var items = [10, 20, 30]; + var obj = { + source: items, + copy: items, + }; + const actual = (0, javascripttostring_1.default)(obj); + const restored = Function(`return ${actual}`)(); + expect(restored.source).toBe(restored.copy); + expect(restored.source[0]).toBe(10); + expect(restored.source.length).toBe(3); + }); + // Nested self-reference (not root): inner object references itself + it("should handle nested object self-reference (Issue #1)", () => { + var inner = { name: "inner" }; + inner.self = inner; + var outer = { data: inner }; + const actual = (0, javascripttostring_1.default)(outer); + const restored = Function(`return ${actual}`)(); + expect(restored.data.name).toBe("inner"); + expect(restored.data.self).toBe(restored.data); + }); + // Cross-reference + circular mix: A.b references C, C.back references A + it("should handle mixed circular and cross-references (Issue #1)", () => { + var a = { name: "A" }; + var b = { name: "B" }; + var c = { name: "C", back: a }; + a.child = b; + b.friend = c; + const actual = (0, javascripttostring_1.default)(a); + const restored = Function(`return ${actual}`)(); + expect(restored.name).toBe("A"); + expect(restored.child.name).toBe("B"); + expect(restored.child.friend.name).toBe("C"); + expect(restored.child.friend.back).toBe(restored); + }); + // Deep diamond: shared object at depth 3 + it("should handle deeply nested shared reference (Issue #1)", () => { + var leaf = { x: 1, y: 2 }; + var obj = { + a: { b: { c: leaf } }, + d: { e: { f: leaf } }, + }; + const actual = (0, javascripttostring_1.default)(obj); + const restored = Function(`return ${actual}`)(); + expect(restored.a.b.c).toBe(restored.d.e.f); + expect(restored.a.b.c.x).toBe(1); + }); + // Array of arrays sharing a sub-array + it("should handle shared sub-arrays (Issue #1)", () => { + var shared = [1, 2, 3]; + var arr = [shared, [shared, 4], shared]; + const actual = (0, javascripttostring_1.default)(arr); + const restored = Function(`return ${actual}`)(); + expect(restored[0]).toBe(restored[2]); + expect(restored[1][0]).toBe(restored[0]); + expect(restored[0][0]).toBe(1); + }); + // Circular chain through non-root: A -> B -> C -> B (not back to A) + it("should handle circular chain to non-root ancestor (Issue #1)", () => { + var a = { name: "A" }; + var b = { name: "B" }; + var c = { name: "C", back: b }; + a.next = b; + b.next = c; + const actual = (0, javascripttostring_1.default)(a); + const restored = Function(`return ${actual}`)(); + expect(restored.name).toBe("A"); + expect(restored.next.name).toBe("B"); + expect(restored.next.next.name).toBe("C"); + expect(restored.next.next.back).toBe(restored.next); + }); + // Property key with special characters in cross-reference path + it("should handle cross-references with special property names (Issue #1)", () => { + var shared = { ok: true }; + var obj = { + "my-key": shared, + "other's": shared, + }; + const actual = (0, javascripttostring_1.default)(obj); + const restored = Function(`return ${actual}`)(); + expect(restored["my-key"]).toBe(restored["other's"]); + expect(restored["my-key"].ok).toBe(true); + }); + // Three-level tree: root -> [branch1, branch2], both branches share a leaf + it("should handle tree with shared leaves (Issue #1)", () => { + var leaf = { type: "leaf" }; + var root = { + branches: [ + { name: "b1", items: [leaf, { type: "other" }] }, + { name: "b2", items: [{ type: "other2" }, leaf] }, + ], + }; + const actual = (0, javascripttostring_1.default)(root); + const restored = Function(`return ${actual}`)(); + expect(restored.branches[0].items[0]).toBe(restored.branches[1].items[1]); + expect(restored.branches[0].items[0].type).toBe("leaf"); + }); + // Object referencing root from deep nesting + cross-ref + it("should handle root circular ref combined with cross-ref (Issue #1)", () => { + var shared = { val: 99 }; + var root = { + a: { ref: shared }, + b: { ref: shared }, + }; + root.a.root = root; + const actual = (0, javascripttostring_1.default)(root); + const restored = Function(`return ${actual}`)(); + expect(restored.a.root).toBe(restored); + expect(restored.a.ref).toBe(restored.b.ref); + expect(restored.a.ref.val).toBe(99); + }); + // Object -> function -> array: shared function referenced from multiple places + it("should handle shared function between object branches (Issue #1)", () => { + var handler = function greet(name) { + return "hello " + name; + }; + var obj = { + a: { action: handler }, + b: { action: handler }, + }; + const actual = (0, javascripttostring_1.default)(obj); + const restored = Function(`return ${actual}`)(); + expect(restored.a.action).toBe(restored.b.action); + expect(restored.a.action("world")).toBe("hello world"); + }); + // Object containing function with properties that reference back + it("should handle function with property referencing parent object (Issue #1)", () => { + var obj = { name: "container" }; + var fn = function process() { + return 42; + }; + fn.owner = obj; + obj.run = fn; + const actual = (0, javascripttostring_1.default)(obj); + const restored = Function(`return ${actual}`)(); + expect(restored.name).toBe("container"); + expect(restored.run()).toBe(42); + expect(restored.run.owner).toBe(restored); + }); + // Mixed: object -> array -> function -> object cross-refs + it("should handle object-array-function chain with cross-refs (Issue #1)", () => { + var config = { debug: true }; + var fn = function log(msg) { + return msg; + }; + var pipeline = { + steps: [fn, config], + settings: config, + handler: fn, + }; + const actual = (0, javascripttostring_1.default)(pipeline); + const restored = Function(`return ${actual}`)(); + expect(restored.steps[0]).toBe(restored.handler); + expect(restored.steps[1]).toBe(restored.settings); + expect(restored.handler("test")).toBe("test"); + expect(restored.settings.debug).toBe(true); + }); + // Array with functions referencing shared objects + it("should handle array of functions sharing an object (Issue #1)", () => { + var state = { count: 0 }; + var inc = function increment() { + return 1; + }; + inc.state = state; + var dec = function decrement() { + return -1; + }; + dec.state = state; + var arr = [inc, dec]; + const actual = (0, javascripttostring_1.default)(arr); + const restored = Function(`return ${actual}`)(); + expect(restored[0].state).toBe(restored[1].state); + expect(restored[0].state.count).toBe(0); + expect(restored[0]()).toBe(1); + expect(restored[1]()).toBe(-1); + }); + // Deeply nested: object -> array -> object -> function -> back to array + it("should handle deep mixed nesting with circular ref (Issue #1)", () => { + var arr = []; + var inner = { + process: function doWork() { + return "done"; + }, + }; + inner.process.list = arr; + var root = { items: arr }; + arr.push(inner); + const actual = (0, javascripttostring_1.default)(root); + const restored = Function(`return ${actual}`)(); + expect(restored.items[0].process()).toBe("done"); + expect(restored.items[0].process.list).toBe(restored.items); + }); + // Function referencing itself via a property (function self-ref) + it("should handle function self-reference via property (Issue #1)", () => { + var fn = function recursive() { + return 1; + }; + fn.self = fn; + var obj = { action: fn }; + const actual = (0, javascripttostring_1.default)(obj); + const restored = Function(`return ${actual}`)(); + expect(restored.action()).toBe(1); + expect(restored.action.self).toBe(restored.action); + }); + // Two functions referencing each other + it("should handle mutually referencing functions (Issue #1)", () => { + var fnA = function a() { + return "A"; + }; + var fnB = function b() { + return "B"; + }; + fnA.partner = fnB; + fnB.partner = fnA; + var obj = { first: fnA, second: fnB }; + const actual = (0, javascripttostring_1.default)(obj); + const restored = Function(`return ${actual}`)(); + expect(restored.first()).toBe("A"); + expect(restored.second()).toBe("B"); + expect(restored.first.partner).toBe(restored.second); + expect(restored.second.partner).toBe(restored.first); + }); }); diff --git a/test/javascripttostring.test.ts b/test/javascripttostring.test.ts index 4367adc..bb9d0e9 100644 --- a/test/javascripttostring.test.ts +++ b/test/javascripttostring.test.ts @@ -268,13 +268,15 @@ describe("Edge cases", () => { expect(str).toBe("/hello/i"); }); it("should handle function properties with special names", () => { - function myFn() { return 1; } + function myFn() { + return 1; + } (myFn as any)["my-prop"] = 42; - (myFn as any)["normal"] = 10; + (myFn as any).normal = 10; const str = j2s(myFn); const restored = Function("return " + str)(); expect(restored["my-prop"]).toBe(42); - expect(restored["normal"]).toBe(10); + expect(restored.normal).toBe(10); }); it("should handle Object.create(null)", () => { const obj = Object.create(null); @@ -431,9 +433,15 @@ describe("Function to String", () => { it("should work with includeFunctionProperties = false", () => { function TestConstructor() {} (TestConstructor as any).Test1 = "Completed"; - TestConstructor.prototype.testMethod = function() { return "It works"; }; - TestConstructor.prototype.testMethod.subTestMethod = function() { return "It not works"; }; - TestConstructor.prototype.testMethod.prototype.subTestMethod = function() { return "It works too"; }; + // biome-ignore lint/complexity/useArrowFunction: needs .prototype (arrow functions have none) + TestConstructor.prototype.testMethod = function () { + return "It works"; + }; + TestConstructor.prototype.testMethod.subTestMethod = () => "It not works"; + // biome-ignore lint/complexity/useArrowFunction: needs .prototype (arrow functions have none) + TestConstructor.prototype.testMethod.prototype.subTestMethod = function () { + return "It works too"; + }; const stringFunction = j2s(TestConstructor, { includeFunctionProperties: false, From 53b92602a69b278c6053cb29949c0b0abbc40618 Mon Sep 17 00:00:00 2001 From: lopatnov Date: Sat, 14 Feb 2026 19:49:20 +0200 Subject: [PATCH 14/18] Updated configuration and updated properties processing --- dist/javascripttostring.es5.js.map | 1 - ...ring.es5.js => javascripttostring.es5.mjs} | 35 +++++++++---------- dist/javascripttostring.es5.mjs.map | 1 + dist/javascripttostring.umd.js | 33 +++++++++-------- dist/javascripttostring.umd.js.map | 2 +- ...ripttostring.js => javascripttostring.cjs} | 35 +++++++++---------- dist/lib/javascripttostring.cjs.map | 1 + dist/lib/javascripttostring.js.map | 1 - dist/types/javascripttostring.d.ts | 6 ++++ docs/functions/default.html | 2 +- docs/interfaces/ij2soptions.html | 14 ++++---- jest.config.js | 7 +++- package.json | 15 ++++---- set-registry.js => set-registry.cjs | 0 src/javascripttostring.ts | 29 ++++++++------- .../{generator.test.js => generator.test.cjs} | 0 ...ng.test.js => javascripttostring.test.cjs} | 0 17 files changed, 98 insertions(+), 84 deletions(-) delete mode 100644 dist/javascripttostring.es5.js.map rename dist/{javascripttostring.es5.js => javascripttostring.es5.mjs} (94%) create mode 100644 dist/javascripttostring.es5.mjs.map rename dist/lib/{javascripttostring.js => javascripttostring.cjs} (94%) create mode 100644 dist/lib/javascripttostring.cjs.map delete mode 100644 dist/lib/javascripttostring.js.map rename set-registry.js => set-registry.cjs (100%) rename test/{generator.test.js => generator.test.cjs} (100%) rename test/{javascripttostring.test.js => javascripttostring.test.cjs} (100%) diff --git a/dist/javascripttostring.es5.js.map b/dist/javascripttostring.es5.js.map deleted file mode 100644 index 391647a..0000000 --- a/dist/javascripttostring.es5.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"javascripttostring.es5.js","sources":["../node_modules/@lopatnov/get-internal-type/dist/get-internal-type.es.js","../src/javascripttostring.ts"],"sourcesContent":["var types = {}, typesToString = types.toString, buildInList = [\r\n \"Boolean\",\r\n \"Number\",\r\n \"String\",\r\n \"Function\",\r\n \"Array\",\r\n \"Date\",\r\n \"RegExp\",\r\n \"Object\",\r\n \"Error\",\r\n \"Promise\",\r\n \"Generator\",\r\n \"GeneratorFunction\",\r\n \"ArrayBuffer\",\r\n \"DataView\"\r\n], typedArrays = [\r\n \"Int8Array\",\r\n \"Uint8Array\",\r\n \"Uint8ClampedArray\",\r\n \"Int16Array\",\r\n \"Uint16Array\",\r\n \"Int32Array\",\r\n \"Uint32Array\",\r\n \"Float32Array\",\r\n \"Float64Array\",\r\n \"BigInt64Array\",\r\n \"BigUint64Array\"\r\n], maps = [\"Map\", \"WeakMap\"], sets = [\"Set\", \"WeakSet\"];\r\nbuildInList.forEach(function (name) {\r\n types[\"[object \" + name + \"]\"] = name.toLowerCase();\r\n});\r\nmaps.forEach(function (name) {\r\n types[\"[object \" + name + \"]\"] = \"map\";\r\n});\r\nsets.forEach(function (name) {\r\n types[\"[object \" + name + \"]\"] = \"set\";\r\n});\r\ntypedArrays.forEach(function (name) {\r\n types[\"[object \" + name + \"]\"] = \"typedarray\";\r\n});\r\nfunction getInternalType(obj) {\r\n return obj == null\r\n ? obj + \"\"\r\n : typeof obj === \"object\" || typeof obj === \"function\"\r\n ? types[typesToString.call(obj)] || \"object\"\r\n : typeof obj;\r\n}\n\nexport default getInternalType;\n//# sourceMappingURL=get-internal-type.es.js.map\n",null],"names":["getObjectType"],"mappings":"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","x_google_ignoreList":[0]} \ No newline at end of file diff --git a/dist/javascripttostring.es5.js b/dist/javascripttostring.es5.mjs similarity index 94% rename from dist/javascripttostring.es5.js rename to dist/javascripttostring.es5.mjs index 9014a0a..4b09097 100644 --- a/dist/javascripttostring.es5.js +++ b/dist/javascripttostring.es5.mjs @@ -49,6 +49,14 @@ function getInternalType(obj) { var refs = []; var crossRefs = []; var counter = 0; +const identifierRegex = /^[a-zA-Z_$][a-zA-Z0-9_$]*$/; +function propertyAccessor(name) { + if (identifierRegex.test(name)) { + return `.${name}`; + } + const escaped = name.replace(/\\/g, "\\\\").replace(/'/gi, "\\'"); + return `['${escaped}']`; +} function fillNativeFunctions(ext, obj, objName, fromPrototype = true) { const arrNames = Object.getOwnPropertyNames(fromPrototype ? obj.prototype : obj); const protoPath = fromPrototype ? ".prototype." : "."; @@ -157,10 +165,7 @@ function errorToString(value) { var _a; const message = JSON.stringify(value.message); const errorClass = ((_a = value.constructor) === null || _a === void 0 ? void 0 : _a.name) || "Error"; - const knownErrors = [ - "Error", "TypeError", "RangeError", "ReferenceError", - "SyntaxError", "URIError", "EvalError" - ]; + const knownErrors = ["Error", "TypeError", "RangeError", "ReferenceError", "SyntaxError", "URIError", "EvalError"]; if (knownErrors.includes(errorClass)) { return `new ${errorClass}(${message})`; } @@ -191,7 +196,7 @@ function getLocalRefs(value) { function attachActions(localRefs, result) { if (localRefs.length > 0) { counter = (counter + 1) % Number.MAX_SAFE_INTEGER; - const localName = `___j2s_${counter}`; + const localName = `___ref${counter}`; const actions = localRefs.reduce((x1, x2) => { const action = converToAction(localName, x2); refs.splice(refs.indexOf(x2), 1); @@ -216,7 +221,7 @@ function converToAction(localName, r) { sourceObj = r.source; } else if (typeof destObj === "string") { - path += `['${destObj.replace(/'/gi, "\\'")}']`; + path += propertyAccessor(destObj); sourceObj = sourceObj[destObj]; } else if (destObj !== sourceObj) { @@ -257,7 +262,7 @@ function objectToString(value, options, history) { history.currentPath.pop(); history.references.pop(); if (propertyValue !== "undefined") { - if (!/^[a-zA-Z_$][a-zA-Z0-9_$]*$/.test(propertyName)) { + if (!identifierRegex.test(propertyName)) { const escaped = propertyName.replace(/\\/g, "\\\\").replace(/"/g, '\\"'); propertyName = `"${escaped}"`; } @@ -279,13 +284,7 @@ function functionPropertiesToString(functionName, value, options, history) { history.currentPath.pop(); history.references.pop(); if (propertyValue !== "undefined") { - if (/^[a-zA-Z_$][a-zA-Z0-9_$]*$/.test(propertyName)) { - result += `${functionName}.${propertyName} = ${propertyValue};\n`; - } - else { - const escaped = propertyName.replace(/\\/g, "\\\\").replace(/"/g, '\\"'); - result += `${functionName}["${escaped}"] = ${propertyValue};\n`; - } + result += `${functionName}${propertyAccessor(propertyName)} = ${propertyValue};\n`; } } } @@ -453,11 +452,11 @@ function attachCrossRefActions(localCrossRefs, result) { return result; } counter = (counter + 1) % Number.MAX_SAFE_INTEGER; - const localName = `___j2s_${counter}`; + const localName = `___ref${counter}`; const actions = localCrossRefs .map((cr) => { - const destAccessor = cr.destPath.map((p) => `['${p.replace(/'/gi, "\\'")}']`).join(""); - const srcAccessor = cr.sourcePath.map((p) => `['${p.replace(/'/gi, "\\'")}']`).join(""); + const destAccessor = cr.destPath.map(propertyAccessor).join(""); + const srcAccessor = cr.sourcePath.map(propertyAccessor).join(""); return `${localName}${destAccessor} = ${localName}${srcAccessor}; `; }) .join(""); @@ -499,4 +498,4 @@ function javaScriptToString(value, options) { } export { javaScriptToString as default }; -//# sourceMappingURL=javascripttostring.es5.js.map +//# sourceMappingURL=javascripttostring.es5.mjs.map diff --git a/dist/javascripttostring.es5.mjs.map b/dist/javascripttostring.es5.mjs.map new file mode 100644 index 0000000..1dcfea1 --- /dev/null +++ b/dist/javascripttostring.es5.mjs.map @@ -0,0 +1 @@ +{"version":3,"file":"javascripttostring.es5.mjs","sources":["../node_modules/@lopatnov/get-internal-type/dist/get-internal-type.es.js","../src/javascripttostring.ts"],"sourcesContent":["var types = {}, typesToString = types.toString, buildInList = [\r\n \"Boolean\",\r\n \"Number\",\r\n \"String\",\r\n \"Function\",\r\n \"Array\",\r\n \"Date\",\r\n \"RegExp\",\r\n \"Object\",\r\n \"Error\",\r\n \"Promise\",\r\n \"Generator\",\r\n \"GeneratorFunction\",\r\n \"ArrayBuffer\",\r\n \"DataView\"\r\n], typedArrays = [\r\n \"Int8Array\",\r\n \"Uint8Array\",\r\n \"Uint8ClampedArray\",\r\n \"Int16Array\",\r\n \"Uint16Array\",\r\n \"Int32Array\",\r\n \"Uint32Array\",\r\n \"Float32Array\",\r\n \"Float64Array\",\r\n \"BigInt64Array\",\r\n \"BigUint64Array\"\r\n], maps = [\"Map\", \"WeakMap\"], sets = [\"Set\", \"WeakSet\"];\r\nbuildInList.forEach(function (name) {\r\n types[\"[object \" + name + \"]\"] = name.toLowerCase();\r\n});\r\nmaps.forEach(function (name) {\r\n types[\"[object \" + name + \"]\"] = \"map\";\r\n});\r\nsets.forEach(function (name) {\r\n types[\"[object \" + name + \"]\"] = \"set\";\r\n});\r\ntypedArrays.forEach(function (name) {\r\n types[\"[object \" + name + \"]\"] = \"typedarray\";\r\n});\r\nfunction getInternalType(obj) {\r\n return obj == null\r\n ? obj + \"\"\r\n : typeof obj === \"object\" || typeof obj === \"function\"\r\n ? types[typesToString.call(obj)] || \"object\"\r\n : typeof obj;\r\n}\n\nexport default getInternalType;\n//# sourceMappingURL=get-internal-type.es.js.map\n",null],"names":["getObjectType"],"mappings":"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","x_google_ignoreList":[0]} \ No newline at end of file diff --git a/dist/javascripttostring.umd.js b/dist/javascripttostring.umd.js index 2c85132..6df1602 100644 --- a/dist/javascripttostring.umd.js +++ b/dist/javascripttostring.umd.js @@ -55,6 +55,14 @@ var refs = []; var crossRefs = []; var counter = 0; + const identifierRegex = /^[a-zA-Z_$][a-zA-Z0-9_$]*$/; + function propertyAccessor(name) { + if (identifierRegex.test(name)) { + return `.${name}`; + } + const escaped = name.replace(/\\/g, "\\\\").replace(/'/gi, "\\'"); + return `['${escaped}']`; + } function fillNativeFunctions(ext, obj, objName, fromPrototype = true) { const arrNames = Object.getOwnPropertyNames(fromPrototype ? obj.prototype : obj); const protoPath = fromPrototype ? ".prototype." : "."; @@ -163,10 +171,7 @@ var _a; const message = JSON.stringify(value.message); const errorClass = ((_a = value.constructor) === null || _a === void 0 ? void 0 : _a.name) || "Error"; - const knownErrors = [ - "Error", "TypeError", "RangeError", "ReferenceError", - "SyntaxError", "URIError", "EvalError" - ]; + const knownErrors = ["Error", "TypeError", "RangeError", "ReferenceError", "SyntaxError", "URIError", "EvalError"]; if (knownErrors.includes(errorClass)) { return `new ${errorClass}(${message})`; } @@ -197,7 +202,7 @@ function attachActions(localRefs, result) { if (localRefs.length > 0) { counter = (counter + 1) % Number.MAX_SAFE_INTEGER; - const localName = `___j2s_${counter}`; + const localName = `___ref${counter}`; const actions = localRefs.reduce((x1, x2) => { const action = converToAction(localName, x2); refs.splice(refs.indexOf(x2), 1); @@ -222,7 +227,7 @@ sourceObj = r.source; } else if (typeof destObj === "string") { - path += `['${destObj.replace(/'/gi, "\\'")}']`; + path += propertyAccessor(destObj); sourceObj = sourceObj[destObj]; } else if (destObj !== sourceObj) { @@ -263,7 +268,7 @@ history.currentPath.pop(); history.references.pop(); if (propertyValue !== "undefined") { - if (!/^[a-zA-Z_$][a-zA-Z0-9_$]*$/.test(propertyName)) { + if (!identifierRegex.test(propertyName)) { const escaped = propertyName.replace(/\\/g, "\\\\").replace(/"/g, '\\"'); propertyName = `"${escaped}"`; } @@ -285,13 +290,7 @@ history.currentPath.pop(); history.references.pop(); if (propertyValue !== "undefined") { - if (/^[a-zA-Z_$][a-zA-Z0-9_$]*$/.test(propertyName)) { - result += `${functionName}.${propertyName} = ${propertyValue};\n`; - } - else { - const escaped = propertyName.replace(/\\/g, "\\\\").replace(/"/g, '\\"'); - result += `${functionName}["${escaped}"] = ${propertyValue};\n`; - } + result += `${functionName}${propertyAccessor(propertyName)} = ${propertyValue};\n`; } } } @@ -459,11 +458,11 @@ return result; } counter = (counter + 1) % Number.MAX_SAFE_INTEGER; - const localName = `___j2s_${counter}`; + const localName = `___ref${counter}`; const actions = localCrossRefs .map((cr) => { - const destAccessor = cr.destPath.map((p) => `['${p.replace(/'/gi, "\\'")}']`).join(""); - const srcAccessor = cr.sourcePath.map((p) => `['${p.replace(/'/gi, "\\'")}']`).join(""); + const destAccessor = cr.destPath.map(propertyAccessor).join(""); + const srcAccessor = cr.sourcePath.map(propertyAccessor).join(""); return `${localName}${destAccessor} = ${localName}${srcAccessor}; `; }) .join(""); diff --git a/dist/javascripttostring.umd.js.map b/dist/javascripttostring.umd.js.map index 9c74943..3f0d3b6 100644 --- a/dist/javascripttostring.umd.js.map +++ b/dist/javascripttostring.umd.js.map @@ -1 +1 @@ -{"version":3,"file":"javascripttostring.umd.js","sources":["../node_modules/@lopatnov/get-internal-type/dist/get-internal-type.es.js","../src/javascripttostring.ts"],"sourcesContent":["var types = {}, typesToString = types.toString, buildInList = [\r\n \"Boolean\",\r\n \"Number\",\r\n \"String\",\r\n \"Function\",\r\n \"Array\",\r\n \"Date\",\r\n \"RegExp\",\r\n \"Object\",\r\n \"Error\",\r\n \"Promise\",\r\n \"Generator\",\r\n \"GeneratorFunction\",\r\n \"ArrayBuffer\",\r\n \"DataView\"\r\n], typedArrays = [\r\n \"Int8Array\",\r\n \"Uint8Array\",\r\n \"Uint8ClampedArray\",\r\n \"Int16Array\",\r\n \"Uint16Array\",\r\n \"Int32Array\",\r\n \"Uint32Array\",\r\n \"Float32Array\",\r\n \"Float64Array\",\r\n \"BigInt64Array\",\r\n \"BigUint64Array\"\r\n], maps = [\"Map\", \"WeakMap\"], sets = [\"Set\", \"WeakSet\"];\r\nbuildInList.forEach(function (name) {\r\n types[\"[object \" + name + \"]\"] = name.toLowerCase();\r\n});\r\nmaps.forEach(function (name) {\r\n types[\"[object \" + name + \"]\"] = \"map\";\r\n});\r\nsets.forEach(function (name) {\r\n types[\"[object \" + name + \"]\"] = \"set\";\r\n});\r\ntypedArrays.forEach(function (name) {\r\n types[\"[object \" + name + \"]\"] = \"typedarray\";\r\n});\r\nfunction getInternalType(obj) {\r\n return obj == null\r\n ? obj + \"\"\r\n : typeof obj === \"object\" || typeof obj === \"function\"\r\n ? types[typesToString.call(obj)] || \"object\"\r\n : typeof obj;\r\n}\n\nexport default getInternalType;\n//# sourceMappingURL=get-internal-type.es.js.map\n",null],"names":["getObjectType"],"mappings":"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","x_google_ignoreList":[0]} \ No newline at end of file +{"version":3,"file":"javascripttostring.umd.js","sources":["../node_modules/@lopatnov/get-internal-type/dist/get-internal-type.es.js","../src/javascripttostring.ts"],"sourcesContent":["var types = {}, typesToString = types.toString, buildInList = [\r\n \"Boolean\",\r\n \"Number\",\r\n \"String\",\r\n \"Function\",\r\n \"Array\",\r\n \"Date\",\r\n \"RegExp\",\r\n \"Object\",\r\n \"Error\",\r\n \"Promise\",\r\n \"Generator\",\r\n \"GeneratorFunction\",\r\n \"ArrayBuffer\",\r\n \"DataView\"\r\n], typedArrays = [\r\n \"Int8Array\",\r\n \"Uint8Array\",\r\n \"Uint8ClampedArray\",\r\n \"Int16Array\",\r\n \"Uint16Array\",\r\n \"Int32Array\",\r\n \"Uint32Array\",\r\n \"Float32Array\",\r\n \"Float64Array\",\r\n \"BigInt64Array\",\r\n \"BigUint64Array\"\r\n], maps = [\"Map\", \"WeakMap\"], sets = [\"Set\", \"WeakSet\"];\r\nbuildInList.forEach(function (name) {\r\n types[\"[object \" + name + \"]\"] = name.toLowerCase();\r\n});\r\nmaps.forEach(function (name) {\r\n types[\"[object \" + name + \"]\"] = \"map\";\r\n});\r\nsets.forEach(function (name) {\r\n types[\"[object \" + name + \"]\"] = \"set\";\r\n});\r\ntypedArrays.forEach(function (name) {\r\n types[\"[object \" + name + \"]\"] = \"typedarray\";\r\n});\r\nfunction getInternalType(obj) {\r\n return obj == null\r\n ? obj + \"\"\r\n : typeof obj === \"object\" || typeof obj === \"function\"\r\n ? types[typesToString.call(obj)] || \"object\"\r\n : typeof obj;\r\n}\n\nexport default getInternalType;\n//# sourceMappingURL=get-internal-type.es.js.map\n",null],"names":["getObjectType"],"mappings":"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","x_google_ignoreList":[0]} \ No newline at end of file diff --git a/dist/lib/javascripttostring.js b/dist/lib/javascripttostring.cjs similarity index 94% rename from dist/lib/javascripttostring.js rename to dist/lib/javascripttostring.cjs index ba761ce..be66774 100644 --- a/dist/lib/javascripttostring.js +++ b/dist/lib/javascripttostring.cjs @@ -51,6 +51,14 @@ function getInternalType(obj) { var refs = []; var crossRefs = []; var counter = 0; +const identifierRegex = /^[a-zA-Z_$][a-zA-Z0-9_$]*$/; +function propertyAccessor(name) { + if (identifierRegex.test(name)) { + return `.${name}`; + } + const escaped = name.replace(/\\/g, "\\\\").replace(/'/gi, "\\'"); + return `['${escaped}']`; +} function fillNativeFunctions(ext, obj, objName, fromPrototype = true) { const arrNames = Object.getOwnPropertyNames(fromPrototype ? obj.prototype : obj); const protoPath = fromPrototype ? ".prototype." : "."; @@ -159,10 +167,7 @@ function errorToString(value) { var _a; const message = JSON.stringify(value.message); const errorClass = ((_a = value.constructor) === null || _a === void 0 ? void 0 : _a.name) || "Error"; - const knownErrors = [ - "Error", "TypeError", "RangeError", "ReferenceError", - "SyntaxError", "URIError", "EvalError" - ]; + const knownErrors = ["Error", "TypeError", "RangeError", "ReferenceError", "SyntaxError", "URIError", "EvalError"]; if (knownErrors.includes(errorClass)) { return `new ${errorClass}(${message})`; } @@ -193,7 +198,7 @@ function getLocalRefs(value) { function attachActions(localRefs, result) { if (localRefs.length > 0) { counter = (counter + 1) % Number.MAX_SAFE_INTEGER; - const localName = `___j2s_${counter}`; + const localName = `___ref${counter}`; const actions = localRefs.reduce((x1, x2) => { const action = converToAction(localName, x2); refs.splice(refs.indexOf(x2), 1); @@ -218,7 +223,7 @@ function converToAction(localName, r) { sourceObj = r.source; } else if (typeof destObj === "string") { - path += `['${destObj.replace(/'/gi, "\\'")}']`; + path += propertyAccessor(destObj); sourceObj = sourceObj[destObj]; } else if (destObj !== sourceObj) { @@ -259,7 +264,7 @@ function objectToString(value, options, history) { history.currentPath.pop(); history.references.pop(); if (propertyValue !== "undefined") { - if (!/^[a-zA-Z_$][a-zA-Z0-9_$]*$/.test(propertyName)) { + if (!identifierRegex.test(propertyName)) { const escaped = propertyName.replace(/\\/g, "\\\\").replace(/"/g, '\\"'); propertyName = `"${escaped}"`; } @@ -281,13 +286,7 @@ function functionPropertiesToString(functionName, value, options, history) { history.currentPath.pop(); history.references.pop(); if (propertyValue !== "undefined") { - if (/^[a-zA-Z_$][a-zA-Z0-9_$]*$/.test(propertyName)) { - result += `${functionName}.${propertyName} = ${propertyValue};\n`; - } - else { - const escaped = propertyName.replace(/\\/g, "\\\\").replace(/"/g, '\\"'); - result += `${functionName}["${escaped}"] = ${propertyValue};\n`; - } + result += `${functionName}${propertyAccessor(propertyName)} = ${propertyValue};\n`; } } } @@ -455,11 +454,11 @@ function attachCrossRefActions(localCrossRefs, result) { return result; } counter = (counter + 1) % Number.MAX_SAFE_INTEGER; - const localName = `___j2s_${counter}`; + const localName = `___ref${counter}`; const actions = localCrossRefs .map((cr) => { - const destAccessor = cr.destPath.map((p) => `['${p.replace(/'/gi, "\\'")}']`).join(""); - const srcAccessor = cr.sourcePath.map((p) => `['${p.replace(/'/gi, "\\'")}']`).join(""); + const destAccessor = cr.destPath.map(propertyAccessor).join(""); + const srcAccessor = cr.sourcePath.map(propertyAccessor).join(""); return `${localName}${destAccessor} = ${localName}${srcAccessor}; `; }) .join(""); @@ -501,4 +500,4 @@ function javaScriptToString(value, options) { } module.exports = javaScriptToString; -//# sourceMappingURL=javascripttostring.js.map +//# sourceMappingURL=javascripttostring.cjs.map diff --git a/dist/lib/javascripttostring.cjs.map b/dist/lib/javascripttostring.cjs.map new file mode 100644 index 0000000..fe0fead --- /dev/null +++ b/dist/lib/javascripttostring.cjs.map @@ -0,0 +1 @@ +{"version":3,"file":"javascripttostring.cjs","sources":["../../node_modules/@lopatnov/get-internal-type/dist/get-internal-type.es.js","../../src/javascripttostring.ts"],"sourcesContent":["var types = {}, typesToString = types.toString, buildInList = [\r\n \"Boolean\",\r\n \"Number\",\r\n \"String\",\r\n \"Function\",\r\n \"Array\",\r\n \"Date\",\r\n \"RegExp\",\r\n \"Object\",\r\n \"Error\",\r\n \"Promise\",\r\n \"Generator\",\r\n \"GeneratorFunction\",\r\n \"ArrayBuffer\",\r\n \"DataView\"\r\n], typedArrays = [\r\n \"Int8Array\",\r\n \"Uint8Array\",\r\n \"Uint8ClampedArray\",\r\n \"Int16Array\",\r\n \"Uint16Array\",\r\n \"Int32Array\",\r\n \"Uint32Array\",\r\n \"Float32Array\",\r\n \"Float64Array\",\r\n \"BigInt64Array\",\r\n \"BigUint64Array\"\r\n], maps = [\"Map\", \"WeakMap\"], sets = [\"Set\", \"WeakSet\"];\r\nbuildInList.forEach(function (name) {\r\n types[\"[object \" + name + \"]\"] = name.toLowerCase();\r\n});\r\nmaps.forEach(function (name) {\r\n types[\"[object \" + name + \"]\"] = \"map\";\r\n});\r\nsets.forEach(function (name) {\r\n types[\"[object \" + name + \"]\"] = \"set\";\r\n});\r\ntypedArrays.forEach(function (name) {\r\n types[\"[object \" + name + \"]\"] = \"typedarray\";\r\n});\r\nfunction getInternalType(obj) {\r\n return obj == null\r\n ? obj + \"\"\r\n : typeof obj === \"object\" || typeof obj === \"function\"\r\n ? types[typesToString.call(obj)] || \"object\"\r\n : typeof obj;\r\n}\n\nexport default getInternalType;\n//# sourceMappingURL=get-internal-type.es.js.map\n",null],"names":["getObjectType"],"mappings":"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","x_google_ignoreList":[0]} \ No newline at end of file diff --git a/dist/lib/javascripttostring.js.map b/dist/lib/javascripttostring.js.map deleted file mode 100644 index 1f998a5..0000000 --- a/dist/lib/javascripttostring.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"javascripttostring.js","sources":["../../node_modules/@lopatnov/get-internal-type/dist/get-internal-type.es.js","../../src/javascripttostring.ts"],"sourcesContent":["var types = {}, typesToString = types.toString, buildInList = [\r\n \"Boolean\",\r\n \"Number\",\r\n \"String\",\r\n \"Function\",\r\n \"Array\",\r\n \"Date\",\r\n \"RegExp\",\r\n \"Object\",\r\n \"Error\",\r\n \"Promise\",\r\n \"Generator\",\r\n \"GeneratorFunction\",\r\n \"ArrayBuffer\",\r\n \"DataView\"\r\n], typedArrays = [\r\n \"Int8Array\",\r\n \"Uint8Array\",\r\n \"Uint8ClampedArray\",\r\n \"Int16Array\",\r\n \"Uint16Array\",\r\n \"Int32Array\",\r\n \"Uint32Array\",\r\n \"Float32Array\",\r\n \"Float64Array\",\r\n \"BigInt64Array\",\r\n \"BigUint64Array\"\r\n], maps = [\"Map\", \"WeakMap\"], sets = [\"Set\", \"WeakSet\"];\r\nbuildInList.forEach(function (name) {\r\n types[\"[object \" + name + \"]\"] = name.toLowerCase();\r\n});\r\nmaps.forEach(function (name) {\r\n types[\"[object \" + name + \"]\"] = \"map\";\r\n});\r\nsets.forEach(function (name) {\r\n types[\"[object \" + name + \"]\"] = \"set\";\r\n});\r\ntypedArrays.forEach(function (name) {\r\n types[\"[object \" + name + \"]\"] = \"typedarray\";\r\n});\r\nfunction getInternalType(obj) {\r\n return obj == null\r\n ? obj + \"\"\r\n : typeof obj === \"object\" || typeof obj === \"function\"\r\n ? types[typesToString.call(obj)] || \"object\"\r\n : typeof obj;\r\n}\n\nexport default getInternalType;\n//# sourceMappingURL=get-internal-type.es.js.map\n",null],"names":["getObjectType"],"mappings":"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","x_google_ignoreList":[0]} \ No newline at end of file diff --git a/dist/types/javascripttostring.d.ts b/dist/types/javascripttostring.d.ts index 030dd49..b7fc9ac 100644 --- a/dist/types/javascripttostring.d.ts +++ b/dist/types/javascripttostring.d.ts @@ -1,9 +1,15 @@ export interface IJ2SOptions { + /** Include function's own enumerable properties. @defaultValue true */ includeFunctionProperties?: boolean; + /** Include function's prototype properties. @defaultValue true */ includeFunctionPrototype?: boolean; + /** Include ArrayBuffer and TypedArray contents. @defaultValue true */ includeBuffers?: boolean; + /** Max depth for nested objects. @defaultValue Number.POSITIVE_INFINITY */ nestedObjectsAmount?: number; + /** Max depth for nested arrays. @defaultValue Number.POSITIVE_INFINITY */ nestedArraysAmount?: number; + /** Max depth for nested functions. @defaultValue Number.POSITIVE_INFINITY */ nestedFunctionsAmount?: number; } /** diff --git a/docs/functions/default.html b/docs/functions/default.html index abc3f86..d9691ad 100644 --- a/docs/functions/default.html +++ b/docs/functions/default.html @@ -1,4 +1,4 @@ default | @lopatnov/javascripttostring
                                                            @lopatnov/javascripttostring
                                                              Preparing search index...

                                                              Function default

                                                              • Converts JavaScript value to string

                                                                Parameters

                                                                • value: any

                                                                  the value of any type

                                                                • Optionaloptions: IJ2SOptions

                                                                  [optional] The options of conversion

                                                                  -

                                                                Returns string

                                                              +

                                                              Returns string

                                                              diff --git a/docs/interfaces/ij2soptions.html b/docs/interfaces/ij2soptions.html index 46940ca..6ace8ba 100644 --- a/docs/interfaces/ij2soptions.html +++ b/docs/interfaces/ij2soptions.html @@ -1,4 +1,4 @@ -IJ2SOptions | @lopatnov/javascripttostring
                                                              @lopatnov/javascripttostring
                                                                Preparing search index...

                                                                Interface IJ2SOptions

                                                                interface IJ2SOptions {
                                                                    includeBuffers?: boolean;
                                                                    includeFunctionProperties?: boolean;
                                                                    includeFunctionPrototype?: boolean;
                                                                    nestedArraysAmount?: number;
                                                                    nestedFunctionsAmount?: number;
                                                                    nestedObjectsAmount?: number;
                                                                }
                                                                Index

                                                                Properties

                                                                includeBuffers? +IJ2SOptions | @lopatnov/javascripttostring
                                                                @lopatnov/javascripttostring
                                                                  Preparing search index...

                                                                  Interface IJ2SOptions

                                                                  interface IJ2SOptions {
                                                                      includeBuffers?: boolean;
                                                                      includeFunctionProperties?: boolean;
                                                                      includeFunctionPrototype?: boolean;
                                                                      nestedArraysAmount?: number;
                                                                      nestedFunctionsAmount?: number;
                                                                      nestedObjectsAmount?: number;
                                                                  }
                                                                  Index

                                                                  Properties

                                                                  true
                                                                   
                                                                  -
                                                                  includeFunctionProperties?: boolean

                                                                  Include function's own enumerable properties.

                                                                  +
                                                                  includeFunctionProperties?: boolean

                                                                  Include function's own enumerable properties.

                                                                  true
                                                                   
                                                                  -
                                                                  includeFunctionPrototype?: boolean

                                                                  Include function's prototype properties.

                                                                  +
                                                                  includeFunctionPrototype?: boolean

                                                                  Include function's prototype properties.

                                                                  true
                                                                   
                                                                  -
                                                                  nestedArraysAmount?: number

                                                                  Max depth for nested arrays.

                                                                  +
                                                                  nestedArraysAmount?: number

                                                                  Max depth for nested arrays.

                                                                  Number.POSITIVE_INFINITY
                                                                   
                                                                  -
                                                                  nestedFunctionsAmount?: number

                                                                  Max depth for nested functions.

                                                                  +
                                                                  nestedFunctionsAmount?: number

                                                                  Max depth for nested functions.

                                                                  Number.POSITIVE_INFINITY
                                                                   
                                                                  -
                                                                  nestedObjectsAmount?: number

                                                                  Max depth for nested objects.

                                                                  +
                                                                  nestedObjectsAmount?: number

                                                                  Max depth for nested objects.

                                                                  Number.POSITIVE_INFINITY
                                                                   
                                                                  -
                                                                  +
                                                                  diff --git a/jest.config.js b/jest.config.js index 4f59819..b19b941 100644 --- a/jest.config.js +++ b/jest.config.js @@ -1,7 +1,7 @@ // For a detailed explanation regarding each configuration property, visit: // https://jestjs.io/docs/en/configuration.html -module.exports = { +export default { // Automatically clear mock calls and instances between every test clearMocks: true, @@ -36,6 +36,11 @@ module.exports = { // The test environment that will be used for testing testEnvironment: "node", + // Match test files including .cjs + testMatch: [ + "**/?(*.)+(spec|test).+(ts|tsx|js|cjs)" + ], + // A map from regular expressions to paths to transformers transform: { "^.+\\.tsx?$": "ts-jest" diff --git a/package.json b/package.json index e3b87bd..b3c43a4 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,7 @@ { "name": "@lopatnov/javascripttostring", "version": "2.0.0", + "type": "module", "license": "Apache-2.0", "author": "lopatnov", "description": "A TypeScript library that converts any JavaScript runtime value into its string source code representation, including objects, arrays, functions, circular references, and cross-references", @@ -21,16 +22,16 @@ "TypeScript", "JavaScript" ], - "main": "dist/lib/javascripttostring.js", - "module": "dist/javascripttostring.es5.js", + "main": "dist/lib/javascripttostring.cjs", + "module": "dist/javascripttostring.es5.mjs", "browser": "dist/javascripttostring.umd.js", "typings": "dist/types/javascripttostring.d.ts", "exports": { ".": { "types": "./dist/types/javascripttostring.d.ts", - "import": "./dist/javascripttostring.es5.js", - "require": "./dist/lib/javascripttostring.js", - "default": "./dist/lib/javascripttostring.js" + "import": "./dist/javascripttostring.es5.mjs", + "require": "./dist/lib/javascripttostring.cjs", + "default": "./dist/lib/javascripttostring.cjs" } }, "files": [ @@ -51,8 +52,8 @@ }, "scripts": { "build": "tsc --emitDeclarationOnly && rollup -c rollup.config.ts --configPlugin @rollup/plugin-typescript && typedoc --out docs --entryPointStrategy expand src", - "configure-npm": "node ./set-registry.js -s https://registry.npmjs.org", - "configure-gpr": "node ./set-registry.js -s https://npm.pkg.github.com", + "configure-npm": "node ./set-registry.cjs -s https://registry.npmjs.org", + "configure-gpr": "node ./set-registry.cjs -s https://npm.pkg.github.com", "test": "jest", "lint": "biome lint src test", "lint:fix": "biome lint --write src test", diff --git a/set-registry.js b/set-registry.cjs similarity index 100% rename from set-registry.js rename to set-registry.cjs diff --git a/src/javascripttostring.ts b/src/javascripttostring.ts index 754edf9..6ec66e6 100644 --- a/src/javascripttostring.ts +++ b/src/javascripttostring.ts @@ -38,6 +38,16 @@ interface IJ2SHistory { currentPath: string[]; } +const identifierRegex = /^[a-zA-Z_$][a-zA-Z0-9_$]*$/; + +function propertyAccessor(name: string): string { + if (identifierRegex.test(name)) { + return `.${name}`; + } + const escaped = name.replace(/\\/g, "\\\\").replace(/'/gi, "\\'"); + return `['${escaped}']`; +} + function fillNativeFunctions(ext: any, obj: any, objName: string, fromPrototype = true) { const arrNames = Object.getOwnPropertyNames(fromPrototype ? obj.prototype : obj); const protoPath = fromPrototype ? ".prototype." : "."; @@ -183,7 +193,7 @@ function getLocalRefs(value: any) { function attachActions(localRefs: RefInstance[], result: string) { if (localRefs.length > 0) { counter = (counter + 1) % Number.MAX_SAFE_INTEGER; - const localName = `___j2s_${counter}`; + const localName = `___ref${counter}`; const actions = localRefs.reduce((x1: string, x2: RefInstance) => { const action = converToAction(localName, x2); refs.splice(refs.indexOf(x2), 1); @@ -209,7 +219,7 @@ function converToAction(localName: string, r: RefInstance) { path = localName; sourceObj = r.source; } else if (typeof destObj === "string") { - path += `['${destObj.replace(/'/gi, "\\'")}']`; + path += propertyAccessor(destObj); sourceObj = sourceObj[destObj]; } else if (destObj !== sourceObj) { return ""; @@ -261,7 +271,7 @@ function objectToString(value: any, options: IJ2SOptions, history: IJ2SHistory): history.currentPath.pop(); history.references.pop(); if (propertyValue !== "undefined") { - if (!/^[a-zA-Z_$][a-zA-Z0-9_$]*$/.test(propertyName)) { + if (!identifierRegex.test(propertyName)) { const escaped = propertyName.replace(/\\/g, "\\\\").replace(/"/g, '\\"'); propertyName = `"${escaped}"`; } @@ -290,12 +300,7 @@ function functionPropertiesToString( history.currentPath.pop(); history.references.pop(); if (propertyValue !== "undefined") { - if (/^[a-zA-Z_$][a-zA-Z0-9_$]*$/.test(propertyName)) { - result += `${functionName}.${propertyName} = ${propertyValue};\n`; - } else { - const escaped = propertyName.replace(/\\/g, "\\\\").replace(/"/g, '\\"'); - result += `${functionName}["${escaped}"] = ${propertyValue};\n`; - } + result += `${functionName}${propertyAccessor(propertyName)} = ${propertyValue};\n`; } } } @@ -477,11 +482,11 @@ function attachCrossRefActions(localCrossRefs: CrossRefInstance[], result: strin return result; } counter = (counter + 1) % Number.MAX_SAFE_INTEGER; - const localName = `___j2s_${counter}`; + const localName = `___ref${counter}`; const actions = localCrossRefs .map((cr) => { - const destAccessor = cr.destPath.map((p) => `['${p.replace(/'/gi, "\\'")}']`).join(""); - const srcAccessor = cr.sourcePath.map((p) => `['${p.replace(/'/gi, "\\'")}']`).join(""); + const destAccessor = cr.destPath.map(propertyAccessor).join(""); + const srcAccessor = cr.sourcePath.map(propertyAccessor).join(""); return `${localName}${destAccessor} = ${localName}${srcAccessor}; `; }) .join(""); diff --git a/test/generator.test.js b/test/generator.test.cjs similarity index 100% rename from test/generator.test.js rename to test/generator.test.cjs diff --git a/test/javascripttostring.test.js b/test/javascripttostring.test.cjs similarity index 100% rename from test/javascripttostring.test.js rename to test/javascripttostring.test.cjs From c12e0d189208cbd6d76ff6119cdb1d4848ea0687 Mon Sep 17 00:00:00 2001 From: lopatnov Date: Sat, 14 Feb 2026 20:09:53 +0200 Subject: [PATCH 15/18] v2.0.0: ESM/CJS dual-package, new serialization features, throwOnNonSerializable option - Add "type": "module" with .mjs/.cjs dual-package support - Add throwOnNonSerializable option for WeakRef, WeakMap, WeakSet, FinalizationRegistry, Promise, Generator - Improve serialization: -0, sparse arrays, Symbol.for(), RegExp lastIndex, error subclasses, Object.create(null) - Use dot notation in cross-ref output (___ref1.prop instead of ___ref1['prop']) - Update @lopatnov/get-internal-type to 2.0.0 - Update CI to Node.js 18/20/22/24, tsconfig lib to ES2022 - Update README and CHANGELOG for v2.0.0 - 191 tests passing --- .github/workflows/nodejs.yml | 2 +- .github/workflows/npmpublish.yml | 6 +- CHANGELOG.md | 30 ++++- README.md | 54 ++++---- dist/javascripttostring.es5.mjs.map | 1 - ...ing.es5.mjs => javascripttostring.esm.mjs} | 59 +++++++-- dist/javascripttostring.esm.mjs.map | 1 + dist/javascripttostring.umd.js | 57 +++++++-- dist/javascripttostring.umd.js.map | 2 +- dist/lib/javascripttostring.cjs | 57 +++++++-- dist/lib/javascripttostring.cjs.map | 2 +- dist/types/javascripttostring.d.ts | 2 + docs/assets/search.js | 2 +- docs/functions/default.html | 2 +- docs/index.html | 45 +++++-- docs/interfaces/ij2soptions.html | 19 ++- docs/media/CHANGELOG.md | 30 ++++- docs/media/index-1.html | 45 +++++-- package-lock.json | 13 +- package.json | 6 +- src/javascripttostring.ts | 22 ++++ test/javascripttostring.test.ts | 120 ++++++++++++++++++ tsconfig.json | 2 +- 23 files changed, 480 insertions(+), 99 deletions(-) delete mode 100644 dist/javascripttostring.es5.mjs.map rename dist/{javascripttostring.es5.mjs => javascripttostring.esm.mjs} (90%) create mode 100644 dist/javascripttostring.esm.mjs.map diff --git a/.github/workflows/nodejs.yml b/.github/workflows/nodejs.yml index a79a3f8..c5f2397 100644 --- a/.github/workflows/nodejs.yml +++ b/.github/workflows/nodejs.yml @@ -8,7 +8,7 @@ jobs: strategy: matrix: - node-version: [18.x, 20.x, 22.x] + node-version: [18.x, 20.x, 22.x, 24.x] steps: - uses: actions/checkout@v4 diff --git a/.github/workflows/npmpublish.yml b/.github/workflows/npmpublish.yml index e80d8b0..2f23dfc 100644 --- a/.github/workflows/npmpublish.yml +++ b/.github/workflows/npmpublish.yml @@ -11,7 +11,7 @@ jobs: - uses: actions/checkout@v4 - uses: actions/setup-node@v4 with: - node-version: 20 + node-version: 22 cache: 'npm' - run: npm ci - run: npm run check @@ -26,7 +26,7 @@ jobs: - run: npm run configure-npm - uses: actions/setup-node@v4 with: - node-version: 20 + node-version: 22 registry-url: 'https://registry.npmjs.org' cache: 'npm' - run: npm ci @@ -42,7 +42,7 @@ jobs: - uses: actions/checkout@v4 - uses: actions/setup-node@v4 with: - node-version: 20 + node-version: 22 registry-url: 'https://npm.pkg.github.com' scope: '@lopatnov' cache: 'npm' diff --git a/CHANGELOG.md b/CHANGELOG.md index 96921f7..79b78fb 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -2,27 +2,51 @@ All notable changes to this project will be documented in this file. -## [2.0.0] - 2026-02-13 +## [2.0.0] - 2026-02-14 ### Added - Cross-reference support: shared objects between different branches are now preserved as references +- `throwOnNonSerializable` option: throws an error for non-serializable values instead of returning `"undefined"` +- Explicit handling for non-serializable types: `Promise`, `Generator`, `WeakRef`, `WeakMap`, `WeakSet`, `FinalizationRegistry` +- Negative zero (`-0`) preserved correctly +- Sparse arrays preserved (holes are not filled with `undefined`) +- `Symbol.for()` registry symbols distinguished from regular symbols +- `Symbol("")` (empty description) distinguished from `Symbol()` (no description) +- RegExp `lastIndex` preserved when non-zero +- Error subclasses preserved: `TypeError`, `RangeError`, `ReferenceError`, `SyntaxError`, `URIError`, `EvalError` +- `Object.create(null)` objects supported +- Async functions and async generator functions supported +- `SharedArrayBuffer` supported (grouped with `ArrayBuffer`) +- ESM (`.mjs`) and CJS (`.cjs`) dual-package support via `exports` field +- UMD build for browsers +- `"type": "module"` in package.json - Biome for linting and formatting (replaced JSHint) - Jest coverage reporting enabled -- 23 new tests for circular and cross-reference scenarios (76 total) +- 191 tests total (up from 53) ### Fixed - **Issue #1:** Circular references to parent elements at the top level are now resolved correctly - Circular chain references (A -> B -> C -> A) now work at any depth +- `counter = counter++` post-increment bug in cross-reference actions (value never incremented) +- `Object.prototype.hasOwnProperty.call()` used instead of `value.hasOwnProperty()` to support null-prototype objects +- Non-identifier property names in function properties now use bracket notation (`fn["my-prop"]` instead of invalid `fn.my-prop`) +- Non-identifier property names in object literals are now quoted +- Invalid `Date` objects now serialize as `new Date(NaN)` instead of `new Date("null")` +- Date strings are now quoted in output ### Changed +- Cross-reference output uses dot notation when possible (`___ref1.prop` instead of `___ref1['prop']`) +- Internal IIFE variable renamed from `___j2s_` to `___ref` for readability +- Updated `@lopatnov/get-internal-type` to 2.0.0 - Updated all dependencies to latest versions - Migrated from `rollup-plugin-*` to `@rollup/plugin-*` official packages -- Migrated CI from Node.js 12.x to Node.js 18/20/22 +- Migrated CI from Node.js 12.x to Node.js 18/20/22/24 - Updated `@lopatnov/rollup-plugin-uglify` from 2.x to 3.x - Upgraded TypeScript to 5.8, Jest to 30, Rollup to 4, Biome to 2.x +- tsconfig lib updated to ES2022 - Minimum Node.js version is now 18.0.0 ### Removed diff --git a/README.md b/README.md index 686a325..1cb215d 100644 --- a/README.md +++ b/README.md @@ -63,6 +63,7 @@ Converts a JavaScript value to its string source code representation. | `nestedObjectsAmount` | `number` | `Infinity` | Max depth for nested objects | | `nestedArraysAmount` | `number` | `Infinity` | Max depth for nested arrays | | `nestedFunctionsAmount` | `number` | `Infinity` | Max depth for nested functions | +| `throwOnNonSerializable` | `boolean` | `false` | Throw an error for non-serializable values (Promise, Generator, WeakRef, WeakMap, WeakSet, FinalizationRegistry) | ## Examples @@ -121,7 +122,7 @@ var x = [1, 2, 3]; x[0] = x; javaScriptToString(x); -// '(function(){ var ___j2s_0 = [null, 2, 3]; ___j2s_0['0'] = ___j2s_0; return ___j2s_0; }())' +// '(function(){ var ___ref1 = [null, 2, 3]; ___ref1[0] = ___ref1; return ___ref1; }())' ``` ### Cross-References @@ -133,13 +134,11 @@ var shared = { value: 42 }; var obj = { a: shared, b: shared }; javaScriptToString(obj); -// Generates code where obj.a === obj.b (same reference), like: -// (function(){ var ___j2s_0 = { -// a: { -// value: 42 -// }, -// b: null -// }; ___j2s_0['b'] = ___j2s_0['a']; return ___j2s_0; }()) +// Generates code where obj.a === obj.b (same reference): +// (function(){ var ___ref1 = { +// a: { value: 42 }, +// b: null +// }; ___ref1.b = ___ref1.a; return ___ref1; }()) ``` ### Using with Web Workers @@ -191,22 +190,29 @@ console.log(restored.name); // "test" ## Supported Types -| Type | Example | -|------|---------| -| Primitives | `string`, `number`, `boolean`, `undefined`, `null` | -| BigInt | `BigInt(123)` | -| Symbol | `Symbol("description")` | -| RegExp | `/pattern/gi` | -| Date | `new Date()` | -| Error | `new Error("message")` | -| Array | `[1, 2, 3]` | -| Object | `{ key: "value" }` | -| Function | `function() {}`, `() => {}` | -| Map | `new Map([["key", "value"]])` | -| Set | `new Set([1, 2, 3])` | -| TypedArray | `Int8Array`, `Float64Array`, etc. | -| ArrayBuffer | `new ArrayBuffer(8)` | -| DataView | `new DataView(buffer)` | +| Type | Example | Notes | +|------|---------|-------| +| Primitives | `string`, `number`, `boolean`, `undefined`, `null` | Including `-0` and `NaN` | +| BigInt | `BigInt(123)` | | +| Symbol | `Symbol("desc")`, `Symbol.for("key")` | Registry symbols preserved | +| RegExp | `/pattern/gi` | `lastIndex` preserved when non-zero | +| Date | `new Date("...")` | Invalid dates → `new Date(NaN)` | +| Error | `new Error()`, `new TypeError()` | TypeError, RangeError, ReferenceError, SyntaxError, URIError, EvalError | +| Array | `[1, 2, 3]` | Sparse arrays preserved | +| Object | `{ key: "value" }` | Including `Object.create(null)` | +| Function | `function() {}`, `() => {}`, `async function() {}` | Properties and prototype included | +| Generator Function | `function*() {}`, `async function*() {}` | | +| Map | `new Map([["key", "value"]])` | | +| Set | `new Set([1, 2, 3])` | | +| TypedArray | `Int8Array`, `Float64Array`, etc. | | +| ArrayBuffer | `new ArrayBuffer(8)`, `SharedArrayBuffer` | | +| DataView | `new DataView(buffer)` | | + +### Non-serializable Types + +The following types cannot be serialized and return `"undefined"` by default. Use `throwOnNonSerializable: true` to throw an error instead: + +`Promise`, `Generator`, `WeakRef`, `WeakMap`, `WeakSet`, `FinalizationRegistry` ## Demo diff --git a/dist/javascripttostring.es5.mjs.map b/dist/javascripttostring.es5.mjs.map deleted file mode 100644 index 1dcfea1..0000000 --- a/dist/javascripttostring.es5.mjs.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"javascripttostring.es5.mjs","sources":["../node_modules/@lopatnov/get-internal-type/dist/get-internal-type.es.js","../src/javascripttostring.ts"],"sourcesContent":["var types = {}, typesToString = types.toString, buildInList = [\r\n \"Boolean\",\r\n \"Number\",\r\n \"String\",\r\n \"Function\",\r\n \"Array\",\r\n \"Date\",\r\n \"RegExp\",\r\n \"Object\",\r\n \"Error\",\r\n \"Promise\",\r\n \"Generator\",\r\n \"GeneratorFunction\",\r\n \"ArrayBuffer\",\r\n \"DataView\"\r\n], typedArrays = [\r\n \"Int8Array\",\r\n \"Uint8Array\",\r\n \"Uint8ClampedArray\",\r\n \"Int16Array\",\r\n \"Uint16Array\",\r\n \"Int32Array\",\r\n \"Uint32Array\",\r\n \"Float32Array\",\r\n \"Float64Array\",\r\n \"BigInt64Array\",\r\n \"BigUint64Array\"\r\n], maps = [\"Map\", \"WeakMap\"], sets = [\"Set\", \"WeakSet\"];\r\nbuildInList.forEach(function (name) {\r\n types[\"[object \" + name + \"]\"] = name.toLowerCase();\r\n});\r\nmaps.forEach(function (name) {\r\n types[\"[object \" + name + \"]\"] = \"map\";\r\n});\r\nsets.forEach(function (name) {\r\n types[\"[object \" + name + \"]\"] = \"set\";\r\n});\r\ntypedArrays.forEach(function (name) {\r\n types[\"[object \" + name + \"]\"] = \"typedarray\";\r\n});\r\nfunction getInternalType(obj) {\r\n return obj == null\r\n ? obj + \"\"\r\n : typeof obj === \"object\" || typeof obj === \"function\"\r\n ? types[typesToString.call(obj)] || \"object\"\r\n : typeof obj;\r\n}\n\nexport default getInternalType;\n//# sourceMappingURL=get-internal-type.es.js.map\n",null],"names":["getObjectType"],"mappings":"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","x_google_ignoreList":[0]} \ No newline at end of file diff --git a/dist/javascripttostring.es5.mjs b/dist/javascripttostring.esm.mjs similarity index 90% rename from dist/javascripttostring.es5.mjs rename to dist/javascripttostring.esm.mjs index 4b09097..71ea3b0 100644 --- a/dist/javascripttostring.es5.mjs +++ b/dist/javascripttostring.esm.mjs @@ -1,19 +1,26 @@ -var types = {}, typesToString = types.toString, buildInList = [ +const types = {}; +const typesToString = Object.prototype.toString; +const builtInList = [ "Boolean", "Number", "String", - "Function", "Array", "Date", "RegExp", "Object", "Error", "Promise", - "Generator", - "GeneratorFunction", - "ArrayBuffer", - "DataView" -], typedArrays = [ + "DataView", + "WeakRef", + "FinalizationRegistry" +]; +const functions = ["Function", "AsyncFunction"]; +const generators = ["Generator", "AsyncGenerator"]; +const generatorFunctions = ["GeneratorFunction", "AsyncGeneratorFunction"]; +const arrayBuffers = ["ArrayBuffer", "SharedArrayBuffer"]; +const maps = ["Map", "WeakMap"]; +const sets = ["Set", "WeakSet"]; +const typedArrays = [ "Int8Array", "Uint8Array", "Uint8ClampedArray", @@ -25,10 +32,22 @@ var types = {}, typesToString = types.toString, buildInList = [ "Float64Array", "BigInt64Array", "BigUint64Array" -], maps = ["Map", "WeakMap"], sets = ["Set", "WeakSet"]; -buildInList.forEach(function (name) { +]; +builtInList.forEach(function (name) { types["[object " + name + "]"] = name.toLowerCase(); }); +functions.forEach(function (name) { + types["[object " + name + "]"] = "function"; +}); +generators.forEach(function (name) { + types["[object " + name + "]"] = "generator"; +}); +generatorFunctions.forEach(function (name) { + types["[object " + name + "]"] = "generatorfunction"; +}); +arrayBuffers.forEach(function (name) { + types["[object " + name + "]"] = "arraybuffer"; +}); maps.forEach(function (name) { types["[object " + name + "]"] = "map"; }); @@ -359,8 +378,20 @@ function stringify(value, options, history) { case "typedarray": return typedArrayToString(value, options, history); case "set": + if (value instanceof WeakSet) { + if (options.throwOnNonSerializable) { + throw new Error("Non-serializable value: WeakSet"); + } + return "undefined"; + } return setToString(value, options, history); case "map": + if (value instanceof WeakMap) { + if (options.throwOnNonSerializable) { + throw new Error("Non-serializable value: WeakMap"); + } + return "undefined"; + } return mapToString(value, options, history); case "object": return objectToString(value, options, history); @@ -373,6 +404,13 @@ function stringify(value, options, history) { return dataViewToString(value, options, history); case "promise": case "generator": + case "weakref": + case "weakmap": + case "weakset": + case "finalizationregistry": + if (options.throwOnNonSerializable) { + throw new Error(`Non-serializable value: ${getInternalType(value)}`); + } return "undefined"; default: return JSON.stringify(value); @@ -476,6 +514,7 @@ function javaScriptToString(value, options) { nestedObjectsAmount: options.nestedObjectsAmount === undefined ? Number.POSITIVE_INFINITY : options.nestedObjectsAmount, nestedArraysAmount: options.nestedArraysAmount === undefined ? Number.POSITIVE_INFINITY : options.nestedArraysAmount, nestedFunctionsAmount: options.nestedFunctionsAmount === undefined ? Number.POSITIVE_INFINITY : options.nestedFunctionsAmount, + throwOnNonSerializable: options.throwOnNonSerializable === undefined ? false : options.throwOnNonSerializable, }; // Clear global state before conversion refs = []; @@ -498,4 +537,4 @@ function javaScriptToString(value, options) { } export { javaScriptToString as default }; -//# sourceMappingURL=javascripttostring.es5.mjs.map +//# sourceMappingURL=javascripttostring.esm.mjs.map diff --git a/dist/javascripttostring.esm.mjs.map b/dist/javascripttostring.esm.mjs.map new file mode 100644 index 0000000..5709d99 --- /dev/null +++ b/dist/javascripttostring.esm.mjs.map @@ -0,0 +1 @@ +{"version":3,"file":"javascripttostring.esm.mjs","sources":["../node_modules/@lopatnov/get-internal-type/dist/get-internal-type.es.js","../src/javascripttostring.ts"],"sourcesContent":["const types = {};\nconst typesToString = Object.prototype.toString;\nconst builtInList = [\n \"Boolean\",\n \"Number\",\n \"String\",\n \"Array\",\n \"Date\",\n \"RegExp\",\n \"Object\",\n \"Error\",\n \"Promise\",\n \"DataView\",\n \"WeakRef\",\n \"FinalizationRegistry\"\n];\nconst functions = [\"Function\", \"AsyncFunction\"];\nconst generators = [\"Generator\", \"AsyncGenerator\"];\nconst generatorFunctions = [\"GeneratorFunction\", \"AsyncGeneratorFunction\"];\nconst arrayBuffers = [\"ArrayBuffer\", \"SharedArrayBuffer\"];\nconst maps = [\"Map\", \"WeakMap\"];\nconst sets = [\"Set\", \"WeakSet\"];\nconst typedArrays = [\n \"Int8Array\",\n \"Uint8Array\",\n \"Uint8ClampedArray\",\n \"Int16Array\",\n \"Uint16Array\",\n \"Int32Array\",\n \"Uint32Array\",\n \"Float32Array\",\n \"Float64Array\",\n \"BigInt64Array\",\n \"BigUint64Array\"\n];\nbuiltInList.forEach(function (name) {\n types[\"[object \" + name + \"]\"] = name.toLowerCase();\n});\nfunctions.forEach(function (name) {\n types[\"[object \" + name + \"]\"] = \"function\";\n});\ngenerators.forEach(function (name) {\n types[\"[object \" + name + \"]\"] = \"generator\";\n});\ngeneratorFunctions.forEach(function (name) {\n types[\"[object \" + name + \"]\"] = \"generatorfunction\";\n});\narrayBuffers.forEach(function (name) {\n types[\"[object \" + name + \"]\"] = \"arraybuffer\";\n});\nmaps.forEach(function (name) {\n types[\"[object \" + name + \"]\"] = \"map\";\n});\nsets.forEach(function (name) {\n types[\"[object \" + name + \"]\"] = \"set\";\n});\ntypedArrays.forEach(function (name) {\n types[\"[object \" + name + \"]\"] = \"typedarray\";\n});\nfunction getInternalType(obj) {\n return obj == null\n ? obj + \"\"\n : typeof obj === \"object\" || typeof obj === \"function\"\n ? types[typesToString.call(obj)] || \"object\"\n : typeof obj;\n}\n\nexport { getInternalType as default, getInternalType };\n//# sourceMappingURL=get-internal-type.es.js.map\n",null],"names":["getObjectType"],"mappings":"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","x_google_ignoreList":[0]} \ No newline at end of file diff --git a/dist/javascripttostring.umd.js b/dist/javascripttostring.umd.js index 6df1602..9b8889a 100644 --- a/dist/javascripttostring.umd.js +++ b/dist/javascripttostring.umd.js @@ -4,22 +4,29 @@ (global = typeof globalThis !== 'undefined' ? globalThis : global || self, global.javaScriptToString = factory()); })(this, (function () { 'use strict'; - var types = {}, typesToString = types.toString, buildInList = [ + const types = {}; + const typesToString = Object.prototype.toString; + const builtInList = [ "Boolean", "Number", "String", - "Function", "Array", "Date", "RegExp", "Object", "Error", "Promise", - "Generator", - "GeneratorFunction", - "ArrayBuffer", - "DataView" - ], typedArrays = [ + "DataView", + "WeakRef", + "FinalizationRegistry" + ]; + const functions = ["Function", "AsyncFunction"]; + const generators = ["Generator", "AsyncGenerator"]; + const generatorFunctions = ["GeneratorFunction", "AsyncGeneratorFunction"]; + const arrayBuffers = ["ArrayBuffer", "SharedArrayBuffer"]; + const maps = ["Map", "WeakMap"]; + const sets = ["Set", "WeakSet"]; + const typedArrays = [ "Int8Array", "Uint8Array", "Uint8ClampedArray", @@ -31,10 +38,22 @@ "Float64Array", "BigInt64Array", "BigUint64Array" - ], maps = ["Map", "WeakMap"], sets = ["Set", "WeakSet"]; - buildInList.forEach(function (name) { + ]; + builtInList.forEach(function (name) { types["[object " + name + "]"] = name.toLowerCase(); }); + functions.forEach(function (name) { + types["[object " + name + "]"] = "function"; + }); + generators.forEach(function (name) { + types["[object " + name + "]"] = "generator"; + }); + generatorFunctions.forEach(function (name) { + types["[object " + name + "]"] = "generatorfunction"; + }); + arrayBuffers.forEach(function (name) { + types["[object " + name + "]"] = "arraybuffer"; + }); maps.forEach(function (name) { types["[object " + name + "]"] = "map"; }); @@ -365,8 +384,20 @@ case "typedarray": return typedArrayToString(value, options, history); case "set": + if (value instanceof WeakSet) { + if (options.throwOnNonSerializable) { + throw new Error("Non-serializable value: WeakSet"); + } + return "undefined"; + } return setToString(value, options, history); case "map": + if (value instanceof WeakMap) { + if (options.throwOnNonSerializable) { + throw new Error("Non-serializable value: WeakMap"); + } + return "undefined"; + } return mapToString(value, options, history); case "object": return objectToString(value, options, history); @@ -379,6 +410,13 @@ return dataViewToString(value, options, history); case "promise": case "generator": + case "weakref": + case "weakmap": + case "weakset": + case "finalizationregistry": + if (options.throwOnNonSerializable) { + throw new Error(`Non-serializable value: ${getInternalType(value)}`); + } return "undefined"; default: return JSON.stringify(value); @@ -482,6 +520,7 @@ nestedObjectsAmount: options.nestedObjectsAmount === undefined ? Number.POSITIVE_INFINITY : options.nestedObjectsAmount, nestedArraysAmount: options.nestedArraysAmount === undefined ? Number.POSITIVE_INFINITY : options.nestedArraysAmount, nestedFunctionsAmount: options.nestedFunctionsAmount === undefined ? Number.POSITIVE_INFINITY : options.nestedFunctionsAmount, + throwOnNonSerializable: options.throwOnNonSerializable === undefined ? false : options.throwOnNonSerializable, }; // Clear global state before conversion refs = []; diff --git a/dist/javascripttostring.umd.js.map b/dist/javascripttostring.umd.js.map index 3f0d3b6..2899bf0 100644 --- a/dist/javascripttostring.umd.js.map +++ b/dist/javascripttostring.umd.js.map @@ -1 +1 @@ -{"version":3,"file":"javascripttostring.umd.js","sources":["../node_modules/@lopatnov/get-internal-type/dist/get-internal-type.es.js","../src/javascripttostring.ts"],"sourcesContent":["var types = {}, typesToString = types.toString, buildInList = [\r\n \"Boolean\",\r\n \"Number\",\r\n \"String\",\r\n \"Function\",\r\n \"Array\",\r\n \"Date\",\r\n \"RegExp\",\r\n \"Object\",\r\n \"Error\",\r\n \"Promise\",\r\n \"Generator\",\r\n \"GeneratorFunction\",\r\n \"ArrayBuffer\",\r\n \"DataView\"\r\n], typedArrays = [\r\n \"Int8Array\",\r\n \"Uint8Array\",\r\n \"Uint8ClampedArray\",\r\n \"Int16Array\",\r\n \"Uint16Array\",\r\n \"Int32Array\",\r\n \"Uint32Array\",\r\n \"Float32Array\",\r\n \"Float64Array\",\r\n \"BigInt64Array\",\r\n \"BigUint64Array\"\r\n], maps = [\"Map\", \"WeakMap\"], sets = [\"Set\", \"WeakSet\"];\r\nbuildInList.forEach(function (name) {\r\n types[\"[object \" + name + \"]\"] = name.toLowerCase();\r\n});\r\nmaps.forEach(function (name) {\r\n types[\"[object \" + name + \"]\"] = \"map\";\r\n});\r\nsets.forEach(function (name) {\r\n types[\"[object \" + name + \"]\"] = \"set\";\r\n});\r\ntypedArrays.forEach(function (name) {\r\n types[\"[object \" + name + \"]\"] = \"typedarray\";\r\n});\r\nfunction getInternalType(obj) {\r\n return obj == null\r\n ? obj + \"\"\r\n : typeof obj === \"object\" || typeof obj === \"function\"\r\n ? types[typesToString.call(obj)] || \"object\"\r\n : typeof obj;\r\n}\n\nexport default getInternalType;\n//# sourceMappingURL=get-internal-type.es.js.map\n",null],"names":["getObjectType"],"mappings":"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","x_google_ignoreList":[0]} \ No newline at end of file +{"version":3,"file":"javascripttostring.umd.js","sources":["../node_modules/@lopatnov/get-internal-type/dist/get-internal-type.es.js","../src/javascripttostring.ts"],"sourcesContent":["const types = {};\nconst typesToString = Object.prototype.toString;\nconst builtInList = [\n \"Boolean\",\n \"Number\",\n \"String\",\n \"Array\",\n \"Date\",\n \"RegExp\",\n \"Object\",\n \"Error\",\n \"Promise\",\n \"DataView\",\n \"WeakRef\",\n \"FinalizationRegistry\"\n];\nconst functions = [\"Function\", \"AsyncFunction\"];\nconst generators = [\"Generator\", \"AsyncGenerator\"];\nconst generatorFunctions = [\"GeneratorFunction\", \"AsyncGeneratorFunction\"];\nconst arrayBuffers = [\"ArrayBuffer\", \"SharedArrayBuffer\"];\nconst maps = [\"Map\", \"WeakMap\"];\nconst sets = [\"Set\", \"WeakSet\"];\nconst typedArrays = [\n \"Int8Array\",\n \"Uint8Array\",\n \"Uint8ClampedArray\",\n \"Int16Array\",\n \"Uint16Array\",\n \"Int32Array\",\n \"Uint32Array\",\n \"Float32Array\",\n \"Float64Array\",\n \"BigInt64Array\",\n \"BigUint64Array\"\n];\nbuiltInList.forEach(function (name) {\n types[\"[object \" + name + \"]\"] = name.toLowerCase();\n});\nfunctions.forEach(function (name) {\n types[\"[object \" + name + \"]\"] = \"function\";\n});\ngenerators.forEach(function (name) {\n types[\"[object \" + name + \"]\"] = \"generator\";\n});\ngeneratorFunctions.forEach(function (name) {\n types[\"[object \" + name + \"]\"] = \"generatorfunction\";\n});\narrayBuffers.forEach(function (name) {\n types[\"[object \" + name + \"]\"] = \"arraybuffer\";\n});\nmaps.forEach(function (name) {\n types[\"[object \" + name + \"]\"] = \"map\";\n});\nsets.forEach(function (name) {\n types[\"[object \" + name + \"]\"] = \"set\";\n});\ntypedArrays.forEach(function (name) {\n types[\"[object \" + name + \"]\"] = \"typedarray\";\n});\nfunction getInternalType(obj) {\n return obj == null\n ? obj + \"\"\n : typeof obj === \"object\" || typeof obj === \"function\"\n ? types[typesToString.call(obj)] || \"object\"\n : typeof obj;\n}\n\nexport { getInternalType as default, getInternalType };\n//# sourceMappingURL=get-internal-type.es.js.map\n",null],"names":["getObjectType"],"mappings":"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","x_google_ignoreList":[0]} \ No newline at end of file diff --git a/dist/lib/javascripttostring.cjs b/dist/lib/javascripttostring.cjs index be66774..42a9e43 100644 --- a/dist/lib/javascripttostring.cjs +++ b/dist/lib/javascripttostring.cjs @@ -1,21 +1,28 @@ 'use strict'; -var types = {}, typesToString = types.toString, buildInList = [ +const types = {}; +const typesToString = Object.prototype.toString; +const builtInList = [ "Boolean", "Number", "String", - "Function", "Array", "Date", "RegExp", "Object", "Error", "Promise", - "Generator", - "GeneratorFunction", - "ArrayBuffer", - "DataView" -], typedArrays = [ + "DataView", + "WeakRef", + "FinalizationRegistry" +]; +const functions = ["Function", "AsyncFunction"]; +const generators = ["Generator", "AsyncGenerator"]; +const generatorFunctions = ["GeneratorFunction", "AsyncGeneratorFunction"]; +const arrayBuffers = ["ArrayBuffer", "SharedArrayBuffer"]; +const maps = ["Map", "WeakMap"]; +const sets = ["Set", "WeakSet"]; +const typedArrays = [ "Int8Array", "Uint8Array", "Uint8ClampedArray", @@ -27,10 +34,22 @@ var types = {}, typesToString = types.toString, buildInList = [ "Float64Array", "BigInt64Array", "BigUint64Array" -], maps = ["Map", "WeakMap"], sets = ["Set", "WeakSet"]; -buildInList.forEach(function (name) { +]; +builtInList.forEach(function (name) { types["[object " + name + "]"] = name.toLowerCase(); }); +functions.forEach(function (name) { + types["[object " + name + "]"] = "function"; +}); +generators.forEach(function (name) { + types["[object " + name + "]"] = "generator"; +}); +generatorFunctions.forEach(function (name) { + types["[object " + name + "]"] = "generatorfunction"; +}); +arrayBuffers.forEach(function (name) { + types["[object " + name + "]"] = "arraybuffer"; +}); maps.forEach(function (name) { types["[object " + name + "]"] = "map"; }); @@ -361,8 +380,20 @@ function stringify(value, options, history) { case "typedarray": return typedArrayToString(value, options, history); case "set": + if (value instanceof WeakSet) { + if (options.throwOnNonSerializable) { + throw new Error("Non-serializable value: WeakSet"); + } + return "undefined"; + } return setToString(value, options, history); case "map": + if (value instanceof WeakMap) { + if (options.throwOnNonSerializable) { + throw new Error("Non-serializable value: WeakMap"); + } + return "undefined"; + } return mapToString(value, options, history); case "object": return objectToString(value, options, history); @@ -375,6 +406,13 @@ function stringify(value, options, history) { return dataViewToString(value, options, history); case "promise": case "generator": + case "weakref": + case "weakmap": + case "weakset": + case "finalizationregistry": + if (options.throwOnNonSerializable) { + throw new Error(`Non-serializable value: ${getInternalType(value)}`); + } return "undefined"; default: return JSON.stringify(value); @@ -478,6 +516,7 @@ function javaScriptToString(value, options) { nestedObjectsAmount: options.nestedObjectsAmount === undefined ? Number.POSITIVE_INFINITY : options.nestedObjectsAmount, nestedArraysAmount: options.nestedArraysAmount === undefined ? Number.POSITIVE_INFINITY : options.nestedArraysAmount, nestedFunctionsAmount: options.nestedFunctionsAmount === undefined ? Number.POSITIVE_INFINITY : options.nestedFunctionsAmount, + throwOnNonSerializable: options.throwOnNonSerializable === undefined ? false : options.throwOnNonSerializable, }; // Clear global state before conversion refs = []; diff --git a/dist/lib/javascripttostring.cjs.map b/dist/lib/javascripttostring.cjs.map index fe0fead..de1641a 100644 --- a/dist/lib/javascripttostring.cjs.map +++ b/dist/lib/javascripttostring.cjs.map @@ -1 +1 @@ -{"version":3,"file":"javascripttostring.cjs","sources":["../../node_modules/@lopatnov/get-internal-type/dist/get-internal-type.es.js","../../src/javascripttostring.ts"],"sourcesContent":["var types = {}, typesToString = types.toString, buildInList = [\r\n \"Boolean\",\r\n \"Number\",\r\n \"String\",\r\n \"Function\",\r\n \"Array\",\r\n \"Date\",\r\n \"RegExp\",\r\n \"Object\",\r\n \"Error\",\r\n \"Promise\",\r\n \"Generator\",\r\n \"GeneratorFunction\",\r\n \"ArrayBuffer\",\r\n \"DataView\"\r\n], typedArrays = [\r\n \"Int8Array\",\r\n \"Uint8Array\",\r\n \"Uint8ClampedArray\",\r\n \"Int16Array\",\r\n \"Uint16Array\",\r\n \"Int32Array\",\r\n \"Uint32Array\",\r\n \"Float32Array\",\r\n \"Float64Array\",\r\n \"BigInt64Array\",\r\n \"BigUint64Array\"\r\n], maps = [\"Map\", \"WeakMap\"], sets = [\"Set\", \"WeakSet\"];\r\nbuildInList.forEach(function (name) {\r\n types[\"[object \" + name + \"]\"] = name.toLowerCase();\r\n});\r\nmaps.forEach(function (name) {\r\n types[\"[object \" + name + \"]\"] = \"map\";\r\n});\r\nsets.forEach(function (name) {\r\n types[\"[object \" + name + \"]\"] = \"set\";\r\n});\r\ntypedArrays.forEach(function (name) {\r\n types[\"[object \" + name + \"]\"] = \"typedarray\";\r\n});\r\nfunction getInternalType(obj) {\r\n return obj == null\r\n ? obj + \"\"\r\n : typeof obj === \"object\" || typeof obj === \"function\"\r\n ? types[typesToString.call(obj)] || \"object\"\r\n : typeof obj;\r\n}\n\nexport default getInternalType;\n//# sourceMappingURL=get-internal-type.es.js.map\n",null],"names":["getObjectType"],"mappings":"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","x_google_ignoreList":[0]} \ No newline at end of file +{"version":3,"file":"javascripttostring.cjs","sources":["../../node_modules/@lopatnov/get-internal-type/dist/get-internal-type.es.js","../../src/javascripttostring.ts"],"sourcesContent":["const types = {};\nconst typesToString = Object.prototype.toString;\nconst builtInList = [\n \"Boolean\",\n \"Number\",\n \"String\",\n \"Array\",\n \"Date\",\n \"RegExp\",\n \"Object\",\n \"Error\",\n \"Promise\",\n \"DataView\",\n \"WeakRef\",\n \"FinalizationRegistry\"\n];\nconst functions = [\"Function\", \"AsyncFunction\"];\nconst generators = [\"Generator\", \"AsyncGenerator\"];\nconst generatorFunctions = [\"GeneratorFunction\", \"AsyncGeneratorFunction\"];\nconst arrayBuffers = [\"ArrayBuffer\", \"SharedArrayBuffer\"];\nconst maps = [\"Map\", \"WeakMap\"];\nconst sets = [\"Set\", \"WeakSet\"];\nconst typedArrays = [\n \"Int8Array\",\n \"Uint8Array\",\n \"Uint8ClampedArray\",\n \"Int16Array\",\n \"Uint16Array\",\n \"Int32Array\",\n \"Uint32Array\",\n \"Float32Array\",\n \"Float64Array\",\n \"BigInt64Array\",\n \"BigUint64Array\"\n];\nbuiltInList.forEach(function (name) {\n types[\"[object \" + name + \"]\"] = name.toLowerCase();\n});\nfunctions.forEach(function (name) {\n types[\"[object \" + name + \"]\"] = \"function\";\n});\ngenerators.forEach(function (name) {\n types[\"[object \" + name + \"]\"] = \"generator\";\n});\ngeneratorFunctions.forEach(function (name) {\n types[\"[object \" + name + \"]\"] = \"generatorfunction\";\n});\narrayBuffers.forEach(function (name) {\n types[\"[object \" + name + \"]\"] = \"arraybuffer\";\n});\nmaps.forEach(function (name) {\n types[\"[object \" + name + \"]\"] = \"map\";\n});\nsets.forEach(function (name) {\n types[\"[object \" + name + \"]\"] = \"set\";\n});\ntypedArrays.forEach(function (name) {\n types[\"[object \" + name + \"]\"] = \"typedarray\";\n});\nfunction getInternalType(obj) {\n return obj == null\n ? obj + \"\"\n : typeof obj === \"object\" || typeof obj === \"function\"\n ? types[typesToString.call(obj)] || \"object\"\n : typeof obj;\n}\n\nexport { getInternalType as default, getInternalType };\n//# sourceMappingURL=get-internal-type.es.js.map\n",null],"names":["getObjectType"],"mappings":"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","x_google_ignoreList":[0]} \ No newline at end of file diff --git a/dist/types/javascripttostring.d.ts b/dist/types/javascripttostring.d.ts index b7fc9ac..76f259f 100644 --- a/dist/types/javascripttostring.d.ts +++ b/dist/types/javascripttostring.d.ts @@ -11,6 +11,8 @@ export interface IJ2SOptions { nestedArraysAmount?: number; /** Max depth for nested functions. @defaultValue Number.POSITIVE_INFINITY */ nestedFunctionsAmount?: number; + /** Throw an error when a non-serializable value is encountered (Promise, Generator, WeakRef, WeakMap, WeakSet, FinalizationRegistry). @defaultValue false */ + throwOnNonSerializable?: boolean; } /** * Converts JavaScript value to string diff --git a/docs/assets/search.js b/docs/assets/search.js index 7816687..8b2dad0 100644 --- a/docs/assets/search.js +++ b/docs/assets/search.js @@ -1 +1 @@ -window.searchData = "eJytlU1vnDAQhv/L9GrtgvlqfEsPldJLKlXqxUIVgUF1CjYyJm2E+O8VX+tlQemyzQ3Zfp55sYahBa1+18B4C7+EzIDRICQgkxKBwcMX+u2xMkLJGgg0ugAGQhrUeZJifTzbPvw0ZQEE0iKpa6yBAXRkVroO9U9OIdOiyfBTk+eor9J+mJCnE3JWhUCVaJTmIu3bxT83Mu3PfdWqQm0E7sqRT3R1Tr9jJKPMa4U3JjrBNweSWBvM7rVOXuv7UjXSXBVlxJIBS2bsP0PMl7I/x3wj7xbl8ekZU7M/iBq5m2KENkSGedIUtvDp/Y7TztYHGBMQMsM/wFp4QV0LJYEBPXiHOyCQCyyy/ssfaxBIVVniEDJTaTM8xtOx75gapfvD4+mjA4Q7xI0Od+7HOCZ8hoeNYWF22JUBdIFwdwt0V6C7ACkQTrdAugLpAvSAcG8L9FagtwB9INzfAv0V6C/AAAgPtsBgBQYLMATCwy0wXIHhAoyA8GgLjFbguDK0xgtqg9nD2CKc2yZr4cfUONHcgS1EwNqus23C2u6sU/q9vo54prWafxnW41iPc53nYuZblWtV7h7V1ti2Vmqt9EbrPHqt1LNS7yrp1hC1Ot/q/B261Sy0xsAagx3Gi6FmfaH1hf/2xQQqUWEhJALjcdf9BTY121A="; \ No newline at end of file +window.searchData = "eJytlU1vnDAQhv/L9GrtLuYz3NJDpOTQrRSpFwtVLAyKU9ZGxiRNEf+9WljWy0Ja2OSGsJ/Hr0ajmRqUfC0hZDX84iKFkLoeARHvEUK4f6CP20JzKUogUKkcQuBCo8riBMv12fHqSe9zIJDkcVliCSFAQ3qltaHOyclFklcpfq2yDNUs7ZcjsjshZ68QKGKFQl+k/ffjd5VIDve+K1mg0hwX5ciOdHFOf2IkLfVbgVcmOsFXBxJYakxvlYrfytu9rISeFaXD4haLe+yDIfqiLM/RV+TTomx3z5jo5UFkx308hn5S8nUrvknxiIrHOf8T7/J5XdKiUggpyiG6JIxnoqSYxVVuqnAq9vp4MjUNIgJcpPgbwhpeUJVcCgiBruzVDRDIOObpYQx1bxBI5H6PbcVSmVTtZ3S89gMTLdXhcnd7vQHCNsQKVje+FUWE9XB70P7oHeZPC1pAmDUFWiPQGoAUCKNTIB2BdADaQJg9Bdoj0B6ADhDmTIHOCHQGoAuEuVOgOwLdAegBYd4U6I1AbwD6QJg/Bfoj0B+AARAWTIHBCOz+tD31gkpjet/1FmOmO2v4eey4oG/dGgII66Yx/RXWzVmLHc4O7/BnWsp+8RnPxng28zwXm8uoLKOylqimlo+xUmOlV1r7BWKktpHas6RTq8DoHKNzFuhGE90YXWN0FxgvRrPxecbnzfK9N2CN0jdK///KiEDBC8y5QAhZ1DR/ARfaOnQ="; \ No newline at end of file diff --git a/docs/functions/default.html b/docs/functions/default.html index d9691ad..9c57296 100644 --- a/docs/functions/default.html +++ b/docs/functions/default.html @@ -1,4 +1,4 @@ default | @lopatnov/javascripttostring
                                                                  @lopatnov/javascripttostring
                                                                    Preparing search index...

                                                                    Function default

                                                                    • Converts JavaScript value to string

                                                                      Parameters

                                                                      • value: any

                                                                        the value of any type

                                                                      • Optionaloptions: IJ2SOptions

                                                                        [optional] The options of conversion

                                                                        -

                                                                      Returns string

                                                                    +

                                                                    Returns string

                                                                    diff --git a/docs/index.html b/docs/index.html index 31d8179..fa78b9e 100644 --- a/docs/index.html +++ b/docs/index.html @@ -98,6 +98,12 @@ @@ -119,12 +125,12 @@

                                                                    Objects that reference themselves are fully supported:

                                                                    -
                                                                    var x = [1, 2, 3];
                                                                    x[0] = x;

                                                                    javaScriptToString(x);
                                                                    // '(function(){ var ___j2s_0 = [null, 2, 3]; ___j2s_0['0'] = ___j2s_0; return ___j2s_0; }())' +
                                                                    var x = [1, 2, 3];
                                                                    x[0] = x;

                                                                    javaScriptToString(x);
                                                                    // '(function(){ var ___ref1 = [null, 2, 3]; ___ref1[0] = ___ref1; return ___ref1; }())'

                                                                    Objects shared between different branches are preserved as references:

                                                                    -
                                                                    var shared = { value: 42 };
                                                                    var obj = { a: shared, b: shared };

                                                                    javaScriptToString(obj);
                                                                    // Generates code where obj.a === obj.b (same reference), like:
                                                                    // (function(){ var ___j2s_0 = {
                                                                    // a: {
                                                                    // value: 42
                                                                    // },
                                                                    // b: null
                                                                    // }; ___j2s_0['b'] = ___j2s_0['a']; return ___j2s_0; }()) +
                                                                    var shared = { value: 42 };
                                                                    var obj = { a: shared, b: shared };

                                                                    javaScriptToString(obj);
                                                                    // Generates code where obj.a === obj.b (same reference):
                                                                    // (function(){ var ___ref1 = {
                                                                    // a: { value: 42 },
                                                                    // b: null
                                                                    // }; ___ref1.b = ___ref1.a; return ___ref1; }())
                                                                    @@ -143,67 +149,90 @@ +

                                                                    The following types cannot be serialized and return "undefined" by default. Use throwOnNonSerializable: true to throw an error instead:

                                                                    +

                                                                    Promise, Generator, WeakRef, WeakMap, WeakSet, FinalizationRegistry

                                                                    Try the library interactively:

                                                                    @@ -273,4 +302,4 @@ @@ -119,12 +125,12 @@

                                                                    Objects that reference themselves are fully supported:

                                                                    -
                                                                    var x = [1, 2, 3];
                                                                    x[0] = x;

                                                                    javaScriptToString(x);
                                                                    // '(function(){ var ___j2s_0 = [null, 2, 3]; ___j2s_0['0'] = ___j2s_0; return ___j2s_0; }())' +
                                                                    var x = [1, 2, 3];
                                                                    x[0] = x;

                                                                    javaScriptToString(x);
                                                                    // '(function(){ var ___ref1 = [null, 2, 3]; ___ref1[0] = ___ref1; return ___ref1; }())'

                                                                    Objects shared between different branches are preserved as references:

                                                                    -
                                                                    var shared = { value: 42 };
                                                                    var obj = { a: shared, b: shared };

                                                                    javaScriptToString(obj);
                                                                    // Generates code where obj.a === obj.b (same reference), like:
                                                                    // (function(){ var ___j2s_0 = {
                                                                    // a: {
                                                                    // value: 42
                                                                    // },
                                                                    // b: null
                                                                    // }; ___j2s_0['b'] = ___j2s_0['a']; return ___j2s_0; }()) +
                                                                    var shared = { value: 42 };
                                                                    var obj = { a: shared, b: shared };

                                                                    javaScriptToString(obj);
                                                                    // Generates code where obj.a === obj.b (same reference):
                                                                    // (function(){ var ___ref1 = {
                                                                    // a: { value: 42 },
                                                                    // b: null
                                                                    // }; ___ref1.b = ___ref1.a; return ___ref1; }())
                                                                    @@ -143,67 +149,90 @@ +

                                                                    The following types cannot be serialized and return "undefined" by default. Use throwOnNonSerializable: true to throw an error instead:

                                                                    +

                                                                    Promise, Generator, WeakRef, WeakMap, WeakSet, FinalizationRegistry

                                                                    Try the library interactively:

                                                                    @@ -273,4 +302,4 @@