diff options
Diffstat (limited to 'extension')
| -rw-r--r-- | extension/DEV_README.md | 4 | ||||
| -rw-r--r-- | extension/jest.config.js | 4 | ||||
| -rw-r--r-- | extension/package-lock.json | 4913 | ||||
| -rw-r--r-- | extension/package.json | 12 | ||||
| -rw-r--r-- | extension/react-app/src/components/ComboBox.tsx | 2 | ||||
| -rw-r--r-- | extension/react-app/src/tabs/gui.tsx | 43 | ||||
| -rw-r--r-- | extension/src/__mocks__/vscode.ts | 7 | ||||
| -rw-r--r-- | extension/src/activation/environmentSetup.ts | 17 | ||||
| -rw-r--r-- | extension/src/activation/test/environmentSetup.test.ts | 70 | ||||
| -rw-r--r-- | extension/src/test/suite/terminalEmulator.test.ts | 28 | 
10 files changed, 4827 insertions, 273 deletions
| diff --git a/extension/DEV_README.md b/extension/DEV_README.md index cf168cb3..c247b82c 100644 --- a/extension/DEV_README.md +++ b/extension/DEV_README.md @@ -7,3 +7,7 @@ This is the Continue VS Code Extension. Its primary jobs are  3. Run a Continue server in the background, which connects to both the IDE protocol and the React app. The server is launched in `src/activation/environmentSetup.ts` by calling Python code that lives in `scripts/` (unless extension settings define a server URL other than localhost:65432, in which case the extension will just connect to that).  4. Open Continue + +# Notes + +- We require vscode engine `^1.67.0` and use `@types/vscode` version `1.67.0` because this is the earliest version that doesn't break any of the APIs we are using. If you go back to `1.66.0`, then it will break `vscode.window.tabGroups`. diff --git a/extension/jest.config.js b/extension/jest.config.js new file mode 100644 index 00000000..d5393251 --- /dev/null +++ b/extension/jest.config.js @@ -0,0 +1,4 @@ +module.exports = { +  testEnvironment: "node", +  preset: "ts-jest", +}; diff --git a/extension/package-lock.json b/extension/package-lock.json index 74784fdd..07cd8a8b 100644 --- a/extension/package-lock.json +++ b/extension/package-lock.json @@ -1,12 +1,12 @@  {    "name": "continue", -  "version": "0.0.104", +  "version": "0.0.105",    "lockfileVersion": 2,    "requires": true,    "packages": {      "": {        "name": "continue", -      "version": "0.0.104", +      "version": "0.0.105",        "license": "Apache-2.0",        "dependencies": {          "@electron/rebuild": "^3.2.10", @@ -20,7 +20,7 @@          "downshift": "^7.6.0",          "fkill": "^8.1.0",          "highlight.js": "^11.7.0", -        "posthog-js": "^1.63.3", +        "posthog-js": "^1.68.3",          "react-markdown": "^8.0.7",          "react-redux": "^8.0.5",          "strip-ansi": "^7.1.0", @@ -32,12 +32,13 @@        "devDependencies": {          "@openapitools/openapi-generator-cli": "^2.5.2",          "@types/glob": "^8.0.0", +        "@types/jest": "^29.5.2",          "@types/mocha": "^10.0.1",          "@types/node": "16.x",          "@types/node-fetch": "^2.6.2",          "@types/react-dom": "^18.2.4",          "@types/styled-components": "^5.1.26", -        "@types/vscode": "1.60", +        "@types/vscode": "1.67",          "@types/ws": "^8.5.4",          "@typescript-eslint/eslint-plugin": "^5.45.0",          "@typescript-eslint/parser": "^5.45.0", @@ -45,13 +46,15 @@          "esbuild": "^0.17.19",          "eslint": "^8.28.0",          "glob": "^8.0.3", +        "jest": "^29.5.0",          "json-schema-to-typescript": "^12.0.0",          "mocha": "^10.1.0", +        "ts-jest": "^29.1.1",          "typescript": "^4.9.3",          "vsce": "^2.15.0"        },        "engines": { -        "vscode": "^1.60.0" +        "vscode": "^1.67.0"        }      },      "node_modules/@alloc/quick-lru": { @@ -65,25 +68,90 @@          "url": "https://github.com/sponsors/sindresorhus"        }      }, +    "node_modules/@ampproject/remapping": { +      "version": "2.2.1", +      "resolved": "https://registry.npmjs.org/@ampproject/remapping/-/remapping-2.2.1.tgz", +      "integrity": "sha512-lFMjJTrFL3j7L9yBxwYfCq2k6qqwHyzuUl/XBnif78PWTJYyL/dfowQHWE3sp6U6ZzqWiiIZnpTMO96zhkjwtg==", +      "dev": true, +      "dependencies": { +        "@jridgewell/gen-mapping": "^0.3.0", +        "@jridgewell/trace-mapping": "^0.3.9" +      }, +      "engines": { +        "node": ">=6.0.0" +      } +    },      "node_modules/@babel/code-frame": { -      "version": "7.21.4", -      "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.21.4.tgz", -      "integrity": "sha512-LYvhNKfwWSPpocw8GI7gpK2nq3HSDuEPC/uSYaALSJu9xjsalaaYFOq0Pwt5KmVqwEbZlDu81aLXwBOmD/Fv9g==", -      "peer": true, +      "version": "7.22.5", +      "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.22.5.tgz", +      "integrity": "sha512-Xmwn266vad+6DAqEB2A6V/CcZVp62BbwVmcOJc2RPuwih1kw02TjQvWVWlcKGbBPd+8/0V5DEkOcizRGYsspYQ==",        "dependencies": { -        "@babel/highlight": "^7.18.6" +        "@babel/highlight": "^7.22.5"        },        "engines": {          "node": ">=6.9.0"        }      }, +    "node_modules/@babel/compat-data": { +      "version": "7.22.5", +      "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.22.5.tgz", +      "integrity": "sha512-4Jc/YuIaYqKnDDz892kPIledykKg12Aw1PYX5i/TY28anJtacvM1Rrr8wbieB9GfEJwlzqT0hUEao0CxEebiDA==", +      "dev": true, +      "engines": { +        "node": ">=6.9.0" +      } +    }, +    "node_modules/@babel/core": { +      "version": "7.22.5", +      "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.22.5.tgz", +      "integrity": "sha512-SBuTAjg91A3eKOvD+bPEz3LlhHZRNu1nFOVts9lzDJTXshHTjII0BAtDS3Y2DAkdZdDKWVZGVwkDfc4Clxn1dg==", +      "dev": true, +      "dependencies": { +        "@ampproject/remapping": "^2.2.0", +        "@babel/code-frame": "^7.22.5", +        "@babel/generator": "^7.22.5", +        "@babel/helper-compilation-targets": "^7.22.5", +        "@babel/helper-module-transforms": "^7.22.5", +        "@babel/helpers": "^7.22.5", +        "@babel/parser": "^7.22.5", +        "@babel/template": "^7.22.5", +        "@babel/traverse": "^7.22.5", +        "@babel/types": "^7.22.5", +        "convert-source-map": "^1.7.0", +        "debug": "^4.1.0", +        "gensync": "^1.0.0-beta.2", +        "json5": "^2.2.2", +        "semver": "^6.3.0" +      }, +      "engines": { +        "node": ">=6.9.0" +      }, +      "funding": { +        "type": "opencollective", +        "url": "https://opencollective.com/babel" +      } +    }, +    "node_modules/@babel/core/node_modules/convert-source-map": { +      "version": "1.9.0", +      "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-1.9.0.tgz", +      "integrity": "sha512-ASFBup0Mz1uyiIjANan1jzLQami9z1PoYSZCiiYW2FczPbenXc45FZdBZLzOT+r6+iciuEModtmCti+hjaAk0A==", +      "dev": true +    }, +    "node_modules/@babel/core/node_modules/semver": { +      "version": "6.3.0", +      "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", +      "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", +      "dev": true, +      "bin": { +        "semver": "bin/semver.js" +      } +    },      "node_modules/@babel/generator": { -      "version": "7.21.4", -      "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.21.4.tgz", -      "integrity": "sha512-NieM3pVIYW2SwGzKoqfPrQsf4xGs9M9AIG3ThppsSRmO+m7eQhmI6amajKMUeIO37wFfsvnvcxQFx6x6iqxDnA==", -      "peer": true, +      "version": "7.22.5", +      "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.22.5.tgz", +      "integrity": "sha512-+lcUbnTRhd0jOewtFSedLyiPsD5tswKkbgcezOqqWFUVNEwoUTlpPOBmvhG7OXWLR4jMdv0czPGH5XbflnD1EA==",        "dependencies": { -        "@babel/types": "^7.21.4", +        "@babel/types": "^7.22.5",          "@jridgewell/gen-mapping": "^0.3.2",          "@jridgewell/trace-mapping": "^0.3.17",          "jsesc": "^2.5.1" @@ -104,89 +172,187 @@          "node": ">=6.9.0"        }      }, +    "node_modules/@babel/helper-compilation-targets": { +      "version": "7.22.5", +      "resolved": "https://registry.npmjs.org/@babel/helper-compilation-targets/-/helper-compilation-targets-7.22.5.tgz", +      "integrity": "sha512-Ji+ywpHeuqxB8WDxraCiqR0xfhYjiDE/e6k7FuIaANnoOFxAHskHChz4vA1mJC9Lbm01s1PVAGhQY4FUKSkGZw==", +      "dev": true, +      "dependencies": { +        "@babel/compat-data": "^7.22.5", +        "@babel/helper-validator-option": "^7.22.5", +        "browserslist": "^4.21.3", +        "lru-cache": "^5.1.1", +        "semver": "^6.3.0" +      }, +      "engines": { +        "node": ">=6.9.0" +      }, +      "peerDependencies": { +        "@babel/core": "^7.0.0" +      } +    }, +    "node_modules/@babel/helper-compilation-targets/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/@babel/helper-compilation-targets/node_modules/semver": { +      "version": "6.3.0", +      "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", +      "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", +      "dev": true, +      "bin": { +        "semver": "bin/semver.js" +      } +    }, +    "node_modules/@babel/helper-compilation-targets/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/@babel/helper-environment-visitor": { -      "version": "7.18.9", -      "resolved": "https://registry.npmjs.org/@babel/helper-environment-visitor/-/helper-environment-visitor-7.18.9.tgz", -      "integrity": "sha512-3r/aACDJ3fhQ/EVgFy0hpj8oHyHpQc+LPtJoY9SzTThAsStm4Ptegq92vqKoE3vD706ZVFWITnMnxucw+S9Ipg==", -      "peer": true, +      "version": "7.22.5", +      "resolved": "https://registry.npmjs.org/@babel/helper-environment-visitor/-/helper-environment-visitor-7.22.5.tgz", +      "integrity": "sha512-XGmhECfVA/5sAt+H+xpSg0mfrHq6FzNr9Oxh7PSEBBRUb/mL7Kz3NICXb194rCqAEdxkhPT1a88teizAFyvk8Q==",        "engines": {          "node": ">=6.9.0"        }      },      "node_modules/@babel/helper-function-name": { -      "version": "7.21.0", -      "resolved": "https://registry.npmjs.org/@babel/helper-function-name/-/helper-function-name-7.21.0.tgz", -      "integrity": "sha512-HfK1aMRanKHpxemaY2gqBmL04iAPOPRj7DxtNbiDOrJK+gdwkiNRVpCpUJYbUT+aZyemKN8brqTOxzCaG6ExRg==", -      "peer": true, +      "version": "7.22.5", +      "resolved": "https://registry.npmjs.org/@babel/helper-function-name/-/helper-function-name-7.22.5.tgz", +      "integrity": "sha512-wtHSq6jMRE3uF2otvfuD3DIvVhOsSNshQl0Qrd7qC9oQJzHvOL4qQXlQn2916+CXGywIjpGuIkoyZRRxHPiNQQ==",        "dependencies": { -        "@babel/template": "^7.20.7", -        "@babel/types": "^7.21.0" +        "@babel/template": "^7.22.5", +        "@babel/types": "^7.22.5"        },        "engines": {          "node": ">=6.9.0"        }      },      "node_modules/@babel/helper-hoist-variables": { -      "version": "7.18.6", -      "resolved": "https://registry.npmjs.org/@babel/helper-hoist-variables/-/helper-hoist-variables-7.18.6.tgz", -      "integrity": "sha512-UlJQPkFqFULIcyW5sbzgbkxn2FKRgwWiRexcuaR8RNJRy8+LLveqPjwZV/bwrLZCN0eUHD/x8D0heK1ozuoo6Q==", -      "peer": true, +      "version": "7.22.5", +      "resolved": "https://registry.npmjs.org/@babel/helper-hoist-variables/-/helper-hoist-variables-7.22.5.tgz", +      "integrity": "sha512-wGjk9QZVzvknA6yKIUURb8zY3grXCcOZt+/7Wcy8O2uctxhplmUPkOdlgoNhmdVee2c92JXbf1xpMtVNbfoxRw==",        "dependencies": { -        "@babel/types": "^7.18.6" +        "@babel/types": "^7.22.5"        },        "engines": {          "node": ">=6.9.0"        }      },      "node_modules/@babel/helper-module-imports": { -      "version": "7.21.4", -      "resolved": "https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.21.4.tgz", -      "integrity": "sha512-orajc5T2PsRYUN3ZryCEFeMDYwyw09c/pZeaQEZPH0MpKzSvn3e0uXsDBu3k03VI+9DBiRo+l22BfKTpKwa/Wg==", -      "peer": true, +      "version": "7.22.5", +      "resolved": "https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.22.5.tgz", +      "integrity": "sha512-8Dl6+HD/cKifutF5qGd/8ZJi84QeAKh+CEe1sBzz8UayBBGg1dAIJrdHOcOM5b2MpzWL2yuotJTtGjETq0qjXg==", +      "dependencies": { +        "@babel/types": "^7.22.5" +      }, +      "engines": { +        "node": ">=6.9.0" +      } +    }, +    "node_modules/@babel/helper-module-transforms": { +      "version": "7.22.5", +      "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.22.5.tgz", +      "integrity": "sha512-+hGKDt/Ze8GFExiVHno/2dvG5IdstpzCq0y4Qc9OJ25D4q3pKfiIP/4Vp3/JvhDkLKsDK2api3q3fpIgiIF5bw==", +      "dev": true,        "dependencies": { -        "@babel/types": "^7.21.4" +        "@babel/helper-environment-visitor": "^7.22.5", +        "@babel/helper-module-imports": "^7.22.5", +        "@babel/helper-simple-access": "^7.22.5", +        "@babel/helper-split-export-declaration": "^7.22.5", +        "@babel/helper-validator-identifier": "^7.22.5", +        "@babel/template": "^7.22.5", +        "@babel/traverse": "^7.22.5", +        "@babel/types": "^7.22.5" +      }, +      "engines": { +        "node": ">=6.9.0" +      } +    }, +    "node_modules/@babel/helper-plugin-utils": { +      "version": "7.22.5", +      "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.22.5.tgz", +      "integrity": "sha512-uLls06UVKgFG9QD4OeFYLEGteMIAa5kpTPcFL28yuCIIzsf6ZyKZMllKVOCZFhiZ5ptnwX4mtKdWCBE/uT4amg==", +      "dev": true, +      "engines": { +        "node": ">=6.9.0" +      } +    }, +    "node_modules/@babel/helper-simple-access": { +      "version": "7.22.5", +      "resolved": "https://registry.npmjs.org/@babel/helper-simple-access/-/helper-simple-access-7.22.5.tgz", +      "integrity": "sha512-n0H99E/K+Bika3++WNL17POvo4rKWZ7lZEp1Q+fStVbUi8nxPQEBOlTmCOxW/0JsS56SKKQ+ojAe2pHKJHN35w==", +      "dev": true, +      "dependencies": { +        "@babel/types": "^7.22.5"        },        "engines": {          "node": ">=6.9.0"        }      },      "node_modules/@babel/helper-split-export-declaration": { -      "version": "7.18.6", -      "resolved": "https://registry.npmjs.org/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.18.6.tgz", -      "integrity": "sha512-bde1etTx6ZyTmobl9LLMMQsaizFVZrquTEHOqKeQESMKo4PlObf+8+JA25ZsIpZhT/WEd39+vOdLXAFG/nELpA==", -      "peer": true, +      "version": "7.22.5", +      "resolved": "https://registry.npmjs.org/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.22.5.tgz", +      "integrity": "sha512-thqK5QFghPKWLhAV321lxF95yCg2K3Ob5yw+M3VHWfdia0IkPXUtoLH8x/6Fh486QUvzhb8YOWHChTVen2/PoQ==",        "dependencies": { -        "@babel/types": "^7.18.6" +        "@babel/types": "^7.22.5"        },        "engines": {          "node": ">=6.9.0"        }      },      "node_modules/@babel/helper-string-parser": { -      "version": "7.19.4", -      "resolved": "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.19.4.tgz", -      "integrity": "sha512-nHtDoQcuqFmwYNYPz3Rah5ph2p8PFeFCsZk9A/48dPc/rGocJ5J3hAAZ7pb76VWX3fZKu+uEr/FhH5jLx7umrw==", -      "peer": true, +      "version": "7.22.5", +      "resolved": "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.22.5.tgz", +      "integrity": "sha512-mM4COjgZox8U+JcXQwPijIZLElkgEpO5rsERVDJTc2qfCDfERyob6k5WegS14SX18IIjv+XD+GrqNumY5JRCDw==",        "engines": {          "node": ">=6.9.0"        }      },      "node_modules/@babel/helper-validator-identifier": { -      "version": "7.19.1", -      "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.19.1.tgz", -      "integrity": "sha512-awrNfaMtnHUr653GgGEs++LlAvW6w+DcPrOliSMXWCKo597CwL5Acf/wWdNkf/tfEQE3mjkeD1YOVZOUV/od1w==", -      "peer": true, +      "version": "7.22.5", +      "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.22.5.tgz", +      "integrity": "sha512-aJXu+6lErq8ltp+JhkJUfk1MTGyuA4v7f3pA+BJ5HLfNC6nAQ0Cpi9uOquUj8Hehg0aUiHzWQbOVJGao6ztBAQ==", +      "engines": { +        "node": ">=6.9.0" +      } +    }, +    "node_modules/@babel/helper-validator-option": { +      "version": "7.22.5", +      "resolved": "https://registry.npmjs.org/@babel/helper-validator-option/-/helper-validator-option-7.22.5.tgz", +      "integrity": "sha512-R3oB6xlIVKUnxNUxbmgq7pKjxpru24zlimpE8WK47fACIlM0II/Hm1RS8IaOI7NgCr6LNS+jl5l75m20npAziw==", +      "dev": true, +      "engines": { +        "node": ">=6.9.0" +      } +    }, +    "node_modules/@babel/helpers": { +      "version": "7.22.5", +      "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.22.5.tgz", +      "integrity": "sha512-pSXRmfE1vzcUIDFQcSGA5Mr+GxBV9oiRKDuDxXvWQQBCh8HoIjs/2DlDB7H8smac1IVrB9/xdXj2N3Wol9Cr+Q==", +      "dev": true, +      "dependencies": { +        "@babel/template": "^7.22.5", +        "@babel/traverse": "^7.22.5", +        "@babel/types": "^7.22.5" +      },        "engines": {          "node": ">=6.9.0"        }      },      "node_modules/@babel/highlight": { -      "version": "7.18.6", -      "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.18.6.tgz", -      "integrity": "sha512-u7stbOuYjaPezCuLj29hNW1v64M2Md2qupEKP1fHc7WdOA3DgLh37suiSrZYY7haUB7iBeQZ9P1uiRF359do3g==", -      "peer": true, +      "version": "7.22.5", +      "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.22.5.tgz", +      "integrity": "sha512-BSKlD1hgnedS5XRnGOljZawtag7H1yPfQp0tdNJCHoH6AZ+Pcm9VvkrK59/Yy593Ypg0zMxH2BxD1VPYUQ7UIw==",        "dependencies": { -        "@babel/helper-validator-identifier": "^7.18.6", +        "@babel/helper-validator-identifier": "^7.22.5",          "chalk": "^2.0.0",          "js-tokens": "^4.0.0"        }, @@ -198,7 +364,6 @@        "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==", -      "peer": true,        "dependencies": {          "color-convert": "^1.9.0"        }, @@ -210,7 +375,6 @@        "version": "2.4.2",        "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz",        "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", -      "peer": true,        "dependencies": {          "ansi-styles": "^3.2.1",          "escape-string-regexp": "^1.0.5", @@ -224,7 +388,6 @@        "version": "1.9.3",        "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz",        "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", -      "peer": true,        "dependencies": {          "color-name": "1.1.3"        } @@ -232,14 +395,12 @@      "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": "sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw==", -      "peer": true +      "integrity": "sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw=="      },      "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": "sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==", -      "peer": true,        "engines": {          "node": ">=0.8.0"        } @@ -248,7 +409,6 @@        "version": "3.0.0",        "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz",        "integrity": "sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw==", -      "peer": true,        "engines": {          "node": ">=4"        } @@ -257,7 +417,6 @@        "version": "5.5.0",        "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz",        "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", -      "peer": true,        "dependencies": {          "has-flag": "^3.0.0"        }, @@ -266,10 +425,9 @@        }      },      "node_modules/@babel/parser": { -      "version": "7.21.4", -      "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.21.4.tgz", -      "integrity": "sha512-alVJj7k7zIxqBZ7BTRhz0IqJFxW1VJbm6N8JbcYhQ186df9ZBPbZBmWSqAMXwHGsCJdYks7z/voa3ibiS5bCIw==", -      "peer": true, +      "version": "7.22.5", +      "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.22.5.tgz", +      "integrity": "sha512-DFZMC9LJUG9PLOclRC32G63UXwzqS2koQC8dkx+PLdmt1xSePYpbT/NbsrJy8Q/muXz7o/h/d4A7Fuyixm559Q==",        "bin": {          "parser": "bin/babel-parser.js"        }, @@ -277,6 +435,183 @@          "node": ">=6.0.0"        }      }, +    "node_modules/@babel/plugin-syntax-async-generators": { +      "version": "7.8.4", +      "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-async-generators/-/plugin-syntax-async-generators-7.8.4.tgz", +      "integrity": "sha512-tycmZxkGfZaxhMRbXlPXuVFpdWlXpir2W4AMhSJgRKzk/eDlIXOhb2LHWoLpDF7TEHylV5zNhykX6KAgHJmTNw==", +      "dev": true, +      "dependencies": { +        "@babel/helper-plugin-utils": "^7.8.0" +      }, +      "peerDependencies": { +        "@babel/core": "^7.0.0-0" +      } +    }, +    "node_modules/@babel/plugin-syntax-bigint": { +      "version": "7.8.3", +      "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-bigint/-/plugin-syntax-bigint-7.8.3.tgz", +      "integrity": "sha512-wnTnFlG+YxQm3vDxpGE57Pj0srRU4sHE/mDkt1qv2YJJSeUAec2ma4WLUnUPeKjyrfntVwe/N6dCXpU+zL3Npg==", +      "dev": true, +      "dependencies": { +        "@babel/helper-plugin-utils": "^7.8.0" +      }, +      "peerDependencies": { +        "@babel/core": "^7.0.0-0" +      } +    }, +    "node_modules/@babel/plugin-syntax-class-properties": { +      "version": "7.12.13", +      "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-class-properties/-/plugin-syntax-class-properties-7.12.13.tgz", +      "integrity": "sha512-fm4idjKla0YahUNgFNLCB0qySdsoPiZP3iQE3rky0mBUtMZ23yDJ9SJdg6dXTSDnulOVqiF3Hgr9nbXvXTQZYA==", +      "dev": true, +      "dependencies": { +        "@babel/helper-plugin-utils": "^7.12.13" +      }, +      "peerDependencies": { +        "@babel/core": "^7.0.0-0" +      } +    }, +    "node_modules/@babel/plugin-syntax-import-meta": { +      "version": "7.10.4", +      "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-import-meta/-/plugin-syntax-import-meta-7.10.4.tgz", +      "integrity": "sha512-Yqfm+XDx0+Prh3VSeEQCPU81yC+JWZ2pDPFSS4ZdpfZhp4MkFMaDC1UqseovEKwSUpnIL7+vK+Clp7bfh0iD7g==", +      "dev": true, +      "dependencies": { +        "@babel/helper-plugin-utils": "^7.10.4" +      }, +      "peerDependencies": { +        "@babel/core": "^7.0.0-0" +      } +    }, +    "node_modules/@babel/plugin-syntax-json-strings": { +      "version": "7.8.3", +      "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-json-strings/-/plugin-syntax-json-strings-7.8.3.tgz", +      "integrity": "sha512-lY6kdGpWHvjoe2vk4WrAapEuBR69EMxZl+RoGRhrFGNYVK8mOPAW8VfbT/ZgrFbXlDNiiaxQnAtgVCZ6jv30EA==", +      "dev": true, +      "dependencies": { +        "@babel/helper-plugin-utils": "^7.8.0" +      }, +      "peerDependencies": { +        "@babel/core": "^7.0.0-0" +      } +    }, +    "node_modules/@babel/plugin-syntax-jsx": { +      "version": "7.22.5", +      "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-jsx/-/plugin-syntax-jsx-7.22.5.tgz", +      "integrity": "sha512-gvyP4hZrgrs/wWMaocvxZ44Hw0b3W8Pe+cMxc8V1ULQ07oh8VNbIRaoD1LRZVTvD+0nieDKjfgKg89sD7rrKrg==", +      "dev": true, +      "dependencies": { +        "@babel/helper-plugin-utils": "^7.22.5" +      }, +      "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, +      "dependencies": { +        "@babel/helper-plugin-utils": "^7.10.4" +      }, +      "peerDependencies": { +        "@babel/core": "^7.0.0-0" +      } +    }, +    "node_modules/@babel/plugin-syntax-nullish-coalescing-operator": { +      "version": "7.8.3", +      "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-nullish-coalescing-operator/-/plugin-syntax-nullish-coalescing-operator-7.8.3.tgz", +      "integrity": "sha512-aSff4zPII1u2QD7y+F8oDsz19ew4IGEJg9SVW+bqwpwtfFleiQDMdzA/R+UlWDzfnHFCxxleFT0PMIrR36XLNQ==", +      "dev": true, +      "dependencies": { +        "@babel/helper-plugin-utils": "^7.8.0" +      }, +      "peerDependencies": { +        "@babel/core": "^7.0.0-0" +      } +    }, +    "node_modules/@babel/plugin-syntax-numeric-separator": { +      "version": "7.10.4", +      "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-numeric-separator/-/plugin-syntax-numeric-separator-7.10.4.tgz", +      "integrity": "sha512-9H6YdfkcK/uOnY/K7/aA2xpzaAgkQn37yzWUMRK7OaPOqOpGS1+n0H5hxT9AUw9EsSjPW8SVyMJwYRtWs3X3ug==", +      "dev": true, +      "dependencies": { +        "@babel/helper-plugin-utils": "^7.10.4" +      }, +      "peerDependencies": { +        "@babel/core": "^7.0.0-0" +      } +    }, +    "node_modules/@babel/plugin-syntax-object-rest-spread": { +      "version": "7.8.3", +      "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-object-rest-spread/-/plugin-syntax-object-rest-spread-7.8.3.tgz", +      "integrity": "sha512-XoqMijGZb9y3y2XskN+P1wUGiVwWZ5JmoDRwx5+3GmEplNyVM2s2Dg8ILFQm8rWM48orGy5YpI5Bl8U1y7ydlA==", +      "dev": true, +      "dependencies": { +        "@babel/helper-plugin-utils": "^7.8.0" +      }, +      "peerDependencies": { +        "@babel/core": "^7.0.0-0" +      } +    }, +    "node_modules/@babel/plugin-syntax-optional-catch-binding": { +      "version": "7.8.3", +      "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-optional-catch-binding/-/plugin-syntax-optional-catch-binding-7.8.3.tgz", +      "integrity": "sha512-6VPD0Pc1lpTqw0aKoeRTMiB+kWhAoT24PA+ksWSBrFtl5SIRVpZlwN3NNPQjehA2E/91FV3RjLWoVTglWcSV3Q==", +      "dev": true, +      "dependencies": { +        "@babel/helper-plugin-utils": "^7.8.0" +      }, +      "peerDependencies": { +        "@babel/core": "^7.0.0-0" +      } +    }, +    "node_modules/@babel/plugin-syntax-optional-chaining": { +      "version": "7.8.3", +      "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-optional-chaining/-/plugin-syntax-optional-chaining-7.8.3.tgz", +      "integrity": "sha512-KoK9ErH1MBlCPxV0VANkXW2/dw4vlbGDrFgz8bmUsBGYkFRcbRwMh6cIJubdPrkxRwuGdtCk0v/wPTKbQgBjkg==", +      "dev": true, +      "dependencies": { +        "@babel/helper-plugin-utils": "^7.8.0" +      }, +      "peerDependencies": { +        "@babel/core": "^7.0.0-0" +      } +    }, +    "node_modules/@babel/plugin-syntax-top-level-await": { +      "version": "7.14.5", +      "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-top-level-await/-/plugin-syntax-top-level-await-7.14.5.tgz", +      "integrity": "sha512-hx++upLv5U1rgYfwe1xBQUhRmU41NEvpUvrp8jkrSCdvGSnM5/qdRMtylJ6PG5OFkBaHkbTAKTnd3/YyESRHFw==", +      "dev": true, +      "dependencies": { +        "@babel/helper-plugin-utils": "^7.14.5" +      }, +      "engines": { +        "node": ">=6.9.0" +      }, +      "peerDependencies": { +        "@babel/core": "^7.0.0-0" +      } +    }, +    "node_modules/@babel/plugin-syntax-typescript": { +      "version": "7.22.5", +      "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-typescript/-/plugin-syntax-typescript-7.22.5.tgz", +      "integrity": "sha512-1mS2o03i7t1c6VzH6fdQ3OA8tcEIxwG18zIPRp+UY1Ihv6W+XZzBCVxExF9upussPXJ0xE9XRHwMoNs1ep/nRQ==", +      "dev": true, +      "dependencies": { +        "@babel/helper-plugin-utils": "^7.22.5" +      }, +      "engines": { +        "node": ">=6.9.0" +      }, +      "peerDependencies": { +        "@babel/core": "^7.0.0-0" +      } +    },      "node_modules/@babel/runtime": {        "version": "7.21.0",        "resolved": "https://registry.npmjs.org/@babel/runtime/-/runtime-7.21.0.tgz", @@ -289,33 +624,31 @@        }      },      "node_modules/@babel/template": { -      "version": "7.20.7", -      "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.20.7.tgz", -      "integrity": "sha512-8SegXApWe6VoNw0r9JHpSteLKTpTiLZ4rMlGIm9JQ18KiCtyQiAMEazujAHrUS5flrcqYZa75ukev3P6QmUwUw==", -      "peer": true, +      "version": "7.22.5", +      "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.22.5.tgz", +      "integrity": "sha512-X7yV7eiwAxdj9k94NEylvbVHLiVG1nvzCV2EAowhxLTwODV1jl9UzZ48leOC0sH7OnuHrIkllaBgneUykIcZaw==",        "dependencies": { -        "@babel/code-frame": "^7.18.6", -        "@babel/parser": "^7.20.7", -        "@babel/types": "^7.20.7" +        "@babel/code-frame": "^7.22.5", +        "@babel/parser": "^7.22.5", +        "@babel/types": "^7.22.5"        },        "engines": {          "node": ">=6.9.0"        }      },      "node_modules/@babel/traverse": { -      "version": "7.21.4", -      "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.21.4.tgz", -      "integrity": "sha512-eyKrRHKdyZxqDm+fV1iqL9UAHMoIg0nDaGqfIOd8rKH17m5snv7Gn4qgjBoFfLz9APvjFU/ICT00NVCv1Epp8Q==", -      "peer": true, -      "dependencies": { -        "@babel/code-frame": "^7.21.4", -        "@babel/generator": "^7.21.4", -        "@babel/helper-environment-visitor": "^7.18.9", -        "@babel/helper-function-name": "^7.21.0", -        "@babel/helper-hoist-variables": "^7.18.6", -        "@babel/helper-split-export-declaration": "^7.18.6", -        "@babel/parser": "^7.21.4", -        "@babel/types": "^7.21.4", +      "version": "7.22.5", +      "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.22.5.tgz", +      "integrity": "sha512-7DuIjPgERaNo6r+PZwItpjCZEa5vyw4eJGufeLxrPdBXBoLcCJCIasvK6pK/9DVNrLZTLFhUGqaC6X/PA007TQ==", +      "dependencies": { +        "@babel/code-frame": "^7.22.5", +        "@babel/generator": "^7.22.5", +        "@babel/helper-environment-visitor": "^7.22.5", +        "@babel/helper-function-name": "^7.22.5", +        "@babel/helper-hoist-variables": "^7.22.5", +        "@babel/helper-split-export-declaration": "^7.22.5", +        "@babel/parser": "^7.22.5", +        "@babel/types": "^7.22.5",          "debug": "^4.1.0",          "globals": "^11.1.0"        }, @@ -327,19 +660,17 @@        "version": "11.12.0",        "resolved": "https://registry.npmjs.org/globals/-/globals-11.12.0.tgz",        "integrity": "sha512-WOBp/EEGUiIsJSp7wcv/y6MO+lV9UoncWqxuFfm8eBwzWNgyfBd6Gz+IeKQ9jCmyhoH99g15M3T+QaVHFjizVA==", -      "peer": true,        "engines": {          "node": ">=4"        }      },      "node_modules/@babel/types": { -      "version": "7.21.4", -      "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.21.4.tgz", -      "integrity": "sha512-rU2oY501qDxE8Pyo7i/Orqma4ziCOrby0/9mvbDUGEfvZjb279Nk9k19e2fiCxHbRRpY2ZyrgW1eq22mvmOIzA==", -      "peer": true, +      "version": "7.22.5", +      "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.22.5.tgz", +      "integrity": "sha512-zo3MIHGOkPOfoRXitsgHLjEXmlDaD/5KU1Uzuc9GNiZPhSqVxVRtxuPaSBZDsYZ9qV88AjtMtWW7ww98loJ9KA==",        "dependencies": { -        "@babel/helper-string-parser": "^7.19.4", -        "@babel/helper-validator-identifier": "^7.19.1", +        "@babel/helper-string-parser": "^7.22.5", +        "@babel/helper-validator-identifier": "^7.22.5",          "to-fast-properties": "^2.0.0"        },        "engines": { @@ -364,6 +695,12 @@          "url": "https://github.com/sponsors/philsturgeon"        }      }, +    "node_modules/@bcoe/v8-coverage": { +      "version": "0.2.3", +      "resolved": "https://registry.npmjs.org/@bcoe/v8-coverage/-/v8-coverage-0.2.3.tgz", +      "integrity": "sha512-0hYQ8SB4Db5zvZB4axdMHGwEaQjkZzFjQiN9LVYvIFB2nSUHW9tYpxWriPrWDASIxiaXax83REcLxuSdnGPZtw==", +      "dev": true +    },      "node_modules/@electron/rebuild": {        "version": "3.2.10",        "resolved": "https://registry.npmjs.org/@electron/rebuild/-/rebuild-3.2.10.tgz", @@ -866,6 +1203,463 @@        "integrity": "sha512-ZnQMnLV4e7hDlUvw8H+U8ASL02SS2Gn6+9Ac3wGGLIe7+je2AeAOxPY+izIPJDfFDb7eDjev0Us8MO1iFRN8hA==",        "dev": true      }, +    "node_modules/@istanbuljs/load-nyc-config": { +      "version": "1.1.0", +      "resolved": "https://registry.npmjs.org/@istanbuljs/load-nyc-config/-/load-nyc-config-1.1.0.tgz", +      "integrity": "sha512-VjeHSlIzpv/NyD3N0YuHfXOPDIixcA1q2ZV98wsMqcYlPmv2n3Yb2lYP9XMElnaFVXg5A7YLTeLu6V84uQDjmQ==", +      "dev": true, +      "dependencies": { +        "camelcase": "^5.3.1", +        "find-up": "^4.1.0", +        "get-package-type": "^0.1.0", +        "js-yaml": "^3.13.1", +        "resolve-from": "^5.0.0" +      }, +      "engines": { +        "node": ">=8" +      } +    }, +    "node_modules/@istanbuljs/load-nyc-config/node_modules/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/@istanbuljs/load-nyc-config/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/@istanbuljs/load-nyc-config/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/@istanbuljs/load-nyc-config/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/@istanbuljs/load-nyc-config/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/@istanbuljs/load-nyc-config/node_modules/p-limit": { +      "version": "2.3.0", +      "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz", +      "integrity": "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==", +      "dev": true, +      "dependencies": { +        "p-try": "^2.0.0" +      }, +      "engines": { +        "node": ">=6" +      }, +      "funding": { +        "url": "https://github.com/sponsors/sindresorhus" +      } +    }, +    "node_modules/@istanbuljs/load-nyc-config/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/@istanbuljs/load-nyc-config/node_modules/resolve-from": { +      "version": "5.0.0", +      "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-5.0.0.tgz", +      "integrity": "sha512-qYg9KP24dD5qka9J47d0aVky0N+b4fTU89LN9iDnjB5waksiC49rvMB0PrUJQGoTmH50XPiqOvAjDfaijGxYZw==", +      "dev": true, +      "engines": { +        "node": ">=8" +      } +    }, +    "node_modules/@istanbuljs/schema": { +      "version": "0.1.3", +      "resolved": "https://registry.npmjs.org/@istanbuljs/schema/-/schema-0.1.3.tgz", +      "integrity": "sha512-ZXRY4jNvVgSVQ8DL3LTcakaAtXwTVUxE81hslsyD2AtoXW/wVob10HkOJ1X/pAlcI7D+2YoZKg5do8G/w6RYgA==", +      "dev": true, +      "engines": { +        "node": ">=8" +      } +    }, +    "node_modules/@jest/console": { +      "version": "29.5.0", +      "resolved": "https://registry.npmjs.org/@jest/console/-/console-29.5.0.tgz", +      "integrity": "sha512-NEpkObxPwyw/XxZVLPmAGKE89IQRp4puc6IQRPru6JKd1M3fW9v1xM1AnzIJE65hbCkzQAdnL8P47e9hzhiYLQ==", +      "dev": true, +      "dependencies": { +        "@jest/types": "^29.5.0", +        "@types/node": "*", +        "chalk": "^4.0.0", +        "jest-message-util": "^29.5.0", +        "jest-util": "^29.5.0", +        "slash": "^3.0.0" +      }, +      "engines": { +        "node": "^14.15.0 || ^16.10.0 || >=18.0.0" +      } +    }, +    "node_modules/@jest/core": { +      "version": "29.5.0", +      "resolved": "https://registry.npmjs.org/@jest/core/-/core-29.5.0.tgz", +      "integrity": "sha512-28UzQc7ulUrOQw1IsN/kv1QES3q2kkbl/wGslyhAclqZ/8cMdB5M68BffkIdSJgKBUt50d3hbwJ92XESlE7LiQ==", +      "dev": true, +      "dependencies": { +        "@jest/console": "^29.5.0", +        "@jest/reporters": "^29.5.0", +        "@jest/test-result": "^29.5.0", +        "@jest/transform": "^29.5.0", +        "@jest/types": "^29.5.0", +        "@types/node": "*", +        "ansi-escapes": "^4.2.1", +        "chalk": "^4.0.0", +        "ci-info": "^3.2.0", +        "exit": "^0.1.2", +        "graceful-fs": "^4.2.9", +        "jest-changed-files": "^29.5.0", +        "jest-config": "^29.5.0", +        "jest-haste-map": "^29.5.0", +        "jest-message-util": "^29.5.0", +        "jest-regex-util": "^29.4.3", +        "jest-resolve": "^29.5.0", +        "jest-resolve-dependencies": "^29.5.0", +        "jest-runner": "^29.5.0", +        "jest-runtime": "^29.5.0", +        "jest-snapshot": "^29.5.0", +        "jest-util": "^29.5.0", +        "jest-validate": "^29.5.0", +        "jest-watcher": "^29.5.0", +        "micromatch": "^4.0.4", +        "pretty-format": "^29.5.0", +        "slash": "^3.0.0", +        "strip-ansi": "^6.0.0" +      }, +      "engines": { +        "node": "^14.15.0 || ^16.10.0 || >=18.0.0" +      }, +      "peerDependencies": { +        "node-notifier": "^8.0.1 || ^9.0.0 || ^10.0.0" +      }, +      "peerDependenciesMeta": { +        "node-notifier": { +          "optional": true +        } +      } +    }, +    "node_modules/@jest/core/node_modules/ansi-regex": { +      "version": "5.0.1", +      "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", +      "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", +      "dev": true, +      "engines": { +        "node": ">=8" +      } +    }, +    "node_modules/@jest/core/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/@jest/environment": { +      "version": "29.5.0", +      "resolved": "https://registry.npmjs.org/@jest/environment/-/environment-29.5.0.tgz", +      "integrity": "sha512-5FXw2+wD29YU1d4I2htpRX7jYnAyTRjP2CsXQdo9SAM8g3ifxWPSV0HnClSn71xwctr0U3oZIIH+dtbfmnbXVQ==", +      "dev": true, +      "dependencies": { +        "@jest/fake-timers": "^29.5.0", +        "@jest/types": "^29.5.0", +        "@types/node": "*", +        "jest-mock": "^29.5.0" +      }, +      "engines": { +        "node": "^14.15.0 || ^16.10.0 || >=18.0.0" +      } +    }, +    "node_modules/@jest/expect": { +      "version": "29.5.0", +      "resolved": "https://registry.npmjs.org/@jest/expect/-/expect-29.5.0.tgz", +      "integrity": "sha512-PueDR2HGihN3ciUNGr4uelropW7rqUfTiOn+8u0leg/42UhblPxHkfoh0Ruu3I9Y1962P3u2DY4+h7GVTSVU6g==", +      "dev": true, +      "dependencies": { +        "expect": "^29.5.0", +        "jest-snapshot": "^29.5.0" +      }, +      "engines": { +        "node": "^14.15.0 || ^16.10.0 || >=18.0.0" +      } +    }, +    "node_modules/@jest/expect-utils": { +      "version": "29.5.0", +      "resolved": "https://registry.npmjs.org/@jest/expect-utils/-/expect-utils-29.5.0.tgz", +      "integrity": "sha512-fmKzsidoXQT2KwnrwE0SQq3uj8Z763vzR8LnLBwC2qYWEFpjX8daRsk6rHUM1QvNlEW/UJXNXm59ztmJJWs2Mg==", +      "dev": true, +      "dependencies": { +        "jest-get-type": "^29.4.3" +      }, +      "engines": { +        "node": "^14.15.0 || ^16.10.0 || >=18.0.0" +      } +    }, +    "node_modules/@jest/fake-timers": { +      "version": "29.5.0", +      "resolved": "https://registry.npmjs.org/@jest/fake-timers/-/fake-timers-29.5.0.tgz", +      "integrity": "sha512-9ARvuAAQcBwDAqOnglWq2zwNIRUDtk/SCkp/ToGEhFv5r86K21l+VEs0qNTaXtyiY0lEePl3kylijSYJQqdbDg==", +      "dev": true, +      "dependencies": { +        "@jest/types": "^29.5.0", +        "@sinonjs/fake-timers": "^10.0.2", +        "@types/node": "*", +        "jest-message-util": "^29.5.0", +        "jest-mock": "^29.5.0", +        "jest-util": "^29.5.0" +      }, +      "engines": { +        "node": "^14.15.0 || ^16.10.0 || >=18.0.0" +      } +    }, +    "node_modules/@jest/globals": { +      "version": "29.5.0", +      "resolved": "https://registry.npmjs.org/@jest/globals/-/globals-29.5.0.tgz", +      "integrity": "sha512-S02y0qMWGihdzNbUiqSAiKSpSozSuHX5UYc7QbnHP+D9Lyw8DgGGCinrN9uSuHPeKgSSzvPom2q1nAtBvUsvPQ==", +      "dev": true, +      "dependencies": { +        "@jest/environment": "^29.5.0", +        "@jest/expect": "^29.5.0", +        "@jest/types": "^29.5.0", +        "jest-mock": "^29.5.0" +      }, +      "engines": { +        "node": "^14.15.0 || ^16.10.0 || >=18.0.0" +      } +    }, +    "node_modules/@jest/reporters": { +      "version": "29.5.0", +      "resolved": "https://registry.npmjs.org/@jest/reporters/-/reporters-29.5.0.tgz", +      "integrity": "sha512-D05STXqj/M8bP9hQNSICtPqz97u7ffGzZu+9XLucXhkOFBqKcXe04JLZOgIekOxdb73MAoBUFnqvf7MCpKk5OA==", +      "dev": true, +      "dependencies": { +        "@bcoe/v8-coverage": "^0.2.3", +        "@jest/console": "^29.5.0", +        "@jest/test-result": "^29.5.0", +        "@jest/transform": "^29.5.0", +        "@jest/types": "^29.5.0", +        "@jridgewell/trace-mapping": "^0.3.15", +        "@types/node": "*", +        "chalk": "^4.0.0", +        "collect-v8-coverage": "^1.0.0", +        "exit": "^0.1.2", +        "glob": "^7.1.3", +        "graceful-fs": "^4.2.9", +        "istanbul-lib-coverage": "^3.0.0", +        "istanbul-lib-instrument": "^5.1.0", +        "istanbul-lib-report": "^3.0.0", +        "istanbul-lib-source-maps": "^4.0.0", +        "istanbul-reports": "^3.1.3", +        "jest-message-util": "^29.5.0", +        "jest-util": "^29.5.0", +        "jest-worker": "^29.5.0", +        "slash": "^3.0.0", +        "string-length": "^4.0.1", +        "strip-ansi": "^6.0.0", +        "v8-to-istanbul": "^9.0.1" +      }, +      "engines": { +        "node": "^14.15.0 || ^16.10.0 || >=18.0.0" +      }, +      "peerDependencies": { +        "node-notifier": "^8.0.1 || ^9.0.0 || ^10.0.0" +      }, +      "peerDependenciesMeta": { +        "node-notifier": { +          "optional": true +        } +      } +    }, +    "node_modules/@jest/reporters/node_modules/ansi-regex": { +      "version": "5.0.1", +      "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", +      "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", +      "dev": true, +      "engines": { +        "node": ">=8" +      } +    }, +    "node_modules/@jest/reporters/node_modules/glob": { +      "version": "7.2.3", +      "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.3.tgz", +      "integrity": "sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==", +      "dev": true, +      "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/@jest/reporters/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/@jest/schemas": { +      "version": "29.4.3", +      "resolved": "https://registry.npmjs.org/@jest/schemas/-/schemas-29.4.3.tgz", +      "integrity": "sha512-VLYKXQmtmuEz6IxJsrZwzG9NvtkQsWNnWMsKxqWNu3+CnfzJQhp0WDDKWLVV9hLKr0l3SLLFRqcYHjhtyuDVxg==", +      "dev": true, +      "dependencies": { +        "@sinclair/typebox": "^0.25.16" +      }, +      "engines": { +        "node": "^14.15.0 || ^16.10.0 || >=18.0.0" +      } +    }, +    "node_modules/@jest/source-map": { +      "version": "29.4.3", +      "resolved": "https://registry.npmjs.org/@jest/source-map/-/source-map-29.4.3.tgz", +      "integrity": "sha512-qyt/mb6rLyd9j1jUts4EQncvS6Yy3PM9HghnNv86QBlV+zdL2inCdK1tuVlL+J+lpiw2BI67qXOrX3UurBqQ1w==", +      "dev": true, +      "dependencies": { +        "@jridgewell/trace-mapping": "^0.3.15", +        "callsites": "^3.0.0", +        "graceful-fs": "^4.2.9" +      }, +      "engines": { +        "node": "^14.15.0 || ^16.10.0 || >=18.0.0" +      } +    }, +    "node_modules/@jest/test-result": { +      "version": "29.5.0", +      "resolved": "https://registry.npmjs.org/@jest/test-result/-/test-result-29.5.0.tgz", +      "integrity": "sha512-fGl4rfitnbfLsrfx1uUpDEESS7zM8JdgZgOCQuxQvL1Sn/I6ijeAVQWGfXI9zb1i9Mzo495cIpVZhA0yr60PkQ==", +      "dev": true, +      "dependencies": { +        "@jest/console": "^29.5.0", +        "@jest/types": "^29.5.0", +        "@types/istanbul-lib-coverage": "^2.0.0", +        "collect-v8-coverage": "^1.0.0" +      }, +      "engines": { +        "node": "^14.15.0 || ^16.10.0 || >=18.0.0" +      } +    }, +    "node_modules/@jest/test-sequencer": { +      "version": "29.5.0", +      "resolved": "https://registry.npmjs.org/@jest/test-sequencer/-/test-sequencer-29.5.0.tgz", +      "integrity": "sha512-yPafQEcKjkSfDXyvtgiV4pevSeyuA6MQr6ZIdVkWJly9vkqjnFfcfhRQqpD5whjoU8EORki752xQmjaqoFjzMQ==", +      "dev": true, +      "dependencies": { +        "@jest/test-result": "^29.5.0", +        "graceful-fs": "^4.2.9", +        "jest-haste-map": "^29.5.0", +        "slash": "^3.0.0" +      }, +      "engines": { +        "node": "^14.15.0 || ^16.10.0 || >=18.0.0" +      } +    }, +    "node_modules/@jest/transform": { +      "version": "29.5.0", +      "resolved": "https://registry.npmjs.org/@jest/transform/-/transform-29.5.0.tgz", +      "integrity": "sha512-8vbeZWqLJOvHaDfeMuoHITGKSz5qWc9u04lnWrQE3VyuSw604PzQM824ZeX9XSjUCeDiE3GuxZe5UKa8J61NQw==", +      "dev": true, +      "dependencies": { +        "@babel/core": "^7.11.6", +        "@jest/types": "^29.5.0", +        "@jridgewell/trace-mapping": "^0.3.15", +        "babel-plugin-istanbul": "^6.1.1", +        "chalk": "^4.0.0", +        "convert-source-map": "^2.0.0", +        "fast-json-stable-stringify": "^2.1.0", +        "graceful-fs": "^4.2.9", +        "jest-haste-map": "^29.5.0", +        "jest-regex-util": "^29.4.3", +        "jest-util": "^29.5.0", +        "micromatch": "^4.0.4", +        "pirates": "^4.0.4", +        "slash": "^3.0.0", +        "write-file-atomic": "^4.0.2" +      }, +      "engines": { +        "node": "^14.15.0 || ^16.10.0 || >=18.0.0" +      } +    }, +    "node_modules/@jest/types": { +      "version": "29.5.0", +      "resolved": "https://registry.npmjs.org/@jest/types/-/types-29.5.0.tgz", +      "integrity": "sha512-qbu7kN6czmVRc3xWFQcAN03RAUamgppVUdXrvl1Wr3jlNF93o9mJbGcDWrwGB6ht44u7efB1qCFgVQmca24Uog==", +      "dev": true, +      "dependencies": { +        "@jest/schemas": "^29.4.3", +        "@types/istanbul-lib-coverage": "^2.0.0", +        "@types/istanbul-reports": "^3.0.0", +        "@types/node": "*", +        "@types/yargs": "^17.0.8", +        "chalk": "^4.0.0" +      }, +      "engines": { +        "node": "^14.15.0 || ^16.10.0 || >=18.0.0" +      } +    },      "node_modules/@jridgewell/gen-mapping": {        "version": "0.3.3",        "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.3.tgz", @@ -1392,6 +2186,12 @@          "node": ">=8"        }      }, +    "node_modules/@sinclair/typebox": { +      "version": "0.25.24", +      "resolved": "https://registry.npmjs.org/@sinclair/typebox/-/typebox-0.25.24.tgz", +      "integrity": "sha512-XJfwUVUKDHF5ugKwIcxEgc9k8b7HbznCp6eUfWgu710hMPNIO4aw4/zB5RogDQz8nd6gyCDpU9O/m6qYEWY6yQ==", +      "dev": true +    },      "node_modules/@sindresorhus/is": {        "version": "4.6.0",        "resolved": "https://registry.npmjs.org/@sindresorhus/is/-/is-4.6.0.tgz", @@ -1403,6 +2203,24 @@          "url": "https://github.com/sindresorhus/is?sponsor=1"        }      }, +    "node_modules/@sinonjs/commons": { +      "version": "3.0.0", +      "resolved": "https://registry.npmjs.org/@sinonjs/commons/-/commons-3.0.0.tgz", +      "integrity": "sha512-jXBtWAF4vmdNmZgD5FoKsVLv3rPgDnLgPbU84LIJ3otV44vJlDRokVng5v8NFJdCf/da9legHcKaRuZs4L7faA==", +      "dev": true, +      "dependencies": { +        "type-detect": "4.0.8" +      } +    }, +    "node_modules/@sinonjs/fake-timers": { +      "version": "10.3.0", +      "resolved": "https://registry.npmjs.org/@sinonjs/fake-timers/-/fake-timers-10.3.0.tgz", +      "integrity": "sha512-V4BG07kuYSUkTCSBHG8G8TNhM+F19jXFWnQtzj+we8DrkpSBCee9Z3Ms8yiGer/dlmhe35/Xdgyo3/0rQKg7YA==", +      "dev": true, +      "dependencies": { +        "@sinonjs/commons": "^3.0.0" +      } +    },      "node_modules/@styled-icons/heroicons-outline": {        "version": "10.47.0",        "resolved": "https://registry.npmjs.org/@styled-icons/heroicons-outline/-/heroicons-outline-10.47.0.tgz", @@ -1639,6 +2457,47 @@          "node": ">= 6"        }      }, +    "node_modules/@types/babel__core": { +      "version": "7.20.1", +      "resolved": "https://registry.npmjs.org/@types/babel__core/-/babel__core-7.20.1.tgz", +      "integrity": "sha512-aACu/U/omhdk15O4Nfb+fHgH/z3QsfQzpnvRZhYhThms83ZnAOZz7zZAWO7mn2yyNQaA4xTO8GLK3uqFU4bYYw==", +      "dev": true, +      "dependencies": { +        "@babel/parser": "^7.20.7", +        "@babel/types": "^7.20.7", +        "@types/babel__generator": "*", +        "@types/babel__template": "*", +        "@types/babel__traverse": "*" +      } +    }, +    "node_modules/@types/babel__generator": { +      "version": "7.6.4", +      "resolved": "https://registry.npmjs.org/@types/babel__generator/-/babel__generator-7.6.4.tgz", +      "integrity": "sha512-tFkciB9j2K755yrTALxD44McOrk+gfpIpvC3sxHjRawj6PfnQxrse4Clq5y/Rq+G3mrBurMax/lG8Qn2t9mSsg==", +      "dev": true, +      "dependencies": { +        "@babel/types": "^7.0.0" +      } +    }, +    "node_modules/@types/babel__template": { +      "version": "7.4.1", +      "resolved": "https://registry.npmjs.org/@types/babel__template/-/babel__template-7.4.1.tgz", +      "integrity": "sha512-azBFKemX6kMg5Io+/rdGT0dkGreboUVR0Cdm3fz9QJWpaQGJRQXl7C+6hOTCZcMll7KFyEQpgbYI2lHdsS4U7g==", +      "dev": true, +      "dependencies": { +        "@babel/parser": "^7.1.0", +        "@babel/types": "^7.0.0" +      } +    }, +    "node_modules/@types/babel__traverse": { +      "version": "7.20.1", +      "resolved": "https://registry.npmjs.org/@types/babel__traverse/-/babel__traverse-7.20.1.tgz", +      "integrity": "sha512-MitHFXnhtgwsGZWtT68URpOvLN4EREih1u3QtQiN4VdAxWKRVvGCSvw/Qth0M0Qq3pJpnGOu5JaM/ydK7OGbqg==", +      "dev": true, +      "dependencies": { +        "@babel/types": "^7.20.7" +      } +    },      "node_modules/@types/cacheable-request": {        "version": "6.0.3",        "resolved": "https://registry.npmjs.org/@types/cacheable-request/-/cacheable-request-6.0.3.tgz", @@ -1668,6 +2527,15 @@          "@types/node": "*"        }      }, +    "node_modules/@types/graceful-fs": { +      "version": "4.1.6", +      "resolved": "https://registry.npmjs.org/@types/graceful-fs/-/graceful-fs-4.1.6.tgz", +      "integrity": "sha512-Sig0SNORX9fdW+bQuTEovKj3uHcUL6LQKbCrrqb1X7J6/ReAbhCXRAhc+SMejhLELFj2QcyuxmUooZ4bt5ReSw==", +      "dev": true, +      "dependencies": { +        "@types/node": "*" +      } +    },      "node_modules/@types/hast": {        "version": "2.3.4",        "resolved": "https://registry.npmjs.org/@types/hast/-/hast-2.3.4.tgz", @@ -1690,6 +2558,40 @@        "resolved": "https://registry.npmjs.org/@types/http-cache-semantics/-/http-cache-semantics-4.0.1.tgz",        "integrity": "sha512-SZs7ekbP8CN0txVG2xVRH6EgKmEm31BOxA07vkFaETzZz1xh+cbt8BcI0slpymvwhx5dlFnQG2rTlPVQn+iRPQ=="      }, +    "node_modules/@types/istanbul-lib-coverage": { +      "version": "2.0.4", +      "resolved": "https://registry.npmjs.org/@types/istanbul-lib-coverage/-/istanbul-lib-coverage-2.0.4.tgz", +      "integrity": "sha512-z/QT1XN4K4KYuslS23k62yDIDLwLFkzxOuMplDtObz0+y7VqJCaO2o+SPwHCvLFZh7xazvvoor2tA/hPz9ee7g==", +      "dev": true +    }, +    "node_modules/@types/istanbul-lib-report": { +      "version": "3.0.0", +      "resolved": "https://registry.npmjs.org/@types/istanbul-lib-report/-/istanbul-lib-report-3.0.0.tgz", +      "integrity": "sha512-plGgXAPfVKFoYfa9NpYDAkseG+g6Jr294RqeqcqDixSbU34MZVJRi/P+7Y8GDpzkEwLaGZZOpKIEmeVZNtKsrg==", +      "dev": true, +      "dependencies": { +        "@types/istanbul-lib-coverage": "*" +      } +    }, +    "node_modules/@types/istanbul-reports": { +      "version": "3.0.1", +      "resolved": "https://registry.npmjs.org/@types/istanbul-reports/-/istanbul-reports-3.0.1.tgz", +      "integrity": "sha512-c3mAZEuK0lvBp8tmuL74XRKn1+y2dcwOUpH7x4WrF6gk1GIgiluDRgMYQtw2OFcBvAJWlt6ASU3tSqxp0Uu0Aw==", +      "dev": true, +      "dependencies": { +        "@types/istanbul-lib-report": "*" +      } +    }, +    "node_modules/@types/jest": { +      "version": "29.5.2", +      "resolved": "https://registry.npmjs.org/@types/jest/-/jest-29.5.2.tgz", +      "integrity": "sha512-mSoZVJF5YzGVCk+FsDxzDuH7s+SCkzrgKZzf0Z0T2WudhBUPoF6ktoTPC4R0ZoCPCV5xUvuU6ias5NvxcBcMMg==", +      "dev": true, +      "dependencies": { +        "expect": "^29.0.0", +        "pretty-format": "^29.0.0" +      } +    },      "node_modules/@types/json-schema": {        "version": "7.0.11",        "resolved": "https://registry.npmjs.org/@types/json-schema/-/json-schema-7.0.11.tgz", @@ -1813,6 +2715,12 @@        "integrity": "sha512-21cFJr9z3g5dW8B0CVI9g2O9beqaThGQ6ZFBqHfwhzLDKUxaqTIy3vnfah/UPkfOiF2pLq+tGz+W8RyCskuslw==",        "dev": true      }, +    "node_modules/@types/stack-utils": { +      "version": "2.0.1", +      "resolved": "https://registry.npmjs.org/@types/stack-utils/-/stack-utils-2.0.1.tgz", +      "integrity": "sha512-Hl219/BT5fLAaz6NDkSuhzasy49dwQS/DSdu4MdggFB8zcXv7vflBI3xp7FEmkmdDkBUI2bPUNeMttp2knYdxw==", +      "dev": true +    },      "node_modules/@types/styled-components": {        "version": "5.1.26",        "resolved": "https://registry.npmjs.org/@types/styled-components/-/styled-components-5.1.26.tgz", @@ -1835,9 +2743,9 @@        "integrity": "sha512-EwmlvuaxPNej9+T4v5AuBPJa2x2UOJVdjCtDHgcDqitUeOtjnJKJ+apYjVcAoBEMjKW1VVFGZLUb5+qqa09XFA=="      },      "node_modules/@types/vscode": { -      "version": "1.60.0", -      "resolved": "https://registry.npmjs.org/@types/vscode/-/vscode-1.60.0.tgz", -      "integrity": "sha512-wZt3VTmzYrgZ0l/3QmEbCq4KAJ71K3/hmMQ/nfpv84oH8e81KKwPEoQ5v8dNCxfHFVJ1JabHKmCvqdYOoVm1Ow==", +      "version": "1.67.0", +      "resolved": "https://registry.npmjs.org/@types/vscode/-/vscode-1.67.0.tgz", +      "integrity": "sha512-GH8BDf8cw9AC9080uneJfulhSa7KHSMI2s/CyKePXoGNos9J486w2V4YKoeNUqIEkW4hKoEAWp6/cXTwyGj47g==",        "dev": true      },      "node_modules/@types/ws": { @@ -1849,6 +2757,21 @@          "@types/node": "*"        }      }, +    "node_modules/@types/yargs": { +      "version": "17.0.24", +      "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-17.0.24.tgz", +      "integrity": "sha512-6i0aC7jV6QzQB8ne1joVZ0eSFIstHsCrobmOtghM11yGlH0j43FKL2UhWdELkyps0zuf7qVTUVCCR+tgSlyLLw==", +      "dev": true, +      "dependencies": { +        "@types/yargs-parser": "*" +      } +    }, +    "node_modules/@types/yargs-parser": { +      "version": "21.0.0", +      "resolved": "https://registry.npmjs.org/@types/yargs-parser/-/yargs-parser-21.0.0.tgz", +      "integrity": "sha512-iO9ZQHkZxHn4mSakYV0vFHAVDyEOIJQrV2uZ06HxEPcx+mt8swXoZHIbaaJ2crJYFfErySgktuTZ3BeLz+XmFA==", +      "dev": true +    },      "node_modules/@typescript-eslint/eslint-plugin": {        "version": "5.48.2",        "resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-5.48.2.tgz", @@ -2304,6 +3227,58 @@          "typed-rest-client": "^1.8.4"        }      }, +    "node_modules/babel-jest": { +      "version": "29.5.0", +      "resolved": "https://registry.npmjs.org/babel-jest/-/babel-jest-29.5.0.tgz", +      "integrity": "sha512-mA4eCDh5mSo2EcA9xQjVTpmbbNk32Zb3Q3QFQsNhaK56Q+yoXowzFodLux30HRgyOho5rsQ6B0P9QpMkvvnJ0Q==", +      "dev": true, +      "dependencies": { +        "@jest/transform": "^29.5.0", +        "@types/babel__core": "^7.1.14", +        "babel-plugin-istanbul": "^6.1.1", +        "babel-preset-jest": "^29.5.0", +        "chalk": "^4.0.0", +        "graceful-fs": "^4.2.9", +        "slash": "^3.0.0" +      }, +      "engines": { +        "node": "^14.15.0 || ^16.10.0 || >=18.0.0" +      }, +      "peerDependencies": { +        "@babel/core": "^7.8.0" +      } +    }, +    "node_modules/babel-plugin-istanbul": { +      "version": "6.1.1", +      "resolved": "https://registry.npmjs.org/babel-plugin-istanbul/-/babel-plugin-istanbul-6.1.1.tgz", +      "integrity": "sha512-Y1IQok9821cC9onCx5otgFfRm7Lm+I+wwxOx738M/WLPZ9Q42m4IG5W0FNX8WLL2gYMZo3JkuXIH2DOpWM+qwA==", +      "dev": true, +      "dependencies": { +        "@babel/helper-plugin-utils": "^7.0.0", +        "@istanbuljs/load-nyc-config": "^1.0.0", +        "@istanbuljs/schema": "^0.1.2", +        "istanbul-lib-instrument": "^5.0.4", +        "test-exclude": "^6.0.0" +      }, +      "engines": { +        "node": ">=8" +      } +    }, +    "node_modules/babel-plugin-jest-hoist": { +      "version": "29.5.0", +      "resolved": "https://registry.npmjs.org/babel-plugin-jest-hoist/-/babel-plugin-jest-hoist-29.5.0.tgz", +      "integrity": "sha512-zSuuuAlTMT4mzLj2nPnUm6fsE6270vdOfnpbJ+RmruU75UhLFvL0N2NgI7xpeS7NaB6hGqmd5pVpGTDYvi4Q3w==", +      "dev": true, +      "dependencies": { +        "@babel/template": "^7.3.3", +        "@babel/types": "^7.3.3", +        "@types/babel__core": "^7.1.14", +        "@types/babel__traverse": "^7.0.6" +      }, +      "engines": { +        "node": "^14.15.0 || ^16.10.0 || >=18.0.0" +      } +    },      "node_modules/babel-plugin-styled-components": {        "version": "2.1.1",        "resolved": "https://registry.npmjs.org/babel-plugin-styled-components/-/babel-plugin-styled-components-2.1.1.tgz", @@ -2326,6 +3301,45 @@        "integrity": "sha512-qrPaCSo9c8RHNRHIotaufGbuOBN8rtdC4QrrFFc43vyWCCz7Kl7GL1PGaXtMGQZUXrkCjNEgxDfmAuAabr/rlw==",        "peer": true      }, +    "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": "29.5.0", +      "resolved": "https://registry.npmjs.org/babel-preset-jest/-/babel-preset-jest-29.5.0.tgz", +      "integrity": "sha512-JOMloxOqdiBSxMAzjRaH023/vvcaSaec49zvg+2LmNsktC7ei39LTJGw02J+9uUtTZUq6xbLyJ4dxe9sSmIuAg==", +      "dev": true, +      "dependencies": { +        "babel-plugin-jest-hoist": "^29.5.0", +        "babel-preset-current-node-syntax": "^1.0.0" +      }, +      "engines": { +        "node": "^14.15.0 || ^16.10.0 || >=18.0.0" +      }, +      "peerDependencies": { +        "@babel/core": "^7.0.0" +      } +    },      "node_modules/bail": {        "version": "2.0.2",        "resolved": "https://registry.npmjs.org/bail/-/bail-2.0.2.tgz", @@ -2450,6 +3464,59 @@        "integrity": "sha512-qhAVI1+Av2X7qelOfAIYwXONood6XlZE/fXaBSmW/T5SzLAmCgzi+eiWE7fUvbHaeNBQH13UftjpXxsfLkMpgw==",        "dev": true      }, +    "node_modules/browserslist": { +      "version": "4.21.9", +      "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.21.9.tgz", +      "integrity": "sha512-M0MFoZzbUrRU4KNfCrDLnvyE7gub+peetoTid3TBIqtunaDJyXlwhakT+/VkvSXcfIzFfK/nkCs4nmyTmxdNSg==", +      "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" +        } +      ], +      "dependencies": { +        "caniuse-lite": "^1.0.30001503", +        "electron-to-chromium": "^1.4.431", +        "node-releases": "^2.0.12", +        "update-browserslist-db": "^1.0.11" +      }, +      "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, +      "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": {        "version": "5.7.1",        "resolved": "https://registry.npmjs.org/buffer/-/buffer-5.7.1.tgz", @@ -2482,6 +3549,12 @@          "node": "*"        }      }, +    "node_modules/buffer-from": { +      "version": "1.1.2", +      "resolved": "https://registry.npmjs.org/buffer-from/-/buffer-from-1.1.2.tgz", +      "integrity": "sha512-E+XQCRwSbaaiChtv6k6Dwgc+bx+Bs6vuKJHHl5kox/BaKbhiXzqQOwK4cO22yElGp2OCmjwVhT3HmxgyPGnJfQ==", +      "dev": true +    },      "node_modules/buffer-indexof-polyfill": {        "version": "1.0.2",        "resolved": "https://registry.npmjs.org/buffer-indexof-polyfill/-/buffer-indexof-polyfill-1.0.2.tgz", @@ -2629,6 +3702,26 @@          "url": "https://github.com/sponsors/ljharb"        }      }, +    "node_modules/caniuse-lite": { +      "version": "1.0.30001511", +      "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001511.tgz", +      "integrity": "sha512-NaWPJawcoedlghN4P7bDNeADD7K+rZaY6V8ZcME7PkEZo/nfOg+lnrUgRWiKbNxcQ4/toFKSxnS4WdbyPZnKkw==", +      "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" +        } +      ] +    },      "node_modules/chainsaw": {        "version": "0.1.0",        "resolved": "https://registry.npmjs.org/chainsaw/-/chainsaw-0.1.0.tgz", @@ -2656,6 +3749,15 @@          "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/character-entities": {        "version": "2.0.2",        "resolved": "https://registry.npmjs.org/character-entities/-/character-entities-2.0.2.tgz", @@ -2754,6 +3856,27 @@          "node": ">=10"        }      }, +    "node_modules/ci-info": { +      "version": "3.8.0", +      "resolved": "https://registry.npmjs.org/ci-info/-/ci-info-3.8.0.tgz", +      "integrity": "sha512-eXTggHWSooYhq49F2opQhuHWgzucfF2YgODK4e1566GQs5BIfP30B0oenwBJHfWxAs2fyPB1s7Mg949zLf61Yw==", +      "dev": true, +      "funding": [ +        { +          "type": "github", +          "url": "https://github.com/sponsors/sibiraj-s" +        } +      ], +      "engines": { +        "node": ">=8" +      } +    }, +    "node_modules/cjs-module-lexer": { +      "version": "1.2.3", +      "resolved": "https://registry.npmjs.org/cjs-module-lexer/-/cjs-module-lexer-1.2.3.tgz", +      "integrity": "sha512-0TNiGstbQmCFwt4akjjBg5pLRTSyj/PkWQ1ZoO2zntmg9yLqSRxwEa4iCfQLGjqhiqBfOJa7W/E8wfGrTDmlZQ==", +      "dev": true +    },      "node_modules/clean-stack": {        "version": "2.2.0",        "resolved": "https://registry.npmjs.org/clean-stack/-/clean-stack-2.2.0.tgz", @@ -2860,6 +3983,22 @@          "url": "https://github.com/sponsors/sindresorhus"        }      }, +    "node_modules/co": { +      "version": "4.6.0", +      "resolved": "https://registry.npmjs.org/co/-/co-4.6.0.tgz", +      "integrity": "sha512-QVb0dM5HvG+uaxitm8wONl7jltx8dqhfU33DcqtOZcLSVIKSDDLDi7+0LbAKiyI8hD9u42m2YxXSkMGWThaecQ==", +      "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", @@ -3001,6 +4140,12 @@          "node": "> 0.10"        }      }, +    "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 +    },      "node_modules/cookie": {        "version": "0.4.2",        "resolved": "https://registry.npmjs.org/cookie/-/cookie-0.4.2.tgz", @@ -3180,6 +4325,12 @@          "url": "https://github.com/sponsors/sindresorhus"        }      }, +    "node_modules/dedent": { +      "version": "0.7.0", +      "resolved": "https://registry.npmjs.org/dedent/-/dedent-0.7.0.tgz", +      "integrity": "sha512-Q6fKUPqnAHAyhiUgFU7BUzLiv0kd8saH9al7tnu5Q/okj6dnupxyTgFIBjVzJATdfIAm9NAsvXNzjaKa+bxVyA==", +      "dev": true +    },      "node_modules/deep-extend": {        "version": "0.6.0",        "resolved": "https://registry.npmjs.org/deep-extend/-/deep-extend-0.6.0.tgz", @@ -3195,6 +4346,15 @@        "integrity": "sha512-oIPzksmTg4/MriiaYGO+okXDT7ztn/w3Eptv/+gSIdMdKsJo0u4CfYNFJPy+4SKMuCqGw2wxnA+URMg3t8a/bQ==",        "dev": true      }, +    "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, +      "engines": { +        "node": ">=0.10.0" +      } +    },      "node_modules/defaults": {        "version": "1.0.4",        "resolved": "https://registry.npmjs.org/defaults/-/defaults-1.0.4.tgz", @@ -3251,6 +4411,15 @@          "node": ">=8"        }      }, +    "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/didyoumean": {        "version": "1.2.2",        "resolved": "https://registry.npmjs.org/didyoumean/-/didyoumean-1.2.2.tgz", @@ -3264,6 +4433,15 @@          "node": ">=0.3.1"        }      }, +    "node_modules/diff-sequences": { +      "version": "29.4.3", +      "resolved": "https://registry.npmjs.org/diff-sequences/-/diff-sequences-29.4.3.tgz", +      "integrity": "sha512-ofrBgwpPhCD85kMKtE9RYFFq6OC1A89oW2vvgWZNCwxrUpRUILopY7lsYyMDSjc8g6U6aiO0Qubg6r4Wgt5ZnA==", +      "dev": true, +      "engines": { +        "node": "^14.15.0 || ^16.10.0 || >=18.0.0" +      } +    },      "node_modules/dir-glob": {        "version": "3.0.1",        "resolved": "https://registry.npmjs.org/dir-glob/-/dir-glob-3.0.1.tgz", @@ -3399,6 +4577,24 @@          "wcwidth": ">=1.0.1"        }      }, +    "node_modules/electron-to-chromium": { +      "version": "1.4.449", +      "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.449.tgz", +      "integrity": "sha512-TxLRpRUj/107ATefeP8VIUWNOv90xJxZZbCW/eIbSZQiuiFANCx2b7u+GbVc9X4gU+xnbvypNMYVM/WArE1DNQ==", +      "dev": true +    }, +    "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, +      "engines": { +        "node": ">=12" +      }, +      "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", @@ -3446,6 +4642,15 @@        "resolved": "https://registry.npmjs.org/err-code/-/err-code-2.0.3.tgz",        "integrity": "sha512-2bmlRpNKBxT/CRmPOlyISQpNj+qSeYvcym/uT0Jx2bMOlKLtSy1ZmLuVxSEKKyor/N5yhvp/ZiG1oE3DEYMSFA=="      }, +    "node_modules/error-ex": { +      "version": "1.3.2", +      "resolved": "https://registry.npmjs.org/error-ex/-/error-ex-1.3.2.tgz", +      "integrity": "sha512-7dFHNmqeFSEt2ZBsCriorKnn3Z2pj+fd9kmI6QoWw4//DL+icEBfc0U7qJCisqrTsKTjw4fNFy2pW9OqStD84g==", +      "dev": true, +      "dependencies": { +        "is-arrayish": "^0.2.1" +      } +    },      "node_modules/es5-ext": {        "version": "0.10.62",        "resolved": "https://registry.npmjs.org/es5-ext/-/es5-ext-0.10.62.tgz", @@ -3715,6 +4920,19 @@          "url": "https://opencollective.com/eslint"        }      }, +    "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/esquery": {        "version": "1.4.0",        "resolved": "https://registry.npmjs.org/esquery/-/esquery-1.4.0.tgz", @@ -3818,6 +5036,15 @@          "url": "https://github.com/sponsors/sindresorhus"        }      }, +    "node_modules/exit": { +      "version": "0.1.2", +      "resolved": "https://registry.npmjs.org/exit/-/exit-0.1.2.tgz", +      "integrity": "sha512-Zk/eNKV2zbjpKzrsQ+n1G6poVbErQxJ0LBOJXaKZ1EViLzH+hrLu9cdXI4zw9dBQJslwBEpbQ2P1oS7nDxs6jQ==", +      "dev": true, +      "engines": { +        "node": ">= 0.8.0" +      } +    },      "node_modules/expand-template": {        "version": "2.0.3",        "resolved": "https://registry.npmjs.org/expand-template/-/expand-template-2.0.3.tgz", @@ -3827,6 +5054,22 @@          "node": ">=6"        }      }, +    "node_modules/expect": { +      "version": "29.5.0", +      "resolved": "https://registry.npmjs.org/expect/-/expect-29.5.0.tgz", +      "integrity": "sha512-yM7xqUrCO2JdpFo4XpM82t+PJBFybdqoQuJLDGeDX2ij8NZzqRHyu3Hp188/JX7SWqud+7t4MUdvcgGBICMHZg==", +      "dev": true, +      "dependencies": { +        "@jest/expect-utils": "^29.5.0", +        "jest-get-type": "^29.4.3", +        "jest-matcher-utils": "^29.5.0", +        "jest-message-util": "^29.5.0", +        "jest-util": "^29.5.0" +      }, +      "engines": { +        "node": "^14.15.0 || ^16.10.0 || >=18.0.0" +      } +    },      "node_modules/ext": {        "version": "1.7.0",        "resolved": "https://registry.npmjs.org/ext/-/ext-1.7.0.tgz", @@ -3943,6 +5186,15 @@          "reusify": "^1.0.4"        }      }, +    "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, +      "dependencies": { +        "bser": "2.1.1" +      } +    },      "node_modules/fd-slicer": {        "version": "1.1.0",        "resolved": "https://registry.npmjs.org/fd-slicer/-/fd-slicer-1.1.0.tgz", @@ -4287,6 +5539,15 @@          "node": ">=8"        }      }, +    "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", @@ -4309,6 +5570,15 @@          "url": "https://github.com/sponsors/ljharb"        }      }, +    "node_modules/get-package-type": { +      "version": "0.1.0", +      "resolved": "https://registry.npmjs.org/get-package-type/-/get-package-type-0.1.0.tgz", +      "integrity": "sha512-pjzuKtY64GYfWizNAJ0fr9VqttZkNiK2iS430LtIHzjBEr6bX8Am2zm4sW4Ro5wjWW5cAlRL1qAMTcXbjNAO2Q==", +      "dev": true, +      "engines": { +        "node": ">=8.0.0" +      } +    },      "node_modules/get-stdin": {        "version": "8.0.0",        "resolved": "https://registry.npmjs.org/get-stdin/-/get-stdin-8.0.0.tgz", @@ -4546,6 +5816,12 @@          "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/htmlparser2": {        "version": "8.0.1",        "resolved": "https://registry.npmjs.org/htmlparser2/-/htmlparser2-8.0.1.tgz", @@ -4689,6 +5965,25 @@          "url": "https://github.com/sponsors/sindresorhus"        }      }, +    "node_modules/import-local": { +      "version": "3.1.0", +      "resolved": "https://registry.npmjs.org/import-local/-/import-local-3.1.0.tgz", +      "integrity": "sha512-ASB07uLtnDs1o6EHjKpX34BKYDSqnFerfTOJL2HvMqF70LnxpjkzDB8J44oT9pu4AMPkQwf8jl6szgvNd2tRIg==", +      "dev": true, +      "dependencies": { +        "pkg-dir": "^4.2.0", +        "resolve-cwd": "^3.0.0" +      }, +      "bin": { +        "import-local-fixture": "fixtures/cli.js" +      }, +      "engines": { +        "node": ">=8" +      }, +      "funding": { +        "url": "https://github.com/sponsors/sindresorhus" +      } +    },      "node_modules/imurmurhash": {        "version": "0.1.4",        "resolved": "https://registry.npmjs.org/imurmurhash/-/imurmurhash-0.1.4.tgz", @@ -4787,6 +6082,12 @@        "resolved": "https://registry.npmjs.org/ip/-/ip-2.0.0.tgz",        "integrity": "sha512-WKa+XuLG1A1R0UWhl2+1XQSi+fZWMsYKffMZTTYsiZaUD8k2yDAj5atimTUD2TZkyCkNEeYE5NhFZmupOGtjYQ=="      }, +    "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 +    },      "node_modules/is-binary-path": {        "version": "2.1.0",        "resolved": "https://registry.npmjs.org/is-binary-path/-/is-binary-path-2.1.0.tgz", @@ -4847,6 +6148,15 @@          "node": ">=8"        }      }, +    "node_modules/is-generator-fn": { +      "version": "2.1.0", +      "resolved": "https://registry.npmjs.org/is-generator-fn/-/is-generator-fn-2.1.0.tgz", +      "integrity": "sha512-cTIB4yPYL/Grw0EaSzASzg6bBy9gqCofvWN8okThAYIxKJZC+udlRAmGbM0XLeniEJSs8uEgHPGuHSe1XsOLSQ==", +      "dev": true, +      "engines": { +        "node": ">=6" +      } +    },      "node_modules/is-glob": {        "version": "4.0.3",        "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.3.tgz", @@ -4936,6 +6246,81 @@        "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz",        "integrity": "sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw=="      }, +    "node_modules/istanbul-lib-coverage": { +      "version": "3.2.0", +      "resolved": "https://registry.npmjs.org/istanbul-lib-coverage/-/istanbul-lib-coverage-3.2.0.tgz", +      "integrity": "sha512-eOeJ5BHCmHYvQK7xt9GkdHuzuCGS1Y6g9Gvnx3Ym33fz/HpLRYxiS0wHNr+m/MBC8B647Xt608vCDEvhl9c6Mw==", +      "dev": true, +      "engines": { +        "node": ">=8" +      } +    }, +    "node_modules/istanbul-lib-instrument": { +      "version": "5.2.1", +      "resolved": "https://registry.npmjs.org/istanbul-lib-instrument/-/istanbul-lib-instrument-5.2.1.tgz", +      "integrity": "sha512-pzqtp31nLv/XFOzXGuvhCb8qhjmTVo5vjVk19XE4CRlSWz0KoeJ3bw9XsA7nOp9YBf4qHjwBxkDzKcME/J29Yg==", +      "dev": true, +      "dependencies": { +        "@babel/core": "^7.12.3", +        "@babel/parser": "^7.14.7", +        "@istanbuljs/schema": "^0.1.2", +        "istanbul-lib-coverage": "^3.2.0", +        "semver": "^6.3.0" +      }, +      "engines": { +        "node": ">=8" +      } +    }, +    "node_modules/istanbul-lib-instrument/node_modules/semver": { +      "version": "6.3.0", +      "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", +      "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", +      "dev": true, +      "bin": { +        "semver": "bin/semver.js" +      } +    }, +    "node_modules/istanbul-lib-report": { +      "version": "3.0.0", +      "resolved": "https://registry.npmjs.org/istanbul-lib-report/-/istanbul-lib-report-3.0.0.tgz", +      "integrity": "sha512-wcdi+uAKzfiGT2abPpKZ0hSU1rGQjUQnLvtY5MpQ7QCTahD3VODhcu4wcfY1YtkGaDD5yuydOLINXsfbus9ROw==", +      "dev": true, +      "dependencies": { +        "istanbul-lib-coverage": "^3.0.0", +        "make-dir": "^3.0.0", +        "supports-color": "^7.1.0" +      }, +      "engines": { +        "node": ">=8" +      } +    }, +    "node_modules/istanbul-lib-source-maps": { +      "version": "4.0.1", +      "resolved": "https://registry.npmjs.org/istanbul-lib-source-maps/-/istanbul-lib-source-maps-4.0.1.tgz", +      "integrity": "sha512-n3s8EwkdFIJCG3BPKBYvskgXGoy88ARzvegkitk60NxRdwltLOTaH7CUiMRXvwYorl0Q712iEjcWB+fK/MrWVw==", +      "dev": true, +      "dependencies": { +        "debug": "^4.1.1", +        "istanbul-lib-coverage": "^3.0.0", +        "source-map": "^0.6.1" +      }, +      "engines": { +        "node": ">=10" +      } +    }, +    "node_modules/istanbul-reports": { +      "version": "3.1.5", +      "resolved": "https://registry.npmjs.org/istanbul-reports/-/istanbul-reports-3.1.5.tgz", +      "integrity": "sha512-nUsEMa9pBt/NOHqbcbeJEgqIlY/K7rVWUX6Lql2orY5e9roQOthbR3vtY4zzf2orPELg80fnxxk9zUyPlgwD1w==", +      "dev": true, +      "dependencies": { +        "html-escaper": "^2.0.0", +        "istanbul-lib-report": "^3.0.0" +      }, +      "engines": { +        "node": ">=8" +      } +    },      "node_modules/iterare": {        "version": "1.2.1",        "resolved": "https://registry.npmjs.org/iterare/-/iterare-1.2.1.tgz", @@ -4944,6 +6329,654 @@          "node": ">=6"        }      }, +    "node_modules/jest": { +      "version": "29.5.0", +      "resolved": "https://registry.npmjs.org/jest/-/jest-29.5.0.tgz", +      "integrity": "sha512-juMg3he2uru1QoXX078zTa7pO85QyB9xajZc6bU+d9yEGwrKX6+vGmJQ3UdVZsvTEUARIdObzH68QItim6OSSQ==", +      "dev": true, +      "dependencies": { +        "@jest/core": "^29.5.0", +        "@jest/types": "^29.5.0", +        "import-local": "^3.0.2", +        "jest-cli": "^29.5.0" +      }, +      "bin": { +        "jest": "bin/jest.js" +      }, +      "engines": { +        "node": "^14.15.0 || ^16.10.0 || >=18.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": "29.5.0", +      "resolved": "https://registry.npmjs.org/jest-changed-files/-/jest-changed-files-29.5.0.tgz", +      "integrity": "sha512-IFG34IUMUaNBIxjQXF/iu7g6EcdMrGRRxaUSw92I/2g2YC6vCdTltl4nHvt7Ci5nSJwXIkCu8Ka1DKF+X7Z1Ag==", +      "dev": true, +      "dependencies": { +        "execa": "^5.0.0", +        "p-limit": "^3.1.0" +      }, +      "engines": { +        "node": "^14.15.0 || ^16.10.0 || >=18.0.0" +      } +    }, +    "node_modules/jest-circus": { +      "version": "29.5.0", +      "resolved": "https://registry.npmjs.org/jest-circus/-/jest-circus-29.5.0.tgz", +      "integrity": "sha512-gq/ongqeQKAplVxqJmbeUOJJKkW3dDNPY8PjhJ5G0lBRvu0e3EWGxGy5cI4LAGA7gV2UHCtWBI4EMXK8c9nQKA==", +      "dev": true, +      "dependencies": { +        "@jest/environment": "^29.5.0", +        "@jest/expect": "^29.5.0", +        "@jest/test-result": "^29.5.0", +        "@jest/types": "^29.5.0", +        "@types/node": "*", +        "chalk": "^4.0.0", +        "co": "^4.6.0", +        "dedent": "^0.7.0", +        "is-generator-fn": "^2.0.0", +        "jest-each": "^29.5.0", +        "jest-matcher-utils": "^29.5.0", +        "jest-message-util": "^29.5.0", +        "jest-runtime": "^29.5.0", +        "jest-snapshot": "^29.5.0", +        "jest-util": "^29.5.0", +        "p-limit": "^3.1.0", +        "pretty-format": "^29.5.0", +        "pure-rand": "^6.0.0", +        "slash": "^3.0.0", +        "stack-utils": "^2.0.3" +      }, +      "engines": { +        "node": "^14.15.0 || ^16.10.0 || >=18.0.0" +      } +    }, +    "node_modules/jest-cli": { +      "version": "29.5.0", +      "resolved": "https://registry.npmjs.org/jest-cli/-/jest-cli-29.5.0.tgz", +      "integrity": "sha512-L1KcP1l4HtfwdxXNFCL5bmUbLQiKrakMUriBEcc1Vfz6gx31ORKdreuWvmQVBit+1ss9NNR3yxjwfwzZNdQXJw==", +      "dev": true, +      "dependencies": { +        "@jest/core": "^29.5.0", +        "@jest/test-result": "^29.5.0", +        "@jest/types": "^29.5.0", +        "chalk": "^4.0.0", +        "exit": "^0.1.2", +        "graceful-fs": "^4.2.9", +        "import-local": "^3.0.2", +        "jest-config": "^29.5.0", +        "jest-util": "^29.5.0", +        "jest-validate": "^29.5.0", +        "prompts": "^2.0.1", +        "yargs": "^17.3.1" +      }, +      "bin": { +        "jest": "bin/jest.js" +      }, +      "engines": { +        "node": "^14.15.0 || ^16.10.0 || >=18.0.0" +      }, +      "peerDependencies": { +        "node-notifier": "^8.0.1 || ^9.0.0 || ^10.0.0" +      }, +      "peerDependenciesMeta": { +        "node-notifier": { +          "optional": true +        } +      } +    }, +    "node_modules/jest-cli/node_modules/ansi-regex": { +      "version": "5.0.1", +      "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", +      "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", +      "dev": true, +      "engines": { +        "node": ">=8" +      } +    }, +    "node_modules/jest-cli/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, +      "dependencies": { +        "string-width": "^4.2.0", +        "strip-ansi": "^6.0.1", +        "wrap-ansi": "^7.0.0" +      }, +      "engines": { +        "node": ">=12" +      } +    }, +    "node_modules/jest-cli/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/jest-cli/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, +      "dependencies": { +        "cliui": "^8.0.1", +        "escalade": "^3.1.1", +        "get-caller-file": "^2.0.5", +        "require-directory": "^2.1.1", +        "string-width": "^4.2.3", +        "y18n": "^5.0.5", +        "yargs-parser": "^21.1.1" +      }, +      "engines": { +        "node": ">=12" +      } +    }, +    "node_modules/jest-cli/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, +      "engines": { +        "node": ">=12" +      } +    }, +    "node_modules/jest-config": { +      "version": "29.5.0", +      "resolved": "https://registry.npmjs.org/jest-config/-/jest-config-29.5.0.tgz", +      "integrity": "sha512-kvDUKBnNJPNBmFFOhDbm59iu1Fii1Q6SxyhXfvylq3UTHbg6o7j/g8k2dZyXWLvfdKB1vAPxNZnMgtKJcmu3kA==", +      "dev": true, +      "dependencies": { +        "@babel/core": "^7.11.6", +        "@jest/test-sequencer": "^29.5.0", +        "@jest/types": "^29.5.0", +        "babel-jest": "^29.5.0", +        "chalk": "^4.0.0", +        "ci-info": "^3.2.0", +        "deepmerge": "^4.2.2", +        "glob": "^7.1.3", +        "graceful-fs": "^4.2.9", +        "jest-circus": "^29.5.0", +        "jest-environment-node": "^29.5.0", +        "jest-get-type": "^29.4.3", +        "jest-regex-util": "^29.4.3", +        "jest-resolve": "^29.5.0", +        "jest-runner": "^29.5.0", +        "jest-util": "^29.5.0", +        "jest-validate": "^29.5.0", +        "micromatch": "^4.0.4", +        "parse-json": "^5.2.0", +        "pretty-format": "^29.5.0", +        "slash": "^3.0.0", +        "strip-json-comments": "^3.1.1" +      }, +      "engines": { +        "node": "^14.15.0 || ^16.10.0 || >=18.0.0" +      }, +      "peerDependencies": { +        "@types/node": "*", +        "ts-node": ">=9.0.0" +      }, +      "peerDependenciesMeta": { +        "@types/node": { +          "optional": true +        }, +        "ts-node": { +          "optional": true +        } +      } +    }, +    "node_modules/jest-config/node_modules/glob": { +      "version": "7.2.3", +      "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.3.tgz", +      "integrity": "sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==", +      "dev": true, +      "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/jest-diff": { +      "version": "29.5.0", +      "resolved": "https://registry.npmjs.org/jest-diff/-/jest-diff-29.5.0.tgz", +      "integrity": "sha512-LtxijLLZBduXnHSniy0WMdaHjmQnt3g5sa16W4p0HqukYTTsyTW3GD1q41TyGl5YFXj/5B2U6dlh5FM1LIMgxw==", +      "dev": true, +      "dependencies": { +        "chalk": "^4.0.0", +        "diff-sequences": "^29.4.3", +        "jest-get-type": "^29.4.3", +        "pretty-format": "^29.5.0" +      }, +      "engines": { +        "node": "^14.15.0 || ^16.10.0 || >=18.0.0" +      } +    }, +    "node_modules/jest-docblock": { +      "version": "29.4.3", +      "resolved": "https://registry.npmjs.org/jest-docblock/-/jest-docblock-29.4.3.tgz", +      "integrity": "sha512-fzdTftThczeSD9nZ3fzA/4KkHtnmllawWrXO69vtI+L9WjEIuXWs4AmyME7lN5hU7dB0sHhuPfcKofRsUb/2Fg==", +      "dev": true, +      "dependencies": { +        "detect-newline": "^3.0.0" +      }, +      "engines": { +        "node": "^14.15.0 || ^16.10.0 || >=18.0.0" +      } +    }, +    "node_modules/jest-each": { +      "version": "29.5.0", +      "resolved": "https://registry.npmjs.org/jest-each/-/jest-each-29.5.0.tgz", +      "integrity": "sha512-HM5kIJ1BTnVt+DQZ2ALp3rzXEl+g726csObrW/jpEGl+CDSSQpOJJX2KE/vEg8cxcMXdyEPu6U4QX5eruQv5hA==", +      "dev": true, +      "dependencies": { +        "@jest/types": "^29.5.0", +        "chalk": "^4.0.0", +        "jest-get-type": "^29.4.3", +        "jest-util": "^29.5.0", +        "pretty-format": "^29.5.0" +      }, +      "engines": { +        "node": "^14.15.0 || ^16.10.0 || >=18.0.0" +      } +    }, +    "node_modules/jest-environment-node": { +      "version": "29.5.0", +      "resolved": "https://registry.npmjs.org/jest-environment-node/-/jest-environment-node-29.5.0.tgz", +      "integrity": "sha512-ExxuIK/+yQ+6PRGaHkKewYtg6hto2uGCgvKdb2nfJfKXgZ17DfXjvbZ+jA1Qt9A8EQSfPnt5FKIfnOO3u1h9qw==", +      "dev": true, +      "dependencies": { +        "@jest/environment": "^29.5.0", +        "@jest/fake-timers": "^29.5.0", +        "@jest/types": "^29.5.0", +        "@types/node": "*", +        "jest-mock": "^29.5.0", +        "jest-util": "^29.5.0" +      }, +      "engines": { +        "node": "^14.15.0 || ^16.10.0 || >=18.0.0" +      } +    }, +    "node_modules/jest-get-type": { +      "version": "29.4.3", +      "resolved": "https://registry.npmjs.org/jest-get-type/-/jest-get-type-29.4.3.tgz", +      "integrity": "sha512-J5Xez4nRRMjk8emnTpWrlkyb9pfRQQanDrvWHhsR1+VUfbwxi30eVcZFlcdGInRibU4G5LwHXpI7IRHU0CY+gg==", +      "dev": true, +      "engines": { +        "node": "^14.15.0 || ^16.10.0 || >=18.0.0" +      } +    }, +    "node_modules/jest-haste-map": { +      "version": "29.5.0", +      "resolved": "https://registry.npmjs.org/jest-haste-map/-/jest-haste-map-29.5.0.tgz", +      "integrity": "sha512-IspOPnnBro8YfVYSw6yDRKh/TiCdRngjxeacCps1cQ9cgVN6+10JUcuJ1EabrgYLOATsIAigxA0rLR9x/YlrSA==", +      "dev": true, +      "dependencies": { +        "@jest/types": "^29.5.0", +        "@types/graceful-fs": "^4.1.3", +        "@types/node": "*", +        "anymatch": "^3.0.3", +        "fb-watchman": "^2.0.0", +        "graceful-fs": "^4.2.9", +        "jest-regex-util": "^29.4.3", +        "jest-util": "^29.5.0", +        "jest-worker": "^29.5.0", +        "micromatch": "^4.0.4", +        "walker": "^1.0.8" +      }, +      "engines": { +        "node": "^14.15.0 || ^16.10.0 || >=18.0.0" +      }, +      "optionalDependencies": { +        "fsevents": "^2.3.2" +      } +    }, +    "node_modules/jest-leak-detector": { +      "version": "29.5.0", +      "resolved": "https://registry.npmjs.org/jest-leak-detector/-/jest-leak-detector-29.5.0.tgz", +      "integrity": "sha512-u9YdeeVnghBUtpN5mVxjID7KbkKE1QU4f6uUwuxiY0vYRi9BUCLKlPEZfDGR67ofdFmDz9oPAy2G92Ujrntmow==", +      "dev": true, +      "dependencies": { +        "jest-get-type": "^29.4.3", +        "pretty-format": "^29.5.0" +      }, +      "engines": { +        "node": "^14.15.0 || ^16.10.0 || >=18.0.0" +      } +    }, +    "node_modules/jest-matcher-utils": { +      "version": "29.5.0", +      "resolved": "https://registry.npmjs.org/jest-matcher-utils/-/jest-matcher-utils-29.5.0.tgz", +      "integrity": "sha512-lecRtgm/rjIK0CQ7LPQwzCs2VwW6WAahA55YBuI+xqmhm7LAaxokSB8C97yJeYyT+HvQkH741StzpU41wohhWw==", +      "dev": true, +      "dependencies": { +        "chalk": "^4.0.0", +        "jest-diff": "^29.5.0", +        "jest-get-type": "^29.4.3", +        "pretty-format": "^29.5.0" +      }, +      "engines": { +        "node": "^14.15.0 || ^16.10.0 || >=18.0.0" +      } +    }, +    "node_modules/jest-message-util": { +      "version": "29.5.0", +      "resolved": "https://registry.npmjs.org/jest-message-util/-/jest-message-util-29.5.0.tgz", +      "integrity": "sha512-Kijeg9Dag6CKtIDA7O21zNTACqD5MD/8HfIV8pdD94vFyFuer52SigdC3IQMhab3vACxXMiFk+yMHNdbqtyTGA==", +      "dev": true, +      "dependencies": { +        "@babel/code-frame": "^7.12.13", +        "@jest/types": "^29.5.0", +        "@types/stack-utils": "^2.0.0", +        "chalk": "^4.0.0", +        "graceful-fs": "^4.2.9", +        "micromatch": "^4.0.4", +        "pretty-format": "^29.5.0", +        "slash": "^3.0.0", +        "stack-utils": "^2.0.3" +      }, +      "engines": { +        "node": "^14.15.0 || ^16.10.0 || >=18.0.0" +      } +    }, +    "node_modules/jest-mock": { +      "version": "29.5.0", +      "resolved": "https://registry.npmjs.org/jest-mock/-/jest-mock-29.5.0.tgz", +      "integrity": "sha512-GqOzvdWDE4fAV2bWQLQCkujxYWL7RxjCnj71b5VhDAGOevB3qj3Ovg26A5NI84ZpODxyzaozXLOh2NCgkbvyaw==", +      "dev": true, +      "dependencies": { +        "@jest/types": "^29.5.0", +        "@types/node": "*", +        "jest-util": "^29.5.0" +      }, +      "engines": { +        "node": "^14.15.0 || ^16.10.0 || >=18.0.0" +      } +    }, +    "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, +      "engines": { +        "node": ">=6" +      }, +      "peerDependencies": { +        "jest-resolve": "*" +      }, +      "peerDependenciesMeta": { +        "jest-resolve": { +          "optional": true +        } +      } +    }, +    "node_modules/jest-regex-util": { +      "version": "29.4.3", +      "resolved": "https://registry.npmjs.org/jest-regex-util/-/jest-regex-util-29.4.3.tgz", +      "integrity": "sha512-O4FglZaMmWXbGHSQInfXewIsd1LMn9p3ZXB/6r4FOkyhX2/iP/soMG98jGvk/A3HAN78+5VWcBGO0BJAPRh4kg==", +      "dev": true, +      "engines": { +        "node": "^14.15.0 || ^16.10.0 || >=18.0.0" +      } +    }, +    "node_modules/jest-resolve": { +      "version": "29.5.0", +      "resolved": "https://registry.npmjs.org/jest-resolve/-/jest-resolve-29.5.0.tgz", +      "integrity": "sha512-1TzxJ37FQq7J10jPtQjcc+MkCkE3GBpBecsSUWJ0qZNJpmg6m0D9/7II03yJulm3H/fvVjgqLh/k2eYg+ui52w==", +      "dev": true, +      "dependencies": { +        "chalk": "^4.0.0", +        "graceful-fs": "^4.2.9", +        "jest-haste-map": "^29.5.0", +        "jest-pnp-resolver": "^1.2.2", +        "jest-util": "^29.5.0", +        "jest-validate": "^29.5.0", +        "resolve": "^1.20.0", +        "resolve.exports": "^2.0.0", +        "slash": "^3.0.0" +      }, +      "engines": { +        "node": "^14.15.0 || ^16.10.0 || >=18.0.0" +      } +    }, +    "node_modules/jest-resolve-dependencies": { +      "version": "29.5.0", +      "resolved": "https://registry.npmjs.org/jest-resolve-dependencies/-/jest-resolve-dependencies-29.5.0.tgz", +      "integrity": "sha512-sjV3GFr0hDJMBpYeUuGduP+YeCRbd7S/ck6IvL3kQ9cpySYKqcqhdLLC2rFwrcL7tz5vYibomBrsFYWkIGGjOg==", +      "dev": true, +      "dependencies": { +        "jest-regex-util": "^29.4.3", +        "jest-snapshot": "^29.5.0" +      }, +      "engines": { +        "node": "^14.15.0 || ^16.10.0 || >=18.0.0" +      } +    }, +    "node_modules/jest-runner": { +      "version": "29.5.0", +      "resolved": "https://registry.npmjs.org/jest-runner/-/jest-runner-29.5.0.tgz", +      "integrity": "sha512-m7b6ypERhFghJsslMLhydaXBiLf7+jXy8FwGRHO3BGV1mcQpPbwiqiKUR2zU2NJuNeMenJmlFZCsIqzJCTeGLQ==", +      "dev": true, +      "dependencies": { +        "@jest/console": "^29.5.0", +        "@jest/environment": "^29.5.0", +        "@jest/test-result": "^29.5.0", +        "@jest/transform": "^29.5.0", +        "@jest/types": "^29.5.0", +        "@types/node": "*", +        "chalk": "^4.0.0", +        "emittery": "^0.13.1", +        "graceful-fs": "^4.2.9", +        "jest-docblock": "^29.4.3", +        "jest-environment-node": "^29.5.0", +        "jest-haste-map": "^29.5.0", +        "jest-leak-detector": "^29.5.0", +        "jest-message-util": "^29.5.0", +        "jest-resolve": "^29.5.0", +        "jest-runtime": "^29.5.0", +        "jest-util": "^29.5.0", +        "jest-watcher": "^29.5.0", +        "jest-worker": "^29.5.0", +        "p-limit": "^3.1.0", +        "source-map-support": "0.5.13" +      }, +      "engines": { +        "node": "^14.15.0 || ^16.10.0 || >=18.0.0" +      } +    }, +    "node_modules/jest-runtime": { +      "version": "29.5.0", +      "resolved": "https://registry.npmjs.org/jest-runtime/-/jest-runtime-29.5.0.tgz", +      "integrity": "sha512-1Hr6Hh7bAgXQP+pln3homOiEZtCDZFqwmle7Ew2j8OlbkIu6uE3Y/etJQG8MLQs3Zy90xrp2C0BRrtPHG4zryw==", +      "dev": true, +      "dependencies": { +        "@jest/environment": "^29.5.0", +        "@jest/fake-timers": "^29.5.0", +        "@jest/globals": "^29.5.0", +        "@jest/source-map": "^29.4.3", +        "@jest/test-result": "^29.5.0", +        "@jest/transform": "^29.5.0", +        "@jest/types": "^29.5.0", +        "@types/node": "*", +        "chalk": "^4.0.0", +        "cjs-module-lexer": "^1.0.0", +        "collect-v8-coverage": "^1.0.0", +        "glob": "^7.1.3", +        "graceful-fs": "^4.2.9", +        "jest-haste-map": "^29.5.0", +        "jest-message-util": "^29.5.0", +        "jest-mock": "^29.5.0", +        "jest-regex-util": "^29.4.3", +        "jest-resolve": "^29.5.0", +        "jest-snapshot": "^29.5.0", +        "jest-util": "^29.5.0", +        "slash": "^3.0.0", +        "strip-bom": "^4.0.0" +      }, +      "engines": { +        "node": "^14.15.0 || ^16.10.0 || >=18.0.0" +      } +    }, +    "node_modules/jest-runtime/node_modules/glob": { +      "version": "7.2.3", +      "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.3.tgz", +      "integrity": "sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==", +      "dev": true, +      "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/jest-snapshot": { +      "version": "29.5.0", +      "resolved": "https://registry.npmjs.org/jest-snapshot/-/jest-snapshot-29.5.0.tgz", +      "integrity": "sha512-x7Wolra5V0tt3wRs3/ts3S6ciSQVypgGQlJpz2rsdQYoUKxMxPNaoHMGJN6qAuPJqS+2iQ1ZUn5kl7HCyls84g==", +      "dev": true, +      "dependencies": { +        "@babel/core": "^7.11.6", +        "@babel/generator": "^7.7.2", +        "@babel/plugin-syntax-jsx": "^7.7.2", +        "@babel/plugin-syntax-typescript": "^7.7.2", +        "@babel/traverse": "^7.7.2", +        "@babel/types": "^7.3.3", +        "@jest/expect-utils": "^29.5.0", +        "@jest/transform": "^29.5.0", +        "@jest/types": "^29.5.0", +        "@types/babel__traverse": "^7.0.6", +        "@types/prettier": "^2.1.5", +        "babel-preset-current-node-syntax": "^1.0.0", +        "chalk": "^4.0.0", +        "expect": "^29.5.0", +        "graceful-fs": "^4.2.9", +        "jest-diff": "^29.5.0", +        "jest-get-type": "^29.4.3", +        "jest-matcher-utils": "^29.5.0", +        "jest-message-util": "^29.5.0", +        "jest-util": "^29.5.0", +        "natural-compare": "^1.4.0", +        "pretty-format": "^29.5.0", +        "semver": "^7.3.5" +      }, +      "engines": { +        "node": "^14.15.0 || ^16.10.0 || >=18.0.0" +      } +    }, +    "node_modules/jest-util": { +      "version": "29.5.0", +      "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-29.5.0.tgz", +      "integrity": "sha512-RYMgG/MTadOr5t8KdhejfvUU82MxsCu5MF6KuDUHl+NuwzUt+Sm6jJWxTJVrDR1j5M/gJVCPKQEpWXY+yIQ6lQ==", +      "dev": true, +      "dependencies": { +        "@jest/types": "^29.5.0", +        "@types/node": "*", +        "chalk": "^4.0.0", +        "ci-info": "^3.2.0", +        "graceful-fs": "^4.2.9", +        "picomatch": "^2.2.3" +      }, +      "engines": { +        "node": "^14.15.0 || ^16.10.0 || >=18.0.0" +      } +    }, +    "node_modules/jest-validate": { +      "version": "29.5.0", +      "resolved": "https://registry.npmjs.org/jest-validate/-/jest-validate-29.5.0.tgz", +      "integrity": "sha512-pC26etNIi+y3HV8A+tUGr/lph9B18GnzSRAkPaaZJIE1eFdiYm6/CewuiJQ8/RlfHd1u/8Ioi8/sJ+CmbA+zAQ==", +      "dev": true, +      "dependencies": { +        "@jest/types": "^29.5.0", +        "camelcase": "^6.2.0", +        "chalk": "^4.0.0", +        "jest-get-type": "^29.4.3", +        "leven": "^3.1.0", +        "pretty-format": "^29.5.0" +      }, +      "engines": { +        "node": "^14.15.0 || ^16.10.0 || >=18.0.0" +      } +    }, +    "node_modules/jest-watcher": { +      "version": "29.5.0", +      "resolved": "https://registry.npmjs.org/jest-watcher/-/jest-watcher-29.5.0.tgz", +      "integrity": "sha512-KmTojKcapuqYrKDpRwfqcQ3zjMlwu27SYext9pt4GlF5FUgB+7XE1mcCnSm6a4uUpFyQIkb6ZhzZvHl+jiBCiA==", +      "dev": true, +      "dependencies": { +        "@jest/test-result": "^29.5.0", +        "@jest/types": "^29.5.0", +        "@types/node": "*", +        "ansi-escapes": "^4.2.1", +        "chalk": "^4.0.0", +        "emittery": "^0.13.1", +        "jest-util": "^29.5.0", +        "string-length": "^4.0.1" +      }, +      "engines": { +        "node": "^14.15.0 || ^16.10.0 || >=18.0.0" +      } +    }, +    "node_modules/jest-worker": { +      "version": "29.5.0", +      "resolved": "https://registry.npmjs.org/jest-worker/-/jest-worker-29.5.0.tgz", +      "integrity": "sha512-NcrQnevGoSp4b5kg+akIpthoAFHxPBcb5P6mYPY0fUNT+sSvmtu6jlkEle3anczUKIKEbMxFimk9oTP/tpIPgA==", +      "dev": true, +      "dependencies": { +        "@types/node": "*", +        "jest-util": "^29.5.0", +        "merge-stream": "^2.0.0", +        "supports-color": "^8.0.0" +      }, +      "engines": { +        "node": "^14.15.0 || ^16.10.0 || >=18.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, +      "dependencies": { +        "has-flag": "^4.0.0" +      }, +      "engines": { +        "node": ">=10" +      }, +      "funding": { +        "url": "https://github.com/chalk/supports-color?sponsor=1" +      } +    },      "node_modules/jiti": {        "version": "1.18.2",        "resolved": "https://registry.npmjs.org/jiti/-/jiti-1.18.2.tgz", @@ -4983,7 +7016,6 @@        "version": "2.5.2",        "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-2.5.2.tgz",        "integrity": "sha512-OYu7XEzjkCQ3C5Ps3QIZsQfNpqoJyZZA99wd9aWd05NCtC5pWOkShK2mkL6HXQR6/Cy2lbNdPlZBpuQHXE63gA==", -      "peer": true,        "bin": {          "jsesc": "bin/jsesc"        }, @@ -4996,6 +7028,12 @@        "resolved": "https://registry.npmjs.org/json-buffer/-/json-buffer-3.0.1.tgz",        "integrity": "sha512-4bV5BfR2mqfQTJm+V5tPPdf+ZpuhiIvTuAB5g8kcrXOZpTT/QwwVRWBywX1ozr6lEuPdbHxwaJlm9G6mI2sfSQ=="      }, +    "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 +    },      "node_modules/json-schema-to-typescript": {        "version": "12.0.0",        "resolved": "https://registry.npmjs.org/json-schema-to-typescript/-/json-schema-to-typescript-12.0.0.tgz", @@ -5097,6 +7135,18 @@        "integrity": "sha512-Bdboy+l7tA3OGW6FjyFHWkP5LuByj1Tk33Ljyq0axyzdk9//JSi2u3fP1QSmd1KNwq6VOKYGlAu87CisVir6Pw==",        "dev": true      }, +    "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, +      "bin": { +        "json5": "lib/cli.js" +      }, +      "engines": { +        "node": ">=6" +      } +    },      "node_modules/jsonfile": {        "version": "6.1.0",        "resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-6.1.0.tgz", @@ -5211,6 +7261,12 @@        "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.21.tgz",        "integrity": "sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg=="      }, +    "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 +    },      "node_modules/lodash.merge": {        "version": "4.6.2",        "resolved": "https://registry.npmjs.org/lodash.merge/-/lodash.merge-4.6.2.tgz", @@ -5306,6 +7362,36 @@          "node": ">= 6"        }      }, +    "node_modules/make-dir": { +      "version": "3.1.0", +      "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-3.1.0.tgz", +      "integrity": "sha512-g3FeP20LNwhALb/6Cz6Dd4F2ngze0jz7tbzrD2wAV+o9FeNHe4rL+yK2md0J/fiSf1sa1ADhXqi5+oVwOM/eGw==", +      "dev": true, +      "dependencies": { +        "semver": "^6.0.0" +      }, +      "engines": { +        "node": ">=8" +      }, +      "funding": { +        "url": "https://github.com/sponsors/sindresorhus" +      } +    }, +    "node_modules/make-dir/node_modules/semver": { +      "version": "6.3.0", +      "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", +      "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", +      "dev": true, +      "bin": { +        "semver": "bin/semver.js" +      } +    }, +    "node_modules/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/make-fetch-happen": {        "version": "10.2.1",        "resolved": "https://registry.npmjs.org/make-fetch-happen/-/make-fetch-happen-10.2.1.tgz", @@ -5361,6 +7447,15 @@          "node": ">=12"        }      }, +    "node_modules/makeerror": { +      "version": "1.0.12", +      "resolved": "https://registry.npmjs.org/makeerror/-/makeerror-1.0.12.tgz", +      "integrity": "sha512-JmqCvUhmt43madlpFzG4BQzG2Z3m6tvQDNKdClZnO3VbIudJYmxsT0FNJMeiB2+JTSlTQTSbU8QdesVmwJcmLg==", +      "dev": true, +      "dependencies": { +        "tmpl": "1.0.5" +      } +    },      "node_modules/markdown-it": {        "version": "12.3.2",        "resolved": "https://registry.npmjs.org/markdown-it/-/markdown-it-12.3.2.tgz", @@ -6372,6 +8467,18 @@          "url": "https://github.com/sponsors/isaacs"        }      }, +    "node_modules/node-int64": { +      "version": "0.4.0", +      "resolved": "https://registry.npmjs.org/node-int64/-/node-int64-0.4.0.tgz", +      "integrity": "sha512-O5lz91xSOeoXP6DulyHfllpq+Eg00MWitZIbtPfoSEvqIHdl5gfcY6hYzDWnj0qD5tz52PI08u9qUvSVeUBeHw==", +      "dev": true +    }, +    "node_modules/node-releases": { +      "version": "2.0.12", +      "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.12.tgz", +      "integrity": "sha512-QzsYKWhXTWx8h1kIvqfnC++o0pEmpRQA/aenALsL2F4pqNVr7YzcdMlDij5WBnwftRbJCNJL/O7zdKaxKPHqgQ==", +      "dev": true +    },      "node_modules/nopt": {        "version": "6.0.0",        "resolved": "https://registry.npmjs.org/nopt/-/nopt-6.0.0.tgz", @@ -6608,6 +8715,15 @@          "url": "https://github.com/sponsors/sindresorhus"        }      }, +    "node_modules/p-try": { +      "version": "2.2.0", +      "resolved": "https://registry.npmjs.org/p-try/-/p-try-2.2.0.tgz", +      "integrity": "sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==", +      "dev": true, +      "engines": { +        "node": ">=6" +      } +    },      "node_modules/parent-module": {        "version": "1.0.1",        "resolved": "https://registry.npmjs.org/parent-module/-/parent-module-1.0.1.tgz", @@ -6620,6 +8736,24 @@          "node": ">=6"        }      }, +    "node_modules/parse-json": { +      "version": "5.2.0", +      "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-5.2.0.tgz", +      "integrity": "sha512-ayCKvm/phCGxOkYRSCM82iDwct8/EonSEgCSxWxD7ve6jHggsFl4fZVQBPRNgQoKiuV/odhFrGzQXZwbifC8Rg==", +      "dev": true, +      "dependencies": { +        "@babel/code-frame": "^7.0.0", +        "error-ex": "^1.3.1", +        "json-parse-even-better-errors": "^2.3.0", +        "lines-and-columns": "^1.1.6" +      }, +      "engines": { +        "node": ">=8" +      }, +      "funding": { +        "url": "https://github.com/sponsors/sindresorhus" +      } +    },      "node_modules/parse-semver": {        "version": "1.1.1",        "resolved": "https://registry.npmjs.org/parse-semver/-/parse-semver-1.1.1.tgz", @@ -6760,6 +8894,70 @@          "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/pkg-dir/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/pkg-dir/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/pkg-dir/node_modules/p-limit": { +      "version": "2.3.0", +      "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz", +      "integrity": "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==", +      "dev": true, +      "dependencies": { +        "p-try": "^2.0.0" +      }, +      "engines": { +        "node": ">=6" +      }, +      "funding": { +        "url": "https://github.com/sponsors/sindresorhus" +      } +    }, +    "node_modules/pkg-dir/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/postcss": {        "version": "8.4.24",        "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.24.tgz", @@ -6902,9 +9100,9 @@        }      },      "node_modules/posthog-js": { -      "version": "1.63.3", -      "resolved": "https://registry.npmjs.org/posthog-js/-/posthog-js-1.63.3.tgz", -      "integrity": "sha512-Ob2x1ENxx/mWAdhLhc6ouKAph9LwmitBy7M+hiaFoS0T9g7OVL4lYdrJbODbYV+HX/HeO3bsnQwYO1QLPWm/YA==", +      "version": "1.68.5", +      "resolved": "https://registry.npmjs.org/posthog-js/-/posthog-js-1.68.5.tgz", +      "integrity": "sha512-EqQuIX0k564T2fhmzQK2Gcb8s/XRhHTpk6JOeGtJV7lpMI8Hffe+gGjGHcqIc4RoOg3LjAGYNHj6XgN+QPggLg==",        "dependencies": {          "fflate": "^0.4.1"        } @@ -6959,6 +9157,32 @@          "url": "https://github.com/prettier/prettier?sponsor=1"        }      }, +    "node_modules/pretty-format": { +      "version": "29.5.0", +      "resolved": "https://registry.npmjs.org/pretty-format/-/pretty-format-29.5.0.tgz", +      "integrity": "sha512-V2mGkI31qdttvTFX7Mt4efOqHXqJWMu4/r66Xh3Z3BwZaPfPJgp6/gbwoujRpPUtfEF6AUUWx3Jim3GCw5g/Qw==", +      "dev": true, +      "dependencies": { +        "@jest/schemas": "^29.4.3", +        "ansi-styles": "^5.0.0", +        "react-is": "^18.0.0" +      }, +      "engines": { +        "node": "^14.15.0 || ^16.10.0 || >=18.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/process-exists": {        "version": "4.1.0",        "resolved": "https://registry.npmjs.org/process-exists/-/process-exists-4.1.0.tgz", @@ -7004,6 +9228,28 @@          "node": ">=10"        }      }, +    "node_modules/prompts": { +      "version": "2.4.2", +      "resolved": "https://registry.npmjs.org/prompts/-/prompts-2.4.2.tgz", +      "integrity": "sha512-NxNv/kLguCA7p3jE8oL2aEBsrJWgAakBpgmgK6lpPWV+WuOmY6r2/zbAVnP+T8bQlA0nzHXSJSJW0Hq7ylaD2Q==", +      "dev": true, +      "dependencies": { +        "kleur": "^3.0.3", +        "sisteransi": "^1.0.5" +      }, +      "engines": { +        "node": ">= 6" +      } +    }, +    "node_modules/prompts/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/prop-types": {        "version": "15.8.1",        "resolved": "https://registry.npmjs.org/prop-types/-/prop-types-15.8.1.tgz", @@ -7062,6 +9308,22 @@          "node": ">=6"        }      }, +    "node_modules/pure-rand": { +      "version": "6.0.2", +      "resolved": "https://registry.npmjs.org/pure-rand/-/pure-rand-6.0.2.tgz", +      "integrity": "sha512-6Yg0ekpKICSjPswYOuC5sku/TSWaRYlA0qsXqJgM/d/4pLPHPuTxK7Nbf7jFKzAeedUhR8C7K9Uv63FBsSo8xQ==", +      "dev": true, +      "funding": [ +        { +          "type": "individual", +          "url": "https://github.com/sponsors/dubzzz" +        }, +        { +          "type": "opencollective", +          "url": "https://opencollective.com/fast-check" +        } +      ] +    },      "node_modules/qs": {        "version": "6.11.0",        "resolved": "https://registry.npmjs.org/qs/-/qs-6.11.0.tgz", @@ -7391,6 +9653,27 @@        "resolved": "https://registry.npmjs.org/resolve-alpn/-/resolve-alpn-1.2.1.tgz",        "integrity": "sha512-0a1F4l73/ZFZOakJnQ3FvkJ2+gSTQWz/r2KE5OdDY0TxPm5h4GkqkWWfM47T7HsbnOtcJVEF4epCVy6u7Q3K+g=="      }, +    "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-cwd/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/resolve-from": {        "version": "4.0.0",        "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-4.0.0.tgz", @@ -7400,6 +9683,15 @@          "node": ">=4"        }      }, +    "node_modules/resolve.exports": { +      "version": "2.0.2", +      "resolved": "https://registry.npmjs.org/resolve.exports/-/resolve.exports-2.0.2.tgz", +      "integrity": "sha512-X2UW6Nw3n/aMgDVy+0rSqgHlv39WZAlZrXCdnbyEiKm17DSqHX4MmQMaST3FbeWR5FTuRcUwYAziZajji0Y7mg==", +      "dev": true, +      "engines": { +        "node": ">=10" +      } +    },      "node_modules/responselike": {        "version": "2.0.1",        "resolved": "https://registry.npmjs.org/responselike/-/responselike-2.0.1.tgz", @@ -7585,9 +9877,9 @@        }      },      "node_modules/semver": { -      "version": "7.3.8", -      "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.8.tgz", -      "integrity": "sha512-NB1ctGL5rlHrPJtFDVIVzTyQylMLu9N9VICA6HSFJo8MCGVTMW6gfpicwKmmK/dAjTOrqu5l63JJOpDSrAis3A==", +      "version": "7.5.3", +      "resolved": "https://registry.npmjs.org/semver/-/semver-7.5.3.tgz", +      "integrity": "sha512-QBlUtyVk/5EeHbi7X0fw6liDZc7BBmEaSYn01fMU1OUYbf6GPsbTtd8WmnqbI20SeycoHSeiybkE/q1Q+qlThQ==",        "dependencies": {          "lru-cache": "^6.0.0"        }, @@ -7707,6 +9999,12 @@          "simple-concat": "^1.0.0"        }      }, +    "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", @@ -7751,6 +10049,15 @@          "node": ">= 10"        }      }, +    "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-js": {        "version": "1.0.2",        "resolved": "https://registry.npmjs.org/source-map-js/-/source-map-js-1.0.2.tgz", @@ -7759,6 +10066,16 @@          "node": ">=0.10.0"        }      }, +    "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, +      "dependencies": { +        "buffer-from": "^1.0.0", +        "source-map": "^0.6.0" +      } +    },      "node_modules/space-separated-tokens": {        "version": "2.0.2",        "resolved": "https://registry.npmjs.org/space-separated-tokens/-/space-separated-tokens-2.0.2.tgz", @@ -7774,6 +10091,12 @@        "integrity": "sha512-n98l9E2RMSJ9ON1AKisHzz7V42VDiBQGY6PB1BwRglz99wpVsSuGzQ+jOi6lFXBGVTCrRpltvjm+/XA+tpeJrg==",        "dev": true      }, +    "node_modules/sprintf-js": { +      "version": "1.0.3", +      "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.0.3.tgz", +      "integrity": "sha512-D9cPgkvLlV3t3IzL0D0YLvGA9Ahk4PcvVwUbN0dSGr1aP0Nrt4AEnTUbuGvquEC0mA64Gqt1fzirlRs5ibXx8g==", +      "dev": true +    },      "node_modules/ssri": {        "version": "9.0.1",        "resolved": "https://registry.npmjs.org/ssri/-/ssri-9.0.1.tgz", @@ -7785,6 +10108,27 @@          "node": "^12.13.0 || ^14.15.0 || >=16.0.0"        }      }, +    "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, +      "dependencies": { +        "escape-string-regexp": "^2.0.0" +      }, +      "engines": { +        "node": ">=10" +      } +    }, +    "node_modules/stack-utils/node_modules/escape-string-regexp": { +      "version": "2.0.0", +      "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-2.0.0.tgz", +      "integrity": "sha512-UpzcLCXolUWcNu5HtVMHYdXJjArjsF9C0aNnquZYY4uW/Vu0miy5YoWvbV345HauVvcAUnpRuhMMcqTcGOY2+w==", +      "dev": true, +      "engines": { +        "node": ">=8" +      } +    },      "node_modules/string_decoder": {        "version": "1.1.1",        "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", @@ -7798,6 +10142,40 @@        "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz",        "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g=="      }, +    "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-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, +      "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, +      "dependencies": { +        "ansi-regex": "^5.0.1" +      }, +      "engines": { +        "node": ">=8" +      } +    },      "node_modules/string-width": {        "version": "4.2.3",        "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", @@ -7844,6 +10222,15 @@          "url": "https://github.com/chalk/strip-ansi?sponsor=1"        }      }, +    "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", @@ -8131,6 +10518,40 @@          "url": "https://github.com/sponsors/sindresorhus"        }      }, +    "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/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==", +      "dev": true, +      "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/text-table": {        "version": "0.2.0",        "resolved": "https://registry.npmjs.org/text-table/-/text-table-0.2.0.tgz", @@ -8184,11 +10605,16 @@          "node": ">=8.17.0"        }      }, +    "node_modules/tmpl": { +      "version": "1.0.5", +      "resolved": "https://registry.npmjs.org/tmpl/-/tmpl-1.0.5.tgz", +      "integrity": "sha512-3f0uOEAQwIqGuWW2MVzYg8fV/QNnc/IpuJNG837rLuczAaLVHslWHZQj4IGiEl5Hs3kkbhwL9Ab7Hrsmuj+Smw==", +      "dev": true +    },      "node_modules/to-fast-properties": {        "version": "2.0.0",        "resolved": "https://registry.npmjs.org/to-fast-properties/-/to-fast-properties-2.0.0.tgz",        "integrity": "sha512-/OaKK0xYrs3DmxRYqL/yDc+FxFUVYhDlXMhRmv3z915w2HF1tnN1omB354j8VUGO/hbRzyD6Y3sA7v7GS/ceog==", -      "peer": true,        "engines": {          "node": ">=4"        } @@ -8250,6 +10676,58 @@        "resolved": "https://registry.npmjs.org/ts-interface-checker/-/ts-interface-checker-0.1.13.tgz",        "integrity": "sha512-Y/arvbn+rrz3JCKl9C4kVNfTfSm2/mEp5FSz5EsZSANGPSlQrpRI5M4PKF+mJnE52jOO90PnPSc3Ur3bTQw0gA=="      }, +    "node_modules/ts-jest": { +      "version": "29.1.1", +      "resolved": "https://registry.npmjs.org/ts-jest/-/ts-jest-29.1.1.tgz", +      "integrity": "sha512-D6xjnnbP17cC85nliwGiL+tpoKN0StpgE0TeOjXQTU6MVCfsB4v7aW05CgQ/1OywGb0x/oy9hHFnN+sczTiRaA==", +      "dev": true, +      "dependencies": { +        "bs-logger": "0.x", +        "fast-json-stable-stringify": "2.x", +        "jest-util": "^29.0.0", +        "json5": "^2.2.3", +        "lodash.memoize": "4.x", +        "make-error": "1.x", +        "semver": "^7.5.3", +        "yargs-parser": "^21.0.1" +      }, +      "bin": { +        "ts-jest": "cli.js" +      }, +      "engines": { +        "node": "^14.15.0 || ^16.10.0 || >=18.0.0" +      }, +      "peerDependencies": { +        "@babel/core": ">=7.0.0-beta.0 <8", +        "@jest/types": "^29.0.0", +        "babel-jest": "^29.0.0", +        "jest": "^29.0.0", +        "typescript": ">=4.3 <6" +      }, +      "peerDependenciesMeta": { +        "@babel/core": { +          "optional": true +        }, +        "@jest/types": { +          "optional": true +        }, +        "babel-jest": { +          "optional": true +        }, +        "esbuild": { +          "optional": true +        } +      } +    }, +    "node_modules/ts-jest/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, +      "engines": { +        "node": ">=12" +      } +    },      "node_modules/tslib": {        "version": "1.14.1",        "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", @@ -8309,6 +10787,15 @@          "node": ">= 0.8.0"        }      }, +    "node_modules/type-detect": { +      "version": "4.0.8", +      "resolved": "https://registry.npmjs.org/type-detect/-/type-detect-4.0.8.tgz", +      "integrity": "sha512-0fr/mIH1dlO+x7TlcMy+bIDqKPsw/70tVyeHW787goQjhmqaZe10uwLujubK9q9Lg6Fiho1KUKDYz0Z7k7g5/g==", +      "dev": true, +      "engines": { +        "node": ">=4" +      } +    },      "node_modules/type-fest": {        "version": "0.20.2",        "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.20.2.tgz", @@ -8518,6 +11005,36 @@          "setimmediate": "~1.0.4"        }      }, +    "node_modules/update-browserslist-db": { +      "version": "1.0.11", +      "resolved": "https://registry.npmjs.org/update-browserslist-db/-/update-browserslist-db-1.0.11.tgz", +      "integrity": "sha512-dCwEFf0/oT85M1fHBg4F0jtLwJrutGoHSQXCh7u4o2t1drG+c0a9Flnqww6XUKSfQMPpJBRjU8d4RXB09qtvaA==", +      "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" +        } +      ], +      "dependencies": { +        "escalade": "^3.1.1", +        "picocolors": "^1.0.0" +      }, +      "bin": { +        "update-browserslist-db": "cli.js" +      }, +      "peerDependencies": { +        "browserslist": ">= 4.21.0" +      } +    },      "node_modules/uri-js": {        "version": "4.4.1",        "resolved": "https://registry.npmjs.org/uri-js/-/uri-js-4.4.1.tgz", @@ -8571,6 +11088,26 @@          "node": ">=8"        }      }, +    "node_modules/v8-to-istanbul": { +      "version": "9.1.0", +      "resolved": "https://registry.npmjs.org/v8-to-istanbul/-/v8-to-istanbul-9.1.0.tgz", +      "integrity": "sha512-6z3GW9x8G1gd+JIIgQQQxXuiJtCXeAjp6RaPEPLv62mH3iPHPxV6W3robxtCzNErRo6ZwTmzWhsbNvjyEBKzKA==", +      "dev": true, +      "dependencies": { +        "@jridgewell/trace-mapping": "^0.3.12", +        "@types/istanbul-lib-coverage": "^2.0.1", +        "convert-source-map": "^1.6.0" +      }, +      "engines": { +        "node": ">=10.12.0" +      } +    }, +    "node_modules/v8-to-istanbul/node_modules/convert-source-map": { +      "version": "1.9.0", +      "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-1.9.0.tgz", +      "integrity": "sha512-ASFBup0Mz1uyiIjANan1jzLQami9z1PoYSZCiiYW2FczPbenXc45FZdBZLzOT+r6+iciuEModtmCti+hjaAk0A==", +      "dev": true +    },      "node_modules/vfile": {        "version": "5.3.7",        "resolved": "https://registry.npmjs.org/vfile/-/vfile-5.3.7.tgz", @@ -8816,6 +11353,15 @@        "resolved": "https://registry.npmjs.org/vscode-languageserver-types/-/vscode-languageserver-types-3.17.2.tgz",        "integrity": "sha512-zHhCWatviizPIq9B7Vh9uvrH6x3sK8itC84HkamnBWoDFJtzBf7SWlpLCZUit72b3os45h6RWQNC9xHRDF8dRA=="      }, +    "node_modules/walker": { +      "version": "1.0.8", +      "resolved": "https://registry.npmjs.org/walker/-/walker-1.0.8.tgz", +      "integrity": "sha512-ts/8E8l5b7kY0vlWLewOkDXMmPdLcVV4GmOQLyxuSswIJsweeFZtAsMF7k1Nszz+TYBQrlYRmzOnr398y1JemQ==", +      "dev": true, +      "dependencies": { +        "makeerror": "1.0.12" +      } +    },      "node_modules/wcwidth": {        "version": "1.0.1",        "resolved": "https://registry.npmjs.org/wcwidth/-/wcwidth-1.0.1.tgz", @@ -8915,6 +11461,19 @@        "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz",        "integrity": "sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ=="      }, +    "node_modules/write-file-atomic": { +      "version": "4.0.2", +      "resolved": "https://registry.npmjs.org/write-file-atomic/-/write-file-atomic-4.0.2.tgz", +      "integrity": "sha512-7KxauUdBmSdWnmpaGFg+ppNjKF8uNLry8LyzjauQDOVONfFLNKrKvQOxZ/VuTIcS/gge/YNahf5RIIQWTSarlg==", +      "dev": true, +      "dependencies": { +        "imurmurhash": "^0.1.4", +        "signal-exit": "^3.0.7" +      }, +      "engines": { +        "node": "^12.13.0 || ^14.15.0 || >=16.0.0" +      } +    },      "node_modules/ws": {        "version": "8.13.0",        "resolved": "https://registry.npmjs.org/ws/-/ws-8.13.0.tgz", @@ -9058,22 +11617,73 @@        "resolved": "https://registry.npmjs.org/@alloc/quick-lru/-/quick-lru-5.2.0.tgz",        "integrity": "sha512-UrcABB+4bUrFABwbluTIBErXwvbsU/V7TZWfmbgJfbkwiBuziS9gxdODUyuiecfdGQ85jglMW6juS3+z5TsKLw=="      }, +    "@ampproject/remapping": { +      "version": "2.2.1", +      "resolved": "https://registry.npmjs.org/@ampproject/remapping/-/remapping-2.2.1.tgz", +      "integrity": "sha512-lFMjJTrFL3j7L9yBxwYfCq2k6qqwHyzuUl/XBnif78PWTJYyL/dfowQHWE3sp6U6ZzqWiiIZnpTMO96zhkjwtg==", +      "dev": true, +      "requires": { +        "@jridgewell/gen-mapping": "^0.3.0", +        "@jridgewell/trace-mapping": "^0.3.9" +      } +    },      "@babel/code-frame": { -      "version": "7.21.4", -      "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.21.4.tgz", -      "integrity": "sha512-LYvhNKfwWSPpocw8GI7gpK2nq3HSDuEPC/uSYaALSJu9xjsalaaYFOq0Pwt5KmVqwEbZlDu81aLXwBOmD/Fv9g==", -      "peer": true, +      "version": "7.22.5", +      "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.22.5.tgz", +      "integrity": "sha512-Xmwn266vad+6DAqEB2A6V/CcZVp62BbwVmcOJc2RPuwih1kw02TjQvWVWlcKGbBPd+8/0V5DEkOcizRGYsspYQ==",        "requires": { -        "@babel/highlight": "^7.18.6" +        "@babel/highlight": "^7.22.5" +      } +    }, +    "@babel/compat-data": { +      "version": "7.22.5", +      "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.22.5.tgz", +      "integrity": "sha512-4Jc/YuIaYqKnDDz892kPIledykKg12Aw1PYX5i/TY28anJtacvM1Rrr8wbieB9GfEJwlzqT0hUEao0CxEebiDA==", +      "dev": true +    }, +    "@babel/core": { +      "version": "7.22.5", +      "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.22.5.tgz", +      "integrity": "sha512-SBuTAjg91A3eKOvD+bPEz3LlhHZRNu1nFOVts9lzDJTXshHTjII0BAtDS3Y2DAkdZdDKWVZGVwkDfc4Clxn1dg==", +      "dev": true, +      "requires": { +        "@ampproject/remapping": "^2.2.0", +        "@babel/code-frame": "^7.22.5", +        "@babel/generator": "^7.22.5", +        "@babel/helper-compilation-targets": "^7.22.5", +        "@babel/helper-module-transforms": "^7.22.5", +        "@babel/helpers": "^7.22.5", +        "@babel/parser": "^7.22.5", +        "@babel/template": "^7.22.5", +        "@babel/traverse": "^7.22.5", +        "@babel/types": "^7.22.5", +        "convert-source-map": "^1.7.0", +        "debug": "^4.1.0", +        "gensync": "^1.0.0-beta.2", +        "json5": "^2.2.2", +        "semver": "^6.3.0" +      }, +      "dependencies": { +        "convert-source-map": { +          "version": "1.9.0", +          "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-1.9.0.tgz", +          "integrity": "sha512-ASFBup0Mz1uyiIjANan1jzLQami9z1PoYSZCiiYW2FczPbenXc45FZdBZLzOT+r6+iciuEModtmCti+hjaAk0A==", +          "dev": true +        }, +        "semver": { +          "version": "6.3.0", +          "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", +          "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", +          "dev": true +        }        }      },      "@babel/generator": { -      "version": "7.21.4", -      "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.21.4.tgz", -      "integrity": "sha512-NieM3pVIYW2SwGzKoqfPrQsf4xGs9M9AIG3ThppsSRmO+m7eQhmI6amajKMUeIO37wFfsvnvcxQFx6x6iqxDnA==", -      "peer": true, +      "version": "7.22.5", +      "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.22.5.tgz", +      "integrity": "sha512-+lcUbnTRhd0jOewtFSedLyiPsD5tswKkbgcezOqqWFUVNEwoUTlpPOBmvhG7OXWLR4jMdv0czPGH5XbflnD1EA==",        "requires": { -        "@babel/types": "^7.21.4", +        "@babel/types": "^7.22.5",          "@jridgewell/gen-mapping": "^0.3.2",          "@jridgewell/trace-mapping": "^0.3.17",          "jsesc": "^2.5.1" @@ -9088,68 +11698,144 @@          "@babel/types": "^7.18.6"        }      }, +    "@babel/helper-compilation-targets": { +      "version": "7.22.5", +      "resolved": "https://registry.npmjs.org/@babel/helper-compilation-targets/-/helper-compilation-targets-7.22.5.tgz", +      "integrity": "sha512-Ji+ywpHeuqxB8WDxraCiqR0xfhYjiDE/e6k7FuIaANnoOFxAHskHChz4vA1mJC9Lbm01s1PVAGhQY4FUKSkGZw==", +      "dev": true, +      "requires": { +        "@babel/compat-data": "^7.22.5", +        "@babel/helper-validator-option": "^7.22.5", +        "browserslist": "^4.21.3", +        "lru-cache": "^5.1.1", +        "semver": "^6.3.0" +      }, +      "dependencies": { +        "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": { +            "yallist": "^3.0.2" +          } +        }, +        "semver": { +          "version": "6.3.0", +          "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", +          "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", +          "dev": true +        }, +        "yallist": { +          "version": "3.1.1", +          "resolved": "https://registry.npmjs.org/yallist/-/yallist-3.1.1.tgz", +          "integrity": "sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g==", +          "dev": true +        } +      } +    },      "@babel/helper-environment-visitor": { -      "version": "7.18.9", -      "resolved": "https://registry.npmjs.org/@babel/helper-environment-visitor/-/helper-environment-visitor-7.18.9.tgz", -      "integrity": "sha512-3r/aACDJ3fhQ/EVgFy0hpj8oHyHpQc+LPtJoY9SzTThAsStm4Ptegq92vqKoE3vD706ZVFWITnMnxucw+S9Ipg==", -      "peer": true +      "version": "7.22.5", +      "resolved": "https://registry.npmjs.org/@babel/helper-environment-visitor/-/helper-environment-visitor-7.22.5.tgz", +      "integrity": "sha512-XGmhECfVA/5sAt+H+xpSg0mfrHq6FzNr9Oxh7PSEBBRUb/mL7Kz3NICXb194rCqAEdxkhPT1a88teizAFyvk8Q=="      },      "@babel/helper-function-name": { -      "version": "7.21.0", -      "resolved": "https://registry.npmjs.org/@babel/helper-function-name/-/helper-function-name-7.21.0.tgz", -      "integrity": "sha512-HfK1aMRanKHpxemaY2gqBmL04iAPOPRj7DxtNbiDOrJK+gdwkiNRVpCpUJYbUT+aZyemKN8brqTOxzCaG6ExRg==", -      "peer": true, +      "version": "7.22.5", +      "resolved": "https://registry.npmjs.org/@babel/helper-function-name/-/helper-function-name-7.22.5.tgz", +      "integrity": "sha512-wtHSq6jMRE3uF2otvfuD3DIvVhOsSNshQl0Qrd7qC9oQJzHvOL4qQXlQn2916+CXGywIjpGuIkoyZRRxHPiNQQ==",        "requires": { -        "@babel/template": "^7.20.7", -        "@babel/types": "^7.21.0" +        "@babel/template": "^7.22.5", +        "@babel/types": "^7.22.5"        }      },      "@babel/helper-hoist-variables": { -      "version": "7.18.6", -      "resolved": "https://registry.npmjs.org/@babel/helper-hoist-variables/-/helper-hoist-variables-7.18.6.tgz", -      "integrity": "sha512-UlJQPkFqFULIcyW5sbzgbkxn2FKRgwWiRexcuaR8RNJRy8+LLveqPjwZV/bwrLZCN0eUHD/x8D0heK1ozuoo6Q==", -      "peer": true, +      "version": "7.22.5", +      "resolved": "https://registry.npmjs.org/@babel/helper-hoist-variables/-/helper-hoist-variables-7.22.5.tgz", +      "integrity": "sha512-wGjk9QZVzvknA6yKIUURb8zY3grXCcOZt+/7Wcy8O2uctxhplmUPkOdlgoNhmdVee2c92JXbf1xpMtVNbfoxRw==",        "requires": { -        "@babel/types": "^7.18.6" +        "@babel/types": "^7.22.5"        }      },      "@babel/helper-module-imports": { -      "version": "7.21.4", -      "resolved": "https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.21.4.tgz", -      "integrity": "sha512-orajc5T2PsRYUN3ZryCEFeMDYwyw09c/pZeaQEZPH0MpKzSvn3e0uXsDBu3k03VI+9DBiRo+l22BfKTpKwa/Wg==", -      "peer": true, +      "version": "7.22.5", +      "resolved": "https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.22.5.tgz", +      "integrity": "sha512-8Dl6+HD/cKifutF5qGd/8ZJi84QeAKh+CEe1sBzz8UayBBGg1dAIJrdHOcOM5b2MpzWL2yuotJTtGjETq0qjXg==", +      "requires": { +        "@babel/types": "^7.22.5" +      } +    }, +    "@babel/helper-module-transforms": { +      "version": "7.22.5", +      "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.22.5.tgz", +      "integrity": "sha512-+hGKDt/Ze8GFExiVHno/2dvG5IdstpzCq0y4Qc9OJ25D4q3pKfiIP/4Vp3/JvhDkLKsDK2api3q3fpIgiIF5bw==", +      "dev": true, +      "requires": { +        "@babel/helper-environment-visitor": "^7.22.5", +        "@babel/helper-module-imports": "^7.22.5", +        "@babel/helper-simple-access": "^7.22.5", +        "@babel/helper-split-export-declaration": "^7.22.5", +        "@babel/helper-validator-identifier": "^7.22.5", +        "@babel/template": "^7.22.5", +        "@babel/traverse": "^7.22.5", +        "@babel/types": "^7.22.5" +      } +    }, +    "@babel/helper-plugin-utils": { +      "version": "7.22.5", +      "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.22.5.tgz", +      "integrity": "sha512-uLls06UVKgFG9QD4OeFYLEGteMIAa5kpTPcFL28yuCIIzsf6ZyKZMllKVOCZFhiZ5ptnwX4mtKdWCBE/uT4amg==", +      "dev": true +    }, +    "@babel/helper-simple-access": { +      "version": "7.22.5", +      "resolved": "https://registry.npmjs.org/@babel/helper-simple-access/-/helper-simple-access-7.22.5.tgz", +      "integrity": "sha512-n0H99E/K+Bika3++WNL17POvo4rKWZ7lZEp1Q+fStVbUi8nxPQEBOlTmCOxW/0JsS56SKKQ+ojAe2pHKJHN35w==", +      "dev": true,        "requires": { -        "@babel/types": "^7.21.4" +        "@babel/types": "^7.22.5"        }      },      "@babel/helper-split-export-declaration": { -      "version": "7.18.6", -      "resolved": "https://registry.npmjs.org/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.18.6.tgz", -      "integrity": "sha512-bde1etTx6ZyTmobl9LLMMQsaizFVZrquTEHOqKeQESMKo4PlObf+8+JA25ZsIpZhT/WEd39+vOdLXAFG/nELpA==", -      "peer": true, +      "version": "7.22.5", +      "resolved": "https://registry.npmjs.org/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.22.5.tgz", +      "integrity": "sha512-thqK5QFghPKWLhAV321lxF95yCg2K3Ob5yw+M3VHWfdia0IkPXUtoLH8x/6Fh486QUvzhb8YOWHChTVen2/PoQ==",        "requires": { -        "@babel/types": "^7.18.6" +        "@babel/types": "^7.22.5"        }      },      "@babel/helper-string-parser": { -      "version": "7.19.4", -      "resolved": "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.19.4.tgz", -      "integrity": "sha512-nHtDoQcuqFmwYNYPz3Rah5ph2p8PFeFCsZk9A/48dPc/rGocJ5J3hAAZ7pb76VWX3fZKu+uEr/FhH5jLx7umrw==", -      "peer": true +      "version": "7.22.5", +      "resolved": "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.22.5.tgz", +      "integrity": "sha512-mM4COjgZox8U+JcXQwPijIZLElkgEpO5rsERVDJTc2qfCDfERyob6k5WegS14SX18IIjv+XD+GrqNumY5JRCDw=="      },      "@babel/helper-validator-identifier": { -      "version": "7.19.1", -      "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.19.1.tgz", -      "integrity": "sha512-awrNfaMtnHUr653GgGEs++LlAvW6w+DcPrOliSMXWCKo597CwL5Acf/wWdNkf/tfEQE3mjkeD1YOVZOUV/od1w==", -      "peer": true +      "version": "7.22.5", +      "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.22.5.tgz", +      "integrity": "sha512-aJXu+6lErq8ltp+JhkJUfk1MTGyuA4v7f3pA+BJ5HLfNC6nAQ0Cpi9uOquUj8Hehg0aUiHzWQbOVJGao6ztBAQ==" +    }, +    "@babel/helper-validator-option": { +      "version": "7.22.5", +      "resolved": "https://registry.npmjs.org/@babel/helper-validator-option/-/helper-validator-option-7.22.5.tgz", +      "integrity": "sha512-R3oB6xlIVKUnxNUxbmgq7pKjxpru24zlimpE8WK47fACIlM0II/Hm1RS8IaOI7NgCr6LNS+jl5l75m20npAziw==", +      "dev": true +    }, +    "@babel/helpers": { +      "version": "7.22.5", +      "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.22.5.tgz", +      "integrity": "sha512-pSXRmfE1vzcUIDFQcSGA5Mr+GxBV9oiRKDuDxXvWQQBCh8HoIjs/2DlDB7H8smac1IVrB9/xdXj2N3Wol9Cr+Q==", +      "dev": true, +      "requires": { +        "@babel/template": "^7.22.5", +        "@babel/traverse": "^7.22.5", +        "@babel/types": "^7.22.5" +      }      },      "@babel/highlight": { -      "version": "7.18.6", -      "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.18.6.tgz", -      "integrity": "sha512-u7stbOuYjaPezCuLj29hNW1v64M2Md2qupEKP1fHc7WdOA3DgLh37suiSrZYY7haUB7iBeQZ9P1uiRF359do3g==", -      "peer": true, +      "version": "7.22.5", +      "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.22.5.tgz", +      "integrity": "sha512-BSKlD1hgnedS5XRnGOljZawtag7H1yPfQp0tdNJCHoH6AZ+Pcm9VvkrK59/Yy593Ypg0zMxH2BxD1VPYUQ7UIw==",        "requires": { -        "@babel/helper-validator-identifier": "^7.18.6", +        "@babel/helper-validator-identifier": "^7.22.5",          "chalk": "^2.0.0",          "js-tokens": "^4.0.0"        }, @@ -9158,7 +11844,6 @@            "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==", -          "peer": true,            "requires": {              "color-convert": "^1.9.0"            } @@ -9167,7 +11852,6 @@            "version": "2.4.2",            "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz",            "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", -          "peer": true,            "requires": {              "ansi-styles": "^3.2.1",              "escape-string-regexp": "^1.0.5", @@ -9178,7 +11862,6 @@            "version": "1.9.3",            "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz",            "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", -          "peer": true,            "requires": {              "color-name": "1.1.3"            } @@ -9186,26 +11869,22 @@          "color-name": {            "version": "1.1.3",            "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", -          "integrity": "sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw==", -          "peer": true +          "integrity": "sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw=="          },          "escape-string-regexp": {            "version": "1.0.5",            "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", -          "integrity": "sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==", -          "peer": true +          "integrity": "sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg=="          },          "has-flag": {            "version": "3.0.0",            "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", -          "integrity": "sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw==", -          "peer": true +          "integrity": "sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw=="          },          "supports-color": {            "version": "5.5.0",            "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz",            "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", -          "peer": true,            "requires": {              "has-flag": "^3.0.0"            } @@ -9213,10 +11892,135 @@        }      },      "@babel/parser": { -      "version": "7.21.4", -      "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.21.4.tgz", -      "integrity": "sha512-alVJj7k7zIxqBZ7BTRhz0IqJFxW1VJbm6N8JbcYhQ186df9ZBPbZBmWSqAMXwHGsCJdYks7z/voa3ibiS5bCIw==", -      "peer": true +      "version": "7.22.5", +      "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.22.5.tgz", +      "integrity": "sha512-DFZMC9LJUG9PLOclRC32G63UXwzqS2koQC8dkx+PLdmt1xSePYpbT/NbsrJy8Q/muXz7o/h/d4A7Fuyixm559Q==" +    }, +    "@babel/plugin-syntax-async-generators": { +      "version": "7.8.4", +      "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-async-generators/-/plugin-syntax-async-generators-7.8.4.tgz", +      "integrity": "sha512-tycmZxkGfZaxhMRbXlPXuVFpdWlXpir2W4AMhSJgRKzk/eDlIXOhb2LHWoLpDF7TEHylV5zNhykX6KAgHJmTNw==", +      "dev": true, +      "requires": { +        "@babel/helper-plugin-utils": "^7.8.0" +      } +    }, +    "@babel/plugin-syntax-bigint": { +      "version": "7.8.3", +      "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-bigint/-/plugin-syntax-bigint-7.8.3.tgz", +      "integrity": "sha512-wnTnFlG+YxQm3vDxpGE57Pj0srRU4sHE/mDkt1qv2YJJSeUAec2ma4WLUnUPeKjyrfntVwe/N6dCXpU+zL3Npg==", +      "dev": true, +      "requires": { +        "@babel/helper-plugin-utils": "^7.8.0" +      } +    }, +    "@babel/plugin-syntax-class-properties": { +      "version": "7.12.13", +      "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-class-properties/-/plugin-syntax-class-properties-7.12.13.tgz", +      "integrity": "sha512-fm4idjKla0YahUNgFNLCB0qySdsoPiZP3iQE3rky0mBUtMZ23yDJ9SJdg6dXTSDnulOVqiF3Hgr9nbXvXTQZYA==", +      "dev": true, +      "requires": { +        "@babel/helper-plugin-utils": "^7.12.13" +      } +    }, +    "@babel/plugin-syntax-import-meta": { +      "version": "7.10.4", +      "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-import-meta/-/plugin-syntax-import-meta-7.10.4.tgz", +      "integrity": "sha512-Yqfm+XDx0+Prh3VSeEQCPU81yC+JWZ2pDPFSS4ZdpfZhp4MkFMaDC1UqseovEKwSUpnIL7+vK+Clp7bfh0iD7g==", +      "dev": true, +      "requires": { +        "@babel/helper-plugin-utils": "^7.10.4" +      } +    }, +    "@babel/plugin-syntax-json-strings": { +      "version": "7.8.3", +      "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-json-strings/-/plugin-syntax-json-strings-7.8.3.tgz", +      "integrity": "sha512-lY6kdGpWHvjoe2vk4WrAapEuBR69EMxZl+RoGRhrFGNYVK8mOPAW8VfbT/ZgrFbXlDNiiaxQnAtgVCZ6jv30EA==", +      "dev": true, +      "requires": { +        "@babel/helper-plugin-utils": "^7.8.0" +      } +    }, +    "@babel/plugin-syntax-jsx": { +      "version": "7.22.5", +      "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-jsx/-/plugin-syntax-jsx-7.22.5.tgz", +      "integrity": "sha512-gvyP4hZrgrs/wWMaocvxZ44Hw0b3W8Pe+cMxc8V1ULQ07oh8VNbIRaoD1LRZVTvD+0nieDKjfgKg89sD7rrKrg==", +      "dev": true, +      "requires": { +        "@babel/helper-plugin-utils": "^7.22.5" +      } +    }, +    "@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, +      "requires": { +        "@babel/helper-plugin-utils": "^7.10.4" +      } +    }, +    "@babel/plugin-syntax-nullish-coalescing-operator": { +      "version": "7.8.3", +      "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-nullish-coalescing-operator/-/plugin-syntax-nullish-coalescing-operator-7.8.3.tgz", +      "integrity": "sha512-aSff4zPII1u2QD7y+F8oDsz19ew4IGEJg9SVW+bqwpwtfFleiQDMdzA/R+UlWDzfnHFCxxleFT0PMIrR36XLNQ==", +      "dev": true, +      "requires": { +        "@babel/helper-plugin-utils": "^7.8.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==", +      "dev": true, +      "requires": { +        "@babel/helper-plugin-utils": "^7.10.4" +      } +    }, +    "@babel/plugin-syntax-object-rest-spread": { +      "version": "7.8.3", +      "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-object-rest-spread/-/plugin-syntax-object-rest-spread-7.8.3.tgz", +      "integrity": "sha512-XoqMijGZb9y3y2XskN+P1wUGiVwWZ5JmoDRwx5+3GmEplNyVM2s2Dg8ILFQm8rWM48orGy5YpI5Bl8U1y7ydlA==", +      "dev": true, +      "requires": { +        "@babel/helper-plugin-utils": "^7.8.0" +      } +    }, +    "@babel/plugin-syntax-optional-catch-binding": { +      "version": "7.8.3", +      "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-optional-catch-binding/-/plugin-syntax-optional-catch-binding-7.8.3.tgz", +      "integrity": "sha512-6VPD0Pc1lpTqw0aKoeRTMiB+kWhAoT24PA+ksWSBrFtl5SIRVpZlwN3NNPQjehA2E/91FV3RjLWoVTglWcSV3Q==", +      "dev": true, +      "requires": { +        "@babel/helper-plugin-utils": "^7.8.0" +      } +    }, +    "@babel/plugin-syntax-optional-chaining": { +      "version": "7.8.3", +      "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-optional-chaining/-/plugin-syntax-optional-chaining-7.8.3.tgz", +      "integrity": "sha512-KoK9ErH1MBlCPxV0VANkXW2/dw4vlbGDrFgz8bmUsBGYkFRcbRwMh6cIJubdPrkxRwuGdtCk0v/wPTKbQgBjkg==", +      "dev": true, +      "requires": { +        "@babel/helper-plugin-utils": "^7.8.0" +      } +    }, +    "@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, +      "requires": { +        "@babel/helper-plugin-utils": "^7.14.5" +      } +    }, +    "@babel/plugin-syntax-typescript": { +      "version": "7.22.5", +      "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-typescript/-/plugin-syntax-typescript-7.22.5.tgz", +      "integrity": "sha512-1mS2o03i7t1c6VzH6fdQ3OA8tcEIxwG18zIPRp+UY1Ihv6W+XZzBCVxExF9upussPXJ0xE9XRHwMoNs1ep/nRQ==", +      "dev": true, +      "requires": { +        "@babel/helper-plugin-utils": "^7.22.5" +      }      },      "@babel/runtime": {        "version": "7.21.0", @@ -9227,30 +12031,28 @@        }      },      "@babel/template": { -      "version": "7.20.7", -      "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.20.7.tgz", -      "integrity": "sha512-8SegXApWe6VoNw0r9JHpSteLKTpTiLZ4rMlGIm9JQ18KiCtyQiAMEazujAHrUS5flrcqYZa75ukev3P6QmUwUw==", -      "peer": true, +      "version": "7.22.5", +      "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.22.5.tgz", +      "integrity": "sha512-X7yV7eiwAxdj9k94NEylvbVHLiVG1nvzCV2EAowhxLTwODV1jl9UzZ48leOC0sH7OnuHrIkllaBgneUykIcZaw==",        "requires": { -        "@babel/code-frame": "^7.18.6", -        "@babel/parser": "^7.20.7", -        "@babel/types": "^7.20.7" +        "@babel/code-frame": "^7.22.5", +        "@babel/parser": "^7.22.5", +        "@babel/types": "^7.22.5"        }      },      "@babel/traverse": { -      "version": "7.21.4", -      "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.21.4.tgz", -      "integrity": "sha512-eyKrRHKdyZxqDm+fV1iqL9UAHMoIg0nDaGqfIOd8rKH17m5snv7Gn4qgjBoFfLz9APvjFU/ICT00NVCv1Epp8Q==", -      "peer": true, -      "requires": { -        "@babel/code-frame": "^7.21.4", -        "@babel/generator": "^7.21.4", -        "@babel/helper-environment-visitor": "^7.18.9", -        "@babel/helper-function-name": "^7.21.0", -        "@babel/helper-hoist-variables": "^7.18.6", -        "@babel/helper-split-export-declaration": "^7.18.6", -        "@babel/parser": "^7.21.4", -        "@babel/types": "^7.21.4", +      "version": "7.22.5", +      "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.22.5.tgz", +      "integrity": "sha512-7DuIjPgERaNo6r+PZwItpjCZEa5vyw4eJGufeLxrPdBXBoLcCJCIasvK6pK/9DVNrLZTLFhUGqaC6X/PA007TQ==", +      "requires": { +        "@babel/code-frame": "^7.22.5", +        "@babel/generator": "^7.22.5", +        "@babel/helper-environment-visitor": "^7.22.5", +        "@babel/helper-function-name": "^7.22.5", +        "@babel/helper-hoist-variables": "^7.22.5", +        "@babel/helper-split-export-declaration": "^7.22.5", +        "@babel/parser": "^7.22.5", +        "@babel/types": "^7.22.5",          "debug": "^4.1.0",          "globals": "^11.1.0"        }, @@ -9258,19 +12060,17 @@          "globals": {            "version": "11.12.0",            "resolved": "https://registry.npmjs.org/globals/-/globals-11.12.0.tgz", -          "integrity": "sha512-WOBp/EEGUiIsJSp7wcv/y6MO+lV9UoncWqxuFfm8eBwzWNgyfBd6Gz+IeKQ9jCmyhoH99g15M3T+QaVHFjizVA==", -          "peer": true +          "integrity": "sha512-WOBp/EEGUiIsJSp7wcv/y6MO+lV9UoncWqxuFfm8eBwzWNgyfBd6Gz+IeKQ9jCmyhoH99g15M3T+QaVHFjizVA=="          }        }      },      "@babel/types": { -      "version": "7.21.4", -      "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.21.4.tgz", -      "integrity": "sha512-rU2oY501qDxE8Pyo7i/Orqma4ziCOrby0/9mvbDUGEfvZjb279Nk9k19e2fiCxHbRRpY2ZyrgW1eq22mvmOIzA==", -      "peer": true, +      "version": "7.22.5", +      "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.22.5.tgz", +      "integrity": "sha512-zo3MIHGOkPOfoRXitsgHLjEXmlDaD/5KU1Uzuc9GNiZPhSqVxVRtxuPaSBZDsYZ9qV88AjtMtWW7ww98loJ9KA==",        "requires": { -        "@babel/helper-string-parser": "^7.19.4", -        "@babel/helper-validator-identifier": "^7.19.1", +        "@babel/helper-string-parser": "^7.22.5", +        "@babel/helper-validator-identifier": "^7.22.5",          "to-fast-properties": "^2.0.0"        }      }, @@ -9286,6 +12086,12 @@          "js-yaml": "^4.1.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 +    },      "@electron/rebuild": {        "version": "3.2.10",        "resolved": "https://registry.npmjs.org/@electron/rebuild/-/rebuild-3.2.10.tgz", @@ -9555,6 +12361,363 @@        "integrity": "sha512-ZnQMnLV4e7hDlUvw8H+U8ASL02SS2Gn6+9Ac3wGGLIe7+je2AeAOxPY+izIPJDfFDb7eDjev0Us8MO1iFRN8hA==",        "dev": true      }, +    "@istanbuljs/load-nyc-config": { +      "version": "1.1.0", +      "resolved": "https://registry.npmjs.org/@istanbuljs/load-nyc-config/-/load-nyc-config-1.1.0.tgz", +      "integrity": "sha512-VjeHSlIzpv/NyD3N0YuHfXOPDIixcA1q2ZV98wsMqcYlPmv2n3Yb2lYP9XMElnaFVXg5A7YLTeLu6V84uQDjmQ==", +      "dev": true, +      "requires": { +        "camelcase": "^5.3.1", +        "find-up": "^4.1.0", +        "get-package-type": "^0.1.0", +        "js-yaml": "^3.13.1", +        "resolve-from": "^5.0.0" +      }, +      "dependencies": { +        "argparse": { +          "version": "1.0.10", +          "resolved": "https://registry.npmjs.org/argparse/-/argparse-1.0.10.tgz", +          "integrity": "sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==", +          "dev": true, +          "requires": { +            "sprintf-js": "~1.0.2" +          } +        }, +        "camelcase": { +          "version": "5.3.1", +          "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-5.3.1.tgz", +          "integrity": "sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg==", +          "dev": true +        }, +        "find-up": { +          "version": "4.1.0", +          "resolved": "https://registry.npmjs.org/find-up/-/find-up-4.1.0.tgz", +          "integrity": "sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==", +          "dev": true, +          "requires": { +            "locate-path": "^5.0.0", +            "path-exists": "^4.0.0" +          } +        }, +        "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, +          "requires": { +            "argparse": "^1.0.7", +            "esprima": "^4.0.0" +          } +        }, +        "locate-path": { +          "version": "5.0.0", +          "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-5.0.0.tgz", +          "integrity": "sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==", +          "dev": true, +          "requires": { +            "p-locate": "^4.1.0" +          } +        }, +        "p-limit": { +          "version": "2.3.0", +          "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz", +          "integrity": "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==", +          "dev": true, +          "requires": { +            "p-try": "^2.0.0" +          } +        }, +        "p-locate": { +          "version": "4.1.0", +          "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-4.1.0.tgz", +          "integrity": "sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==", +          "dev": true, +          "requires": { +            "p-limit": "^2.2.0" +          } +        }, +        "resolve-from": { +          "version": "5.0.0", +          "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-5.0.0.tgz", +          "integrity": "sha512-qYg9KP24dD5qka9J47d0aVky0N+b4fTU89LN9iDnjB5waksiC49rvMB0PrUJQGoTmH50XPiqOvAjDfaijGxYZw==", +          "dev": true +        } +      } +    }, +    "@istanbuljs/schema": { +      "version": "0.1.3", +      "resolved": "https://registry.npmjs.org/@istanbuljs/schema/-/schema-0.1.3.tgz", +      "integrity": "sha512-ZXRY4jNvVgSVQ8DL3LTcakaAtXwTVUxE81hslsyD2AtoXW/wVob10HkOJ1X/pAlcI7D+2YoZKg5do8G/w6RYgA==", +      "dev": true +    }, +    "@jest/console": { +      "version": "29.5.0", +      "resolved": "https://registry.npmjs.org/@jest/console/-/console-29.5.0.tgz", +      "integrity": "sha512-NEpkObxPwyw/XxZVLPmAGKE89IQRp4puc6IQRPru6JKd1M3fW9v1xM1AnzIJE65hbCkzQAdnL8P47e9hzhiYLQ==", +      "dev": true, +      "requires": { +        "@jest/types": "^29.5.0", +        "@types/node": "*", +        "chalk": "^4.0.0", +        "jest-message-util": "^29.5.0", +        "jest-util": "^29.5.0", +        "slash": "^3.0.0" +      } +    }, +    "@jest/core": { +      "version": "29.5.0", +      "resolved": "https://registry.npmjs.org/@jest/core/-/core-29.5.0.tgz", +      "integrity": "sha512-28UzQc7ulUrOQw1IsN/kv1QES3q2kkbl/wGslyhAclqZ/8cMdB5M68BffkIdSJgKBUt50d3hbwJ92XESlE7LiQ==", +      "dev": true, +      "requires": { +        "@jest/console": "^29.5.0", +        "@jest/reporters": "^29.5.0", +        "@jest/test-result": "^29.5.0", +        "@jest/transform": "^29.5.0", +        "@jest/types": "^29.5.0", +        "@types/node": "*", +        "ansi-escapes": "^4.2.1", +        "chalk": "^4.0.0", +        "ci-info": "^3.2.0", +        "exit": "^0.1.2", +        "graceful-fs": "^4.2.9", +        "jest-changed-files": "^29.5.0", +        "jest-config": "^29.5.0", +        "jest-haste-map": "^29.5.0", +        "jest-message-util": "^29.5.0", +        "jest-regex-util": "^29.4.3", +        "jest-resolve": "^29.5.0", +        "jest-resolve-dependencies": "^29.5.0", +        "jest-runner": "^29.5.0", +        "jest-runtime": "^29.5.0", +        "jest-snapshot": "^29.5.0", +        "jest-util": "^29.5.0", +        "jest-validate": "^29.5.0", +        "jest-watcher": "^29.5.0", +        "micromatch": "^4.0.4", +        "pretty-format": "^29.5.0", +        "slash": "^3.0.0", +        "strip-ansi": "^6.0.0" +      }, +      "dependencies": { +        "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 +        }, +        "strip-ansi": { +          "version": "6.0.1", +          "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", +          "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", +          "dev": true, +          "requires": { +            "ansi-regex": "^5.0.1" +          } +        } +      } +    }, +    "@jest/environment": { +      "version": "29.5.0", +      "resolved": "https://registry.npmjs.org/@jest/environment/-/environment-29.5.0.tgz", +      "integrity": "sha512-5FXw2+wD29YU1d4I2htpRX7jYnAyTRjP2CsXQdo9SAM8g3ifxWPSV0HnClSn71xwctr0U3oZIIH+dtbfmnbXVQ==", +      "dev": true, +      "requires": { +        "@jest/fake-timers": "^29.5.0", +        "@jest/types": "^29.5.0", +        "@types/node": "*", +        "jest-mock": "^29.5.0" +      } +    }, +    "@jest/expect": { +      "version": "29.5.0", +      "resolved": "https://registry.npmjs.org/@jest/expect/-/expect-29.5.0.tgz", +      "integrity": "sha512-PueDR2HGihN3ciUNGr4uelropW7rqUfTiOn+8u0leg/42UhblPxHkfoh0Ruu3I9Y1962P3u2DY4+h7GVTSVU6g==", +      "dev": true, +      "requires": { +        "expect": "^29.5.0", +        "jest-snapshot": "^29.5.0" +      } +    }, +    "@jest/expect-utils": { +      "version": "29.5.0", +      "resolved": "https://registry.npmjs.org/@jest/expect-utils/-/expect-utils-29.5.0.tgz", +      "integrity": "sha512-fmKzsidoXQT2KwnrwE0SQq3uj8Z763vzR8LnLBwC2qYWEFpjX8daRsk6rHUM1QvNlEW/UJXNXm59ztmJJWs2Mg==", +      "dev": true, +      "requires": { +        "jest-get-type": "^29.4.3" +      } +    }, +    "@jest/fake-timers": { +      "version": "29.5.0", +      "resolved": "https://registry.npmjs.org/@jest/fake-timers/-/fake-timers-29.5.0.tgz", +      "integrity": "sha512-9ARvuAAQcBwDAqOnglWq2zwNIRUDtk/SCkp/ToGEhFv5r86K21l+VEs0qNTaXtyiY0lEePl3kylijSYJQqdbDg==", +      "dev": true, +      "requires": { +        "@jest/types": "^29.5.0", +        "@sinonjs/fake-timers": "^10.0.2", +        "@types/node": "*", +        "jest-message-util": "^29.5.0", +        "jest-mock": "^29.5.0", +        "jest-util": "^29.5.0" +      } +    }, +    "@jest/globals": { +      "version": "29.5.0", +      "resolved": "https://registry.npmjs.org/@jest/globals/-/globals-29.5.0.tgz", +      "integrity": "sha512-S02y0qMWGihdzNbUiqSAiKSpSozSuHX5UYc7QbnHP+D9Lyw8DgGGCinrN9uSuHPeKgSSzvPom2q1nAtBvUsvPQ==", +      "dev": true, +      "requires": { +        "@jest/environment": "^29.5.0", +        "@jest/expect": "^29.5.0", +        "@jest/types": "^29.5.0", +        "jest-mock": "^29.5.0" +      } +    }, +    "@jest/reporters": { +      "version": "29.5.0", +      "resolved": "https://registry.npmjs.org/@jest/reporters/-/reporters-29.5.0.tgz", +      "integrity": "sha512-D05STXqj/M8bP9hQNSICtPqz97u7ffGzZu+9XLucXhkOFBqKcXe04JLZOgIekOxdb73MAoBUFnqvf7MCpKk5OA==", +      "dev": true, +      "requires": { +        "@bcoe/v8-coverage": "^0.2.3", +        "@jest/console": "^29.5.0", +        "@jest/test-result": "^29.5.0", +        "@jest/transform": "^29.5.0", +        "@jest/types": "^29.5.0", +        "@jridgewell/trace-mapping": "^0.3.15", +        "@types/node": "*", +        "chalk": "^4.0.0", +        "collect-v8-coverage": "^1.0.0", +        "exit": "^0.1.2", +        "glob": "^7.1.3", +        "graceful-fs": "^4.2.9", +        "istanbul-lib-coverage": "^3.0.0", +        "istanbul-lib-instrument": "^5.1.0", +        "istanbul-lib-report": "^3.0.0", +        "istanbul-lib-source-maps": "^4.0.0", +        "istanbul-reports": "^3.1.3", +        "jest-message-util": "^29.5.0", +        "jest-util": "^29.5.0", +        "jest-worker": "^29.5.0", +        "slash": "^3.0.0", +        "string-length": "^4.0.1", +        "strip-ansi": "^6.0.0", +        "v8-to-istanbul": "^9.0.1" +      }, +      "dependencies": { +        "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 +        }, +        "glob": { +          "version": "7.2.3", +          "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.3.tgz", +          "integrity": "sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==", +          "dev": true, +          "requires": { +            "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" +          } +        }, +        "strip-ansi": { +          "version": "6.0.1", +          "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", +          "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", +          "dev": true, +          "requires": { +            "ansi-regex": "^5.0.1" +          } +        } +      } +    }, +    "@jest/schemas": { +      "version": "29.4.3", +      "resolved": "https://registry.npmjs.org/@jest/schemas/-/schemas-29.4.3.tgz", +      "integrity": "sha512-VLYKXQmtmuEz6IxJsrZwzG9NvtkQsWNnWMsKxqWNu3+CnfzJQhp0WDDKWLVV9hLKr0l3SLLFRqcYHjhtyuDVxg==", +      "dev": true, +      "requires": { +        "@sinclair/typebox": "^0.25.16" +      } +    }, +    "@jest/source-map": { +      "version": "29.4.3", +      "resolved": "https://registry.npmjs.org/@jest/source-map/-/source-map-29.4.3.tgz", +      "integrity": "sha512-qyt/mb6rLyd9j1jUts4EQncvS6Yy3PM9HghnNv86QBlV+zdL2inCdK1tuVlL+J+lpiw2BI67qXOrX3UurBqQ1w==", +      "dev": true, +      "requires": { +        "@jridgewell/trace-mapping": "^0.3.15", +        "callsites": "^3.0.0", +        "graceful-fs": "^4.2.9" +      } +    }, +    "@jest/test-result": { +      "version": "29.5.0", +      "resolved": "https://registry.npmjs.org/@jest/test-result/-/test-result-29.5.0.tgz", +      "integrity": "sha512-fGl4rfitnbfLsrfx1uUpDEESS7zM8JdgZgOCQuxQvL1Sn/I6ijeAVQWGfXI9zb1i9Mzo495cIpVZhA0yr60PkQ==", +      "dev": true, +      "requires": { +        "@jest/console": "^29.5.0", +        "@jest/types": "^29.5.0", +        "@types/istanbul-lib-coverage": "^2.0.0", +        "collect-v8-coverage": "^1.0.0" +      } +    }, +    "@jest/test-sequencer": { +      "version": "29.5.0", +      "resolved": "https://registry.npmjs.org/@jest/test-sequencer/-/test-sequencer-29.5.0.tgz", +      "integrity": "sha512-yPafQEcKjkSfDXyvtgiV4pevSeyuA6MQr6ZIdVkWJly9vkqjnFfcfhRQqpD5whjoU8EORki752xQmjaqoFjzMQ==", +      "dev": true, +      "requires": { +        "@jest/test-result": "^29.5.0", +        "graceful-fs": "^4.2.9", +        "jest-haste-map": "^29.5.0", +        "slash": "^3.0.0" +      } +    }, +    "@jest/transform": { +      "version": "29.5.0", +      "resolved": "https://registry.npmjs.org/@jest/transform/-/transform-29.5.0.tgz", +      "integrity": "sha512-8vbeZWqLJOvHaDfeMuoHITGKSz5qWc9u04lnWrQE3VyuSw604PzQM824ZeX9XSjUCeDiE3GuxZe5UKa8J61NQw==", +      "dev": true, +      "requires": { +        "@babel/core": "^7.11.6", +        "@jest/types": "^29.5.0", +        "@jridgewell/trace-mapping": "^0.3.15", +        "babel-plugin-istanbul": "^6.1.1", +        "chalk": "^4.0.0", +        "convert-source-map": "^2.0.0", +        "fast-json-stable-stringify": "^2.1.0", +        "graceful-fs": "^4.2.9", +        "jest-haste-map": "^29.5.0", +        "jest-regex-util": "^29.4.3", +        "jest-util": "^29.5.0", +        "micromatch": "^4.0.4", +        "pirates": "^4.0.4", +        "slash": "^3.0.0", +        "write-file-atomic": "^4.0.2" +      } +    }, +    "@jest/types": { +      "version": "29.5.0", +      "resolved": "https://registry.npmjs.org/@jest/types/-/types-29.5.0.tgz", +      "integrity": "sha512-qbu7kN6czmVRc3xWFQcAN03RAUamgppVUdXrvl1Wr3jlNF93o9mJbGcDWrwGB6ht44u7efB1qCFgVQmca24Uog==", +      "dev": true, +      "requires": { +        "@jest/schemas": "^29.4.3", +        "@types/istanbul-lib-coverage": "^2.0.0", +        "@types/istanbul-reports": "^3.0.0", +        "@types/node": "*", +        "@types/yargs": "^17.0.8", +        "chalk": "^4.0.0" +      } +    },      "@jridgewell/gen-mapping": {        "version": "0.3.3",        "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.3.tgz", @@ -9919,11 +13082,35 @@          "tslib": "^2.4.1 || ^1.9.3"        }      }, +    "@sinclair/typebox": { +      "version": "0.25.24", +      "resolved": "https://registry.npmjs.org/@sinclair/typebox/-/typebox-0.25.24.tgz", +      "integrity": "sha512-XJfwUVUKDHF5ugKwIcxEgc9k8b7HbznCp6eUfWgu710hMPNIO4aw4/zB5RogDQz8nd6gyCDpU9O/m6qYEWY6yQ==", +      "dev": true +    },      "@sindresorhus/is": {        "version": "4.6.0",        "resolved": "https://registry.npmjs.org/@sindresorhus/is/-/is-4.6.0.tgz",        "integrity": "sha512-t09vSN3MdfsyCHoFcTRCH/iUtG7OJ0CsjzB8cjAmKc/va/kIgeDI/TxsigdncE/4be734m0cvIYwNaV4i2XqAw=="      }, +    "@sinonjs/commons": { +      "version": "3.0.0", +      "resolved": "https://registry.npmjs.org/@sinonjs/commons/-/commons-3.0.0.tgz", +      "integrity": "sha512-jXBtWAF4vmdNmZgD5FoKsVLv3rPgDnLgPbU84LIJ3otV44vJlDRokVng5v8NFJdCf/da9legHcKaRuZs4L7faA==", +      "dev": true, +      "requires": { +        "type-detect": "4.0.8" +      } +    }, +    "@sinonjs/fake-timers": { +      "version": "10.3.0", +      "resolved": "https://registry.npmjs.org/@sinonjs/fake-timers/-/fake-timers-10.3.0.tgz", +      "integrity": "sha512-V4BG07kuYSUkTCSBHG8G8TNhM+F19jXFWnQtzj+we8DrkpSBCee9Z3Ms8yiGer/dlmhe35/Xdgyo3/0rQKg7YA==", +      "dev": true, +      "requires": { +        "@sinonjs/commons": "^3.0.0" +      } +    },      "@styled-icons/heroicons-outline": {        "version": "10.47.0",        "resolved": "https://registry.npmjs.org/@styled-icons/heroicons-outline/-/heroicons-outline-10.47.0.tgz", @@ -10032,6 +13219,47 @@        "integrity": "sha512-RbzJvlNzmRq5c3O09UipeuXno4tA1FE6ikOjxZK0tuxVv3412l64l5t1W5pj4+rJq9vpkm/kwiR07aZXnsKPxw==",        "dev": true      }, +    "@types/babel__core": { +      "version": "7.20.1", +      "resolved": "https://registry.npmjs.org/@types/babel__core/-/babel__core-7.20.1.tgz", +      "integrity": "sha512-aACu/U/omhdk15O4Nfb+fHgH/z3QsfQzpnvRZhYhThms83ZnAOZz7zZAWO7mn2yyNQaA4xTO8GLK3uqFU4bYYw==", +      "dev": true, +      "requires": { +        "@babel/parser": "^7.20.7", +        "@babel/types": "^7.20.7", +        "@types/babel__generator": "*", +        "@types/babel__template": "*", +        "@types/babel__traverse": "*" +      } +    }, +    "@types/babel__generator": { +      "version": "7.6.4", +      "resolved": "https://registry.npmjs.org/@types/babel__generator/-/babel__generator-7.6.4.tgz", +      "integrity": "sha512-tFkciB9j2K755yrTALxD44McOrk+gfpIpvC3sxHjRawj6PfnQxrse4Clq5y/Rq+G3mrBurMax/lG8Qn2t9mSsg==", +      "dev": true, +      "requires": { +        "@babel/types": "^7.0.0" +      } +    }, +    "@types/babel__template": { +      "version": "7.4.1", +      "resolved": "https://registry.npmjs.org/@types/babel__template/-/babel__template-7.4.1.tgz", +      "integrity": "sha512-azBFKemX6kMg5Io+/rdGT0dkGreboUVR0Cdm3fz9QJWpaQGJRQXl7C+6hOTCZcMll7KFyEQpgbYI2lHdsS4U7g==", +      "dev": true, +      "requires": { +        "@babel/parser": "^7.1.0", +        "@babel/types": "^7.0.0" +      } +    }, +    "@types/babel__traverse": { +      "version": "7.20.1", +      "resolved": "https://registry.npmjs.org/@types/babel__traverse/-/babel__traverse-7.20.1.tgz", +      "integrity": "sha512-MitHFXnhtgwsGZWtT68URpOvLN4EREih1u3QtQiN4VdAxWKRVvGCSvw/Qth0M0Qq3pJpnGOu5JaM/ydK7OGbqg==", +      "dev": true, +      "requires": { +        "@babel/types": "^7.20.7" +      } +    },      "@types/cacheable-request": {        "version": "6.0.3",        "resolved": "https://registry.npmjs.org/@types/cacheable-request/-/cacheable-request-6.0.3.tgz", @@ -10061,6 +13289,15 @@          "@types/node": "*"        }      }, +    "@types/graceful-fs": { +      "version": "4.1.6", +      "resolved": "https://registry.npmjs.org/@types/graceful-fs/-/graceful-fs-4.1.6.tgz", +      "integrity": "sha512-Sig0SNORX9fdW+bQuTEovKj3uHcUL6LQKbCrrqb1X7J6/ReAbhCXRAhc+SMejhLELFj2QcyuxmUooZ4bt5ReSw==", +      "dev": true, +      "requires": { +        "@types/node": "*" +      } +    },      "@types/hast": {        "version": "2.3.4",        "resolved": "https://registry.npmjs.org/@types/hast/-/hast-2.3.4.tgz", @@ -10083,6 +13320,40 @@        "resolved": "https://registry.npmjs.org/@types/http-cache-semantics/-/http-cache-semantics-4.0.1.tgz",        "integrity": "sha512-SZs7ekbP8CN0txVG2xVRH6EgKmEm31BOxA07vkFaETzZz1xh+cbt8BcI0slpymvwhx5dlFnQG2rTlPVQn+iRPQ=="      }, +    "@types/istanbul-lib-coverage": { +      "version": "2.0.4", +      "resolved": "https://registry.npmjs.org/@types/istanbul-lib-coverage/-/istanbul-lib-coverage-2.0.4.tgz", +      "integrity": "sha512-z/QT1XN4K4KYuslS23k62yDIDLwLFkzxOuMplDtObz0+y7VqJCaO2o+SPwHCvLFZh7xazvvoor2tA/hPz9ee7g==", +      "dev": true +    }, +    "@types/istanbul-lib-report": { +      "version": "3.0.0", +      "resolved": "https://registry.npmjs.org/@types/istanbul-lib-report/-/istanbul-lib-report-3.0.0.tgz", +      "integrity": "sha512-plGgXAPfVKFoYfa9NpYDAkseG+g6Jr294RqeqcqDixSbU34MZVJRi/P+7Y8GDpzkEwLaGZZOpKIEmeVZNtKsrg==", +      "dev": true, +      "requires": { +        "@types/istanbul-lib-coverage": "*" +      } +    }, +    "@types/istanbul-reports": { +      "version": "3.0.1", +      "resolved": "https://registry.npmjs.org/@types/istanbul-reports/-/istanbul-reports-3.0.1.tgz", +      "integrity": "sha512-c3mAZEuK0lvBp8tmuL74XRKn1+y2dcwOUpH7x4WrF6gk1GIgiluDRgMYQtw2OFcBvAJWlt6ASU3tSqxp0Uu0Aw==", +      "dev": true, +      "requires": { +        "@types/istanbul-lib-report": "*" +      } +    }, +    "@types/jest": { +      "version": "29.5.2", +      "resolved": "https://registry.npmjs.org/@types/jest/-/jest-29.5.2.tgz", +      "integrity": "sha512-mSoZVJF5YzGVCk+FsDxzDuH7s+SCkzrgKZzf0Z0T2WudhBUPoF6ktoTPC4R0ZoCPCV5xUvuU6ias5NvxcBcMMg==", +      "dev": true, +      "requires": { +        "expect": "^29.0.0", +        "pretty-format": "^29.0.0" +      } +    },      "@types/json-schema": {        "version": "7.0.11",        "resolved": "https://registry.npmjs.org/@types/json-schema/-/json-schema-7.0.11.tgz", @@ -10205,6 +13476,12 @@        "integrity": "sha512-21cFJr9z3g5dW8B0CVI9g2O9beqaThGQ6ZFBqHfwhzLDKUxaqTIy3vnfah/UPkfOiF2pLq+tGz+W8RyCskuslw==",        "dev": true      }, +    "@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/styled-components": {        "version": "5.1.26",        "resolved": "https://registry.npmjs.org/@types/styled-components/-/styled-components-5.1.26.tgz", @@ -10227,9 +13504,9 @@        "integrity": "sha512-EwmlvuaxPNej9+T4v5AuBPJa2x2UOJVdjCtDHgcDqitUeOtjnJKJ+apYjVcAoBEMjKW1VVFGZLUb5+qqa09XFA=="      },      "@types/vscode": { -      "version": "1.60.0", -      "resolved": "https://registry.npmjs.org/@types/vscode/-/vscode-1.60.0.tgz", -      "integrity": "sha512-wZt3VTmzYrgZ0l/3QmEbCq4KAJ71K3/hmMQ/nfpv84oH8e81KKwPEoQ5v8dNCxfHFVJ1JabHKmCvqdYOoVm1Ow==", +      "version": "1.67.0", +      "resolved": "https://registry.npmjs.org/@types/vscode/-/vscode-1.67.0.tgz", +      "integrity": "sha512-GH8BDf8cw9AC9080uneJfulhSa7KHSMI2s/CyKePXoGNos9J486w2V4YKoeNUqIEkW4hKoEAWp6/cXTwyGj47g==",        "dev": true      },      "@types/ws": { @@ -10241,6 +13518,21 @@          "@types/node": "*"        }      }, +    "@types/yargs": { +      "version": "17.0.24", +      "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-17.0.24.tgz", +      "integrity": "sha512-6i0aC7jV6QzQB8ne1joVZ0eSFIstHsCrobmOtghM11yGlH0j43FKL2UhWdELkyps0zuf7qVTUVCCR+tgSlyLLw==", +      "dev": true, +      "requires": { +        "@types/yargs-parser": "*" +      } +    }, +    "@types/yargs-parser": { +      "version": "21.0.0", +      "resolved": "https://registry.npmjs.org/@types/yargs-parser/-/yargs-parser-21.0.0.tgz", +      "integrity": "sha512-iO9ZQHkZxHn4mSakYV0vFHAVDyEOIJQrV2uZ06HxEPcx+mt8swXoZHIbaaJ2crJYFfErySgktuTZ3BeLz+XmFA==", +      "dev": true +    },      "@typescript-eslint/eslint-plugin": {        "version": "5.48.2",        "resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-5.48.2.tgz", @@ -10539,6 +13831,46 @@          "typed-rest-client": "^1.8.4"        }      }, +    "babel-jest": { +      "version": "29.5.0", +      "resolved": "https://registry.npmjs.org/babel-jest/-/babel-jest-29.5.0.tgz", +      "integrity": "sha512-mA4eCDh5mSo2EcA9xQjVTpmbbNk32Zb3Q3QFQsNhaK56Q+yoXowzFodLux30HRgyOho5rsQ6B0P9QpMkvvnJ0Q==", +      "dev": true, +      "requires": { +        "@jest/transform": "^29.5.0", +        "@types/babel__core": "^7.1.14", +        "babel-plugin-istanbul": "^6.1.1", +        "babel-preset-jest": "^29.5.0", +        "chalk": "^4.0.0", +        "graceful-fs": "^4.2.9", +        "slash": "^3.0.0" +      } +    }, +    "babel-plugin-istanbul": { +      "version": "6.1.1", +      "resolved": "https://registry.npmjs.org/babel-plugin-istanbul/-/babel-plugin-istanbul-6.1.1.tgz", +      "integrity": "sha512-Y1IQok9821cC9onCx5otgFfRm7Lm+I+wwxOx738M/WLPZ9Q42m4IG5W0FNX8WLL2gYMZo3JkuXIH2DOpWM+qwA==", +      "dev": true, +      "requires": { +        "@babel/helper-plugin-utils": "^7.0.0", +        "@istanbuljs/load-nyc-config": "^1.0.0", +        "@istanbuljs/schema": "^0.1.2", +        "istanbul-lib-instrument": "^5.0.4", +        "test-exclude": "^6.0.0" +      } +    }, +    "babel-plugin-jest-hoist": { +      "version": "29.5.0", +      "resolved": "https://registry.npmjs.org/babel-plugin-jest-hoist/-/babel-plugin-jest-hoist-29.5.0.tgz", +      "integrity": "sha512-zSuuuAlTMT4mzLj2nPnUm6fsE6270vdOfnpbJ+RmruU75UhLFvL0N2NgI7xpeS7NaB6hGqmd5pVpGTDYvi4Q3w==", +      "dev": true, +      "requires": { +        "@babel/template": "^7.3.3", +        "@babel/types": "^7.3.3", +        "@types/babel__core": "^7.1.14", +        "@types/babel__traverse": "^7.0.6" +      } +    },      "babel-plugin-styled-components": {        "version": "2.1.1",        "resolved": "https://registry.npmjs.org/babel-plugin-styled-components/-/babel-plugin-styled-components-2.1.1.tgz", @@ -10558,6 +13890,36 @@        "integrity": "sha512-qrPaCSo9c8RHNRHIotaufGbuOBN8rtdC4QrrFFc43vyWCCz7Kl7GL1PGaXtMGQZUXrkCjNEgxDfmAuAabr/rlw==",        "peer": true      }, +    "babel-preset-current-node-syntax": { +      "version": "1.0.1", +      "resolved": "https://registry.npmjs.org/babel-preset-current-node-syntax/-/babel-preset-current-node-syntax-1.0.1.tgz", +      "integrity": "sha512-M7LQ0bxarkxQoN+vz5aJPsLBn77n8QgTFmo8WK0/44auK2xlCXrYcUxHFxgU7qW5Yzw/CjmLRK2uJzaCd7LvqQ==", +      "dev": true, +      "requires": { +        "@babel/plugin-syntax-async-generators": "^7.8.4", +        "@babel/plugin-syntax-bigint": "^7.8.3", +        "@babel/plugin-syntax-class-properties": "^7.8.3", +        "@babel/plugin-syntax-import-meta": "^7.8.3", +        "@babel/plugin-syntax-json-strings": "^7.8.3", +        "@babel/plugin-syntax-logical-assignment-operators": "^7.8.3", +        "@babel/plugin-syntax-nullish-coalescing-operator": "^7.8.3", +        "@babel/plugin-syntax-numeric-separator": "^7.8.3", +        "@babel/plugin-syntax-object-rest-spread": "^7.8.3", +        "@babel/plugin-syntax-optional-catch-binding": "^7.8.3", +        "@babel/plugin-syntax-optional-chaining": "^7.8.3", +        "@babel/plugin-syntax-top-level-await": "^7.8.3" +      } +    }, +    "babel-preset-jest": { +      "version": "29.5.0", +      "resolved": "https://registry.npmjs.org/babel-preset-jest/-/babel-preset-jest-29.5.0.tgz", +      "integrity": "sha512-JOMloxOqdiBSxMAzjRaH023/vvcaSaec49zvg+2LmNsktC7ei39LTJGw02J+9uUtTZUq6xbLyJ4dxe9sSmIuAg==", +      "dev": true, +      "requires": { +        "babel-plugin-jest-hoist": "^29.5.0", +        "babel-preset-current-node-syntax": "^1.0.0" +      } +    },      "bail": {        "version": "2.0.2",        "resolved": "https://registry.npmjs.org/bail/-/bail-2.0.2.tgz", @@ -10651,6 +14013,36 @@        "integrity": "sha512-qhAVI1+Av2X7qelOfAIYwXONood6XlZE/fXaBSmW/T5SzLAmCgzi+eiWE7fUvbHaeNBQH13UftjpXxsfLkMpgw==",        "dev": true      }, +    "browserslist": { +      "version": "4.21.9", +      "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.21.9.tgz", +      "integrity": "sha512-M0MFoZzbUrRU4KNfCrDLnvyE7gub+peetoTid3TBIqtunaDJyXlwhakT+/VkvSXcfIzFfK/nkCs4nmyTmxdNSg==", +      "dev": true, +      "requires": { +        "caniuse-lite": "^1.0.30001503", +        "electron-to-chromium": "^1.4.431", +        "node-releases": "^2.0.12", +        "update-browserslist-db": "^1.0.11" +      } +    }, +    "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": { +        "fast-json-stable-stringify": "2.x" +      } +    }, +    "bser": { +      "version": "2.1.1", +      "resolved": "https://registry.npmjs.org/bser/-/bser-2.1.1.tgz", +      "integrity": "sha512-gQxTNE/GAfIIrmHLUE3oJyp5FO6HRBfhjnw4/wMmA63ZGDJnWBmgY/lyQBpnDUkGmAhbSe39tx2d/iTOAfglwQ==", +      "dev": true, +      "requires": { +        "node-int64": "^0.4.0" +      } +    },      "buffer": {        "version": "5.7.1",        "resolved": "https://registry.npmjs.org/buffer/-/buffer-5.7.1.tgz", @@ -10666,6 +14058,12 @@        "integrity": "sha512-VO9Ht/+p3SN7SKWqcrgEzjGbRSJYTx+Q1pTQC0wrWqHx0vpJraQ6GtHx8tvcg1rlK1byhU5gccxgOgj7B0TDkQ==",        "dev": true      }, +    "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 +    },      "buffer-indexof-polyfill": {        "version": "1.0.2",        "resolved": "https://registry.npmjs.org/buffer-indexof-polyfill/-/buffer-indexof-polyfill-1.0.2.tgz", @@ -10773,6 +14171,12 @@        "integrity": "sha512-dU+Tx2fsypxTgtLoE36npi3UqcjSSMNYfkqgmoEhtZrraP5VWq0K7FkWVTYa8eMPtnU/G2txVsfdCJTn9uzpuQ==",        "peer": true      }, +    "caniuse-lite": { +      "version": "1.0.30001511", +      "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001511.tgz", +      "integrity": "sha512-NaWPJawcoedlghN4P7bDNeADD7K+rZaY6V8ZcME7PkEZo/nfOg+lnrUgRWiKbNxcQ4/toFKSxnS4WdbyPZnKkw==", +      "dev": true +    },      "chainsaw": {        "version": "0.1.0",        "resolved": "https://registry.npmjs.org/chainsaw/-/chainsaw-0.1.0.tgz", @@ -10791,6 +14195,12 @@          "supports-color": "^7.1.0"        }      }, +    "char-regex": { +      "version": "1.0.2", +      "resolved": "https://registry.npmjs.org/char-regex/-/char-regex-1.0.2.tgz", +      "integrity": "sha512-kWWXztvZ5SBQV+eRgKFeh8q5sLuZY2+8WUIzlxWVTg+oGwY14qylx1KbKzHd8P6ZYkAg0xyIDU9JMHhyJMZ1jw==", +      "dev": true +    },      "character-entities": {        "version": "2.0.2",        "resolved": "https://registry.npmjs.org/character-entities/-/character-entities-2.0.2.tgz", @@ -10861,6 +14271,18 @@        "resolved": "https://registry.npmjs.org/chownr/-/chownr-2.0.0.tgz",        "integrity": "sha512-bIomtDF5KGpdogkLd9VspvFzk9KfpyyGlS8YFVZl7TGPBHL5snIOnxeshwVgPteQ9b4Eydl+pVbIyE1DcvCWgQ=="      }, +    "ci-info": { +      "version": "3.8.0", +      "resolved": "https://registry.npmjs.org/ci-info/-/ci-info-3.8.0.tgz", +      "integrity": "sha512-eXTggHWSooYhq49F2opQhuHWgzucfF2YgODK4e1566GQs5BIfP30B0oenwBJHfWxAs2fyPB1s7Mg949zLf61Yw==", +      "dev": true +    }, +    "cjs-module-lexer": { +      "version": "1.2.3", +      "resolved": "https://registry.npmjs.org/cjs-module-lexer/-/cjs-module-lexer-1.2.3.tgz", +      "integrity": "sha512-0TNiGstbQmCFwt4akjjBg5pLRTSyj/PkWQ1ZoO2zntmg9yLqSRxwEa4iCfQLGjqhiqBfOJa7W/E8wfGrTDmlZQ==", +      "dev": true +    },      "clean-stack": {        "version": "2.2.0",        "resolved": "https://registry.npmjs.org/clean-stack/-/clean-stack-2.2.0.tgz", @@ -10939,6 +14361,18 @@          "mimic-response": "^1.0.0"        }      }, +    "co": { +      "version": "4.6.0", +      "resolved": "https://registry.npmjs.org/co/-/co-4.6.0.tgz", +      "integrity": "sha512-QVb0dM5HvG+uaxitm8wONl7jltx8dqhfU33DcqtOZcLSVIKSDDLDi7+0LbAKiyI8hD9u42m2YxXSkMGWThaecQ==", +      "dev": true +    }, +    "collect-v8-coverage": { +      "version": "1.0.1", +      "resolved": "https://registry.npmjs.org/collect-v8-coverage/-/collect-v8-coverage-1.0.1.tgz", +      "integrity": "sha512-iBPtljfCNcTKNAto0KEtDfZ3qzjJvqE3aTGZsbhjSBlorqpXJlaWWtPO35D+ZImoC3KWejX64o+yPGxhWSTzfg==", +      "dev": true +    },      "color-convert": {        "version": "2.0.1",        "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", @@ -11048,6 +14482,12 @@          "easy-table": "1.1.0"        }      }, +    "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 +    },      "cookie": {        "version": "0.4.2",        "resolved": "https://registry.npmjs.org/cookie/-/cookie-0.4.2.tgz", @@ -11168,6 +14608,12 @@          }        }      }, +    "dedent": { +      "version": "0.7.0", +      "resolved": "https://registry.npmjs.org/dedent/-/dedent-0.7.0.tgz", +      "integrity": "sha512-Q6fKUPqnAHAyhiUgFU7BUzLiv0kd8saH9al7tnu5Q/okj6dnupxyTgFIBjVzJATdfIAm9NAsvXNzjaKa+bxVyA==", +      "dev": true +    },      "deep-extend": {        "version": "0.6.0",        "resolved": "https://registry.npmjs.org/deep-extend/-/deep-extend-0.6.0.tgz", @@ -11180,6 +14626,12 @@        "integrity": "sha512-oIPzksmTg4/MriiaYGO+okXDT7ztn/w3Eptv/+gSIdMdKsJo0u4CfYNFJPy+4SKMuCqGw2wxnA+URMg3t8a/bQ==",        "dev": true      }, +    "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 +    },      "defaults": {        "version": "1.0.4",        "resolved": "https://registry.npmjs.org/defaults/-/defaults-1.0.4.tgz", @@ -11218,6 +14670,12 @@        "resolved": "https://registry.npmjs.org/detect-libc/-/detect-libc-2.0.1.tgz",        "integrity": "sha512-463v3ZeIrcWtdgIg6vI6XUncguvr2TnGl4SzDXinkt9mSLpBJKXT3mW6xT3VQdDN11+WVs29pgvivTc4Lp8v+w=="      }, +    "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 +    },      "didyoumean": {        "version": "1.2.2",        "resolved": "https://registry.npmjs.org/didyoumean/-/didyoumean-1.2.2.tgz", @@ -11228,6 +14686,12 @@        "resolved": "https://registry.npmjs.org/diff/-/diff-5.0.0.tgz",        "integrity": "sha512-/VTCrvm5Z0JGty/BWHljh+BAiw3IK+2j87NGMu8Nwc/f48WoDAC395uomO9ZD117ZOBaHmkX1oyLvkVM/aIT3w=="      }, +    "diff-sequences": { +      "version": "29.4.3", +      "resolved": "https://registry.npmjs.org/diff-sequences/-/diff-sequences-29.4.3.tgz", +      "integrity": "sha512-ofrBgwpPhCD85kMKtE9RYFFq6OC1A89oW2vvgWZNCwxrUpRUILopY7lsYyMDSjc8g6U6aiO0Qubg6r4Wgt5ZnA==", +      "dev": true +    },      "dir-glob": {        "version": "3.0.1",        "resolved": "https://registry.npmjs.org/dir-glob/-/dir-glob-3.0.1.tgz", @@ -11335,6 +14799,18 @@          "wcwidth": ">=1.0.1"        }      }, +    "electron-to-chromium": { +      "version": "1.4.449", +      "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.449.tgz", +      "integrity": "sha512-TxLRpRUj/107ATefeP8VIUWNOv90xJxZZbCW/eIbSZQiuiFANCx2b7u+GbVc9X4gU+xnbvypNMYVM/WArE1DNQ==", +      "dev": true +    }, +    "emittery": { +      "version": "0.13.1", +      "resolved": "https://registry.npmjs.org/emittery/-/emittery-0.13.1.tgz", +      "integrity": "sha512-DeWwawk6r5yR9jFgnDKYt4sLS0LmHJJi3ZOnb5/JdbYwj3nW+FxQnHIjhBKz8YLC7oRNPVM9NQ47I3CVx34eqQ==", +      "dev": true +    },      "emoji-regex": {        "version": "8.0.0",        "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", @@ -11373,6 +14849,15 @@        "resolved": "https://registry.npmjs.org/err-code/-/err-code-2.0.3.tgz",        "integrity": "sha512-2bmlRpNKBxT/CRmPOlyISQpNj+qSeYvcym/uT0Jx2bMOlKLtSy1ZmLuVxSEKKyor/N5yhvp/ZiG1oE3DEYMSFA=="      }, +    "error-ex": { +      "version": "1.3.2", +      "resolved": "https://registry.npmjs.org/error-ex/-/error-ex-1.3.2.tgz", +      "integrity": "sha512-7dFHNmqeFSEt2ZBsCriorKnn3Z2pj+fd9kmI6QoWw4//DL+icEBfc0U7qJCisqrTsKTjw4fNFy2pW9OqStD84g==", +      "dev": true, +      "requires": { +        "is-arrayish": "^0.2.1" +      } +    },      "es5-ext": {        "version": "0.10.62",        "resolved": "https://registry.npmjs.org/es5-ext/-/es5-ext-0.10.62.tgz", @@ -11581,6 +15066,12 @@          "eslint-visitor-keys": "^3.3.0"        }      }, +    "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 +    },      "esquery": {        "version": "1.4.0",        "resolved": "https://registry.npmjs.org/esquery/-/esquery-1.4.0.tgz", @@ -11660,12 +15151,31 @@          }        }      }, +    "exit": { +      "version": "0.1.2", +      "resolved": "https://registry.npmjs.org/exit/-/exit-0.1.2.tgz", +      "integrity": "sha512-Zk/eNKV2zbjpKzrsQ+n1G6poVbErQxJ0LBOJXaKZ1EViLzH+hrLu9cdXI4zw9dBQJslwBEpbQ2P1oS7nDxs6jQ==", +      "dev": true +    },      "expand-template": {        "version": "2.0.3",        "resolved": "https://registry.npmjs.org/expand-template/-/expand-template-2.0.3.tgz",        "integrity": "sha512-XYfuKMvj4O35f/pOXLObndIRvyQ+/+6AhODh+OKWj9S9498pHHn/IMszH+gt0fBCRWMNfk1ZSp5x3AifmnI2vg==",        "dev": true      }, +    "expect": { +      "version": "29.5.0", +      "resolved": "https://registry.npmjs.org/expect/-/expect-29.5.0.tgz", +      "integrity": "sha512-yM7xqUrCO2JdpFo4XpM82t+PJBFybdqoQuJLDGeDX2ij8NZzqRHyu3Hp188/JX7SWqud+7t4MUdvcgGBICMHZg==", +      "dev": true, +      "requires": { +        "@jest/expect-utils": "^29.5.0", +        "jest-get-type": "^29.4.3", +        "jest-matcher-utils": "^29.5.0", +        "jest-message-util": "^29.5.0", +        "jest-util": "^29.5.0" +      } +    },      "ext": {        "version": "1.7.0",        "resolved": "https://registry.npmjs.org/ext/-/ext-1.7.0.tgz", @@ -11773,6 +15283,15 @@          "reusify": "^1.0.4"        }      }, +    "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": { +        "bser": "2.1.1" +      } +    },      "fd-slicer": {        "version": "1.1.0",        "resolved": "https://registry.npmjs.org/fd-slicer/-/fd-slicer-1.1.0.tgz", @@ -12017,6 +15536,12 @@          }        }      }, +    "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 +    },      "get-caller-file": {        "version": "2.0.5",        "resolved": "https://registry.npmjs.org/get-caller-file/-/get-caller-file-2.0.5.tgz", @@ -12033,6 +15558,12 @@          "has-symbols": "^1.0.3"        }      }, +    "get-package-type": { +      "version": "0.1.0", +      "resolved": "https://registry.npmjs.org/get-package-type/-/get-package-type-0.1.0.tgz", +      "integrity": "sha512-pjzuKtY64GYfWizNAJ0fr9VqttZkNiK2iS430LtIHzjBEr6bX8Am2zm4sW4Ro5wjWW5cAlRL1qAMTcXbjNAO2Q==", +      "dev": true +    },      "get-stdin": {        "version": "8.0.0",        "resolved": "https://registry.npmjs.org/get-stdin/-/get-stdin-8.0.0.tgz", @@ -12207,6 +15738,12 @@          "lru-cache": "^6.0.0"        }      }, +    "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 +    },      "htmlparser2": {        "version": "8.0.1",        "resolved": "https://registry.npmjs.org/htmlparser2/-/htmlparser2-8.0.1.tgz", @@ -12301,6 +15838,16 @@          "resolve-from": "^4.0.0"        }      }, +    "import-local": { +      "version": "3.1.0", +      "resolved": "https://registry.npmjs.org/import-local/-/import-local-3.1.0.tgz", +      "integrity": "sha512-ASB07uLtnDs1o6EHjKpX34BKYDSqnFerfTOJL2HvMqF70LnxpjkzDB8J44oT9pu4AMPkQwf8jl6szgvNd2tRIg==", +      "dev": true, +      "requires": { +        "pkg-dir": "^4.2.0", +        "resolve-cwd": "^3.0.0" +      } +    },      "imurmurhash": {        "version": "0.1.4",        "resolved": "https://registry.npmjs.org/imurmurhash/-/imurmurhash-0.1.4.tgz", @@ -12386,6 +15933,12 @@        "resolved": "https://registry.npmjs.org/ip/-/ip-2.0.0.tgz",        "integrity": "sha512-WKa+XuLG1A1R0UWhl2+1XQSi+fZWMsYKffMZTTYsiZaUD8k2yDAj5atimTUD2TZkyCkNEeYE5NhFZmupOGtjYQ=="      }, +    "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 +    },      "is-binary-path": {        "version": "2.1.0",        "resolved": "https://registry.npmjs.org/is-binary-path/-/is-binary-path-2.1.0.tgz", @@ -12417,6 +15970,12 @@        "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz",        "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg=="      }, +    "is-generator-fn": { +      "version": "2.1.0", +      "resolved": "https://registry.npmjs.org/is-generator-fn/-/is-generator-fn-2.1.0.tgz", +      "integrity": "sha512-cTIB4yPYL/Grw0EaSzASzg6bBy9gqCofvWN8okThAYIxKJZC+udlRAmGbM0XLeniEJSs8uEgHPGuHSe1XsOLSQ==", +      "dev": true +    },      "is-glob": {        "version": "4.0.3",        "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.3.tgz", @@ -12479,11 +16038,572 @@        "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz",        "integrity": "sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw=="      }, +    "istanbul-lib-coverage": { +      "version": "3.2.0", +      "resolved": "https://registry.npmjs.org/istanbul-lib-coverage/-/istanbul-lib-coverage-3.2.0.tgz", +      "integrity": "sha512-eOeJ5BHCmHYvQK7xt9GkdHuzuCGS1Y6g9Gvnx3Ym33fz/HpLRYxiS0wHNr+m/MBC8B647Xt608vCDEvhl9c6Mw==", +      "dev": true +    }, +    "istanbul-lib-instrument": { +      "version": "5.2.1", +      "resolved": "https://registry.npmjs.org/istanbul-lib-instrument/-/istanbul-lib-instrument-5.2.1.tgz", +      "integrity": "sha512-pzqtp31nLv/XFOzXGuvhCb8qhjmTVo5vjVk19XE4CRlSWz0KoeJ3bw9XsA7nOp9YBf4qHjwBxkDzKcME/J29Yg==", +      "dev": true, +      "requires": { +        "@babel/core": "^7.12.3", +        "@babel/parser": "^7.14.7", +        "@istanbuljs/schema": "^0.1.2", +        "istanbul-lib-coverage": "^3.2.0", +        "semver": "^6.3.0" +      }, +      "dependencies": { +        "semver": { +          "version": "6.3.0", +          "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", +          "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", +          "dev": true +        } +      } +    }, +    "istanbul-lib-report": { +      "version": "3.0.0", +      "resolved": "https://registry.npmjs.org/istanbul-lib-report/-/istanbul-lib-report-3.0.0.tgz", +      "integrity": "sha512-wcdi+uAKzfiGT2abPpKZ0hSU1rGQjUQnLvtY5MpQ7QCTahD3VODhcu4wcfY1YtkGaDD5yuydOLINXsfbus9ROw==", +      "dev": true, +      "requires": { +        "istanbul-lib-coverage": "^3.0.0", +        "make-dir": "^3.0.0", +        "supports-color": "^7.1.0" +      } +    }, +    "istanbul-lib-source-maps": { +      "version": "4.0.1", +      "resolved": "https://registry.npmjs.org/istanbul-lib-source-maps/-/istanbul-lib-source-maps-4.0.1.tgz", +      "integrity": "sha512-n3s8EwkdFIJCG3BPKBYvskgXGoy88ARzvegkitk60NxRdwltLOTaH7CUiMRXvwYorl0Q712iEjcWB+fK/MrWVw==", +      "dev": true, +      "requires": { +        "debug": "^4.1.1", +        "istanbul-lib-coverage": "^3.0.0", +        "source-map": "^0.6.1" +      } +    }, +    "istanbul-reports": { +      "version": "3.1.5", +      "resolved": "https://registry.npmjs.org/istanbul-reports/-/istanbul-reports-3.1.5.tgz", +      "integrity": "sha512-nUsEMa9pBt/NOHqbcbeJEgqIlY/K7rVWUX6Lql2orY5e9roQOthbR3vtY4zzf2orPELg80fnxxk9zUyPlgwD1w==", +      "dev": true, +      "requires": { +        "html-escaper": "^2.0.0", +        "istanbul-lib-report": "^3.0.0" +      } +    },      "iterare": {        "version": "1.2.1",        "resolved": "https://registry.npmjs.org/iterare/-/iterare-1.2.1.tgz",        "integrity": "sha512-RKYVTCjAnRthyJes037NX/IiqeidgN1xc3j1RjFfECFp28A1GVwK9nA+i0rJPaHqSZwygLzRnFlzUuHFoWWy+Q=="      }, +    "jest": { +      "version": "29.5.0", +      "resolved": "https://registry.npmjs.org/jest/-/jest-29.5.0.tgz", +      "integrity": "sha512-juMg3he2uru1QoXX078zTa7pO85QyB9xajZc6bU+d9yEGwrKX6+vGmJQ3UdVZsvTEUARIdObzH68QItim6OSSQ==", +      "dev": true, +      "requires": { +        "@jest/core": "^29.5.0", +        "@jest/types": "^29.5.0", +        "import-local": "^3.0.2", +        "jest-cli": "^29.5.0" +      } +    }, +    "jest-changed-files": { +      "version": "29.5.0", +      "resolved": "https://registry.npmjs.org/jest-changed-files/-/jest-changed-files-29.5.0.tgz", +      "integrity": "sha512-IFG34IUMUaNBIxjQXF/iu7g6EcdMrGRRxaUSw92I/2g2YC6vCdTltl4nHvt7Ci5nSJwXIkCu8Ka1DKF+X7Z1Ag==", +      "dev": true, +      "requires": { +        "execa": "^5.0.0", +        "p-limit": "^3.1.0" +      } +    }, +    "jest-circus": { +      "version": "29.5.0", +      "resolved": "https://registry.npmjs.org/jest-circus/-/jest-circus-29.5.0.tgz", +      "integrity": "sha512-gq/ongqeQKAplVxqJmbeUOJJKkW3dDNPY8PjhJ5G0lBRvu0e3EWGxGy5cI4LAGA7gV2UHCtWBI4EMXK8c9nQKA==", +      "dev": true, +      "requires": { +        "@jest/environment": "^29.5.0", +        "@jest/expect": "^29.5.0", +        "@jest/test-result": "^29.5.0", +        "@jest/types": "^29.5.0", +        "@types/node": "*", +        "chalk": "^4.0.0", +        "co": "^4.6.0", +        "dedent": "^0.7.0", +        "is-generator-fn": "^2.0.0", +        "jest-each": "^29.5.0", +        "jest-matcher-utils": "^29.5.0", +        "jest-message-util": "^29.5.0", +        "jest-runtime": "^29.5.0", +        "jest-snapshot": "^29.5.0", +        "jest-util": "^29.5.0", +        "p-limit": "^3.1.0", +        "pretty-format": "^29.5.0", +        "pure-rand": "^6.0.0", +        "slash": "^3.0.0", +        "stack-utils": "^2.0.3" +      } +    }, +    "jest-cli": { +      "version": "29.5.0", +      "resolved": "https://registry.npmjs.org/jest-cli/-/jest-cli-29.5.0.tgz", +      "integrity": "sha512-L1KcP1l4HtfwdxXNFCL5bmUbLQiKrakMUriBEcc1Vfz6gx31ORKdreuWvmQVBit+1ss9NNR3yxjwfwzZNdQXJw==", +      "dev": true, +      "requires": { +        "@jest/core": "^29.5.0", +        "@jest/test-result": "^29.5.0", +        "@jest/types": "^29.5.0", +        "chalk": "^4.0.0", +        "exit": "^0.1.2", +        "graceful-fs": "^4.2.9", +        "import-local": "^3.0.2", +        "jest-config": "^29.5.0", +        "jest-util": "^29.5.0", +        "jest-validate": "^29.5.0", +        "prompts": "^2.0.1", +        "yargs": "^17.3.1" +      }, +      "dependencies": { +        "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 +        }, +        "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, +          "requires": { +            "string-width": "^4.2.0", +            "strip-ansi": "^6.0.1", +            "wrap-ansi": "^7.0.0" +          } +        }, +        "strip-ansi": { +          "version": "6.0.1", +          "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", +          "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", +          "dev": true, +          "requires": { +            "ansi-regex": "^5.0.1" +          } +        }, +        "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": "^8.0.1", +            "escalade": "^3.1.1", +            "get-caller-file": "^2.0.5", +            "require-directory": "^2.1.1", +            "string-width": "^4.2.3", +            "y18n": "^5.0.5", +            "yargs-parser": "^21.1.1" +          } +        }, +        "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 +        } +      } +    }, +    "jest-config": { +      "version": "29.5.0", +      "resolved": "https://registry.npmjs.org/jest-config/-/jest-config-29.5.0.tgz", +      "integrity": "sha512-kvDUKBnNJPNBmFFOhDbm59iu1Fii1Q6SxyhXfvylq3UTHbg6o7j/g8k2dZyXWLvfdKB1vAPxNZnMgtKJcmu3kA==", +      "dev": true, +      "requires": { +        "@babel/core": "^7.11.6", +        "@jest/test-sequencer": "^29.5.0", +        "@jest/types": "^29.5.0", +        "babel-jest": "^29.5.0", +        "chalk": "^4.0.0", +        "ci-info": "^3.2.0", +        "deepmerge": "^4.2.2", +        "glob": "^7.1.3", +        "graceful-fs": "^4.2.9", +        "jest-circus": "^29.5.0", +        "jest-environment-node": "^29.5.0", +        "jest-get-type": "^29.4.3", +        "jest-regex-util": "^29.4.3", +        "jest-resolve": "^29.5.0", +        "jest-runner": "^29.5.0", +        "jest-util": "^29.5.0", +        "jest-validate": "^29.5.0", +        "micromatch": "^4.0.4", +        "parse-json": "^5.2.0", +        "pretty-format": "^29.5.0", +        "slash": "^3.0.0", +        "strip-json-comments": "^3.1.1" +      }, +      "dependencies": { +        "glob": { +          "version": "7.2.3", +          "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.3.tgz", +          "integrity": "sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==", +          "dev": true, +          "requires": { +            "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" +          } +        } +      } +    }, +    "jest-diff": { +      "version": "29.5.0", +      "resolved": "https://registry.npmjs.org/jest-diff/-/jest-diff-29.5.0.tgz", +      "integrity": "sha512-LtxijLLZBduXnHSniy0WMdaHjmQnt3g5sa16W4p0HqukYTTsyTW3GD1q41TyGl5YFXj/5B2U6dlh5FM1LIMgxw==", +      "dev": true, +      "requires": { +        "chalk": "^4.0.0", +        "diff-sequences": "^29.4.3", +        "jest-get-type": "^29.4.3", +        "pretty-format": "^29.5.0" +      } +    }, +    "jest-docblock": { +      "version": "29.4.3", +      "resolved": "https://registry.npmjs.org/jest-docblock/-/jest-docblock-29.4.3.tgz", +      "integrity": "sha512-fzdTftThczeSD9nZ3fzA/4KkHtnmllawWrXO69vtI+L9WjEIuXWs4AmyME7lN5hU7dB0sHhuPfcKofRsUb/2Fg==", +      "dev": true, +      "requires": { +        "detect-newline": "^3.0.0" +      } +    }, +    "jest-each": { +      "version": "29.5.0", +      "resolved": "https://registry.npmjs.org/jest-each/-/jest-each-29.5.0.tgz", +      "integrity": "sha512-HM5kIJ1BTnVt+DQZ2ALp3rzXEl+g726csObrW/jpEGl+CDSSQpOJJX2KE/vEg8cxcMXdyEPu6U4QX5eruQv5hA==", +      "dev": true, +      "requires": { +        "@jest/types": "^29.5.0", +        "chalk": "^4.0.0", +        "jest-get-type": "^29.4.3", +        "jest-util": "^29.5.0", +        "pretty-format": "^29.5.0" +      } +    }, +    "jest-environment-node": { +      "version": "29.5.0", +      "resolved": "https://registry.npmjs.org/jest-environment-node/-/jest-environment-node-29.5.0.tgz", +      "integrity": "sha512-ExxuIK/+yQ+6PRGaHkKewYtg6hto2uGCgvKdb2nfJfKXgZ17DfXjvbZ+jA1Qt9A8EQSfPnt5FKIfnOO3u1h9qw==", +      "dev": true, +      "requires": { +        "@jest/environment": "^29.5.0", +        "@jest/fake-timers": "^29.5.0", +        "@jest/types": "^29.5.0", +        "@types/node": "*", +        "jest-mock": "^29.5.0", +        "jest-util": "^29.5.0" +      } +    }, +    "jest-get-type": { +      "version": "29.4.3", +      "resolved": "https://registry.npmjs.org/jest-get-type/-/jest-get-type-29.4.3.tgz", +      "integrity": "sha512-J5Xez4nRRMjk8emnTpWrlkyb9pfRQQanDrvWHhsR1+VUfbwxi30eVcZFlcdGInRibU4G5LwHXpI7IRHU0CY+gg==", +      "dev": true +    }, +    "jest-haste-map": { +      "version": "29.5.0", +      "resolved": "https://registry.npmjs.org/jest-haste-map/-/jest-haste-map-29.5.0.tgz", +      "integrity": "sha512-IspOPnnBro8YfVYSw6yDRKh/TiCdRngjxeacCps1cQ9cgVN6+10JUcuJ1EabrgYLOATsIAigxA0rLR9x/YlrSA==", +      "dev": true, +      "requires": { +        "@jest/types": "^29.5.0", +        "@types/graceful-fs": "^4.1.3", +        "@types/node": "*", +        "anymatch": "^3.0.3", +        "fb-watchman": "^2.0.0", +        "fsevents": "^2.3.2", +        "graceful-fs": "^4.2.9", +        "jest-regex-util": "^29.4.3", +        "jest-util": "^29.5.0", +        "jest-worker": "^29.5.0", +        "micromatch": "^4.0.4", +        "walker": "^1.0.8" +      } +    }, +    "jest-leak-detector": { +      "version": "29.5.0", +      "resolved": "https://registry.npmjs.org/jest-leak-detector/-/jest-leak-detector-29.5.0.tgz", +      "integrity": "sha512-u9YdeeVnghBUtpN5mVxjID7KbkKE1QU4f6uUwuxiY0vYRi9BUCLKlPEZfDGR67ofdFmDz9oPAy2G92Ujrntmow==", +      "dev": true, +      "requires": { +        "jest-get-type": "^29.4.3", +        "pretty-format": "^29.5.0" +      } +    }, +    "jest-matcher-utils": { +      "version": "29.5.0", +      "resolved": "https://registry.npmjs.org/jest-matcher-utils/-/jest-matcher-utils-29.5.0.tgz", +      "integrity": "sha512-lecRtgm/rjIK0CQ7LPQwzCs2VwW6WAahA55YBuI+xqmhm7LAaxokSB8C97yJeYyT+HvQkH741StzpU41wohhWw==", +      "dev": true, +      "requires": { +        "chalk": "^4.0.0", +        "jest-diff": "^29.5.0", +        "jest-get-type": "^29.4.3", +        "pretty-format": "^29.5.0" +      } +    }, +    "jest-message-util": { +      "version": "29.5.0", +      "resolved": "https://registry.npmjs.org/jest-message-util/-/jest-message-util-29.5.0.tgz", +      "integrity": "sha512-Kijeg9Dag6CKtIDA7O21zNTACqD5MD/8HfIV8pdD94vFyFuer52SigdC3IQMhab3vACxXMiFk+yMHNdbqtyTGA==", +      "dev": true, +      "requires": { +        "@babel/code-frame": "^7.12.13", +        "@jest/types": "^29.5.0", +        "@types/stack-utils": "^2.0.0", +        "chalk": "^4.0.0", +        "graceful-fs": "^4.2.9", +        "micromatch": "^4.0.4", +        "pretty-format": "^29.5.0", +        "slash": "^3.0.0", +        "stack-utils": "^2.0.3" +      } +    }, +    "jest-mock": { +      "version": "29.5.0", +      "resolved": "https://registry.npmjs.org/jest-mock/-/jest-mock-29.5.0.tgz", +      "integrity": "sha512-GqOzvdWDE4fAV2bWQLQCkujxYWL7RxjCnj71b5VhDAGOevB3qj3Ovg26A5NI84ZpODxyzaozXLOh2NCgkbvyaw==", +      "dev": true, +      "requires": { +        "@jest/types": "^29.5.0", +        "@types/node": "*", +        "jest-util": "^29.5.0" +      } +    }, +    "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, +      "requires": {} +    }, +    "jest-regex-util": { +      "version": "29.4.3", +      "resolved": "https://registry.npmjs.org/jest-regex-util/-/jest-regex-util-29.4.3.tgz", +      "integrity": "sha512-O4FglZaMmWXbGHSQInfXewIsd1LMn9p3ZXB/6r4FOkyhX2/iP/soMG98jGvk/A3HAN78+5VWcBGO0BJAPRh4kg==", +      "dev": true +    }, +    "jest-resolve": { +      "version": "29.5.0", +      "resolved": "https://registry.npmjs.org/jest-resolve/-/jest-resolve-29.5.0.tgz", +      "integrity": "sha512-1TzxJ37FQq7J10jPtQjcc+MkCkE3GBpBecsSUWJ0qZNJpmg6m0D9/7II03yJulm3H/fvVjgqLh/k2eYg+ui52w==", +      "dev": true, +      "requires": { +        "chalk": "^4.0.0", +        "graceful-fs": "^4.2.9", +        "jest-haste-map": "^29.5.0", +        "jest-pnp-resolver": "^1.2.2", +        "jest-util": "^29.5.0", +        "jest-validate": "^29.5.0", +        "resolve": "^1.20.0", +        "resolve.exports": "^2.0.0", +        "slash": "^3.0.0" +      } +    }, +    "jest-resolve-dependencies": { +      "version": "29.5.0", +      "resolved": "https://registry.npmjs.org/jest-resolve-dependencies/-/jest-resolve-dependencies-29.5.0.tgz", +      "integrity": "sha512-sjV3GFr0hDJMBpYeUuGduP+YeCRbd7S/ck6IvL3kQ9cpySYKqcqhdLLC2rFwrcL7tz5vYibomBrsFYWkIGGjOg==", +      "dev": true, +      "requires": { +        "jest-regex-util": "^29.4.3", +        "jest-snapshot": "^29.5.0" +      } +    }, +    "jest-runner": { +      "version": "29.5.0", +      "resolved": "https://registry.npmjs.org/jest-runner/-/jest-runner-29.5.0.tgz", +      "integrity": "sha512-m7b6ypERhFghJsslMLhydaXBiLf7+jXy8FwGRHO3BGV1mcQpPbwiqiKUR2zU2NJuNeMenJmlFZCsIqzJCTeGLQ==", +      "dev": true, +      "requires": { +        "@jest/console": "^29.5.0", +        "@jest/environment": "^29.5.0", +        "@jest/test-result": "^29.5.0", +        "@jest/transform": "^29.5.0", +        "@jest/types": "^29.5.0", +        "@types/node": "*", +        "chalk": "^4.0.0", +        "emittery": "^0.13.1", +        "graceful-fs": "^4.2.9", +        "jest-docblock": "^29.4.3", +        "jest-environment-node": "^29.5.0", +        "jest-haste-map": "^29.5.0", +        "jest-leak-detector": "^29.5.0", +        "jest-message-util": "^29.5.0", +        "jest-resolve": "^29.5.0", +        "jest-runtime": "^29.5.0", +        "jest-util": "^29.5.0", +        "jest-watcher": "^29.5.0", +        "jest-worker": "^29.5.0", +        "p-limit": "^3.1.0", +        "source-map-support": "0.5.13" +      } +    }, +    "jest-runtime": { +      "version": "29.5.0", +      "resolved": "https://registry.npmjs.org/jest-runtime/-/jest-runtime-29.5.0.tgz", +      "integrity": "sha512-1Hr6Hh7bAgXQP+pln3homOiEZtCDZFqwmle7Ew2j8OlbkIu6uE3Y/etJQG8MLQs3Zy90xrp2C0BRrtPHG4zryw==", +      "dev": true, +      "requires": { +        "@jest/environment": "^29.5.0", +        "@jest/fake-timers": "^29.5.0", +        "@jest/globals": "^29.5.0", +        "@jest/source-map": "^29.4.3", +        "@jest/test-result": "^29.5.0", +        "@jest/transform": "^29.5.0", +        "@jest/types": "^29.5.0", +        "@types/node": "*", +        "chalk": "^4.0.0", +        "cjs-module-lexer": "^1.0.0", +        "collect-v8-coverage": "^1.0.0", +        "glob": "^7.1.3", +        "graceful-fs": "^4.2.9", +        "jest-haste-map": "^29.5.0", +        "jest-message-util": "^29.5.0", +        "jest-mock": "^29.5.0", +        "jest-regex-util": "^29.4.3", +        "jest-resolve": "^29.5.0", +        "jest-snapshot": "^29.5.0", +        "jest-util": "^29.5.0", +        "slash": "^3.0.0", +        "strip-bom": "^4.0.0" +      }, +      "dependencies": { +        "glob": { +          "version": "7.2.3", +          "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.3.tgz", +          "integrity": "sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==", +          "dev": true, +          "requires": { +            "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" +          } +        } +      } +    }, +    "jest-snapshot": { +      "version": "29.5.0", +      "resolved": "https://registry.npmjs.org/jest-snapshot/-/jest-snapshot-29.5.0.tgz", +      "integrity": "sha512-x7Wolra5V0tt3wRs3/ts3S6ciSQVypgGQlJpz2rsdQYoUKxMxPNaoHMGJN6qAuPJqS+2iQ1ZUn5kl7HCyls84g==", +      "dev": true, +      "requires": { +        "@babel/core": "^7.11.6", +        "@babel/generator": "^7.7.2", +        "@babel/plugin-syntax-jsx": "^7.7.2", +        "@babel/plugin-syntax-typescript": "^7.7.2", +        "@babel/traverse": "^7.7.2", +        "@babel/types": "^7.3.3", +        "@jest/expect-utils": "^29.5.0", +        "@jest/transform": "^29.5.0", +        "@jest/types": "^29.5.0", +        "@types/babel__traverse": "^7.0.6", +        "@types/prettier": "^2.1.5", +        "babel-preset-current-node-syntax": "^1.0.0", +        "chalk": "^4.0.0", +        "expect": "^29.5.0", +        "graceful-fs": "^4.2.9", +        "jest-diff": "^29.5.0", +        "jest-get-type": "^29.4.3", +        "jest-matcher-utils": "^29.5.0", +        "jest-message-util": "^29.5.0", +        "jest-util": "^29.5.0", +        "natural-compare": "^1.4.0", +        "pretty-format": "^29.5.0", +        "semver": "^7.3.5" +      } +    }, +    "jest-util": { +      "version": "29.5.0", +      "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-29.5.0.tgz", +      "integrity": "sha512-RYMgG/MTadOr5t8KdhejfvUU82MxsCu5MF6KuDUHl+NuwzUt+Sm6jJWxTJVrDR1j5M/gJVCPKQEpWXY+yIQ6lQ==", +      "dev": true, +      "requires": { +        "@jest/types": "^29.5.0", +        "@types/node": "*", +        "chalk": "^4.0.0", +        "ci-info": "^3.2.0", +        "graceful-fs": "^4.2.9", +        "picomatch": "^2.2.3" +      } +    }, +    "jest-validate": { +      "version": "29.5.0", +      "resolved": "https://registry.npmjs.org/jest-validate/-/jest-validate-29.5.0.tgz", +      "integrity": "sha512-pC26etNIi+y3HV8A+tUGr/lph9B18GnzSRAkPaaZJIE1eFdiYm6/CewuiJQ8/RlfHd1u/8Ioi8/sJ+CmbA+zAQ==", +      "dev": true, +      "requires": { +        "@jest/types": "^29.5.0", +        "camelcase": "^6.2.0", +        "chalk": "^4.0.0", +        "jest-get-type": "^29.4.3", +        "leven": "^3.1.0", +        "pretty-format": "^29.5.0" +      } +    }, +    "jest-watcher": { +      "version": "29.5.0", +      "resolved": "https://registry.npmjs.org/jest-watcher/-/jest-watcher-29.5.0.tgz", +      "integrity": "sha512-KmTojKcapuqYrKDpRwfqcQ3zjMlwu27SYext9pt4GlF5FUgB+7XE1mcCnSm6a4uUpFyQIkb6ZhzZvHl+jiBCiA==", +      "dev": true, +      "requires": { +        "@jest/test-result": "^29.5.0", +        "@jest/types": "^29.5.0", +        "@types/node": "*", +        "ansi-escapes": "^4.2.1", +        "chalk": "^4.0.0", +        "emittery": "^0.13.1", +        "jest-util": "^29.5.0", +        "string-length": "^4.0.1" +      } +    }, +    "jest-worker": { +      "version": "29.5.0", +      "resolved": "https://registry.npmjs.org/jest-worker/-/jest-worker-29.5.0.tgz", +      "integrity": "sha512-NcrQnevGoSp4b5kg+akIpthoAFHxPBcb5P6mYPY0fUNT+sSvmtu6jlkEle3anczUKIKEbMxFimk9oTP/tpIPgA==", +      "dev": true, +      "requires": { +        "@types/node": "*", +        "jest-util": "^29.5.0", +        "merge-stream": "^2.0.0", +        "supports-color": "^8.0.0" +      }, +      "dependencies": { +        "supports-color": { +          "version": "8.1.1", +          "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-8.1.1.tgz", +          "integrity": "sha512-MpUEN2OodtUzxvKQl72cUF7RQ5EiHsGvSsVG0ia9c5RbWGL2CI4C7EpPS8UTBIplnlzZiNuV56w+FuNxy3ty2Q==", +          "dev": true, +          "requires": { +            "has-flag": "^4.0.0" +          } +        } +      } +    },      "jiti": {        "version": "1.18.2",        "resolved": "https://registry.npmjs.org/jiti/-/jiti-1.18.2.tgz", @@ -12512,14 +16632,19 @@      "jsesc": {        "version": "2.5.2",        "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-2.5.2.tgz", -      "integrity": "sha512-OYu7XEzjkCQ3C5Ps3QIZsQfNpqoJyZZA99wd9aWd05NCtC5pWOkShK2mkL6HXQR6/Cy2lbNdPlZBpuQHXE63gA==", -      "peer": true +      "integrity": "sha512-OYu7XEzjkCQ3C5Ps3QIZsQfNpqoJyZZA99wd9aWd05NCtC5pWOkShK2mkL6HXQR6/Cy2lbNdPlZBpuQHXE63gA=="      },      "json-buffer": {        "version": "3.0.1",        "resolved": "https://registry.npmjs.org/json-buffer/-/json-buffer-3.0.1.tgz",        "integrity": "sha512-4bV5BfR2mqfQTJm+V5tPPdf+ZpuhiIvTuAB5g8kcrXOZpTT/QwwVRWBywX1ozr6lEuPdbHxwaJlm9G6mI2sfSQ=="      }, +    "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 +    },      "json-schema-to-typescript": {        "version": "12.0.0",        "resolved": "https://registry.npmjs.org/json-schema-to-typescript/-/json-schema-to-typescript-12.0.0.tgz", @@ -12595,6 +16720,12 @@        "integrity": "sha512-Bdboy+l7tA3OGW6FjyFHWkP5LuByj1Tk33Ljyq0axyzdk9//JSi2u3fP1QSmd1KNwq6VOKYGlAu87CisVir6Pw==",        "dev": true      }, +    "json5": { +      "version": "2.2.3", +      "resolved": "https://registry.npmjs.org/json5/-/json5-2.2.3.tgz", +      "integrity": "sha512-XmOWe7eyHYH14cLdVPoyg+GOH3rYX++KpzrylJwSW98t3Nk+U8XOl8FWKOgwtzdb8lXGf6zYwDUzeHMWfxasyg==", +      "dev": true +    },      "jsonfile": {        "version": "6.1.0",        "resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-6.1.0.tgz", @@ -12690,6 +16821,12 @@        "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.21.tgz",        "integrity": "sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg=="      }, +    "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 +    },      "lodash.merge": {        "version": "4.6.2",        "resolved": "https://registry.npmjs.org/lodash.merge/-/lodash.merge-4.6.2.tgz", @@ -12762,6 +16899,29 @@          }        }      }, +    "make-dir": { +      "version": "3.1.0", +      "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-3.1.0.tgz", +      "integrity": "sha512-g3FeP20LNwhALb/6Cz6Dd4F2ngze0jz7tbzrD2wAV+o9FeNHe4rL+yK2md0J/fiSf1sa1ADhXqi5+oVwOM/eGw==", +      "dev": true, +      "requires": { +        "semver": "^6.0.0" +      }, +      "dependencies": { +        "semver": { +          "version": "6.3.0", +          "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", +          "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", +          "dev": true +        } +      } +    }, +    "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 +    },      "make-fetch-happen": {        "version": "10.2.1",        "resolved": "https://registry.npmjs.org/make-fetch-happen/-/make-fetch-happen-10.2.1.tgz", @@ -12807,6 +16967,15 @@          }        }      }, +    "makeerror": { +      "version": "1.0.12", +      "resolved": "https://registry.npmjs.org/makeerror/-/makeerror-1.0.12.tgz", +      "integrity": "sha512-JmqCvUhmt43madlpFzG4BQzG2Z3m6tvQDNKdClZnO3VbIudJYmxsT0FNJMeiB2+JTSlTQTSbU8QdesVmwJcmLg==", +      "dev": true, +      "requires": { +        "tmpl": "1.0.5" +      } +    },      "markdown-it": {        "version": "12.3.2",        "resolved": "https://registry.npmjs.org/markdown-it/-/markdown-it-12.3.2.tgz", @@ -13468,6 +17637,18 @@        "resolved": "https://registry.npmjs.org/node-gyp-build/-/node-gyp-build-4.6.0.tgz",        "integrity": "sha512-NTZVKn9IylLwUzaKjkas1e4u2DLNcV4rdYagA4PWdPwW87Bi7z+BznyKSRwS/761tV/lzCGXplWsiaMjLqP2zQ=="      }, +    "node-int64": { +      "version": "0.4.0", +      "resolved": "https://registry.npmjs.org/node-int64/-/node-int64-0.4.0.tgz", +      "integrity": "sha512-O5lz91xSOeoXP6DulyHfllpq+Eg00MWitZIbtPfoSEvqIHdl5gfcY6hYzDWnj0qD5tz52PI08u9qUvSVeUBeHw==", +      "dev": true +    }, +    "node-releases": { +      "version": "2.0.12", +      "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.12.tgz", +      "integrity": "sha512-QzsYKWhXTWx8h1kIvqfnC++o0pEmpRQA/aenALsL2F4pqNVr7YzcdMlDij5WBnwftRbJCNJL/O7zdKaxKPHqgQ==", +      "dev": true +    },      "nopt": {        "version": "6.0.0",        "resolved": "https://registry.npmjs.org/nopt/-/nopt-6.0.0.tgz", @@ -13628,6 +17809,12 @@          "aggregate-error": "^3.0.0"        }      }, +    "p-try": { +      "version": "2.2.0", +      "resolved": "https://registry.npmjs.org/p-try/-/p-try-2.2.0.tgz", +      "integrity": "sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==", +      "dev": true +    },      "parent-module": {        "version": "1.0.1",        "resolved": "https://registry.npmjs.org/parent-module/-/parent-module-1.0.1.tgz", @@ -13637,6 +17824,18 @@          "callsites": "^3.0.0"        }      }, +    "parse-json": { +      "version": "5.2.0", +      "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-5.2.0.tgz", +      "integrity": "sha512-ayCKvm/phCGxOkYRSCM82iDwct8/EonSEgCSxWxD7ve6jHggsFl4fZVQBPRNgQoKiuV/odhFrGzQXZwbifC8Rg==", +      "dev": true, +      "requires": { +        "@babel/code-frame": "^7.0.0", +        "error-ex": "^1.3.1", +        "json-parse-even-better-errors": "^2.3.0", +        "lines-and-columns": "^1.1.6" +      } +    },      "parse-semver": {        "version": "1.1.1",        "resolved": "https://registry.npmjs.org/parse-semver/-/parse-semver-1.1.1.tgz", @@ -13740,6 +17939,54 @@        "resolved": "https://registry.npmjs.org/pirates/-/pirates-4.0.5.tgz",        "integrity": "sha512-8V9+HQPupnaXMA23c5hvl69zXvTwTzyAYasnkb0Tts4XvO4CliqONMOnvlq26rkhLC3nWDFBJf73LU1e1VZLaQ=="      }, +    "pkg-dir": { +      "version": "4.2.0", +      "resolved": "https://registry.npmjs.org/pkg-dir/-/pkg-dir-4.2.0.tgz", +      "integrity": "sha512-HRDzbaKjC+AOWVXxAU/x54COGeIv9eb+6CkDSQoNTt4XyWoIJvuPsXizxu/Fr23EiekbtZwmh1IcIG/l/a10GQ==", +      "dev": true, +      "requires": { +        "find-up": "^4.0.0" +      }, +      "dependencies": { +        "find-up": { +          "version": "4.1.0", +          "resolved": "https://registry.npmjs.org/find-up/-/find-up-4.1.0.tgz", +          "integrity": "sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==", +          "dev": true, +          "requires": { +            "locate-path": "^5.0.0", +            "path-exists": "^4.0.0" +          } +        }, +        "locate-path": { +          "version": "5.0.0", +          "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-5.0.0.tgz", +          "integrity": "sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==", +          "dev": true, +          "requires": { +            "p-locate": "^4.1.0" +          } +        }, +        "p-limit": { +          "version": "2.3.0", +          "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz", +          "integrity": "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==", +          "dev": true, +          "requires": { +            "p-try": "^2.0.0" +          } +        }, +        "p-locate": { +          "version": "4.1.0", +          "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-4.1.0.tgz", +          "integrity": "sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==", +          "dev": true, +          "requires": { +            "p-limit": "^2.2.0" +          } +        } +      } +    },      "postcss": {        "version": "8.4.24",        "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.24.tgz", @@ -13807,9 +18054,9 @@        "integrity": "sha512-1NNCs6uurfkVbeXG4S8JFT9t19m45ICnif8zWLd5oPSZ50QnwMfK+H3jv408d4jw/7Bttv5axS5IiHoLaVNHeQ=="      },      "posthog-js": { -      "version": "1.63.3", -      "resolved": "https://registry.npmjs.org/posthog-js/-/posthog-js-1.63.3.tgz", -      "integrity": "sha512-Ob2x1ENxx/mWAdhLhc6ouKAph9LwmitBy7M+hiaFoS0T9g7OVL4lYdrJbODbYV+HX/HeO3bsnQwYO1QLPWm/YA==", +      "version": "1.68.5", +      "resolved": "https://registry.npmjs.org/posthog-js/-/posthog-js-1.68.5.tgz", +      "integrity": "sha512-EqQuIX0k564T2fhmzQK2Gcb8s/XRhHTpk6JOeGtJV7lpMI8Hffe+gGjGHcqIc4RoOg3LjAGYNHj6XgN+QPggLg==",        "requires": {          "fflate": "^0.4.1"        } @@ -13846,6 +18093,25 @@        "integrity": "sha512-vIS4Rlc2FNh0BySk3Wkd6xmwxB0FpOndW5fisM5H8hsZSxU2VWVB5CWIkIjWvrHjIhxk2g3bfMKM87zNTrZddw==",        "dev": true      }, +    "pretty-format": { +      "version": "29.5.0", +      "resolved": "https://registry.npmjs.org/pretty-format/-/pretty-format-29.5.0.tgz", +      "integrity": "sha512-V2mGkI31qdttvTFX7Mt4efOqHXqJWMu4/r66Xh3Z3BwZaPfPJgp6/gbwoujRpPUtfEF6AUUWx3Jim3GCw5g/Qw==", +      "dev": true, +      "requires": { +        "@jest/schemas": "^29.4.3", +        "ansi-styles": "^5.0.0", +        "react-is": "^18.0.0" +      }, +      "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 +        } +      } +    },      "process-exists": {        "version": "4.1.0",        "resolved": "https://registry.npmjs.org/process-exists/-/process-exists-4.1.0.tgz", @@ -13881,6 +18147,24 @@          "retry": "^0.12.0"        }      }, +    "prompts": { +      "version": "2.4.2", +      "resolved": "https://registry.npmjs.org/prompts/-/prompts-2.4.2.tgz", +      "integrity": "sha512-NxNv/kLguCA7p3jE8oL2aEBsrJWgAakBpgmgK6lpPWV+WuOmY6r2/zbAVnP+T8bQlA0nzHXSJSJW0Hq7ylaD2Q==", +      "dev": true, +      "requires": { +        "kleur": "^3.0.3", +        "sisteransi": "^1.0.5" +      }, +      "dependencies": { +        "kleur": { +          "version": "3.0.3", +          "resolved": "https://registry.npmjs.org/kleur/-/kleur-3.0.3.tgz", +          "integrity": "sha512-eTIzlVOSUR+JxdDFepEYcBMtZ9Qqdef+rnzWdRZuMbOywu5tO2w2N7rqjoANZ5k9vywhL6Br1VRjUIgTQx4E8w==", +          "dev": true +        } +      } +    },      "prop-types": {        "version": "15.8.1",        "resolved": "https://registry.npmjs.org/prop-types/-/prop-types-15.8.1.tgz", @@ -13928,6 +18212,12 @@        "integrity": "sha512-vKAcKbHEGA3cKbkNWwsA9MjHgIg4/X/xO/PnVQ/Pxt5eNC8/F726fGNlUlwwPej7NkmTg9OBWP4ovYvtdPtmXw==",        "dev": true      }, +    "pure-rand": { +      "version": "6.0.2", +      "resolved": "https://registry.npmjs.org/pure-rand/-/pure-rand-6.0.2.tgz", +      "integrity": "sha512-6Yg0ekpKICSjPswYOuC5sku/TSWaRYlA0qsXqJgM/d/4pLPHPuTxK7Nbf7jFKzAeedUhR8C7K9Uv63FBsSo8xQ==", +      "dev": true +    },      "qs": {        "version": "6.11.0",        "resolved": "https://registry.npmjs.org/qs/-/qs-6.11.0.tgz", @@ -14159,12 +18449,35 @@        "resolved": "https://registry.npmjs.org/resolve-alpn/-/resolve-alpn-1.2.1.tgz",        "integrity": "sha512-0a1F4l73/ZFZOakJnQ3FvkJ2+gSTQWz/r2KE5OdDY0TxPm5h4GkqkWWfM47T7HsbnOtcJVEF4epCVy6u7Q3K+g=="      }, +    "resolve-cwd": { +      "version": "3.0.0", +      "resolved": "https://registry.npmjs.org/resolve-cwd/-/resolve-cwd-3.0.0.tgz", +      "integrity": "sha512-OrZaX2Mb+rJCpH/6CpSqt9xFVpN++x01XnN2ie9g6P5/3xelLAkXWVADpdz1IHD/KFfEXyE6V0U01OQ3UO2rEg==", +      "dev": true, +      "requires": { +        "resolve-from": "^5.0.0" +      }, +      "dependencies": { +        "resolve-from": { +          "version": "5.0.0", +          "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-5.0.0.tgz", +          "integrity": "sha512-qYg9KP24dD5qka9J47d0aVky0N+b4fTU89LN9iDnjB5waksiC49rvMB0PrUJQGoTmH50XPiqOvAjDfaijGxYZw==", +          "dev": true +        } +      } +    },      "resolve-from": {        "version": "4.0.0",        "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-4.0.0.tgz",        "integrity": "sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g==",        "dev": true      }, +    "resolve.exports": { +      "version": "2.0.2", +      "resolved": "https://registry.npmjs.org/resolve.exports/-/resolve.exports-2.0.2.tgz", +      "integrity": "sha512-X2UW6Nw3n/aMgDVy+0rSqgHlv39WZAlZrXCdnbyEiKm17DSqHX4MmQMaST3FbeWR5FTuRcUwYAziZajji0Y7mg==", +      "dev": true +    },      "responselike": {        "version": "2.0.1",        "resolved": "https://registry.npmjs.org/responselike/-/responselike-2.0.1.tgz", @@ -14288,9 +18601,9 @@        }      },      "semver": { -      "version": "7.3.8", -      "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.8.tgz", -      "integrity": "sha512-NB1ctGL5rlHrPJtFDVIVzTyQylMLu9N9VICA6HSFJo8MCGVTMW6gfpicwKmmK/dAjTOrqu5l63JJOpDSrAis3A==", +      "version": "7.5.3", +      "resolved": "https://registry.npmjs.org/semver/-/semver-7.5.3.tgz", +      "integrity": "sha512-QBlUtyVk/5EeHbi7X0fw6liDZc7BBmEaSYn01fMU1OUYbf6GPsbTtd8WmnqbI20SeycoHSeiybkE/q1Q+qlThQ==",        "requires": {          "lru-cache": "^6.0.0"        } @@ -14367,6 +18680,12 @@          "simple-concat": "^1.0.0"        }      }, +    "sisteransi": { +      "version": "1.0.5", +      "resolved": "https://registry.npmjs.org/sisteransi/-/sisteransi-1.0.5.tgz", +      "integrity": "sha512-bLGGlR1QxBcynn2d5YmDX4MGjlZvy2MRBDRNHLJ8VI6l6+9FUiyTFNJ0IveOSP0bcXgVDPRcfGqA0pjaqUpfVg==", +      "dev": true +    },      "slash": {        "version": "3.0.0",        "resolved": "https://registry.npmjs.org/slash/-/slash-3.0.0.tgz", @@ -14397,11 +18716,27 @@          "socks": "^2.6.2"        }      }, +    "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 +    },      "source-map-js": {        "version": "1.0.2",        "resolved": "https://registry.npmjs.org/source-map-js/-/source-map-js-1.0.2.tgz",        "integrity": "sha512-R0XvVJ9WusLiqTCEiGCmICCMplcCkIwwR11mOSD9CR5u+IXYdiseeEuXCVAjS54zqwkLcPNnmU4OeJ6tUrWhDw=="      }, +    "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": { +        "buffer-from": "^1.0.0", +        "source-map": "^0.6.0" +      } +    },      "space-separated-tokens": {        "version": "2.0.2",        "resolved": "https://registry.npmjs.org/space-separated-tokens/-/space-separated-tokens-2.0.2.tgz", @@ -14413,6 +18748,12 @@        "integrity": "sha512-n98l9E2RMSJ9ON1AKisHzz7V42VDiBQGY6PB1BwRglz99wpVsSuGzQ+jOi6lFXBGVTCrRpltvjm+/XA+tpeJrg==",        "dev": true      }, +    "sprintf-js": { +      "version": "1.0.3", +      "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.0.3.tgz", +      "integrity": "sha512-D9cPgkvLlV3t3IzL0D0YLvGA9Ahk4PcvVwUbN0dSGr1aP0Nrt4AEnTUbuGvquEC0mA64Gqt1fzirlRs5ibXx8g==", +      "dev": true +    },      "ssri": {        "version": "9.0.1",        "resolved": "https://registry.npmjs.org/ssri/-/ssri-9.0.1.tgz", @@ -14421,6 +18762,23 @@          "minipass": "^3.1.1"        }      }, +    "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": { +        "escape-string-regexp": "^2.0.0" +      }, +      "dependencies": { +        "escape-string-regexp": { +          "version": "2.0.0", +          "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-2.0.0.tgz", +          "integrity": "sha512-UpzcLCXolUWcNu5HtVMHYdXJjArjsF9C0aNnquZYY4uW/Vu0miy5YoWvbV345HauVvcAUnpRuhMMcqTcGOY2+w==", +          "dev": true +        } +      } +    },      "string_decoder": {        "version": "1.1.1",        "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", @@ -14436,6 +18794,33 @@          }        }      }, +    "string-length": { +      "version": "4.0.2", +      "resolved": "https://registry.npmjs.org/string-length/-/string-length-4.0.2.tgz", +      "integrity": "sha512-+l6rNN5fYHNhZZy41RXsYptCjA2Igmq4EG7kZAYFQI1E1VTXarr6ZPXBg6eq7Y6eK4FEhY6AJlyuFIb/v/S0VQ==", +      "dev": true, +      "requires": { +        "char-regex": "^1.0.2", +        "strip-ansi": "^6.0.0" +      }, +      "dependencies": { +        "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 +        }, +        "strip-ansi": { +          "version": "6.0.1", +          "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", +          "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", +          "dev": true, +          "requires": { +            "ansi-regex": "^5.0.1" +          } +        } +      } +    },      "string-width": {        "version": "4.2.3",        "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", @@ -14469,6 +18854,12 @@          "ansi-regex": "^6.0.1"        }      }, +    "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 +    },      "strip-final-newline": {        "version": "2.0.0",        "resolved": "https://registry.npmjs.org/strip-final-newline/-/strip-final-newline-2.0.0.tgz", @@ -14683,6 +19074,33 @@          "execa": "^5.1.1"        }      }, +    "test-exclude": { +      "version": "6.0.0", +      "resolved": "https://registry.npmjs.org/test-exclude/-/test-exclude-6.0.0.tgz", +      "integrity": "sha512-cAGWPIyOHU6zlmg88jwm7VRyXnMN7iV68OGAbYDk/Mh/xC/pzVPlQtY6ngoIH/5/tciuhGfvESU8GrHrcxD56w==", +      "dev": true, +      "requires": { +        "@istanbuljs/schema": "^0.1.2", +        "glob": "^7.1.4", +        "minimatch": "^3.0.4" +      }, +      "dependencies": { +        "glob": { +          "version": "7.2.3", +          "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.3.tgz", +          "integrity": "sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==", +          "dev": true, +          "requires": { +            "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" +          } +        } +      } +    },      "text-table": {        "version": "0.2.0",        "resolved": "https://registry.npmjs.org/text-table/-/text-table-0.2.0.tgz", @@ -14730,11 +19148,16 @@          "rimraf": "^3.0.0"        }      }, +    "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": "sha512-/OaKK0xYrs3DmxRYqL/yDc+FxFUVYhDlXMhRmv3z915w2HF1tnN1omB354j8VUGO/hbRzyD6Y3sA7v7GS/ceog==", -      "peer": true +      "integrity": "sha512-/OaKK0xYrs3DmxRYqL/yDc+FxFUVYhDlXMhRmv3z915w2HF1tnN1omB354j8VUGO/hbRzyD6Y3sA7v7GS/ceog=="      },      "to-regex-range": {        "version": "5.0.1", @@ -14776,6 +19199,30 @@        "resolved": "https://registry.npmjs.org/ts-interface-checker/-/ts-interface-checker-0.1.13.tgz",        "integrity": "sha512-Y/arvbn+rrz3JCKl9C4kVNfTfSm2/mEp5FSz5EsZSANGPSlQrpRI5M4PKF+mJnE52jOO90PnPSc3Ur3bTQw0gA=="      }, +    "ts-jest": { +      "version": "29.1.1", +      "resolved": "https://registry.npmjs.org/ts-jest/-/ts-jest-29.1.1.tgz", +      "integrity": "sha512-D6xjnnbP17cC85nliwGiL+tpoKN0StpgE0TeOjXQTU6MVCfsB4v7aW05CgQ/1OywGb0x/oy9hHFnN+sczTiRaA==", +      "dev": true, +      "requires": { +        "bs-logger": "0.x", +        "fast-json-stable-stringify": "2.x", +        "jest-util": "^29.0.0", +        "json5": "^2.2.3", +        "lodash.memoize": "4.x", +        "make-error": "1.x", +        "semver": "^7.5.3", +        "yargs-parser": "^21.0.1" +      }, +      "dependencies": { +        "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 +        } +      } +    },      "tslib": {        "version": "1.14.1",        "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", @@ -14820,6 +19267,12 @@          "prelude-ls": "^1.2.1"        }      }, +    "type-detect": { +      "version": "4.0.8", +      "resolved": "https://registry.npmjs.org/type-detect/-/type-detect-4.0.8.tgz", +      "integrity": "sha512-0fr/mIH1dlO+x7TlcMy+bIDqKPsw/70tVyeHW787goQjhmqaZe10uwLujubK9q9Lg6Fiho1KUKDYz0Z7k7g5/g==", +      "dev": true +    },      "type-fest": {        "version": "0.20.2",        "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.20.2.tgz", @@ -14972,6 +19425,16 @@          "setimmediate": "~1.0.4"        }      }, +    "update-browserslist-db": { +      "version": "1.0.11", +      "resolved": "https://registry.npmjs.org/update-browserslist-db/-/update-browserslist-db-1.0.11.tgz", +      "integrity": "sha512-dCwEFf0/oT85M1fHBg4F0jtLwJrutGoHSQXCh7u4o2t1drG+c0a9Flnqww6XUKSfQMPpJBRjU8d4RXB09qtvaA==", +      "dev": true, +      "requires": { +        "escalade": "^3.1.1", +        "picocolors": "^1.0.0" +      } +    },      "uri-js": {        "version": "4.4.1",        "resolved": "https://registry.npmjs.org/uri-js/-/uri-js-4.4.1.tgz", @@ -15014,6 +19477,25 @@          "sade": "^1.7.3"        }      }, +    "v8-to-istanbul": { +      "version": "9.1.0", +      "resolved": "https://registry.npmjs.org/v8-to-istanbul/-/v8-to-istanbul-9.1.0.tgz", +      "integrity": "sha512-6z3GW9x8G1gd+JIIgQQQxXuiJtCXeAjp6RaPEPLv62mH3iPHPxV6W3robxtCzNErRo6ZwTmzWhsbNvjyEBKzKA==", +      "dev": true, +      "requires": { +        "@jridgewell/trace-mapping": "^0.3.12", +        "@types/istanbul-lib-coverage": "^2.0.1", +        "convert-source-map": "^1.6.0" +      }, +      "dependencies": { +        "convert-source-map": { +          "version": "1.9.0", +          "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-1.9.0.tgz", +          "integrity": "sha512-ASFBup0Mz1uyiIjANan1jzLQami9z1PoYSZCiiYW2FczPbenXc45FZdBZLzOT+r6+iciuEModtmCti+hjaAk0A==", +          "dev": true +        } +      } +    },      "vfile": {        "version": "5.3.7",        "resolved": "https://registry.npmjs.org/vfile/-/vfile-5.3.7.tgz", @@ -15180,6 +19662,15 @@        "resolved": "https://registry.npmjs.org/vscode-languageserver-types/-/vscode-languageserver-types-3.17.2.tgz",        "integrity": "sha512-zHhCWatviizPIq9B7Vh9uvrH6x3sK8itC84HkamnBWoDFJtzBf7SWlpLCZUit72b3os45h6RWQNC9xHRDF8dRA=="      }, +    "walker": { +      "version": "1.0.8", +      "resolved": "https://registry.npmjs.org/walker/-/walker-1.0.8.tgz", +      "integrity": "sha512-ts/8E8l5b7kY0vlWLewOkDXMmPdLcVV4GmOQLyxuSswIJsweeFZtAsMF7k1Nszz+TYBQrlYRmzOnr398y1JemQ==", +      "dev": true, +      "requires": { +        "makeerror": "1.0.12" +      } +    },      "wcwidth": {        "version": "1.0.1",        "resolved": "https://registry.npmjs.org/wcwidth/-/wcwidth-1.0.1.tgz", @@ -15260,6 +19751,16 @@        "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz",        "integrity": "sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ=="      }, +    "write-file-atomic": { +      "version": "4.0.2", +      "resolved": "https://registry.npmjs.org/write-file-atomic/-/write-file-atomic-4.0.2.tgz", +      "integrity": "sha512-7KxauUdBmSdWnmpaGFg+ppNjKF8uNLry8LyzjauQDOVONfFLNKrKvQOxZ/VuTIcS/gge/YNahf5RIIQWTSarlg==", +      "dev": true, +      "requires": { +        "imurmurhash": "^0.1.4", +        "signal-exit": "^3.0.7" +      } +    },      "ws": {        "version": "8.13.0",        "resolved": "https://registry.npmjs.org/ws/-/ws-8.13.0.tgz", diff --git a/extension/package.json b/extension/package.json index 741532c2..bf371803 100644 --- a/extension/package.json +++ b/extension/package.json @@ -14,10 +14,10 @@    "displayName": "Continue",    "pricing": "Free",    "description": "The open-source coding autopilot", -  "version": "0.0.104", +  "version": "0.0.105",    "publisher": "Continue",    "engines": { -    "vscode": "^1.60.0" +    "vscode": "^1.67.0"    },    "categories": [      "Other", @@ -204,6 +204,7 @@      "pretest": "npm run compile && npm run lint",      "lint": "eslint src --ext ts",      "test": "node ./out/test/runTest.js", +    "jest": "jest --config ./jest.config.js",      "package": "cp ./config/prod_config.json ./config/config.json && mkdir -p ./build && vsce package --out ./build && cp ./config/dev_config.json ./config/config.json",      "full-package": "cd ../continuedev && poetry build && cp ./dist/continuedev-0.1.2-py3-none-any.whl ../extension/scripts/continuedev-0.1.2-py3-none-any.whl && cd ../extension && npm install && npm run typegen && npm run clientgen && cd react-app && npm install && npm run build && cd .. && npm run package",      "install-extension": "code --install-extension ./build/continue-0.0.8.vsix", @@ -213,12 +214,13 @@    "devDependencies": {      "@openapitools/openapi-generator-cli": "^2.5.2",      "@types/glob": "^8.0.0", +    "@types/jest": "^29.5.2",      "@types/mocha": "^10.0.1",      "@types/node": "16.x",      "@types/node-fetch": "^2.6.2",      "@types/react-dom": "^18.2.4",      "@types/styled-components": "^5.1.26", -    "@types/vscode": "1.60", +    "@types/vscode": "1.67",      "@types/ws": "^8.5.4",      "@typescript-eslint/eslint-plugin": "^5.45.0",      "@typescript-eslint/parser": "^5.45.0", @@ -226,8 +228,10 @@      "esbuild": "^0.17.19",      "eslint": "^8.28.0",      "glob": "^8.0.3", +    "jest": "^29.5.0",      "json-schema-to-typescript": "^12.0.0",      "mocha": "^10.1.0", +    "ts-jest": "^29.1.1",      "typescript": "^4.9.3",      "vsce": "^2.15.0"    }, @@ -243,7 +247,7 @@      "downshift": "^7.6.0",      "fkill": "^8.1.0",      "highlight.js": "^11.7.0", -    "posthog-js": "^1.63.3", +    "posthog-js": "^1.68.3",      "react-markdown": "^8.0.7",      "react-redux": "^8.0.5",      "strip-ansi": "^7.1.0", diff --git a/extension/react-app/src/components/ComboBox.tsx b/extension/react-app/src/components/ComboBox.tsx index 87c1abc0..742c643b 100644 --- a/extension/react-app/src/components/ComboBox.tsx +++ b/extension/react-app/src/components/ComboBox.tsx @@ -269,7 +269,7 @@ const ComboBox = React.forwardRef((props: ComboBoxProps, ref) => {          <span className="text-trueGray-400 ml-auto mr-4 text-xs">            Highlight code to include as context.{" "} -          {highlightedCodeSections.length > 0 && +          {highlightedCodeSections.length === 0 &&              "Otherwise using entire currently open file."}          </span>        </div> diff --git a/extension/react-app/src/tabs/gui.tsx b/extension/react-app/src/tabs/gui.tsx index 973982ba..cccd184e 100644 --- a/extension/react-app/src/tabs/gui.tsx +++ b/extension/react-app/src/tabs/gui.tsx @@ -215,30 +215,35 @@ function GUI(props: GUIProps) {        mainTextInputRef.current.value = "";        if (!client) return; +      setWaitingForSteps(true); +        if ( -        history?.timeline.length && -        history.timeline[history.current_index].step.name === -          "Waiting for user input" +        history && +        history.current_index >= 0 && +        history.current_index < history.timeline.length        ) { -        if (input.trim() === "") return; -        onStepUserInput(input, history!.current_index); -      } else if ( -        history?.timeline.length && -        history.timeline[history.current_index].step.name === +        if ( +          history.timeline[history.current_index].step.name === +          "Waiting for user input" +        ) { +          if (input.trim() === "") return; +          onStepUserInput(input, history!.current_index); +          return; +        } else if ( +          history.timeline[history.current_index].step.name ===            "Waiting for user confirmation" -      ) { -        onStepUserInput("ok", history!.current_index); -      } else { -        if (input.trim() === "") return; - -        client.sendMainInput(input); -        setUserInputQueue((queue) => { -          return [...queue, input]; -        }); +        ) { +          onStepUserInput("ok", history!.current_index); +          return; +        }        } -    } +      if (input.trim() === "") return; -    setWaitingForSteps(true); +      client.sendMainInput(input); +      setUserInputQueue((queue) => { +        return [...queue, input]; +      }); +    }    };    const onStepUserInput = (input: string, index: number) => { diff --git a/extension/src/__mocks__/vscode.ts b/extension/src/__mocks__/vscode.ts new file mode 100644 index 00000000..d415b5a0 --- /dev/null +++ b/extension/src/__mocks__/vscode.ts @@ -0,0 +1,7 @@ +const vscode = { +  window: { +    onDidChangeVisibleTextEditors: jest.fn(), +  }, +}; + +module.exports = vscode; diff --git a/extension/src/activation/environmentSetup.ts b/extension/src/activation/environmentSetup.ts index 4e6be9b3..71b774d9 100644 --- a/extension/src/activation/environmentSetup.ts +++ b/extension/src/activation/environmentSetup.ts @@ -4,7 +4,6 @@ const exec = util.promisify(require("child_process").exec);  const { spawn } = require("child_process");  import * as path from "path";  import * as fs from "fs"; -import rebuild from "@electron/rebuild";  import { getContinueServerUrl } from "../bridge";  import fetch from "node-fetch";  import * as vscode from "vscode"; @@ -60,7 +59,7 @@ async function runCommand(cmd: string): Promise<[string, string | undefined]> {    return [stdout, stderr];  } -async function getPythonPipCommands() { +export async function getPythonPipCommands() {    var [stdout, stderr] = await runCommand("python3 --version");    let pythonCmd = "python3";    if (stderr) { @@ -111,10 +110,8 @@ async function getPythonPipCommands() {        );        throw new Error("Python3.8 or greater is not installed.");      } -  } else { -    pythonCmd = `python${major}.${minor}`; -    pipCmd = `pip${major}.${minor}`;    } +    return [pythonCmd, pipCmd];  } @@ -368,16 +365,6 @@ export async function startContinuePythonServer() {    });  } -async function installNodeModules() { -  console.log("Rebuilding node-pty for Continue extension..."); -  await rebuild({ -    buildPath: getExtensionUri().fsPath, // Folder containing node_modules -    electronVersion: "19.1.8", -    onlyModules: ["node-pty"], -  }); -  console.log("Successfully rebuilt node-pty"); -} -  export function isPythonEnvSetup(): boolean {    let pathToEnvCfg = getExtensionUri().fsPath + "/scripts/env/pyvenv.cfg";    return fs.existsSync(path.join(pathToEnvCfg)); diff --git a/extension/src/activation/test/environmentSetup.test.ts b/extension/src/activation/test/environmentSetup.test.ts new file mode 100644 index 00000000..ca487416 --- /dev/null +++ b/extension/src/activation/test/environmentSetup.test.ts @@ -0,0 +1,70 @@ +const child_process = require("child_process"); +import { platform } from "os"; +import { getPythonPipCommands } from "../environmentSetup"; + +jest.mock("os"); +jest.mock("child_process"); + +function mockPythonVersionMappings(mappings: { [pythonCmd: string]: string }) { +  (child_process.exec as jest.Mock).mockImplementation( +    (command: string, options: any) => { +      const pythonCmd = command.split(" ")[0]; +      if (pythonCmd in mappings) { +        return Promise.resolve([mappings[pythonCmd], ""]); +      } else { +        return Promise.resolve(["", stubStderr]); +      } +    } +  ); +} + +const stubStderr = +  "This is a stub stderr, but will be checked only for existence."; +describe("getPythonPipCommands", () => { +  describe("on Windows", () => { +    it("should return the correct Python and Pip commands", async () => { +      (platform as jest.Mock).mockReturnValue("win32"); +      mockPythonVersionMappings({ +        python: "Python 3.8.0", +      }); + +      const [pythonCmd, pipCmd] = await getPythonPipCommands(); + +      expect(pythonCmd).toBe("python"); +      expect(pipCmd).toBe("pip"); + +      jest.restoreAllMocks(); +    }); +    describe("on MacOS", () => { +      (platform as jest.Mock).mockReturnValue("darwin"); +      it("should check through all python versions after finding 3.7", async () => { +        mockPythonVersionMappings({ +          python: "", +          python3: "Python 3.7.0", +          "python3.11": "Python 3.11.0", +        }); + +        const [pythonCmd, pipCmd] = await getPythonPipCommands(); + +        expect(pythonCmd).toBe("python3.11"); +        expect(pipCmd).toBe("pip3.11"); + +        jest.restoreAllMocks(); +      }); + +      it("should use python3 if that maps to valid version", async () => { +        mockPythonVersionMappings({ +          python: "", +          python3: "Python 3.8.0", +        }); + +        const [pythonCmd, pipCmd] = await getPythonPipCommands(); + +        expect(pythonCmd).toBe("python3"); +        expect(pipCmd).toBe("pip3"); + +        jest.restoreAllMocks(); +      }); +    }); +  }); +}); diff --git a/extension/src/test/suite/terminalEmulator.test.ts b/extension/src/test/suite/terminalEmulator.test.ts deleted file mode 100644 index c4c159a4..00000000 --- a/extension/src/test/suite/terminalEmulator.test.ts +++ /dev/null @@ -1,28 +0,0 @@ -import { test, describe } from "mocha"; -import * as assert from "assert"; -import { PythonTracebackSnooper } from "../../terminal/snoopers"; - -suite("Snoopers", () => { -  suite("PythonTracebackSnooper", () => { -    test("should detect traceback given all at once", async () => { -      let traceback = `Traceback (most recent call last): -              File "/Users/natesesti/Desktop/continue/extension/examples/python/main.py", line 10, in <module> -                sum(first, second) -              File "/Users/natesesti/Desktop/continue/extension/examples/python/sum.py", line 2, in sum -                return a + b -            TypeError: unsupported operand type(s) for +: 'int' and 'str'`; -      let returnedTraceback = await new Promise((resolve) => { -        let callback = (data: string) => { -          resolve(data); -        }; -        let snooper = new PythonTracebackSnooper(callback); -        snooper.onData(traceback); -      }); -      assert( -        returnedTraceback === traceback, -        "Detected \n" + returnedTraceback -      ); -    }); -    test("should detect traceback given in chunks", () => {}); -  }); -}); | 
