From 6f06ef0635136578c64738fec01f7f1817c85be8 Mon Sep 17 00:00:00 2001 From: Frederik Wessberg Date: Fri, 4 Aug 2023 14:40:33 +0200 Subject: [PATCH] feat: add TypeScript v5.1 support. Add support for newer JSDOM versions --- .github/workflows/workflow.yml | 2 +- README.md | 6 +- package.json | 70 +- pnpm-lock.yaml | 2686 +++++++++-------- rollup.config.mjs | 1 + src/index.ts | 12 +- .../environment/browser/browser-globals.ts | 33 +- .../create-sanitized-environment.ts | 6 +- .../environment/ecma/ecma-globals.ts | 2 +- .../i-create-sanitized-environment-options.ts | 4 +- src/interpreter/environment/i-environment.ts | 4 +- .../node/node-built-ins-and-globals.ts | 2 +- .../async-iterator-not-supported-error.ts | 4 +- ...nc-iterator-not-supported-error-options.ts | 4 +- .../evaluation-error-intent.ts | 6 +- .../evaluation-error/evaluation-error.ts | 6 +- .../i-evaluation-error-options.ts | 4 +- ...atch-or-finally-after-try-error-options.ts | 4 +- ...issing-catch-or-finally-after-try-error.ts | 4 +- .../i-module-not-found-error-options.ts | 2 +- .../module-not-found-error.ts | 2 +- .../i-not-callable-error-options.ts | 4 +- .../not-callable-error/not-callable-error.ts | 5 +- .../policy-error/i-policy-error-options.ts | 4 +- .../io-error/i-io-error-options.ts | 4 +- .../error/policy-error/io-error/io-error.ts | 4 +- ...-max-op-duration-exceeded-error-options.ts | 2 +- .../max-op-duration-exceeded-error.ts | 2 +- .../i-max-ops-exceeded-error-options.ts | 2 +- .../max-ops-exceeded-error.ts | 2 +- .../network-error/i-network-error-options.ts | 2 +- .../network-error/network-error.ts | 2 +- .../i-non-deterministic-error-options.ts | 2 +- .../non-deterministic-error.ts | 2 +- .../error/policy-error/policy-error.ts | 4 +- .../process-error/i-process-error-options.ts | 4 +- .../process-error/process-error.ts | 4 +- .../i-undefined-identifier-error-options.ts | 4 +- .../undefined-identifier-error.ts | 4 +- .../i-undefined-left-value-error-options.ts | 2 +- .../undefined-left-value-error.ts | 2 +- .../i-unexpected-node-error-options.ts | 4 +- .../unexpected-node-error.ts | 2 +- .../i-unexpected-syntax-error-options.ts | 2 +- .../unexpected-syntax-error.ts | 2 +- src/interpreter/evaluate-options.ts | 10 +- src/interpreter/evaluate-result.ts | 2 +- src/interpreter/evaluate.ts | 17 +- .../evaluate-array-binding-pattern.ts | 6 +- .../evaluate-array-literal-expression.ts | 6 +- .../evaluate-arrow-function-expression.ts | 11 +- .../evaluator/evaluate-as-expression.ts | 6 +- .../evaluator/evaluate-await-expression.ts | 6 +- .../evaluator/evaluate-big-int-literal.ts | 6 +- .../evaluator/evaluate-binary-expression.ts | 6 +- .../evaluator/evaluate-binding-element.ts | 6 +- .../evaluator/evaluate-binding-name.ts | 6 +- src/interpreter/evaluator/evaluate-block.ts | 7 +- .../evaluator/evaluate-boolean-literal.ts | 6 +- .../evaluator/evaluate-break-statement.ts | 4 +- .../evaluator/evaluate-call-expression.ts | 7 +- .../evaluator/evaluate-case-block.ts | 6 +- .../evaluator/evaluate-case-clause.ts | 6 +- .../evaluator/evaluate-catch-clause.ts | 4 +- .../evaluator/evaluate-class-declaration.ts | 6 +- .../evaluator/evaluate-class-expression.ts | 8 +- .../evaluate-computed-property-name.ts | 6 +- .../evaluate-conditional-expression.ts | 6 +- .../evaluate-constructor-declaration.ts | 9 +- .../evaluator/evaluate-continue-statement.ts | 4 +- .../evaluator/evaluate-declaration.ts | 4 +- .../evaluator/evaluate-decorator.ts | 9 +- .../evaluator/evaluate-default-clause.ts | 4 +- .../evaluate-element-access-expression.ts | 7 +- .../evaluator/evaluate-enum-declaration.ts | 6 +- .../evaluator/evaluate-enum-member.ts | 6 +- .../evaluate-expression-statement.ts | 4 +- .../evaluator/evaluate-expression.ts | 6 +- .../evaluator/evaluate-for-in-statement.ts | 8 +- .../evaluator/evaluate-for-of-statement.ts | 8 +- .../evaluator/evaluate-for-statement.ts | 4 +- .../evaluate-function-declaration.ts | 11 +- .../evaluator/evaluate-function-expression.ts | 11 +- .../evaluate-get-accessor-declaration.ts | 9 +- .../evaluator/evaluate-identifier.ts | 6 +- .../evaluator/evaluate-if-statement.ts | 6 +- .../evaluator/evaluate-import-clause.ts | 4 +- .../evaluator/evaluate-import-declaration.ts | 4 +- .../evaluate-import-equals-declaration.ts | 4 +- .../evaluator/evaluate-import-specifier.ts | 4 +- .../evaluate-interface-declaration.ts | 4 +- .../evaluator/evaluate-meta-property.ts | 6 +- .../evaluator/evaluate-method-declaration.ts | 11 +- .../evaluator/evaluate-module-declaration.ts | 4 +- .../evaluator/evaluate-namespace-import.ts | 4 +- .../evaluator/evaluate-new-expression.ts | 6 +- .../evaluator/evaluate-node-with-argument.ts | 6 +- .../evaluator/evaluate-node-with-value.ts | 6 +- src/interpreter/evaluator/evaluate-node.ts | 4 +- .../evaluator/evaluate-non-null-expression.ts | 6 +- .../evaluator/evaluate-null-literal.ts | 6 +- .../evaluator/evaluate-numeric-literal.ts | 6 +- .../evaluate-object-binding-pattern.ts | 6 +- .../evaluate-object-literal-expression.ts | 6 +- .../evaluator/evaluate-omitted-expression.ts | 4 +- .../evaluate-parameter-declaration.ts | 6 +- .../evaluate-parameter-declarations.ts | 12 +- .../evaluate-parenthesized-expression.ts | 6 +- .../evaluate-postfix-unary-expression.ts | 6 +- .../evaluate-prefix-unary-expression.ts | 6 +- .../evaluate-property-access-expression.ts | 7 +- .../evaluator/evaluate-property-assignment.ts | 6 +- .../evaluate-property-declaration.ts | 6 +- .../evaluator/evaluate-property-name.ts | 6 +- .../evaluate-regular-expression-literal.ts | 6 +- .../evaluator/evaluate-return-statement.ts | 4 +- .../evaluate-set-accessor-declaration.ts | 9 +- .../evaluate-shorthand-property-assignment.ts | 6 +- ...valuate-source-file-as-namespace-object.ts | 6 +- .../evaluator/evaluate-spread-assignment.ts | 6 +- .../evaluator/evaluate-spread-element.ts | 6 +- .../evaluator/evaluate-statement.ts | 4 +- .../evaluator/evaluate-string-literal.ts | 6 +- .../evaluator/evaluate-super-expression.ts | 6 +- .../evaluator/evaluate-switch-statement.ts | 4 +- .../evaluator/evaluate-template-expression.ts | 6 +- .../evaluator/evaluate-this-expression.ts | 6 +- .../evaluator/evaluate-throw-statement.ts | 6 +- .../evaluator/evaluate-try-statement.ts | 6 +- .../evaluate-type-alias-declaration.ts | 4 +- .../evaluate-type-assertion-expression.ts | 6 +- .../evaluator/evaluate-type-of-expression.ts | 6 +- .../evaluate-variable-declaration-list.ts | 4 +- .../evaluate-variable-declaration.ts | 6 +- .../evaluator/evaluate-variable-statement.ts | 4 +- .../evaluator/evaluate-void-expression.ts | 6 +- .../evaluator/evaluate-while-statement.ts | 4 +- .../evaluator/evaluator-options.ts | 18 +- .../node-evaluator/create-node-evaluator.ts | 13 +- .../i-create-node-evaluator-options.ts | 16 +- .../node-evaluator/node-evaluator.ts | 8 +- .../simple/evaluate-simple-literal-result.ts | 2 +- .../simple/evaluate-simple-literal.ts | 4 +- .../clone-lexical-environment.ts | 4 +- .../get-dot-path-from-node.ts | 4 +- .../i-create-lexical-environment-options.ts | 6 +- .../i-set-in-lexical-environment-options.ts | 8 +- .../lexical-environment.ts | 10 +- src/interpreter/logger/logger.ts | 11 +- src/interpreter/policy/console/console-map.ts | 4 +- .../policy/console/is-console-operation.ts | 4 +- src/interpreter/policy/io/io-map.ts | 6 +- src/interpreter/policy/io/is-io-read.ts | 4 +- src/interpreter/policy/io/is-io-write.ts | 4 +- .../policy/is-trap-condition-met.ts | 5 +- .../policy/module/built-in-module-map.ts | 1 + .../policy/network/is-network-operation.ts | 4 +- src/interpreter/policy/network/network-map.ts | 4 +- .../nondeterministic/is-nondeterministic.ts | 4 +- .../nondeterministic/nondeterministic-map.ts | 4 +- .../process/is-process-exit-operation.ts | 4 +- .../is-process-spawn-child-operation.ts | 4 +- src/interpreter/policy/process/process-map.ts | 6 +- src/interpreter/policy/trap-condition-map.ts | 2 +- src/interpreter/proxy/create-policy-proxy.ts | 5 +- .../proxy/i-create-policy-proxy-options.ts | 4 +- src/interpreter/proxy/policy-proxy-hook.ts | 6 +- .../reporting/i-reporting-options.ts | 4 +- src/interpreter/stack/stack.ts | 2 +- .../statement-traversal-stack.ts | 2 +- .../util/class/generate-class-declaration.ts | 2 +- .../i-generate-class-declaration-options.ts | 2 +- .../util/declaration/get-declaration-name.ts | 6 +- .../util/declaration/is-declaration.ts | 2 +- .../expression-contains-super-keyword.ts | 2 +- .../util/expression/is-expression.ts | 2 +- .../util/flags/is-var-declaration.ts | 2 +- .../util/function/is-bind-call-apply.ts | 3 +- src/interpreter/util/iterable/is-iterable.ts | 2 +- .../loader/optional-peer-dependency-loader.ts | 2 +- src/interpreter/util/modifier/has-modifier.ts | 2 +- ...for-declaration-within-declaration-file.ts | 6 +- .../util/module/get-module-name-for-node.ts | 2 +- .../util/module/get-resolved-module-name.ts | 4 +- .../node/find-nearest-parent-node-of-kind.ts | 6 +- src/interpreter/util/node/get-inner-node.ts | 2 +- .../util/node/is-boolean-literal.ts | 2 +- src/interpreter/util/node/is-node.ts | 2 +- src/interpreter/util/node/is-null-literal.ts | 2 +- .../util/node/is-super-expression.ts | 2 +- .../util/node/is-this-expression.ts | 2 +- src/interpreter/util/node/modifier-util.ts | 49 +- .../util/reporting/report-error.ts | 4 +- .../util/statement/is-statement.ts | 2 +- .../util/static/in-static-context.ts | 4 +- .../util/syntax-kind/stringify-syntax-kind.ts | 2 +- src/type/file-system.ts | 2 +- src/type/jsdom.ts | 2 +- .../array-binding-pattern.test.ts | 11 +- .../array-literal-expression.test.ts | 5 +- test/assignments/assignments.test.ts | 7 +- .../await-expression/await-expression.test.ts | 5 +- .../binary-expression.test.ts | 45 +- test/call-expression/call-bind-apply.test.ts | 9 +- .../class-declaration.test.ts | 25 +- .../class-expression/class-expression.test.ts | 7 +- .../conditional-expression.test.ts | 7 +- test/decorator/decorator.test.ts | 20 +- .../enum-declaration/enum-declaration.test.ts | 11 +- test/environment/browser.test.ts | 7 +- test/environment/node-cjs.test.ts | 9 +- test/environment/node-esm.test.ts | 5 +- test/error-handling/error-handling.test.ts | 19 +- test/for-in/for-in.test.ts | 5 +- test/for-of/for-of.test.ts | 11 +- test/for/for.test.ts | 9 +- test/function-declaration/arithmetic.test.ts | 15 +- test/function-declaration/recursion.test.ts | 5 +- .../get-accessor-declaration.test.ts | 5 +- test/hoisting/hoisting.test.ts | 14 +- .../import-declaration.test.ts | 23 +- .../interface-declaration.test.ts | 5 +- .../logical-assignment.test.ts | 15 +- .../method-declaration.test.ts | 11 +- test/new-target/new-target.test.ts | 5 +- .../nullish-coalescing.test.ts | 5 +- .../object-binding-pattern.test.ts | 11 +- .../object-literal-expression.test.ts | 17 +- .../optional-chaining.test.ts | 9 +- test/policy/policy.test.ts | 32 +- .../postfix-unary-expression.test.ts | 5 +- .../property-declaration.test.ts | 7 +- test/setup/cached-fs.ts | 7 +- test/setup/create-compiler-host.ts | 4 +- test/setup/create-virtual-file-system.ts | 4 +- test/setup/execute-program.ts | 11 +- test/setup/test-context.ts | 4 +- test/setup/test-file.ts | 4 +- test/setup/test-result.ts | 4 +- test/setup/test-runner.ts | 104 + test/setup/test-setup.ts | 12 +- test/setup/ts-macro.ts | 89 - .../spread-assignment.test.ts | 5 +- test/spread-element/spread-element.test.ts | 7 +- test/switch/switch.test.ts | 15 +- test/try-catch/try-catch.test.ts | 12 +- .../type-alias-declaration.test.ts | 5 +- .../type-of-expression.test.ts | 7 +- test/void-expression/void-expression.test.ts | 9 +- test/while/while.test.ts | 5 +- tsconfig.json | 1 - 251 files changed, 2378 insertions(+), 2141 deletions(-) create mode 100644 test/setup/test-runner.ts delete mode 100644 test/setup/ts-macro.ts diff --git a/.github/workflows/workflow.yml b/.github/workflows/workflow.yml index fb2e5e2..d310f0a 100644 --- a/.github/workflows/workflow.yml +++ b/.github/workflows/workflow.yml @@ -11,7 +11,7 @@ jobs: strategy: matrix: os: [windows-latest, macos-latest, ubuntu-latest] - node: [14.19.0, 16, 17, 18] + node: [14.19.0, 16, 18, 20] steps: - name: Checkout code diff --git a/README.md b/README.md index 874e147..2bd0705 100644 --- a/README.md +++ b/README.md @@ -64,9 +64,9 @@ If you are looking for a Typescript REPL, or a way to _execute_ a full Typescrip [Become a sponsor/backer](https://github.com/wessberg/ts-evaluator?sponsor=1) and get your logo listed here. -| Bubbles | Xerox | Trent Raymond | scrubtheweb | Joel | -| ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------- | -| [Bubbles](https://usebubbles.com)
Twitter: [@usebubbles](https://twitter.com/usebubbles) | [Xerox](https://www.xerox.com) | [Trent Raymond](https://changelog.me) | [scrubtheweb](https://scrubtheweb.com) | [Joel](https://github.com/hjoelh) | +| Trent Raymond | scrubtheweb | +| -------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| [Trent Raymond](https://changelog.me) | [scrubtheweb](https://scrubtheweb.com/computers/programming/1) | ### Patreon diff --git a/package.json b/package.json index 5c9ca39..ac77c6f 100644 --- a/package.json +++ b/package.json @@ -7,9 +7,9 @@ "generate:changelog": "standard-changelog --first-release", "generate:all": "pnpm run generate:sandhog && pnpm run generate:changelog", "clean": "rimraf dist", - "lint": "tsc --noEmit && eslint \"src/**/*.ts\" --color", + "lint": "tsc --noEmit && eslint \"{src,test}/**/*.ts\" --color", "prettier": "prettier --write \"{src,test,documentation}/**/*.{js,ts,json,html,xml,css,md}\"", - "test": "ava", + "test": "cross-env NODE_NO_WARNINGS=1 FORCE_COLOR=3 NODE_OPTIONS=\"--loader=tsx --max_old_space_size=6144\" ava", "prebuild": "pnpm run clean", "build": "pnpm run prebuild && pnpm run rollup", "rollup": "rollup -c rollup.config.mjs", @@ -43,35 +43,36 @@ ], "license": "MIT", "devDependencies": { - "@types/jsdom": "^20.0.1", - "@types/node": "^18.11.18", + "@types/jsdom": "^21.1.1", + "@types/node": "^20.4.7", "@types/object-path": "^0.11.1", - "@types/semver": "^7.3.13", - "@typescript-eslint/eslint-plugin": "^5.48.1", - "@typescript-eslint/parser": "^5.48.1", - "@wessberg/ts-config": "^2.0.4", + "@types/semver": "^7.5.0", + "@typescript-eslint/eslint-plugin": "^6.2.1", + "@typescript-eslint/parser": "^6.2.1", + "@wessberg/ts-config": "^4.0.0", "@wessberg/prettier-config": "^1.0.0", - "rollup-plugin-ts": "3.1.1", - "ava": "^3.15.0", - "eslint": "^8.31.0", - "eslint-config-prettier": "^8.6.0", - "eslint-plugin-import": "^2.26.0", - "eslint-plugin-jsdoc": "^39.6.4", + "rollup-plugin-ts": "3.4.2", + "ava": "^5.3.1", + "cross-env": "^7.0.3", + "eslint": "^8.46.0", + "eslint-config-prettier": "^8.10.0", + "eslint-plugin-import": "^2.28.0", + "eslint-plugin-jsdoc": "^46.4.5", "helpertypes": "^0.0.19", "husky": "^8.0.3", - "memfs": "^3.4.13", - "np": "7.6.3", - "npm-check-updates": "^16.6.2", - "pnpm": "^7.23.0", - "prettier": "^2.8.2", + "memfs": "^4.2.0", + "np": "8.0.4", + "npm-check-updates": "^16.10.17", + "pnpm": "^8.6.11", + "prettier": "^3.0.1", "pretty-quick": "^3.1.3", - "rimraf": "^3.0.2", - "rollup": "^3.9.1", + "rimraf": "^5.0.1", + "rollup": "^3.27.2", "sandhog": "^2.0.2", - "semver": "7.3.8", - "jsdom": "^20.0.0", - "standard-changelog": "^2.0.27", - "ts-node": "^10.9.1", + "semver": "7.5.4", + "jsdom": "^22.1.0", + "standard-changelog": "^3.0.0", + "tsx": "^3.12.7", "typescript": "^5.1.6", "typescript-3-4-1": "npm:typescript@3.4.1", "typescript-3-5-1": "npm:typescript@3.5.1", @@ -89,8 +90,7 @@ "typescript-4-7-2": "npm:typescript@4.7.2", "typescript-4-8-2": "npm:typescript@4.8.2", "typescript-4-9-4": "npm:typescript@4.9.4", - "typescript-5-0-4": "npm:typescript@5.0.4", - "typescript-5-1-6": "npm:typescript@5.1.6" + "typescript-5-0-4": "npm:typescript@5.0.4" }, "dependencies": { "ansi-colors": "^4.1.3", @@ -98,8 +98,8 @@ "crosspath": "^2.0.0" }, "peerDependencies": { - "typescript": ">=3.2.x || >= 4.x", - "jsdom": ">=14.x" + "typescript": ">=3.2.x || >= 4.x || >= 5.x", + "jsdom": ">=14.x || >=15.x || >=16.x || >=17.x || >=18.x || >=19.x || >=20.x || >=21.x || >=22.x" }, "peerDependenciesMeta": { "jsdom": { @@ -131,21 +131,13 @@ "prettier": "@wessberg/prettier-config", "ava": { "files": [ - "test/**/**.test.ts" + "test/**/*.test.ts" ], "verbose": true, "timeout": "400s", - "nonSemVerExperiments": { - "configurableModuleFormat": true - }, + "concurrency": 1, "extensions": { "ts": "module" - }, - "nodeArguments": [ - "--loader=ts-node/esm" - ], - "environmentVariables": { - "FORCE_COLOR": "3" } } } diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 547c10d..97a533a 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -17,44 +17,47 @@ dependencies: devDependencies: '@types/jsdom': - specifier: ^20.0.1 - version: 20.0.1 + specifier: ^21.1.1 + version: 21.1.1 '@types/node': - specifier: ^18.11.18 - version: 18.11.18 + specifier: ^20.4.7 + version: 20.4.7 '@types/object-path': specifier: ^0.11.1 version: 0.11.1 '@types/semver': - specifier: ^7.3.13 + specifier: ^7.5.0 version: 7.5.0 '@typescript-eslint/eslint-plugin': - specifier: ^5.48.1 - version: 5.48.1(@typescript-eslint/parser@5.48.1)(eslint@8.45.0)(typescript@5.1.6) + specifier: ^6.2.1 + version: 6.2.1(@typescript-eslint/parser@6.2.1)(eslint@8.46.0)(typescript@5.1.6) '@typescript-eslint/parser': - specifier: ^5.48.1 - version: 5.48.1(eslint@8.45.0)(typescript@5.1.6) + specifier: ^6.2.1 + version: 6.2.1(eslint@8.46.0)(typescript@5.1.6) '@wessberg/prettier-config': specifier: ^1.0.0 version: 1.0.0 '@wessberg/ts-config': - specifier: ^2.0.4 - version: 2.0.4 + specifier: ^4.0.0 + version: 4.0.0 ava: - specifier: ^3.15.0 - version: 3.15.0 + specifier: ^5.3.1 + version: 5.3.1 + cross-env: + specifier: ^7.0.3 + version: 7.0.3 eslint: - specifier: ^8.31.0 - version: 8.45.0 + specifier: ^8.46.0 + version: 8.46.0 eslint-config-prettier: - specifier: ^8.6.0 - version: 8.8.0(eslint@8.45.0) + specifier: ^8.10.0 + version: 8.10.0(eslint@8.46.0) eslint-plugin-import: - specifier: ^2.26.0 - version: 2.27.5(@typescript-eslint/parser@5.48.1)(eslint@8.45.0) + specifier: ^2.28.0 + version: 2.28.0(@typescript-eslint/parser@6.2.1)(eslint@8.46.0) eslint-plugin-jsdoc: - specifier: ^39.6.4 - version: 39.6.4(eslint@8.45.0) + specifier: ^46.4.5 + version: 46.4.5(eslint@8.46.0) helpertypes: specifier: ^0.0.19 version: 0.0.19 @@ -62,47 +65,47 @@ devDependencies: specifier: ^8.0.3 version: 8.0.3 jsdom: - specifier: ^20.0.0 - version: 20.0.0 + specifier: ^22.1.0 + version: 22.1.0 memfs: - specifier: ^3.4.13 - version: 3.4.13 + specifier: ^4.2.0 + version: 4.2.0(quill-delta@5.1.0)(rxjs@7.8.1)(tslib@2.6.1) np: - specifier: 7.6.3 - version: 7.6.3 + specifier: 8.0.4 + version: 8.0.4 npm-check-updates: - specifier: ^16.6.2 - version: 16.10.16 + specifier: ^16.10.17 + version: 16.10.17 pnpm: - specifier: ^7.23.0 - version: 7.23.0 + specifier: ^8.6.11 + version: 8.6.11 prettier: - specifier: ^2.8.2 - version: 2.8.8 + specifier: ^3.0.1 + version: 3.0.1 pretty-quick: specifier: ^3.1.3 - version: 3.1.3(prettier@2.8.8) + version: 3.1.3(prettier@3.0.1) rimraf: - specifier: ^3.0.2 - version: 3.0.2 + specifier: ^5.0.1 + version: 5.0.1 rollup: - specifier: ^3.9.1 - version: 3.26.3 + specifier: ^3.27.2 + version: 3.27.2 rollup-plugin-ts: - specifier: 3.1.1 - version: 3.1.1(rollup@3.26.3)(typescript@5.1.6) + specifier: 3.4.2 + version: 3.4.2(rollup@3.27.2)(typescript@5.1.6) sandhog: specifier: ^2.0.2 version: 2.0.2 semver: - specifier: 7.3.8 - version: 7.3.8 + specifier: 7.5.4 + version: 7.5.4 standard-changelog: - specifier: ^2.0.27 - version: 2.0.27 - ts-node: - specifier: ^10.9.1 - version: 10.9.1(@types/node@18.11.18)(typescript@5.1.6) + specifier: ^3.0.0 + version: 3.0.0 + tsx: + specifier: ^3.12.7 + version: 3.12.7 typescript: specifier: ^5.1.6 version: 5.1.6 @@ -157,9 +160,6 @@ devDependencies: typescript-5-0-4: specifier: npm:typescript@5.0.4 version: /typescript@5.0.4 - typescript-5-1-6: - specifier: npm:typescript@5.1.6 - version: /typescript@5.1.6 packages: @@ -189,6 +189,14 @@ packages: js-tokens: 4.0.0 dev: true + /@bconnorwhite/module@2.0.2: + resolution: {integrity: sha512-ck1me5WMgZKp06gnJrVKEkytpehTTQbvsAMbF1nGPeHri/AZNhj87++PSE2LOxmZqM0EtGMaqeLdx7Lw7SUnTA==} + dependencies: + find-up: 5.0.0 + read-json-safe: 1.0.5 + types-pkg-json: 1.2.1 + dev: true + /@colors/colors@1.5.0: resolution: {integrity: sha512-ooWCrlZP11i8GImSjTHYHLkvFDP48nS4+204nGb1RiX/WXYHmJA2III9/e2DWVabCESdW7hBAEzHRqUn9OUVvQ==} engines: {node: '>=0.1.90'} @@ -196,46 +204,251 @@ packages: dev: true optional: true - /@concordance/react@2.0.0: - resolution: {integrity: sha512-huLSkUuM2/P+U0uy2WwlKuixMsTODD8p4JVQBI4VKeopkiN0C7M3N9XYVawb4M+4spN5RrO/eLhk7KoQX6nsfA==} - engines: {node: '>=6.12.3 <7 || >=8.9.4 <9 || >=10.0.0'} + /@es-joy/jsdoccomment@0.39.4: + resolution: {integrity: sha512-Jvw915fjqQct445+yron7Dufix9A+m9j1fCJYlCo1FWlRvTxa3pjJelxdSTdaLWcTwRU6vbL+NYjO4YuNIS5Qg==} + engines: {node: '>=16'} dependencies: - arrify: 1.0.1 + comment-parser: 1.3.1 + esquery: 1.5.0 + jsdoc-type-pratt-parser: 4.0.0 dev: true - /@cspotcode/source-map-support@0.8.1: - resolution: {integrity: sha512-IchNf6dN4tHoMFIn/7OE8LWZ19Y6q/67Bmf6vnGREv8RSbBVb9LPJxEcnwrcwX6ixSvaiGoomAUvu4YSxXrVgw==} - engines: {node: '>=12'} + /@esbuild-kit/cjs-loader@2.4.2: + resolution: {integrity: sha512-BDXFbYOJzT/NBEtp71cvsrGPwGAMGRB/349rwKuoxNSiKjPraNNnlK6MIIabViCjqZugu6j+xeMDlEkWdHHJSg==} dependencies: - '@jridgewell/trace-mapping': 0.3.9 + '@esbuild-kit/core-utils': 3.1.0 + get-tsconfig: 4.6.2 dev: true - /@es-joy/jsdoccomment@0.36.1: - resolution: {integrity: sha512-922xqFsTpHs6D0BUiG4toiyPOMc8/jafnWKxz1KWgS4XzKPy2qXf1Pe6UFuNSCQqt6tOuhAWXBNuuyUhJmw9Vg==} - engines: {node: ^14 || ^16 || ^17 || ^18 || ^19} + /@esbuild-kit/core-utils@3.1.0: + resolution: {integrity: sha512-Uuk8RpCg/7fdHSceR1M6XbSZFSuMrxcePFuGgyvsBn+u339dk5OeL4jv2EojwTN2st/unJGsVm4qHWjWNmJ/tw==} dependencies: - comment-parser: 1.3.1 - esquery: 1.5.0 - jsdoc-type-pratt-parser: 3.1.0 + esbuild: 0.17.19 + source-map-support: 0.5.21 + dev: true + + /@esbuild-kit/esm-loader@2.5.5: + resolution: {integrity: sha512-Qwfvj/qoPbClxCRNuac1Du01r9gvNOT+pMYtJDapfB1eoGN1YlJ1BixLyL9WVENRx5RXgNLdfYdx/CuswlGhMw==} + dependencies: + '@esbuild-kit/core-utils': 3.1.0 + get-tsconfig: 4.6.2 + dev: true + + /@esbuild/android-arm64@0.17.19: + resolution: {integrity: sha512-KBMWvEZooR7+kzY0BtbTQn0OAYY7CsiydT63pVEaPtVYF0hXbUaOyZog37DKxK7NF3XacBJOpYT4adIJh+avxA==} + engines: {node: '>=12'} + cpu: [arm64] + os: [android] + requiresBuild: true + dev: true + optional: true + + /@esbuild/android-arm@0.17.19: + resolution: {integrity: sha512-rIKddzqhmav7MSmoFCmDIb6e2W57geRsM94gV2l38fzhXMwq7hZoClug9USI2pFRGL06f4IOPHHpFNOkWieR8A==} + engines: {node: '>=12'} + cpu: [arm] + os: [android] + requiresBuild: true + dev: true + optional: true + + /@esbuild/android-x64@0.17.19: + resolution: {integrity: sha512-uUTTc4xGNDT7YSArp/zbtmbhO0uEEK9/ETW29Wk1thYUJBz3IVnvgEiEwEa9IeLyvnpKrWK64Utw2bgUmDveww==} + engines: {node: '>=12'} + cpu: [x64] + os: [android] + requiresBuild: true + dev: true + optional: true + + /@esbuild/darwin-arm64@0.17.19: + resolution: {integrity: sha512-80wEoCfF/hFKM6WE1FyBHc9SfUblloAWx6FJkFWTWiCoht9Mc0ARGEM47e67W9rI09YoUxJL68WHfDRYEAvOhg==} + engines: {node: '>=12'} + cpu: [arm64] + os: [darwin] + requiresBuild: true + dev: true + optional: true + + /@esbuild/darwin-x64@0.17.19: + resolution: {integrity: sha512-IJM4JJsLhRYr9xdtLytPLSH9k/oxR3boaUIYiHkAawtwNOXKE8KoU8tMvryogdcT8AU+Bflmh81Xn6Q0vTZbQw==} + engines: {node: '>=12'} + cpu: [x64] + os: [darwin] + requiresBuild: true + dev: true + optional: true + + /@esbuild/freebsd-arm64@0.17.19: + resolution: {integrity: sha512-pBwbc7DufluUeGdjSU5Si+P3SoMF5DQ/F/UmTSb8HXO80ZEAJmrykPyzo1IfNbAoaqw48YRpv8shwd1NoI0jcQ==} + engines: {node: '>=12'} + cpu: [arm64] + os: [freebsd] + requiresBuild: true + dev: true + optional: true + + /@esbuild/freebsd-x64@0.17.19: + resolution: {integrity: sha512-4lu+n8Wk0XlajEhbEffdy2xy53dpR06SlzvhGByyg36qJw6Kpfk7cp45DR/62aPH9mtJRmIyrXAS5UWBrJT6TQ==} + engines: {node: '>=12'} + cpu: [x64] + os: [freebsd] + requiresBuild: true + dev: true + optional: true + + /@esbuild/linux-arm64@0.17.19: + resolution: {integrity: sha512-ct1Tg3WGwd3P+oZYqic+YZF4snNl2bsnMKRkb3ozHmnM0dGWuxcPTTntAF6bOP0Sp4x0PjSF+4uHQ1xvxfRKqg==} + engines: {node: '>=12'} + cpu: [arm64] + os: [linux] + requiresBuild: true + dev: true + optional: true + + /@esbuild/linux-arm@0.17.19: + resolution: {integrity: sha512-cdmT3KxjlOQ/gZ2cjfrQOtmhG4HJs6hhvm3mWSRDPtZ/lP5oe8FWceS10JaSJC13GBd4eH/haHnqf7hhGNLerA==} + engines: {node: '>=12'} + cpu: [arm] + os: [linux] + requiresBuild: true + dev: true + optional: true + + /@esbuild/linux-ia32@0.17.19: + resolution: {integrity: sha512-w4IRhSy1VbsNxHRQpeGCHEmibqdTUx61Vc38APcsRbuVgK0OPEnQ0YD39Brymn96mOx48Y2laBQGqgZ0j9w6SQ==} + engines: {node: '>=12'} + cpu: [ia32] + os: [linux] + requiresBuild: true + dev: true + optional: true + + /@esbuild/linux-loong64@0.17.19: + resolution: {integrity: sha512-2iAngUbBPMq439a+z//gE+9WBldoMp1s5GWsUSgqHLzLJ9WoZLZhpwWuym0u0u/4XmZ3gpHmzV84PonE+9IIdQ==} + engines: {node: '>=12'} + cpu: [loong64] + os: [linux] + requiresBuild: true + dev: true + optional: true + + /@esbuild/linux-mips64el@0.17.19: + resolution: {integrity: sha512-LKJltc4LVdMKHsrFe4MGNPp0hqDFA1Wpt3jE1gEyM3nKUvOiO//9PheZZHfYRfYl6AwdTH4aTcXSqBerX0ml4A==} + engines: {node: '>=12'} + cpu: [mips64el] + os: [linux] + requiresBuild: true + dev: true + optional: true + + /@esbuild/linux-ppc64@0.17.19: + resolution: {integrity: sha512-/c/DGybs95WXNS8y3Ti/ytqETiW7EU44MEKuCAcpPto3YjQbyK3IQVKfF6nbghD7EcLUGl0NbiL5Rt5DMhn5tg==} + engines: {node: '>=12'} + cpu: [ppc64] + os: [linux] + requiresBuild: true + dev: true + optional: true + + /@esbuild/linux-riscv64@0.17.19: + resolution: {integrity: sha512-FC3nUAWhvFoutlhAkgHf8f5HwFWUL6bYdvLc/TTuxKlvLi3+pPzdZiFKSWz/PF30TB1K19SuCxDTI5KcqASJqA==} + engines: {node: '>=12'} + cpu: [riscv64] + os: [linux] + requiresBuild: true + dev: true + optional: true + + /@esbuild/linux-s390x@0.17.19: + resolution: {integrity: sha512-IbFsFbxMWLuKEbH+7sTkKzL6NJmG2vRyy6K7JJo55w+8xDk7RElYn6xvXtDW8HCfoKBFK69f3pgBJSUSQPr+4Q==} + engines: {node: '>=12'} + cpu: [s390x] + os: [linux] + requiresBuild: true + dev: true + optional: true + + /@esbuild/linux-x64@0.17.19: + resolution: {integrity: sha512-68ngA9lg2H6zkZcyp22tsVt38mlhWde8l3eJLWkyLrp4HwMUr3c1s/M2t7+kHIhvMjglIBrFpncX1SzMckomGw==} + engines: {node: '>=12'} + cpu: [x64] + os: [linux] + requiresBuild: true + dev: true + optional: true + + /@esbuild/netbsd-x64@0.17.19: + resolution: {integrity: sha512-CwFq42rXCR8TYIjIfpXCbRX0rp1jo6cPIUPSaWwzbVI4aOfX96OXY8M6KNmtPcg7QjYeDmN+DD0Wp3LaBOLf4Q==} + engines: {node: '>=12'} + cpu: [x64] + os: [netbsd] + requiresBuild: true + dev: true + optional: true + + /@esbuild/openbsd-x64@0.17.19: + resolution: {integrity: sha512-cnq5brJYrSZ2CF6c35eCmviIN3k3RczmHz8eYaVlNasVqsNY+JKohZU5MKmaOI+KkllCdzOKKdPs762VCPC20g==} + engines: {node: '>=12'} + cpu: [x64] + os: [openbsd] + requiresBuild: true + dev: true + optional: true + + /@esbuild/sunos-x64@0.17.19: + resolution: {integrity: sha512-vCRT7yP3zX+bKWFeP/zdS6SqdWB8OIpaRq/mbXQxTGHnIxspRtigpkUcDMlSCOejlHowLqII7K2JKevwyRP2rg==} + engines: {node: '>=12'} + cpu: [x64] + os: [sunos] + requiresBuild: true + dev: true + optional: true + + /@esbuild/win32-arm64@0.17.19: + resolution: {integrity: sha512-yYx+8jwowUstVdorcMdNlzklLYhPxjniHWFKgRqH7IFlUEa0Umu3KuYplf1HUZZ422e3NU9F4LGb+4O0Kdcaag==} + engines: {node: '>=12'} + cpu: [arm64] + os: [win32] + requiresBuild: true dev: true + optional: true - /@eslint-community/eslint-utils@4.4.0(eslint@8.45.0): + /@esbuild/win32-ia32@0.17.19: + resolution: {integrity: sha512-eggDKanJszUtCdlVs0RB+h35wNlb5v4TWEkq4vZcmVt5u/HiDZrTXe2bWFQUez3RgNHwx/x4sk5++4NSSicKkw==} + engines: {node: '>=12'} + cpu: [ia32] + os: [win32] + requiresBuild: true + dev: true + optional: true + + /@esbuild/win32-x64@0.17.19: + resolution: {integrity: sha512-lAhycmKnVOuRYNtRtatQR1LPQf2oYCkRGkSFnseDAKPl8lu5SOsK/e1sXe5a0Pc5kHIHe6P2I/ilntNv2xf3cA==} + engines: {node: '>=12'} + cpu: [x64] + os: [win32] + requiresBuild: true + dev: true + optional: true + + /@eslint-community/eslint-utils@4.4.0(eslint@8.46.0): resolution: {integrity: sha512-1/sA4dwrzBAyeUoQ6oxahHKmrZvsnLCg4RfxW3ZFGGmQkSNQPFNLV9CUEFQP1x9EYXHTo5p6xdhZM1Ne9p/AfA==} engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} peerDependencies: eslint: ^6.0.0 || ^7.0.0 || >=8.0.0 dependencies: - eslint: 8.45.0 - eslint-visitor-keys: 3.4.1 + eslint: 8.46.0 + eslint-visitor-keys: 3.4.2 dev: true - /@eslint-community/regexpp@4.6.0: - resolution: {integrity: sha512-uiPeRISaglZnaZk8vwrjQZ1CxogZeY/4IYft6gBOTqu1WhVXWmCmZMWxUv2Q/pxSvPdp1JPaO62kLOcOkMqWrw==} + /@eslint-community/regexpp@4.6.2: + resolution: {integrity: sha512-pPTNuaAG3QMH+buKyBIGJs3g/S5y0caxw0ygM3YyE6yJFySwiGGSzA+mM3KJ8QQvzeLh3blwgSonkFjgQdxzMw==} engines: {node: ^12.0.0 || ^14.0.0 || >=16.0.0} dev: true - /@eslint/eslintrc@2.1.0: - resolution: {integrity: sha512-Lj7DECXqIVCqnqjjHMPna4vn6GJcMgul/wuS0je9OZ9gsL0zzDpKPVtcG1HaDVc+9y+qgXneTeUMbCqXJNpH1A==} + /@eslint/eslintrc@2.1.1: + resolution: {integrity: sha512-9t7ZA7NGGK8ckelF0PQCfcxIUzs1Md5rrO6U/c+FIQNanea5UZC0wqKXH4vHBccmu4ZJgZ2idtPeW7+Q2npOEA==} engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} dependencies: ajv: 6.12.6 @@ -251,8 +464,8 @@ packages: - supports-color dev: true - /@eslint/js@8.44.0: - resolution: {integrity: sha512-Ag+9YM4ocKQx9AarydN0KY2j0ErMHNIocPDrVo8zAE44xLTjEtz81OdR68/cydGtk6m6jDb5Za3r2useMzYmSw==} + /@eslint/js@8.46.0: + resolution: {integrity: sha512-a8TLtmPi8xzPkCbp/OGFUo5yhRkHM2Ko9kOWP4znJr0WAhWyThaw3PnwX4vOTWOAMsV2uRt32PPDcEz63esSaA==} engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} dev: true @@ -293,24 +506,17 @@ packages: wrap-ansi-cjs: /wrap-ansi@7.0.0 dev: true - /@jridgewell/resolve-uri@3.1.1: - resolution: {integrity: sha512-dSYZh7HhCDtCKm4QakX0xFpsRDqjjtZf/kjI/v3T3Nwt5r8/qz/M19F9ySyOqU94SXBmeG9ttTul+YnR4LOxFA==} - engines: {node: '>=6.0.0'} - dev: true - /@jridgewell/sourcemap-codec@1.4.15: resolution: {integrity: sha512-eF2rxCRulEKXHTRiDrDy6erMYWqNw4LPdQ8UQA4huuxaQsVeRPFl2oM8oDGxMFhJUWZf9McpLtJasDDZb/Bpeg==} dev: true - /@jridgewell/trace-mapping@0.3.9: - resolution: {integrity: sha512-3Belt6tdc8bPgAtbcmdtNJlirVoTmEb5e2gC94PnkwEW9jI6CAHUeoG85tjWP5WquqfavoMtMwiG4P926ZKKuQ==} - dependencies: - '@jridgewell/resolve-uri': 3.1.1 - '@jridgewell/sourcemap-codec': 1.4.15 + /@ljharb/through@2.3.9: + resolution: {integrity: sha512-yN599ZBuMPPK4tdoToLlvgJB4CLK8fGl7ntfy0Wn7U6ttNvHYurd81bfUiK/6sMkiIwm65R6ck4L6+Y3DfVbNQ==} + engines: {node: '>= 0.4'} dev: true - /@mdn/browser-compat-data@4.2.1: - resolution: {integrity: sha512-EWUguj2kd7ldmrF9F+vI5hUOralPd+sdsUnYbRy33vZTuZkduC1shE9TtEMEjAQwyfyMb4ole5KtjF8MsnQOlA==} + /@mdn/browser-compat-data@5.3.7: + resolution: {integrity: sha512-CoUkfyzsXLBCtL5JGlyuNj42NEOn+ZEZZ7++7qMvY0FKhM7IoKRPyKmo22dXO/Cc3jc+clNwKzSJ+Q8a6awa0A==} dev: true /@nodelib/fs.scandir@2.1.5: @@ -338,7 +544,7 @@ packages: resolution: {integrity: sha512-7kZUAaLscfgbwBQRbvdMYaZOWyMEcPTH/tJjnyAWJ/dvvs9Ef+CERx/qJb9GExJpl1qipaDGn7KqHnFGGixd0w==} engines: {node: ^14.17.0 || ^16.13.0 || >=18.0.0} dependencies: - semver: 7.3.8 + semver: 7.5.4 dev: true /@npmcli/git@4.1.0: @@ -347,11 +553,11 @@ packages: dependencies: '@npmcli/promise-spawn': 6.0.2 lru-cache: 7.18.3 - npm-pick-manifest: 8.0.1 + npm-pick-manifest: 8.0.2 proc-log: 3.0.0 promise-inflight: 1.0.1 promise-retry: 2.0.1 - semver: 7.3.8 + semver: 7.5.4 which: 3.0.1 transitivePeerDependencies: - bluebird @@ -419,7 +625,7 @@ packages: config-chain: 1.1.13 dev: true - /@rollup/pluginutils@5.0.2(rollup@3.26.3): + /@rollup/pluginutils@5.0.2(rollup@3.27.2): resolution: {integrity: sha512-pTd9rIsP92h+B6wWwFbW8RkZv4hiR/xKsqre4SIuAOaOEQRxi0lqLke9k2/7WegC85GgUs9pjmOjCUi3In4vwA==} engines: {node: '>=14.0.0'} peerDependencies: @@ -431,7 +637,7 @@ packages: '@types/estree': 1.0.1 estree-walker: 2.0.2 picomatch: 2.3.1 - rollup: 3.26.3 + rollup: 3.27.2 dev: true /@samverschueren/stream-to-observable@0.3.1(rxjs@6.6.7): @@ -474,16 +680,6 @@ packages: - supports-color dev: true - /@sindresorhus/is@0.14.0: - resolution: {integrity: sha512-9NET910DNaIPngYnLLPeg+Ogzqsi9uM4mSboU5y6p8S5DzMTVEsJZrawi+BoDNUVBa2DhJqQYUFvMDfgU062LQ==} - engines: {node: '>=6'} - dev: true - - /@sindresorhus/is@2.1.1: - resolution: {integrity: sha512-/aPsuoj/1Dw/kzhkgz+ES6TxG0zfTMGLwuK2ZG00k/iJzYHTLCE8mVU8EPqEOp/lmxPoq1C1C9RYToRKb2KEfg==} - engines: {node: '>=10'} - dev: true - /@sindresorhus/is@4.6.0: resolution: {integrity: sha512-t09vSN3MdfsyCHoFcTRCH/iUtG7OJ0CsjzB8cjAmKc/va/kIgeDI/TxsigdncE/4be734m0cvIYwNaV4i2XqAw==} engines: {node: '>=10'} @@ -494,13 +690,6 @@ packages: engines: {node: '>=14.16'} dev: true - /@szmarczak/http-timer@1.1.2: - resolution: {integrity: sha512-XIB2XbzHTN6ieIjfIMV9hlVcfPU26s2vafYWQcZHWXHOxiaRZYEDKEwdl129Zyg50+foYV2jCgtrqSA6qNuNSA==} - engines: {node: '>=6'} - dependencies: - defer-to-connect: 1.1.3 - dev: true - /@szmarczak/http-timer@4.0.6: resolution: {integrity: sha512-4BAffykYOgO+5nzBWYwE3W90sBgLJoUPRWWcL8wlyiM8IB8ipJz3UMJ9KXQd1RKQXpKp8Tutn80HZtWsu2u76w==} engines: {node: '>=10'} @@ -520,22 +709,6 @@ packages: engines: {node: '>= 10'} dev: true - /@tsconfig/node10@1.0.9: - resolution: {integrity: sha512-jNsYVVxU8v5g43Erja32laIDHXeoNvFEpX33OK4d6hljo3jDhCBDhx5dhCCTMWUojscpAagGiRkBKxpdl9fxqA==} - dev: true - - /@tsconfig/node12@1.0.11: - resolution: {integrity: sha512-cqefuRsh12pWyGsIoBKJA9luFu3mRxCA+ORZvA4ktLSzIuCUtWVxGIuXigEwO5/ywWFMZ2QEGKWvkZG1zDMTag==} - dev: true - - /@tsconfig/node14@1.0.3: - resolution: {integrity: sha512-ysT8mhdixWK6Hw3i1V2AeRqZ5WfXg1G43mqoYlM2nc6388Fq5jcXyr5mRsqViLx/GJYdoL0bfXD8nmF+Zn/Iow==} - dev: true - - /@tsconfig/node16@1.0.4: - resolution: {integrity: sha512-vxhUy4J8lyeyinH7Azl1pdd43GJhZH/tP2weN8TntQblOY+A0XbT8DJk1/oCPuOOyg/Ja757rG0CgHcWC8OfMA==} - dev: true - /@tufjs/canonical-json@1.0.0: resolution: {integrity: sha512-QTnf++uxunWvG2z3UFNzAoQPHxnSXOwtaI3iJ+AohhV+5vONuArPjJE7aPXPVXfXJsqrVbZBu9b81AJoSd09IQ==} engines: {node: ^14.17.0 || ^16.13.0 || >=18.0.0} @@ -554,7 +727,7 @@ packages: dependencies: '@types/http-cache-semantics': 4.0.1 '@types/keyv': 3.1.4 - '@types/node': 18.11.18 + '@types/node': 20.4.7 '@types/responselike': 1.0.0 dev: true @@ -566,10 +739,10 @@ packages: resolution: {integrity: sha512-SZs7ekbP8CN0txVG2xVRH6EgKmEm31BOxA07vkFaETzZz1xh+cbt8BcI0slpymvwhx5dlFnQG2rTlPVQn+iRPQ==} dev: true - /@types/jsdom@20.0.1: - resolution: {integrity: sha512-d0r18sZPmMQr1eG35u12FZfhIXNrnsPU/g5wvRKCUf/tOGilKKwYMYGqh33BNR6ba+2gkHw1EUiHoN3mn7E5IQ==} + /@types/jsdom@21.1.1: + resolution: {integrity: sha512-cZFuoVLtzKP3gmq9eNosUL1R50U+USkbLtUQ1bYVgl/lKp0FZM7Cq4aIHAL8oIvQ17uSHi7jXPtfDOdjPwBE7A==} dependencies: - '@types/node': 18.11.18 + '@types/node': 20.4.7 '@types/tough-cookie': 4.0.2 parse5: 7.1.2 dev: true @@ -585,7 +758,7 @@ packages: /@types/keyv@3.1.4: resolution: {integrity: sha512-BQ5aZNSCpj7D6K2ksrRCTmKRLEpnPvWDiLPfoGyhZ++8YtiK9d/3DBKPJgry359X/P1PfruyYwvnvwFjuEiEIg==} dependencies: - '@types/node': 18.11.18 + '@types/node': 20.4.7 dev: true /@types/minimatch@3.0.5: @@ -599,8 +772,8 @@ packages: /@types/node@17.0.45: resolution: {integrity: sha512-w+tIMs3rq2afQdsPJlODhoUEKzFP1ayaoyl1CcnwtIlsVe7K7bA1NGm4s3PraqTLlXnbIN84zuBlxBWo1u9BLw==} - /@types/node@18.11.18: - resolution: {integrity: sha512-DHQpWGjyQKSHj3ebjFI/wRKcqQcdR+MoFBygntYOZytCqNfkd2ZC4ARDJ2DQqhjH5p85Nnd3jhUJIXrszFX/JA==} + /@types/node@20.4.7: + resolution: {integrity: sha512-bUBrPjEry2QUTsnuEjzjbS7voGWCc30W0qzgMf90GPeDGFRakvrz47ju+oqDAKCXLUCe39u57/ORMl/O/04/9g==} dev: true /@types/normalize-package-data@2.4.1: @@ -611,10 +784,6 @@ packages: resolution: {integrity: sha512-219LSCO9HPcoXcRTC6DbCs0FRhZgBnEMzf16RRqkT40WbkKx3mOeQuz3e2XqbfhOz/AHfbru0kzB1n1RCAsIIg==} dev: true - /@types/parse-json@4.0.0: - resolution: {integrity: sha512-//oorEZjL6sbPcKUaCdIGlIUeH26mgzimjBB77G6XRgnDl/L5wOnpyBGRe/Mmf5CVW3PwEBE1NjiMZ/ssFh4wA==} - dev: true - /@types/prettier@2.7.3: resolution: {integrity: sha512-+68kP9yzs4LMp7VNh8gdzMSPZFL44MLGqiHWvttYJe+6qnuVr4Ek9wSBQoveqY/r+LwjCcU29kNVkidwim+kYA==} dev: true @@ -622,7 +791,7 @@ packages: /@types/responselike@1.0.0: resolution: {integrity: sha512-85Y2BjiufFzaMIlvJDvTTB8Fxl2xfLo4HgmHzVBz08w4wDePCTjYw66PdrolO0kzli3yam/YCgRufyo1DdQVTA==} dependencies: - '@types/node': 18.11.18 + '@types/node': 20.4.7 dev: true /@types/semver@7.5.0: @@ -637,133 +806,136 @@ packages: resolution: {integrity: sha512-N1rW+njavs70y2cApeIw1vLMYXRwfBy+7trgavGuuTfOd7j1Yh7QTRc/yqsPl6ncokt72ZXuxEU0PiCp9bSwNQ==} dev: true - /@typescript-eslint/eslint-plugin@5.48.1(@typescript-eslint/parser@5.48.1)(eslint@8.45.0)(typescript@5.1.6): - resolution: {integrity: sha512-9nY5K1Rp2ppmpb9s9S2aBiF3xo5uExCehMDmYmmFqqyxgenbHJ3qbarcLt4ITgaD6r/2ypdlcFRdcuVPnks+fQ==} - engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} + /@typescript-eslint/eslint-plugin@6.2.1(@typescript-eslint/parser@6.2.1)(eslint@8.46.0)(typescript@5.1.6): + resolution: {integrity: sha512-iZVM/ALid9kO0+I81pnp1xmYiFyqibAHzrqX4q5YvvVEyJqY+e6rfTXSCsc2jUxGNqJqTfFSSij/NFkZBiBzLw==} + engines: {node: ^16.0.0 || >=18.0.0} peerDependencies: - '@typescript-eslint/parser': ^5.0.0 - eslint: ^6.0.0 || ^7.0.0 || ^8.0.0 + '@typescript-eslint/parser': ^6.0.0 || ^6.0.0-alpha + eslint: ^7.0.0 || ^8.0.0 typescript: '*' peerDependenciesMeta: typescript: optional: true dependencies: - '@typescript-eslint/parser': 5.48.1(eslint@8.45.0)(typescript@5.1.6) - '@typescript-eslint/scope-manager': 5.48.1 - '@typescript-eslint/type-utils': 5.48.1(eslint@8.45.0)(typescript@5.1.6) - '@typescript-eslint/utils': 5.48.1(eslint@8.45.0)(typescript@5.1.6) + '@eslint-community/regexpp': 4.6.2 + '@typescript-eslint/parser': 6.2.1(eslint@8.46.0)(typescript@5.1.6) + '@typescript-eslint/scope-manager': 6.2.1 + '@typescript-eslint/type-utils': 6.2.1(eslint@8.46.0)(typescript@5.1.6) + '@typescript-eslint/utils': 6.2.1(eslint@8.46.0)(typescript@5.1.6) + '@typescript-eslint/visitor-keys': 6.2.1 debug: 4.3.4 - eslint: 8.45.0 + eslint: 8.46.0 + graphemer: 1.4.0 ignore: 5.2.4 + natural-compare: 1.4.0 natural-compare-lite: 1.4.0 - regexpp: 3.2.0 - semver: 7.3.8 - tsutils: 3.21.0(typescript@5.1.6) + semver: 7.5.4 + ts-api-utils: 1.0.1(typescript@5.1.6) typescript: 5.1.6 transitivePeerDependencies: - supports-color dev: true - /@typescript-eslint/parser@5.48.1(eslint@8.45.0)(typescript@5.1.6): - resolution: {integrity: sha512-4yg+FJR/V1M9Xoq56SF9Iygqm+r5LMXvheo6DQ7/yUWynQ4YfCRnsKuRgqH4EQ5Ya76rVwlEpw4Xu+TgWQUcdA==} - engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} + /@typescript-eslint/parser@6.2.1(eslint@8.46.0)(typescript@5.1.6): + resolution: {integrity: sha512-Ld+uL1kYFU8e6btqBFpsHkwQ35rw30IWpdQxgOqOh4NfxSDH6uCkah1ks8R/RgQqI5hHPXMaLy9fbFseIe+dIg==} + engines: {node: ^16.0.0 || >=18.0.0} peerDependencies: - eslint: ^6.0.0 || ^7.0.0 || ^8.0.0 + eslint: ^7.0.0 || ^8.0.0 typescript: '*' peerDependenciesMeta: typescript: optional: true dependencies: - '@typescript-eslint/scope-manager': 5.48.1 - '@typescript-eslint/types': 5.48.1 - '@typescript-eslint/typescript-estree': 5.48.1(typescript@5.1.6) + '@typescript-eslint/scope-manager': 6.2.1 + '@typescript-eslint/types': 6.2.1 + '@typescript-eslint/typescript-estree': 6.2.1(typescript@5.1.6) + '@typescript-eslint/visitor-keys': 6.2.1 debug: 4.3.4 - eslint: 8.45.0 + eslint: 8.46.0 typescript: 5.1.6 transitivePeerDependencies: - supports-color dev: true - /@typescript-eslint/scope-manager@5.48.1: - resolution: {integrity: sha512-S035ueRrbxRMKvSTv9vJKIWgr86BD8s3RqoRZmsSh/s8HhIs90g6UlK8ZabUSjUZQkhVxt7nmZ63VJ9dcZhtDQ==} - engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} + /@typescript-eslint/scope-manager@6.2.1: + resolution: {integrity: sha512-UCqBF9WFqv64xNsIEPfBtenbfodPXsJ3nPAr55mGPkQIkiQvgoWNo+astj9ZUfJfVKiYgAZDMnM6dIpsxUMp3Q==} + engines: {node: ^16.0.0 || >=18.0.0} dependencies: - '@typescript-eslint/types': 5.48.1 - '@typescript-eslint/visitor-keys': 5.48.1 + '@typescript-eslint/types': 6.2.1 + '@typescript-eslint/visitor-keys': 6.2.1 dev: true - /@typescript-eslint/type-utils@5.48.1(eslint@8.45.0)(typescript@5.1.6): - resolution: {integrity: sha512-Hyr8HU8Alcuva1ppmqSYtM/Gp0q4JOp1F+/JH5D1IZm/bUBrV0edoewQZiEc1r6I8L4JL21broddxK8HAcZiqQ==} - engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} + /@typescript-eslint/type-utils@6.2.1(eslint@8.46.0)(typescript@5.1.6): + resolution: {integrity: sha512-fTfCgomBMIgu2Dh2Or3gMYgoNAnQm3RLtRp+jP7A8fY+LJ2+9PNpi5p6QB5C4RSP+U3cjI0vDlI3mspAkpPVbQ==} + engines: {node: ^16.0.0 || >=18.0.0} peerDependencies: - eslint: '*' + eslint: ^7.0.0 || ^8.0.0 typescript: '*' peerDependenciesMeta: typescript: optional: true dependencies: - '@typescript-eslint/typescript-estree': 5.48.1(typescript@5.1.6) - '@typescript-eslint/utils': 5.48.1(eslint@8.45.0)(typescript@5.1.6) + '@typescript-eslint/typescript-estree': 6.2.1(typescript@5.1.6) + '@typescript-eslint/utils': 6.2.1(eslint@8.46.0)(typescript@5.1.6) debug: 4.3.4 - eslint: 8.45.0 - tsutils: 3.21.0(typescript@5.1.6) + eslint: 8.46.0 + ts-api-utils: 1.0.1(typescript@5.1.6) typescript: 5.1.6 transitivePeerDependencies: - supports-color dev: true - /@typescript-eslint/types@5.48.1: - resolution: {integrity: sha512-xHyDLU6MSuEEdIlzrrAerCGS3T7AA/L8Hggd0RCYBi0w3JMvGYxlLlXHeg50JI9Tfg5MrtsfuNxbS/3zF1/ATg==} - engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} + /@typescript-eslint/types@6.2.1: + resolution: {integrity: sha512-528bGcoelrpw+sETlyM91k51Arl2ajbNT9L4JwoXE2dvRe1yd8Q64E4OL7vHYw31mlnVsf+BeeLyAZUEQtqahQ==} + engines: {node: ^16.0.0 || >=18.0.0} dev: true - /@typescript-eslint/typescript-estree@5.48.1(typescript@5.1.6): - resolution: {integrity: sha512-Hut+Osk5FYr+sgFh8J/FHjqX6HFcDzTlWLrFqGoK5kVUN3VBHF/QzZmAsIXCQ8T/W9nQNBTqalxi1P3LSqWnRA==} - engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} + /@typescript-eslint/typescript-estree@6.2.1(typescript@5.1.6): + resolution: {integrity: sha512-G+UJeQx9AKBHRQBpmvr8T/3K5bJa485eu+4tQBxFq0KoT22+jJyzo1B50JDT9QdC1DEmWQfdKsa8ybiNWYsi0Q==} + engines: {node: ^16.0.0 || >=18.0.0} peerDependencies: typescript: '*' peerDependenciesMeta: typescript: optional: true dependencies: - '@typescript-eslint/types': 5.48.1 - '@typescript-eslint/visitor-keys': 5.48.1 + '@typescript-eslint/types': 6.2.1 + '@typescript-eslint/visitor-keys': 6.2.1 debug: 4.3.4 globby: 11.1.0 is-glob: 4.0.3 - semver: 7.3.8 - tsutils: 3.21.0(typescript@5.1.6) + semver: 7.5.4 + ts-api-utils: 1.0.1(typescript@5.1.6) typescript: 5.1.6 transitivePeerDependencies: - supports-color dev: true - /@typescript-eslint/utils@5.48.1(eslint@8.45.0)(typescript@5.1.6): - resolution: {integrity: sha512-SmQuSrCGUOdmGMwivW14Z0Lj8dxG1mOFZ7soeJ0TQZEJcs3n5Ndgkg0A4bcMFzBELqLJ6GTHnEU+iIoaD6hFGA==} - engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} + /@typescript-eslint/utils@6.2.1(eslint@8.46.0)(typescript@5.1.6): + resolution: {integrity: sha512-eBIXQeupYmxVB6S7x+B9SdBeB6qIdXKjgQBge2J+Ouv8h9Cxm5dHf/gfAZA6dkMaag+03HdbVInuXMmqFB/lKQ==} + engines: {node: ^16.0.0 || >=18.0.0} peerDependencies: - eslint: ^6.0.0 || ^7.0.0 || ^8.0.0 + eslint: ^7.0.0 || ^8.0.0 dependencies: + '@eslint-community/eslint-utils': 4.4.0(eslint@8.46.0) '@types/json-schema': 7.0.12 '@types/semver': 7.5.0 - '@typescript-eslint/scope-manager': 5.48.1 - '@typescript-eslint/types': 5.48.1 - '@typescript-eslint/typescript-estree': 5.48.1(typescript@5.1.6) - eslint: 8.45.0 - eslint-scope: 5.1.1 - eslint-utils: 3.0.0(eslint@8.45.0) - semver: 7.3.8 + '@typescript-eslint/scope-manager': 6.2.1 + '@typescript-eslint/types': 6.2.1 + '@typescript-eslint/typescript-estree': 6.2.1(typescript@5.1.6) + eslint: 8.46.0 + semver: 7.5.4 transitivePeerDependencies: - supports-color - typescript dev: true - /@typescript-eslint/visitor-keys@5.48.1: - resolution: {integrity: sha512-Ns0XBwmfuX7ZknznfXozgnydyR8F6ev/KEGePP4i74uL3ArsKbEhJ7raeKr1JSa997DBDwol/4a0Y+At82c9dA==} - engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} + /@typescript-eslint/visitor-keys@6.2.1: + resolution: {integrity: sha512-iTN6w3k2JEZ7cyVdZJTVJx2Lv7t6zFA8DCrJEHD2mwfc16AEvvBWVhbFh34XyG2NORCd0viIgQY1+u7kPI0WpA==} + engines: {node: ^16.0.0 || >=18.0.0} dependencies: - '@typescript-eslint/types': 5.48.1 - eslint-visitor-keys: 3.4.1 + '@typescript-eslint/types': 6.2.1 + eslint-visitor-keys: 3.4.2 dev: true /@wessberg/prettier-config@1.0.0: @@ -775,8 +947,8 @@ packages: engines: {node: '>=8.0.0'} dev: true - /@wessberg/ts-config@2.0.4: - resolution: {integrity: sha512-Zi1mE/S9F1dJB1VX0o7YIt3TecM5j88vV+0AUlyGv6eWiqM+hSjHC5CbFMQ//aftIve6LJkMkqliii+3FlT94Q==} + /@wessberg/ts-config@4.0.0: + resolution: {integrity: sha512-6pjFEe/xyN5LJUeZFqux5FneiCG+yzkavnvApob4BSGdhDBp9aI9PfBRRekJlcfG98zhWrTVMo7HrWUa4qPMXA==} dev: true /JSONStream@1.3.5: @@ -795,13 +967,6 @@ packages: resolution: {integrity: sha512-nne9/IiQ/hzIhY6pdDnbBtz7DjPTKrY00P/zvPSm5pOFkl6xuGrGnXn/VtTNNfNtAfZ9/1RtehkszU9qcTii0Q==} dev: true - /acorn-globals@6.0.0: - resolution: {integrity: sha512-ZQl7LOWaF5ePqqcX4hLuv/bLXYQNfNWw2c0/yX/TsPRKamzHcTGQnlCjHT3TsmkOUVEPS3crCxiPfdzE/Trlhg==} - dependencies: - acorn: 7.4.1 - acorn-walk: 7.2.0 - dev: true - /acorn-jsx@5.3.2(acorn@8.10.0): resolution: {integrity: sha512-rq9s+JNhf0IChjtDXxllJ7g41oZk5SlXtp0LHwyA5cejwn7vKmKp4pPri6YEePv2PU65sAsegbXtIinmDFDXgQ==} peerDependencies: @@ -810,22 +975,11 @@ packages: acorn: 8.10.0 dev: true - /acorn-walk@7.2.0: - resolution: {integrity: sha512-OPdCF6GsMIP+Az+aWfAAOEt2/+iVDKE7oy6lJ098aoe59oAmK76qV6Gw60SbZ8jHuG2wH058GF4pLFbYamYrVA==} - engines: {node: '>=0.4.0'} - dev: true - /acorn-walk@8.2.0: resolution: {integrity: sha512-k+iyHEuPgSw6SbuDpGQM+06HQUa04DZ3o+F6CSzXMvvI5KMvnaEqXe+YVe555R9nn6GPt404fos4wcgpw12SDA==} engines: {node: '>=0.4.0'} dev: true - /acorn@7.4.1: - resolution: {integrity: sha512-nQyp0o1/mNdbTO1PO6kHkwSrmgZ0MT/jCCpNiwbUjGoRN4dlBhqJtoQuCnEOKzgTVwg0ZWiCoQy6SxMebQVh8A==} - engines: {node: '>=0.4.0'} - hasBin: true - dev: true - /acorn@8.10.0: resolution: {integrity: sha512-F0SAmZ8iUtS//m8DmCTA0jlh6TDKkHQyK6xc6V4KDTyZKA9dnvX9/3sRTVQrWm79glUAZbnmmNcdYwUIHWVybw==} engines: {node: '>=0.4.0'} @@ -864,6 +1018,14 @@ packages: indent-string: 4.0.0 dev: true + /aggregate-error@4.0.1: + resolution: {integrity: sha512-0poP0T7el6Vq3rstR8Mn4V/IQrpBLO6POkUSrN7RhyY+GF/InCFShQzsQ39T25gkHhLgSLByyAz+Kjb+c2L98w==} + engines: {node: '>=12'} + dependencies: + clean-stack: 4.2.0 + indent-string: 5.0.0 + dev: true + /ajv@6.12.6: resolution: {integrity: sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==} dependencies: @@ -873,6 +1035,17 @@ packages: uri-js: 4.4.1 dev: true + /all-package-names@2.0.706: + resolution: {integrity: sha512-91VRfOiiyjEWpYBXKJOGS+0V0a4Hms0M1g7av7DO3xG0klj2HMIgzj/Lph3k6xwrF6OqM5x+D/gKWHqlyk7aGA==} + hasBin: true + dependencies: + commander-version: 1.1.0 + p-lock: 2.1.0 + parse-json-object: 2.0.1 + progress: 2.0.3 + types-json: 1.2.2 + dev: true + /ansi-align@3.0.1: resolution: {integrity: sha512-IOfwwBF5iczOjp/WeY4YxyjqAFMQoZufdQWDd19SEExbVLNXqvpzSJ/M7Za4/sCPmQ0+GRquoA7bGcINcxew6w==} dependencies: @@ -895,6 +1068,13 @@ packages: type-fest: 0.21.3 dev: true + /ansi-escapes@5.0.0: + resolution: {integrity: sha512-5GFMVX8HqE/TB+FuBJGuO5XG0WrsA6ptUqoODaT/n9mmUaZFkqnBueB4leqGBCmrUHnCnC4PCZTCd0E7QQ83bA==} + engines: {node: '>=12'} + dependencies: + type-fest: 1.4.0 + dev: true + /ansi-red@0.1.1: resolution: {integrity: sha512-ewaIr5y+9CUTGFwZfpECUbFlGcC0GCw1oqR9RI6h1gQCd9Aj2GxSckCnPsVJnmfMZbwFYE+leZGASgkWl06Jow==} engines: {node: '>=0.10.0'} @@ -946,11 +1126,6 @@ packages: color-convert: 2.0.1 dev: true - /ansi-styles@5.2.0: - resolution: {integrity: sha512-Cxwpt2SfTzTtXcfOlzGEee8O+c+MmUgGrNiBcXnuWxuFJHe6a5Hz7qwhwe5OgaSYI0IJvkLqWX1ASG+cJOkEiA==} - engines: {node: '>=10'} - dev: true - /ansi-styles@6.2.1: resolution: {integrity: sha512-bN798gFfQX+viw3R7yrGWRqnrN2oRkEkUjjl4JNn4E8GxxbjtG3FbrEIIY3l8/hrwUwIeCZvi4QuOTP4MErVug==} engines: {node: '>=12'} @@ -976,21 +1151,6 @@ packages: rxjs: 6.6.7 dev: true - /any-observable@0.5.1(rxjs@6.6.7): - resolution: {integrity: sha512-8zv01bgDOp9PTmRTNCAHTw64TFP2rvlX4LvtNJLachaXY+AjmIvLT47fABNPCiIe89hKiSCo2n5zmPqI9CElPA==} - engines: {node: '>=8'} - peerDependencies: - rxjs: '*' - zen-observable: '*' - peerDependenciesMeta: - rxjs: - optional: true - zen-observable: - optional: true - dependencies: - rxjs: 6.6.7 - dev: true - /anymatch@3.1.3: resolution: {integrity: sha512-KMReFUr0B4t+D+OBkjR3KYqvocp2XaSzO55UcB6mgQMd3KbcE+mWTyvVV7D/zsdEbNnV6acZUutkiHQXvTr1Rw==} engines: {node: '>= 8'} @@ -1003,6 +1163,11 @@ packages: resolution: {integrity: sha512-lYe4Gx7QT+MKGbDsA+Z+he/Wtef0BiwDOlK/XkBrdfsh9J/jPPXbX0tE9x9cl27Tmu5gg3QUbUrQYa/y+KOHPQ==} dev: true + /are-docs-informative@0.0.2: + resolution: {integrity: sha512-ixiS0nLNNG5jNQzgZJNoUpBKdo9yTYZMGJ+QgT2jmjR7G7+QHRCc4v6LQ3NgE7EBJq+o0ams3waJwkrlBom8Ig==} + engines: {node: '>=14'} + dev: true + /are-we-there-yet@3.0.1: resolution: {integrity: sha512-QZW4EDmGwlYur0Yyf/b2uGucHQMa8aFUP7eu9ddR73vvhFyt4V0Vl3QHPcTNJ8l6qYOBdxgXdnBXQrHilfRQBg==} engines: {node: ^12.13.0 || ^14.15.0 || >=16.0.0} @@ -1011,8 +1176,8 @@ packages: readable-stream: 3.6.2 dev: true - /arg@4.1.3: - resolution: {integrity: sha512-58S9QDqG0Xx27YwPSt9fJxivjYl432YCwfDMfZ+71RAqUrZef7LrKQZ3LHLOwCS4FLNBplP533Zx895SeOCHvA==} + /arg@5.0.2: + resolution: {integrity: sha512-PYjyFOLKQ9y57JvQ6QLo8dAgNqswh8M1RMJYdQduT6xbWSgK36P/Z/v+p888pM69jMMfS8Xd8F6I1kQ/I9HUGg==} dev: true /argparse@1.0.10: @@ -1062,6 +1227,17 @@ packages: engines: {node: '>=8'} dev: true + /array.prototype.findlastindex@1.2.2: + resolution: {integrity: sha512-tb5thFFlUcp7NdNF6/MpDk/1r/4awWG1FIz3YqDf+/zJSTezBb+/5WViH41obXULHVpDzoiCLpJ/ZO9YbJMsdw==} + engines: {node: '>= 0.4'} + dependencies: + call-bind: 1.0.2 + define-properties: 1.2.0 + es-abstract: 1.22.1 + es-shim-unscopables: 1.0.0 + get-intrinsic: 1.2.1 + dev: true + /array.prototype.flat@1.3.1: resolution: {integrity: sha512-roTU0KWIOmJ4DRLmwKd19Otg0/mT3qPNt0Qb3GWW8iObuZXxrjB/pzn0R3hqpRSWg4HCwqx+0vwOnWnvlOyeIA==} engines: {node: '>= 0.4'} @@ -1109,14 +1285,9 @@ packages: engines: {node: '>=8'} dev: true - /astral-regex@2.0.0: - resolution: {integrity: sha512-Z7tMw1ytTXt5jqMcOP+OQteU1VuNK9Y02uuJtKQ1Sv69jXQKKg5cibLwGJow8yzZP+eAc18EmLGPal0bp36rvQ==} - engines: {node: '>=8'} - dev: true - - /async-exit-hook@2.0.1: - resolution: {integrity: sha512-NW2cX8m1Q7KPA7a5M2ULQeZ2wR5qI5PAbw5L0UOMxdioVk9PMZ0h1TmyZEkPYrCvYjDlFICusOu1dlEKAAeXBw==} - engines: {node: '>=0.12.0'} + /arrify@3.0.0: + resolution: {integrity: sha512-tLkvA81vQG/XqE2mjDkGQHoOINtMHtysSnemrmoGe6PydDPMRbVugqyk4A6V/WDWEfm3l+0d8anA9r8cv/5Jaw==} + engines: {node: '>=12'} dev: true /asynckit@0.4.0: @@ -1129,67 +1300,59 @@ packages: gulp-header: 1.8.12 dev: true - /ava@3.15.0: - resolution: {integrity: sha512-HGAnk1SHPk4Sx6plFAUkzV/XC1j9+iQhOzt4vBly18/yo0AV8Oytx7mtJd/CR8igCJ5p160N/Oo/cNJi2uSeWA==} - engines: {node: '>=10.18.0 <11 || >=12.14.0 <12.17.0 || >=12.17.0 <13 || >=14.0.0 <15 || >=15'} + /ava@5.3.1: + resolution: {integrity: sha512-Scv9a4gMOXB6+ni4toLuhAm9KYWEjsgBglJl+kMGI5+IVDt120CCDZyB5HNU9DjmLI2t4I0GbnxGLmmRfGTJGg==} + engines: {node: '>=14.19 <15 || >=16.15 <17 || >=18'} hasBin: true + peerDependencies: + '@ava/typescript': '*' + peerDependenciesMeta: + '@ava/typescript': + optional: true dependencies: - '@concordance/react': 2.0.0 acorn: 8.10.0 acorn-walk: 8.2.0 - ansi-styles: 5.2.0 + ansi-styles: 6.2.1 arrgv: 1.0.2 - arrify: 2.0.1 - callsites: 3.1.0 - chalk: 4.1.2 + arrify: 3.0.0 + callsites: 4.0.0 + cbor: 8.1.0 + chalk: 5.3.0 chokidar: 3.5.3 chunkd: 2.0.1 - ci-info: 2.0.0 + ci-info: 3.8.0 ci-parallel-vars: 1.0.1 clean-yaml-object: 0.1.0 - cli-cursor: 3.1.0 - cli-truncate: 2.1.0 - code-excerpt: 3.0.0 + cli-truncate: 3.1.0 + code-excerpt: 4.0.0 common-path-prefix: 3.0.0 concordance: 5.0.4 - convert-source-map: 1.9.0 currently-unhandled: 0.4.1 debug: 4.3.4 - del: 6.1.1 - emittery: 0.8.1 - equal-length: 1.0.1 - figures: 3.2.0 - globby: 11.1.0 + emittery: 1.0.1 + figures: 5.0.0 + globby: 13.2.2 ignore-by-default: 2.1.0 - import-local: 3.1.0 - indent-string: 4.0.0 + indent-string: 5.0.0 is-error: 2.2.2 is-plain-object: 5.0.0 is-promise: 4.0.0 - lodash: 4.17.21 - matcher: 3.0.0 - md5-hex: 3.0.1 - mem: 8.1.1 + matcher: 5.0.0 + mem: 9.0.2 ms: 2.1.3 - ora: 5.4.1 - p-event: 4.2.0 - p-map: 4.0.0 + p-event: 5.0.1 + p-map: 5.5.0 picomatch: 2.3.1 - pkg-conf: 3.1.0 - plur: 4.0.0 - pretty-ms: 7.0.1 - read-pkg: 5.2.0 + pkg-conf: 4.0.0 + plur: 5.1.0 + pretty-ms: 8.0.0 resolve-cwd: 3.0.0 - slash: 3.0.0 - source-map-support: 0.5.21 stack-utils: 2.0.6 - strip-ansi: 6.0.1 - supertap: 2.0.0 - temp-dir: 2.0.0 - trim-off-newlines: 1.0.3 - update-notifier: 5.1.0 - write-file-atomic: 3.0.3 - yargs: 16.2.0 + strip-ansi: 7.1.0 + supertap: 3.0.1 + temp-dir: 3.0.0 + write-file-atomic: 5.0.1 + yargs: 17.7.2 transitivePeerDependencies: - supports-color dev: true @@ -1207,6 +1370,11 @@ packages: resolution: {integrity: sha512-AKpaYlHn8t4SVbOHCy+b5+KKgvR4vrsD8vbvrbiQJps7fKDTkjkDry6ji0rUJjC0kzbNePLwzxq8iypo41qeWA==} dev: true + /big-integer@1.6.51: + resolution: {integrity: sha512-GPEid2Y9QU1Exl1rpO9B2IPJGHPSupF5GnVIP0blYvNOMer2bTvSWs1jGOUg04hTmu67nmLsQ9TBo1puaotBHg==} + engines: {node: '>=0.6'} + dev: true + /binary-extensions@2.2.0: resolution: {integrity: sha512-jDctJ/IVQbZoJykoeHbhXpOlNBqGNcwXJKJog42E5HDPUwQTSdjCHdihjj0DlnheQ7blbT6dHOafNAiS8ooQKA==} engines: {node: '>=8'} @@ -1224,20 +1392,6 @@ packages: resolution: {integrity: sha512-DRQrD6gJyy8FbiE4s+bDoXS9hiW3Vbx5uCdwvcCf3zLHL+Iv7LtGHLpr+GZV8rHG8tK766FGYBwRbu8pELTt+w==} dev: true - /boxen@5.1.2: - resolution: {integrity: sha512-9gYgQKXx+1nP8mP7CzFyaUARhg7D3n1dF/FnErWmu9l6JvGpNUN278h0aSb+QjoiKSWG+iZ3uHrcqk0qrY9RQQ==} - engines: {node: '>=10'} - dependencies: - ansi-align: 3.0.1 - camelcase: 6.3.0 - chalk: 4.1.2 - cli-boxes: 2.2.1 - string-width: 4.2.3 - type-fest: 0.20.2 - widest-line: 3.1.0 - wrap-ansi: 7.0.0 - dev: true - /boxen@7.1.1: resolution: {integrity: sha512-2hCgjEmP8YLWQ130n2FerGv7rYpfBmnmp9Uy2Le1vge6X3gZIfSmEzP5QTDElFxcvVcXlEn8Aq6MU/PZygIOog==} engines: {node: '>=14.16'} @@ -1252,6 +1406,13 @@ packages: wrap-ansi: 8.1.0 dev: true + /bplist-parser@0.2.0: + resolution: {integrity: sha512-z0M+byMThzQmD9NILRniCUXYsYpjwnlO8N5uCFaCqIOpqRsJCrQL9NK3JsD67CN5a08nF5oIL2bD6loTdHOuKw==} + engines: {node: '>= 5.10.0'} + dependencies: + big-integer: 1.6.51 + dev: true + /brace-expansion@1.1.11: resolution: {integrity: sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==} dependencies: @@ -1272,47 +1433,31 @@ packages: fill-range: 7.0.1 dev: true - /browser-process-hrtime@1.0.0: - resolution: {integrity: sha512-9o5UecI3GhkpM6DrXr69PblIuWxPKk9Y0jHBRhdocZ2y7YECBFCsHm79Pr3OyR2AvjhDkabFJaDJMYRazHgsow==} - dev: true - - /browserslist-generator@1.0.66: - resolution: {integrity: sha512-aFDax4Qzh29DdyhHQBD2Yu2L5OvaDnvYFMbmpLrLwwaNK4H6dHEhC/Nxv93/+mfAA+a/t94ln0P2JZvHO6LZDA==} - engines: {node: '>=8.0.0'} + /browserslist-generator@2.1.0: + resolution: {integrity: sha512-ZFz4mAOgqm0cbwKaZsfJbYDbTXGoPANlte7qRsRJOfjB9KmmISQrXJxAVrnXG8C8v/QHNzXyeJt0Cfcks6zZvQ==} + engines: {node: '>=16.15.1', npm: '>=7.0.0', pnpm: '>=3.2.0', yarn: '>=1.13'} dependencies: - '@mdn/browser-compat-data': 4.2.1 + '@mdn/browser-compat-data': 5.3.7 '@types/object-path': 0.11.1 '@types/semver': 7.5.0 '@types/ua-parser-js': 0.7.36 - browserslist: 4.20.2 - caniuse-lite: 1.0.30001517 - isbot: 3.4.5 + browserslist: 4.21.10 + caniuse-lite: 1.0.30001519 + isbot: 3.6.13 object-path: 0.11.8 - semver: 7.3.8 + semver: 7.5.4 ua-parser-js: 1.0.35 dev: true - /browserslist@4.20.2: - resolution: {integrity: sha512-CQOBCqp/9pDvDbx3xfMi+86pr4KXIf2FDkTTdeuYw8OxS9t898LA1Khq57gtufFILXpfgsSx5woNgsBgvGjpsA==} - engines: {node: ^6 || ^7 || ^8 || ^9 || ^10 || ^11 || ^12 || >=13.7} - hasBin: true - dependencies: - caniuse-lite: 1.0.30001517 - electron-to-chromium: 1.4.468 - escalade: 3.1.1 - node-releases: 2.0.13 - picocolors: 1.0.0 - dev: true - - /browserslist@4.21.9: - resolution: {integrity: sha512-M0MFoZzbUrRU4KNfCrDLnvyE7gub+peetoTid3TBIqtunaDJyXlwhakT+/VkvSXcfIzFfK/nkCs4nmyTmxdNSg==} + /browserslist@4.21.10: + resolution: {integrity: sha512-bipEBdZfVH5/pwrvqc+Ub0kUPVfGUhlKxbvfD+z1BDnPEO/X98ruXGA1WP5ASpAFKan7Qr6j736IacbZQuAlKQ==} engines: {node: ^6 || ^7 || ^8 || ^9 || ^10 || ^11 || ^12 || >=13.7} hasBin: true dependencies: - caniuse-lite: 1.0.30001517 - electron-to-chromium: 1.4.468 + caniuse-lite: 1.0.30001519 + electron-to-chromium: 1.4.484 node-releases: 2.0.13 - update-browserslist-db: 1.0.11(browserslist@4.21.9) + update-browserslist-db: 1.0.11(browserslist@4.21.10) dev: true /buffer-from@1.1.2: @@ -1326,6 +1471,11 @@ packages: ieee754: 1.2.1 dev: true + /builtin-modules@3.3.0: + resolution: {integrity: sha512-zhaCDicdLuWN5UbN5IMnFqNMhNfo919sH85y2/ea+5Yg9TsTkeZxpL+JLbp6cgYFS4sRLp3YV4S6yDuqVWHYOw==} + engines: {node: '>=6'} + dev: true + /builtins@1.0.3: resolution: {integrity: sha512-uYBjakWipfaO/bXI7E8rq6kpwHRZK5cNYrUv2OzZSI/FvmdMyXJ2tG9dKcjEC5YHmHpUAwsargWIZNWdxb/bnQ==} dev: true @@ -1333,7 +1483,14 @@ packages: /builtins@5.0.1: resolution: {integrity: sha512-qwVpFEHNfhYJIzNRBvd2C1kyo6jz3ZSMPyyuR47OPdiKWlbYnZNyDWuyR175qDnAJLiCo5fBBqPb3RiXgWlkOQ==} dependencies: - semver: 7.3.8 + semver: 7.5.4 + dev: true + + /bundle-name@3.0.0: + resolution: {integrity: sha512-PKA4BeSvBpQKQ8iPOGCSiell+N8P+Tf1DlwqmYhpe2gAhKPHn8EYOxVT+ShuGmhg8lN8XiSlS80yiExKXrURlw==} + engines: {node: '>=12'} + dependencies: + run-applescript: 5.0.0 dev: true /cacache@17.1.3: @@ -1354,12 +1511,9 @@ packages: unique-filename: 3.0.0 dev: true - /cacheable-lookup@2.0.1: - resolution: {integrity: sha512-EMMbsiOTcdngM/K6gV/OxF2x0t07+vMOWxZNSCRQMjO2MY2nhZQ6OYhOOpyQrbhqsgtvKGI7hcq6xjnA92USjg==} - engines: {node: '>=10'} - dependencies: - '@types/keyv': 3.1.4 - keyv: 4.5.3 + /cacheable-lookup@5.0.4: + resolution: {integrity: sha512-2/kNscPhpcxrOigMZzbiWF7dz8ilhb/nIHU3EyZiXWXpeq/au8qJ8VhdftMkty3n7Gj6HIGalQG8oiBNB3AJgA==} + engines: {node: '>=10.6.0'} dev: true /cacheable-lookup@7.0.0: @@ -1367,8 +1521,8 @@ packages: engines: {node: '>=14.16'} dev: true - /cacheable-request@10.2.12: - resolution: {integrity: sha512-qtWGB5kn2OLjx47pYUkWicyOpK1vy9XZhq8yRTXOy+KAmjjESSRLx6SiExnnaGGUP1NM6/vmygMu0fGylNh9tw==} + /cacheable-request@10.2.13: + resolution: {integrity: sha512-3SD4rrMu1msNGEtNSt8Od6enwdo//U9s4ykmXfA2TD58kcLkCobtCDiby7kNyj7a/Q7lz/mAesAFI54rTdnvBA==} engines: {node: '>=14.16'} dependencies: '@types/http-cache-semantics': 4.0.1 @@ -1380,19 +1534,6 @@ packages: responselike: 3.0.0 dev: true - /cacheable-request@6.1.0: - resolution: {integrity: sha512-Oj3cAGPCqOZX7Rz64Uny2GYAZNliQSqfbePrgAQ1wKAihYmCUnraBtJtKcGR4xz7wF+LoJC+ssFZvv5BgF9Igg==} - engines: {node: '>=8'} - dependencies: - clone-response: 1.0.3 - get-stream: 5.2.0 - http-cache-semantics: 4.1.1 - keyv: 3.1.0 - lowercase-keys: 2.0.0 - normalize-url: 4.5.1 - responselike: 1.0.2 - dev: true - /cacheable-request@7.0.4: resolution: {integrity: sha512-v+p6ongsrp0yTGbJXjgxPow2+DL93DASP4kXCDKb8/bwRtt9OEF3whggkkDkGNzgcWy2XaF4a8nZglC7uElscg==} engines: {node: '>=8'} @@ -1418,6 +1559,11 @@ packages: engines: {node: '>=6'} dev: true + /callsites@4.0.0: + resolution: {integrity: sha512-y3jRROutgpKdz5vzEhWM34TidDU8vkJppF8dszITeb1PQmSqV3DTxyV8G/lyO/DNvtE1YTedehmw9MPZsCBHxQ==} + engines: {node: '>=12.20'} + dev: true + /camelcase-keys@6.2.2: resolution: {integrity: sha512-YrwaA0vEKazPBkn0ipTiMpSajYDSe+KjQfrjhcBMxJt/znbvlHd8Pw/Vamaz5EB4Wfhs3SUR3Z9mwRu/P3s3Yg==} engines: {node: '>=8'} @@ -1427,23 +1573,35 @@ packages: quick-lru: 4.0.1 dev: true + /camelcase-keys@8.0.2: + resolution: {integrity: sha512-qMKdlOfsjlezMqxkUGGMaWWs17i2HoL15tM+wtx8ld4nLrUwU58TFdvyGOz/piNP842KeO8yXvggVQSdQ828NA==} + engines: {node: '>=14.16'} + dependencies: + camelcase: 7.0.1 + map-obj: 4.3.0 + quick-lru: 6.1.1 + type-fest: 2.19.0 + dev: true + /camelcase@5.3.1: resolution: {integrity: sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg==} engines: {node: '>=6'} dev: true - /camelcase@6.3.0: - resolution: {integrity: sha512-Gmy6FhYlCY7uOElZUSbxo2UCDH8owEk996gkbrpsgGtrJLM3J7jGxl9Ic7Qwwj4ivOE5AWZWRMecDdF7hqGjFA==} - engines: {node: '>=10'} - dev: true - /camelcase@7.0.1: resolution: {integrity: sha512-xlx1yCK2Oc1APsPXDL2LdlNP6+uu8OCDdhOBSVT279M/S+y75O30C2VuD8T2ogdePBBl7PfPF4504tnLgX3zfw==} engines: {node: '>=14.16'} dev: true - /caniuse-lite@1.0.30001517: - resolution: {integrity: sha512-Vdhm5S11DaFVLlyiKu4hiUTkpZu+y1KA/rZZqVQfOD5YdDT/eQKlkt7NaE0WGOFgX32diqt9MiP9CAiFeRklaA==} + /caniuse-lite@1.0.30001519: + resolution: {integrity: sha512-0QHgqR+Jv4bxHMp8kZ1Kn8CH55OikjKJ6JmKkZYP1F3D7w+lnFXF70nG5eNfsZS89jadi5Ywy5UCSKLAglIRkg==} + dev: true + + /cbor@8.1.0: + resolution: {integrity: sha512-DwGjNW9omn6EwP70aXsn7FQJx5kO12tX0bZkaTjzdVFM6/7nhA4t0EENocKGx6D2Bch9PE2KzCUf5SceBdeijg==} + engines: {node: '>=12.19'} + dependencies: + nofilter: 3.1.0 dev: true /chalk@1.1.3: @@ -1515,10 +1673,6 @@ packages: resolution: {integrity: sha512-7d58XsFmOq0j6el67Ug9mHf9ELUXsQXYJBkyxhH/k+6Ke0qXRnv0kbemx+Twc6fRJ07C49lcbdgm9FL1Ei/6SQ==} dev: true - /ci-info@2.0.0: - resolution: {integrity: sha512-5tK7EtrZ0N+OLFMthtqOj4fI2Jeb88C4CAZPu25LDVUgXJ0A3Js4PMGqrn0JU1W0Mh1/Z8wZzYPxqUrXeBboCQ==} - dev: true - /ci-info@3.8.0: resolution: {integrity: sha512-eXTggHWSooYhq49F2opQhuHWgzucfF2YgODK4e1566GQs5BIfP30B0oenwBJHfWxAs2fyPB1s7Mg949zLf61Yw==} engines: {node: '>=8'} @@ -1533,16 +1687,18 @@ packages: engines: {node: '>=6'} dev: true + /clean-stack@4.2.0: + resolution: {integrity: sha512-LYv6XPxoyODi36Dp976riBtSY27VmFo+MKqEU9QCCWyTrdEPDog+RWA7xQWHi6Vbp61j5c4cdzzX1NidnwtUWg==} + engines: {node: '>=12'} + dependencies: + escape-string-regexp: 5.0.0 + dev: true + /clean-yaml-object@0.1.0: resolution: {integrity: sha512-3yONmlN9CSAkzNwnRCiJQ7Q2xK5mWuEfL3PuTZcAUzhObbXsfsnMptJzXwz93nc5zn9V9TwCVMmV7w4xsm43dw==} engines: {node: '>=0.10.0'} dev: true - /cli-boxes@2.2.1: - resolution: {integrity: sha512-y4coMcylgSCdVinjiDBuR8PCC2bLjyGTwEmPb9NHR/QaNU6EUOXcTY/s6VjGMD6ENSEaeQYHCY0GNGS5jfMwPw==} - engines: {node: '>=6'} - dev: true - /cli-boxes@3.0.0: resolution: {integrity: sha512-/lzGpEWL/8PfI0BmBOPRwp0c/wFNX1RdUML3jK/RcSBA9T8mZDdQpqYBKtCFTOfQbwPqWEOpjqW+Fnayc0969g==} engines: {node: '>=10'} @@ -1584,12 +1740,12 @@ packages: string-width: 1.0.2 dev: true - /cli-truncate@2.1.0: - resolution: {integrity: sha512-n8fOixwDD6b/ObinzTrp1ZKFzbgvKZvuz/TvejnLn1aQfC6r52XEx85FmuC+3HI+JM7coBRXUvNqEU2PHVrHpg==} - engines: {node: '>=8'} + /cli-truncate@3.1.0: + resolution: {integrity: sha512-wfOBkjXteqSnI59oPcJkcPl/ZmwvMMOj340qUIY1SKZCv0B9Cf4D4fAucRkIKQmsIuYK3x1rrgU7MeGRruiuiA==} + engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} dependencies: - slice-ansi: 3.0.0 - string-width: 4.2.3 + slice-ansi: 5.0.0 + string-width: 5.1.2 dev: true /cli-width@2.2.1: @@ -1601,6 +1757,11 @@ packages: engines: {node: '>= 10'} dev: true + /cli-width@4.0.0: + resolution: {integrity: sha512-ZksGS2xpa/bYkNzN3BAw1wEjsLV/ZKOf/CCrJ/QOBsxx6fOARIkwTutxp1XIOIohi6HKmOFjMoK/XaqDVUpEEw==} + engines: {node: '>= 12'} + dev: true + /cliui@7.0.4: resolution: {integrity: sha512-OcRE68cOsVMXp1Yvonl/fzkQOyjLSu/8bhPDfQt0e0/Eb283TKP20Fs2MqoPsr9SwA595rRCA+QMzYc9nBP+JQ==} dependencies: @@ -1609,6 +1770,15 @@ packages: wrap-ansi: 7.0.0 dev: true + /cliui@8.0.1: + resolution: {integrity: sha512-BSeNnyus75C4//NQ9gQt1/csTXyo/8Sb+afLAkzAptFuMsod9HFokGNudZpi/oQV73hnVK+sR+5PVRMd+Dr7YQ==} + engines: {node: '>=12'} + dependencies: + string-width: 4.2.3 + strip-ansi: 6.0.1 + wrap-ansi: 7.0.0 + dev: true + /clone-response@1.0.3: resolution: {integrity: sha512-ROoL94jJH2dUVML2Y/5PEDNaSHgeOdSDicUyS7izcF63G6sTc/FTjLub4b8Il9S8S0beOfYt0TaA5qvFK+w0wA==} dependencies: @@ -1620,11 +1790,11 @@ packages: engines: {node: '>=0.8'} dev: true - /code-excerpt@3.0.0: - resolution: {integrity: sha512-VHNTVhd7KsLGOqfX3SyeO8RyYPMp1GJOg194VITk04WMYCv4plV68YWe6TJZxd9MhobjtpMRnVky01gqZsalaw==} - engines: {node: '>=10'} + /code-excerpt@4.0.0: + resolution: {integrity: sha512-xxodCmBen3iy2i0WtAK8FlFNrRzjUqjRsMfho58xT/wvZU1YTM3fCnRjcy1gJPMepaRlgm/0e6w8SpWHpn3/cA==} + engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} dependencies: - convert-to-spaces: 1.0.2 + convert-to-spaces: 2.0.1 dev: true /code-point-at@1.1.0: @@ -1672,11 +1842,23 @@ packages: delayed-stream: 1.0.0 dev: true + /commander-version@1.1.0: + resolution: {integrity: sha512-9aNW4N6q6EPDUszLRH6k9IwO6OoGYh3HRgUF/fA7Zs+Mz1v1x5akSqT7QGB8JsGY7AG7qMA7oRRB/4yyn33FYA==} + dependencies: + '@bconnorwhite/module': 2.0.2 + commander: 6.2.1 + dev: true + /commander@10.0.1: resolution: {integrity: sha512-y4Mg2tXshplEbSGzx7amzPwKKOCGuoSRP/CjEdwwk0FOGlUbq6lKuoyDZTNZkmxHdJtp54hdfY/JUrdL7Xfdug==} engines: {node: '>=14'} dev: true + /commander@6.2.1: + resolution: {integrity: sha512-U7VdrJFnJgo4xjrHpTzu0yrHPGImdsmD95ZlgYSEajAn2JKzDhDTPG9kBTefmObL2w/ngeZnilk+OV9CG3d7UA==} + engines: {node: '>= 6'} + dev: true + /commander@9.5.0: resolution: {integrity: sha512-KRs7WVDKg86PWiuAqhDrAQnTXZKraVcCc6vFdL14qrZ/DcWwuRo7VoiYXalXO7S5GKpqYiVEwCbgFDfxNHKJBQ==} engines: {node: ^12.20.0 || >=14} @@ -1698,11 +1880,11 @@ packages: dot-prop: 5.3.0 dev: true - /compatfactory@2.0.9(typescript@5.1.6): - resolution: {integrity: sha512-fvO+AWcmbO7P1S+A3mwm3IGr74eHMeq5ZLhNhyNQc9mVDNHT4oe0Gg0ksdIFFNXLK7k7Z/TYcLAUSQdRgh1bsA==} + /compatfactory@3.0.0(typescript@5.1.6): + resolution: {integrity: sha512-WD5kF7koPwVoyKL8p0LlrmIZtilrD46sQStyzzxzTFinMKN2Dxk1hN+sddLSQU1mGIZvQfU8c+ONSghvvM40jg==} engines: {node: '>=14.9.0'} peerDependencies: - typescript: '>=3.x || >= 4.x' + typescript: '>=3.x || >= 4.x || >= 5.x' dependencies: helpertypes: 0.0.19 typescript: 5.1.6 @@ -1738,7 +1920,7 @@ packages: js-string-escape: 1.0.1 lodash: 4.17.21 md5-hex: 3.0.1 - semver: 7.3.8 + semver: 7.5.4 well-known-symbols: 2.0.0 dev: true @@ -1749,18 +1931,6 @@ packages: proto-list: 1.2.4 dev: true - /configstore@5.0.1: - resolution: {integrity: sha512-aMKprgk5YhBNyH25hj8wGt2+D52Sw1DRRIzqBwLp2Ya9mFmY8KPvvtvmna8SxVR9JMZ4kzMD68N22vlaRpkeFA==} - engines: {node: '>=8'} - dependencies: - dot-prop: 5.3.0 - graceful-fs: 4.2.11 - make-dir: 3.1.0 - unique-string: 2.0.0 - write-file-atomic: 3.0.3 - xdg-basedir: 4.0.0 - dev: true - /configstore@6.0.0: resolution: {integrity: sha512-cD31W1v3GqUlQvbBCGcXmd2Nj9SvLDOP1oQ0YFuLETufzSPaKp11rYBsSOm7rCsW3OnIRAFM3OxRhceaXNYHkA==} engines: {node: '>=12'} @@ -1776,97 +1946,88 @@ packages: resolution: {integrity: sha512-ty/fTekppD2fIwRvnZAVdeOiGd1c7YXEixbgJTNzqcxJWKQnjJ/V1bNEEE6hygpM3WjwHFUVK6HTjWSzV4a8sQ==} dev: true - /conventional-changelog-angular@5.0.13: - resolution: {integrity: sha512-i/gipMxs7s8L/QeuavPF2hLnJgH6pEZAttySB6aiQLWcX3puWDL3ACVmvBhJGxnAy52Qc15ua26BufY6KpmrVA==} - engines: {node: '>=10'} + /conventional-changelog-angular@6.0.0: + resolution: {integrity: sha512-6qLgrBF4gueoC7AFVHu51nHL9pF9FRjXrH+ceVf7WmAfH3gs+gEYOkvxhjMPjZu57I4AGUGoNTY8V7Hrgf1uqg==} + engines: {node: '>=14'} dependencies: compare-func: 2.0.0 - q: 1.5.1 dev: true - /conventional-changelog-core@4.2.4: - resolution: {integrity: sha512-gDVS+zVJHE2v4SLc6B0sLsPiloR0ygU7HaDW14aNJE1v4SlqJPILPl/aJC7YdtRE4CybBf8gDwObBvKha8Xlyg==} - engines: {node: '>=10'} + /conventional-changelog-core@5.0.2: + resolution: {integrity: sha512-RhQOcDweXNWvlRwUDCpaqXzbZemKPKncCWZG50Alth72WITVd6nhVk9MJ6w1k9PFNBcZ3YwkdkChE+8+ZwtUug==} + engines: {node: '>=14'} dependencies: add-stream: 1.0.0 - conventional-changelog-writer: 5.0.1 - conventional-commits-parser: 3.2.4 + conventional-changelog-writer: 6.0.1 + conventional-commits-parser: 4.0.0 dateformat: 3.0.3 get-pkg-repo: 4.2.1 - git-raw-commits: 2.0.11 + git-raw-commits: 3.0.0 git-remote-origin-url: 2.0.0 - git-semver-tags: 4.1.1 - lodash: 4.17.21 + git-semver-tags: 5.0.1 normalize-package-data: 3.0.3 - q: 1.5.1 read-pkg: 3.0.0 read-pkg-up: 3.0.0 - through2: 4.0.2 dev: true - /conventional-changelog-writer@5.0.1: - resolution: {integrity: sha512-5WsuKUfxW7suLblAbFnxAcrvf6r+0b7GvNaWUwUIk0bXMnENP/PEieGKVUQrjPqwPT4o3EPAASBXiY6iHooLOQ==} - engines: {node: '>=10'} + /conventional-changelog-writer@6.0.1: + resolution: {integrity: sha512-359t9aHorPw+U+nHzUXHS5ZnPBOizRxfQsWT5ZDHBfvfxQOAik+yfuhKXG66CN5LEWPpMNnIMHUTCKeYNprvHQ==} + engines: {node: '>=14'} hasBin: true dependencies: - conventional-commits-filter: 2.0.7 + conventional-commits-filter: 3.0.0 dateformat: 3.0.3 - handlebars: 4.7.7 + handlebars: 4.7.8 json-stringify-safe: 5.0.1 - lodash: 4.17.21 meow: 8.1.2 - semver: 6.3.1 + semver: 7.5.4 split: 1.0.1 - through2: 4.0.2 dev: true - /conventional-commits-filter@2.0.7: - resolution: {integrity: sha512-ASS9SamOP4TbCClsRHxIHXRfcGCnIoQqkvAzCSbZzTFLfcTqJVugB0agRgsEELsqaeWgsXv513eS116wnlSSPA==} - engines: {node: '>=10'} + /conventional-commits-filter@3.0.0: + resolution: {integrity: sha512-1ymej8b5LouPx9Ox0Dw/qAO2dVdfpRFq28e5Y0jJEU8ZrLdy0vOSkkIInwmxErFGhg6SALro60ZrwYFVTUDo4Q==} + engines: {node: '>=14'} dependencies: lodash.ismatch: 4.4.0 modify-values: 1.0.1 dev: true - /conventional-commits-parser@3.2.4: - resolution: {integrity: sha512-nK7sAtfi+QXbxHCYfhpZsfRtaitZLIA6889kFIouLvz6repszQDgxBu7wf2WbU+Dco7sAnNCJYERCwt54WPC2Q==} - engines: {node: '>=10'} + /conventional-commits-parser@4.0.0: + resolution: {integrity: sha512-WRv5j1FsVM5FISJkoYMR6tPk07fkKT0UodruX4je86V4owk451yjXAKzKAPOs9l7y59E2viHUS9eQ+dfUA9NSg==} + engines: {node: '>=14'} hasBin: true dependencies: JSONStream: 1.3.5 is-text-path: 1.0.1 - lodash: 4.17.21 meow: 8.1.2 split2: 3.2.2 - through2: 4.0.2 - dev: true - - /convert-source-map@1.9.0: - resolution: {integrity: sha512-ASFBup0Mz1uyiIjANan1jzLQami9z1PoYSZCiiYW2FczPbenXc45FZdBZLzOT+r6+iciuEModtmCti+hjaAk0A==} dev: true - /convert-to-spaces@1.0.2: - resolution: {integrity: sha512-cj09EBuObp9gZNQCzc7hByQyrs6jVGE+o9kSJmeUoj+GiPiJvi5LYqEH/Hmme4+MTLHM+Ejtq+FChpjjEnsPdQ==} - engines: {node: '>= 4'} + /convert-to-spaces@2.0.1: + resolution: {integrity: sha512-rcQ1bsQO9799wq24uE5AM2tAILy4gXGIK/njFWcVQkGNZ96edlpY+A7bjwvzjYvLDyzmG1MmMLZhpcsb+klNMQ==} + engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} dev: true /core-util-is@1.0.3: resolution: {integrity: sha512-ZQBvi1DcpJ4GDqanjucZ2Hj3wEO5pZDS89BWbkcrvdxksJorwUDDZamX9ldFkp9aw2lmBDLgkObEA4DWNJ9FYQ==} dev: true - /cosmiconfig@7.1.0: - resolution: {integrity: sha512-AdmX6xUzdNASswsFtmwSt7Vj8po9IuqXm0UXz7QKPuEUmPB4XyjGfaAr2PSuELMwkRMVH1EpIkX5bTZGRB3eCA==} - engines: {node: '>=10'} + /cosmiconfig@8.2.0: + resolution: {integrity: sha512-3rTMnFJA1tCOPwRxtgF4wd7Ab2qvDbL8jX+3smjIbS4HlZBagTlpERbdN7iAbWlrfxE3M8c27kTwTawQ7st+OQ==} + engines: {node: '>=14'} dependencies: - '@types/parse-json': 4.0.0 import-fresh: 3.3.0 + js-yaml: 4.1.0 parse-json: 5.2.0 path-type: 4.0.0 - yaml: 1.10.2 dev: true - /create-require@1.1.1: - resolution: {integrity: sha512-dcKFX3jn0MpIaXjisoRvexIJVEKzaq7z2rZKxf+MSr9TkdmHmsU4m2lcLojrj/FHl8mk5VxMmYA+ftRkP/3oKQ==} + /cross-env@7.0.3: + resolution: {integrity: sha512-+/HKd6EgcQCJGh2PSjZuUitQBQynKor4wrFbRg4DtAgS1aWO+gU52xpH7M9ScGgXSYmAVS9bIJ8EzuaGw0oNAw==} + engines: {node: '>=10.14', npm: '>=6', yarn: '>=1'} + hasBin: true + dependencies: + cross-spawn: 7.0.3 dev: true /cross-spawn@7.0.3: @@ -1884,11 +2045,6 @@ packages: dependencies: '@types/node': 17.0.45 - /crypto-random-string@2.0.0: - resolution: {integrity: sha512-v1plID3y9r/lPhviJ1wrXpLeyUIGAZ2SHNYTEapm7/8A9nLPoyvVp3RK/EPFqn5kEznyWgYZNsRtYYIWbuG8KA==} - engines: {node: '>=8'} - dev: true - /crypto-random-string@4.0.0: resolution: {integrity: sha512-x8dy3RnvYdlUcPOjkEHqozhiwzKNSq7GcPuXFbnyMOCHxX8V3OgIg/pYuabl2sbUPfIJaeAQB7PMOK8DFIdoRA==} engines: {node: '>=12'} @@ -1896,19 +2052,11 @@ packages: type-fest: 1.4.0 dev: true - /cssom@0.3.8: - resolution: {integrity: sha512-b0tGHbfegbhPJpxpiBPU2sCkigAqtM9O121le6bbOlgyV+NyGyCmVfJ6QW9eRjz8CpNfWEOYBIMIGRYkLwsIYg==} - dev: true - - /cssom@0.5.0: - resolution: {integrity: sha512-iKuQcq+NdHqlAcwUY0o/HL69XQrUaQdMjmStJ8JFmUaiiQErlhrmuigkg/CU4E2J0IyUKUrMAgl36TvN67MqTw==} - dev: true - - /cssstyle@2.3.0: - resolution: {integrity: sha512-AZL67abkUzIuvcHqk7c09cezpGNcxUxU4Ioi/05xHk4DQeTkWmGYftIE6ctU6AEt+Gn4n1lDStOtj7FKycP71A==} - engines: {node: '>=8'} + /cssstyle@3.0.0: + resolution: {integrity: sha512-N4u2ABATi3Qplzf0hWbVCdjenim8F3ojEXpBDF5hBpjzW182MjNGLqfmQ0SkSPeQ+V86ZXgeH8aXj6kayd4jgg==} + engines: {node: '>=14'} dependencies: - cssom: 0.3.8 + rrweb-cssom: 0.6.0 dev: true /currently-unhandled@0.4.1: @@ -1923,13 +2071,13 @@ packages: engines: {node: '>=8'} dev: true - /data-urls@3.0.2: - resolution: {integrity: sha512-Jy/tj3ldjZJo63sVAvg6LHt2mHvl4V6AgRAmNDtLdm7faqtsx+aJG42rsyCo9JCoRVKwPFzKlIPx3DIibwSIaQ==} - engines: {node: '>=12'} + /data-urls@4.0.0: + resolution: {integrity: sha512-/mMTei/JXPqvFqQtfyTowxmJVwr2PVAeCcDxyFf6LhoOu/09TX2OX3kb2wzi4DMXcfj4OItwDOnhl5oziPnT6g==} + engines: {node: '>=14'} dependencies: abab: 2.0.6 whatwg-mimetype: 3.0.0 - whatwg-url: 11.0.0 + whatwg-url: 12.0.1 dev: true /date-fns@1.30.1: @@ -1978,27 +2126,28 @@ packages: map-obj: 1.0.1 dev: true + /decamelize-keys@2.0.1: + resolution: {integrity: sha512-nrNeSCtU2gV3Apcmn/EZ+aR20zKDuNDStV67jPiupokD3sOAFeMzslLMCFdKv1sPqzwoe5ZUhsSW9IAVgKSL/Q==} + engines: {node: '>=14.16'} + dependencies: + decamelize: 6.0.0 + map-obj: 4.3.0 + quick-lru: 6.1.1 + type-fest: 3.13.1 + dev: true + /decamelize@1.2.0: resolution: {integrity: sha512-z2S+W9X73hAUUki+N+9Za2lBlun89zigOyGrsax+KUQ6wKW4ZoWpEYBkGhQjwAjjDCkWxhY0VKEhk8wzY7F5cA==} engines: {node: '>=0.10.0'} dev: true - /decimal.js@10.4.3: - resolution: {integrity: sha512-VBBaLc1MgL5XpzgIP7ny5Z6Nx3UrRkIViUkPUdtl9aya5amy3De1gsUUSB1g3+3sExYNjCAsAznmukyxCb1GRA==} - dev: true - - /decompress-response@3.3.0: - resolution: {integrity: sha512-BzRPQuY1ip+qDonAOz42gRm/pg9F768C+npV/4JOsxRC2sq+Rlk+Q4ZCAsOhnIaMrgarILY+RMUIvMmmX1qAEA==} - engines: {node: '>=4'} - dependencies: - mimic-response: 1.0.1 + /decamelize@6.0.0: + resolution: {integrity: sha512-Fv96DCsdOgB6mdGl67MT5JaTNKRzrzill5OH5s8bjYJXVlcXyPYGyPsUkWyGV5p1TXI5esYIYMMeDJL0hEIwaA==} + engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} dev: true - /decompress-response@5.0.0: - resolution: {integrity: sha512-TLZWWybuxWgoW7Lykv+gq9xvzOsUjQ9tF09Tj6NSTYGMTCHNXzrPnD6Hi+TgZq19PyTAGH4Ll/NIM/eTGglnMw==} - engines: {node: '>=10'} - dependencies: - mimic-response: 2.1.0 + /decimal.js@10.4.3: + resolution: {integrity: sha512-VBBaLc1MgL5XpzgIP7ny5Z6Nx3UrRkIViUkPUdtl9aya5amy3De1gsUUSB1g3+3sExYNjCAsAznmukyxCb1GRA==} dev: true /decompress-response@6.0.0: @@ -2017,21 +2166,40 @@ packages: resolution: {integrity: sha512-oIPzksmTg4/MriiaYGO+okXDT7ztn/w3Eptv/+gSIdMdKsJo0u4CfYNFJPy+4SKMuCqGw2wxnA+URMg3t8a/bQ==} dev: true + /default-browser-id@3.0.0: + resolution: {integrity: sha512-OZ1y3y0SqSICtE8DE4S8YOE9UZOJ8wO16fKWVP5J1Qz42kV9jcnMVFrEE/noXb/ss3Q4pZIH79kxofzyNNtUNA==} + engines: {node: '>=12'} + dependencies: + bplist-parser: 0.2.0 + untildify: 4.0.0 + dev: true + + /default-browser@4.0.0: + resolution: {integrity: sha512-wX5pXO1+BrhMkSbROFsyxUm0i/cJEScyNhA4PPxc41ICuv05ZZB/MX28s8aZx6xjmatvebIapF6hLEKEcpneUA==} + engines: {node: '>=14.16'} + dependencies: + bundle-name: 3.0.0 + default-browser-id: 3.0.0 + execa: 7.2.0 + titleize: 3.0.0 + dev: true + /defaults@1.0.4: resolution: {integrity: sha512-eFuaLoy/Rxalv2kr+lqMlUnrDWV+3j4pljOIJgLIhI058IQfWJ7vXhyEIHu+HtC738klGALYxOKDO0bQP3tg8A==} dependencies: clone: 1.0.4 dev: true - /defer-to-connect@1.1.3: - resolution: {integrity: sha512-0ISdNousHvZT2EiFlZeZAHBUvSxmKswVCEf8hW7KWgG4a8MVEu/3Vb6uWYozkjylyCxe0JBIiRB1jV45S70WVQ==} - dev: true - /defer-to-connect@2.0.1: resolution: {integrity: sha512-4tvttepXG1VaYGrRibk5EwJd1t4udunSOVMdLSAL6mId1ix438oPwPZMALY41FCijukO1L0twNcGsdzS7dHgDg==} engines: {node: '>=10'} dev: true + /define-lazy-prop@3.0.0: + resolution: {integrity: sha512-N+MeXYoqr3pOgn8xfyRPREN7gHakLYjhsHhWGT3fWAiL4IkAt0iDw14QiiEm2bE30c5XX5q0FtAA3CK5f9/BUg==} + engines: {node: '>=12'} + dev: true + /define-properties@1.2.0: resolution: {integrity: sha512-xvqAVKGfT1+UAvPwKTVw/njhdQ8ZhXK4lI0bCIuCMrp2up9nPnaDftrLtmpTazqd1o+UY4zgzU+avtMbDP+ldA==} engines: {node: '>= 0.4'} @@ -2040,18 +2208,18 @@ packages: object-keys: 1.1.1 dev: true - /del@6.1.1: - resolution: {integrity: sha512-ua8BhapfP0JUJKC/zV9yHHDW/rDoDxP4Zhn3AkA6/xT6gY7jYXJiaeyBZznYVujhZZET+UgcbZiQ7sN3WqcImg==} - engines: {node: '>=10'} + /del@7.0.0: + resolution: {integrity: sha512-tQbV/4u5WVB8HMJr08pgw0b6nG4RGt/tj+7Numvq+zqcvUFeMaIWWOUFltiU+6go8BSO2/ogsB4EasDaj0y68Q==} + engines: {node: '>=14.16'} dependencies: - globby: 11.1.0 + globby: 13.2.2 graceful-fs: 4.2.11 is-glob: 4.0.3 - is-path-cwd: 2.2.0 - is-path-inside: 3.0.3 - p-map: 4.0.0 + is-path-cwd: 3.0.0 + is-path-inside: 4.0.0 + p-map: 5.5.0 rimraf: 3.0.2 - slash: 3.0.0 + slash: 4.0.0 dev: true /delayed-stream@1.0.0: @@ -2073,11 +2241,6 @@ packages: engines: {node: '>=0.8.0'} dev: true - /diff@4.0.2: - resolution: {integrity: sha512-58lmxKSA4BNyLz+HHMUzlOEpg09FV+ev6ZMe3vJihgdxzgcwZ8VoEEPmALCZG9LmqfVoNMMKpttIYTVG6uDY7A==} - engines: {node: '>=0.3.1'} - dev: true - /dir-glob@3.0.1: resolution: {integrity: sha512-WkrWp9GR4KXfKGYzOLmTuGVi1UWFfws377n9cc55/tb6DuqyF6pcQ5AbiHEshaDpY9v6oaSr2XCDidGmMwdzIA==} engines: {node: '>=8'} @@ -2120,16 +2283,19 @@ packages: is-obj: 2.0.0 dev: true - /duplexer3@0.1.5: - resolution: {integrity: sha512-1A8za6ws41LQgv9HrE/66jyC5yuSjQ3L/KOpFtoBilsAK2iA2wuS5rTt1OCzIvtS2V7nVmedsUU+DGRcjBmOYA==} + /dot-prop@7.2.0: + resolution: {integrity: sha512-Ol/IPXUARn9CSbkrdV4VJo7uCy1I3VuSiWCaFSg+8BdUOzF9n3jefIpcgAydvUZbTdEBZs2vEiTiS9m61ssiDA==} + engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} + dependencies: + type-fest: 2.19.0 dev: true /eastasianwidth@0.2.0: resolution: {integrity: sha512-I88TYZWc9XiYHRQ4/3c5rjjfgkjhLyW2luGIheGERbNQ6OY7yTybanSpDXZa8y7VUP9YmDcYa+eyq4ca7iLqWA==} dev: true - /electron-to-chromium@1.4.468: - resolution: {integrity: sha512-6M1qyhaJOt7rQtNti1lBA0GwclPH+oKCmsra/hkcWs5INLxfXXD/dtdnaKUYQu/pjOBP/8Osoe4mAcNvvzoFag==} + /electron-to-chromium@1.4.484: + resolution: {integrity: sha512-nO3ZEomTK2PO/3TUXgEx0A97xZTpKVf4p427lABHuCpT1IQ2N+njVh29DkQkCk6Q4m2wjU+faK4xAcfFndwjvw==} dev: true /elegant-spinner@1.0.1: @@ -2137,9 +2303,9 @@ packages: engines: {node: '>=0.10.0'} dev: true - /emittery@0.8.1: - resolution: {integrity: sha512-uDfvUjVrfGJJhymx/kz6prltenw1u7WrCg1oa94zYY8xxVpLLUu045LAT0dhDZdXG58/EpPL/5kA180fQ/qudg==} - engines: {node: '>=10'} + /emittery@1.0.1: + resolution: {integrity: sha512-2ID6FdrMD9KDLldGesP6317G78K7km/kMcwItRtVFva7I/cSEOIaLpewaUb+YLXVwdAp3Ctfxh/V5zIl1sj7dQ==} + engines: {node: '>=14.16'} dev: true /emoji-regex@8.0.0: @@ -2174,11 +2340,6 @@ packages: engines: {node: '>=6'} dev: true - /equal-length@1.0.1: - resolution: {integrity: sha512-TK2m7MvWPt/v3dan0BCNp99pytIE5UGrUj7F0KZirNX8xz8fDFUAZfgm8uB5FuQq9u0sMeDocYBfEhsd1nwGoA==} - engines: {node: '>=4'} - dev: true - /err-code@2.0.3: resolution: {integrity: sha512-2bmlRpNKBxT/CRmPOlyISQpNj+qSeYvcym/uT0Jx2bMOlKLtSy1ZmLuVxSEKKyor/N5yhvp/ZiG1oE3DEYMSFA==} dev: true @@ -2258,21 +2419,41 @@ packages: is-symbol: 1.0.4 dev: true + /esbuild@0.17.19: + resolution: {integrity: sha512-XQ0jAPFkK/u3LcVRcvVHQcTIqD6E2H1fvZMA5dQPSOWb3suUbWbfbRf94pjc0bNzRYLfIrDRQXr7X+LHIm5oHw==} + engines: {node: '>=12'} + hasBin: true + requiresBuild: true + optionalDependencies: + '@esbuild/android-arm': 0.17.19 + '@esbuild/android-arm64': 0.17.19 + '@esbuild/android-x64': 0.17.19 + '@esbuild/darwin-arm64': 0.17.19 + '@esbuild/darwin-x64': 0.17.19 + '@esbuild/freebsd-arm64': 0.17.19 + '@esbuild/freebsd-x64': 0.17.19 + '@esbuild/linux-arm': 0.17.19 + '@esbuild/linux-arm64': 0.17.19 + '@esbuild/linux-ia32': 0.17.19 + '@esbuild/linux-loong64': 0.17.19 + '@esbuild/linux-mips64el': 0.17.19 + '@esbuild/linux-ppc64': 0.17.19 + '@esbuild/linux-riscv64': 0.17.19 + '@esbuild/linux-s390x': 0.17.19 + '@esbuild/linux-x64': 0.17.19 + '@esbuild/netbsd-x64': 0.17.19 + '@esbuild/openbsd-x64': 0.17.19 + '@esbuild/sunos-x64': 0.17.19 + '@esbuild/win32-arm64': 0.17.19 + '@esbuild/win32-ia32': 0.17.19 + '@esbuild/win32-x64': 0.17.19 + dev: true + /escalade@3.1.1: resolution: {integrity: sha512-k0er2gUkLf8O0zKJiAhmkTnJlTvINGv7ygDNPbeIsX/TJjGJZHuh9B2UxbsaEkmlEo9MfhrSzmhIlhRlI2GXnw==} engines: {node: '>=6'} dev: true - /escape-goat@2.1.1: - resolution: {integrity: sha512-8/uIhbG12Csjy2JEW7D9pHbreaVaS/OpN3ycnyvElTdwM5n6GY6W6e2IPemfvGZeUMqZ9A/3GqIZMgKnBhAw/Q==} - engines: {node: '>=8'} - dev: true - - /escape-goat@3.0.0: - resolution: {integrity: sha512-w3PwNZJwRxlp47QGzhuEBldEqVHHhh8/tIPcl6ecf2Bou99cdAt0knihBV0Ecc7CGxYduXVBDheH1K2oADRlvw==} - engines: {node: '>=10'} - dev: true - /escape-goat@4.0.0: resolution: {integrity: sha512-2Sd4ShcWxbx6OY1IHyla/CVNwvg7XwZVoXZHcSu9w9SReNP1EzzD5T8NWKIR38fIqEns9kDWKUQTXXAmlDrdPg==} engines: {node: '>=12'} @@ -2293,25 +2474,18 @@ packages: engines: {node: '>=10'} dev: true - /escodegen@2.1.0: - resolution: {integrity: sha512-2NlIDTwUWJN0mRPQOdtQBzbUHvdGY2P1VXSyU83Q3xKxM7WHX2Ql8dKq782Q9TgQUNOLEzEYu9bzLNj1q88I5w==} - engines: {node: '>=6.0'} - hasBin: true - dependencies: - esprima: 4.0.1 - estraverse: 5.3.0 - esutils: 2.0.3 - optionalDependencies: - source-map: 0.6.1 + /escape-string-regexp@5.0.0: + resolution: {integrity: sha512-/veY75JbMK4j1yjvuUxuVsiS/hr/4iHs9FTT6cgTexxdE0Ly/glccBAkloH/DofkjRbZU3bnoj38mOmhkZ0lHw==} + engines: {node: '>=12'} dev: true - /eslint-config-prettier@8.8.0(eslint@8.45.0): - resolution: {integrity: sha512-wLbQiFre3tdGgpDv67NQKnJuTlcUVYHas3k+DZCc2U2BadthoEY4B7hLPvAxaqdyOGCzuLfii2fqGph10va7oA==} + /eslint-config-prettier@8.10.0(eslint@8.46.0): + resolution: {integrity: sha512-SM8AMJdeQqRYT9O9zguiruQZaN7+z+E4eAP9oiLNGKMtomwaB1E9dcgUD6ZAn/eQAb52USbvezbiljfZUhbJcg==} hasBin: true peerDependencies: eslint: '>=7.0.0' dependencies: - eslint: 8.45.0 + eslint: 8.46.0 dev: true /eslint-import-resolver-node@0.3.7: @@ -2319,12 +2493,12 @@ packages: dependencies: debug: 3.2.7 is-core-module: 2.12.1 - resolve: 1.22.2 + resolve: 1.22.3 transitivePeerDependencies: - supports-color dev: true - /eslint-module-utils@2.8.0(@typescript-eslint/parser@5.48.1)(eslint-import-resolver-node@0.3.7)(eslint@8.45.0): + /eslint-module-utils@2.8.0(@typescript-eslint/parser@6.2.1)(eslint-import-resolver-node@0.3.7)(eslint@8.46.0): resolution: {integrity: sha512-aWajIYfsqCKRDgUfjEXNN/JlrzauMuSEy5sbd7WXbtW3EH6A6MpwEh42c7qD+MqQo9QMJ6fWLAeIJynx0g6OAw==} engines: {node: '>=4'} peerDependencies: @@ -2345,16 +2519,16 @@ packages: eslint-import-resolver-webpack: optional: true dependencies: - '@typescript-eslint/parser': 5.48.1(eslint@8.45.0)(typescript@5.1.6) + '@typescript-eslint/parser': 6.2.1(eslint@8.46.0)(typescript@5.1.6) debug: 3.2.7 - eslint: 8.45.0 + eslint: 8.46.0 eslint-import-resolver-node: 0.3.7 transitivePeerDependencies: - supports-color dev: true - /eslint-plugin-import@2.27.5(@typescript-eslint/parser@5.48.1)(eslint@8.45.0): - resolution: {integrity: sha512-LmEt3GVofgiGuiE+ORpnvP+kAm3h6MLZJ4Q5HCyHADofsb4VzXFsRiWj3c0OFiV+3DWFh0qg3v9gcPlfc3zRow==} + /eslint-plugin-import@2.28.0(@typescript-eslint/parser@6.2.1)(eslint@8.46.0): + resolution: {integrity: sha512-B8s/n+ZluN7sxj9eUf7/pRFERX0r5bnFA2dCaLHy2ZeaQEAz0k+ZZkFWRFHJAqxfxQDx6KLv9LeIki7cFdwW+Q==} engines: {node: '>=4'} peerDependencies: '@typescript-eslint/parser': '*' @@ -2363,21 +2537,24 @@ packages: '@typescript-eslint/parser': optional: true dependencies: - '@typescript-eslint/parser': 5.48.1(eslint@8.45.0)(typescript@5.1.6) + '@typescript-eslint/parser': 6.2.1(eslint@8.46.0)(typescript@5.1.6) array-includes: 3.1.6 + array.prototype.findlastindex: 1.2.2 array.prototype.flat: 1.3.1 array.prototype.flatmap: 1.3.1 debug: 3.2.7 doctrine: 2.1.0 - eslint: 8.45.0 + eslint: 8.46.0 eslint-import-resolver-node: 0.3.7 - eslint-module-utils: 2.8.0(@typescript-eslint/parser@5.48.1)(eslint-import-resolver-node@0.3.7)(eslint@8.45.0) + eslint-module-utils: 2.8.0(@typescript-eslint/parser@6.2.1)(eslint-import-resolver-node@0.3.7)(eslint@8.46.0) has: 1.0.3 is-core-module: 2.12.1 is-glob: 4.0.3 minimatch: 3.1.2 + object.fromentries: 2.0.6 + object.groupby: 1.0.0 object.values: 1.1.6 - resolve: 1.22.2 + resolve: 1.22.3 semver: 6.3.1 tsconfig-paths: 3.14.2 transitivePeerDependencies: @@ -2386,69 +2563,48 @@ packages: - supports-color dev: true - /eslint-plugin-jsdoc@39.6.4(eslint@8.45.0): - resolution: {integrity: sha512-fskvdLCfwmPjHb6e+xNGDtGgbF8X7cDwMtVLAP2WwSf9Htrx68OAx31BESBM1FAwsN2HTQyYQq7m4aW4Q4Nlag==} - engines: {node: ^14 || ^16 || ^17 || ^18 || ^19} + /eslint-plugin-jsdoc@46.4.5(eslint@8.46.0): + resolution: {integrity: sha512-HjTuxqDYplAQFu29F3MHFCDDBgeqOxPXI6TyBhL0u2rr4XntJ0z3C9PmJvpjFscKdHwkZDN/0l1QCG0QwyRi4g==} + engines: {node: '>=16'} peerDependencies: eslint: ^7.0.0 || ^8.0.0 dependencies: - '@es-joy/jsdoccomment': 0.36.1 + '@es-joy/jsdoccomment': 0.39.4 + are-docs-informative: 0.0.2 comment-parser: 1.3.1 debug: 4.3.4 escape-string-regexp: 4.0.0 - eslint: 8.45.0 + eslint: 8.46.0 esquery: 1.5.0 - semver: 7.3.8 + is-builtin-module: 3.2.1 + semver: 7.5.4 spdx-expression-parse: 3.0.1 transitivePeerDependencies: - supports-color dev: true - /eslint-scope@5.1.1: - resolution: {integrity: sha512-2NxwbF/hZ0KpepYN0cNbo+FN6XoK7GaHlQhgx/hIZl6Va0bF45RQOOwhLIy8lQDbuCiadSLCBnH2CFYquit5bw==} - engines: {node: '>=8.0.0'} - dependencies: - esrecurse: 4.3.0 - estraverse: 4.3.0 - dev: true - - /eslint-scope@7.2.1: - resolution: {integrity: sha512-CvefSOsDdaYYvxChovdrPo/ZGt8d5lrJWleAc1diXRKhHGiTYEI26cvo8Kle/wGnsizoCJjK73FMg1/IkIwiNA==} + /eslint-scope@7.2.2: + resolution: {integrity: sha512-dOt21O7lTMhDM+X9mB4GX+DZrZtCUJPL/wlcTqxyrx5IvO0IYtILdtrQGQp+8n5S0gwSVmOf9NQrjMOgfQZlIg==} engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} dependencies: esrecurse: 4.3.0 estraverse: 5.3.0 dev: true - /eslint-utils@3.0.0(eslint@8.45.0): - resolution: {integrity: sha512-uuQC43IGctw68pJA1RgbQS8/NP7rch6Cwd4j3ZBtgo4/8Flj4eGE7ZYSZRN3iq5pVUv6GPdW5Z1RFleo84uLDA==} - engines: {node: ^10.0.0 || ^12.0.0 || >= 14.0.0} - peerDependencies: - eslint: '>=5' - dependencies: - eslint: 8.45.0 - eslint-visitor-keys: 2.1.0 - dev: true - - /eslint-visitor-keys@2.1.0: - resolution: {integrity: sha512-0rSmRBzXgDzIsD6mGdJgevzgezI534Cer5L/vyMX0kHzT/jiB43jRhd9YUlMGYLQy2zprNmoT8qasCGtY+QaKw==} - engines: {node: '>=10'} - dev: true - - /eslint-visitor-keys@3.4.1: - resolution: {integrity: sha512-pZnmmLwYzf+kWaM/Qgrvpen51upAktaaiI01nsJD/Yr3lMOdNtq0cxkrrg16w64VtisN6okbs7Q8AfGqj4c9fA==} + /eslint-visitor-keys@3.4.2: + resolution: {integrity: sha512-8drBzUEyZ2llkpCA67iYrgEssKDUu68V8ChqqOfFupIaG/LCVPUT+CoGJpT77zJprs4T/W7p07LP7zAIMuweVw==} engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} dev: true - /eslint@8.45.0: - resolution: {integrity: sha512-pd8KSxiQpdYRfYa9Wufvdoct3ZPQQuVuU5O6scNgMuOMYuxvH0IGaYK0wUFjo4UYYQQCUndlXiMbnxopwvvTiw==} + /eslint@8.46.0: + resolution: {integrity: sha512-cIO74PvbW0qU8e0mIvk5IV3ToWdCq5FYG6gWPHHkx6gNdjlbAYvtfHmlCMXxjcoVaIdwy/IAt3+mDkZkfvb2Dg==} engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} hasBin: true dependencies: - '@eslint-community/eslint-utils': 4.4.0(eslint@8.45.0) - '@eslint-community/regexpp': 4.6.0 - '@eslint/eslintrc': 2.1.0 - '@eslint/js': 8.44.0 + '@eslint-community/eslint-utils': 4.4.0(eslint@8.46.0) + '@eslint-community/regexpp': 4.6.2 + '@eslint/eslintrc': 2.1.1 + '@eslint/js': 8.46.0 '@humanwhocodes/config-array': 0.11.10 '@humanwhocodes/module-importer': 1.0.1 '@nodelib/fs.walk': 1.2.8 @@ -2458,8 +2614,8 @@ packages: debug: 4.3.4 doctrine: 3.0.0 escape-string-regexp: 4.0.0 - eslint-scope: 7.2.1 - eslint-visitor-keys: 3.4.1 + eslint-scope: 7.2.2 + eslint-visitor-keys: 3.4.2 espree: 9.6.1 esquery: 1.5.0 esutils: 2.0.3 @@ -2492,7 +2648,7 @@ packages: dependencies: acorn: 8.10.0 acorn-jsx: 5.3.2(acorn@8.10.0) - eslint-visitor-keys: 3.4.1 + eslint-visitor-keys: 3.4.2 dev: true /esprima@4.0.1: @@ -2515,11 +2671,6 @@ packages: estraverse: 5.3.0 dev: true - /estraverse@4.3.0: - resolution: {integrity: sha512-39nnKffWz8xN1BU/2c79n9nB9HDzo0niYUqx6xyqUnyoAnQyyWpOTdZEeiCch8BBu515t4wp9ZmgVfVhn9EBpw==} - engines: {node: '>=4.0'} - dev: true - /estraverse@5.3.0: resolution: {integrity: sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==} engines: {node: '>=4.0'} @@ -2564,6 +2715,26 @@ packages: strip-final-newline: 2.0.0 dev: true + /execa@7.2.0: + resolution: {integrity: sha512-UduyVP7TLB5IcAQl+OzLyLcS/l32W/GLg+AhHJ+ow40FOk2U3SAllPwR44v4vmdFwIWqpdwxxpQbF1n5ta9seA==} + engines: {node: ^14.18.0 || ^16.14.0 || >=18.0.0} + dependencies: + cross-spawn: 7.0.3 + get-stream: 6.0.1 + human-signals: 4.3.1 + is-stream: 3.0.0 + merge-stream: 2.0.0 + npm-run-path: 5.1.0 + onetime: 6.0.0 + signal-exit: 3.0.7 + strip-final-newline: 3.0.0 + dev: true + + /exit-hook@3.2.0: + resolution: {integrity: sha512-aIQN7Q04HGAV/I5BszisuHTZHXNoC23WtLkxdCLuYZMdWviRD0TMIt2bnUBi9MrHaF/hH8b3gwG9iaAUHKnJGA==} + engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} + dev: true + /expand-range@1.8.2: resolution: {integrity: sha512-AFASGfIlnIbkKPQwX1yHaDjFvh/1gyKJODme52V6IORh69uEYgZp0o9C+qsIGNVEiuuhQU0CSSl++Rlegg1qvA==} engines: {node: '>=0.10.0'} @@ -2650,6 +2821,14 @@ packages: escape-string-regexp: 1.0.5 dev: true + /figures@5.0.0: + resolution: {integrity: sha512-ej8ksPF4x6e5wvK9yevct0UCXh8TTFlWGVLlgjZuoBH1HwjIfKE/IdL5mq89sFA7zELi1VhKpmtDnrs7zWyeyg==} + engines: {node: '>=14'} + dependencies: + escape-string-regexp: 5.0.0 + is-unicode-supported: 1.3.0 + dev: true + /file-entry-cache@6.0.1: resolution: {integrity: sha512-7Gps/XWymbLk2QLYK4NzpMOrYjMhdIxXuIvy2QBsLE6ljuodKvdkWs/cpyJJ3CVIVpH0Oi1Hvg1ovbMzLdFBBg==} engines: {node: ^10.12.0 || >=12.0.0} @@ -2682,13 +2861,6 @@ packages: locate-path: 2.0.0 dev: true - /find-up@3.0.0: - resolution: {integrity: sha512-1yD6RmLI1XBfxugvORwlck6f75tYL+iR0jqwsOrOxMZyGYqUuDhJ0l4AXdO1iX/FTs9cBAMEk1gWSEx1kSbylg==} - engines: {node: '>=6'} - dependencies: - locate-path: 3.0.0 - dev: true - /find-up@4.1.0: resolution: {integrity: sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==} engines: {node: '>=8'} @@ -2705,6 +2877,14 @@ packages: path-exists: 4.0.0 dev: true + /find-up@6.3.0: + resolution: {integrity: sha512-v2ZsoEuVHYy8ZIlYqwPe/39Cy+cFDzp4dXPaxNvkEuouymu+2Jbz0PxpKarJHYJTmv2HWT3O382qY8l4jMWthw==} + engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} + dependencies: + locate-path: 7.2.0 + path-exists: 5.0.0 + dev: true + /flat-cache@3.0.4: resolution: {integrity: sha512-dm9s5Pw7Jc0GvMYbshN6zchCA9RgQlzzEZX3vylR9IqFfS8XciblUXOKfW6SiuJ0e13eDYZoZV5wdrev7P3Nwg==} engines: {node: ^10.12.0 || >=12.0.0} @@ -2733,7 +2913,7 @@ packages: engines: {node: '>=14'} dependencies: cross-spawn: 7.0.3 - signal-exit: 4.0.2 + signal-exit: 4.1.0 dev: true /form-data-encoder@2.1.4: @@ -2776,10 +2956,6 @@ packages: minipass: 5.0.0 dev: true - /fs-monkey@1.0.4: - resolution: {integrity: sha512-INM/fWAxMICjttnD0DX1rBvinKskj5G1w+oy/pnm9u/tSlnBrzFonJMcalKJ30P8RRsPzKcCG7Q8l0jx5Fh9YQ==} - dev: true - /fs.realpath@1.0.0: resolution: {integrity: sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw==} dev: true @@ -2854,13 +3030,6 @@ packages: engines: {node: '>=10'} dev: true - /get-stream@4.1.0: - resolution: {integrity: sha512-GMat4EJ5161kIy2HevLlr4luNjBgvmj413KaQA7jt4V8B4RDsfpHk7WQ9GVqfYyyx8OS/L66Kox+rJRNklLK7w==} - engines: {node: '>=6'} - dependencies: - pump: 3.0.0 - dev: true - /get-stream@5.2.0: resolution: {integrity: sha512-nBF+F1rAZVCu/p7rjzgA+Yb4lfYXrpl7a6VmJrU8wF9I1CKvP/QwPNZHnOlwbTkY6dvtFIzFMSyQXbLoTQPRpA==} engines: {node: '>=8'} @@ -2881,16 +3050,20 @@ packages: get-intrinsic: 1.2.1 dev: true - /git-raw-commits@2.0.11: - resolution: {integrity: sha512-VnctFhw+xfj8Va1xtfEqCUD2XDrbAPSJx+hSrE5K7fGdjZruW7XV+QOrN7LF/RJyvspRiD2I0asWsxFp0ya26A==} - engines: {node: '>=10'} + /get-tsconfig@4.6.2: + resolution: {integrity: sha512-E5XrT4CbbXcXWy+1jChlZmrmCwd5KGx502kDCXJJ7y898TtWW9FwoG5HfOLVRKmlmDGkWN2HM9Ho+/Y8F0sJDg==} + dependencies: + resolve-pkg-maps: 1.0.0 + dev: true + + /git-raw-commits@3.0.0: + resolution: {integrity: sha512-b5OHmZ3vAgGrDn/X0kS+9qCfNKWe4K/jFnhwzVWWg0/k5eLa3060tZShrRg8Dja5kPc+YjS0Gc6y7cRr44Lpjw==} + engines: {node: '>=14'} hasBin: true dependencies: dargs: 7.0.0 - lodash: 4.17.21 meow: 8.1.2 split2: 3.2.2 - through2: 4.0.2 dev: true /git-remote-origin-url@2.0.0: @@ -2901,13 +3074,13 @@ packages: pify: 2.3.0 dev: true - /git-semver-tags@4.1.1: - resolution: {integrity: sha512-OWyMt5zBe7xFs8vglMmhM9lRQzCWL3WjHtxNNfJTMngGym7pC1kh8sP6jevfydJ6LP3ZvGxfb6ABYgPUM0mtsA==} - engines: {node: '>=10'} + /git-semver-tags@5.0.1: + resolution: {integrity: sha512-hIvOeZwRbQ+7YEUmCkHqo8FOLQZCEn18yevLHADlFPZY02KJGsu5FZt9YW/lybfK2uhWFI7Qg/07LekJiTv7iA==} + engines: {node: '>=14'} hasBin: true dependencies: meow: 8.1.2 - semver: 6.3.1 + semver: 7.5.4 dev: true /gitconfiglocal@1.0.0: @@ -2940,7 +3113,7 @@ packages: hasBin: true dependencies: foreground-child: 3.1.1 - jackspeak: 2.2.1 + jackspeak: 2.2.2 minimatch: 9.0.3 minipass: 7.0.2 path-scurry: 1.10.1 @@ -2957,13 +3130,6 @@ packages: path-is-absolute: 1.0.1 dev: true - /global-dirs@2.1.0: - resolution: {integrity: sha512-MG6kdOUh/xBnyo9cJFeIKkLEc1AyFq42QTU4XiX51i2NEdxLxLWXIjEjmqKeSuKR7pAZjTqUVoT2b2huxVLgYQ==} - engines: {node: '>=8'} - dependencies: - ini: 1.3.7 - dev: true - /global-dirs@3.0.1: resolution: {integrity: sha512-NBcGGFbBA9s1VzD41QXDG+3++t9Mn5t1FpLdhESY6oKY4gYTFpX4wO3sqGUa0Srjtbfj3szX0RnemmrVRUdULA==} engines: {node: '>=10'} @@ -2997,33 +3163,38 @@ packages: slash: 3.0.0 dev: true + /globby@13.2.2: + resolution: {integrity: sha512-Y1zNGV+pzQdh7H39l9zgB4PJqjRNqydvdYCDG4HFXM4XuvSaQQlEc91IU1yALL8gUTDomgBAfz3XJdmUS+oo0w==} + engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} + dependencies: + dir-glob: 3.0.1 + fast-glob: 3.3.1 + ignore: 5.2.4 + merge2: 1.4.1 + slash: 4.0.0 + dev: true + /gopd@1.0.1: resolution: {integrity: sha512-d65bNlIadxvpb/A2abVdlqKqV563juRnZ1Wtk6s1sIR8uNsXR70xqIzVqxVf1eTqDunwT2MkczEeaezCKTZhwA==} dependencies: get-intrinsic: 1.2.1 dev: true - /got@10.7.0: - resolution: {integrity: sha512-aWTDeNw9g+XqEZNcTjMMZSy7B7yE9toWOFYip7ofFTLleJhvZwUxxTxkTpKvF+p1SAA4VHmuEy7PiHTHyq8tJg==} - engines: {node: '>=10'} + /got@11.8.6: + resolution: {integrity: sha512-6tfZ91bOr7bOXnK7PRDCGBLa1H4U080YHNaAQ2KsMGlLEzRbk44nsZF2E1IeRc3vtJHPVbKCYgdFbaGO2ljd8g==} + engines: {node: '>=10.19.0'} dependencies: - '@sindresorhus/is': 2.1.1 + '@sindresorhus/is': 4.6.0 '@szmarczak/http-timer': 4.0.6 '@types/cacheable-request': 6.0.3 - '@types/keyv': 3.1.4 '@types/responselike': 1.0.0 - cacheable-lookup: 2.0.1 + cacheable-lookup: 5.0.4 cacheable-request: 7.0.4 - decompress-response: 5.0.0 - duplexer3: 0.1.5 - get-stream: 5.2.0 + decompress-response: 6.0.0 + http2-wrapper: 1.0.3 lowercase-keys: 2.0.0 - mimic-response: 2.1.0 p-cancelable: 2.1.1 - p-event: 4.2.0 responselike: 2.0.1 - to-readable-stream: 2.1.0 - type-fest: 0.10.0 dev: true /got@12.6.1: @@ -3033,7 +3204,7 @@ packages: '@sindresorhus/is': 5.6.0 '@szmarczak/http-timer': 5.0.1 cacheable-lookup: 7.0.0 - cacheable-request: 10.2.12 + cacheable-request: 10.2.13 decompress-response: 6.0.0 form-data-encoder: 2.1.4 get-stream: 6.0.1 @@ -3043,25 +3214,6 @@ packages: responselike: 3.0.0 dev: true - /got@9.6.0: - resolution: {integrity: sha512-R7eWptXuGYxwijs0eV+v3o6+XH1IqVK8dJOEecQfTmkncw9AV4dcw/Dhxi8MdlqPthxxpZyizMzyg8RTmEsG+Q==} - engines: {node: '>=8.6'} - dependencies: - '@sindresorhus/is': 0.14.0 - '@szmarczak/http-timer': 1.1.2 - '@types/keyv': 3.1.4 - '@types/responselike': 1.0.0 - cacheable-request: 6.1.0 - decompress-response: 3.3.0 - duplexer3: 0.1.5 - get-stream: 4.1.0 - lowercase-keys: 1.0.1 - mimic-response: 1.0.1 - p-cancelable: 1.1.0 - to-readable-stream: 1.0.0 - url-parse-lax: 3.0.0 - dev: true - /graceful-fs@4.2.10: resolution: {integrity: sha512-9ByhssR2fPVsNZj478qUUbKfmL0+t5BDVyjShtyZZLiK7ZDAArFFfopyOTj0M05wE2tJPisA4iTnnXl2YoPvOA==} dev: true @@ -3094,8 +3246,8 @@ packages: through2: 2.0.5 dev: true - /handlebars@4.7.7: - resolution: {integrity: sha512-aAcXm5OAfE/8IXkcZvCepKU3VzW1/39Fb5ZuqMtgI/hT8X2YgoMvBY5dLhq/cpOvw7Lk1nK/UF71aLG/ZnVYRA==} + /handlebars@4.7.8: + resolution: {integrity: sha512-vafaFqs8MZkRrSX7sFVUdo3ap/eNiLnb4IakshzvP56X5Nr1iGKAIqdX6tMlm6HcNRIkr6AxO5jFEoJzzpT8aQ==} engines: {node: '>=0.4.7'} hasBin: true dependencies: @@ -3160,11 +3312,6 @@ packages: resolution: {integrity: sha512-8Rf9Y83NBReMnx0gFzA8JImQACstCYWUplepDa9xprwwtmgEZUF0h/i5xSA625zB/I37EtrswSST6OXxwaaIJQ==} dev: true - /has-yarn@2.1.0: - resolution: {integrity: sha512-UqBRqi4ju7T+TqGNdqAO0PaSVGsDGJUBQvk9eUWNGRY1CFGDzYhLWoM7JQEemnlvVcv/YEmc2wNW8BC24EnUsw==} - engines: {node: '>=8'} - dev: true - /has-yarn@3.0.0: resolution: {integrity: sha512-IrsVwUHhEULx3R8f/aA8AHuEzAorplsab/v8HBzEiIukwq5i/EC+xmOW+HfP1OaDP+2JkgT1yILHN2O3UFIbcA==} engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} @@ -3191,13 +3338,6 @@ packages: resolution: {integrity: sha512-mxIDAb9Lsm6DoOJ7xH+5+X4y1LU/4Hi50L9C5sIswK3JzULS4bwk1FvjdBgvYR4bzT4tuUQiC15FE2f5HbLvYw==} dev: true - /hosted-git-info@3.0.8: - resolution: {integrity: sha512-aXpmwoOhRBrw6X3j0h5RloK4x1OzsxMPyxqIHyNfSe2pypkVTZFpEiRoSipPEPlMrh0HW/XsjkJ5WgnCirpNUw==} - engines: {node: '>=10'} - dependencies: - lru-cache: 6.0.0 - dev: true - /hosted-git-info@4.1.0: resolution: {integrity: sha512-kyCuEOWjJqZuDbRHzL8V93NzQhwIB71oFWSyzVo+KPZI+pnQPPxucdkrOZvkLRnrf5URsQM+IJ09Dw29cRALIA==} engines: {node: '>=10'} @@ -3241,6 +3381,14 @@ packages: - supports-color dev: true + /http2-wrapper@1.0.3: + resolution: {integrity: sha512-V+23sDMr12Wnz7iTcDeJr3O6AIxlnvT/bmaAAAP/Xda35C90p9599p0F1eHR/N1KILWSoWVAiOMFjBBXaXSMxg==} + engines: {node: '>=10.19.0'} + dependencies: + quick-lru: 5.1.1 + resolve-alpn: 1.2.1 + dev: true + /http2-wrapper@2.2.0: resolution: {integrity: sha512-kZB0wxMo0sh1PehyjJUWRFEd99KC5TLjZ2cULC4f9iqJBAmKQQXEICjxl5iPJRwP40dpeHFqqhm7tYCvODpqpQ==} engines: {node: '>=10.19.0'} @@ -3269,6 +3417,11 @@ packages: engines: {node: '>=10.17.0'} dev: true + /human-signals@4.3.1: + resolution: {integrity: sha512-nZXjEF2nbo7lIw3mgYjItAfgQXog3OjJogSbKa2CQIIvSGWcKgeJnQlNXip6NglNzYH45nSRiEVimMvYL8DDqQ==} + engines: {node: '>=14.18.0'} + dev: true + /humanize-ms@1.2.1: resolution: {integrity: sha512-Fl70vYtsAFb/C06PTS9dZBo7ihau+Tu/DNCk/OyHhea07S+aeMWpFFkUaXRa8fI+ScZbEI8dfSxwY7gxZ9SAVQ==} dependencies: @@ -3281,6 +3434,11 @@ packages: hasBin: true dev: true + /hyperdyperid@1.2.0: + resolution: {integrity: sha512-Y93lCzHYgGWdrJ66yIktxiaGULYc6oGiABxhcO5AufBeOyoIdZF7bIfLaOrbM0iGIOXQQgxxRrFEnb+Y6w1n4A==} + engines: {node: '>=10.18'} + dev: true + /iconv-lite@0.4.24: resolution: {integrity: sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA==} engines: {node: '>=0.10.0'} @@ -3304,12 +3462,6 @@ packages: engines: {node: '>=10 <11 || >=12 <13 || >=14'} dev: true - /ignore-walk@3.0.4: - resolution: {integrity: sha512-PY6Ii8o1jMRA1z4F2hRkH/xN59ox43DavKvD3oDpfurRlOJyAHpifIwpbdv1n4jt4ov0jSpw3kQ4GhJnpBL6WQ==} - dependencies: - minimatch: 3.1.2 - dev: true - /ignore-walk@6.0.3: resolution: {integrity: sha512-C7FfFoTA+bI10qfeydT8aZbvr91vAEU+2W5BZUlzPec47oNb07SsOfwYrtxuvOYdUApPP/Qlh4DtAO51Ekk2QA==} engines: {node: ^14.17.0 || ^16.13.0 || >=18.0.0} @@ -3330,11 +3482,6 @@ packages: resolve-from: 4.0.0 dev: true - /import-lazy@2.1.0: - resolution: {integrity: sha512-m7ZEHgtw69qOGw+jwxXkHlrlIPdTGkyh66zXZ1ajZbxkDBNjSY/LGbmjc7h0s2ELsUDTAhFr55TrPSSqJGPG0A==} - engines: {node: '>=4'} - dev: true - /import-lazy@4.0.0: resolution: {integrity: sha512-rKtvo6a868b5Hu3heneU+L4yEQ4jYKLtjpnPeUdK7h0yzXGmyBTypknlkCvHFBqfX9YlorEiMM6Dnq/5atfHkw==} engines: {node: '>=8'} @@ -3364,6 +3511,11 @@ packages: engines: {node: '>=8'} dev: true + /indent-string@5.0.0: + resolution: {integrity: sha512-m6FAo/spmsW2Ab2fU35JTYwtOKa2yAwXSwgjSv1TJzh4Mh7mC3lzAOVLBprb72XsTrgkEIsl7YrFNAiDiRhIGg==} + engines: {node: '>=12'} + dev: true + /inflight@1.0.6: resolution: {integrity: sha512-k92I/b08q4wvFscXCLvqfsHCrjrF7yiXsQuIVvVE7N82W3+aqpzuUdBbfhWcy/FZR3/4IgflMgKLOsvPDrGCJA==} dependencies: @@ -3375,10 +3527,6 @@ packages: resolution: {integrity: sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==} dev: true - /ini@1.3.7: - resolution: {integrity: sha512-iKpRpXP+CrP2jyrxvg1kMUpXDyRUFDWurxbnVT1vQPx+Wz9uCYsMIqYuSBLV+PAaZG/d7kRLKRFc9oDMsH+mFQ==} - dev: true - /ini@1.3.8: resolution: {integrity: sha512-JV/yugV2uzW5iMRSiZAyDtQd+nxtUnjeLt0acNdw98kKLrvuRVyB80tsREOE7yvGVgalhZ6RNXCmEHkUKBKxew==} dev: true @@ -3439,8 +3587,8 @@ packages: through: 2.3.8 dev: true - /inquirer@8.2.5: - resolution: {integrity: sha512-QAgPDQMEgrDssk1XiwwHoOGYF9BAbUcc1+j+FhEvaOt8/cKRqyLn0U5qA6F74fGhTMGxf92pOvPBeh29jQJDTQ==} + /inquirer@8.2.6: + resolution: {integrity: sha512-M1WuAmb7pn9zdFRtQYk26ZBoY043Sse0wVDdk4Bppr+JOXyQYybdtvK+l9wUibhtjdjvtoiNy8tk+EgsYIUqKg==} engines: {node: '>=12.0.0'} dependencies: ansi-escapes: 4.3.2 @@ -3457,7 +3605,28 @@ packages: string-width: 4.2.3 strip-ansi: 6.0.1 through: 2.3.8 - wrap-ansi: 7.0.0 + wrap-ansi: 6.2.0 + dev: true + + /inquirer@9.2.9: + resolution: {integrity: sha512-0VXHov2GGwWquYxwxlcIcm3yOHvFb2jh/+HkY8/AUXSTWShpo6QJMlSfHi5Xo74NO40UePBM3rQcI3OkzOF/7A==} + engines: {node: '>=14.18.0'} + dependencies: + '@ljharb/through': 2.3.9 + ansi-escapes: 4.3.2 + chalk: 5.3.0 + cli-cursor: 3.1.0 + cli-width: 4.0.0 + external-editor: 3.1.0 + figures: 5.0.0 + lodash: 4.17.21 + mute-stream: 1.0.0 + ora: 5.4.1 + run-async: 3.0.0 + rxjs: 7.8.1 + string-width: 4.2.3 + strip-ansi: 6.0.1 + wrap-ansi: 6.2.0 dev: true /internal-slot@1.0.5: @@ -3515,18 +3684,18 @@ packages: resolution: {integrity: sha512-NcdALwpXkTm5Zvvbk7owOUSvVvBKDgKP5/ewfXEznmQFfs4ZRmanOeKBTjRVjka3QFoN6XJ+9F3USqfHqTaU5w==} dev: true + /is-builtin-module@3.2.1: + resolution: {integrity: sha512-BSLE3HnV2syZ0FK0iMA/yUGplUeMmNz4AW5fnTunbCIqZi4vG3WjJT9FHMy5D69xmAYBHXQhJdALdpwVxV501A==} + engines: {node: '>=6'} + dependencies: + builtin-modules: 3.3.0 + dev: true + /is-callable@1.2.7: resolution: {integrity: sha512-1BC0BVFhS/p0qtw6enp8e+8OD0UrK0oFLztSjNzhcKA3WDuJxxAPXzPuPtKkjEY9UUoEWlX/8fgKeu2S8i9JTA==} engines: {node: '>= 0.4'} dev: true - /is-ci@2.0.0: - resolution: {integrity: sha512-YfJT7rkpQB0updsdHLGWrvhBJfcfzNNawYDNIyQXJz0IViGf75O8EBPKSdvw2rF+LGCsX4FZ8tcr3b19LcZq4w==} - hasBin: true - dependencies: - ci-info: 2.0.0 - dev: true - /is-ci@3.0.1: resolution: {integrity: sha512-ZYvCgrefwqoQ6yTyYUbQu64HsITZ3NfKX1lzaEYdkTDcfKzzCI/wthRRYKkdjHKFVgNiXKAKm65Zo1pk2as/QQ==} hasBin: true @@ -3553,6 +3722,12 @@ packages: hasBin: true dev: true + /is-docker@3.0.0: + resolution: {integrity: sha512-eljcgEDlEns/7AXFosB5K/2nCM4P7FQPkGc/DWLy5rmFEWvZayGrik1d9/QIY5nJ4f9YsVvBkA6kJpHn9rISdQ==} + engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} + hasBin: true + dev: true + /is-error@2.2.2: resolution: {integrity: sha512-IOQqts/aHWbiisY5DuPJQ0gcbvaLFCa7fBa9xoLfxBZvQ+ZI/Zh9xoI7Gk+G64N0FdK4AbibytHht2tWgpJWLg==} dev: true @@ -3591,6 +3766,11 @@ packages: engines: {node: '>=8'} dev: true + /is-fullwidth-code-point@4.0.0: + resolution: {integrity: sha512-O4L094N2/dZ7xqVdrXhh9r1KODPJpFms8B5sGdJLPy664AgvXsreZUyCQQNItZRDlYug4xStLjNp/sz3HvBowQ==} + engines: {node: '>=12'} + dev: true + /is-glob@4.0.3: resolution: {integrity: sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==} engines: {node: '>=0.10.0'} @@ -3598,12 +3778,12 @@ packages: is-extglob: 2.1.1 dev: true - /is-installed-globally@0.3.2: - resolution: {integrity: sha512-wZ8x1js7Ia0kecP/CHM/3ABkAmujX7WPvQk6uu3Fly/Mk44pySulQpnHG46OMjHGXApINnV4QhY3SWnECO2z5g==} - engines: {node: '>=8'} + /is-inside-container@1.0.0: + resolution: {integrity: sha512-KIYLCCJghfHZxqjYBE7rEy0OBuTd5xCHS7tHVgvCLkx7StIoaxwNW3hCALgEUjFfeRk+MG/Qxmp/vtETEF3tRA==} + engines: {node: '>=14.16'} + hasBin: true dependencies: - global-dirs: 2.1.0 - is-path-inside: 3.0.3 + is-docker: 3.0.0 dev: true /is-installed-globally@0.4.0: @@ -3619,20 +3799,28 @@ packages: engines: {node: '>=8'} dev: true + /is-interactive@2.0.0: + resolution: {integrity: sha512-qP1vozQRI+BMOPcjFzrjXuQvdak2pHNUMZoeG2eRbiSqyvbEf/wQtEOTOX1guk6E3t36RkaqiSt8A/6YElNxLQ==} + engines: {node: '>=12'} + dev: true + /is-lambda@1.0.1: resolution: {integrity: sha512-z7CMFGNrENq5iFB9Bqo64Xk6Y9sg+epq1myIcdHaGnbMTYOxvzsEtdYqQUylB7LxfkvgrrjP32T6Ywciio9UIQ==} dev: true + /is-name-taken@2.0.0: + resolution: {integrity: sha512-W+FUWF5g7ONVJTx3rldZeVizmPzrMMUdscpSQ96vyYerx+4b2NcqaujLJJDWruGzE0FjzGZO9RFIipOGxx/WIw==} + dependencies: + all-package-names: 2.0.706 + package-name-conflict: 1.0.3 + validate-npm-package-name: 3.0.0 + dev: true + /is-negative-zero@2.0.2: resolution: {integrity: sha512-dqJvarLawXsFbNDeJW7zAz8ItJ9cd28YufuuFzh0G8pNHjJMnY08Dv7sYX2uF5UpQOwieAeOExEYAWWfu7ZZUA==} engines: {node: '>= 0.4'} dev: true - /is-npm@5.0.0: - resolution: {integrity: sha512-WW/rQLOazUq+ST/bCAVBp/2oMERWLsR7OrKyt052dNDk4DHcDE0/7QSXITlmi+VBcV13DfIbysG3tZJm5RfdBA==} - engines: {node: '>=10'} - dev: true - /is-npm@6.0.0: resolution: {integrity: sha512-JEjxbSmtPSt1c8XTkVrlujcXdKV1/tvuQ7GwKcAlyiVLeYFQ2VHat8xfrDJsIkhCdF/tZ7CiIR3sy141c6+gPQ==} engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} @@ -3674,9 +3862,9 @@ packages: symbol-observable: 1.2.0 dev: true - /is-path-cwd@2.2.0: - resolution: {integrity: sha512-w942bTcih8fdJPJmQHFzkS76NEP8Kzzvmw92cXsazb8intwLqPibPPdXf4ANdKV3rYMuuQYGIWtvz9JilB3NFQ==} - engines: {node: '>=6'} + /is-path-cwd@3.0.0: + resolution: {integrity: sha512-kyiNFFLU0Ampr6SDZitD/DwUo4Zs1nSdnygUBqsu3LooL00Qvb5j+UnvApUn/TTj1J3OuE6BTdQ5rudKmU2ZaA==} + engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} dev: true /is-path-inside@3.0.3: @@ -3684,6 +3872,11 @@ packages: engines: {node: '>=8'} dev: true + /is-path-inside@4.0.0: + resolution: {integrity: sha512-lJJV/5dYS+RcL8uQdBDW9c9uWFLLBNRyFhnAKXw5tVqLlKZ4RMGZKv+YQ/IA3OhD+RpbJa1LLFM1FQPGyIXvOA==} + engines: {node: '>=12'} + dev: true + /is-plain-obj@1.1.0: resolution: {integrity: sha512-yvkRyxmFKEOQ4pNXCmJG5AEQNlXJS5LaONXo5/cLdTZdWvsZ1ioJEonLGAosKlMWE8lwUy/bJzMjcw8az73+Fg==} engines: {node: '>=0.10.0'} @@ -3721,11 +3914,11 @@ packages: has-tostringtag: 1.0.0 dev: true - /is-scoped@2.1.0: - resolution: {integrity: sha512-Cv4OpPTHAK9kHYzkzCrof3VJh7H/PrG2MBUMvvJebaaUMbqhm0YAtXnvh0I3Hnj2tMZWwrRROWLSgfJrKqWmlQ==} - engines: {node: '>=8'} + /is-scoped@3.0.0: + resolution: {integrity: sha512-ezxLUq30kiTvP0w/5n9tj4qTOKlrA07Oty1hwTQ+lcqw11x6uc8sp7VRb2OVGRzKfCHZ2A22T5Zsau/Q2Akb0g==} + engines: {node: '>=12'} dependencies: - scoped-regex: 2.1.0 + scoped-regex: 3.0.0 dev: true /is-shared-array-buffer@1.0.2: @@ -3744,6 +3937,11 @@ packages: engines: {node: '>=8'} dev: true + /is-stream@3.0.0: + resolution: {integrity: sha512-LnQR4bZ9IADDRSkvpqMGvt/tEJWclzklNgSw48V5EAaAeDd6qGvN8ei6k5p0tvxSR171VmGyHuTiAOfxAbr8kA==} + engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} + dev: true + /is-string@1.0.7: resolution: {integrity: sha512-tE2UXzivje6ofPW7l23cjDOMa09gb7xlAqG6jG5ej6uPV32TlWP3NKPigtaGeHNu9fohccRYvIiZMfOOnOYUtg==} engines: {node: '>= 0.4'} @@ -3781,9 +3979,14 @@ packages: engines: {node: '>=10'} dev: true - /is-url-superb@4.0.0: - resolution: {integrity: sha512-GI+WjezhPPcbM+tqE9LnmsY5qqjwHzTvjJ36wxYX5ujNXefSUJ/T17r5bqDV8yLhcgB59KTPNOc9O9cmHTPWsA==} - engines: {node: '>=10'} + /is-unicode-supported@1.3.0: + resolution: {integrity: sha512-43r2mRvz+8JRIKnWJ+3j8JtjRKZ6GmjzfaE/qiBJnikNnYv/6bagRJ1kUhNk8R5EX/GkobD+r+sfxCPJsiKBLQ==} + engines: {node: '>=12'} + dev: true + + /is-url-superb@6.1.0: + resolution: {integrity: sha512-LXdhGlYqUPdvEyIhWPEEwYYK3yrUiPcBjmFGlZNv1u5GtIL5qQRf7ddDyPNAvsMFqdzS923FROpTQU97tLe3JQ==} + engines: {node: '>=12'} dev: true /is-weakref@1.0.2: @@ -3799,10 +4002,6 @@ packages: is-docker: 2.2.1 dev: true - /is-yarn-global@0.3.0: - resolution: {integrity: sha512-VjSeb/lHmkoyd8ryPVIKvOCn4D1koMqY+vqyjjUfc3xyKtP4dYOxM44sZrnqQSzSds3xyOrUTLTC9LVCVgLngw==} - dev: true - /is-yarn-global@0.4.1: resolution: {integrity: sha512-/kppl+R+LO5VmhYSEWARUFjodS25D68gvj8W7z0I7OWhUla5xWu8KL6CtB2V0R6yqhnRgbcaREMr4EEM6htLPQ==} engines: {node: '>=12'} @@ -3816,8 +4015,8 @@ packages: resolution: {integrity: sha512-xHjhDr3cNBK0BzdUJSPXZntQUx/mwMS5Rw4A7lPJ90XGAO6ISP/ePDNuo0vhqOZU+UD5JoodwCAAoZQd3FeAKw==} dev: true - /isbot@3.4.5: - resolution: {integrity: sha512-+KD6q1BBtw0iK9aGBGSfxJ31/ZgizKRjhm8ebgJUBMx0aeeQuIJ1I72beCoIrltIZGrSm4vmrxRxrG5n1aUTtw==} + /isbot@3.6.13: + resolution: {integrity: sha512-uoP4uK5Dc2CrabmK+Gue1jTL+scHiCc1c9rblRpJwG8CPxjLIv8jmGyyGRGkbPOweayhkskdZsEQXG6p+QCQrg==} engines: {node: '>=12'} dev: true @@ -3837,13 +4036,13 @@ packages: engines: {node: '>=0.10.0'} dev: true - /issue-regex@3.1.0: - resolution: {integrity: sha512-0RHjbtw9QXeSYnIEY5Yrp2QZrdtz21xBDV9C/GIlY2POmgoS6a7qjkYS5siRKXScnuAj5/SPv1C3YForNCHTJA==} - engines: {node: '>=10'} + /issue-regex@4.1.0: + resolution: {integrity: sha512-X3HBmm7+Th+l4/kMtqwcHHgELD0Lfl0Ina6S3+grr+mKmTxsrM84NAO1UuRPIxIbGLIl3TCEu45S1kdu21HYbQ==} + engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} dev: true - /jackspeak@2.2.1: - resolution: {integrity: sha512-MXbxovZ/Pm42f6cDIDkl3xpwv1AGwObKwfmjs2nQePiy85tP3fatofl3FC1aBsOtP/6fq5SbtgHwWcMsLP+bDw==} + /jackspeak@2.2.2: + resolution: {integrity: sha512-mgNtVv4vUuaKA97yxUHoA3+FkuhtxkjdXEWOyB/N76fjy0FjezEt34oy3epBtvCvS+7DyKwqCFWx/oJLV5+kCg==} engines: {node: '>=14'} dependencies: '@isaacs/cliui': 8.0.2 @@ -3879,14 +4078,14 @@ packages: argparse: 2.0.1 dev: true - /jsdoc-type-pratt-parser@3.1.0: - resolution: {integrity: sha512-MgtD0ZiCDk9B+eI73BextfRrVQl0oyzRG8B2BjORts6jbunj4ScKPcyXGTbB6eXL4y9TzxCm6hyeLq/2ASzNdw==} + /jsdoc-type-pratt-parser@4.0.0: + resolution: {integrity: sha512-YtOli5Cmzy3q4dP26GraSOeAhqecewG04hoO8DY56CH4KJ9Fvv5qKWUCCo3HZob7esJQHCv6/+bnTy72xZZaVQ==} engines: {node: '>=12.0.0'} dev: true - /jsdom@20.0.0: - resolution: {integrity: sha512-x4a6CKCgx00uCmP+QakBDFXwjAJ69IkkIWHmtmjd3wvXPcdOS44hfX2vqkOQrVrq8l9DhNNADZRXaCEWvgXtVA==} - engines: {node: '>=14'} + /jsdom@22.1.0: + resolution: {integrity: sha512-/9AVW7xNbsBv6GfWho4TTNjEo9fe6Zhf9O7s0Fhhr3u+awPwAJMKwAMXnkk5vBxflqLW9hTHX/0cs+P3gW+cQw==} + engines: {node: '>=16'} peerDependencies: canvas: ^2.5.0 peerDependenciesMeta: @@ -3894,14 +4093,10 @@ packages: optional: true dependencies: abab: 2.0.6 - acorn: 8.10.0 - acorn-globals: 6.0.0 - cssom: 0.5.0 - cssstyle: 2.3.0 - data-urls: 3.0.2 + cssstyle: 3.0.0 + data-urls: 4.0.0 decimal.js: 10.4.3 domexception: 4.0.0 - escodegen: 2.1.0 form-data: 4.0.0 html-encoding-sniffer: 3.0.0 http-proxy-agent: 5.0.0 @@ -3909,15 +4104,15 @@ packages: is-potential-custom-element-name: 1.0.1 nwsapi: 2.2.7 parse5: 7.1.2 + rrweb-cssom: 0.6.0 saxes: 6.0.0 symbol-tree: 3.2.4 tough-cookie: 4.1.3 - w3c-hr-time: 1.0.2 - w3c-xmlserializer: 3.0.0 + w3c-xmlserializer: 4.0.0 webidl-conversions: 7.0.0 whatwg-encoding: 2.0.0 whatwg-mimetype: 3.0.0 - whatwg-url: 11.0.0 + whatwg-url: 12.0.1 ws: 8.13.0 xml-name-validator: 4.0.0 transitivePeerDependencies: @@ -3926,14 +4121,26 @@ packages: - utf-8-validate dev: true - /json-buffer@3.0.0: - resolution: {integrity: sha512-CuUqjv0FUZIdXkHPI8MezCnFCdaTAacej1TZYulLoAg1h/PhwkdXFN4V/gzY4g+fMBCOV2xF+rp7t2XD2ns/NQ==} - dev: true - /json-buffer@3.0.1: resolution: {integrity: sha512-4bV5BfR2mqfQTJm+V5tPPdf+ZpuhiIvTuAB5g8kcrXOZpTT/QwwVRWBywX1ozr6lEuPdbHxwaJlm9G6mI2sfSQ==} dev: true + /json-joy@9.5.1(quill-delta@5.1.0)(rxjs@7.8.1)(tslib@2.6.1): + resolution: {integrity: sha512-XMSpdxaiWUZlc+CAUbPS3G2MZbGxm6clFatqjta/DLrq5V4Y5JU4cx7Qvy7l+XTVPvmRWaYuzzAuCf9uUc40IA==} + engines: {node: '>=10.0'} + hasBin: true + peerDependencies: + quill-delta: ^5 + rxjs: '7' + tslib: '2' + dependencies: + arg: 5.0.2 + hyperdyperid: 1.2.0 + quill-delta: 5.1.0 + rxjs: 7.8.1 + tslib: 2.6.1 + dev: true + /json-parse-better-errors@1.0.2: resolution: {integrity: sha512-mrqyZKfX5EhL7hvqcV6WG1yYjnjeuYDzDhhcAAUrq8Po85NBQBJP+ZDUT75qZQ98IkUoBqdkExkukOU7Ts2wrw==} dev: true @@ -3987,12 +4194,6 @@ packages: engines: {'0': node >= 0.2.0} dev: true - /keyv@3.1.0: - resolution: {integrity: sha512-9ykJ/46SN/9KPM/sichzQ7OvXyGDYKGTaDlKMGCAlg2UK8KRy4jb0d8sFc+0Tt0YYnThq8X2RZgCg74RPxgcVA==} - dependencies: - json-buffer: 3.0.0 - dev: true - /keyv@4.5.3: resolution: {integrity: sha512-QCiSav9WaX1PgETJ+SpNnx2PRRapJ/oRSXM4VO5OGYGSjrxbKPVFVhB3l2OCbLCk329N8qyAtsJjSjvVBWzEug==} dependencies: @@ -4016,13 +4217,6 @@ packages: engines: {node: '>=6'} dev: true - /latest-version@5.1.0: - resolution: {integrity: sha512-weT+r0kTkRQdCdYCNtkMwWXQTMEswKrFBkm4ckQOMVhhqhIMI1UT2hMj+1iigIhgSZm5gTmrRXBNoGUgaTY1xA==} - engines: {node: '>=8'} - dependencies: - package-json: 6.5.0 - dev: true - /latest-version@7.0.0: resolution: {integrity: sha512-KvNT4XqAMzdcL6ka6Tl3i2lYeFDgXNCuIX+xNx6ZMVR1dFq+idXd9FLKNMOIx0t9mJ9/HudyX4oZWXZQ0UJHeg==} engines: {node: '>=14.16'} @@ -4129,15 +4323,9 @@ packages: strip-bom: 3.0.0 dev: true - /load-json-file@5.3.0: - resolution: {integrity: sha512-cJGP40Jc/VXUsp8/OrnyKyTZ1y6v/dphm3bioS+RrKXjK2BB6wHUd6JptZEFDGgGahMT+InnZO5i1Ei9mpC8Bw==} - engines: {node: '>=6'} - dependencies: - graceful-fs: 4.2.11 - parse-json: 4.0.0 - pify: 4.0.1 - strip-bom: 3.0.0 - type-fest: 0.3.1 + /load-json-file@7.0.1: + resolution: {integrity: sha512-Gnxj3ev3mB5TkVBGad0JM6dmLiQL+o0t23JPBZ9sd+yvSLk05mFoqKBw5N8gbbkU4TNXyqCgIrl/VM17OgUIgQ==} + engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} dev: true /locate-path@2.0.0: @@ -4148,14 +4336,6 @@ packages: path-exists: 3.0.0 dev: true - /locate-path@3.0.0: - resolution: {integrity: sha512-7AO748wWnIhNqAuaty2ZWHkQHRSNfPVIsPIfwEOWO22AmaoVrWavlOcMR5nzTLNYvp36X220/maaRsrec1G65A==} - engines: {node: '>=6'} - dependencies: - p-locate: 3.0.0 - path-exists: 3.0.0 - dev: true - /locate-path@5.0.0: resolution: {integrity: sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==} engines: {node: '>=8'} @@ -4170,10 +4350,21 @@ packages: p-locate: 5.0.0 dev: true + /locate-path@7.2.0: + resolution: {integrity: sha512-gvVijfZvn7R+2qyPX8mAuKcFGDf6Nc61GdvGafQsHL0sBIxfKzA+usWn4GFC/bk+QdwPUD4kWFJLhElipq+0VA==} + engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} + dependencies: + p-locate: 6.0.0 + dev: true + /lodash._reinterpolate@3.0.0: resolution: {integrity: sha512-xYHt68QRoYGjeeM/XOE1uJtvXQAgvszfBhjV4yvsQH0u2i9I6cI6c6/eG4Hh3UAOVn0y/xAXwmTzEay49Q//HA==} dev: true + /lodash.clonedeep@4.5.0: + resolution: {integrity: sha512-H5ZhCF25riFd9uB5UCkVKo61m3S/xZk1x4wA6yp/L3RFP6Z/eHH1ymQcGLo7J3GMPfm0V/7m1tryHuGVxpqEBQ==} + dev: true + /lodash.isequal@4.5.0: resolution: {integrity: sha512-pDo3lu8Jhfjqls6GkMgpahsF9kCyayhgykjyLMNFTKWrpVdAQtYyB4muAMWozBB4ig/dtWAmsMxLEI8wuz+DYQ==} dev: true @@ -4222,6 +4413,14 @@ packages: is-unicode-supported: 0.1.0 dev: true + /log-symbols@5.1.0: + resolution: {integrity: sha512-l0x2DvrW294C9uDCoQe1VSU4gf529FkSZ6leBl4TiqZH/e+0R7hSfHQBNut2mNygDgHwvYHfFLn6Oxb3VWj2rA==} + engines: {node: '>=12'} + dependencies: + chalk: 5.3.0 + is-unicode-supported: 1.3.0 + dev: true + /log-update@2.3.0: resolution: {integrity: sha512-vlP11XfFGyeNQlmEn9tJ66rEW1coA/79m5z6BCkudjbAGE83uhAcGYrBFwfs3AdLiLzGRusRPAbSPK9xZteCmg==} engines: {node: '>=4'} @@ -4231,11 +4430,6 @@ packages: wrap-ansi: 3.0.1 dev: true - /lowercase-keys@1.0.1: - resolution: {integrity: sha512-G2Lj61tXDnVFFOi8VZds+SoQjtQC3dgokKdDG2mTm1tx4m50NUHBOZSBwQQHyy0V12A0JTG4icfZQH+xPyh8VA==} - engines: {node: '>=0.10.0'} - dev: true - /lowercase-keys@2.0.0: resolution: {integrity: sha512-tqNXrS78oMOE73NMxK4EMLQsQowWf8jKooH9g7xPavRT706R6bkQJ6DY2Te7QukaZsulxa30wQ7bk0pm4XiHmA==} engines: {node: '>=8'} @@ -4263,24 +4457,13 @@ packages: engines: {node: '>=12'} dev: true - /magic-string@0.27.0: - resolution: {integrity: sha512-8UnnX2PeRAPZuN12svgR9j7M1uWMovg/CEnIwIG0LFkXSJJe4PdfUGiTGl8V9bsBHFUtfVINcSyYxd7q+kx9fA==} + /magic-string@0.30.2: + resolution: {integrity: sha512-lNZdu7pewtq/ZvWUp9Wpf/x7WzMTsR26TWV03BRZrXFsv+BI6dy8RAiKgm1uM/kyR0rCfUcqvOlXKG66KhIGug==} engines: {node: '>=12'} dependencies: '@jridgewell/sourcemap-codec': 1.4.15 dev: true - /make-dir@3.1.0: - resolution: {integrity: sha512-g3FeP20LNwhALb/6Cz6Dd4F2ngze0jz7tbzrD2wAV+o9FeNHe4rL+yK2md0J/fiSf1sa1ADhXqi5+oVwOM/eGw==} - engines: {node: '>=8'} - dependencies: - semver: 6.3.1 - dev: true - - /make-error@1.3.6: - resolution: {integrity: sha512-s8UhlNe7vPKomQhC1qFelMokr/Sc3AgNbso3n74mVPA5LTZwkB9NlXf4XPamLxJE8h0gh73rM94xvwRT2CVInw==} - dev: true - /make-fetch-happen@11.1.1: resolution: {integrity: sha512-rLWS7GCSTcEujjVBs2YqG7Y4643u8ucvCJeSRqiLYhesrDuzeuFIk37xREzAsfQaqzl8b9rNCE4m6J8tvX4Q8w==} engines: {node: ^14.17.0 || ^16.13.0 || >=18.0.0} @@ -4345,11 +4528,11 @@ packages: strip-color: 0.1.0 dev: true - /matcher@3.0.0: - resolution: {integrity: sha512-OkeDaAZ/bQCxeFAozM55PKcKU0yJMPGifLwV4Qgjitu+5MoAfSQN4lsLJeXZ1b8w0x+/Emda6MZgXS1jvsapng==} - engines: {node: '>=10'} + /matcher@5.0.0: + resolution: {integrity: sha512-s2EMBOWtXFc8dgqvoAzKJXxNHibcdJMV0gwqKUaw9E2JBJuGUK7DrNKrA6g/i+v72TT16+6sVm5mS3thaMLQUw==} + engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} dependencies: - escape-string-regexp: 4.0.0 + escape-string-regexp: 5.0.0 dev: true /math-random@1.0.4: @@ -4363,19 +4546,44 @@ packages: blueimp-md5: 2.19.0 dev: true - /mem@8.1.1: - resolution: {integrity: sha512-qFCFUDs7U3b8mBDPyz5EToEKoAkgCzqquIgi9nkkR9bixxOVOre+09lbuH7+9Kn2NFpm56M3GUWVbU2hQgdACA==} - engines: {node: '>=10'} + /mem@9.0.2: + resolution: {integrity: sha512-F2t4YIv9XQUBHt6AOJ0y7lSmP1+cY7Fm1DRh9GClTGzKST7UWLMx6ly9WZdLH/G/ppM5RL4MlQfRT71ri9t19A==} + engines: {node: '>=12.20'} dependencies: map-age-cleaner: 0.1.3 - mimic-fn: 3.1.0 + mimic-fn: 4.0.0 dev: true - /memfs@3.4.13: - resolution: {integrity: sha512-omTM41g3Skpvx5dSYeZIbXKcXoAVc/AoMNwn9TKx++L/gaen/+4TTttmu8ZSch5vfVJ8uJvGbroTsIlslRg6lg==} + /memfs@4.2.0(quill-delta@5.1.0)(rxjs@7.8.1)(tslib@2.6.1): + resolution: {integrity: sha512-V5/xE+zl6+soWxlBjiVTQSkfXybTwhEBj2I8sK9LaS5lcZsTuhRftakrcRpDY7Ycac2NTK/VzEtpKMp+gpymrQ==} engines: {node: '>= 4.0.0'} + peerDependencies: + tslib: '2' + dependencies: + json-joy: 9.5.1(quill-delta@5.1.0)(rxjs@7.8.1)(tslib@2.6.1) + thingies: 1.12.0(tslib@2.6.1) + tslib: 2.6.1 + transitivePeerDependencies: + - quill-delta + - rxjs + dev: true + + /meow@12.0.1: + resolution: {integrity: sha512-/QOqMALNoKQcJAOOdIXjNLtfcCdLXbMFyB1fOOPdm6RzfBTlsuodOCTBDjVbeUSmgDQb8UI2oONqYGtq1PKKKA==} + engines: {node: '>=16.10'} dependencies: - fs-monkey: 1.0.4 + '@types/minimist': 1.2.2 + camelcase-keys: 8.0.2 + decamelize: 6.0.0 + decamelize-keys: 2.0.1 + hard-rejection: 2.1.0 + minimist-options: 4.1.0 + normalize-package-data: 5.0.0 + read-pkg-up: 9.1.0 + redent: 4.0.0 + trim-newlines: 5.0.0 + type-fest: 3.13.1 + yargs-parser: 21.1.1 dev: true /meow@8.1.2: @@ -4434,9 +4642,9 @@ packages: engines: {node: '>=6'} dev: true - /mimic-fn@3.1.0: - resolution: {integrity: sha512-Ysbi9uYW9hFyfrThdDEQuykN4Ey6BuwPD2kpI5ES/nFTDn/98yxYNLZJcgUAKPT/mcrLLKaGzJR9YVxJrIdASQ==} - engines: {node: '>=8'} + /mimic-fn@4.0.0: + resolution: {integrity: sha512-vqiC06CuhBTUdZH+RYl8sFrL096vA45Ok5ISO6sE/Mr1jRbGH4Csnhi8f3wKVl7x8mO4Au7Ir9D3Oyv1VYMFJw==} + engines: {node: '>=12'} dev: true /mimic-response@1.0.1: @@ -4444,11 +4652,6 @@ packages: engines: {node: '>=4'} dev: true - /mimic-response@2.1.0: - resolution: {integrity: sha512-wXqjST+SLt7R009ySCglWBCFpjUygmCIfD790/kVbiGmUgfYGuB14PiTd5DwVxSV4NcYHjzMkoj5LjQZwTQLEA==} - engines: {node: '>=8'} - dev: true - /mimic-response@3.1.0: resolution: {integrity: sha512-z0yWI+4FDrrweS8Zmt4Ej5HdJmky15+L2e6Wgn3+iK5fWzb6T3fhNFq2+MeTRb064c6Wr4N/wv0DzQTjNzHNGQ==} engines: {node: '>=10'} @@ -4612,6 +4815,11 @@ packages: resolution: {integrity: sha512-nnbWWOkoWyUsTjKrhgD0dcz22mdkSnpYqbEjIm2nhwhuxlSkpywJmBo8h0ZqJdkp73mb90SssHkN4rsRaBAfAA==} dev: true + /mute-stream@1.0.0: + resolution: {integrity: sha512-avsJQhyd+680gKXyG/sQc0nXaC6rBkPOfyHYcFb9+hdkqQkR9bdnkJ0AMZhke0oesPqIO+mFFJ+IdBc7mst4IA==} + engines: {node: ^14.17.0 || ^16.13.0 || >=18.0.0} + dev: true + /natural-compare-lite@1.4.0: resolution: {integrity: sha512-Tj+HTDSJJKaZnfiuw+iaF9skdPpTo2GtEly5JHnWV/hfv2Qj/9RKsGISQtLh2ox3l5EAGw487hnBee0sIJ6v2g==} dev: true @@ -4629,11 +4837,11 @@ packages: resolution: {integrity: sha512-Yd3UES5mWCSqR+qNT93S3UoYUkqAZ9lLg8a7g9rimsWmYGK8cVToA4/sF3RrshdyV3sAGMXVUmpMYOw+dLpOuw==} dev: true - /new-github-release-url@1.0.0: - resolution: {integrity: sha512-dle7yf655IMjyFUqn6Nxkb18r4AOAkzRcgcZv6WZ0IqrOH4QCEZ8Sm6I7XX21zvHdBeeMeTkhR9qT2Z0EJDx6A==} - engines: {node: '>=10'} + /new-github-release-url@2.0.0: + resolution: {integrity: sha512-NHDDGYudnvRutt/VhKFlX26IotXe1w0cmkDm6JGquh5bz/bDTw0LufSmH/GxTjEdpHEO+bVKFTwdrcGa/9XlKQ==} + engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} dependencies: - type-fest: 0.4.1 + type-fest: 2.19.0 dev: true /node-gyp@9.4.0: @@ -4649,7 +4857,7 @@ packages: nopt: 6.0.0 npmlog: 6.0.2 rimraf: 3.0.2 - semver: 7.3.8 + semver: 7.5.4 tar: 6.1.15 which: 2.0.2 transitivePeerDependencies: @@ -4660,6 +4868,11 @@ packages: resolution: {integrity: sha512-uYr7J37ae/ORWdZeQ1xxMJe3NtdmqMC/JZK+geofDrkLUApKRHPd18/TxtBOJ4A0/+uUIliorNrfYV6s1b02eQ==} dev: true + /nofilter@3.1.0: + resolution: {integrity: sha512-l2NNj07e9afPnhAhvgVrCD/oy2Ai1yfLpuo3EpiO1jFTsB4sFz6oIfAfSZyQzVpkZQ9xS8ZS5g1jCBgq4Hwo0g==} + engines: {node: '>=12.19'} + dev: true + /nopt@6.0.0: resolution: {integrity: sha512-ZwLpbTgdhuZUnZzjd7nb1ZV+4DoiC6/sfiVKok72ym/4Tlf+DFdlHYmT2JPmcNNWV6Pi3SDf1kT+A4r9RTuT9g==} engines: {node: ^12.13.0 || ^14.15.0 || >=16.0.0} @@ -4683,7 +4896,7 @@ packages: dependencies: hosted-git-info: 4.1.0 is-core-module: 2.12.1 - semver: 7.3.8 + semver: 7.5.4 validate-npm-package-license: 3.0.4 dev: true @@ -4693,7 +4906,7 @@ packages: dependencies: hosted-git-info: 6.1.1 is-core-module: 2.12.1 - semver: 7.3.8 + semver: 7.5.4 validate-npm-package-license: 3.0.4 dev: true @@ -4702,11 +4915,6 @@ packages: engines: {node: '>=0.10.0'} dev: true - /normalize-url@4.5.1: - resolution: {integrity: sha512-9UZCFRHQdNrfTpGg8+1INIg93B6zE0aXMVFkw1WFwvO4SlZywU6aLg5Of0Ap/PgcbSw4LNxvMWXMeugwMCX0AA==} - engines: {node: '>=8'} - dev: true - /normalize-url@6.1.0: resolution: {integrity: sha512-DlL+XwOy3NxAQ8xuC0okPgK46iuVNAK01YN7RueYBqqFeGsBjV9XmCAzAdgt+667bCl5kPh9EqKKDwnaPG1I7A==} engines: {node: '>=10'} @@ -4717,50 +4925,47 @@ packages: engines: {node: '>=14.16'} dev: true - /np@7.6.3: - resolution: {integrity: sha512-GTFNvIhu/cZqzUhil/AlISCiipYeAUVx0JtyjtmumFJvWogSewUSAshFi5MSMc6BOj9C98s8NAFZiqlHb2wQPQ==} - engines: {git: '>=2.11.0', node: '>=10', npm: '>=6.8.0', yarn: '>=1.7.0'} + /np@8.0.4: + resolution: {integrity: sha512-a4s1yESHcIwsrk/oaTekfbhb1R/2z2yyfVLX6Atl54w/9+QR01qeYyK3vMWgJ0UY+kYsGzQXausgvUX0pkmIMg==} + engines: {git: '>=2.11.0', node: '>=16.6.0', npm: '>=7.19.0', yarn: '>=1.7.0'} hasBin: true dependencies: - '@samverschueren/stream-to-observable': 0.3.1(rxjs@6.6.7) - any-observable: 0.5.1(rxjs@6.6.7) - async-exit-hook: 2.0.1 - chalk: 4.1.2 - cosmiconfig: 7.1.0 - del: 6.1.1 - escape-goat: 3.0.0 - escape-string-regexp: 4.0.0 - execa: 5.1.1 + chalk: 5.3.0 + cosmiconfig: 8.2.0 + del: 7.0.0 + escape-goat: 4.0.0 + escape-string-regexp: 5.0.0 + execa: 7.2.0 + exit-hook: 3.2.0 github-url-from-git: 1.5.0 - has-yarn: 2.1.0 - hosted-git-info: 3.0.8 - ignore-walk: 3.0.4 + has-yarn: 3.0.0 + hosted-git-info: 6.1.1 + ignore-walk: 6.0.3 import-local: 3.1.0 - inquirer: 7.3.3 - is-installed-globally: 0.3.2 - is-interactive: 1.0.0 - is-scoped: 2.1.0 - issue-regex: 3.1.0 + inquirer: 9.2.9 + is-installed-globally: 0.4.0 + is-interactive: 2.0.0 + is-scoped: 3.0.0 + issue-regex: 4.1.0 listr: 0.14.3 listr-input: 0.2.1 - log-symbols: 4.1.0 - meow: 8.1.2 - minimatch: 3.1.2 - new-github-release-url: 1.0.0 - npm-name: 6.0.1 - onetime: 5.1.2 - open: 7.4.2 - ow: 0.21.0 - p-memoize: 4.0.4 - p-timeout: 4.1.0 - pkg-dir: 5.0.0 - read-pkg-up: 7.0.1 - rxjs: 6.6.7 - semver: 7.3.8 - split: 1.0.1 - symbol-observable: 3.0.0 - terminal-link: 2.1.1 - update-notifier: 5.1.0 + log-symbols: 5.1.0 + meow: 12.0.1 + new-github-release-url: 2.0.0 + npm-name: 7.1.0 + onetime: 6.0.0 + open: 9.1.0 + ow: 1.1.1 + p-memoize: 7.1.1 + p-timeout: 6.1.2 + path-exists: 5.0.0 + pkg-dir: 7.0.0 + read-pkg-up: 9.1.0 + rxjs: 7.8.1 + semver: 7.5.4 + symbol-observable: 4.0.0 + terminal-link: 3.0.0 + update-notifier: 6.0.2 transitivePeerDependencies: - zen-observable - zenObservable @@ -4773,8 +4978,8 @@ packages: npm-normalize-package-bin: 3.0.1 dev: true - /npm-check-updates@16.10.16: - resolution: {integrity: sha512-d8mNYce/l8o5RHPE5ZUp2P1zj9poI7KWQCh5AsTIP3EhicONEhc63mLQQv4/nkCsMb3wCrikx6YOo4BOwN4+1w==} + /npm-check-updates@16.10.17: + resolution: {integrity: sha512-ZoIbWYJhlgMDoByq1WC6Ys3E76IvNCxgS54tPUFbK5J/nqf/BCJt6xiMPAEa7G1HuyAruG+orUF9uTsTGUZl8g==} engines: {node: '>=14.14'} hasBin: true dependencies: @@ -4817,21 +5022,22 @@ packages: resolution: {integrity: sha512-dH3GmQL4vsPtld59cOn8uY0iOqRmqKvV+DLGwNXV/Q7MDgD2QfOADWd/mFXcIE5LVhYYGjA3baz6W9JneqnuCw==} engines: {node: ^14.17.0 || ^16.13.0 || >=18.0.0} dependencies: - semver: 7.3.8 + semver: 7.5.4 dev: true - /npm-name@6.0.1: - resolution: {integrity: sha512-fhKRvUAxaYzMEUZim4mXWyfFbVS+M1CbrCLdAo3txWzrctxKka/h+KaBW0O9Cz5uOM00Nldn2JLWhuwnyW3SUw==} - engines: {node: '>=10'} + /npm-name@7.1.0: + resolution: {integrity: sha512-0Sxf+7tQUOkQ9HuYVSdvq7gZNAOPp1ZJjHiKzpJhsQw9m1YjNfARC0SxWuuUWefChsbvu+DWrwWFfGQWLHmLjg==} + engines: {node: '>=12'} dependencies: - got: 10.7.0 - is-scoped: 2.1.0 - is-url-superb: 4.0.0 + got: 11.8.6 + is-name-taken: 2.0.0 + is-scoped: 3.0.0 + is-url-superb: 6.1.0 lodash.zip: 4.2.0 org-regex: 1.0.0 - p-map: 3.0.0 + p-map: 5.5.0 registry-auth-token: 4.2.2 - registry-url: 5.1.0 + registry-url: 6.0.1 validate-npm-package-name: 3.0.0 dev: true @@ -4846,7 +5052,7 @@ packages: dependencies: hosted-git-info: 6.1.1 proc-log: 3.0.0 - semver: 7.3.8 + semver: 7.5.4 validate-npm-package-name: 5.0.0 dev: true @@ -4857,14 +5063,14 @@ packages: ignore-walk: 6.0.3 dev: true - /npm-pick-manifest@8.0.1: - resolution: {integrity: sha512-mRtvlBjTsJvfCCdmPtiu2bdlx8d/KXtF7yNXNWe7G0Z36qWA9Ny5zXsI2PfBZEv7SXgoxTmNaTzGSbbzDZChoA==} + /npm-pick-manifest@8.0.2: + resolution: {integrity: sha512-1dKY+86/AIiq1tkKVD3l0WI+Gd3vkknVGAggsFeBkTvbhMQ1OND/LKkYv4JtXPKUJ8bOTCyLiqEg2P6QNdK+Gg==} engines: {node: ^14.17.0 || ^16.13.0 || >=18.0.0} dependencies: npm-install-checks: 6.1.1 npm-normalize-package-bin: 3.0.1 npm-package-arg: 10.1.0 - semver: 7.3.8 + semver: 7.5.4 dev: true /npm-registry-fetch@14.0.5: @@ -4889,6 +5095,13 @@ packages: path-key: 3.1.1 dev: true + /npm-run-path@5.1.0: + resolution: {integrity: sha512-sJOdmRGrY2sjNTRMbSvluQqg+8X7ZK61yvzBEIDhz4f8z1TZFYABsqjjCBd/0PUNE9M6QDgHJXQkGUEm7Q+l9Q==} + engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} + dependencies: + path-key: 4.0.0 + dev: true + /npmlog@6.0.2: resolution: {integrity: sha512-/vBvz5Jfr9dT/aFWd0FIRf+T/Q2WBsLENygUaFUqstqsycmZAP/t5BvFJTK0viFmSUxiUKTUplWy5vt+rvKIxg==} engines: {node: ^12.13.0 || ^14.15.0 || >=16.0.0} @@ -4941,6 +5154,24 @@ packages: object-keys: 1.1.1 dev: true + /object.fromentries@2.0.6: + resolution: {integrity: sha512-VciD13dswC4j1Xt5394WR4MzmAQmlgN72phd/riNp9vtD7tp4QQWJ0R4wvclXcafgcYK8veHRed2W6XeGBvcfg==} + engines: {node: '>= 0.4'} + dependencies: + call-bind: 1.0.2 + define-properties: 1.2.0 + es-abstract: 1.22.1 + dev: true + + /object.groupby@1.0.0: + resolution: {integrity: sha512-70MWG6NfRH9GnbZOikuhPPYzpUpof9iW2J9E4dW7FXTqPNb6rllE6u39SKwwiNh8lCwX3DDb5OgcKGiEBrTTyw==} + dependencies: + call-bind: 1.0.2 + define-properties: 1.2.0 + es-abstract: 1.22.1 + get-intrinsic: 1.2.1 + dev: true + /object.pick@1.3.0: resolution: {integrity: sha512-tqa/UMy/CCoYmj+H5qc07qvSL9dqcs/WZENZ1JbtWBlATP+iVOe778gE6MSijnyCnORzDuX6hU+LA4SZ09YjFQ==} engines: {node: '>=0.10.0'} @@ -4977,11 +5208,20 @@ packages: mimic-fn: 2.1.0 dev: true - /open@7.4.2: - resolution: {integrity: sha512-MVHddDVweXZF3awtlAS+6pgKLlm/JgxZ90+/NBurBoQctVOOB/zDdVjcyPzQ+0laDGbsWgrRkflI65sQeOgT9Q==} - engines: {node: '>=8'} + /onetime@6.0.0: + resolution: {integrity: sha512-1FlR+gjXK7X+AsAHso35MnyN5KqGwJRi/31ft6x0M194ht7S+rWAvd7PHss9xSKMzE0asv1pyIHaJYq+BbacAQ==} + engines: {node: '>=12'} dependencies: - is-docker: 2.2.1 + mimic-fn: 4.0.0 + dev: true + + /open@9.1.0: + resolution: {integrity: sha512-OS+QTnw1/4vrf+9hh1jc1jnYjzSG4ttTBB8UxOwAnInG3Uo4ssetzC1ihqaIHjLJnA5GGlRl6QlZXOTQhRBUvg==} + engines: {node: '>=14.16'} + dependencies: + default-browser: 4.0.0 + define-lazy-prop: 3.0.0 + is-inside-container: 1.0.0 is-wsl: 2.2.0 dev: true @@ -5022,23 +5262,17 @@ packages: engines: {node: '>=0.10.0'} dev: true - /ow@0.21.0: - resolution: {integrity: sha512-dlsoDe39g7mhdsdrC1R/YwjT7yjVqE3svWwOlMGvN690waBkgEZBmKBdkmKvSt5/wZ6E0Jn/nIesPqMZOpPKqw==} - engines: {node: '>=10'} + /ow@1.1.1: + resolution: {integrity: sha512-sJBRCbS5vh1Jp9EOgwp1Ws3c16lJrUkJYlvWTYC03oyiYVwS/ns7lKRWow4w4XjDyTrA2pplQv4B2naWSR6yDA==} + engines: {node: '>=14.16'} dependencies: - '@sindresorhus/is': 4.6.0 - callsites: 3.1.0 - dot-prop: 6.0.1 + '@sindresorhus/is': 5.6.0 + callsites: 4.0.0 + dot-prop: 7.2.0 lodash.isequal: 4.5.0 - type-fest: 0.20.2 vali-date: 1.0.0 dev: true - /p-cancelable@1.1.0: - resolution: {integrity: sha512-s73XxOZ4zpt1edZYZzvhqFa6uvQc1vwUa0K0BdtIZgQMAJj9IbebH+JkgKZc9h+B05PKHLOTl4ajG1BmNrVZlw==} - engines: {node: '>=6'} - dev: true - /p-cancelable@2.1.1: resolution: {integrity: sha512-BZOr3nRQHOntUjTrH8+Lh54smKHoHyur8We1V8DSMVrl5A2malOOwuJRnKRDjSnkoeBh4at6BwEnb5I7Jl31wg==} engines: {node: '>=8'} @@ -5054,16 +5288,11 @@ packages: engines: {node: '>=4'} dev: true - /p-event@4.2.0: - resolution: {integrity: sha512-KXatOjCRXXkSePPb1Nbi0p0m+gQAwdlbhi4wQKJPI1HsMQS9g+Sqp2o+QHziPr7eYJyOZet836KoHEVM1mwOrQ==} - engines: {node: '>=8'} + /p-event@5.0.1: + resolution: {integrity: sha512-dd589iCQ7m1L0bmC5NLlVYfy3TbBEsMUfWx9PyAgPeIcFZ/E2yaTZ4Rz4MiBmmJShviiftHVXOqfnfzJ6kyMrQ==} + engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} dependencies: - p-timeout: 3.2.0 - dev: true - - /p-finally@1.0.0: - resolution: {integrity: sha512-LICb2p9CB7FS+0eR1oqWnHhp0FljGLZCWBE9aix0Uye9W8LTQPwMTYVGWQWIw9RdQiDg4+epXQODwIYJtSJaow==} - engines: {node: '>=4'} + p-timeout: 5.1.0 dev: true /p-limit@1.3.0: @@ -5087,6 +5316,13 @@ packages: yocto-queue: 0.1.0 dev: true + /p-limit@4.0.0: + resolution: {integrity: sha512-5b0R4txpzjPWVw/cXXUResoD4hb6U/x9BH08L7nw+GN1sezDzPdxeRvpc9c433fZhBan/wusjbCsqwqm4EIBIQ==} + engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} + dependencies: + yocto-queue: 1.0.0 + dev: true + /p-locate@2.0.0: resolution: {integrity: sha512-nQja7m7gSKuewoVRen45CtVfODR3crN3goVQ0DDZ9N3yHxgpkuBhZqsaiotSQRrADUrne346peY7kT3TSACykg==} engines: {node: '>=4'} @@ -5094,13 +5330,6 @@ packages: p-limit: 1.3.0 dev: true - /p-locate@3.0.0: - resolution: {integrity: sha512-x+12w/To+4GFfgJhBEpiDcLozRJGegY+Ei7/z0tSLkMmxGZNybVMSfWj9aJn8Z5Fc7dBUNJOOVgPv2H7IwulSQ==} - engines: {node: '>=6'} - dependencies: - p-limit: 2.3.0 - dev: true - /p-locate@4.1.0: resolution: {integrity: sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==} engines: {node: '>=8'} @@ -5115,18 +5344,22 @@ packages: p-limit: 3.1.0 dev: true + /p-locate@6.0.0: + resolution: {integrity: sha512-wPrq66Llhl7/4AGC6I+cqxT07LhXvWL08LNXz1fENOw0Ap4sRZZ/gZpTTJ5jpurzzzfS2W/Ge9BY3LgLjCShcw==} + engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} + dependencies: + p-limit: 4.0.0 + dev: true + + /p-lock@2.1.0: + resolution: {integrity: sha512-pi2yT8gNhVrV4LgsUvJWQy58TXH1HG2+NXDby9+UrsS/9fXb0FJH9aCxbdHJ0EAQ6XC7ggSP6GAzuR5puDArUQ==} + dev: true + /p-map@2.1.0: resolution: {integrity: sha512-y3b8Kpd8OAN444hxfBbFfj1FY/RjtTd8tzYwhUqNYXx0fXx2iX4maP4Qr6qhIKbQXI02wTLAda4fYUbDagTUFw==} engines: {node: '>=6'} dev: true - /p-map@3.0.0: - resolution: {integrity: sha512-d3qXVTF/s+W+CdJ5A29wywV2n8CQQYahlgz2bFiA+4eVNJbHJodPZ+/gXwPGh0bOqA+j8S+6+ckmvLGPk1QpxQ==} - engines: {node: '>=8'} - dependencies: - aggregate-error: 3.1.0 - dev: true - /p-map@4.0.0: resolution: {integrity: sha512-/bjOqmgETBYB5BoEeGVea8dmvHb2m9GLy1E9W43yeyfP6QQCZGFNa+XRceJEuDB6zqr+gKpIAmlLebMpykw/MQ==} engines: {node: '>=10'} @@ -5134,38 +5367,29 @@ packages: aggregate-error: 3.1.0 dev: true - /p-memoize@4.0.4: - resolution: {integrity: sha512-ijdh0DP4Mk6J4FXlOM6vPPoCjPytcEseW8p/k5SDTSSfGV3E9bpt9Yzfifvzp6iohIieoLTkXRb32OWV0fB2Lw==} - engines: {node: '>=10'} + /p-map@5.5.0: + resolution: {integrity: sha512-VFqfGDHlx87K66yZrNdI4YGtD70IRyd+zSvgks6mzHPRNkoKy+9EKP4SFC77/vTTQYmRmti7dvqC+m5jBrBAcg==} + engines: {node: '>=12'} dependencies: - map-age-cleaner: 0.1.3 - mimic-fn: 3.1.0 - p-settle: 4.1.1 - dev: true - - /p-reflect@2.1.0: - resolution: {integrity: sha512-paHV8NUz8zDHu5lhr/ngGWQiW067DK/+IbJ+RfZ4k+s8y4EKyYCz8pGYWjxCg35eHztpJAt+NUgvN4L+GCbPlg==} - engines: {node: '>=8'} + aggregate-error: 4.0.1 dev: true - /p-settle@4.1.1: - resolution: {integrity: sha512-6THGh13mt3gypcNMm0ADqVNCcYa3BK6DWsuJWFCuEKP1rpY+OKGp7gaZwVmLspmic01+fsg/fN57MfvDzZ/PuQ==} - engines: {node: '>=10'} + /p-memoize@7.1.1: + resolution: {integrity: sha512-DZ/bONJILHkQ721hSr/E9wMz5Am/OTJ9P6LhLFo2Tu+jL8044tgc9LwHO8g4PiaYePnlVVRAJcKmgy8J9MVFrA==} + engines: {node: '>=14.16'} dependencies: - p-limit: 2.3.0 - p-reflect: 2.1.0 + mimic-fn: 4.0.0 + type-fest: 3.13.1 dev: true - /p-timeout@3.2.0: - resolution: {integrity: sha512-rhIwUycgwwKcP9yTOOFK/AKsAopjjCakVqLHePO3CC6Mir1Z99xT+R63jZxAT5lFZLa2inS5h+ZS2GvR99/FBg==} - engines: {node: '>=8'} - dependencies: - p-finally: 1.0.0 + /p-timeout@5.1.0: + resolution: {integrity: sha512-auFDyzzzGZZZdHz3BtET9VEz0SE/uMEAx7uWfGPucfzEwwe/xH0iVeZibQmANYE/hp9T2+UUZT5m+BKyrDp3Ew==} + engines: {node: '>=12'} dev: true - /p-timeout@4.1.0: - resolution: {integrity: sha512-+/wmHtzJuWii1sXn3HCuH/FTwGhrp4tmJTxSKJbfS+vkipci6osxXM5mY0jUiRzWKMTgUT8l7HFbeSwZAynqHw==} - engines: {node: '>=10'} + /p-timeout@6.1.2: + resolution: {integrity: sha512-UbD77BuZ9Bc9aABo74gfXhNvzC9Tx7SxtHSh1fxvx3jTLLYvmVhiQZZrJzqqU0jKbN32kb5VOKiLEQI/3bIjgQ==} + engines: {node: '>=14.16'} dev: true /p-try@1.0.0: @@ -5178,16 +5402,6 @@ packages: engines: {node: '>=6'} dev: true - /package-json@6.5.0: - resolution: {integrity: sha512-k3bdm2n25tkyxcjSKzB5x8kfVxlMdgsbPr0GkZcwHsLpba6cBjqCt1KlcChKEvxHIcTB1FVMuwoijZ26xex5MQ==} - engines: {node: '>=8'} - dependencies: - got: 9.6.0 - registry-auth-token: 4.2.2 - registry-url: 5.1.0 - semver: 6.3.1 - dev: true - /package-json@8.1.1: resolution: {integrity: sha512-cbH9IAIJHNj9uXi196JVsRlt7cHKak6u/e6AkL/bkRelZ7rlL3X1YKxsZwa36xipOEKAsdtmaG6aAJoM1fx2zA==} engines: {node: '>=14.16'} @@ -5195,7 +5409,11 @@ packages: got: 12.6.1 registry-auth-token: 5.0.2 registry-url: 6.0.1 - semver: 7.3.8 + semver: 7.5.4 + dev: true + + /package-name-conflict@1.0.3: + resolution: {integrity: sha512-DPBNWSUWC0wPofXeNThao0uP4a93J7r90UyhagmJS0QcacTTkorZwXYsOop70phn1hKdcf/2e9lJIhazS8bx5A==} dev: true /pacote@15.2.0: @@ -5212,7 +5430,7 @@ packages: minipass: 5.0.0 npm-package-arg: 10.1.0 npm-packlist: 7.0.4 - npm-pick-manifest: 8.0.1 + npm-pick-manifest: 8.0.2 npm-registry-fetch: 14.0.5 proc-log: 3.0.0 promise-retry: 2.0.1 @@ -5239,6 +5457,18 @@ packages: hasBin: true dev: true + /parse-json-object@1.1.0: + resolution: {integrity: sha512-4w5s6uJY1tW9REY8UwUOyaZKSKsrbQrMEzlV/Le/g5t4iMWuuyK83pZZ0OZimSOL9iyv2ORvRSgz71Ekd7iD3g==} + dependencies: + types-json: 1.2.2 + dev: true + + /parse-json-object@2.0.1: + resolution: {integrity: sha512-/oF7PUUBjCqHmMEE6xIQeX5ZokQ9+miudACzPt4KBU2qi6CxZYPdisPXx4ad7wpZJYi2ZpcW2PacLTU3De3ebw==} + dependencies: + types-json: 1.2.2 + dev: true + /parse-json@4.0.0: resolution: {integrity: sha512-aOIos8bujGN93/8Ox/jPLh7RwVnPEysynVFE+fQZyg6jKELEHwzgKdLRFHUgXJL6kylijVSBC4BvN9OmsB48Rw==} engines: {node: '>=4'} @@ -5257,9 +5487,9 @@ packages: lines-and-columns: 1.2.4 dev: true - /parse-ms@2.1.0: - resolution: {integrity: sha512-kHt7kzLoS9VBZfUsiKjv43mr91ea+U05EyKkEtqp7vNbHxmaVuEqN7XxeEVnGrMtYOAxGrDElSi96K7EgO1zCA==} - engines: {node: '>=6'} + /parse-ms@3.0.0: + resolution: {integrity: sha512-Tpb8Z7r7XbbtBTrM9UhpkzzaMrqA2VXMT3YChzYltwV3P3pM6t8wl7TvpMnSTosz1aQAdVib7kdoys7vYOPerw==} + engines: {node: '>=12'} dev: true /parse5@7.1.2: @@ -5278,6 +5508,11 @@ packages: engines: {node: '>=8'} dev: true + /path-exists@5.0.0: + resolution: {integrity: sha512-RjhtfwJOxzcFmNOi6ltcbcu4Iu+FL3zEj83dk4kAS+fVpTxXLO1b38RvJgT/0QwvV/L3aY9TAnyv0EOqW4GoMQ==} + engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} + dev: true + /path-is-absolute@1.0.1: resolution: {integrity: sha512-AVbw3UJ2e9bq64vSaS9Am0fje1Pa8pbGqTTsmXfaIiMpnr5DlDhfJOuLj9Sf95ZPVDAUerDfEk88MPmPe7UCQg==} engines: {node: '>=0.10.0'} @@ -5288,6 +5523,11 @@ packages: engines: {node: '>=8'} dev: true + /path-key@4.0.0: + resolution: {integrity: sha512-haREypq7xkM7ErfgIyA0z+Bj4AGKlMSdlQE2jvJo6huWD1EdkKYV+G/T4nq0YEF2vgTT8kqMFKo1uHn950r4SQ==} + engines: {node: '>=12'} + dev: true + /path-parse@1.0.7: resolution: {integrity: sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==} dev: true @@ -5331,17 +5571,12 @@ packages: engines: {node: '>=4'} dev: true - /pify@4.0.1: - resolution: {integrity: sha512-uB80kBFb/tfd68bVleG9T5GGsGPjJrLAUpR5PZIrhBnIaRTQRjqdJSsIKkOP6OAIFbj7GOrcudc5pNjZ+geV2g==} - engines: {node: '>=6'} - dev: true - - /pkg-conf@3.1.0: - resolution: {integrity: sha512-m0OTbR/5VPNPqO1ph6Fqbj7Hv6QU7gR/tQW40ZqrL1rjgCU85W6C1bJn0BItuJqnR98PWzw7Z8hHeChD1WrgdQ==} - engines: {node: '>=6'} + /pkg-conf@4.0.0: + resolution: {integrity: sha512-7dmgi4UY4qk+4mj5Cd8v/GExPo0K+SlY+hulOSdfZ/T6jVH6//y7NtzZo5WrfhDBxuQ0jCa7fLZmNaNh7EWL/w==} + engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} dependencies: - find-up: 3.0.0 - load-json-file: 5.3.0 + find-up: 6.3.0 + load-json-file: 7.0.1 dev: true /pkg-dir@4.2.0: @@ -5351,23 +5586,23 @@ packages: find-up: 4.1.0 dev: true - /pkg-dir@5.0.0: - resolution: {integrity: sha512-NPE8TDbzl/3YQYY7CSS228s3g2ollTFnc+Qi3tqmqJp9Vg2ovUpixcJEo2HJScN2Ez+kEaal6y70c0ehqJBJeA==} - engines: {node: '>=10'} + /pkg-dir@7.0.0: + resolution: {integrity: sha512-Ie9z/WINcxxLp27BKOCHGde4ITq9UklYKDzVo1nhk5sqGEXU3FpkwP5GM2voTGJkGd9B3Otl+Q4uwSOeSUtOBA==} + engines: {node: '>=14.16'} dependencies: - find-up: 5.0.0 + find-up: 6.3.0 dev: true - /plur@4.0.0: - resolution: {integrity: sha512-4UGewrYgqDFw9vV6zNV+ADmPAUAfJPKtGvb/VdpQAx25X5f3xXdGdyOEVFwkl8Hl/tl7+xbeHqSEM+D5/TirUg==} - engines: {node: '>=10'} + /plur@5.1.0: + resolution: {integrity: sha512-VP/72JeXqak2KiOzjgKtQen5y3IZHn+9GOuLDafPv0eXa47xq0At93XahYBs26MsifCQ4enGKwbjBTKgb9QJXg==} + engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} dependencies: irregular-plurals: 3.5.0 dev: true - /pnpm@7.23.0: - resolution: {integrity: sha512-0dJQXA+1+mo//tBvSpjb6dmLxx/UmLoeEOk/0FmOZ73GRZRNhMdarnwEenhKHNpiVXGCcvfWXJnvUMB7lp+tRQ==} - engines: {node: '>=14.6'} + /pnpm@8.6.11: + resolution: {integrity: sha512-jqknppuj45tDzJsLcLqkAxytBHZXIx9JTYkGNq0/7pSRggpio9wRxTDj4NA2ilOHPlJ5BVjB5Ij5dx65woMi5A==} + engines: {node: '>=16.14'} hasBin: true dev: true @@ -5376,25 +5611,26 @@ packages: engines: {node: '>= 0.8.0'} dev: true - /prepend-http@2.0.0: - resolution: {integrity: sha512-ravE6m9Atw9Z/jjttRUZ+clIXogdghyZAuWJ3qEzjT+jI/dL1ifAqhZeC5VHzQp1MSt1+jxKkFNemj/iO7tVUA==} - engines: {node: '>=4'} - dev: true - /prettier@2.8.8: resolution: {integrity: sha512-tdN8qQGvNjw4CHbY+XXk0JgCXn9QiF21a55rBe5LJAU+kDyC4WQn4+awm2Xfk2lQMk5fKup9XgzTZtGkjBdP9Q==} engines: {node: '>=10.13.0'} hasBin: true dev: true - /pretty-ms@7.0.1: - resolution: {integrity: sha512-973driJZvxiGOQ5ONsFhOF/DtzPMOMtgC11kCpUrPGMTgqp2q/1gwzCquocrN33is0VZ5GFHXZYMM9l6h67v2Q==} - engines: {node: '>=10'} + /prettier@3.0.1: + resolution: {integrity: sha512-fcOWSnnpCrovBsmFZIGIy9UqK2FaI7Hqax+DIO0A9UxeVoY4iweyaFjS5TavZN97Hfehph0nhsZnjlVKzEQSrQ==} + engines: {node: '>=14'} + hasBin: true + dev: true + + /pretty-ms@8.0.0: + resolution: {integrity: sha512-ASJqOugUF1bbzI35STMBUpZqdfYKlJugy6JBziGi2EE+AL5JPJGSzvpeVXojxrr0ViUYoToUjb5kjSEGf7Y83Q==} + engines: {node: '>=14.16'} dependencies: - parse-ms: 2.1.0 + parse-ms: 3.0.0 dev: true - /pretty-quick@3.1.3(prettier@2.8.8): + /pretty-quick@3.1.3(prettier@3.0.1): resolution: {integrity: sha512-kOCi2FJabvuh1as9enxYmrnBC6tVMoVOenMaBqRfsvBHB0cbpYHjdQEpSglpASDFEXVwplpcGR4CLEaisYAFcA==} engines: {node: '>=10.13'} hasBin: true @@ -5407,7 +5643,7 @@ packages: ignore: 5.2.4 mri: 1.2.0 multimatch: 4.0.0 - prettier: 2.8.8 + prettier: 3.0.1 dev: true /proc-log@3.0.0: @@ -5469,13 +5705,6 @@ packages: engines: {node: '>=6'} dev: true - /pupa@2.1.1: - resolution: {integrity: sha512-l1jNAspIBSFqbT+y+5FosojNpVpF94nlI+wDUpqP9enwOTfHx9f0gh5nB96vl+6yTpsJsypeNrwfzPrKuHB41A==} - engines: {node: '>=8'} - dependencies: - escape-goat: 2.1.1 - dev: true - /pupa@3.1.0: resolution: {integrity: sha512-FLpr4flz5xZTSJxSeaheeMKN/EDzMdK7b8PTOC6a5PYFKTucWbdqjgqaEyH0shFiSJrVB1+Qqi4Tk19ccU6Aug==} engines: {node: '>=12.20'} @@ -5483,11 +5712,6 @@ packages: escape-goat: 4.0.0 dev: true - /q@1.5.1: - resolution: {integrity: sha512-kV/CThkXo6xyFEZUugw/+pIOywXcDbFYgSct5cT3gqlbkBE1SJdwy6UQoZvodiWF/ckQLZyDE/Bu1M6gVu5lVw==} - engines: {node: '>=0.6.0', teleport: '>=0.2.0'} - dev: true - /querystringify@2.2.0: resolution: {integrity: sha512-FIqgj2EUvTa7R50u0rGsyTftzjYmv/a3hO345bZNrqabNqjtgiDMgmo4mkUjd+nzU5oF3dClKqFIPUKybUyqoQ==} dev: true @@ -5506,6 +5730,20 @@ packages: engines: {node: '>=10'} dev: true + /quick-lru@6.1.1: + resolution: {integrity: sha512-S27GBT+F0NTRiehtbrgaSE1idUAJ5bX8dPAQTdylEyNlrdcH5X4Lz7Edz3DYzecbsCluD5zO8ZNEe04z3D3u6Q==} + engines: {node: '>=12'} + dev: true + + /quill-delta@5.1.0: + resolution: {integrity: sha512-X74oCeRI4/p0ucjb5Ma8adTXd9Scumz367kkMK5V/IatcX6A0vlgLgKbzXWy5nZmCGeNJm2oQX0d2Eqj+ZIlCA==} + engines: {node: '>= 12.0.0'} + dependencies: + fast-diff: 1.3.0 + lodash.clonedeep: 4.5.0 + lodash.isequal: 4.5.0 + dev: true + /randomatic@3.1.1: resolution: {integrity: sha512-TuDE5KxZ0J461RVjrJZCJc+J+zCkTb1MbH9AQUq68sMhOMcy9jLcb3BrZKgp9q9Ncltdg4QVqWrH02W2EFFVYw==} engines: {node: '>= 0.10.0'} @@ -5536,6 +5774,17 @@ packages: strip-json-comments: 2.0.1 dev: true + /read-file-safe@1.0.10: + resolution: {integrity: sha512-qW25fd2uMX3dV6Ui/R0jYK1MhTpjx8FO/VHaHTXzwWsGnkNwLRcqYfCXd9qDM+NZ273DPUvP2RaimYuLSu1K/g==} + dev: true + + /read-json-safe@1.0.5: + resolution: {integrity: sha512-SJyNY/U9+vW35FPus22Qvv1oilnR7PCfN2E70uKQEGaJS313A5/cz9Yhv7ZtWzZ+XIwrtEPxXf10BOyYemHehA==} + dependencies: + parse-json-object: 1.1.0 + read-file-safe: 1.0.10 + dev: true + /read-package-json-fast@3.0.2: resolution: {integrity: sha512-0J+Msgym3vrLOUB3hzQCuZHII0xkNGCtz/HJH9xZshwv9DbDwkw1KaE3gx/e2J5rpEY5rtOy6cyhKOPrkP7FZw==} engines: {node: ^14.17.0 || ^16.13.0 || >=18.0.0} @@ -5571,6 +5820,15 @@ packages: type-fest: 0.8.1 dev: true + /read-pkg-up@9.1.0: + resolution: {integrity: sha512-vaMRR1AC1nrd5CQM0PhlRsO5oc2AAigqr7cCrZ/MW/Rsaflz4RlgzkpL4qoU/z1F6wrbd85iFv1OQj/y5RdGvg==} + engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} + dependencies: + find-up: 6.3.0 + read-pkg: 7.1.0 + type-fest: 2.19.0 + dev: true + /read-pkg@3.0.0: resolution: {integrity: sha512-BLq/cCO9two+lBgiTYNqD6GdtK8s4NpaWrl6/rCO9w0TUS8oJl7cmToOZfRYllKTISY6nt1U7jQ53brmKqY6BA==} engines: {node: '>=4'} @@ -5590,6 +5848,16 @@ packages: type-fest: 0.6.0 dev: true + /read-pkg@7.1.0: + resolution: {integrity: sha512-5iOehe+WF75IccPc30bWTbpdDQLOCc3Uu8bi3Dte3Eueij81yx1Mrufk8qBx/YAbR4uL1FdUr+7BKXDwEtisXg==} + engines: {node: '>=12.20'} + dependencies: + '@types/normalize-package-data': 2.4.1 + normalize-package-data: 3.0.3 + parse-json: 5.2.0 + type-fest: 2.19.0 + dev: true + /readable-stream@2.3.8: resolution: {integrity: sha512-8p0AUk4XODgIewSi0l8Epjs+EVnWiK7NoDIEGU0HhE7+ZyY8D1IMY7odu5lRrFXGg71L15KG8QrPmum45RTtdA==} dependencies: @@ -5626,6 +5894,14 @@ packages: strip-indent: 3.0.0 dev: true + /redent@4.0.0: + resolution: {integrity: sha512-tYkDkVVtYkSVhuQ4zBgfvciymHaeuel+zFKXShfDnFP5SyVEP7qo70Rf1jTOTCx3vGNAbnEi/xFkcfQVMIBWag==} + engines: {node: '>=12'} + dependencies: + indent-string: 5.0.0 + strip-indent: 4.0.0 + dev: true + /regexp.prototype.flags@1.5.0: resolution: {integrity: sha512-0SutC3pNudRKgquxGoRGIz946MZVHqbNfPjBdxeOhBrdgDKlRoXmYLQN9xRbrR09ZXWeGAdPuif7egofn6v5LA==} engines: {node: '>= 0.4'} @@ -5635,11 +5911,6 @@ packages: functions-have-names: 1.2.3 dev: true - /regexpp@3.2.0: - resolution: {integrity: sha512-pq2bWo9mVD43nbts2wGv17XLiNLya+GklZ8kaDLV2Z08gDCsGpnKn9BFMepvWuHCbyVvY7J5o5+BVvoQbmlJLg==} - engines: {node: '>=8'} - dev: true - /registry-auth-token@4.2.2: resolution: {integrity: sha512-PC5ZysNb42zpFME6D/XlIgtNGdTl8bBOCw90xQLVMpzuuubJKYDWFAEuUNc+Cn8Z8724tg2SDhDRrkVEsqfDMg==} engines: {node: '>=6.0.0'} @@ -5654,13 +5925,6 @@ packages: '@pnpm/npm-conf': 2.2.2 dev: true - /registry-url@5.1.0: - resolution: {integrity: sha512-8acYXXTI0AkQv6RAOjE3vOaIXZkT9wo4LOFbBKYQEEnnMNBpKqdUrI6S4NT0KPIo/WVvJ5tE/X5LF/TQUf0ekw==} - engines: {node: '>=8'} - dependencies: - rc: 1.2.8 - dev: true - /registry-url@6.0.1: resolution: {integrity: sha512-+crtS5QjFRqFCoQmvGduwYWEBng99ZvmFvF+cUJkGYF1L1BfU8C6Zp9T7f5vPAwyLkUExpvK+ANVZmGU49qi4Q==} engines: {node: '>=12'} @@ -5727,6 +5991,10 @@ packages: engines: {node: '>=8'} dev: true + /resolve-pkg-maps@1.0.0: + resolution: {integrity: sha512-seS2Tj26TBVOC2NIc2rOe2y2ZO7efxITtLZcGSOnHHNOQ7CkiUBfw0Iw2ck6xkIhPwLhKNLS8BO+hEpngQlqzw==} + dev: true + /resolve@1.22.2: resolution: {integrity: sha512-Sb+mjNHOULsBv818T40qSPeRiuWLyaGMa5ewydRLFimneixmVy2zdivRl+AF6jaYPC8ERxGDmFSiqui6SfPd+g==} hasBin: true @@ -5736,10 +6004,13 @@ packages: supports-preserve-symlinks-flag: 1.0.0 dev: true - /responselike@1.0.2: - resolution: {integrity: sha512-/Fpe5guzJk1gPqdJLJR5u7eG/gNY4nImjbRDaVWVMRhne55TCmj2i9Q+54PBRfatRC8v/rIiv9BN0pMd9OV5EQ==} + /resolve@1.22.3: + resolution: {integrity: sha512-P8ur/gp/AmbEzjr729bZnLjXK5Z+4P0zhIJgBgzqRih7hL7BOukHGtSTA3ACMY467GRFz3duQsi0bDZdR7DKdw==} + hasBin: true dependencies: - lowercase-keys: 1.0.1 + is-core-module: 2.12.1 + path-parse: 1.0.7 + supports-preserve-symlinks-flag: 1.0.0 dev: true /responselike@2.0.1: @@ -5796,9 +6067,9 @@ packages: glob: 10.3.3 dev: true - /rollup-plugin-ts@3.1.1(rollup@3.26.3)(typescript@5.1.6): - resolution: {integrity: sha512-Zm+cq11QVV6thgGdvrhz1tUQGN7pzK/jt2+6ttqfUaX1bk6QB4rFIHm/bW5O057eAXd1H8gBi47QFE0+tqMopw==} - engines: {node: '>=14.9.0', npm: '>=7.0.0', pnpm: '>=3.2.0', yarn: '>=1.13'} + /rollup-plugin-ts@3.4.2(rollup@3.27.2)(typescript@5.1.6): + resolution: {integrity: sha512-TEy1R1rPFhMz1ctdUeYWYkpEW7xEnbQxxmy0+niJIiwEa+B85qohUuVdH2ay4owirmQmGTDvr2AHM6jn0Sg72Q==} + engines: {node: '>=16.15.1', npm: '>=7.0.0', pnpm: '>=3.2.0', yarn: '>=1.13'} peerDependencies: '@babel/core': '>=6.x || >=7.x' '@babel/plugin-transform-runtime': '>=6.x || >=7.x' @@ -5807,8 +6078,8 @@ packages: '@babel/runtime': '>=6.x || >=7.x' '@swc/core': '>=1.x' '@swc/helpers': '>=0.2' - rollup: '>=1.x || >=2.x' - typescript: '>=3.2.x || >= 4.x' + rollup: '>=1.x || >=2.x || >=3.x' + typescript: '>=3.2.x || >= 4.x || >= 5.x' peerDependenciesMeta: '@babel/core': optional: true @@ -5825,33 +6096,49 @@ packages: '@swc/helpers': optional: true dependencies: - '@rollup/pluginutils': 5.0.2(rollup@3.26.3) + '@rollup/pluginutils': 5.0.2(rollup@3.27.2) '@wessberg/stringutil': 1.0.19 ansi-colors: 4.1.3 - browserslist: 4.21.9 - browserslist-generator: 1.0.66 - compatfactory: 2.0.9(typescript@5.1.6) + browserslist: 4.21.10 + browserslist-generator: 2.1.0 + compatfactory: 3.0.0(typescript@5.1.6) crosspath: 2.0.0 - magic-string: 0.27.0 - rollup: 3.26.3 - ts-clone-node: 2.0.4(typescript@5.1.6) - tslib: 2.6.0 + magic-string: 0.30.2 + rollup: 3.27.2 + ts-clone-node: 3.0.0(typescript@5.1.6) + tslib: 2.6.1 typescript: 5.1.6 dev: true - /rollup@3.26.3: - resolution: {integrity: sha512-7Tin0C8l86TkpcMtXvQu6saWH93nhG3dGQ1/+l5V2TDMceTxO7kDiK6GzbfLWNNxqJXm591PcEZUozZm51ogwQ==} + /rollup@3.27.2: + resolution: {integrity: sha512-YGwmHf7h2oUHkVBT248x0yt6vZkYQ3/rvE5iQuVBh3WO8GcJ6BNeOkpoX1yMHIiBm18EMLjBPIoUDkhgnyxGOQ==} engines: {node: '>=14.18.0', npm: '>=8.0.0'} hasBin: true optionalDependencies: fsevents: 2.3.2 dev: true + /rrweb-cssom@0.6.0: + resolution: {integrity: sha512-APM0Gt1KoXBz0iIkkdB/kfvGOwC4UuJFeG/c+yV7wSc7q96cG/kJ0HiYCnzivD9SB53cLV1MlHFNfOuPaadYSw==} + dev: true + + /run-applescript@5.0.0: + resolution: {integrity: sha512-XcT5rBksx1QdIhlFOCtgZkB99ZEouFZ1E2Kc2LHqNW13U3/74YGdkQRmThTwxy4QIyookibDKYZOPqX//6BlAg==} + engines: {node: '>=12'} + dependencies: + execa: 5.1.1 + dev: true + /run-async@2.4.1: resolution: {integrity: sha512-tvVnVv01b8c1RrA6Ep7JkStj85Guv/YrMcwqYQnwjsAS2cTmmPGBBjAjpCW7RrSodNSoE2/qg9O4bceNvUuDgQ==} engines: {node: '>=0.12.0'} dev: true + /run-async@3.0.0: + resolution: {integrity: sha512-540WwVDOMxA6dN6We19EcT9sc3hkXPw5mzRNGM3FkdN/vtE9NFvj5lFAPNwUDmJjXidm3v7TC1cTE7t17Ulm1Q==} + engines: {node: '>=0.12.0'} + dev: true + /run-parallel@1.2.0: resolution: {integrity: sha512-5l4VyZR86LZ/lDxZTR6jqL8AFE2S0IFLMP26AbjsLVADxHdhB/c0GUsH+y39UfCi3dzz8OlQuPmnaJOMoDHQBA==} dependencies: @@ -5868,7 +6155,7 @@ packages: /rxjs@7.8.1: resolution: {integrity: sha512-AA3TVj+0A2iuIoQkWEK/tqFjBq2j+6PO6Y0zJcvzLAFhEFIO3HL0vls9hWLncZbAAbK0mar7oZ4V079I/qPMxg==} dependencies: - tslib: 2.6.0 + tslib: 2.6.1 dev: true /safe-array-concat@1.0.0: @@ -5910,9 +6197,9 @@ packages: ansi-colors: 4.1.3 commander: 9.5.0 crosspath: 2.0.0 - eslint: 8.45.0 + eslint: 8.46.0 helpertypes: 0.0.18 - inquirer: 8.2.5 + inquirer: 8.2.6 json5: 2.2.3 markdown-toc: 1.2.0 prettier: 2.8.8 @@ -5928,23 +6215,16 @@ packages: xmlchars: 2.2.0 dev: true - /scoped-regex@2.1.0: - resolution: {integrity: sha512-g3WxHrqSWCZHGHlSrF51VXFdjImhwvH8ZO/pryFH56Qi0cDsZfylQa/t0jCzVQFNbNvM00HfHjkDPEuarKDSWQ==} - engines: {node: '>=8'} - dev: true - - /semver-diff@3.1.1: - resolution: {integrity: sha512-GX0Ix/CJcHyB8c4ykpHGIAvLyOwOobtM/8d+TQkAd81/bEjgPHrfba41Vpesr7jX/t8Uh+R3EX9eAS5be+jQYg==} - engines: {node: '>=8'} - dependencies: - semver: 6.3.1 + /scoped-regex@3.0.0: + resolution: {integrity: sha512-yEsN6TuxZhZ1Tl9iB81frTNS292m0I/IG7+w8lTvfcJQP2x3vnpOoevjBoE3Np5A6KnZM2+RtVenihj9t6NiYg==} + engines: {node: '>=12'} dev: true /semver-diff@4.0.0: resolution: {integrity: sha512-0Ju4+6A8iOnpL/Thra7dZsSlOHYAHIeMxfhWQRI1/VLcT3WDBZKKtQt/QkBOsiIN9ZpuvHE6cGZ0x4glCMmfiA==} engines: {node: '>=12'} dependencies: - semver: 7.3.8 + semver: 7.5.4 dev: true /semver-utils@1.1.4: @@ -5961,14 +6241,6 @@ packages: hasBin: true dev: true - /semver@7.3.8: - resolution: {integrity: sha512-NB1ctGL5rlHrPJtFDVIVzTyQylMLu9N9VICA6HSFJo8MCGVTMW6gfpicwKmmK/dAjTOrqu5l63JJOpDSrAis3A==} - engines: {node: '>=10'} - hasBin: true - dependencies: - lru-cache: 6.0.0 - dev: true - /semver@7.5.4: resolution: {integrity: sha512-1bCSESV6Pv+i21Hvpxp3Dx+pSD8lIPt8uVjRrxAUt/nbswYc+tK6Y2btiULjd4+fnq15PX+nqQDC7Oft7WkwcA==} engines: {node: '>=10'} @@ -6019,8 +6291,8 @@ packages: resolution: {integrity: sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ==} dev: true - /signal-exit@4.0.2: - resolution: {integrity: sha512-MY2/qGx4enyjprQnFaZsHib3Yadh3IXyV2C321GY0pjGfVBu4un0uDJkwgdxqO+Rdx8JMT8IfJIRwbYVz3Ob3Q==} + /signal-exit@4.1.0: + resolution: {integrity: sha512-bzyZ1e88w9O1iNJbKnOlvYTrWPDl46O1bG0D3XInv+9tkPrxrN8jUUTiFlDkkmKWgn1M6CfIA13SuGqOa9Korw==} engines: {node: '>=14'} dev: true @@ -6046,18 +6318,22 @@ packages: engines: {node: '>=8'} dev: true + /slash@4.0.0: + resolution: {integrity: sha512-3dOsAHXXUkQTpOYcoAxLIorMTp4gIQr5IW3iVb7A7lFIp0VHhnynm9izx6TssdrIcVIESAlVjtnO2K8bg+Coew==} + engines: {node: '>=12'} + dev: true + /slice-ansi@0.0.4: resolution: {integrity: sha512-up04hB2hR92PgjpyU3y/eg91yIBILyjVY26NvvciY3EVVPjybkMszMpXQ9QAkcS3I5rtJBDLoTxxg+qvW8c7rw==} engines: {node: '>=0.10.0'} dev: true - /slice-ansi@3.0.0: - resolution: {integrity: sha512-pSyv7bSTC7ig9Dcgbw9AuRNUb5k5V6oDudjZoMBSr13qpLBG7tB+zgCkARjq7xIUgdz5P1Qe8u+rSGdouOOIyQ==} - engines: {node: '>=8'} + /slice-ansi@5.0.0: + resolution: {integrity: sha512-FC+lgizVPfie0kkhqUScwRu1O/lF6NOgJmlCgK+/LYxDCTk8sGelYaHDhFcDN+Sn3Cv+3VSa4Byeo+IMCzpMgQ==} + engines: {node: '>=12'} dependencies: - ansi-styles: 4.3.0 - astral-regex: 2.0.0 - is-fullwidth-code-point: 3.0.0 + ansi-styles: 6.2.1 + is-fullwidth-code-point: 4.0.0 dev: true /smart-buffer@4.2.0: @@ -6159,18 +6435,17 @@ packages: escape-string-regexp: 2.0.0 dev: true - /standard-changelog@2.0.27: - resolution: {integrity: sha512-ltjqZfimLVBmAHSJ+U/zBVoVYisz6ankaRgq2UJIJk1tH4wLkYCXw8R02I27q3/UsvGVJu3m66W7raq5sQh1zQ==} - engines: {node: '>=10'} + /standard-changelog@3.0.0: + resolution: {integrity: sha512-9IdjtyZ1q3J2ewaNI+Uxs0SMUVGvUrIqlDnvyXtoHQR8FGKYjCmc1qx7/AcSQEyPnnF41uY+b7EpThZ7z5CaFw==} + engines: {node: '>=14'} hasBin: true dependencies: add-stream: 1.0.0 chalk: 4.1.2 - conventional-changelog-angular: 5.0.13 - conventional-changelog-core: 4.2.4 + conventional-changelog-angular: 6.0.0 + conventional-changelog-core: 5.0.2 figures: 3.2.0 fs-access: 1.0.1 - lodash: 4.17.21 meow: 8.1.2 rimraf: 3.0.2 sprintf-js: 1.1.2 @@ -6299,6 +6574,11 @@ packages: engines: {node: '>=6'} dev: true + /strip-final-newline@3.0.0: + resolution: {integrity: sha512-dOESqjYr96iWYylGObzd39EuNTa5VJxyvVAEm5Jnh7KGo75V43Hk1odPQkNDyXNmUR6k+gEiDVXnjB8HJ3crXw==} + engines: {node: '>=12'} + dev: true + /strip-indent@3.0.0: resolution: {integrity: sha512-laJTa3Jb+VQpaC6DseHhF7dXVqHTfJPCRDaEbid/drOhgitgYku/letMUqOXFoWV0zIIUbjpdH2t+tYj4bQMRQ==} engines: {node: '>=8'} @@ -6306,6 +6586,13 @@ packages: min-indent: 1.0.1 dev: true + /strip-indent@4.0.0: + resolution: {integrity: sha512-mnVSV2l+Zv6BLpSD/8V87CW/y9EmmbYzGCIavsnsI6/nwn26DwffM/yztm30Z/I2DY9wdS3vXVCMnHDgZaVNoA==} + engines: {node: '>=12'} + dependencies: + min-indent: 1.0.1 + dev: true + /strip-json-comments@2.0.1: resolution: {integrity: sha512-4gB8na07fecVVkOI6Rs4e7T6NOTki5EmL7TUduTs6bu3EdnSycntVJ4re8kgZA+wx9IueI2Y11bfbgwtzuE0KQ==} engines: {node: '>=0.10.0'} @@ -6321,15 +6608,14 @@ packages: engines: {node: '>=14.16'} dev: true - /supertap@2.0.0: - resolution: {integrity: sha512-jRzcXlCeDYvKoZGA5oRhYyR3jUIYu0enkSxtmAgHRlD7HwrovTpH4bDSi0py9FtuA8si9cW/fKommJHuaoDHJA==} - engines: {node: '>=10'} + /supertap@3.0.1: + resolution: {integrity: sha512-u1ZpIBCawJnO+0QePsEiOknOfCRq0yERxiAchT0i4li0WHNUJbf0evXXSXOcCAR4M8iMDoajXYmstm/qO81Isw==} + engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} dependencies: - arrify: 2.0.1 - indent-string: 4.0.0 + indent-string: 5.0.0 js-yaml: 3.14.1 serialize-error: 7.0.1 - strip-ansi: 6.0.1 + strip-ansi: 7.1.0 dev: true /supports-color@2.0.0: @@ -6369,8 +6655,8 @@ packages: engines: {node: '>=0.10.0'} dev: true - /symbol-observable@3.0.0: - resolution: {integrity: sha512-6tDOXSHiVjuCaasQSWTmHUWn4PuG7qa3+1WT031yTc/swT7+rLiw3GOrFxaH1E3lLP09dH3bVuVDf2gK5rxG3Q==} + /symbol-observable@4.0.0: + resolution: {integrity: sha512-b19dMThMV4HVFynSAM1++gBHAbk2Tc/osgLIBZMKsyqh34jb2e8Os7T6ZW/Bt3pJFdBTd2JwAnAAEQV7rSNvcQ==} engines: {node: '>=0.10'} dev: true @@ -6395,6 +6681,11 @@ packages: engines: {node: '>=8'} dev: true + /temp-dir@3.0.0: + resolution: {integrity: sha512-nHc6S/bwIilKHNRgK/3jlhDoIHcp45YgyiwcAk46Tr0LfEqGBVpmiAyuiuxeVE44m3mXnEeVhaipLOEWmH+Njw==} + engines: {node: '>=14.16'} + dev: true + /tempfile@3.0.0: resolution: {integrity: sha512-uNFCg478XovRi85iD42egu+eSFUmmka750Jy7L5tfHI5hQKKtbPnxaSaXAbBqCDYrw3wx4tXjKwci4/QmsZJxw==} engines: {node: '>=8'} @@ -6403,11 +6694,11 @@ packages: uuid: 3.4.0 dev: true - /terminal-link@2.1.1: - resolution: {integrity: sha512-un0FmiRUQNr5PJqy9kP7c40F5BOfpGlYTrxonDChEZB7pzZxRNp/bt+ymiy9/npwXya9KH99nJ/GXFIiUkYGFQ==} - engines: {node: '>=8'} + /terminal-link@3.0.0: + resolution: {integrity: sha512-flFL3m4wuixmf6IfhFJd1YPiLiMuxEc8uHRM1buzIeZPm22Au2pDqBJQgdo7n1WfPU1ONFGv7YDwpFBmHGF6lg==} + engines: {node: '>=12'} dependencies: - ansi-escapes: 4.3.2 + ansi-escapes: 5.0.0 supports-hyperlinks: 2.3.0 dev: true @@ -6420,6 +6711,15 @@ packages: resolution: {integrity: sha512-N+8UisAXDGk8PFXP4HAzVR9nbfmVJ3zYLAWiTIoqC5v5isinhr+r5uaO8+7r3BMfuNIufIsA7RdpVgacC2cSpw==} dev: true + /thingies@1.12.0(tslib@2.6.1): + resolution: {integrity: sha512-AiGqfYC1jLmJagbzQGuoZRM48JPsr9yB734a7K6wzr34NMhjUPrWSQrkF7ZBybf3yCerCL2Gcr02kMv4NmaZfA==} + engines: {node: '>=10.18'} + peerDependencies: + tslib: ^2 + dependencies: + tslib: 2.6.1 + dev: true + /through2@2.0.5: resolution: {integrity: sha512-/mrRod8xqpA+IHSLyGCQ2s8SPHiCDEeQJSep1jqLYeEUClOFG2Qsh+4FU6G9VeqpZnGW/Su8LQGc4YKni5rYSQ==} dependencies: @@ -6427,12 +6727,6 @@ packages: xtend: 4.0.2 dev: true - /through2@4.0.2: - resolution: {integrity: sha512-iOqSav00cVxEEICeD7TjLB1sueEL+81Wpzp2bY17uZjZN0pWZPuo4suZ/61VujxmqSGFfgOcNuTZ85QJwNZQpw==} - dependencies: - readable-stream: 3.6.2 - dev: true - /through@2.3.8: resolution: {integrity: sha512-w89qg7PI8wAdvX60bMDP+bFoD5Dvhm9oLheFp5O4a2QF0cSBGsBX4qZmadPMvVqlLJBBci+WqGGOAPvcDeNSVg==} dev: true @@ -6442,6 +6736,11 @@ packages: engines: {node: '>=4'} dev: true + /titleize@3.0.0: + resolution: {integrity: sha512-KxVu8EYHDPBdUYdKZdKtU2aj2XfEx9AfjXxE/Aj0vT06w2icA09Vus1rh6eSu1y01akYg6BjIK/hxyLJINoMLQ==} + engines: {node: '>=12'} + dev: true + /tmp@0.0.33: resolution: {integrity: sha512-jRCJlojKnZ3addtTOjdIqoRuPEKBvNXcGYqzO6zWZX8KfKEpnGY5jfggJQ3EjKuu8D4bJRr0y+cYJFmYbImXGw==} engines: {node: '>=0.6.0'} @@ -6456,16 +6755,6 @@ packages: kind-of: 3.2.2 dev: true - /to-readable-stream@1.0.0: - resolution: {integrity: sha512-Iq25XBt6zD5npPhlLVXGFN3/gyR2/qODcKNNyTMd4vbm39HUaOiAM4PMq0eMVC/Tkxz+Zjdsc55g9yyz+Yq00Q==} - engines: {node: '>=6'} - dev: true - - /to-readable-stream@2.1.0: - resolution: {integrity: sha512-o3Qa6DGg1CEXshSdvWNX2sN4QHqg03SPq7U6jPXRahlQdl5dK8oXjkU/2/sGrnOZKeGV1zLSO8qPwyKklPPE7w==} - engines: {node: '>=8'} - dev: true - /to-regex-range@5.0.1: resolution: {integrity: sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==} engines: {node: '>=8.0'} @@ -6487,9 +6776,9 @@ packages: url-parse: 1.5.10 dev: true - /tr46@3.0.0: - resolution: {integrity: sha512-l7FvfAHlcmulp8kr+flpQZmVwtu7nfRV7NZujtN0OqES8EL4O4e0qqzL0DC5gAvx/ZC/9lk6rhcUwYvkBnBnYA==} - engines: {node: '>=12'} + /tr46@4.1.1: + resolution: {integrity: sha512-2lv/66T7e5yNyhAAC4NaKe5nVavzuGJQVVtRYLyQ2OI8tsJ61PMLlelehb0wi2Hx6+hT/OJUWZcw8MjlSRnxvw==} + engines: {node: '>=14'} dependencies: punycode: 2.3.0 dev: true @@ -6499,50 +6788,28 @@ packages: engines: {node: '>=8'} dev: true - /trim-off-newlines@1.0.3: - resolution: {integrity: sha512-kh6Tu6GbeSNMGfrrZh6Bb/4ZEHV1QlB4xNDBeog8Y9/QwFlKTRyWvY3Fs9tRDAMZliVUwieMgEdIeL/FtqjkJg==} - engines: {node: '>=0.10.0'} + /trim-newlines@5.0.0: + resolution: {integrity: sha512-kstfs+hgwmdsOadN3KgA+C68wPJwnZq4DN6WMDCvZapDWEF34W2TyPKN2v2+BJnZgIz5QOfxFeldLyYvdgRAwg==} + engines: {node: '>=14.16'} dev: true - /ts-clone-node@2.0.4(typescript@5.1.6): - resolution: {integrity: sha512-eG6FAgmQsenhIJOIFhUcO6yyYejBKZIKcI3y21jiQmIOrth5pD6GElyPAyeihbPSyBs3u/9PVNXy+5I7jGy8jA==} - engines: {node: '>=14.9.0'} + /ts-api-utils@1.0.1(typescript@5.1.6): + resolution: {integrity: sha512-lC/RGlPmwdrIBFTX59wwNzqh7aR2otPNPR/5brHZm/XKFYKsfqxihXUe9pU3JI+3vGkl+vyCoNNnPhJn3aLK1A==} + engines: {node: '>=16.13.0'} peerDependencies: - typescript: ^3.x || ^4.x + typescript: '>=4.2.0' dependencies: - compatfactory: 2.0.9(typescript@5.1.6) typescript: 5.1.6 dev: true - /ts-node@10.9.1(@types/node@18.11.18)(typescript@5.1.6): - resolution: {integrity: sha512-NtVysVPkxxrwFGUUxGYhfux8k78pQB3JqYBXlLRZgdGUqTO5wU/UyHop5p70iEbGhB7q5KmiZiU0Y3KlJrScEw==} - hasBin: true + /ts-clone-node@3.0.0(typescript@5.1.6): + resolution: {integrity: sha512-egavvyHbIoelkgh1IC2agNB1uMNjB8VJgh0g/cn0bg2XXTcrtjrGMzEk4OD3Fi2hocICjP3vMa56nkzIzq0FRg==} + engines: {node: '>=14.9.0'} peerDependencies: - '@swc/core': '>=1.2.50' - '@swc/wasm': '>=1.2.50' - '@types/node': '*' - typescript: '>=2.7' - peerDependenciesMeta: - '@swc/core': - optional: true - '@swc/wasm': - optional: true + typescript: ^3.x || ^4.x || ^5.x dependencies: - '@cspotcode/source-map-support': 0.8.1 - '@tsconfig/node10': 1.0.9 - '@tsconfig/node12': 1.0.11 - '@tsconfig/node14': 1.0.3 - '@tsconfig/node16': 1.0.4 - '@types/node': 18.11.18 - acorn: 8.10.0 - acorn-walk: 8.2.0 - arg: 4.1.3 - create-require: 1.1.1 - diff: 4.0.2 - make-error: 1.3.6 + compatfactory: 3.0.0(typescript@5.1.6) typescript: 5.1.6 - v8-compile-cache-lib: 3.0.1 - yn: 3.1.1 dev: true /tsconfig-paths@3.14.2: @@ -6558,18 +6825,19 @@ packages: resolution: {integrity: sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==} dev: true - /tslib@2.6.0: - resolution: {integrity: sha512-7At1WUettjcSRHXCyYtTselblcHl9PJFFVKiCAy/bY97+BPZXSQ2wbq0P9s8tK2G7dFQfNnlJnPAiArVBVBsfA==} + /tslib@2.6.1: + resolution: {integrity: sha512-t0hLfiEKfMUoqhG+U1oid7Pva4bbDPHYfJNiB7BiIjRkj1pyC++4N3huJfqY6aRH6VTB0rvtzQwjM4K6qpfOig==} dev: true - /tsutils@3.21.0(typescript@5.1.6): - resolution: {integrity: sha512-mHKK3iUXL+3UF6xL5k0PEhKRUBKPBCv/+RkEOpjRWxxx27KKRBmmA60A9pgOUvMi8GKhRMPEmjBRPzs2W7O1OA==} - engines: {node: '>= 6'} - peerDependencies: - typescript: '>=2.8.0 || >= 3.2.0-dev || >= 3.3.0-dev || >= 3.4.0-dev || >= 3.5.0-dev || >= 3.6.0-dev || >= 3.6.0-beta || >= 3.7.0-dev || >= 3.7.0-beta' + /tsx@3.12.7: + resolution: {integrity: sha512-C2Ip+jPmqKd1GWVQDvz/Eyc6QJbGfE7NrR3fx5BpEHMZsEHoIxHL1j+lKdGobr8ovEyqeNkPLSKp6SCSOt7gmw==} + hasBin: true dependencies: - tslib: 1.14.1 - typescript: 5.1.6 + '@esbuild-kit/cjs-loader': 2.4.2 + '@esbuild-kit/core-utils': 3.1.0 + '@esbuild-kit/esm-loader': 2.5.5 + optionalDependencies: + fsevents: 2.3.2 dev: true /tuf-js@1.1.7: @@ -6590,11 +6858,6 @@ packages: prelude-ls: 1.2.1 dev: true - /type-fest@0.10.0: - resolution: {integrity: sha512-EUV9jo4sffrwlg8s0zDhP0T2WD3pru5Xi0+HTE3zTUmBaZNhfkite9PdSJwdXLwPVW0jnAHT56pZHIOYckPEiw==} - engines: {node: '>=8'} - dev: true - /type-fest@0.13.1: resolution: {integrity: sha512-34R7HTnG0XIJcBSn5XhDd7nNFPRcXYRZrBB2O2jdKqYODldSzBAqzsWoZYYvduky73toYS/ESqxPvkDf/F0XMg==} engines: {node: '>=10'} @@ -6615,16 +6878,6 @@ packages: engines: {node: '>=10'} dev: true - /type-fest@0.3.1: - resolution: {integrity: sha512-cUGJnCdr4STbePCgqNFbpVNCepa+kAVohJs1sLhxzdH+gnEoOd8VhbYa7pD3zZYGiURWM2xzEII3fQcRizDkYQ==} - engines: {node: '>=6'} - dev: true - - /type-fest@0.4.1: - resolution: {integrity: sha512-IwzA/LSfD2vC1/YDYMv/zHP4rDF1usCwllsDpbolT3D4fUepIO7f9K70jjmUewU/LmGUKJcwcVtDCpnKk4BPMw==} - engines: {node: '>=6'} - dev: true - /type-fest@0.6.0: resolution: {integrity: sha512-q+MB8nYR1KDLrgr4G5yemftpMC7/QLqVndBmEEdqzmNj5dcFOO4Oo8qlwZE3ULT3+Zim1F8Kq4cBnikNhlCMlg==} engines: {node: '>=8'} @@ -6645,6 +6898,11 @@ packages: engines: {node: '>=12.20'} dev: true + /type-fest@3.13.1: + resolution: {integrity: sha512-tLq3bSNx+xSpwvAJnzrK0Ep5CLNWjvFTOp71URMaAEWBfRb9nnJiBoUe0tF8bI4ZFO3omgBR6NvnbzVUT3Ly4g==} + engines: {node: '>=14.16'} + dev: true + /typed-array-buffer@1.0.0: resolution: {integrity: sha512-Y8KTSIglk9OZEr8zywiIHG/kmQ7KWyjseXs1CbSo8vC42w7hg2HgYTxSWwP0+is7bWDc1H+Fo026CpHFwm8tkw==} engines: {node: '>= 0.4'} @@ -6693,6 +6951,23 @@ packages: resolution: {integrity: sha512-/aCDEGatGvZ2BIk+HmLf4ifCJFwvKFNb9/JeZPMulfgFracn9QFcAf5GO8B/mweUjSoblS5In0cWhqpfs/5PQA==} dev: true + /types-eslintrc@1.0.3: + resolution: {integrity: sha512-zKTR6aKHEudQpl+JoZjS3qh0B5IzSpQK/BCpYBECujcnKtqL87DJJ1sJKe5B8k/y8/UJ5sukq42QDvlaJyCO2w==} + dependencies: + types-json: 1.2.2 + dev: true + + /types-json@1.2.2: + resolution: {integrity: sha512-VfVLISHypS7ayIHvhacOESOTib4Sm4mAhnsgR8fzQdGp89YoBwMqvGmqENjtYehUQzgclT+7NafpEXkK/MHKwA==} + dev: true + + /types-pkg-json@1.2.1: + resolution: {integrity: sha512-Wj75lCkPwfj1BhmaJxMPpTQj9YGpihjs3WICigt1IjTAswr7zPXP0iJYPZjU0Rw/IriODhMJjAImkCIxt9KeuQ==} + dependencies: + types-eslintrc: 1.0.3 + types-json: 1.2.2 + dev: true + /typescript@3.4.1: resolution: {integrity: sha512-3NSMb2VzDQm8oBTLH6Nj55VVtUEpe/rgkIzMir0qVoLyjDZlnMBva0U6vDiV3IH+sl/Yu6oP5QwsAQtHPmDd2Q==} engines: {node: '>=4.2.0'} @@ -6836,13 +7111,6 @@ packages: imurmurhash: 0.1.4 dev: true - /unique-string@2.0.0: - resolution: {integrity: sha512-uNaeirEPvpZWSgzwsPGtU2zVSTrn/8L5q/IexZmH0eH6SA73CmAA5U4GwORTxQAZs95TAXLNqeLoPPNO5gZfWg==} - engines: {node: '>=8'} - dependencies: - crypto-random-string: 2.0.0 - dev: true - /unique-string@3.0.0: resolution: {integrity: sha512-VGXBUVwxKMBUznyffQweQABPRRW1vHZAbadFZud4pLFAqRGvv/96vafgjWFqzourzr8YonlQiPgH0YCJfawoGQ==} engines: {node: '>=12'} @@ -6860,37 +7128,17 @@ packages: engines: {node: '>=8'} dev: true - /update-browserslist-db@1.0.11(browserslist@4.21.9): + /update-browserslist-db@1.0.11(browserslist@4.21.10): resolution: {integrity: sha512-dCwEFf0/oT85M1fHBg4F0jtLwJrutGoHSQXCh7u4o2t1drG+c0a9Flnqww6XUKSfQMPpJBRjU8d4RXB09qtvaA==} hasBin: true peerDependencies: browserslist: '>= 4.21.0' dependencies: - browserslist: 4.21.9 + browserslist: 4.21.10 escalade: 3.1.1 picocolors: 1.0.0 dev: true - /update-notifier@5.1.0: - resolution: {integrity: sha512-ItnICHbeMh9GqUy31hFPrD1kcuZ3rpxDZbf4KUDavXwS0bW5m7SLbDQpGX3UYr072cbrF5hFUs3r5tUsPwjfHw==} - engines: {node: '>=10'} - dependencies: - boxen: 5.1.2 - chalk: 4.1.2 - configstore: 5.0.1 - has-yarn: 2.1.0 - import-lazy: 2.1.0 - is-ci: 2.0.0 - is-installed-globally: 0.4.0 - is-npm: 5.0.0 - is-yarn-global: 0.3.0 - latest-version: 5.1.0 - pupa: 2.1.1 - semver: 7.3.8 - semver-diff: 3.1.1 - xdg-basedir: 4.0.0 - dev: true - /update-notifier@6.0.2: resolution: {integrity: sha512-EDxhTEVPZZRLWYcJ4ZXjGFN0oP7qYvbXWzEgRm/Yql4dHX5wDbvh89YHP6PK1lzZJYrMtXUuZZz8XGK+U6U1og==} engines: {node: '>=14.16'} @@ -6906,7 +7154,7 @@ packages: is-yarn-global: 0.4.1 latest-version: 7.0.0 pupa: 3.1.0 - semver: 7.3.8 + semver: 7.5.4 semver-diff: 4.0.0 xdg-basedir: 5.1.0 dev: true @@ -6917,13 +7165,6 @@ packages: punycode: 2.3.0 dev: true - /url-parse-lax@3.0.0: - resolution: {integrity: sha512-NjFKA0DidqPa5ciFcSrXnAltTtzz84ogy+NebPvfEgAck0+TNg4UJ4IN+fB7zRZfbgUf0syOo9MDxFkDSMuFaQ==} - engines: {node: '>=4'} - dependencies: - prepend-http: 2.0.0 - dev: true - /url-parse@1.5.10: resolution: {integrity: sha512-WypcfiRhfeUP9vvF0j6rw0J3hrWrw6iZv3+22h6iRMJ/8z1Tj6XfLP4DsUix5MhMPnXpiHDoKyoZ/bdCkwBCiQ==} dependencies: @@ -6941,10 +7182,6 @@ packages: hasBin: true dev: true - /v8-compile-cache-lib@3.0.1: - resolution: {integrity: sha512-wa7YjyUGfNZngI/vtK0UHAN+lgDCxBPCylVXGp0zu59Fz5aiGtNXaq3DhIov063MorB+VfufLh3JlF2KdTK3xg==} - dev: true - /vali-date@1.0.0: resolution: {integrity: sha512-sgECfZthyaCKW10N0fm27cg8HYTFK5qMWgypqkXMQ4Wbl/zZKx7xZICgcoxIIE+WFAP/MBL2EFwC/YvLxw3Zeg==} engines: {node: '>=0.10.0'} @@ -6970,16 +7207,9 @@ packages: builtins: 5.0.1 dev: true - /w3c-hr-time@1.0.2: - resolution: {integrity: sha512-z8P5DvDNjKDoFIHK7q8r8lackT6l+jo/Ye3HOle7l9nICP9lf1Ci25fy9vHd0JOWewkIFzXIEig3TdKT7JQ5fQ==} - deprecated: Use your platform's native performance.now() and performance.timeOrigin. - dependencies: - browser-process-hrtime: 1.0.0 - dev: true - - /w3c-xmlserializer@3.0.0: - resolution: {integrity: sha512-3WFqGEgSXIyGhOmAFtlicJNMjEps8b1MG31NCA0/vOF9+nKMUW1ckhi9cnNHmf88Rzw5V+dwIwsm2C7X8k9aQg==} - engines: {node: '>=12'} + /w3c-xmlserializer@4.0.0: + resolution: {integrity: sha512-d+BFHzbiCx6zGfz0HyQ6Rg69w9k19nviJspaj4yNscGjrHu94sVP+aRm75yEbCh+r2/yR+7q6hux9LVtbuTGBw==} + engines: {node: '>=14'} dependencies: xml-name-validator: 4.0.0 dev: true @@ -7012,11 +7242,11 @@ packages: engines: {node: '>=12'} dev: true - /whatwg-url@11.0.0: - resolution: {integrity: sha512-RKT8HExMpoYx4igMiVMY83lN6UeITKJlBQ+vR/8ZJ8OCdSiN3RwCq+9gH0+Xzj0+5IrM6i4j/6LuvzbZIQgEcQ==} - engines: {node: '>=12'} + /whatwg-url@12.0.1: + resolution: {integrity: sha512-Ed/LrqB8EPlGxjS+TrsXcpUond1mhccS3pchLhzSgPCnTimUCKj3IZE75pAs5m6heB2U2TMerKFUXheyHY+VDQ==} + engines: {node: '>=14'} dependencies: - tr46: 3.0.0 + tr46: 4.1.1 webidl-conversions: 7.0.0 dev: true @@ -7063,13 +7293,6 @@ packages: string-width: 4.2.3 dev: true - /widest-line@3.1.0: - resolution: {integrity: sha512-NsmoXalsWVDMGupxZ5R08ka9flZjjiLvHVAWYOKtiKM8ujtZWr9cRffak+uSE48+Ob8ObalXpwyeUiyDD6QFgg==} - engines: {node: '>=8'} - dependencies: - string-width: 4.2.3 - dev: true - /widest-line@4.0.1: resolution: {integrity: sha512-o0cyEG0e8GPzT4iGHphIOh0cJOV8fivsXxddQasHPHfoZf1ZexrfeA21w2NaEN1RHE+fXlfISmOE8R9N3u3Qig==} engines: {node: '>=12'} @@ -7089,6 +7312,15 @@ packages: strip-ansi: 4.0.0 dev: true + /wrap-ansi@6.2.0: + resolution: {integrity: sha512-r6lPcBGxZXlIcymEu7InxDMhdW0KDxpLgoFLcguasxCaJ/SOIZwINatK9KY/tf+ZrlywOKU0UDj3ATXUBfxJXA==} + engines: {node: '>=8'} + dependencies: + ansi-styles: 4.3.0 + string-width: 4.2.3 + strip-ansi: 6.0.1 + dev: true + /wrap-ansi@7.0.0: resolution: {integrity: sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==} engines: {node: '>=10'} @@ -7120,6 +7352,14 @@ packages: typedarray-to-buffer: 3.1.5 dev: true + /write-file-atomic@5.0.1: + resolution: {integrity: sha512-+QU2zd6OTD8XWIJCbffaiQeH9U73qIqafo1x6V1snCWYGJf6cVE0cDR4D8xRzcEnfI21IFrUPzPGtcPf8AC+Rw==} + engines: {node: ^14.17.0 || ^16.13.0 || >=18.0.0} + dependencies: + imurmurhash: 0.1.4 + signal-exit: 4.1.0 + dev: true + /ws@8.13.0: resolution: {integrity: sha512-x9vcZYTrFPC7aSIbj7sRCYo7L/Xb8Iy+pW0ng0wt2vCJv7M9HOMy0UoN3rr+IFC7hb7vXoqS+P9ktyLLLhO+LA==} engines: {node: '>=10.0.0'} @@ -7133,11 +7373,6 @@ packages: optional: true dev: true - /xdg-basedir@4.0.0: - resolution: {integrity: sha512-PSNhEJDejZYV7h50BohL09Er9VaIefr2LMAf3OEmpCkjOi34eYyQYAXUTjEQtZJTKcF0E2UKTh+osDLsgNim9Q==} - engines: {node: '>=8'} - dev: true - /xdg-basedir@5.1.0: resolution: {integrity: sha512-GCPAHLvrIH13+c0SuacwvRYj2SxJXQ4kaVTT5xgL3kPrz56XxkF21IGhjSE1+W0aw7gpBWRGXLCPnPby6lSpmQ==} engines: {node: '>=12'} @@ -7166,11 +7401,6 @@ packages: resolution: {integrity: sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==} dev: true - /yaml@1.10.2: - resolution: {integrity: sha512-r3vXyErRCYJ7wg28yvBY5VSoAF8ZvlcW9/BwUzEtUsjvX/DKs24dIkuwjtuprwJJHsbyUbLApepYTR1BN4uHrg==} - engines: {node: '>= 6'} - dev: true - /yaml@2.3.1: resolution: {integrity: sha512-2eHWfjaoXgTBC2jNM1LRef62VQa0umtvRiDSk6HSzW7RvS5YtkabJrwYLLEKWBc8a5U2PTSCs+dJjUTJdlHsWQ==} engines: {node: '>= 14'} @@ -7181,6 +7411,11 @@ packages: engines: {node: '>=10'} dev: true + /yargs-parser@21.1.1: + resolution: {integrity: sha512-tVpsJW7DdjecAiFpbIB1e3qxIQsE6NoPc5/eTdrbbIC4h0LVsWhnoa3g+m2HclBIujHzsxZ4VJVA+GUuc2/LBw==} + engines: {node: '>=12'} + dev: true + /yargs@16.2.0: resolution: {integrity: sha512-D1mvvtDG0L5ft/jGWkLpG1+m0eQxOfaBvTNELraWj22wSVUMWxZUvYgJYcKh6jGGIkJFhH4IZPQhR4TKpc8mBw==} engines: {node: '>=10'} @@ -7194,12 +7429,25 @@ packages: yargs-parser: 20.2.9 dev: true - /yn@3.1.1: - resolution: {integrity: sha512-Ux4ygGWsu2c7isFWe8Yu1YluJmqVhxqK2cLXNQA5AcC3QfbGNpM7fu0Y8b/z16pXLnFxZYvWhd3fhBY9DLmC6Q==} - engines: {node: '>=6'} + /yargs@17.7.2: + resolution: {integrity: sha512-7dSzzRQ++CKnNI/krKnYRV7JKKPUXMEh61soaHKg9mrWEhzFWhFnxPxGl+69cD1Ou63C13NUPCnmIcrvqCuM6w==} + engines: {node: '>=12'} + 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.8 + yargs-parser: 21.1.1 dev: true /yocto-queue@0.1.0: resolution: {integrity: sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q==} engines: {node: '>=10'} dev: true + + /yocto-queue@1.0.0: + resolution: {integrity: sha512-9bnSc/HEW2uRy67wc+T8UwauLuPJVn28jb+GtJY16iiKWyvmYJRXVT4UamsAEGQfPohgr2q4Tq0sQbQlxTfi1g==} + engines: {node: '>=12.20'} + dev: true diff --git a/rollup.config.mjs b/rollup.config.mjs index ae81cd1..e9ac136 100644 --- a/rollup.config.mjs +++ b/rollup.config.mjs @@ -17,6 +17,7 @@ export default { { file: pkg.exports.require, format: "cjs", + dynamicImportInCjs: false, ...SHARED_OUTPUT_OPTIONS }, { diff --git a/src/index.ts b/src/index.ts index 62289e4..cd96770 100644 --- a/src/index.ts +++ b/src/index.ts @@ -1,13 +1,13 @@ export {evaluate} from "./interpreter/evaluate.js"; -export {EvaluateResult} from "./interpreter/evaluate-result.js"; -export {EvaluateOptions} from "./interpreter/evaluate-options.js"; +export type {EvaluateResult} from "./interpreter/evaluate-result.js"; +export type {EvaluateOptions} from "./interpreter/evaluate-options.js"; // Logging export * from "./interpreter/logger/log-level.js"; // Environment -export * from "./interpreter/environment/environment-preset-kind.js"; -export * from "./interpreter/environment/i-environment.js"; +export type * from "./interpreter/environment/environment-preset-kind.js"; +export type * from "./interpreter/environment/i-environment.js"; // Errors export * from "./interpreter/error/evaluation-error/evaluation-error.js"; @@ -17,7 +17,7 @@ export * from "./interpreter/error/not-callable-error/not-callable-error.js"; export * from "./interpreter/error/policy-error/policy-error.js"; export * from "./interpreter/error/undefined-identifier-error/undefined-identifier-error.js"; export * from "./interpreter/error/undefined-left-value-error/undefined-left-value-error.js"; -export * from "./interpreter/error/unexpected-syntax-error/unexpected-syntax-error"; +export * from "./interpreter/error/unexpected-syntax-error/unexpected-syntax-error.js"; export * from "./interpreter/error/unexpected-node-error/unexpected-node-error.js"; export * from "./interpreter/error/policy-error/io-error/io-error.js"; export * from "./interpreter/error/policy-error/max-ops-exceeded-error/max-ops-exceeded-error.js"; @@ -27,4 +27,4 @@ export * from "./interpreter/error/policy-error/non-deterministic-error/non-dete export * from "./interpreter/error/policy-error/process-error/process-error.js"; // Reporting -export {BindingReportCallback, IReportingOptions, ReportingOptions} from "./interpreter/reporting/i-reporting-options.js"; +export type {BindingReportCallback, IReportingOptions, ReportingOptions} from "./interpreter/reporting/i-reporting-options.js"; diff --git a/src/interpreter/environment/browser/browser-globals.ts b/src/interpreter/environment/browser/browser-globals.ts index e7c5087..0a49728 100644 --- a/src/interpreter/environment/browser/browser-globals.ts +++ b/src/interpreter/environment/browser/browser-globals.ts @@ -1,28 +1,25 @@ -import {mergeDescriptors} from "../../util/descriptor/merge-descriptors.js"; -import {ECMA_GLOBALS} from "../ecma/ecma-globals.js"; -import {subtract} from "../../util/object/subtract.js"; import {rafImplementation} from "./lib/raf.js"; import {loadJsdom} from "../../util/loader/optional-peer-dependency-loader.js"; +import {subtract} from "../../util/object/subtract.js"; +import {ECMA_GLOBALS} from "../ecma/ecma-globals.js"; export const BROWSER_GLOBALS = () => { const {JSDOM} = loadJsdom(true); const {window} = new JSDOM("", {url: "https://example.com"}); + const ecmaGlobals = ECMA_GLOBALS(); - const raf = rafImplementation(window as unknown as Window & typeof globalThis); - const merged = mergeDescriptors(subtract(window, ecmaGlobals as Partial), subtract(raf, window), ecmaGlobals); - Object.defineProperties(merged, { - window: { - get(): typeof merged { - return merged; - } - }, - globalThis: { - get(): typeof merged { - return merged; - } - } - }); + // Add requestAnimationFrame/cancelAnimationFrame if missing + if (window.requestAnimationFrame == null) { + const raf = rafImplementation(window as unknown as Window & typeof globalThis); + Object.defineProperties(window, Object.getOwnPropertyDescriptors(raf)); + } + + // Add all missing Ecma Globals to the JSDOM window + const missingEcmaGlobals = subtract(ecmaGlobals, window); + if (Object.keys(missingEcmaGlobals).length > 0) { + Object.defineProperties(window, Object.getOwnPropertyDescriptors(ecmaGlobals)); + } - return merged; + return window; }; diff --git a/src/interpreter/environment/create-sanitized-environment.ts b/src/interpreter/environment/create-sanitized-environment.ts index f751dab..84da3b9 100644 --- a/src/interpreter/environment/create-sanitized-environment.ts +++ b/src/interpreter/environment/create-sanitized-environment.ts @@ -1,9 +1,9 @@ -import {IndexLiteral} from "../literal/literal.js"; +import type {IndexLiteral} from "../literal/literal.js"; import {createPolicyProxy} from "../proxy/create-policy-proxy.js"; import {stringifyPolicyTrapKindOnPath} from "../policy/policy-trap-kind.js"; import {isNonDeterministic} from "../policy/nondeterministic/is-nondeterministic.js"; import {NonDeterministicError} from "../error/policy-error/non-deterministic-error/non-deterministic-error.js"; -import {PolicyProxyHookOptions} from "../proxy/policy-proxy-hook.js"; +import type {PolicyProxyHookOptions} from "../proxy/policy-proxy-hook.js"; import {isIoRead} from "../policy/io/is-io-read.js"; import {IoError} from "../error/policy-error/io-error/io-error.js"; import {isIoWrite} from "../policy/io/is-io-write.js"; @@ -12,7 +12,7 @@ import {NetworkError} from "../error/policy-error/network-error/network-error.js import {isProcessExitOperation} from "../policy/process/is-process-exit-operation.js"; import {ProcessError} from "../error/policy-error/process-error/process-error.js"; import {isProcessSpawnChildOperation} from "../policy/process/is-process-spawn-child-operation.js"; -import {ICreateSanitizedEnvironmentOptions} from "./i-create-sanitized-environment-options.js"; +import type {ICreateSanitizedEnvironmentOptions} from "./i-create-sanitized-environment-options.js"; import {isConsoleOperation} from "../policy/console/is-console-operation.js"; import { EvaluationErrorIntent } from "../error/evaluation-error/evaluation-error-intent.js"; diff --git a/src/interpreter/environment/ecma/ecma-globals.ts b/src/interpreter/environment/ecma/ecma-globals.ts index 13231cd..7d5734e 100644 --- a/src/interpreter/environment/ecma/ecma-globals.ts +++ b/src/interpreter/environment/ecma/ecma-globals.ts @@ -1,4 +1,4 @@ -import {IndexLiteral} from "../../literal/literal.js"; +import type {IndexLiteral} from "../../literal/literal.js"; export const ECMA_GLOBALS = () => { /* eslint-disable @typescript-eslint/naming-convention */ diff --git a/src/interpreter/environment/i-create-sanitized-environment-options.ts b/src/interpreter/environment/i-create-sanitized-environment-options.ts index 9349afa..397be06 100644 --- a/src/interpreter/environment/i-create-sanitized-environment-options.ts +++ b/src/interpreter/environment/i-create-sanitized-environment-options.ts @@ -1,5 +1,5 @@ -import {EvaluatePolicySanitized} from "../policy/evaluate-policy.js"; -import {IndexLiteral} from "../literal/literal.js"; +import type {EvaluatePolicySanitized} from "../policy/evaluate-policy.js"; +import type {IndexLiteral} from "../literal/literal.js"; export interface ICreateSanitizedEnvironmentOptions { policy: EvaluatePolicySanitized; diff --git a/src/interpreter/environment/i-environment.ts b/src/interpreter/environment/i-environment.ts index 8e5bdd5..79fb8c7 100644 --- a/src/interpreter/environment/i-environment.ts +++ b/src/interpreter/environment/i-environment.ts @@ -1,5 +1,5 @@ -import {EnvironmentPresetKind} from "./environment-preset-kind.js"; -import {LexicalEnvironment} from "../lexical-environment/lexical-environment.js"; +import type {EnvironmentPresetKind} from "./environment-preset-kind.js"; +import type {LexicalEnvironment} from "../lexical-environment/lexical-environment.js"; export interface IEnvironment { preset: EnvironmentPresetKind; diff --git a/src/interpreter/environment/node/node-built-ins-and-globals.ts b/src/interpreter/environment/node/node-built-ins-and-globals.ts index ea83392..df54081 100644 --- a/src/interpreter/environment/node/node-built-ins-and-globals.ts +++ b/src/interpreter/environment/node/node-built-ins-and-globals.ts @@ -1,3 +1,3 @@ -import {BuiltInModuleMap} from "../../policy/module/built-in-module-map.js"; +import type {BuiltInModuleMap} from "../../policy/module/built-in-module-map.js"; export type NodeBuiltInsAndGlobals = BuiltInModuleMap & typeof global; diff --git a/src/interpreter/error/async-iterator-not-supported-error/async-iterator-not-supported-error.ts b/src/interpreter/error/async-iterator-not-supported-error/async-iterator-not-supported-error.ts index 7d45118..50db648 100644 --- a/src/interpreter/error/async-iterator-not-supported-error/async-iterator-not-supported-error.ts +++ b/src/interpreter/error/async-iterator-not-supported-error/async-iterator-not-supported-error.ts @@ -1,6 +1,6 @@ -import {TS} from "../../../type/ts.js"; +import type {TS} from "../../../type/ts.js"; import {EvaluationError} from "../evaluation-error/evaluation-error.js"; -import {IAsyncIteratorNotSupportedErrorOptions} from "./i-async-iterator-not-supported-error-options.js"; +import type {IAsyncIteratorNotSupportedErrorOptions} from "./i-async-iterator-not-supported-error-options.js"; /** * An Error that can be thrown when an async iteration operation is attempted diff --git a/src/interpreter/error/async-iterator-not-supported-error/i-async-iterator-not-supported-error-options.ts b/src/interpreter/error/async-iterator-not-supported-error/i-async-iterator-not-supported-error-options.ts index 0cd4b10..1fb5a31 100644 --- a/src/interpreter/error/async-iterator-not-supported-error/i-async-iterator-not-supported-error-options.ts +++ b/src/interpreter/error/async-iterator-not-supported-error/i-async-iterator-not-supported-error-options.ts @@ -1,5 +1,5 @@ -import {IEvaluationErrorOptions} from "../evaluation-error/i-evaluation-error-options.js"; -import {TS} from "../../../type/ts.js"; +import type {IEvaluationErrorOptions} from "../evaluation-error/i-evaluation-error-options.js"; +import type {TS} from "../../../type/ts.js"; export interface IAsyncIteratorNotSupportedErrorOptions extends Omit { typescript: typeof TS; diff --git a/src/interpreter/error/evaluation-error/evaluation-error-intent.ts b/src/interpreter/error/evaluation-error/evaluation-error-intent.ts index e572f50..9402dc4 100644 --- a/src/interpreter/error/evaluation-error/evaluation-error-intent.ts +++ b/src/interpreter/error/evaluation-error/evaluation-error-intent.ts @@ -1,6 +1,6 @@ -import {TS} from "../../../type/ts.js"; -import {NextEvaluatorOptions} from "../../evaluator/evaluator-options.js"; -import {EvaluationError} from "./evaluation-error.js"; +import type {TS} from "../../../type/ts.js"; +import type {NextEvaluatorOptions} from "../../evaluator/evaluator-options.js"; +import type {EvaluationError} from "./evaluation-error.js"; type EvaluationErrorIntentCallback = (node: TS.Node, options: NextEvaluatorOptions) => T; diff --git a/src/interpreter/error/evaluation-error/evaluation-error.ts b/src/interpreter/error/evaluation-error/evaluation-error.ts index b709615..6a388e5 100644 --- a/src/interpreter/error/evaluation-error/evaluation-error.ts +++ b/src/interpreter/error/evaluation-error/evaluation-error.ts @@ -1,6 +1,6 @@ -import {IEvaluationErrorOptions} from "./i-evaluation-error-options.js"; -import {TS} from "../../../type/ts.js"; -import { LexicalEnvironment } from "../../lexical-environment/lexical-environment.js"; +import type {IEvaluationErrorOptions} from "./i-evaluation-error-options.js"; +import type {TS} from "../../../type/ts.js"; +import type { LexicalEnvironment } from "../../lexical-environment/lexical-environment.js"; export type ThrowError = (error: EvaluationError) => EvaluationError; diff --git a/src/interpreter/error/evaluation-error/i-evaluation-error-options.ts b/src/interpreter/error/evaluation-error/i-evaluation-error-options.ts index 9f43629..a90659b 100644 --- a/src/interpreter/error/evaluation-error/i-evaluation-error-options.ts +++ b/src/interpreter/error/evaluation-error/i-evaluation-error-options.ts @@ -1,5 +1,5 @@ -import {TS} from "../../../type/ts.js"; -import { LexicalEnvironment } from "../../lexical-environment/lexical-environment.js"; +import type {TS} from "../../../type/ts.js"; +import type { LexicalEnvironment } from "../../lexical-environment/lexical-environment.js"; export interface IEvaluationErrorOptions { node: TS.Node; diff --git a/src/interpreter/error/missing-catch-or-finally-after-try-error/i-missing-catch-or-finally-after-try-error-options.ts b/src/interpreter/error/missing-catch-or-finally-after-try-error/i-missing-catch-or-finally-after-try-error-options.ts index 357c20a..add0712 100644 --- a/src/interpreter/error/missing-catch-or-finally-after-try-error/i-missing-catch-or-finally-after-try-error-options.ts +++ b/src/interpreter/error/missing-catch-or-finally-after-try-error/i-missing-catch-or-finally-after-try-error-options.ts @@ -1,5 +1,5 @@ -import {IEvaluationErrorOptions} from "../evaluation-error/i-evaluation-error-options.js"; -import {TS} from "../../../type/ts.js"; +import type {IEvaluationErrorOptions} from "../evaluation-error/i-evaluation-error-options.js"; +import type {TS} from "../../../type/ts.js"; export interface IMissingCatchOrFinallyAfterTryErrorOptions extends IEvaluationErrorOptions { node: TS.TryStatement; diff --git a/src/interpreter/error/missing-catch-or-finally-after-try-error/missing-catch-or-finally-after-try-error.ts b/src/interpreter/error/missing-catch-or-finally-after-try-error/missing-catch-or-finally-after-try-error.ts index 477b59e..0b74599 100644 --- a/src/interpreter/error/missing-catch-or-finally-after-try-error/missing-catch-or-finally-after-try-error.ts +++ b/src/interpreter/error/missing-catch-or-finally-after-try-error/missing-catch-or-finally-after-try-error.ts @@ -1,6 +1,6 @@ import {EvaluationError} from "../evaluation-error/evaluation-error.js"; -import {IMissingCatchOrFinallyAfterTryErrorOptions} from "./i-missing-catch-or-finally-after-try-error-options.js"; -import {TS} from "../../../type/ts.js"; +import type {IMissingCatchOrFinallyAfterTryErrorOptions} from "./i-missing-catch-or-finally-after-try-error-options.js"; +import type {TS} from "../../../type/ts.js"; /** * An Error that can be thrown when a TryStatement is encountered without neither a catch {...} nor a finally {...} block diff --git a/src/interpreter/error/module-not-found-error/i-module-not-found-error-options.ts b/src/interpreter/error/module-not-found-error/i-module-not-found-error-options.ts index 06ebdf9..49f4cc4 100644 --- a/src/interpreter/error/module-not-found-error/i-module-not-found-error-options.ts +++ b/src/interpreter/error/module-not-found-error/i-module-not-found-error-options.ts @@ -1,4 +1,4 @@ -import {IEvaluationErrorOptions} from "../evaluation-error/i-evaluation-error-options.js"; +import type {IEvaluationErrorOptions} from "../evaluation-error/i-evaluation-error-options.js"; export interface IModuleNotFoundErrorOptions extends IEvaluationErrorOptions { path: string; diff --git a/src/interpreter/error/module-not-found-error/module-not-found-error.ts b/src/interpreter/error/module-not-found-error/module-not-found-error.ts index e83828a..f0860fa 100644 --- a/src/interpreter/error/module-not-found-error/module-not-found-error.ts +++ b/src/interpreter/error/module-not-found-error/module-not-found-error.ts @@ -1,5 +1,5 @@ import {EvaluationError} from "../evaluation-error/evaluation-error.js"; -import {IModuleNotFoundErrorOptions} from "./i-module-not-found-error-options.js"; +import type {IModuleNotFoundErrorOptions} from "./i-module-not-found-error-options.js"; /** * An Error that can be thrown when a moduleSpecifier couldn't be resolved diff --git a/src/interpreter/error/not-callable-error/i-not-callable-error-options.ts b/src/interpreter/error/not-callable-error/i-not-callable-error-options.ts index fd8191e..1304c80 100644 --- a/src/interpreter/error/not-callable-error/i-not-callable-error-options.ts +++ b/src/interpreter/error/not-callable-error/i-not-callable-error-options.ts @@ -1,5 +1,5 @@ -import {IEvaluationErrorOptions} from "../evaluation-error/i-evaluation-error-options.js"; -import {Literal} from "../../literal/literal.js"; +import type {IEvaluationErrorOptions} from "../evaluation-error/i-evaluation-error-options.js"; +import type {Literal} from "../../literal/literal.js"; export interface INotCallableErrorOptions extends IEvaluationErrorOptions { value: Literal; diff --git a/src/interpreter/error/not-callable-error/not-callable-error.ts b/src/interpreter/error/not-callable-error/not-callable-error.ts index 5c7dbcf..169ac30 100644 --- a/src/interpreter/error/not-callable-error/not-callable-error.ts +++ b/src/interpreter/error/not-callable-error/not-callable-error.ts @@ -1,6 +1,7 @@ import {EvaluationError} from "../evaluation-error/evaluation-error.js"; -import {INotCallableErrorOptions} from "./i-not-callable-error-options.js"; -import {Literal, stringifyLiteral} from "../../literal/literal.js"; +import type {INotCallableErrorOptions} from "./i-not-callable-error-options.js"; +import type {Literal} from "../../literal/literal.js"; +import { stringifyLiteral} from "../../literal/literal.js"; /** * An Error that can be thrown when a value is attempted to be called, but isn't callable diff --git a/src/interpreter/error/policy-error/i-policy-error-options.ts b/src/interpreter/error/policy-error/i-policy-error-options.ts index 09bef77..605326d 100644 --- a/src/interpreter/error/policy-error/i-policy-error-options.ts +++ b/src/interpreter/error/policy-error/i-policy-error-options.ts @@ -1,5 +1,5 @@ -import {IEvaluationErrorOptions} from "../evaluation-error/i-evaluation-error-options.js"; -import {EvaluatePolicySanitized} from "../../policy/evaluate-policy.js"; +import type {IEvaluationErrorOptions} from "../evaluation-error/i-evaluation-error-options.js"; +import type {EvaluatePolicySanitized} from "../../policy/evaluate-policy.js"; export interface IPolicyErrorOptions extends IEvaluationErrorOptions { violation: keyof EvaluatePolicySanitized; diff --git a/src/interpreter/error/policy-error/io-error/i-io-error-options.ts b/src/interpreter/error/policy-error/io-error/i-io-error-options.ts index 85dcb19..25585b6 100644 --- a/src/interpreter/error/policy-error/io-error/i-io-error-options.ts +++ b/src/interpreter/error/policy-error/io-error/i-io-error-options.ts @@ -1,5 +1,5 @@ -import {IEvaluationErrorOptions} from "../../evaluation-error/i-evaluation-error-options.js"; -import {EvaluateIOPolicy} from "../../../policy/evaluate-policy.js"; +import type {IEvaluationErrorOptions} from "../../evaluation-error/i-evaluation-error-options.js"; +import type {EvaluateIOPolicy} from "../../../policy/evaluate-policy.js"; export interface IIoErrorOptions extends IEvaluationErrorOptions { kind: keyof EvaluateIOPolicy; diff --git a/src/interpreter/error/policy-error/io-error/io-error.ts b/src/interpreter/error/policy-error/io-error/io-error.ts index 1a64c69..723f491 100644 --- a/src/interpreter/error/policy-error/io-error/io-error.ts +++ b/src/interpreter/error/policy-error/io-error/io-error.ts @@ -1,6 +1,6 @@ -import {IIoErrorOptions} from "./i-io-error-options.js"; +import type {IIoErrorOptions} from "./i-io-error-options.js"; import {PolicyError} from "../policy-error.js"; -import {EvaluateIOPolicy} from "../../../policy/evaluate-policy.js"; +import type {EvaluateIOPolicy} from "../../../policy/evaluate-policy.js"; /** * An Error that can be thrown when an IO operation is attempted to be executed that is in violation of the context policy diff --git a/src/interpreter/error/policy-error/max-op-duration-exceeded-error/i-max-op-duration-exceeded-error-options.ts b/src/interpreter/error/policy-error/max-op-duration-exceeded-error/i-max-op-duration-exceeded-error-options.ts index 40993da..d390f1f 100644 --- a/src/interpreter/error/policy-error/max-op-duration-exceeded-error/i-max-op-duration-exceeded-error-options.ts +++ b/src/interpreter/error/policy-error/max-op-duration-exceeded-error/i-max-op-duration-exceeded-error-options.ts @@ -1,4 +1,4 @@ -import {IEvaluationErrorOptions} from "../../evaluation-error/i-evaluation-error-options.js"; +import type {IEvaluationErrorOptions} from "../../evaluation-error/i-evaluation-error-options.js"; export interface IMaxOpDurationExceededErrorOptions extends IEvaluationErrorOptions { duration: number; diff --git a/src/interpreter/error/policy-error/max-op-duration-exceeded-error/max-op-duration-exceeded-error.ts b/src/interpreter/error/policy-error/max-op-duration-exceeded-error/max-op-duration-exceeded-error.ts index 8c87508..f9728c2 100644 --- a/src/interpreter/error/policy-error/max-op-duration-exceeded-error/max-op-duration-exceeded-error.ts +++ b/src/interpreter/error/policy-error/max-op-duration-exceeded-error/max-op-duration-exceeded-error.ts @@ -1,4 +1,4 @@ -import {IMaxOpDurationExceededErrorOptions} from "./i-max-op-duration-exceeded-error-options.js"; +import type {IMaxOpDurationExceededErrorOptions} from "./i-max-op-duration-exceeded-error-options.js"; import {PolicyError} from "../policy-error.js"; /** diff --git a/src/interpreter/error/policy-error/max-ops-exceeded-error/i-max-ops-exceeded-error-options.ts b/src/interpreter/error/policy-error/max-ops-exceeded-error/i-max-ops-exceeded-error-options.ts index dcd683f..ac8f6d3 100644 --- a/src/interpreter/error/policy-error/max-ops-exceeded-error/i-max-ops-exceeded-error-options.ts +++ b/src/interpreter/error/policy-error/max-ops-exceeded-error/i-max-ops-exceeded-error-options.ts @@ -1,4 +1,4 @@ -import {IEvaluationErrorOptions} from "../../evaluation-error/i-evaluation-error-options.js"; +import type {IEvaluationErrorOptions} from "../../evaluation-error/i-evaluation-error-options.js"; export interface IMaxOpsExceededErrorOptions extends IEvaluationErrorOptions { ops: number; diff --git a/src/interpreter/error/policy-error/max-ops-exceeded-error/max-ops-exceeded-error.ts b/src/interpreter/error/policy-error/max-ops-exceeded-error/max-ops-exceeded-error.ts index 855e597..8c8b03f 100644 --- a/src/interpreter/error/policy-error/max-ops-exceeded-error/max-ops-exceeded-error.ts +++ b/src/interpreter/error/policy-error/max-ops-exceeded-error/max-ops-exceeded-error.ts @@ -1,4 +1,4 @@ -import {IMaxOpsExceededErrorOptions} from "./i-max-ops-exceeded-error-options.js"; +import type {IMaxOpsExceededErrorOptions} from "./i-max-ops-exceeded-error-options.js"; import {PolicyError} from "../policy-error.js"; /** diff --git a/src/interpreter/error/policy-error/network-error/i-network-error-options.ts b/src/interpreter/error/policy-error/network-error/i-network-error-options.ts index 6beca96..96e92b1 100644 --- a/src/interpreter/error/policy-error/network-error/i-network-error-options.ts +++ b/src/interpreter/error/policy-error/network-error/i-network-error-options.ts @@ -1,4 +1,4 @@ -import {IEvaluationErrorOptions} from "../../evaluation-error/i-evaluation-error-options.js"; +import type {IEvaluationErrorOptions} from "../../evaluation-error/i-evaluation-error-options.js"; export interface INetworkErrorOptions extends IEvaluationErrorOptions { operation: string; diff --git a/src/interpreter/error/policy-error/network-error/network-error.ts b/src/interpreter/error/policy-error/network-error/network-error.ts index a1321ae..eafca3a 100644 --- a/src/interpreter/error/policy-error/network-error/network-error.ts +++ b/src/interpreter/error/policy-error/network-error/network-error.ts @@ -1,4 +1,4 @@ -import {INetworkErrorOptions} from "./i-network-error-options.js"; +import type {INetworkErrorOptions} from "./i-network-error-options.js"; import {PolicyError} from "../policy-error.js"; /** diff --git a/src/interpreter/error/policy-error/non-deterministic-error/i-non-deterministic-error-options.ts b/src/interpreter/error/policy-error/non-deterministic-error/i-non-deterministic-error-options.ts index a547e73..af45664 100644 --- a/src/interpreter/error/policy-error/non-deterministic-error/i-non-deterministic-error-options.ts +++ b/src/interpreter/error/policy-error/non-deterministic-error/i-non-deterministic-error-options.ts @@ -1,4 +1,4 @@ -import {IEvaluationErrorOptions} from "../../evaluation-error/i-evaluation-error-options.js"; +import type {IEvaluationErrorOptions} from "../../evaluation-error/i-evaluation-error-options.js"; export interface INonDeterministicErrorOptions extends IEvaluationErrorOptions { operation: string; diff --git a/src/interpreter/error/policy-error/non-deterministic-error/non-deterministic-error.ts b/src/interpreter/error/policy-error/non-deterministic-error/non-deterministic-error.ts index 71bd031..6dddc7d 100644 --- a/src/interpreter/error/policy-error/non-deterministic-error/non-deterministic-error.ts +++ b/src/interpreter/error/policy-error/non-deterministic-error/non-deterministic-error.ts @@ -1,4 +1,4 @@ -import {INonDeterministicErrorOptions} from "./i-non-deterministic-error-options.js"; +import type {INonDeterministicErrorOptions} from "./i-non-deterministic-error-options.js"; import {PolicyError} from "../policy-error.js"; /** diff --git a/src/interpreter/error/policy-error/policy-error.ts b/src/interpreter/error/policy-error/policy-error.ts index bd12b14..187dea1 100644 --- a/src/interpreter/error/policy-error/policy-error.ts +++ b/src/interpreter/error/policy-error/policy-error.ts @@ -1,6 +1,6 @@ import {EvaluationError} from "../evaluation-error/evaluation-error.js"; -import {IPolicyErrorOptions} from "./i-policy-error-options.js"; -import {EvaluatePolicySanitized} from "../../policy/evaluate-policy.js"; +import type {IPolicyErrorOptions} from "./i-policy-error-options.js"; +import type {EvaluatePolicySanitized} from "../../policy/evaluate-policy.js"; /** * An Error that can be thrown when a policy is violated diff --git a/src/interpreter/error/policy-error/process-error/i-process-error-options.ts b/src/interpreter/error/policy-error/process-error/i-process-error-options.ts index 4400a1b..e00394a 100644 --- a/src/interpreter/error/policy-error/process-error/i-process-error-options.ts +++ b/src/interpreter/error/policy-error/process-error/i-process-error-options.ts @@ -1,5 +1,5 @@ -import {IEvaluationErrorOptions} from "../../evaluation-error/i-evaluation-error-options.js"; -import {EvaluateProcessPolicy} from "../../../policy/evaluate-policy.js"; +import type {IEvaluationErrorOptions} from "../../evaluation-error/i-evaluation-error-options.js"; +import type {EvaluateProcessPolicy} from "../../../policy/evaluate-policy.js"; export interface IProcessErrorOptions extends IEvaluationErrorOptions { kind: keyof EvaluateProcessPolicy; diff --git a/src/interpreter/error/policy-error/process-error/process-error.ts b/src/interpreter/error/policy-error/process-error/process-error.ts index d7098ab..a665edf 100644 --- a/src/interpreter/error/policy-error/process-error/process-error.ts +++ b/src/interpreter/error/policy-error/process-error/process-error.ts @@ -1,6 +1,6 @@ -import {IProcessErrorOptions} from "./i-process-error-options.js"; +import type {IProcessErrorOptions} from "./i-process-error-options.js"; import {PolicyError} from "../policy-error.js"; -import {EvaluateProcessPolicy} from "../../../policy/evaluate-policy.js"; +import type {EvaluateProcessPolicy} from "../../../policy/evaluate-policy.js"; /** * An Error that can be thrown when a Process operation is attempted to be executed that is in violation of the context policy diff --git a/src/interpreter/error/undefined-identifier-error/i-undefined-identifier-error-options.ts b/src/interpreter/error/undefined-identifier-error/i-undefined-identifier-error-options.ts index 3d5c7cf..e57d384 100644 --- a/src/interpreter/error/undefined-identifier-error/i-undefined-identifier-error-options.ts +++ b/src/interpreter/error/undefined-identifier-error/i-undefined-identifier-error-options.ts @@ -1,5 +1,5 @@ -import {IEvaluationErrorOptions} from "../evaluation-error/i-evaluation-error-options.js"; -import {TS} from "../../../type/ts.js"; +import type {IEvaluationErrorOptions} from "../evaluation-error/i-evaluation-error-options.js"; +import type {TS} from "../../../type/ts.js"; export interface IUndefinedIdentifierErrorOptions extends IEvaluationErrorOptions { node: TS.Identifier | TS.PrivateIdentifier; diff --git a/src/interpreter/error/undefined-identifier-error/undefined-identifier-error.ts b/src/interpreter/error/undefined-identifier-error/undefined-identifier-error.ts index e009a06..da4b345 100644 --- a/src/interpreter/error/undefined-identifier-error/undefined-identifier-error.ts +++ b/src/interpreter/error/undefined-identifier-error/undefined-identifier-error.ts @@ -1,6 +1,6 @@ import {EvaluationError} from "../evaluation-error/evaluation-error.js"; -import {IUndefinedIdentifierErrorOptions} from "./i-undefined-identifier-error-options.js"; -import {TS} from "../../../type/ts.js"; +import type {IUndefinedIdentifierErrorOptions} from "./i-undefined-identifier-error-options.js"; +import type {TS} from "../../../type/ts.js"; /** * An Error that can be thrown when an undefined identifier is encountered diff --git a/src/interpreter/error/undefined-left-value-error/i-undefined-left-value-error-options.ts b/src/interpreter/error/undefined-left-value-error/i-undefined-left-value-error-options.ts index 7a9c385..7cc7fb6 100644 --- a/src/interpreter/error/undefined-left-value-error/i-undefined-left-value-error-options.ts +++ b/src/interpreter/error/undefined-left-value-error/i-undefined-left-value-error-options.ts @@ -1,3 +1,3 @@ -import {IEvaluationErrorOptions} from "../evaluation-error/i-evaluation-error-options.js"; +import type {IEvaluationErrorOptions} from "../evaluation-error/i-evaluation-error-options.js"; export interface IUndefinedLeftValueErrorOptions extends IEvaluationErrorOptions {} diff --git a/src/interpreter/error/undefined-left-value-error/undefined-left-value-error.ts b/src/interpreter/error/undefined-left-value-error/undefined-left-value-error.ts index 60f59c6..9f9d2f0 100644 --- a/src/interpreter/error/undefined-left-value-error/undefined-left-value-error.ts +++ b/src/interpreter/error/undefined-left-value-error/undefined-left-value-error.ts @@ -1,5 +1,5 @@ import {EvaluationError} from "../evaluation-error/evaluation-error.js"; -import {IUndefinedLeftValueErrorOptions} from "./i-undefined-left-value-error-options.js"; +import type {IUndefinedLeftValueErrorOptions} from "./i-undefined-left-value-error-options.js"; /** * An Error that can be thrown when an undefined leftValue is encountered diff --git a/src/interpreter/error/unexpected-node-error/i-unexpected-node-error-options.ts b/src/interpreter/error/unexpected-node-error/i-unexpected-node-error-options.ts index a505858..f30c5a8 100644 --- a/src/interpreter/error/unexpected-node-error/i-unexpected-node-error-options.ts +++ b/src/interpreter/error/unexpected-node-error/i-unexpected-node-error-options.ts @@ -1,5 +1,5 @@ -import {IEvaluationErrorOptions} from "../evaluation-error/i-evaluation-error-options.js"; -import {TS} from "../../../type/ts.js"; +import type {IEvaluationErrorOptions} from "../evaluation-error/i-evaluation-error-options.js"; +import type {TS} from "../../../type/ts.js"; export interface IUnexpectedNodeErrorOptions extends IEvaluationErrorOptions { typescript: typeof TS; diff --git a/src/interpreter/error/unexpected-node-error/unexpected-node-error.ts b/src/interpreter/error/unexpected-node-error/unexpected-node-error.ts index b2b358a..f1704cf 100644 --- a/src/interpreter/error/unexpected-node-error/unexpected-node-error.ts +++ b/src/interpreter/error/unexpected-node-error/unexpected-node-error.ts @@ -1,5 +1,5 @@ import {EvaluationError} from "../evaluation-error/evaluation-error.js"; -import {IUnexpectedNodeErrorOptions} from "./i-unexpected-node-error-options.js"; +import type {IUnexpectedNodeErrorOptions} from "./i-unexpected-node-error-options.js"; /** * An Error that can be thrown when an unexpected node is encountered diff --git a/src/interpreter/error/unexpected-syntax-error/i-unexpected-syntax-error-options.ts b/src/interpreter/error/unexpected-syntax-error/i-unexpected-syntax-error-options.ts index 6b9ecd3..bb44e0d 100644 --- a/src/interpreter/error/unexpected-syntax-error/i-unexpected-syntax-error-options.ts +++ b/src/interpreter/error/unexpected-syntax-error/i-unexpected-syntax-error-options.ts @@ -1,3 +1,3 @@ -import {IEvaluationErrorOptions} from "../evaluation-error/i-evaluation-error-options.js"; +import type {IEvaluationErrorOptions} from "../evaluation-error/i-evaluation-error-options.js"; export interface IUnexpectedSyntaxErrorOptions extends IEvaluationErrorOptions {} diff --git a/src/interpreter/error/unexpected-syntax-error/unexpected-syntax-error.ts b/src/interpreter/error/unexpected-syntax-error/unexpected-syntax-error.ts index 3fd6357..7985ae7 100644 --- a/src/interpreter/error/unexpected-syntax-error/unexpected-syntax-error.ts +++ b/src/interpreter/error/unexpected-syntax-error/unexpected-syntax-error.ts @@ -1,5 +1,5 @@ import {EvaluationError} from "../evaluation-error/evaluation-error.js"; -import {IUnexpectedSyntaxErrorOptions} from "./i-unexpected-syntax-error-options.js"; +import type {IUnexpectedSyntaxErrorOptions} from "./i-unexpected-syntax-error-options.js"; /** * An Error that can be thrown when a certain usage is to be considered a SyntaxError diff --git a/src/interpreter/evaluate-options.ts b/src/interpreter/evaluate-options.ts index 24fc652..172db18 100644 --- a/src/interpreter/evaluate-options.ts +++ b/src/interpreter/evaluate-options.ts @@ -1,8 +1,8 @@ -import {LogLevelKind} from "./logger/log-level.js"; -import {EvaluatePolicy} from "./policy/evaluate-policy.js"; -import {IEnvironment} from "./environment/i-environment.js"; -import {ReportingOptions} from "./reporting/i-reporting-options.js"; -import {TS} from "../type/ts.js"; +import type {LogLevelKind} from "./logger/log-level.js"; +import type {EvaluatePolicy} from "./policy/evaluate-policy.js"; +import type {IEnvironment} from "./environment/i-environment.js"; +import type {ReportingOptions} from "./reporting/i-reporting-options.js"; +import type {TS} from "../type/ts.js"; export interface EvaluateOptions { node: TS.Statement | TS.Declaration | TS.Expression; diff --git a/src/interpreter/evaluate-result.ts b/src/interpreter/evaluate-result.ts index d7b5a98..48b8de0 100644 --- a/src/interpreter/evaluate-result.ts +++ b/src/interpreter/evaluate-result.ts @@ -1,4 +1,4 @@ -import {EvaluationError} from "./error/evaluation-error/evaluation-error.js"; +import type {EvaluationError} from "./error/evaluation-error/evaluation-error.js"; export interface IEvaluateResultBase { success: boolean; diff --git a/src/interpreter/evaluate.ts b/src/interpreter/evaluate.ts index 4887b1e..027ff5b 100644 --- a/src/interpreter/evaluate.ts +++ b/src/interpreter/evaluate.ts @@ -1,24 +1,25 @@ import * as TSModule from "typescript"; -import {EvaluateOptions} from "./evaluate-options.js"; +import type {EvaluateOptions} from "./evaluate-options.js"; import {createLexicalEnvironment} from "./lexical-environment/lexical-environment.js"; -import {EvaluateResult} from "./evaluate-result.js"; +import type {EvaluateResult} from "./evaluate-result.js"; import {evaluateSimpleLiteral} from "./evaluator/simple/evaluate-simple-literal.js"; import {createNodeEvaluator} from "./evaluator/node-evaluator/create-node-evaluator.js"; import {LogLevelKind} from "./logger/log-level.js"; import {Logger} from "./logger/logger.js"; import {createStatementTraversalStack} from "./stack/traversal-stack/statement-traversal-stack.js"; import {isExpression} from "./util/expression/is-expression.js"; -import {Literal} from "./literal/literal.js"; +import type {Literal} from "./literal/literal.js"; import {isStatement} from "./util/statement/is-statement.js"; -import {createStack, Stack} from "./stack/stack.js"; +import type { Stack} from "./stack/stack.js"; +import {createStack} from "./stack/stack.js"; import {isDeclaration} from "./util/declaration/is-declaration.js"; import {UnexpectedNodeError} from "./error/unexpected-node-error/unexpected-node-error.js"; -import {EvaluatePolicySanitized} from "./policy/evaluate-policy.js"; +import type {EvaluatePolicySanitized} from "./policy/evaluate-policy.js"; import {reportError} from "./util/reporting/report-error.js"; import {createReportedErrorSet} from "./reporting/reported-error-set.js"; -import {ReportingOptionsSanitized} from "./reporting/i-reporting-options.js"; -import {EvaluationError, ThrowError} from "./error/evaluation-error/evaluation-error.js"; -import { ICreateNodeEvaluatorOptions } from "./evaluator/node-evaluator/i-create-node-evaluator-options.js"; +import type {ReportingOptionsSanitized} from "./reporting/i-reporting-options.js"; +import type {EvaluationError, ThrowError} from "./error/evaluation-error/evaluation-error.js"; +import type { ICreateNodeEvaluatorOptions } from "./evaluator/node-evaluator/i-create-node-evaluator-options.js"; /** * Will get a literal value for the given Expression, ExpressionStatement, or Declaration. */ diff --git a/src/interpreter/evaluator/evaluate-array-binding-pattern.ts b/src/interpreter/evaluator/evaluate-array-binding-pattern.ts index f0d39e8..0b10364 100644 --- a/src/interpreter/evaluator/evaluate-array-binding-pattern.ts +++ b/src/interpreter/evaluator/evaluate-array-binding-pattern.ts @@ -1,6 +1,6 @@ -import {EvaluatorOptions} from "./evaluator-options.js"; -import {Literal} from "../literal/literal.js"; -import {TS} from "../../type/ts.js"; +import type {EvaluatorOptions} from "./evaluator-options.js"; +import type {Literal} from "../literal/literal.js"; +import type {TS} from "../../type/ts.js"; /** * Evaluates, or attempts to evaluate, an ArrayBindingPattern, based on an initializer diff --git a/src/interpreter/evaluator/evaluate-array-literal-expression.ts b/src/interpreter/evaluator/evaluate-array-literal-expression.ts index bc61cca..d282ae5 100644 --- a/src/interpreter/evaluator/evaluate-array-literal-expression.ts +++ b/src/interpreter/evaluator/evaluate-array-literal-expression.ts @@ -1,8 +1,8 @@ -import {EvaluatorOptions} from "./evaluator-options.js"; -import {Literal} from "../literal/literal.js"; +import type {EvaluatorOptions} from "./evaluator-options.js"; +import type {Literal} from "../literal/literal.js"; import {getFromLexicalEnvironment} from "../lexical-environment/lexical-environment.js"; import {isIterable} from "../util/iterable/is-iterable.js"; -import {TS} from "../../type/ts.js"; +import type {TS} from "../../type/ts.js"; /** * Evaluates, or attempts to evaluate, a ArrayLiteralExpression diff --git a/src/interpreter/evaluator/evaluate-arrow-function-expression.ts b/src/interpreter/evaluator/evaluate-arrow-function-expression.ts index b671d00..d7fdb66 100644 --- a/src/interpreter/evaluator/evaluate-arrow-function-expression.ts +++ b/src/interpreter/evaluator/evaluate-arrow-function-expression.ts @@ -1,11 +1,12 @@ -import {EvaluatorOptions} from "./evaluator-options.js"; -import {getFromLexicalEnvironment, LexicalEnvironment, pathInLexicalEnvironmentEquals, setInLexicalEnvironment} from "../lexical-environment/lexical-environment.js"; +import type {EvaluatorOptions} from "./evaluator-options.js"; +import type { LexicalEnvironment} from "../lexical-environment/lexical-environment.js"; +import {getFromLexicalEnvironment, pathInLexicalEnvironmentEquals, setInLexicalEnvironment} from "../lexical-environment/lexical-environment.js"; import {cloneLexicalEnvironment} from "../lexical-environment/clone-lexical-environment.js"; -import {Literal} from "../literal/literal.js"; +import type {Literal} from "../literal/literal.js"; import {evaluateParameterDeclarations} from "./evaluate-parameter-declarations.js"; import {RETURN_SYMBOL} from "../util/return/return-symbol.js"; import {hasModifier} from "../util/modifier/has-modifier.js"; -import {TS} from "../../type/ts.js"; +import type {TS} from "../../type/ts.js"; /** * Evaluates, or attempts to evaluate, an ArrowFunction @@ -13,7 +14,7 @@ import {TS} from "../../type/ts.js"; export function evaluateArrowFunctionExpression(options: EvaluatorOptions): Literal { const {node, environment, evaluate, stack, typescript, getCurrentError} = options; - const arrowFunctionExpression = hasModifier(node, typescript.SyntaxKind.AsyncKeyword, typescript) + const arrowFunctionExpression = hasModifier(node, typescript.SyntaxKind.AsyncKeyword) ? async (...args: Literal[]) => { // Prepare a lexical environment for the function context const localLexicalEnvironment: LexicalEnvironment = cloneLexicalEnvironment(environment, node); diff --git a/src/interpreter/evaluator/evaluate-as-expression.ts b/src/interpreter/evaluator/evaluate-as-expression.ts index c7f6a68..1ce7b99 100644 --- a/src/interpreter/evaluator/evaluate-as-expression.ts +++ b/src/interpreter/evaluator/evaluate-as-expression.ts @@ -1,6 +1,6 @@ -import {EvaluatorOptions} from "./evaluator-options.js"; -import {Literal} from "../literal/literal.js"; -import {TS} from "../../type/ts.js"; +import type {EvaluatorOptions} from "./evaluator-options.js"; +import type {Literal} from "../literal/literal.js"; +import type {TS} from "../../type/ts.js"; /** * Evaluates, or attempts to evaluate, an AsExpression diff --git a/src/interpreter/evaluator/evaluate-await-expression.ts b/src/interpreter/evaluator/evaluate-await-expression.ts index 7da6acc..b3697cf 100644 --- a/src/interpreter/evaluator/evaluate-await-expression.ts +++ b/src/interpreter/evaluator/evaluate-await-expression.ts @@ -1,7 +1,7 @@ -import {EvaluatorOptions} from "./evaluator-options.js"; -import {Literal} from "../literal/literal.js"; +import type {EvaluatorOptions} from "./evaluator-options.js"; +import type {Literal} from "../literal/literal.js"; import {MaxOpDurationExceededError} from "../error/policy-error/max-op-duration-exceeded-error/max-op-duration-exceeded-error.js"; -import {TS} from "../../type/ts.js"; +import type {TS} from "../../type/ts.js"; /** * Evaluates, or attempts to evaluate, an AwaitExpression diff --git a/src/interpreter/evaluator/evaluate-big-int-literal.ts b/src/interpreter/evaluator/evaluate-big-int-literal.ts index 686e031..eafe702 100644 --- a/src/interpreter/evaluator/evaluate-big-int-literal.ts +++ b/src/interpreter/evaluator/evaluate-big-int-literal.ts @@ -1,7 +1,7 @@ -import {EvaluatorOptions} from "./evaluator-options.js"; -import {Literal} from "../literal/literal.js"; +import type {EvaluatorOptions} from "./evaluator-options.js"; +import type {Literal} from "../literal/literal.js"; import {getFromLexicalEnvironment} from "../lexical-environment/lexical-environment.js"; -import {TS} from "../../type/ts.js"; +import type {TS} from "../../type/ts.js"; /** * Evaluates, or attempts to evaluate, a BigIntLiteral diff --git a/src/interpreter/evaluator/evaluate-binary-expression.ts b/src/interpreter/evaluator/evaluate-binary-expression.ts index d0d280d..af172bf 100644 --- a/src/interpreter/evaluator/evaluate-binary-expression.ts +++ b/src/interpreter/evaluator/evaluate-binary-expression.ts @@ -1,10 +1,10 @@ -import {EvaluatorOptions} from "./evaluator-options.js"; +import type {EvaluatorOptions} from "./evaluator-options.js"; import {getDotPathFromNode} from "../lexical-environment/get-dot-path-from-node.js"; import {findLexicalEnvironmentInSameContext, setInLexicalEnvironment} from "../lexical-environment/lexical-environment.js"; -import {Literal} from "../literal/literal.js"; +import type {Literal} from "../literal/literal.js"; import {UnexpectedNodeError} from "../error/unexpected-node-error/unexpected-node-error.js"; import {UndefinedLeftValueError} from "../error/undefined-left-value-error/undefined-left-value-error.js"; -import {TS} from "../../type/ts.js"; +import type {TS} from "../../type/ts.js"; import {getInnerNode} from "../util/node/get-inner-node.js"; import {findNearestParentNodeWithName} from "../util/node/find-nearest-parent-node-of-kind.js"; import {isTypescriptNode} from "../util/node/is-node.js"; diff --git a/src/interpreter/evaluator/evaluate-binding-element.ts b/src/interpreter/evaluator/evaluate-binding-element.ts index f2f8a5b..1e5fdff 100644 --- a/src/interpreter/evaluator/evaluate-binding-element.ts +++ b/src/interpreter/evaluator/evaluate-binding-element.ts @@ -1,7 +1,7 @@ -import {EvaluatorOptions} from "./evaluator-options.js"; -import {IndexLiteral, IndexLiteralKey, Literal} from "../literal/literal.js"; +import type {EvaluatorOptions} from "./evaluator-options.js"; +import type {IndexLiteral, IndexLiteralKey, Literal} from "../literal/literal.js"; import {setInLexicalEnvironment} from "../lexical-environment/lexical-environment.js"; -import {TS} from "../../type/ts.js"; +import type {TS} from "../../type/ts.js"; /** * Evaluates, or attempts to evaluate, a BindingName, based on an BindingElement diff --git a/src/interpreter/evaluator/evaluate-binding-name.ts b/src/interpreter/evaluator/evaluate-binding-name.ts index def6b01..8e7847d 100644 --- a/src/interpreter/evaluator/evaluate-binding-name.ts +++ b/src/interpreter/evaluator/evaluate-binding-name.ts @@ -1,7 +1,7 @@ -import {EvaluatorOptions} from "./evaluator-options.js"; -import {Literal} from "../literal/literal.js"; +import type {EvaluatorOptions} from "./evaluator-options.js"; +import type {Literal} from "../literal/literal.js"; import {setInLexicalEnvironment} from "../lexical-environment/lexical-environment.js"; -import {TS} from "../../type/ts.js"; +import type {TS} from "../../type/ts.js"; /** * Evaluates, or attempts to evaluate, a BindingName, based on an initializer diff --git a/src/interpreter/evaluator/evaluate-block.ts b/src/interpreter/evaluator/evaluate-block.ts index 8578370..f22ebc5 100644 --- a/src/interpreter/evaluator/evaluate-block.ts +++ b/src/interpreter/evaluator/evaluate-block.ts @@ -1,11 +1,12 @@ -import {EvaluatorOptions} from "./evaluator-options.js"; -import {LexicalEnvironment, pathInLexicalEnvironmentEquals} from "../lexical-environment/lexical-environment.js"; +import type {EvaluatorOptions} from "./evaluator-options.js"; +import type {LexicalEnvironment} from "../lexical-environment/lexical-environment.js"; +import { pathInLexicalEnvironmentEquals} from "../lexical-environment/lexical-environment.js"; import {cloneLexicalEnvironment} from "../lexical-environment/clone-lexical-environment.js"; import {BREAK_SYMBOL} from "../util/break/break-symbol.js"; import {CONTINUE_SYMBOL} from "../util/continue/continue-symbol.js"; import {RETURN_SYMBOL} from "../util/return/return-symbol.js"; import {isSuperExpression} from "../util/node/is-super-expression.js"; -import {TS} from "../../type/ts.js"; +import type {TS} from "../../type/ts.js"; /** * Evaluates, or attempts to evaluate, a Block diff --git a/src/interpreter/evaluator/evaluate-boolean-literal.ts b/src/interpreter/evaluator/evaluate-boolean-literal.ts index 55d2506..95ec6e4 100644 --- a/src/interpreter/evaluator/evaluate-boolean-literal.ts +++ b/src/interpreter/evaluator/evaluate-boolean-literal.ts @@ -1,6 +1,6 @@ -import {EvaluatorOptions} from "./evaluator-options.js"; -import {Literal} from "../literal/literal.js"; -import {TS} from "../../type/ts.js"; +import type {EvaluatorOptions} from "./evaluator-options.js"; +import type {Literal} from "../literal/literal.js"; +import type {TS} from "../../type/ts.js"; /** * Evaluates, or attempts to evaluate, a BooleanLiteral diff --git a/src/interpreter/evaluator/evaluate-break-statement.ts b/src/interpreter/evaluator/evaluate-break-statement.ts index 93adf41..513b970 100644 --- a/src/interpreter/evaluator/evaluate-break-statement.ts +++ b/src/interpreter/evaluator/evaluate-break-statement.ts @@ -1,7 +1,7 @@ -import {EvaluatorOptions} from "./evaluator-options.js"; +import type {EvaluatorOptions} from "./evaluator-options.js"; import {setInLexicalEnvironment} from "../lexical-environment/lexical-environment.js"; import {BREAK_SYMBOL} from "../util/break/break-symbol.js"; -import {TS} from "../../type/ts.js"; +import type {TS} from "../../type/ts.js"; /** * Evaluates, or attempts to evaluate, a BreakStatement diff --git a/src/interpreter/evaluator/evaluate-call-expression.ts b/src/interpreter/evaluator/evaluate-call-expression.ts index 86c28f3..dcfc0bc 100644 --- a/src/interpreter/evaluator/evaluate-call-expression.ts +++ b/src/interpreter/evaluator/evaluate-call-expression.ts @@ -1,10 +1,11 @@ -import {EvaluatorOptions} from "./evaluator-options.js"; -import {isLazyCall, Literal} from "../literal/literal.js"; +import type {EvaluatorOptions} from "./evaluator-options.js"; +import type { Literal} from "../literal/literal.js"; +import {isLazyCall} from "../literal/literal.js"; import {NotCallableError} from "../error/not-callable-error/not-callable-error.js"; import {getFromLexicalEnvironment} from "../lexical-environment/lexical-environment.js"; import {THIS_SYMBOL} from "../util/this/this-symbol.js"; import {expressionContainsSuperKeyword} from "../util/expression/expression-contains-super-keyword.js"; -import {TS} from "../../type/ts.js"; +import type {TS} from "../../type/ts.js"; import {maybeThrow} from "../error/evaluation-error/evaluation-error-intent.js"; /** diff --git a/src/interpreter/evaluator/evaluate-case-block.ts b/src/interpreter/evaluator/evaluate-case-block.ts index 0cdd844..ac88e5a 100644 --- a/src/interpreter/evaluator/evaluate-case-block.ts +++ b/src/interpreter/evaluator/evaluate-case-block.ts @@ -1,11 +1,11 @@ -import {EvaluatorOptions} from "./evaluator-options.js"; +import type {EvaluatorOptions} from "./evaluator-options.js"; import {pathInLexicalEnvironmentEquals, setInLexicalEnvironment} from "../lexical-environment/lexical-environment.js"; import {cloneLexicalEnvironment} from "../lexical-environment/clone-lexical-environment.js"; import {BREAK_SYMBOL} from "../util/break/break-symbol.js"; import {CONTINUE_SYMBOL} from "../util/continue/continue-symbol.js"; import {RETURN_SYMBOL} from "../util/return/return-symbol.js"; -import {Literal} from "../literal/literal.js"; -import {TS} from "../../type/ts.js"; +import type {Literal} from "../literal/literal.js"; +import type {TS} from "../../type/ts.js"; /** * Evaluates, or attempts to evaluate, a CaseBlock, based on a switch expression diff --git a/src/interpreter/evaluator/evaluate-case-clause.ts b/src/interpreter/evaluator/evaluate-case-clause.ts index 4823198..5ea813c 100644 --- a/src/interpreter/evaluator/evaluate-case-clause.ts +++ b/src/interpreter/evaluator/evaluate-case-clause.ts @@ -1,10 +1,10 @@ -import {EvaluatorOptions} from "./evaluator-options.js"; +import type {EvaluatorOptions} from "./evaluator-options.js"; import {pathInLexicalEnvironmentEquals} from "../lexical-environment/lexical-environment.js"; import {BREAK_SYMBOL} from "../util/break/break-symbol.js"; import {CONTINUE_SYMBOL} from "../util/continue/continue-symbol.js"; import {RETURN_SYMBOL} from "../util/return/return-symbol.js"; -import {Literal} from "../literal/literal.js"; -import {TS} from "../../type/ts.js"; +import type {Literal} from "../literal/literal.js"; +import type {TS} from "../../type/ts.js"; /** * Evaluates, or attempts to evaluate, a CaseClause, based on a switch expression diff --git a/src/interpreter/evaluator/evaluate-catch-clause.ts b/src/interpreter/evaluator/evaluate-catch-clause.ts index 04bff32..243ee66 100644 --- a/src/interpreter/evaluator/evaluate-catch-clause.ts +++ b/src/interpreter/evaluator/evaluate-catch-clause.ts @@ -1,6 +1,6 @@ -import {EvaluatorOptions} from "./evaluator-options.js"; +import type {EvaluatorOptions} from "./evaluator-options.js"; import {cloneLexicalEnvironment} from "../lexical-environment/clone-lexical-environment.js"; -import {TS} from "../../type/ts.js"; +import type {TS} from "../../type/ts.js"; /** * Evaluates, or attempts to evaluate, a CatchClause, based on a given Error diff --git a/src/interpreter/evaluator/evaluate-class-declaration.ts b/src/interpreter/evaluator/evaluate-class-declaration.ts index a9628fc..7a9d7a4 100644 --- a/src/interpreter/evaluator/evaluate-class-declaration.ts +++ b/src/interpreter/evaluator/evaluate-class-declaration.ts @@ -1,8 +1,8 @@ -import {EvaluatorOptions} from "./evaluator-options.js"; +import type {EvaluatorOptions} from "./evaluator-options.js"; import {setInLexicalEnvironment} from "../lexical-environment/lexical-environment.js"; import {generateClassDeclaration} from "../util/class/generate-class-declaration.js"; import {hasModifier} from "../util/modifier/has-modifier.js"; -import {TS} from "../../type/ts.js"; +import type {TS} from "../../type/ts.js"; import {canHaveDecorators, getDecorators} from "../util/node/modifier-util.js"; /** @@ -62,7 +62,7 @@ export function evaluateClassDeclaration(options: EvaluatorOptions = (...args: unknown[]) => ConditionType; export type TrapCondition = ConditionType | TrapConditionFunction; diff --git a/src/interpreter/proxy/create-policy-proxy.ts b/src/interpreter/proxy/create-policy-proxy.ts index 8e52013..fbaed78 100644 --- a/src/interpreter/proxy/create-policy-proxy.ts +++ b/src/interpreter/proxy/create-policy-proxy.ts @@ -1,9 +1,10 @@ /* eslint-disable @typescript-eslint/ban-types */ import {canBeObserved} from "../util/proxy/can-be-observed.js"; -import {ICreatePolicyProxyOptions} from "./i-create-policy-proxy-options.js"; +import type {ICreatePolicyProxyOptions} from "./i-create-policy-proxy-options.js"; import {isBindCallApply} from "../util/function/is-bind-call-apply.js"; import {PolicyTrapKind} from "../policy/policy-trap-kind.js"; -import {EvaluationErrorIntent, isEvaluationErrorIntent} from "../error/evaluation-error/evaluation-error-intent.js"; +import type {EvaluationErrorIntent} from "../error/evaluation-error/evaluation-error-intent.js"; +import { isEvaluationErrorIntent} from "../error/evaluation-error/evaluation-error-intent.js"; import { isEvaluationError } from "../error/evaluation-error/evaluation-error.js"; /** diff --git a/src/interpreter/proxy/i-create-policy-proxy-options.ts b/src/interpreter/proxy/i-create-policy-proxy-options.ts index 4af3034..efc149a 100644 --- a/src/interpreter/proxy/i-create-policy-proxy-options.ts +++ b/src/interpreter/proxy/i-create-policy-proxy-options.ts @@ -1,5 +1,5 @@ -import {EvaluatePolicySanitized} from "../policy/evaluate-policy.js"; -import {PolicyProxyHook} from "./policy-proxy-hook.js"; +import type {EvaluatePolicySanitized} from "../policy/evaluate-policy.js"; +import type {PolicyProxyHook} from "./policy-proxy-hook.js"; // eslint-disable-next-line @typescript-eslint/ban-types export interface ICreatePolicyProxyOptions { diff --git a/src/interpreter/proxy/policy-proxy-hook.ts b/src/interpreter/proxy/policy-proxy-hook.ts index 335b7ad..c8f2833 100644 --- a/src/interpreter/proxy/policy-proxy-hook.ts +++ b/src/interpreter/proxy/policy-proxy-hook.ts @@ -1,7 +1,7 @@ /* eslint-disable @typescript-eslint/ban-types */ -import { EvaluationErrorIntent } from "../error/evaluation-error/evaluation-error-intent.js"; -import {EvaluatePolicySanitized} from "../policy/evaluate-policy.js"; -import {PolicyTrapKind} from "../policy/policy-trap-kind.js"; +import type { EvaluationErrorIntent } from "../error/evaluation-error/evaluation-error-intent.js"; +import type {EvaluatePolicySanitized} from "../policy/evaluate-policy.js"; +import type {PolicyTrapKind} from "../policy/policy-trap-kind.js"; export interface IPolicyProxyHookOptions { kind: PolicyTrapKind; diff --git a/src/interpreter/reporting/i-reporting-options.ts b/src/interpreter/reporting/i-reporting-options.ts index a228580..a9447ef 100644 --- a/src/interpreter/reporting/i-reporting-options.ts +++ b/src/interpreter/reporting/i-reporting-options.ts @@ -1,5 +1,5 @@ -import {ReportedErrorSet} from "./reported-error-set.js"; -import {TS} from "../../type/ts.js"; +import type {ReportedErrorSet} from "./reported-error-set.js"; +import type {TS} from "../../type/ts.js"; export interface IBindingReportEntry { path: string; diff --git a/src/interpreter/stack/stack.ts b/src/interpreter/stack/stack.ts index e68a1cb..41d39c2 100644 --- a/src/interpreter/stack/stack.ts +++ b/src/interpreter/stack/stack.ts @@ -1,4 +1,4 @@ -import {Literal} from "../literal/literal.js"; +import type {Literal} from "../literal/literal.js"; export interface Stack { readonly length: number; diff --git a/src/interpreter/stack/traversal-stack/statement-traversal-stack.ts b/src/interpreter/stack/traversal-stack/statement-traversal-stack.ts index 08c16d1..22d180f 100644 --- a/src/interpreter/stack/traversal-stack/statement-traversal-stack.ts +++ b/src/interpreter/stack/traversal-stack/statement-traversal-stack.ts @@ -1,4 +1,4 @@ -import {TS} from "../../../type/ts.js"; +import type {TS} from "../../../type/ts.js"; export type StatementTraversalStack = TS.SyntaxKind[]; diff --git a/src/interpreter/util/class/generate-class-declaration.ts b/src/interpreter/util/class/generate-class-declaration.ts index 28ffae6..9ff5c0f 100644 --- a/src/interpreter/util/class/generate-class-declaration.ts +++ b/src/interpreter/util/class/generate-class-declaration.ts @@ -1,4 +1,4 @@ -import {IGenerateClassDeclarationOptions} from "./i-generate-class-declaration-options.js"; +import type {IGenerateClassDeclarationOptions} from "./i-generate-class-declaration-options.js"; /** * A function that uses 'new Function' to auto-generate a class with a dynamic name and extended type diff --git a/src/interpreter/util/class/i-generate-class-declaration-options.ts b/src/interpreter/util/class/i-generate-class-declaration-options.ts index 00c15aa..ed0a335 100644 --- a/src/interpreter/util/class/i-generate-class-declaration-options.ts +++ b/src/interpreter/util/class/i-generate-class-declaration-options.ts @@ -1,4 +1,4 @@ -import {Literal} from "../../literal/literal.js"; +import type {Literal} from "../../literal/literal.js"; export interface IGenerateClassDeclarationOptions { name: string; diff --git a/src/interpreter/util/declaration/get-declaration-name.ts b/src/interpreter/util/declaration/get-declaration-name.ts index 67ac967..9d8654e 100644 --- a/src/interpreter/util/declaration/get-declaration-name.ts +++ b/src/interpreter/util/declaration/get-declaration-name.ts @@ -1,7 +1,7 @@ -import {EvaluatorOptions} from "../../evaluator/evaluator-options.js"; +import type {EvaluatorOptions} from "../../evaluator/evaluator-options.js"; import {UnexpectedNodeError} from "../../error/unexpected-node-error/unexpected-node-error.js"; -import {TS} from "../../../type/ts.js"; -import { EvaluationError } from "../../error/evaluation-error/evaluation-error.js"; +import type {TS} from "../../../type/ts.js"; +import type { EvaluationError } from "../../error/evaluation-error/evaluation-error.js"; /** * Gets the name of the given declaration diff --git a/src/interpreter/util/declaration/is-declaration.ts b/src/interpreter/util/declaration/is-declaration.ts index f305c91..9cbacb9 100644 --- a/src/interpreter/util/declaration/is-declaration.ts +++ b/src/interpreter/util/declaration/is-declaration.ts @@ -1,4 +1,4 @@ -import {TS} from "../../../type/ts.js"; +import type {TS} from "../../../type/ts.js"; /** * Returns true if the given Node is a Declaration diff --git a/src/interpreter/util/expression/expression-contains-super-keyword.ts b/src/interpreter/util/expression/expression-contains-super-keyword.ts index cd5dc1a..f11bc0f 100644 --- a/src/interpreter/util/expression/expression-contains-super-keyword.ts +++ b/src/interpreter/util/expression/expression-contains-super-keyword.ts @@ -1,5 +1,5 @@ import {isSuperExpression} from "../node/is-super-expression.js"; -import {TS} from "../../../type/ts.js"; +import type {TS} from "../../../type/ts.js"; /** * Returns true if the given expression contains a 'super' keyword diff --git a/src/interpreter/util/expression/is-expression.ts b/src/interpreter/util/expression/is-expression.ts index f47de82..c18a78f 100644 --- a/src/interpreter/util/expression/is-expression.ts +++ b/src/interpreter/util/expression/is-expression.ts @@ -1,4 +1,4 @@ -import {TS} from "../../../type/ts.js"; +import type {TS} from "../../../type/ts.js"; /** * Returns true if the given Node is an Expression. diff --git a/src/interpreter/util/flags/is-var-declaration.ts b/src/interpreter/util/flags/is-var-declaration.ts index 0f9f642..df052cf 100644 --- a/src/interpreter/util/flags/is-var-declaration.ts +++ b/src/interpreter/util/flags/is-var-declaration.ts @@ -1,4 +1,4 @@ -import {TS} from "../../../type/ts.js"; +import type {TS} from "../../../type/ts.js"; /** * Returns true if the given VariableDeclarationList is declared with a 'var' keyword diff --git a/src/interpreter/util/function/is-bind-call-apply.ts b/src/interpreter/util/function/is-bind-call-apply.ts index 9b55ed0..9d04462 100644 --- a/src/interpreter/util/function/is-bind-call-apply.ts +++ b/src/interpreter/util/function/is-bind-call-apply.ts @@ -1,4 +1,5 @@ -import {getFromLexicalEnvironment, LexicalEnvironment} from "../../lexical-environment/lexical-environment.js"; +import type { LexicalEnvironment} from "../../lexical-environment/lexical-environment.js"; +import {getFromLexicalEnvironment} from "../../lexical-environment/lexical-environment.js"; /** * Returns true if the given function is either Function.prototype.bind, Function.prototype.call, or Function.prototype.apply diff --git a/src/interpreter/util/iterable/is-iterable.ts b/src/interpreter/util/iterable/is-iterable.ts index a461164..e0e347b 100644 --- a/src/interpreter/util/iterable/is-iterable.ts +++ b/src/interpreter/util/iterable/is-iterable.ts @@ -1,4 +1,4 @@ -import {Literal} from "../../literal/literal.js"; +import type {Literal} from "../../literal/literal.js"; /** * Returns true if the given item is an Iterable diff --git a/src/interpreter/util/loader/optional-peer-dependency-loader.ts b/src/interpreter/util/loader/optional-peer-dependency-loader.ts index 1e91f69..7393d35 100644 --- a/src/interpreter/util/loader/optional-peer-dependency-loader.ts +++ b/src/interpreter/util/loader/optional-peer-dependency-loader.ts @@ -1,4 +1,4 @@ -import {JSDOM} from "../../../type/jsdom.js"; +import type {JSDOM} from "../../../type/jsdom.js"; import { requireModule } from "./require-module.js"; /** diff --git a/src/interpreter/util/modifier/has-modifier.ts b/src/interpreter/util/modifier/has-modifier.ts index 950e819..c79bb93 100644 --- a/src/interpreter/util/modifier/has-modifier.ts +++ b/src/interpreter/util/modifier/has-modifier.ts @@ -1,4 +1,4 @@ -import {TS} from "../../../type/ts.js"; +import type {TS} from "../../../type/ts.js"; /** * Returns true if the given Node has the given kind of Modifier diff --git a/src/interpreter/util/module/get-implementation-for-declaration-within-declaration-file.ts b/src/interpreter/util/module/get-implementation-for-declaration-within-declaration-file.ts index f5af4fb..e99147d 100644 --- a/src/interpreter/util/module/get-implementation-for-declaration-within-declaration-file.ts +++ b/src/interpreter/util/module/get-implementation-for-declaration-within-declaration-file.ts @@ -1,12 +1,12 @@ import {findNearestParentNodeOfKind} from "../node/find-nearest-parent-node-of-kind.js"; -import {Literal} from "../../literal/literal.js"; +import type {Literal} from "../../literal/literal.js"; import {ModuleNotFoundError} from "../../error/module-not-found-error/module-not-found-error.js"; import {UnexpectedNodeError} from "../../error/unexpected-node-error/unexpected-node-error.js"; -import {EvaluatorOptions} from "../../evaluator/evaluator-options.js"; +import type {EvaluatorOptions} from "../../evaluator/evaluator-options.js"; import {getDeclarationName} from "../declaration/get-declaration-name.js"; import {isEvaluationError} from "../../error/evaluation-error/evaluation-error.js"; import {getFromLexicalEnvironment} from "../../lexical-environment/lexical-environment.js"; -import {TS} from "../../../type/ts.js"; +import type {TS} from "../../../type/ts.js"; import {getResolvedModuleName} from "./get-resolved-module-name.js"; /** diff --git a/src/interpreter/util/module/get-module-name-for-node.ts b/src/interpreter/util/module/get-module-name-for-node.ts index eaccf2c..a484d37 100644 --- a/src/interpreter/util/module/get-module-name-for-node.ts +++ b/src/interpreter/util/module/get-module-name-for-node.ts @@ -1,5 +1,5 @@ import {findNearestParentNodeOfKind} from "../node/find-nearest-parent-node-of-kind.js"; -import {TS} from "../../../type/ts.js"; +import type {TS} from "../../../type/ts.js"; /** * Gets the name of the module that contains the given Node diff --git a/src/interpreter/util/module/get-resolved-module-name.ts b/src/interpreter/util/module/get-resolved-module-name.ts index ba1c89e..754ab4b 100644 --- a/src/interpreter/util/module/get-resolved-module-name.ts +++ b/src/interpreter/util/module/get-resolved-module-name.ts @@ -1,6 +1,6 @@ import path from "crosspath"; -import { TS } from "../../../type/ts.js"; -import { EvaluatorOptions } from "../../evaluator/evaluator-options.js"; +import type { TS } from "../../../type/ts.js"; +import type { EvaluatorOptions } from "../../evaluator/evaluator-options.js"; export function getResolvedModuleName (moduleSpecifier: string, options: EvaluatorOptions): string { const {node, typescript} = options; diff --git a/src/interpreter/util/node/find-nearest-parent-node-of-kind.ts b/src/interpreter/util/node/find-nearest-parent-node-of-kind.ts index e5622b7..7fb90a7 100644 --- a/src/interpreter/util/node/find-nearest-parent-node-of-kind.ts +++ b/src/interpreter/util/node/find-nearest-parent-node-of-kind.ts @@ -1,6 +1,6 @@ -import {TS} from "../../../type/ts.js"; -import {EvaluatorOptions} from "../../evaluator/evaluator-options.js"; -import {Literal} from "../../literal/literal.js"; +import type {TS} from "../../../type/ts.js"; +import type {EvaluatorOptions} from "../../evaluator/evaluator-options.js"; +import type {Literal} from "../../literal/literal.js"; import {isDeclaration, isNamedDeclaration} from "../declaration/is-declaration.js"; import {isVarDeclaration} from "../flags/is-var-declaration.js"; import {getImplementationFromExternalFile} from "../module/get-implementation-for-declaration-within-declaration-file.js"; diff --git a/src/interpreter/util/node/get-inner-node.ts b/src/interpreter/util/node/get-inner-node.ts index 0ad120a..7423b2d 100644 --- a/src/interpreter/util/node/get-inner-node.ts +++ b/src/interpreter/util/node/get-inner-node.ts @@ -1,4 +1,4 @@ -import {TS} from "../../../type/ts.js"; +import type {TS} from "../../../type/ts.js"; export function getInnerNode(node: TS.Node, typescript: typeof TS): T { if (typescript.isParenthesizedExpression(node)) return getInnerNode(node.expression, typescript); diff --git a/src/interpreter/util/node/is-boolean-literal.ts b/src/interpreter/util/node/is-boolean-literal.ts index 0585663..3f0e243 100644 --- a/src/interpreter/util/node/is-boolean-literal.ts +++ b/src/interpreter/util/node/is-boolean-literal.ts @@ -1,4 +1,4 @@ -import {TS} from "../../../type/ts.js"; +import type {TS} from "../../../type/ts.js"; /** * Returns true if the given node is a BooleanLiteral diff --git a/src/interpreter/util/node/is-node.ts b/src/interpreter/util/node/is-node.ts index f4b0572..c18fcc1 100644 --- a/src/interpreter/util/node/is-node.ts +++ b/src/interpreter/util/node/is-node.ts @@ -1,4 +1,4 @@ -import { TS } from "../../../type/ts"; +import type { TS } from "../../../type/ts.js"; export function isTypescriptNode(node: T|unknown): node is T { return node != null && typeof node === "object" && "kind" in node && "flags" in node && "pos" in node && "end" in node; diff --git a/src/interpreter/util/node/is-null-literal.ts b/src/interpreter/util/node/is-null-literal.ts index e153ea2..c58b1bd 100644 --- a/src/interpreter/util/node/is-null-literal.ts +++ b/src/interpreter/util/node/is-null-literal.ts @@ -1,4 +1,4 @@ -import {TS} from "../../../type/ts.js"; +import type {TS} from "../../../type/ts.js"; /** * Returns true if the given node is a NullLiteral diff --git a/src/interpreter/util/node/is-super-expression.ts b/src/interpreter/util/node/is-super-expression.ts index e958da5..b1d3f61 100644 --- a/src/interpreter/util/node/is-super-expression.ts +++ b/src/interpreter/util/node/is-super-expression.ts @@ -1,4 +1,4 @@ -import {TS} from "../../../type/ts.js"; +import type {TS} from "../../../type/ts.js"; /** * Returns true if the given node is a SuperExpression diff --git a/src/interpreter/util/node/is-this-expression.ts b/src/interpreter/util/node/is-this-expression.ts index 2ada00e..acff37f 100644 --- a/src/interpreter/util/node/is-this-expression.ts +++ b/src/interpreter/util/node/is-this-expression.ts @@ -1,4 +1,4 @@ -import {TS} from "../../../type/ts.js"; +import type {TS} from "../../../type/ts.js"; /** * Returns true if the given node is a ThisExpression diff --git a/src/interpreter/util/node/modifier-util.ts b/src/interpreter/util/node/modifier-util.ts index 3c3bb70..59ca94d 100644 --- a/src/interpreter/util/node/modifier-util.ts +++ b/src/interpreter/util/node/modifier-util.ts @@ -1,34 +1,33 @@ -import { TS } from "../../../type/ts"; +import type {TS} from "../../../type/ts.js"; export function canHaveModifiers(node: TS.Node, typescript: typeof TS): node is TS.HasModifiers { - if ("canHaveModifiers" in typescript) { - return typescript.canHaveModifiers(node); - } else { - return true; - } + if ("canHaveModifiers" in typescript) { + return typescript.canHaveModifiers(node); + } else { + return true; + } } export function getModifiers(node: TS.HasModifiers, typescript: typeof TS): readonly TS.Modifier[] | undefined { - if ("getModifiers" in typescript) { - return typescript.getModifiers(node); - } else { - return node.modifiers?.filter(modifier => !("expression" in modifier)) as readonly TS.Modifier[] | undefined; - } + if ("getModifiers" in typescript) { + return typescript.getModifiers(node); + } else { + return node.modifiers?.filter(modifier => !("expression" in modifier)) as readonly TS.Modifier[] | undefined; + } } export function canHaveDecorators(node: TS.Node, typescript: typeof TS): node is TS.HasDecorators { - if ("canHaveDecorators" in typescript) { - return typescript.canHaveDecorators(node); - } else { - return true; - } + if ("canHaveDecorators" in typescript) { + return typescript.canHaveDecorators(node); + } else { + return true; + } } export function getDecorators(node: TS.HasDecorators, typescript: typeof TS): readonly TS.Decorator[] | undefined { - if ("getDecorators" in typescript) { - return typescript.getDecorators(node); - } else { - - const legacyDecorators = "decorators" in node && Array.isArray(node.decorators) ? node.decorators : undefined; - const decoratorModifierLikes = node.modifiers?.filter(modifier => ("expression" in modifier)) as readonly TS.Decorator[] | undefined; - return [...(legacyDecorators ?? []), ...(decoratorModifierLikes ?? [])]; - } -} \ No newline at end of file + if ("getDecorators" in typescript) { + return typescript.getDecorators(node); + } else { + const legacyDecorators = "decorators" in node && Array.isArray(node.decorators) ? node.decorators : undefined; + const decoratorModifierLikes = node.modifiers?.filter(modifier => "expression" in modifier) as readonly TS.Decorator[] | undefined; + return [...(legacyDecorators ?? []), ...(decoratorModifierLikes ?? [])]; + } +} diff --git a/src/interpreter/util/reporting/report-error.ts b/src/interpreter/util/reporting/report-error.ts index a91c965..f2797ca 100644 --- a/src/interpreter/util/reporting/report-error.ts +++ b/src/interpreter/util/reporting/report-error.ts @@ -1,6 +1,6 @@ -import {ReportingOptionsSanitized} from "../../reporting/i-reporting-options.js"; +import type {ReportingOptionsSanitized} from "../../reporting/i-reporting-options.js"; import {EvaluationError} from "../../error/evaluation-error/evaluation-error.js"; -import {TS} from "../../../type/ts.js"; +import type {TS} from "../../../type/ts.js"; /** * Reports an error diff --git a/src/interpreter/util/statement/is-statement.ts b/src/interpreter/util/statement/is-statement.ts index 69a8440..946f9b4 100644 --- a/src/interpreter/util/statement/is-statement.ts +++ b/src/interpreter/util/statement/is-statement.ts @@ -1,4 +1,4 @@ -import {TS} from "../../../type/ts.js"; +import type {TS} from "../../../type/ts.js"; /** * Returns true if the given Node is a Statement diff --git a/src/interpreter/util/static/in-static-context.ts b/src/interpreter/util/static/in-static-context.ts index eb37821..008fd0e 100644 --- a/src/interpreter/util/static/in-static-context.ts +++ b/src/interpreter/util/static/in-static-context.ts @@ -1,5 +1,5 @@ import {hasModifier} from "../modifier/has-modifier.js"; -import {TS} from "../../../type/ts.js"; +import type {TS} from "../../../type/ts.js"; /** * Returns true if the given Node exists within a static context @@ -7,7 +7,7 @@ import {TS} from "../../../type/ts.js"; export function inStaticContext(node: TS.Node, typescript: typeof TS): boolean { let currentNode = node; while (currentNode != null && !typescript.isSourceFile(currentNode)) { - if (hasModifier(currentNode, typescript.SyntaxKind.StaticKeyword, typescript)) return true; + if (hasModifier(currentNode, typescript.SyntaxKind.StaticKeyword)) return true; currentNode = currentNode.parent; } return false; diff --git a/src/interpreter/util/syntax-kind/stringify-syntax-kind.ts b/src/interpreter/util/syntax-kind/stringify-syntax-kind.ts index b2f3575..6a33ea2 100644 --- a/src/interpreter/util/syntax-kind/stringify-syntax-kind.ts +++ b/src/interpreter/util/syntax-kind/stringify-syntax-kind.ts @@ -1,4 +1,4 @@ -import {TS} from "../../../type/ts.js"; +import type {TS} from "../../../type/ts.js"; /** * Stringifies the given SyntaxKind diff --git a/src/type/file-system.ts b/src/type/file-system.ts index 4bd5658..d99769b 100644 --- a/src/type/file-system.ts +++ b/src/type/file-system.ts @@ -1,4 +1,4 @@ -import * as fs from "fs"; +import type * as fs from "fs"; export type ReadonlyFileSystem = Pick; diff --git a/src/type/jsdom.ts b/src/type/jsdom.ts index 57efcd8..f88d6af 100644 --- a/src/type/jsdom.ts +++ b/src/type/jsdom.ts @@ -1,2 +1,2 @@ import type * as JSDOM from "jsdom"; -export {JSDOM}; +export type {JSDOM}; diff --git a/test/array-binding-pattern/array-binding-pattern.test.ts b/test/array-binding-pattern/array-binding-pattern.test.ts index 052b695..8c42073 100644 --- a/test/array-binding-pattern/array-binding-pattern.test.ts +++ b/test/array-binding-pattern/array-binding-pattern.test.ts @@ -1,8 +1,7 @@ -import test from "ava"; +import {test} from "../setup/test-runner.js"; import {executeProgram} from "../setup/execute-program.js"; -import {withTypeScript} from "../setup/ts-macro.js"; -test("Can handle ArrayBindingPatterns in VariableDeclarations. #1", withTypeScript, (t, {typescript, useTypeChecker}) => { +test("Can handle ArrayBindingPatterns in VariableDeclarations. #1", "*", (t, {typescript, useTypeChecker}) => { const {result} = executeProgram( // language=TypeScript ` @@ -19,7 +18,7 @@ test("Can handle ArrayBindingPatterns in VariableDeclarations. #1", withTypeScri else t.deepEqual(result.value, 2); }); -test("Can handle ArrayBindingPatterns in VariableDeclarations. #2", withTypeScript, (t, {typescript, useTypeChecker}) => { +test("Can handle ArrayBindingPatterns in VariableDeclarations. #2", "*", (t, {typescript, useTypeChecker}) => { const {result} = executeProgram( // language=TypeScript ` @@ -36,7 +35,7 @@ test("Can handle ArrayBindingPatterns in VariableDeclarations. #2", withTypeScri else t.deepEqual(result.value, 2); }); -test("Can handle ArrayBindingPatterns in VariableDeclarations. #3", withTypeScript, (t, {typescript, useTypeChecker}) => { +test("Can handle ArrayBindingPatterns in VariableDeclarations. #3", "*", (t, {typescript, useTypeChecker}) => { const {result} = executeProgram( // language=TypeScript ` @@ -53,7 +52,7 @@ test("Can handle ArrayBindingPatterns in VariableDeclarations. #3", withTypeScri else t.deepEqual(result.value, 2); }); -test("Can handle ArrayBindingPatterns in ParameterDeclarations. #1", withTypeScript, (t, {typescript, useTypeChecker}) => { +test("Can handle ArrayBindingPatterns in ParameterDeclarations. #1", "*", (t, {typescript, useTypeChecker}) => { const {result} = executeProgram( // language=TypeScript ` diff --git a/test/array-literal-expression/array-literal-expression.test.ts b/test/array-literal-expression/array-literal-expression.test.ts index e8ea636..360baa7 100644 --- a/test/array-literal-expression/array-literal-expression.test.ts +++ b/test/array-literal-expression/array-literal-expression.test.ts @@ -1,8 +1,7 @@ -import test from "ava"; +import {test} from "../setup/test-runner.js"; import {executeProgram} from "../setup/execute-program.js"; -import {withTypeScript} from "../setup/ts-macro.js"; -test("Can handle ArrayLiteralExpressions. #1", withTypeScript, (t, {typescript, useTypeChecker}) => { +test("Can handle ArrayLiteralExpressions. #1", "*", (t, {typescript, useTypeChecker}) => { const {result} = executeProgram( // language=TypeScript ` diff --git a/test/assignments/assignments.test.ts b/test/assignments/assignments.test.ts index da0b610..697f104 100644 --- a/test/assignments/assignments.test.ts +++ b/test/assignments/assignments.test.ts @@ -1,8 +1,7 @@ -import test from "ava"; +import {test} from "../setup/test-runner.js"; import {executeProgram} from "../setup/execute-program.js"; -import {withTypeScript} from "../setup/ts-macro.js"; -test("Can evaluate a CallExpression for a function with variable assignments. #1", withTypeScript, (t, {typescript, useTypeChecker}) => { +test("Can evaluate a CallExpression for a function with variable assignments. #1", "*", (t, {typescript, useTypeChecker}) => { const {result} = executeProgram( // language=TypeScript ` @@ -22,7 +21,7 @@ test("Can evaluate a CallExpression for a function with variable assignments. #1 else t.deepEqual(result.value, 4); }); -test("Can evaluate a CallExpression for a function with variable assignments. #2", withTypeScript, (t, {typescript, useTypeChecker}) => { +test("Can evaluate a CallExpression for a function with variable assignments. #2", "*", (t, {typescript, useTypeChecker}) => { const {result} = executeProgram( ` const mapOfMaps: Map> = new Map(); diff --git a/test/await-expression/await-expression.test.ts b/test/await-expression/await-expression.test.ts index 72e09bf..fe66be4 100644 --- a/test/await-expression/await-expression.test.ts +++ b/test/await-expression/await-expression.test.ts @@ -1,8 +1,7 @@ -import test from "ava"; +import {test} from "../setup/test-runner.js"; import {executeProgram} from "../setup/execute-program.js"; -import {withTypeScript} from "../setup/ts-macro.js"; -test("Can evaluate an AwaitExpression #1", withTypeScript, async (t, {typescript, useTypeChecker}) => { +test("Can evaluate an AwaitExpression #1", "*", async (t, {typescript, useTypeChecker}) => { const {result} = executeProgram( // language=TypeScript ` diff --git a/test/binary-expression/binary-expression.test.ts b/test/binary-expression/binary-expression.test.ts index f470e52..51aef33 100644 --- a/test/binary-expression/binary-expression.test.ts +++ b/test/binary-expression/binary-expression.test.ts @@ -1,64 +1,63 @@ -import test from "ava"; +import {test} from "../setup/test-runner.js"; import {executeProgram} from "../setup/execute-program.js"; -import {withTypeScript, withTypeScriptVersions} from "../setup/ts-macro.js"; -test("Can evaluate a simple arithmetic BinaryExpression #1", withTypeScript, (t, {typescript, useTypeChecker}) => { +test("Can evaluate a simple arithmetic BinaryExpression #1", "*", (t, {typescript, useTypeChecker}) => { const {result} = executeProgram(`2 + 2`, {typescript, useTypeChecker}); if (!result.success) t.fail(result.reason.stack); else t.deepEqual(result.value, 4); }); -test("Can evaluate a simple arithmetic BinaryExpression #2", withTypeScript, (t, {typescript, useTypeChecker}) => { +test("Can evaluate a simple arithmetic BinaryExpression #2", "*", (t, {typescript, useTypeChecker}) => { const {result} = executeProgram(`2 - 2`, {typescript, useTypeChecker}); if (!result.success) t.fail(result.reason.stack); else t.deepEqual(result.value, 0); }); -test("Can evaluate a simple arithmetic BinaryExpression #3", withTypeScript, (t, {typescript, useTypeChecker}) => { +test("Can evaluate a simple arithmetic BinaryExpression #3", "*", (t, {typescript, useTypeChecker}) => { const {result} = executeProgram(`2 * 2`, {typescript, useTypeChecker}); if (!result.success) t.fail(result.reason.stack); else t.deepEqual(result.value, 4); }); -test("Can evaluate a simple arithmetic BinaryExpression #4", withTypeScript, (t, {typescript, useTypeChecker}) => { +test("Can evaluate a simple arithmetic BinaryExpression #4", "*", (t, {typescript, useTypeChecker}) => { const {result} = executeProgram(`2 / 2`, {typescript, useTypeChecker}); if (!result.success) t.fail(result.reason.stack); else t.deepEqual(result.value, 1); }); -test("Can evaluate a simple arithmetic BinaryExpression #5", withTypeScript, (t, {typescript, useTypeChecker}) => { +test("Can evaluate a simple arithmetic BinaryExpression #5", "*", (t, {typescript, useTypeChecker}) => { const {result} = executeProgram(`1 + 2 * 3`, {typescript, useTypeChecker}); if (!result.success) t.fail(result.reason.stack); else t.deepEqual(result.value, 7); }); -test("Can evaluate a simple arithmetic BinaryExpression #6", withTypeScript, (t, {typescript, useTypeChecker}) => { +test("Can evaluate a simple arithmetic BinaryExpression #6", "*", (t, {typescript, useTypeChecker}) => { const {result} = executeProgram(`(1 + 2) * 3`, {typescript, useTypeChecker}); if (!result.success) t.fail(result.reason.stack); else t.deepEqual(result.value, 9); }); -test("Can evaluate a simple arithmetic BinaryExpression with type casts #1", withTypeScript, (t, {typescript, useTypeChecker}) => { +test("Can evaluate a simple arithmetic BinaryExpression with type casts #1", "*", (t, {typescript, useTypeChecker}) => { const {result} = executeProgram(`((1) + 2) * 3`, {typescript, useTypeChecker}); if (!result.success) t.fail(result.reason.stack); else t.deepEqual(result.value, 9); }); -test("Can evaluate a simple arithmetic BinaryExpression with type casts #2", withTypeScript, (t, {typescript, useTypeChecker}) => { +test("Can evaluate a simple arithmetic BinaryExpression with type casts #2", "*", (t, {typescript, useTypeChecker}) => { const {result} = executeProgram(`((1 as number) + 2) * 3`, {typescript, useTypeChecker}); if (!result.success) t.fail(result.reason.stack); else t.deepEqual(result.value, 9); }); -test("Can evaluate equality BinaryExpressions #1", withTypeScript, (t, {typescript, useTypeChecker}) => { +test("Can evaluate equality BinaryExpressions #1", "*", (t, {typescript, useTypeChecker}) => { const {result} = executeProgram( // language=TypeScript ` @@ -77,7 +76,7 @@ test("Can evaluate equality BinaryExpressions #1", withTypeScript, (t, {typescri else t.deepEqual(result.value, Number.MIN_VALUE); }); -test("Can evaluate BinaryExpressions with CommaTokens #1", withTypeScript, (t, {typescript, useTypeChecker}) => { +test("Can evaluate BinaryExpressions with CommaTokens #1", "*", (t, {typescript, useTypeChecker}) => { // noinspection UnnecessaryLocalVariableJS const {result} = executeProgram( // language=TypeScript @@ -97,7 +96,7 @@ test("Can evaluate BinaryExpressions with CommaTokens #1", withTypeScript, (t, { else t.deepEqual(result.value, 2); }); -test("Can evaluate a BinaryExpression with an InstanceOf keyword #1", withTypeScript, (t, {typescript, useTypeChecker}) => { +test("Can evaluate a BinaryExpression with an InstanceOf keyword #1", "*", (t, {typescript, useTypeChecker}) => { const {result} = executeProgram( // language=TypeScript ` @@ -115,7 +114,7 @@ test("Can evaluate a BinaryExpression with an InstanceOf keyword #1", withTypeSc else t.deepEqual(result.value, true); }); -test("Can evaluate a BinaryExpression with an InstanceOf keyword #2", withTypeScript, (t, {typescript, useTypeChecker}) => { +test("Can evaluate a BinaryExpression with an InstanceOf keyword #2", "*", (t, {typescript, useTypeChecker}) => { const {result} = executeProgram( // language=TypeScript ` @@ -134,7 +133,7 @@ test("Can evaluate a BinaryExpression with an InstanceOf keyword #2", withTypeSc else t.deepEqual(result.value, "foo"); }); -test("Can evaluate a BinaryExpression with an InstanceOf keyword #3", withTypeScript, (t, {typescript, useTypeChecker}) => { +test("Can evaluate a BinaryExpression with an InstanceOf keyword #3", "*", (t, {typescript, useTypeChecker}) => { const {result} = executeProgram( // language=TypeScript ` @@ -151,7 +150,7 @@ test("Can evaluate a BinaryExpression with an InstanceOf keyword #3", withTypeSc else t.deepEqual(result.value, true); }); -test("Can evaluate a BinaryExpression with an InstanceOf keyword #4", withTypeScript, (t, {typescript, useTypeChecker}) => { +test("Can evaluate a BinaryExpression with an InstanceOf keyword #4", "*", (t, {typescript, useTypeChecker}) => { const {result} = executeProgram( // language=TypeScript ` @@ -168,7 +167,7 @@ test("Can evaluate a BinaryExpression with an InstanceOf keyword #4", withTypeSc else t.deepEqual(result.value, true); }); -test("Can evaluate a BinaryExpression with an InstanceOf keyword #5", withTypeScript, (t, {typescript, useTypeChecker}) => { +test("Can evaluate a BinaryExpression with an InstanceOf keyword #5", "*", (t, {typescript, useTypeChecker}) => { const {result} = executeProgram( // language=TypeScript ` @@ -186,7 +185,7 @@ test("Can evaluate a BinaryExpression with an InstanceOf keyword #5", withTypeSc else t.deepEqual(result.value, true); }); -test("Can evaluate a BinaryExpression with an InstanceOf keyword #6", withTypeScript, (t, {typescript, useTypeChecker}) => { +test("Can evaluate a BinaryExpression with an InstanceOf keyword #6", "*", (t, {typescript, useTypeChecker}) => { /* eslint-disable no-useless-escape */ const {result} = executeProgram( // language=TypeScript @@ -205,7 +204,7 @@ test("Can evaluate a BinaryExpression with an InstanceOf keyword #6", withTypeSc else t.deepEqual(result.value, true); }); -test("Can evaluate a BinaryExpression with an InstanceOf keyword #7", withTypeScript, (t, {typescript, useTypeChecker}) => { +test("Can evaluate a BinaryExpression with an InstanceOf keyword #7", "*", (t, {typescript, useTypeChecker}) => { const {result} = executeProgram( // language=TypeScript ` @@ -225,28 +224,28 @@ test("Can evaluate a BinaryExpression with an InstanceOf keyword #7", withTypeSc else t.deepEqual(result.value, true); }); -test("Can evaluate a BinaryExpression with a BigInt #1", withTypeScriptVersions(">=3.2"), (t, {typescript, useTypeChecker}) => { +test("Can evaluate a BinaryExpression with a BigInt #1", ">=3.2", (t, {typescript, useTypeChecker}) => { const {result} = executeProgram(`123456789123456789123456789n + 123456789123456789123456789n`, {typescript, useTypeChecker}); if (!result.success) t.fail(result.reason.stack); else t.deepEqual(result.value, BigInt("246913578246913578246913578")); }); -test("Can evaluate a BinaryExpression with an InKeyword #1", withTypeScript, (t, {typescript, useTypeChecker}) => { +test("Can evaluate a BinaryExpression with an InKeyword #1", "*", (t, {typescript, useTypeChecker}) => { const {result} = executeProgram(`"foo" in {}`, {typescript, useTypeChecker}); if (!result.success) t.fail(result.reason.stack); else t.deepEqual(result.value, false); }); -test("Can evaluate a BinaryExpression with an InKeyword #2", withTypeScript, (t, {typescript, useTypeChecker}) => { +test("Can evaluate a BinaryExpression with an InKeyword #2", "*", (t, {typescript, useTypeChecker}) => { const {result} = executeProgram(`"foo" in {foo: 123}`, {typescript, useTypeChecker}); if (!result.success) t.fail(result.reason.stack); else t.deepEqual(result.value, true); }); -test("Can evaluate a BinaryExpression with an InKeyword #3", withTypeScript, (t, {typescript, useTypeChecker}) => { +test("Can evaluate a BinaryExpression with an InKeyword #3", "*", (t, {typescript, useTypeChecker}) => { const {result} = executeProgram(`"foo" in 42`, {typescript, useTypeChecker}); if (result.success) t.fail("Expected the evaluation to fail"); diff --git a/test/call-expression/call-bind-apply.test.ts b/test/call-expression/call-bind-apply.test.ts index e77c627..9f10aa4 100644 --- a/test/call-expression/call-bind-apply.test.ts +++ b/test/call-expression/call-bind-apply.test.ts @@ -1,8 +1,7 @@ -import test from "ava"; +import {test} from "../setup/test-runner.js"; import {executeProgram} from "../setup/execute-program.js"; -import {withTypeScript} from "../setup/ts-macro.js"; -test("Can evaluate a CallExpression that is called with another 'this' value. #1", withTypeScript, (t, {typescript, useTypeChecker}) => { +test("Can evaluate a CallExpression that is called with another 'this' value. #1", "*", (t, {typescript, useTypeChecker}) => { const {result} = executeProgram( // language=TypeScript ` @@ -24,7 +23,7 @@ test("Can evaluate a CallExpression that is called with another 'this' value. #1 else t.deepEqual(result.value, 4); }); -test("Can evaluate a CallExpression that is called with another 'this' value. #2", withTypeScript, (t, {typescript, useTypeChecker}) => { +test("Can evaluate a CallExpression that is called with another 'this' value. #2", "*", (t, {typescript, useTypeChecker}) => { const {result} = executeProgram( // language=TypeScript ` @@ -46,7 +45,7 @@ test("Can evaluate a CallExpression that is called with another 'this' value. #2 else t.deepEqual(result.value, 4); }); -test("Can evaluate a CallExpression that is called with another 'this' value. #3", withTypeScript, (t, {typescript, useTypeChecker}) => { +test("Can evaluate a CallExpression that is called with another 'this' value. #3", "*", (t, {typescript, useTypeChecker}) => { const {result} = executeProgram( // language=TypeScript ` diff --git a/test/class-declaration/class-declaration.test.ts b/test/class-declaration/class-declaration.test.ts index 61e97e2..ae4e80f 100644 --- a/test/class-declaration/class-declaration.test.ts +++ b/test/class-declaration/class-declaration.test.ts @@ -1,8 +1,7 @@ -import test from "ava"; +import {test} from "../setup/test-runner.js"; import {executeProgram} from "../setup/execute-program.js"; -import {withTypeScript, withTypeScriptVersions} from "../setup/ts-macro.js"; -test("Can handle ClassDeclarations and preserves their names. #1", withTypeScript, (t, {typescript, useTypeChecker}) => { +test("Can handle ClassDeclarations and preserves their names. #1", "*", (t, {typescript, useTypeChecker}) => { const {result} = executeProgram( // language=TypeScript ` @@ -21,7 +20,7 @@ test("Can handle ClassDeclarations and preserves their names. #1", withTypeScrip } }); -test("Can handle ClassDeclarations that extends from other named classes. #1", withTypeScript, (t, {typescript, useTypeChecker}) => { +test("Can handle ClassDeclarations that extends from other named classes. #1", "*", (t, {typescript, useTypeChecker}) => { const {result} = executeProgram( // language=TypeScript ` @@ -45,7 +44,7 @@ test("Can handle ClassDeclarations that extends from other named classes. #1", w } }); -test("Can handle ClassDeclarations that extends from Expressions. #1", withTypeScript, (t, {typescript, useTypeChecker}) => { +test("Can handle ClassDeclarations that extends from Expressions. #1", "*", (t, {typescript, useTypeChecker}) => { const {result} = executeProgram( // language=TypeScript ` @@ -69,7 +68,7 @@ test("Can handle ClassDeclarations that extends from Expressions. #1", withTypeS } }); -test("Can handle ClassDeclarations and preserves their constructors. #1", withTypeScript, (t, {typescript, useTypeChecker}) => { +test("Can handle ClassDeclarations and preserves their constructors. #1", "*", (t, {typescript, useTypeChecker}) => { const {result} = executeProgram( // language=TypeScript ` @@ -95,7 +94,7 @@ test("Can handle ClassDeclarations and preserves their constructors. #1", withTy } }); -test("Can handle ClassDeclarations and preserves their constructors. #2", withTypeScriptVersions(">=3.8"), (t, {typescript, useTypeChecker}) => { +test("Can handle ClassDeclarations and preserves their constructors. #2", ">=3.8", (t, {typescript, useTypeChecker}) => { const {result} = executeProgram( // language=TypeScript ` @@ -125,7 +124,7 @@ test("Can handle ClassDeclarations and preserves their constructors. #2", withTy } }); -test("Inherits PropertyDeclarations from super classes. #1", withTypeScript, (t, {typescript, useTypeChecker}) => { +test("Inherits PropertyDeclarations from super classes. #1", "*", (t, {typescript, useTypeChecker}) => { const {result} = executeProgram( // language=TypeScript ` @@ -151,7 +150,7 @@ test("Inherits PropertyDeclarations from super classes. #1", withTypeScript, (t, } }); -test("Inherits PropertyDeclarations from super classes. #2", withTypeScript, (t, {typescript, useTypeChecker}) => { +test("Inherits PropertyDeclarations from super classes. #2", "*", (t, {typescript, useTypeChecker}) => { const {result} = executeProgram( // language=TypeScript ` @@ -182,7 +181,7 @@ test("Inherits PropertyDeclarations from super classes. #2", withTypeScript, (t, } }); -test("Inherits PropertyDeclarations from super classes. #3", withTypeScript, (t, {typescript, useTypeChecker}) => { +test("Inherits PropertyDeclarations from super classes. #3", "*", (t, {typescript, useTypeChecker}) => { const {result} = executeProgram( // language=TypeScript ` @@ -220,7 +219,7 @@ test("Inherits PropertyDeclarations from super classes. #3", withTypeScript, (t, } }); -test("Can handle GetAccessorDeclarations. #1", withTypeScript, (t, {typescript, useTypeChecker}) => { +test("Can handle GetAccessorDeclarations. #1", "*", (t, {typescript, useTypeChecker}) => { const {result} = executeProgram( // language=TypeScript ` @@ -245,7 +244,7 @@ test("Can handle GetAccessorDeclarations. #1", withTypeScript, (t, {typescript, } }); -test("Can handle SetAccessorDeclarations. #1", withTypeScript, (t, {typescript, useTypeChecker}) => { +test("Can handle SetAccessorDeclarations. #1", "*", (t, {typescript, useTypeChecker}) => { const {result} = executeProgram( // language=TypeScript ` @@ -275,7 +274,7 @@ test("Can handle SetAccessorDeclarations. #1", withTypeScript, (t, {typescript, } }); -test("Can handle instance properties set via Constructor arguments. #1", withTypeScript, (t, {typescript, useTypeChecker}) => { +test("Can handle instance properties set via Constructor arguments. #1", "*", (t, {typescript, useTypeChecker}) => { const {result} = executeProgram( // language=TypeScript ` diff --git a/test/class-expression/class-expression.test.ts b/test/class-expression/class-expression.test.ts index 78aa18c..2378c94 100644 --- a/test/class-expression/class-expression.test.ts +++ b/test/class-expression/class-expression.test.ts @@ -1,8 +1,7 @@ -import test from "ava"; +import {test} from "../setup/test-runner.js"; import {executeProgram} from "../setup/execute-program.js"; -import {withTypeScript} from "../setup/ts-macro.js"; -test("Can handle ClassExpressions. #1", withTypeScript, (t, {typescript, useTypeChecker}) => { +test("Can handle ClassExpressions. #1", "*", (t, {typescript, useTypeChecker}) => { const {result} = executeProgram( // language=TypeScript ` @@ -19,7 +18,7 @@ test("Can handle ClassExpressions. #1", withTypeScript, (t, {typescript, useType } }); -test("Can handle ClassExpressions that extends from other named classes. #1", withTypeScript, (t, {typescript, useTypeChecker}) => { +test("Can handle ClassExpressions that extends from other named classes. #1", "*", (t, {typescript, useTypeChecker}) => { const {result} = executeProgram( // language=TypeScript ` diff --git a/test/conditional-expression/conditional-expression.test.ts b/test/conditional-expression/conditional-expression.test.ts index e7bb8ed..33b0573 100644 --- a/test/conditional-expression/conditional-expression.test.ts +++ b/test/conditional-expression/conditional-expression.test.ts @@ -1,8 +1,7 @@ -import test from "ava"; +import {test} from "../setup/test-runner.js"; import {executeProgram} from "../setup/execute-program.js"; -import {withTypeScript} from "../setup/ts-macro.js"; -test("Can handle ConditionalExpressions. #1", withTypeScript, (t, {typescript, useTypeChecker}) => { +test("Can handle ConditionalExpressions. #1", "*", (t, {typescript, useTypeChecker}) => { // noinspection BadExpressionStatementJS const {result} = executeProgram( // language=TypeScript @@ -20,7 +19,7 @@ test("Can handle ConditionalExpressions. #1", withTypeScript, (t, {typescript, u } }); -test("Can handle ConditionalExpressions. #2", withTypeScript, (t, {typescript, useTypeChecker}) => { +test("Can handle ConditionalExpressions. #2", "*", (t, {typescript, useTypeChecker}) => { // noinspection BadExpressionStatementJS const {result} = executeProgram( // language=TypeScript diff --git a/test/decorator/decorator.test.ts b/test/decorator/decorator.test.ts index edfdacc..a8dadf6 100644 --- a/test/decorator/decorator.test.ts +++ b/test/decorator/decorator.test.ts @@ -1,9 +1,9 @@ -import test from "ava"; +import {test} from "../setup/test-runner.js"; import {executeProgram} from "../setup/execute-program.js"; -import {withTypeScript} from "../setup/ts-macro.js"; -import {IndexLiteral} from "../../src/interpreter/literal/literal.js"; -test("Can handle Class Decorators. #1", withTypeScript, (t, {typescript, useTypeChecker}) => { +import type {IndexLiteral} from "../../src/interpreter/literal/literal.js"; + +test("Can handle Class Decorators. #1", "*", (t, {typescript, useTypeChecker}) => { const {result} = executeProgram( // language=TypeScript ` @@ -30,7 +30,7 @@ test("Can handle Class Decorators. #1", withTypeScript, (t, {typescript, useType } }); -test("Can handle multiple Class Decorators. #1", withTypeScript, (t, {typescript, useTypeChecker}) => { +test("Can handle multiple Class Decorators. #1", "*", (t, {typescript, useTypeChecker}) => { const {result} = executeProgram( // language=TypeScript ` @@ -65,7 +65,7 @@ test("Can handle multiple Class Decorators. #1", withTypeScript, (t, {typescript } }); -test("Can handle instance Method Decorators. #1", withTypeScript, (t, {typescript, useTypeChecker}) => { +test("Can handle instance Method Decorators. #1", "*", (t, {typescript, useTypeChecker}) => { const {result} = executeProgram( // language=TypeScript ` @@ -99,7 +99,7 @@ test("Can handle instance Method Decorators. #1", withTypeScript, (t, {typescrip } }); -test("Can handle static Method Decorators. #1", withTypeScript, (t, {typescript, useTypeChecker}) => { +test("Can handle static Method Decorators. #1", "*", (t, {typescript, useTypeChecker}) => { const {result} = executeProgram( // language=TypeScript ` @@ -133,7 +133,7 @@ test("Can handle static Method Decorators. #1", withTypeScript, (t, {typescript, } }); -test("Can handle instance PropertyDeclaration Decorators. #1", withTypeScript, (t, {typescript, useTypeChecker}) => { +test("Can handle instance PropertyDeclaration Decorators. #1", "*", (t, {typescript, useTypeChecker}) => { const {result} = executeProgram( // language=TypeScript ` @@ -158,7 +158,7 @@ test("Can handle instance PropertyDeclaration Decorators. #1", withTypeScript, ( } }); -test("Can handle static PropertyDeclaration Decorators. #1", withTypeScript, (t, {typescript, useTypeChecker}) => { +test("Can handle static PropertyDeclaration Decorators. #1", "*", (t, {typescript, useTypeChecker}) => { const {result} = executeProgram( // language=TypeScript ` @@ -182,7 +182,7 @@ test("Can handle static PropertyDeclaration Decorators. #1", withTypeScript, (t, } }); -test("Can handle Parameter Decorators. #1", withTypeScript, (t, {typescript, useTypeChecker}) => { +test("Can handle Parameter Decorators. #1", "*", (t, {typescript, useTypeChecker}) => { const {result} = executeProgram( // language=TypeScript ` diff --git a/test/enum-declaration/enum-declaration.test.ts b/test/enum-declaration/enum-declaration.test.ts index 24d3830..b1efb75 100644 --- a/test/enum-declaration/enum-declaration.test.ts +++ b/test/enum-declaration/enum-declaration.test.ts @@ -1,8 +1,7 @@ -import test from "ava"; +import {test} from "../setup/test-runner.js"; import {executeProgram} from "../setup/execute-program.js"; -import {withTypeScript} from "../setup/ts-macro.js"; -test("Can handle EnumDeclarations. #1", withTypeScript, (t, {typescript, useTypeChecker}) => { +test("Can handle EnumDeclarations. #1", "*", (t, {typescript, useTypeChecker}) => { const {result} = executeProgram( // language=TypeScript ` @@ -27,7 +26,7 @@ test("Can handle EnumDeclarations. #1", withTypeScript, (t, {typescript, useType } }); -test("Can handle EnumDeclarations. #2", withTypeScript, (t, {typescript, useTypeChecker}) => { +test("Can handle EnumDeclarations. #2", "*", (t, {typescript, useTypeChecker}) => { const {result} = executeProgram( // language=TypeScript ` @@ -52,7 +51,7 @@ test("Can handle EnumDeclarations. #2", withTypeScript, (t, {typescript, useType } }); -test("Can handle EnumDeclarations. #3", withTypeScript, (t, {typescript, useTypeChecker}) => { +test("Can handle EnumDeclarations. #3", "*", (t, {typescript, useTypeChecker}) => { const {result} = executeProgram( // language=TypeScript ` @@ -77,7 +76,7 @@ test("Can handle EnumDeclarations. #3", withTypeScript, (t, {typescript, useType } }); -test("Can handle EnumDeclarations. #4", withTypeScript, (t, {typescript, useTypeChecker}) => { +test("Can handle EnumDeclarations. #4", "*", (t, {typescript, useTypeChecker}) => { const {result} = executeProgram( // language=TypeScript ` diff --git a/test/environment/browser.test.ts b/test/environment/browser.test.ts index cbe788c..33b36f8 100644 --- a/test/environment/browser.test.ts +++ b/test/environment/browser.test.ts @@ -1,8 +1,7 @@ -import test from "ava"; +import {test} from "../setup/test-runner.js"; import {executeProgram} from "../setup/execute-program.js"; -import {withTypeScript} from "../setup/ts-macro.js"; -test("Can handle a Browser environment. #1", withTypeScript, (t, {typescript, useTypeChecker}) => { +test("Can handle a Browser environment. #1", "*", (t, {typescript, useTypeChecker}) => { const {result} = executeProgram( // language=TypeScript ` @@ -27,7 +26,7 @@ test("Can handle a Browser environment. #1", withTypeScript, (t, {typescript, us } }); -test("Can handle a Browser environment. #2", withTypeScript, (t, {typescript, useTypeChecker}) => { +test("Can handle a Browser environment. #2", "*", (t, {typescript, useTypeChecker}) => { const {result} = executeProgram( // language=TypeScript ` diff --git a/test/environment/node-cjs.test.ts b/test/environment/node-cjs.test.ts index a5da251..d2ce971 100644 --- a/test/environment/node-cjs.test.ts +++ b/test/environment/node-cjs.test.ts @@ -1,9 +1,8 @@ -import test from "ava"; +import {test} from "../setup/test-runner.js"; import path from "crosspath"; import {executeProgram} from "../setup/execute-program.js"; -import {withTypeScript} from "../setup/ts-macro.js"; -test("Can handle the '__dirname' and '__filename' meta properties in a CommonJS-based Node environment. #1", withTypeScript, (t, {typescript, useTypeChecker}) => { +test("Can handle the '__dirname' and '__filename' meta properties in a CommonJS-based Node environment. #1", "*", (t, {typescript, useTypeChecker}) => { const {result, setup} = executeProgram( // language=TypeScript { @@ -30,7 +29,7 @@ test("Can handle the '__dirname' and '__filename' meta properties in a CommonJS- } }); -test("Can handle the '__dirname' and '__filename' meta properties in a CommonJS-based Node environment. #2", withTypeScript, (t, {typescript, useTypeChecker}) => { +test("Can handle the '__dirname' and '__filename' meta properties in a CommonJS-based Node environment. #2", "*", (t, {typescript, useTypeChecker}) => { const {result, setup} = executeProgram( // language=TypeScript { @@ -57,7 +56,7 @@ test("Can handle the '__dirname' and '__filename' meta properties in a CommonJS- } }); -test("Can handle 'process.cwd()' in a CommonJS-based Node environment. #1", withTypeScript, (t, {typescript, useTypeChecker}) => { +test("Can handle 'process.cwd()' in a CommonJS-based Node environment. #1", "*", (t, {typescript, useTypeChecker}) => { const {result} = executeProgram( // language=TypeScript ` diff --git a/test/environment/node-esm.test.ts b/test/environment/node-esm.test.ts index 6fc0c0b..d5d65db 100644 --- a/test/environment/node-esm.test.ts +++ b/test/environment/node-esm.test.ts @@ -1,9 +1,8 @@ -import test from "ava"; +import {test} from "../setup/test-runner.js"; import path from "crosspath"; import {executeProgram} from "../setup/execute-program.js"; -import {withTypeScript} from "../setup/ts-macro.js"; -test("Can handle the import.meta.url meta property in an ESM-based Node environment. #1", withTypeScript, (t, {typescript, useTypeChecker}) => { +test("Can handle the import.meta.url meta property in an ESM-based Node environment. #1", "*", (t, {typescript, useTypeChecker}) => { const {result, setup} = executeProgram( // language=TypeScript { diff --git a/test/error-handling/error-handling.test.ts b/test/error-handling/error-handling.test.ts index ba44a40..cbb48f8 100644 --- a/test/error-handling/error-handling.test.ts +++ b/test/error-handling/error-handling.test.ts @@ -1,14 +1,15 @@ -import test from "ava"; +import {test} from "../setup/test-runner.js"; import {executeProgram} from "../setup/execute-program.js"; -import {withTypeScript} from "../setup/ts-macro.js"; -test("Errors will be caught and set as the 'reason' property on returned values. #1", withTypeScript, (t, {typescript, useTypeChecker}) => { - t.notThrows(() => executeProgram( - // language=TypeScript - ` +test("Errors will be caught and set as the 'reason' property on returned values. #1", "*", (t, {typescript, useTypeChecker}) => { + t.notThrows(() => + executeProgram( + // language=TypeScript + ` const foo = require("./somethingthatdoesnotexist.js"); `, - "foo", - {typescript, useTypeChecker} - )); + "foo", + {typescript, useTypeChecker} + ) + ); }); diff --git a/test/for-in/for-in.test.ts b/test/for-in/for-in.test.ts index 4df44cb..d582af2 100644 --- a/test/for-in/for-in.test.ts +++ b/test/for-in/for-in.test.ts @@ -1,8 +1,7 @@ -import test from "ava"; +import {test} from "../setup/test-runner.js"; import {executeProgram} from "../setup/execute-program.js"; -import {withTypeScript} from "../setup/ts-macro.js"; -test("Can evaluate a CallExpression with a ForInStatement. #1", withTypeScript, (t, {typescript, useTypeChecker}) => { +test("Can evaluate a CallExpression with a ForInStatement. #1", "*", (t, {typescript, useTypeChecker}) => { const {result} = executeProgram( // language=TypeScript ` diff --git a/test/for-of/for-of.test.ts b/test/for-of/for-of.test.ts index 255ca43..fb1fe84 100644 --- a/test/for-of/for-of.test.ts +++ b/test/for-of/for-of.test.ts @@ -1,8 +1,7 @@ -import test from "ava"; +import {test} from "../setup/test-runner.js"; import {executeProgram} from "../setup/execute-program.js"; -import {withTypeScript} from "../setup/ts-macro.js"; -test("Can evaluate a CallExpression with a ForOfStatement. #1", withTypeScript, (t, {typescript, useTypeChecker}) => { +test("Can evaluate a CallExpression with a ForOfStatement. #1", "*", (t, {typescript, useTypeChecker}) => { const {result} = executeProgram( // language=TypeScript ` @@ -24,7 +23,7 @@ test("Can evaluate a CallExpression with a ForOfStatement. #1", withTypeScript, else t.deepEqual(result.value, 6); }); -test("Can evaluate a CallExpression with a ForOfStatement and a break statement. #1", withTypeScript, (t, {typescript, useTypeChecker}) => { +test("Can evaluate a CallExpression with a ForOfStatement and a break statement. #1", "*", (t, {typescript, useTypeChecker}) => { const {result} = executeProgram( // language=TypeScript ` @@ -47,7 +46,7 @@ test("Can evaluate a CallExpression with a ForOfStatement and a break statement. else t.deepEqual(result.value, 3); }); -test("Can evaluate a CallExpression with a ForOfStatement and a continue statement. #1", withTypeScript, (t, {typescript, useTypeChecker}) => { +test("Can evaluate a CallExpression with a ForOfStatement and a continue statement. #1", "*", (t, {typescript, useTypeChecker}) => { const {result} = executeProgram( // language=TypeScript ` @@ -70,7 +69,7 @@ test("Can evaluate a CallExpression with a ForOfStatement and a continue stateme else t.deepEqual(result.value, 5); }); -test("Can evaluate a CallExpression with a ForOfStatement and a return statement. #1", withTypeScript, (t, {typescript, useTypeChecker}) => { +test("Can evaluate a CallExpression with a ForOfStatement and a return statement. #1", "*", (t, {typescript, useTypeChecker}) => { const {result} = executeProgram( // language=TypeScript ` diff --git a/test/for/for.test.ts b/test/for/for.test.ts index cc5ed58..20b811f 100644 --- a/test/for/for.test.ts +++ b/test/for/for.test.ts @@ -1,8 +1,7 @@ -import test from "ava"; +import {test} from "../setup/test-runner.js"; import {executeProgram} from "../setup/execute-program.js"; -import {withTypeScript} from "../setup/ts-macro.js"; -test("Can evaluate a CallExpression with a ForStatement. #1", withTypeScript, (t, {typescript, useTypeChecker}) => { +test("Can evaluate a CallExpression with a ForStatement. #1", "*", (t, {typescript, useTypeChecker}) => { const {result} = executeProgram( // language=TypeScript ` @@ -25,7 +24,7 @@ test("Can evaluate a CallExpression with a ForStatement. #1", withTypeScript, (t else t.deepEqual(result.value, 6); }); -test("Can evaluate a CallExpression with a ForStatement. #2", withTypeScript, (t, {typescript, useTypeChecker}) => { +test("Can evaluate a CallExpression with a ForStatement. #2", "*", (t, {typescript, useTypeChecker}) => { const {result} = executeProgram( // language=TypeScript ` @@ -49,7 +48,7 @@ test("Can evaluate a CallExpression with a ForStatement. #2", withTypeScript, (t else t.deepEqual(result.value, 4); }); -test("Can evaluate a CallExpression with a ForStatement. #3", withTypeScript, (t, {typescript, useTypeChecker}) => { +test("Can evaluate a CallExpression with a ForStatement. #3", "*", (t, {typescript, useTypeChecker}) => { const {result} = executeProgram( // language=TypeScript ` diff --git a/test/function-declaration/arithmetic.test.ts b/test/function-declaration/arithmetic.test.ts index 03382b6..41c71a4 100644 --- a/test/function-declaration/arithmetic.test.ts +++ b/test/function-declaration/arithmetic.test.ts @@ -1,8 +1,7 @@ -import test from "ava"; +import {test} from "../setup/test-runner.js"; import {executeProgram} from "../setup/execute-program.js"; -import {withTypeScript} from "../setup/ts-macro.js"; -test("Can evaluate a simple '(number, number) => number' function. #1", withTypeScript, (t, {typescript, useTypeChecker}) => { +test("Can evaluate a simple '(number, number) => number' function. #1", "*", (t, {typescript, useTypeChecker}) => { const {result} = executeProgram( // language=TypeScript ` @@ -20,7 +19,7 @@ test("Can evaluate a simple '(number, number) => number' function. #1", withType else t.deepEqual(result.value, 3); }); -test("Can evaluate a simple '(number, number) => number' function. #2", withTypeScript, (t, {typescript, useTypeChecker}) => { +test("Can evaluate a simple '(number, number) => number' function. #2", "*", (t, {typescript, useTypeChecker}) => { const {result} = executeProgram( // language=TypeScript ` @@ -38,7 +37,7 @@ test("Can evaluate a simple '(number, number) => number' function. #2", withType else t.deepEqual(result.value, -1); }); -test("Can evaluate a simple '(number, number) => number' function. #3", withTypeScript, (t, {typescript, useTypeChecker}) => { +test("Can evaluate a simple '(number, number) => number' function. #3", "*", (t, {typescript, useTypeChecker}) => { const {result} = executeProgram( // language=TypeScript ` @@ -56,7 +55,7 @@ test("Can evaluate a simple '(number, number) => number' function. #3", withType else t.deepEqual(result.value, 2); }); -test("Can evaluate a simple '(number, number) => number' function. #4", withTypeScript, (t, {typescript, useTypeChecker}) => { +test("Can evaluate a simple '(number, number) => number' function. #4", "*", (t, {typescript, useTypeChecker}) => { const {result} = executeProgram( // language=TypeScript ` @@ -74,7 +73,7 @@ test("Can evaluate a simple '(number, number) => number' function. #4", withType else t.deepEqual(result.value, 0.5); }); -test("Can evaluate a simple 'number => number' function. #1", withTypeScript, (t, {typescript, useTypeChecker}) => { +test("Can evaluate a simple 'number => number' function. #1", "*", (t, {typescript, useTypeChecker}) => { const {result} = executeProgram( // language=TypeScript ` @@ -92,7 +91,7 @@ test("Can evaluate a simple 'number => number' function. #1", withTypeScript, (t else t.deepEqual(result.value, 4); }); -test("Can handle the 'arguments' identifier. #1", withTypeScript, (t, {typescript, useTypeChecker}) => { +test("Can handle the 'arguments' identifier. #1", "*", (t, {typescript, useTypeChecker}) => { const {result} = executeProgram( // language=TypeScript ` diff --git a/test/function-declaration/recursion.test.ts b/test/function-declaration/recursion.test.ts index 8f5152f..a1a6dce 100644 --- a/test/function-declaration/recursion.test.ts +++ b/test/function-declaration/recursion.test.ts @@ -1,8 +1,7 @@ -import test from "ava"; +import {test} from "../setup/test-runner.js"; import {executeProgram} from "../setup/execute-program.js"; -import {withTypeScript} from "../setup/ts-macro.js"; -test("Can evaluate a CallExpression for a recursive function. #1", withTypeScript, (t, {typescript, useTypeChecker}) => { +test("Can evaluate a CallExpression for a recursive function. #1", "*", (t, {typescript, useTypeChecker}) => { const {result} = executeProgram( // language=TypeScript ` diff --git a/test/get-accessor-declaration/get-accessor-declaration.test.ts b/test/get-accessor-declaration/get-accessor-declaration.test.ts index 8f8bf55..128d35a 100644 --- a/test/get-accessor-declaration/get-accessor-declaration.test.ts +++ b/test/get-accessor-declaration/get-accessor-declaration.test.ts @@ -1,8 +1,7 @@ -import test from "ava"; +import {test} from "../setup/test-runner.js"; import {executeProgram} from "../setup/execute-program.js"; -import {withTypeScript} from "../setup/ts-macro.js"; -test("Can evaluate and retrieve a GetAccessorDeclaration. #1", withTypeScript, (t, {typescript, useTypeChecker}) => { +test("Can evaluate and retrieve a GetAccessorDeclaration. #1", "*", (t, {typescript, useTypeChecker}) => { const {result} = executeProgram( // language=TypeScript ` diff --git a/test/hoisting/hoisting.test.ts b/test/hoisting/hoisting.test.ts index 1c12a4d..8872973 100644 --- a/test/hoisting/hoisting.test.ts +++ b/test/hoisting/hoisting.test.ts @@ -1,10 +1,10 @@ -import test from "ava"; +import {test} from "../setup/test-runner.js"; import {executeProgram} from "../setup/execute-program.js"; -import {withTypeScript} from "../setup/ts-macro.js"; + import {UndefinedIdentifierError} from "../../src/interpreter/error/undefined-identifier-error/undefined-identifier-error.js"; import {NotCallableError} from "../../src/interpreter/error/not-callable-error/not-callable-error.js"; -test("Throws when attempting to reference an identifier that is still not defined within the current scope. #2", withTypeScript, (t, {typescript, useTypeChecker}) => { +test("Throws when attempting to reference an identifier that is still not defined within the current scope. #2", "*", (t, {typescript, useTypeChecker}) => { const {result} = executeProgram( // language=TypeScript ` @@ -24,7 +24,7 @@ test("Throws when attempting to reference an identifier that is still not define test( "Doesn't throw when attempting to reference an identifier that is declared after the reference, but is hoisted to the current scope. #1", - withTypeScript, + "*", (t, {typescript, useTypeChecker}) => { const {result} = executeProgram( // language=TypeScript @@ -50,7 +50,7 @@ test( test( "Throws when attempting to use the rvalue of a referenced identifier that is declared after the reference, but is hoisted to the current scope. #1", - withTypeScript, + "*", (t, {typescript, useTypeChecker}) => { const {result} = executeProgram( // language=TypeScript @@ -73,7 +73,7 @@ test( } ); -test("Respects block scoped variables declared with 'let'. #1", withTypeScript, (t, {typescript, useTypeChecker}) => { +test("Respects block scoped variables declared with 'let'. #1", "*", (t, {typescript, useTypeChecker}) => { const {result} = executeProgram( // language=TypeScript ` @@ -90,7 +90,7 @@ test("Respects block scoped variables declared with 'let'. #1", withTypeScript, else t.true(result.reason instanceof UndefinedIdentifierError); }); -test("Respects block scoped variables declared with 'var'. #1", withTypeScript, (t, {typescript, useTypeChecker}) => { +test("Respects block scoped variables declared with 'var'. #1", "*", (t, {typescript, useTypeChecker}) => { const {result} = executeProgram( // language=TypeScript ` diff --git a/test/import-declaration/import-declaration.test.ts b/test/import-declaration/import-declaration.test.ts index 746bee1..8999b6e 100644 --- a/test/import-declaration/import-declaration.test.ts +++ b/test/import-declaration/import-declaration.test.ts @@ -1,11 +1,10 @@ /* eslint-disable @typescript-eslint/naming-convention */ -import test from "ava"; +import {test} from "../setup/test-runner.js"; import {executeProgram} from "../setup/execute-program.js"; -import {withTypeScript, withTypeScriptVersions} from "../setup/ts-macro.js"; -import path from "crosspath"; +import path from "crosspath"; -test("Can resolve symbols via ImportDeclarations. #1", withTypeScript, (t, {typescript, useTypeChecker}) => { +test("Can resolve symbols via ImportDeclarations. #1", "*", (t, {typescript, useTypeChecker}) => { const {result} = executeProgram( [ { @@ -46,7 +45,7 @@ test("Can resolve symbols via ImportDeclarations. #1", withTypeScript, (t, {type else t.deepEqual(result.value, "bar2"); }); -test("Can resolve symbols via ImportDeclarations. #2", withTypeScript, (t, {typescript, useTypeChecker}) => { +test("Can resolve symbols via ImportDeclarations. #2", "*", (t, {typescript, useTypeChecker}) => { const {result} = executeProgram( [ { @@ -95,7 +94,7 @@ test("Can resolve symbols via ImportDeclarations. #2", withTypeScript, (t, {type else t.deepEqual(result.value, "bar2"); }); -test("Can resolve symbols via ImportDeclarations. #3", withTypeScript, (t, {typescript, useTypeChecker}) => { +test("Can resolve symbols via ImportDeclarations. #3", "*", (t, {typescript, useTypeChecker}) => { const {result} = executeProgram( [ { @@ -146,7 +145,7 @@ test("Can resolve symbols via ImportDeclarations. #3", withTypeScript, (t, {type else t.deepEqual(result.value, "bar2"); }); -test("Can resolve symbols via ImportDeclarations. #4", withTypeScript, (t, {typescript, useTypeChecker}) => { +test("Can resolve symbols via ImportDeclarations. #4", "*", (t, {typescript, useTypeChecker}) => { const {result} = executeProgram( [ { @@ -197,7 +196,7 @@ test("Can resolve symbols via ImportDeclarations. #4", withTypeScript, (t, {type else t.deepEqual(result.value, "bar2"); }); -test("Can resolve symbols via ImportDeclarations for built-in node modules. #1", withTypeScript, (t, {typescript, useTypeChecker}) => { +test("Can resolve symbols via ImportDeclarations for built-in node modules. #1", "*", (t, {typescript, useTypeChecker}) => { const {result} = executeProgram( [ // language=TypeScript @@ -215,7 +214,7 @@ test("Can resolve symbols via ImportDeclarations for built-in node modules. #1", else t.deepEqual(result.value, "/foo"); }); -test("Can resolve symbols via ImportDeclarations for built-in node modules. #2", withTypeScript, (t, {typescript, useTypeChecker}) => { +test("Can resolve symbols via ImportDeclarations for built-in node modules. #2", "*", (t, {typescript, useTypeChecker}) => { const {result} = executeProgram( [ // language=TypeScript @@ -233,7 +232,7 @@ test("Can resolve symbols via ImportDeclarations for built-in node modules. #2", else t.deepEqual(result.value, "/foo"); }); -test("Can resolve symbols via ImportDeclarations for built-in node modules. #3", withTypeScript, (t, {typescript, useTypeChecker}) => { +test("Can resolve symbols via ImportDeclarations for built-in node modules. #3", "*", (t, {typescript, useTypeChecker}) => { const {result} = executeProgram( [ // language=TypeScript @@ -252,7 +251,7 @@ test("Can resolve symbols via ImportDeclarations for built-in node modules. #3", else t.deepEqual(result.value, "ts-evaluator"); }); -test("Can resolve symbols via ImportDeclarations for built-in node modules. #4", withTypeScriptVersions(">=3.1"), (t, {typescript, useTypeChecker}) => { +test("Can resolve symbols via ImportDeclarations for built-in node modules. #4", ">=3.1", (t, {typescript, useTypeChecker}) => { const {result} = executeProgram( // language=TypeScript ` @@ -275,7 +274,7 @@ test("Can resolve symbols via ImportDeclarations for built-in node modules. #4", else t.deepEqual(result.value, true); }); -test("Can resolve symbols via ImportDeclarations for built-in node modules. #5", withTypeScript, (t, {typescript, useTypeChecker}) => { +test("Can resolve symbols via ImportDeclarations for built-in node modules. #5", "*", (t, {typescript, useTypeChecker}) => { const {result} = executeProgram( [ // language=TypeScript diff --git a/test/interface-declaration/interface-declaration.test.ts b/test/interface-declaration/interface-declaration.test.ts index 226c127..341aff4 100644 --- a/test/interface-declaration/interface-declaration.test.ts +++ b/test/interface-declaration/interface-declaration.test.ts @@ -1,8 +1,7 @@ -import test from "ava"; +import {test} from "../setup/test-runner.js"; import {executeProgram} from "../setup/execute-program.js"; -import {withTypeScript} from "../setup/ts-macro.js"; -test("Understands InterfaceDeclarations. #1", withTypeScript, (t, {typescript, useTypeChecker}) => { +test("Understands InterfaceDeclarations. #1", "*", (t, {typescript, useTypeChecker}) => { const {result} = executeProgram( // language=TypeScript ` diff --git a/test/logical-assignment/logical-assignment.test.ts b/test/logical-assignment/logical-assignment.test.ts index a8bcafe..a4ed959 100644 --- a/test/logical-assignment/logical-assignment.test.ts +++ b/test/logical-assignment/logical-assignment.test.ts @@ -1,8 +1,7 @@ -import test from "ava"; +import {test} from "../setup/test-runner.js"; import {executeProgram} from "../setup/execute-program.js"; -import {withTypeScriptVersions} from "../setup/ts-macro.js"; -test("Supports logical assignment. #1", withTypeScriptVersions(">=4.0"), (t, {typescript, useTypeChecker}) => { +test("Supports logical assignment. #1", ">=4.0", (t, {typescript, useTypeChecker}) => { const {result} = executeProgram( // language=TypeScript ` @@ -22,7 +21,7 @@ test("Supports logical assignment. #1", withTypeScriptVersions(">=4.0"), (t, {ty } }); -test("Supports logical assignment. #2", withTypeScriptVersions(">=4.0"), (t, {typescript, useTypeChecker}) => { +test("Supports logical assignment. #2", ">=4.0", (t, {typescript, useTypeChecker}) => { const {result} = executeProgram( // language=TypeScript ` @@ -42,7 +41,7 @@ test("Supports logical assignment. #2", withTypeScriptVersions(">=4.0"), (t, {ty } }); -test("Supports logical assignment. #3", withTypeScriptVersions(">=4.0"), (t, {typescript, useTypeChecker}) => { +test("Supports logical assignment. #3", ">=4.0", (t, {typescript, useTypeChecker}) => { const {result} = executeProgram( // language=TypeScript ` @@ -63,7 +62,7 @@ test("Supports logical assignment. #3", withTypeScriptVersions(">=4.0"), (t, {ty } }); -test("Supports logical assignment. #4", withTypeScriptVersions(">=4.0"), (t, {typescript, useTypeChecker}) => { +test("Supports logical assignment. #4", ">=4.0", (t, {typescript, useTypeChecker}) => { const {result} = executeProgram( // language=TypeScript ` @@ -84,7 +83,7 @@ test("Supports logical assignment. #4", withTypeScriptVersions(">=4.0"), (t, {ty } }); -test("Supports logical assignment. #5", withTypeScriptVersions(">=4.0"), (t, {typescript, useTypeChecker}) => { +test("Supports logical assignment. #5", ">=4.0", (t, {typescript, useTypeChecker}) => { const {result} = executeProgram( // language=TypeScript ` @@ -105,7 +104,7 @@ test("Supports logical assignment. #5", withTypeScriptVersions(">=4.0"), (t, {ty } }); -test("Supports logical assignment. #6", withTypeScriptVersions(">=4.0"), (t, {typescript, useTypeChecker}) => { +test("Supports logical assignment. #6", ">=4.0", (t, {typescript, useTypeChecker}) => { const {result} = executeProgram( // language=TypeScript ` diff --git a/test/method-declaration/method-declaration.test.ts b/test/method-declaration/method-declaration.test.ts index 0cbcba3..52e2e1b 100644 --- a/test/method-declaration/method-declaration.test.ts +++ b/test/method-declaration/method-declaration.test.ts @@ -1,8 +1,7 @@ -import test from "ava"; +import {test} from "../setup/test-runner.js"; import {executeProgram} from "../setup/execute-program.js"; -import {withTypeScript, withTypeScriptVersions} from "../setup/ts-macro.js"; -test("Can evaluate and retrieve a MethodDeclaration. #1", withTypeScript, (t, {typescript, useTypeChecker}) => { +test("Can evaluate and retrieve a MethodDeclaration. #1", "*", (t, {typescript, useTypeChecker}) => { const {result} = executeProgram( // language=TypeScript ` @@ -22,7 +21,7 @@ test("Can evaluate and retrieve a MethodDeclaration. #1", withTypeScript, (t, {t } }); -test("Can evaluate and retrieve a private MethodDeclaration. #1", withTypeScriptVersions(">=3.8"), (t, {typescript, useTypeChecker}) => { +test("Can evaluate and retrieve a private MethodDeclaration. #1", ">=3.8", (t, {typescript, useTypeChecker}) => { const {result} = executeProgram( // language=TypeScript ` @@ -42,7 +41,7 @@ test("Can evaluate and retrieve a private MethodDeclaration. #1", withTypeScript } }); -test("Can evaluate and retrieve the result of calling a private MethodDeclaration. #1", withTypeScriptVersions(">=3.8"), (t, {typescript, useTypeChecker}) => { +test("Can evaluate and retrieve the result of calling a private MethodDeclaration. #1", ">=3.8", (t, {typescript, useTypeChecker}) => { const {result} = executeProgram( // language=TypeScript ` @@ -68,7 +67,7 @@ test("Can evaluate and retrieve the result of calling a private MethodDeclaratio } }); -test("Can evaluate and retrieve the result of calling a private MethodDeclaration. #2", withTypeScriptVersions(">=3.8"), (t, {typescript, useTypeChecker}) => { +test("Can evaluate and retrieve the result of calling a private MethodDeclaration. #2", ">=3.8", (t, {typescript, useTypeChecker}) => { const {result} = executeProgram( // language=TypeScript ` diff --git a/test/new-target/new-target.test.ts b/test/new-target/new-target.test.ts index 60f6906..9bbe378 100644 --- a/test/new-target/new-target.test.ts +++ b/test/new-target/new-target.test.ts @@ -1,8 +1,7 @@ -import test from "ava"; +import {test} from "../setup/test-runner.js"; import {executeProgram} from "../setup/execute-program.js"; -import {withTypeScript} from "../setup/ts-macro.js"; -test("Can handle new.target syntax. #1", withTypeScript, (t, {typescript, useTypeChecker}) => { +test("Can handle new.target syntax. #1", "*", (t, {typescript, useTypeChecker}) => { const {result} = executeProgram( ` let result: boolean|undefined; diff --git a/test/nullish-coalescing/nullish-coalescing.test.ts b/test/nullish-coalescing/nullish-coalescing.test.ts index 8484868..82bad9b 100644 --- a/test/nullish-coalescing/nullish-coalescing.test.ts +++ b/test/nullish-coalescing/nullish-coalescing.test.ts @@ -1,8 +1,7 @@ -import test from "ava"; +import {test} from "../setup/test-runner.js"; import {executeProgram} from "../setup/execute-program.js"; -import {withTypeScriptVersions} from "../setup/ts-macro.js"; -test("Supports nullish coalescing with null-like values. #1", withTypeScriptVersions(">=3.7"), (t, {typescript, useTypeChecker}) => { +test("Supports nullish coalescing with null-like values. #1", ">=3.7", (t, {typescript, useTypeChecker}) => { const {result} = executeProgram( // language=TypeScript ` diff --git a/test/object-binding-pattern/object-binding-pattern.test.ts b/test/object-binding-pattern/object-binding-pattern.test.ts index 7fe8ba3..407acbc 100644 --- a/test/object-binding-pattern/object-binding-pattern.test.ts +++ b/test/object-binding-pattern/object-binding-pattern.test.ts @@ -1,8 +1,7 @@ -import test from "ava"; +import {test} from "../setup/test-runner.js"; import {executeProgram} from "../setup/execute-program.js"; -import {withTypeScript} from "../setup/ts-macro.js"; -test("Can handle ObjectBindingPatterns in VariableDeclarations. #1", withTypeScript, (t, {typescript, useTypeChecker}) => { +test("Can handle ObjectBindingPatterns in VariableDeclarations. #1", "*", (t, {typescript, useTypeChecker}) => { const {result} = executeProgram( // language=TypeScript ` @@ -19,7 +18,7 @@ test("Can handle ObjectBindingPatterns in VariableDeclarations. #1", withTypeScr else t.deepEqual(result.value, 123); }); -test("Can handle ObjectBindingPatterns in VariableDeclarations. #2", withTypeScript, (t, {typescript, useTypeChecker}) => { +test("Can handle ObjectBindingPatterns in VariableDeclarations. #2", "*", (t, {typescript, useTypeChecker}) => { const {result} = executeProgram( // language=TypeScript ` @@ -36,7 +35,7 @@ test("Can handle ObjectBindingPatterns in VariableDeclarations. #2", withTypeScr else t.deepEqual(result.value, 245); }); -test("Can handle ObjectBindingPatterns in ParameterDeclarations. #1", withTypeScript, (t, {typescript, useTypeChecker}) => { +test("Can handle ObjectBindingPatterns in ParameterDeclarations. #1", "*", (t, {typescript, useTypeChecker}) => { const {result} = executeProgram( // language=TypeScript ` @@ -52,7 +51,7 @@ test("Can handle ObjectBindingPatterns in ParameterDeclarations. #1", withTypeSc else t.deepEqual(result.value, 2); }); -test("Can handle ObjectBindingPatterns in ParameterDeclarations. #2", withTypeScript, (t, {typescript, useTypeChecker}) => { +test("Can handle ObjectBindingPatterns in ParameterDeclarations. #2", "*", (t, {typescript, useTypeChecker}) => { const {result} = executeProgram( // language=TypeScript ` diff --git a/test/object-literal-expression/object-literal-expression.test.ts b/test/object-literal-expression/object-literal-expression.test.ts index ebcd27e..30e8797 100644 --- a/test/object-literal-expression/object-literal-expression.test.ts +++ b/test/object-literal-expression/object-literal-expression.test.ts @@ -1,9 +1,8 @@ -import test from "ava"; +import {test} from "../setup/test-runner.js"; import {UndefinedIdentifierError} from "../../src/interpreter/error/undefined-identifier-error/undefined-identifier-error.js"; import {executeProgram} from "../setup/execute-program.js"; -import {withTypeScript} from "../setup/ts-macro.js"; -test("Can handle ObjectLiteralExpressions. #1", withTypeScript, (t, {typescript, useTypeChecker}) => { +test("Can handle ObjectLiteralExpressions. #1", "*", (t, {typescript, useTypeChecker}) => { // noinspection BadExpressionStatementJS const {result} = executeProgram( // language=TypeScript @@ -25,7 +24,7 @@ test("Can handle ObjectLiteralExpressions. #1", withTypeScript, (t, {typescript, } }); -test("Can handle ObjectLiteralExpressions. #2", withTypeScript, (t, {typescript, useTypeChecker}) => { +test("Can handle ObjectLiteralExpressions. #2", "*", (t, {typescript, useTypeChecker}) => { // noinspection BadExpressionStatementJS const {result} = executeProgram( // language=TypeScript @@ -47,7 +46,7 @@ test("Can handle ObjectLiteralExpressions. #2", withTypeScript, (t, {typescript, } }); -test("Can handle ObjectLiteralExpressions. #3", withTypeScript, (t, {typescript, useTypeChecker}) => { +test("Can handle ObjectLiteralExpressions. #3", "*", (t, {typescript, useTypeChecker}) => { // noinspection BadExpressionStatementJS const {result} = executeProgram( // language=TypeScript @@ -71,7 +70,7 @@ test("Can handle ObjectLiteralExpressions. #3", withTypeScript, (t, {typescript, } }); -test("Can handle ObjectLiteralExpressions. #4", withTypeScript, (t, {typescript, useTypeChecker}) => { +test("Can handle ObjectLiteralExpressions. #4", "*", (t, {typescript, useTypeChecker}) => { // noinspection BadExpressionStatementJS const {result} = executeProgram( // language=TypeScript @@ -91,7 +90,7 @@ test("Can handle ObjectLiteralExpressions. #4", withTypeScript, (t, {typescript, } }); -test("Can handle ObjectLiteralExpressions. #5", withTypeScript, (t, {typescript, useTypeChecker}) => { +test("Can handle ObjectLiteralExpressions. #5", "*", (t, {typescript, useTypeChecker}) => { // noinspection BadExpressionStatementJS const {result} = executeProgram( // language=TypeScript @@ -111,7 +110,7 @@ test("Can handle ObjectLiteralExpressions. #5", withTypeScript, (t, {typescript, } }); -test("Can handle ObjectLiteralExpressions. #6", withTypeScript, (t, {typescript, useTypeChecker}) => { +test("Can handle ObjectLiteralExpressions. #6", "*", (t, {typescript, useTypeChecker}) => { // noinspection BadExpressionStatementJS const {result} = executeProgram( // language=TypeScript @@ -131,7 +130,7 @@ test("Can handle ObjectLiteralExpressions. #6", withTypeScript, (t, {typescript, } }); -test("Can handle ObjectLiteralExpressions. #7", withTypeScript, (t, {typescript, useTypeChecker}) => { +test("Can handle ObjectLiteralExpressions. #7", "*", (t, {typescript, useTypeChecker}) => { // noinspection BadExpressionStatementJS const {result} = executeProgram( // language=TypeScript diff --git a/test/optional-chaining/optional-chaining.test.ts b/test/optional-chaining/optional-chaining.test.ts index af262e2..da98cda 100644 --- a/test/optional-chaining/optional-chaining.test.ts +++ b/test/optional-chaining/optional-chaining.test.ts @@ -1,8 +1,7 @@ -import test from "ava"; +import {test} from "../setup/test-runner.js"; import {executeProgram} from "../setup/execute-program.js"; -import {withTypeScriptVersions} from "../setup/ts-macro.js"; -test("Supports optional CallExpressions. #1", withTypeScriptVersions(">=3.7"), (t, {typescript, useTypeChecker}) => { +test("Supports optional CallExpressions. #1", ">=3.7", (t, {typescript, useTypeChecker}) => { const {result} = executeProgram( // language=TypeScript ` @@ -19,7 +18,7 @@ test("Supports optional CallExpressions. #1", withTypeScriptVersions(">=3.7"), ( } }); -test("Supports optional PropertyAccessExpressions. #1", withTypeScriptVersions(">=3.7"), (t, {typescript, useTypeChecker}) => { +test("Supports optional PropertyAccessExpressions. #1", ">=3.7", (t, {typescript, useTypeChecker}) => { const {result} = executeProgram( // language=TypeScript ` @@ -36,7 +35,7 @@ test("Supports optional PropertyAccessExpressions. #1", withTypeScriptVersions(" } }); -test("Supports optional ElementAccessExpressions. #1", withTypeScriptVersions(">=3.7"), (t, {typescript, useTypeChecker}) => { +test("Supports optional ElementAccessExpressions. #1", ">=3.7", (t, {typescript, useTypeChecker}) => { const {result} = executeProgram( // language=TypeScript ` diff --git a/test/policy/policy.test.ts b/test/policy/policy.test.ts index 89842f7..9cf9c91 100644 --- a/test/policy/policy.test.ts +++ b/test/policy/policy.test.ts @@ -1,13 +1,13 @@ /* eslint-disable @typescript-eslint/naming-convention */ -import test from "ava"; +import {test} from "../setup/test-runner.js"; import {executeProgram} from "../setup/execute-program.js"; -import {withTypeScript} from "../setup/ts-macro.js"; + import {IoError} from "../../src/interpreter/error/policy-error/io-error/io-error.js"; import {NonDeterministicError} from "../../src/interpreter/error/policy-error/non-deterministic-error/non-deterministic-error.js"; import {NetworkError} from "../../src/interpreter/error/policy-error/network-error/network-error.js"; import {ProcessError} from "../../src/interpreter/error/policy-error/process-error/process-error.js"; -test("Throws on IO read if the policy requires it. #1", withTypeScript, (t, {typescript, useTypeChecker}) => { +test("Throws on IO read if the policy requires it. #1", "*", (t, {typescript, useTypeChecker}) => { const {result} = executeProgram( // language=TypeScript ` @@ -43,7 +43,7 @@ test("Throws on IO read if the policy requires it. #1", withTypeScript, (t, {typ else t.deepEqual(result.value, true); }); -test("Throws on IO read if the policy requires it. #2", withTypeScript, (t, {typescript, useTypeChecker}) => { +test("Throws on IO read if the policy requires it. #2", "*", (t, {typescript, useTypeChecker}) => { const {result} = executeProgram( // language=TypeScript ` @@ -79,7 +79,7 @@ test("Throws on IO read if the policy requires it. #2", withTypeScript, (t, {typ else t.deepEqual(result.value, true); }); -test("Throws on IO read if the policy requires it. #3", withTypeScript, (t, {typescript, useTypeChecker}) => { +test("Throws on IO read if the policy requires it. #3", "*", (t, {typescript, useTypeChecker}) => { const {result} = executeProgram( // language=TypeScript ` @@ -116,7 +116,7 @@ test("Throws on IO read if the policy requires it. #3", withTypeScript, (t, {typ else t.deepEqual(result.value, true); }); -test("Throws on IO read if the policy requires it. #4", withTypeScript, (t, {typescript, useTypeChecker}) => { +test("Throws on IO read if the policy requires it. #4", "*", (t, {typescript, useTypeChecker}) => { const {result} = executeProgram( // language=TypeScript ` @@ -153,7 +153,7 @@ test("Throws on IO read if the policy requires it. #4", withTypeScript, (t, {typ else t.deepEqual(result.value, true); }); -test("Throws on IO read if the policy requires it. #5", withTypeScript, (t, {typescript, useTypeChecker}) => { +test("Throws on IO read if the policy requires it. #5", "*", (t, {typescript, useTypeChecker}) => { const {result} = executeProgram( // language=TypeScript ` @@ -189,7 +189,7 @@ test("Throws on IO read if the policy requires it. #5", withTypeScript, (t, {typ else t.deepEqual(result.value, true); }); -test("Throws on IO read if the policy requires it. #6", withTypeScript, (t, {typescript, useTypeChecker}) => { +test("Throws on IO read if the policy requires it. #6", "*", (t, {typescript, useTypeChecker}) => { const {result} = executeProgram( // language=TypeScript ` @@ -225,7 +225,7 @@ test("Throws on IO read if the policy requires it. #6", withTypeScript, (t, {typ else t.deepEqual(result.value, true); }); -test("Throws on invoking Math.random() read if the policy is non-deterministic. #1", withTypeScript, (t, {typescript, useTypeChecker}) => { +test("Throws on invoking Math.random() read if the policy is non-deterministic. #1", "*", (t, {typescript, useTypeChecker}) => { const {result} = executeProgram( // language=TypeScript ` @@ -257,7 +257,7 @@ test("Throws on invoking Math.random() read if the policy is non-deterministic. else t.deepEqual(result.value, true); }); -test("Doesn't throws on _getting_ Math.random, even if the policy is non-deterministic. #1", withTypeScript, (t, {typescript, useTypeChecker}) => { +test("Doesn't throws on _getting_ Math.random, even if the policy is non-deterministic. #1", "*", (t, {typescript, useTypeChecker}) => { const {result} = executeProgram( // language=TypeScript ` @@ -289,7 +289,7 @@ test("Doesn't throws on _getting_ Math.random, even if the policy is non-determi else t.deepEqual(result.value, true); }); -test("Throws on constructing new Date() without arguments if the policy is non-deterministic. #1", withTypeScript, (t, {typescript, useTypeChecker}) => { +test("Throws on constructing new Date() without arguments if the policy is non-deterministic. #1", "*", (t, {typescript, useTypeChecker}) => { const {result} = executeProgram( // language=TypeScript ` @@ -321,7 +321,7 @@ test("Throws on constructing new Date() without arguments if the policy is non-d else t.deepEqual(result.value, true); }); -test("Doesn't throws on construction of a new Date with a specific date input, even if the policy is non-deterministic. #1", withTypeScript, (t, {typescript, useTypeChecker}) => { +test("Doesn't throws on construction of a new Date with a specific date input, even if the policy is non-deterministic. #1", "*", (t, {typescript, useTypeChecker}) => { const {result} = executeProgram( // language=TypeScript ` @@ -354,7 +354,7 @@ test("Doesn't throws on construction of a new Date with a specific date input, e else t.deepEqual(result.value, true); }); -test("Throws on Network activity if the policy requires it. #1", withTypeScript, (t, {typescript, useTypeChecker}) => { +test("Throws on Network activity if the policy requires it. #1", "*", (t, {typescript, useTypeChecker}) => { const {result} = executeProgram( // language=TypeScript ` @@ -387,7 +387,7 @@ test("Throws on Network activity if the policy requires it. #1", withTypeScript, else t.deepEqual(result.value, true); }); -test("Throws on Network activity if the policy requires it. #2", withTypeScript, (t, {typescript, useTypeChecker}) => { +test("Throws on Network activity if the policy requires it. #2", "*", (t, {typescript, useTypeChecker}) => { const {result} = executeProgram( // language=TypeScript ` @@ -420,7 +420,7 @@ test("Throws on Network activity if the policy requires it. #2", withTypeScript, else t.deepEqual(result.value, true); }); -test("Throws on attempting to exit the Process if the policy requires it. #1", withTypeScript, (t, {typescript, useTypeChecker}) => { +test("Throws on attempting to exit the Process if the policy requires it. #1", "*", (t, {typescript, useTypeChecker}) => { const {result} = executeProgram( // language=TypeScript ` @@ -453,7 +453,7 @@ test("Throws on attempting to exit the Process if the policy requires it. #1", w else t.deepEqual(result.value, true); }); -test("Throws on attempting to spawn a child process if the policy requires it. #1", withTypeScript, (t, {typescript, useTypeChecker}) => { +test("Throws on attempting to spawn a child process if the policy requires it. #1", "*", (t, {typescript, useTypeChecker}) => { const {result} = executeProgram( // language=TypeScript ` diff --git a/test/postfix-unary-expression/postfix-unary-expression.test.ts b/test/postfix-unary-expression/postfix-unary-expression.test.ts index b53c853..a4ede36 100644 --- a/test/postfix-unary-expression/postfix-unary-expression.test.ts +++ b/test/postfix-unary-expression/postfix-unary-expression.test.ts @@ -1,8 +1,7 @@ -import test from "ava"; +import {test} from "../setup/test-runner.js"; import {executeProgram} from "../setup/execute-program.js"; -import {withTypeScript} from "../setup/ts-macro.js"; -test("Can handle PostfixUnaryExpressions. #1", withTypeScript, (t, {typescript, useTypeChecker}) => { +test("Can handle PostfixUnaryExpressions. #1", "*", (t, {typescript, useTypeChecker}) => { // noinspection BadExpressionStatementJS const {result} = executeProgram( // language=TypeScript diff --git a/test/property-declaration/property-declaration.test.ts b/test/property-declaration/property-declaration.test.ts index 6d501e7..520def3 100644 --- a/test/property-declaration/property-declaration.test.ts +++ b/test/property-declaration/property-declaration.test.ts @@ -1,8 +1,7 @@ -import test from "ava"; +import {test} from "../setup/test-runner.js"; import {executeProgram} from "../setup/execute-program.js"; -import {withTypeScript, withTypeScriptVersions} from "../setup/ts-macro.js"; -test("Can evaluate and retrieve a PropertyDeclaration. #1", withTypeScript, (t, {typescript, useTypeChecker}) => { +test("Can evaluate and retrieve a PropertyDeclaration. #1", "*", (t, {typescript, useTypeChecker}) => { const {result} = executeProgram( // language=TypeScript ` @@ -20,7 +19,7 @@ test("Can evaluate and retrieve a PropertyDeclaration. #1", withTypeScript, (t, } }); -test("Can evaluate and retrieve a private PropertyDeclaration. #1", withTypeScriptVersions(">=3.8"), (t, {typescript, useTypeChecker}) => { +test("Can evaluate and retrieve a private PropertyDeclaration. #1", ">=3.8", (t, {typescript, useTypeChecker}) => { const {result} = executeProgram( // language=TypeScript ` diff --git a/test/setup/cached-fs.ts b/test/setup/cached-fs.ts index f98a26c..00bbd34 100644 --- a/test/setup/cached-fs.ts +++ b/test/setup/cached-fs.ts @@ -1,6 +1,7 @@ -import { TS } from "../../src/type/ts.js"; -import { FileSystem } from "../../src/type/file-system.js"; -import {CachedWorker, CachedWorkerOptions} from "./cached-worker.js"; +import type { TS } from "../../src/type/ts.js"; +import type { FileSystem } from "../../src/type/file-system.js"; +import type { CachedWorkerOptions} from "./cached-worker.js"; +import {CachedWorker} from "./cached-worker.js"; export interface CachedFsWorkerOptions extends CachedWorkerOptions { fs: TS.System | FileSystem; diff --git a/test/setup/create-compiler-host.ts b/test/setup/create-compiler-host.ts index eb48598..1c49ad5 100644 --- a/test/setup/create-compiler-host.ts +++ b/test/setup/create-compiler-host.ts @@ -1,5 +1,5 @@ -import {FileSystem} from "../../src/type/file-system.js"; -import {TS} from "../../src/type/ts.js"; +import type {FileSystem} from "../../src/type/file-system.js"; +import type {TS} from "../../src/type/ts.js"; import path from "crosspath"; export interface CreateCompilerHostOptions { diff --git a/test/setup/create-virtual-file-system.ts b/test/setup/create-virtual-file-system.ts index 4c71448..a4da926 100644 --- a/test/setup/create-virtual-file-system.ts +++ b/test/setup/create-virtual-file-system.ts @@ -1,6 +1,6 @@ import path from "crosspath"; -import {FileSystem} from "../../src/type/file-system.js"; -import {TestFileRecord} from "./test-file.js"; +import type {FileSystem} from "../../src/type/file-system.js"; +import type {TestFileRecord} from "./test-file.js"; import {Volume, createFsFromVolume} from "memfs"; export function createVirtualFileSystem(files: TestFileRecord[]): FileSystem { diff --git a/test/setup/execute-program.ts b/test/setup/execute-program.ts index dae94a8..b483a18 100644 --- a/test/setup/execute-program.ts +++ b/test/setup/execute-program.ts @@ -1,9 +1,10 @@ -import {TS} from "../../src/type/ts.js"; -import {TestResult} from "./test-result.js"; -import {createBuiltInModuleTestFiles, TestFile, TestFileEntry} from "./test-file.js"; -import {TestContext} from "./test-context.js"; +import type {TS} from "../../src/type/ts.js"; +import type {TestResult} from "./test-result.js"; +import type { TestFile, TestFileEntry} from "./test-file.js"; +import {createBuiltInModuleTestFiles} from "./test-file.js"; +import type {TestContext} from "./test-context.js"; import {createTestSetup} from "./test-setup.js"; -import {MaybeArray, PartialExcept} from "helpertypes"; +import type {MaybeArray, PartialExcept} from "helpertypes"; import path from "crosspath"; import {evaluate} from "../../src/interpreter/evaluate.js"; import {ensureArray} from "../../src/interpreter/util/array/ensure-array.js"; diff --git a/test/setup/test-context.ts b/test/setup/test-context.ts index c6169a0..dcf65be 100644 --- a/test/setup/test-context.ts +++ b/test/setup/test-context.ts @@ -1,5 +1,5 @@ -import {PartialExcept} from "helpertypes"; -import {EvaluateOptions} from "../../src/interpreter/evaluate-options.js"; +import type {PartialExcept} from "helpertypes"; +import type {EvaluateOptions} from "../../src/interpreter/evaluate-options.js"; import {LogLevelKind} from "../../src/interpreter/logger/log-level.js"; const _process = process; diff --git a/test/setup/test-file.ts b/test/setup/test-file.ts index ae9fcef..5528b27 100644 --- a/test/setup/test-file.ts +++ b/test/setup/test-file.ts @@ -1,9 +1,9 @@ import path from "crosspath"; import fs from "fs"; -import {TestContext} from "./test-context.js"; +import type {TestContext} from "./test-context.js"; import {generateRandomPath} from "../../src/interpreter/util/path/generate-random-path.js"; import {ensureArray} from "../../src/interpreter/util/array/ensure-array.js"; -import {MaybeArray} from "helpertypes"; +import type {MaybeArray} from "helpertypes"; import {CachedFs} from "./cached-fs.js"; import { requireModule } from "../../src/interpreter/util/loader/require-module.js"; diff --git a/test/setup/test-result.ts b/test/setup/test-result.ts index 628331c..bcd243b 100644 --- a/test/setup/test-result.ts +++ b/test/setup/test-result.ts @@ -1,5 +1,5 @@ -import {EvaluateResult} from "../../src/interpreter/evaluate-result.js"; -import { TestSetup } from "./test-setup.js"; +import type {EvaluateResult} from "../../src/interpreter/evaluate-result.js"; +import type { TestSetup } from "./test-setup.js"; export interface TestResult { result: EvaluateResult; diff --git a/test/setup/test-runner.ts b/test/setup/test-runner.ts new file mode 100644 index 0000000..e30978b --- /dev/null +++ b/test/setup/test-runner.ts @@ -0,0 +1,104 @@ +import path from "crosspath"; +import fs from "fs"; +import semver from "semver"; +import avaTest, {type ExecutionContext} from "ava"; +import type * as TS from "typescript"; + +function getNearestPackageJson(from = import.meta.url): Record | undefined { + // There may be a file protocol in from of the path + const normalizedFrom = path.urlToFilename(from); + const currentDir = path.dirname(normalizedFrom); + + const pkgPath = path.join(currentDir, "package.json"); + if (fs.existsSync(pkgPath)) { + return JSON.parse(fs.readFileSync(pkgPath, "utf-8")); + } else if (currentDir !== normalizedFrom) { + return getNearestPackageJson(currentDir); + } else { + return undefined; + } +} + +const pkg = getNearestPackageJson(); + +export interface ExecutionContextOptions { + typescript: typeof TS; + useTypeChecker: boolean; +} + +export type ExtendedImplementation = (t: ExecutionContext, options: ExecutionContextOptions) => void | Promise; + +const {devDependencies} = pkg as {devDependencies: Record}; + +// Map of all TypeScript versions parsed from package.json +const TS_OPTIONS_ENTRIES = new Map>(); + +const tsRangeRegex = /(npm:typescript@)?[\^~]*(.+)$/; + +const tsFilter = process.env.TS_VERSION; + +for (const [specifier, range] of Object.entries(devDependencies)) { + const tsMatch = range.match(tsRangeRegex); + + const tsMatchContext = tsMatch?.[1]; + const tsMatchVersion = tsMatch?.[2]; + + if (tsMatchVersion != null && (tsMatchContext === "npm:typescript@" || specifier === "typescript")) { + if (tsFilter === undefined || (tsFilter.toUpperCase() === "CURRENT" && specifier === "typescript") || semver.satisfies(tsMatchVersion, tsFilter, {includePrerelease: true})) { + TS_OPTIONS_ENTRIES.set(tsMatchVersion, { + typescript: (await import(specifier)).default + }); + } + } +} + +if (TS_OPTIONS_ENTRIES.size === 0) { + throw new Error(`The TS_VERSION environment variable matches none of the available TypeScript versions. +Filter: ${process.env.TS_VERSION} +Available TypeScript versions: ${[...TS_OPTIONS_ENTRIES.keys()].join(", ")}`); +} + +interface TestRunOptions { + only: boolean; + serial: boolean; + skip: boolean; +} + +export function test(title: string, tsVersionGlob: string | undefined, impl: ExtendedImplementation, runOptions?: Partial) { + const allOptions = [...TS_OPTIONS_ENTRIES.values()]; + const filteredOptions = + tsVersionGlob == null || tsVersionGlob === "*" + ? allOptions + : [...TS_OPTIONS_ENTRIES.entries()].filter(([version]) => semver.satisfies(version, tsVersionGlob, {includePrerelease: true})).map(([, options]) => options); + + for (const useTypeChecker of [true, false]) { + for (const currentOptions of allOptions) { + const matchesGlob = filteredOptions.includes(currentOptions); + const fullTitle = `${title} (TypeScript v${currentOptions.typescript.version}${matchesGlob ? "" : " is not applicable"}) (Use TypeChecker: ${useTypeChecker})`; + + const testHandler = async (t: ExecutionContext) => (matchesGlob ? impl(t, {...currentOptions, useTypeChecker}) : t.pass()); + + if (Boolean(runOptions?.only)) { + avaTest.only(fullTitle, testHandler); + } else if (Boolean(runOptions?.serial)) { + avaTest.serial(fullTitle, testHandler); + } else if (Boolean(runOptions?.skip)) { + avaTest.skip(fullTitle, testHandler); + } else { + avaTest(fullTitle, testHandler); + } + } + } +} + +test.only = function (title: string, tsVersionGlob: string | undefined, impl: ExtendedImplementation) { + return test(title, tsVersionGlob, impl, {only: true}); +}; + +test.serial = function (title: string, tsVersionGlob: string | undefined, impl: ExtendedImplementation) { + return test(title, tsVersionGlob, impl, {serial: true}); +}; + +test.skip = function (title: string, tsVersionGlob: string | undefined, impl: ExtendedImplementation) { + return test(title, tsVersionGlob, impl, {skip: true}); +}; diff --git a/test/setup/test-setup.ts b/test/setup/test-setup.ts index 38c414c..d2f407a 100644 --- a/test/setup/test-setup.ts +++ b/test/setup/test-setup.ts @@ -1,10 +1,12 @@ -import {createTestContext, TestContext} from "./test-context.js"; -import {FileSystem} from "../../src/type/file-system.js"; -import {createTestFileStructure, TestFile, TestFileEntry, TestFileStructure} from "./test-file.js"; +import type { TestContext} from "./test-context.js"; +import {createTestContext} from "./test-context.js"; +import type {FileSystem} from "../../src/type/file-system.js"; +import type { TestFile, TestFileEntry, TestFileStructure} from "./test-file.js"; +import {createTestFileStructure} from "./test-file.js"; import {createVirtualFileSystem} from "./create-virtual-file-system.js"; -import {TS} from "../../src/type/ts.js"; +import type {TS} from "../../src/type/ts.js"; import {createCompilerHost} from "./create-compiler-host.js"; -import {MaybeArray, PartialExcept} from "helpertypes"; +import type {MaybeArray, PartialExcept} from "helpertypes"; export interface TestSetup { context: TestContext; diff --git a/test/setup/ts-macro.ts b/test/setup/ts-macro.ts deleted file mode 100644 index fe5f831..0000000 --- a/test/setup/ts-macro.ts +++ /dev/null @@ -1,89 +0,0 @@ -import semver from "semver"; -import type {ExecutionContext, OneOrMoreMacros, Macro} from "ava"; -import type {TS} from "../../src/type/ts.js"; -import path from "crosspath"; -import fs from "fs"; - -function getNearestPackageJson(from = import.meta.url): Record | undefined { - // There may be a file protocol in from of the path - const normalizedFrom = path.urlToFilename(from); - const currentDir = path.dirname(normalizedFrom); - - const pkgPath = path.join(currentDir, "package.json"); - if (fs.existsSync(pkgPath)) { - return JSON.parse(fs.readFileSync(pkgPath, "utf-8")); - } else if (currentDir !== normalizedFrom) { - return getNearestPackageJson(currentDir); - } else { - return undefined; - } -} -const pkg = getNearestPackageJson(); - -// ava macros -export interface ExtendedImplementationArgumentOptions { - useTypeChecker: boolean; - typescript: typeof TS; - typescriptModuleSpecifier: string; -} -export type ExtendedImplementation = (t: ExecutionContext, options: ExtendedImplementationArgumentOptions) => void | Promise; -function makeTypeScriptMacro(version: string, specifier: string, useTypeChecker: boolean) { - const macro: Macro<[ExtendedImplementation]> = async (t, impl) => { - let typescript = await import(specifier); - if ("default" in typescript) { - typescript = typescript.default; - } - return impl(t, {useTypeChecker, typescript, typescriptModuleSpecifier: specifier}); - }; - macro.title = (provided = "") => `${provided} (TypeScript v${version}) (typeChecker: ${useTypeChecker})`; - - return macro; -} -const noMatchingVersionMacro: Macro<[ExtendedImplementation]> = t => { - t.pass("No matching TypeScript versions"); -}; -noMatchingVersionMacro.title = (provided = "") => `${provided} (No matching TypeScript versions)`; - -const {devDependencies} = pkg as {devDependencies: Record}; - -// Set of all TypeScript versions parsed from package.json -const availableTsVersions = new Set(); -// Map of TypeScript version to ava macro -const macros = new Map, Macro<[ExtendedImplementation]>]>(); - -const tsRangeRegex = /(npm:typescript@)?[\^~]*(.+)$/; -const filter = process.env.TS_VERSION; - -for (const [specifier, range] of Object.entries(devDependencies)) { - const match = range.match(tsRangeRegex); - if (match !== null) { - const [, context, version] = match; - if (context === "npm:typescript@" || specifier === "typescript") { - availableTsVersions.add(version); - if (filter === undefined || (filter.toUpperCase() === "CURRENT" && specifier === "typescript") || semver.satisfies(version, filter, {includePrerelease: true})) { - macros.set(version, [ - makeTypeScriptMacro(version, specifier, true), - makeTypeScriptMacro(version, specifier, false) - ]); - } - } - } -} - -if (macros.size === 0) { - throw new Error(`The TS_VERSION environment variable matches none of the available TypeScript versions. -Filter: ${process.env.TS_VERSION} -Available TypeScript versions: ${[...availableTsVersions].join(", ")}`); -} - -export function withTypeScriptVersions(extraFilter: string): OneOrMoreMacros<[ExtendedImplementation], unknown> { - const filteredMacros = [...macros.entries()].filter(([version]) => semver.satisfies(version, extraFilter, {includePrerelease: true})).flatMap(([, macro]) => macro); - - if (filteredMacros.length === 0) { - filteredMacros.push(noMatchingVersionMacro); - } - - return filteredMacros as OneOrMoreMacros<[ExtendedImplementation], unknown>; -} - -export const withTypeScript = withTypeScriptVersions("*"); diff --git a/test/spread-assignment/spread-assignment.test.ts b/test/spread-assignment/spread-assignment.test.ts index c0a59d5..ba99e0d 100644 --- a/test/spread-assignment/spread-assignment.test.ts +++ b/test/spread-assignment/spread-assignment.test.ts @@ -1,8 +1,7 @@ -import test from "ava"; +import {test} from "../setup/test-runner.js"; import {executeProgram} from "../setup/execute-program.js"; -import {withTypeScript} from "../setup/ts-macro.js"; -test("Can handle Spread assignments to objects. #1", withTypeScript, (t, {typescript, useTypeChecker}) => { +test("Can handle Spread assignments to objects. #1", "*", (t, {typescript, useTypeChecker}) => { const {result} = executeProgram( // language=TypeScript ` diff --git a/test/spread-element/spread-element.test.ts b/test/spread-element/spread-element.test.ts index 9a3ed2e..6cae4da 100644 --- a/test/spread-element/spread-element.test.ts +++ b/test/spread-element/spread-element.test.ts @@ -1,8 +1,7 @@ -import test from "ava"; +import {test} from "../setup/test-runner.js"; import {executeProgram} from "../setup/execute-program.js"; -import {withTypeScript} from "../setup/ts-macro.js"; -test("Can handle Spread Elements in arrays. #1", withTypeScript, (t, {typescript, useTypeChecker}) => { +test("Can handle Spread Elements in arrays. #1", "*", (t, {typescript, useTypeChecker}) => { const {result} = executeProgram( // language=TypeScript ` @@ -20,7 +19,7 @@ test("Can handle Spread Elements in arrays. #1", withTypeScript, (t, {typescript else t.deepEqual(result.value as number[], [1, 2, 3]); }); -test("Can handle Spread Elements in CallExpressions. #1", withTypeScript, (t, {typescript, useTypeChecker}) => { +test("Can handle Spread Elements in CallExpressions. #1", "*", (t, {typescript, useTypeChecker}) => { const {result} = executeProgram( // language=TypeScript ` diff --git a/test/switch/switch.test.ts b/test/switch/switch.test.ts index 967f80c..b5d0151 100644 --- a/test/switch/switch.test.ts +++ b/test/switch/switch.test.ts @@ -1,8 +1,7 @@ -import test from "ava"; +import {test} from "../setup/test-runner.js"; import {executeProgram} from "../setup/execute-program.js"; -import {withTypeScript} from "../setup/ts-macro.js"; -test("Can evaluate a CallExpression with a SwitchStatement. #1", withTypeScript, (t, {typescript, useTypeChecker}) => { +test("Can evaluate a CallExpression with a SwitchStatement. #1", "*", (t, {typescript, useTypeChecker}) => { const {result} = executeProgram( // language=TypeScript ` @@ -27,7 +26,7 @@ test("Can evaluate a CallExpression with a SwitchStatement. #1", withTypeScript, else t.deepEqual(result.value, 0); }); -test("Can evaluate a CallExpression with a SwitchStatement. #2", withTypeScript, (t, {typescript, useTypeChecker}) => { +test("Can evaluate a CallExpression with a SwitchStatement. #2", "*", (t, {typescript, useTypeChecker}) => { const {result} = executeProgram( // language=TypeScript ` @@ -52,7 +51,7 @@ test("Can evaluate a CallExpression with a SwitchStatement. #2", withTypeScript, else t.deepEqual(result.value, 1); }); -test("Can evaluate a CallExpression with a SwitchStatement. #3", withTypeScript, (t, {typescript, useTypeChecker}) => { +test("Can evaluate a CallExpression with a SwitchStatement. #3", "*", (t, {typescript, useTypeChecker}) => { const {result} = executeProgram( // language=TypeScript ` @@ -77,7 +76,7 @@ test("Can evaluate a CallExpression with a SwitchStatement. #3", withTypeScript, else t.deepEqual(result.value, 2); }); -test("Can evaluate a CallExpression with a SwitchStatement. #4", withTypeScript, (t, {typescript, useTypeChecker}) => { +test("Can evaluate a CallExpression with a SwitchStatement. #4", "*", (t, {typescript, useTypeChecker}) => { const {result} = executeProgram( // language=TypeScript ` @@ -104,7 +103,7 @@ test("Can evaluate a CallExpression with a SwitchStatement. #4", withTypeScript, else t.deepEqual(result.value, 4); }); -test("Can evaluate a CallExpression with a SwitchStatement. #5", withTypeScript, (t, {typescript, useTypeChecker}) => { +test("Can evaluate a CallExpression with a SwitchStatement. #5", "*", (t, {typescript, useTypeChecker}) => { const {result} = executeProgram( // language=TypeScript ` @@ -136,7 +135,7 @@ test("Can evaluate a CallExpression with a SwitchStatement. #5", withTypeScript, else t.deepEqual(result.value, 0); }); -test("Can evaluate a CallExpression with a SwitchStatement with a fall-through. #1", withTypeScript, (t, {typescript, useTypeChecker}) => { +test("Can evaluate a CallExpression with a SwitchStatement with a fall-through. #1", "*", (t, {typescript, useTypeChecker}) => { const {result} = executeProgram( // language=TypeScript ` diff --git a/test/try-catch/try-catch.test.ts b/test/try-catch/try-catch.test.ts index 47801eb..7fee4bf 100644 --- a/test/try-catch/try-catch.test.ts +++ b/test/try-catch/try-catch.test.ts @@ -1,8 +1,7 @@ -import test from "ava"; +import {test} from "../setup/test-runner.js"; import {executeProgram} from "../setup/execute-program.js"; -import {withTypeScript} from "../setup/ts-macro.js"; -test("Can capture errors that would otherwise throw with try-catch. #1", withTypeScript, (t, {typescript, useTypeChecker}) => { +test("Can capture errors that would otherwise throw with try-catch. #1", "*", (t, {typescript, useTypeChecker}) => { const {result} = executeProgram( // language=TypeScript ` @@ -24,7 +23,7 @@ test("Can capture errors that would otherwise throw with try-catch. #1", withTyp else t.true(result.value instanceof Error); }); -test("Will execute the 'finally' branch correctly. #1", withTypeScript, (t, {typescript, useTypeChecker}) => { +test("Will execute the 'finally' branch correctly. #1", "*", (t, {typescript, useTypeChecker}) => { let executedFinally = false; executeProgram( // language=TypeScript @@ -56,7 +55,7 @@ test("Will execute the 'finally' branch correctly. #1", withTypeScript, (t, {typ t.true(executedFinally); }); -test("Will execute the 'finally' branch correctly. #2", withTypeScript, (t, {typescript, useTypeChecker}) => { +test("Will execute the 'finally' branch correctly. #2", "*", (t, {typescript, useTypeChecker}) => { let executedFinally = false; executeProgram( // language=TypeScript @@ -90,8 +89,7 @@ test("Will execute the 'finally' branch correctly. #2", withTypeScript, (t, {typ t.true(executedFinally); }); - -test("Will execute the 'finally' branch correctly. #3", withTypeScript, (t, {typescript, useTypeChecker}) => { +test("Will execute the 'finally' branch correctly. #3", "*", (t, {typescript, useTypeChecker}) => { let executedFinally = false; executeProgram( // language=TypeScript diff --git a/test/type-alias-declaration/type-alias-declaration.test.ts b/test/type-alias-declaration/type-alias-declaration.test.ts index 9db0742..0b63c14 100644 --- a/test/type-alias-declaration/type-alias-declaration.test.ts +++ b/test/type-alias-declaration/type-alias-declaration.test.ts @@ -1,8 +1,7 @@ -import test from "ava"; +import {test} from "../setup/test-runner.js"; import {executeProgram} from "../setup/execute-program.js"; -import {withTypeScript} from "../setup/ts-macro.js"; -test("Understands TypeAliasDeclarations. #1", withTypeScript, (t, {typescript, useTypeChecker}) => { +test("Understands TypeAliasDeclarations. #1", "*", (t, {typescript, useTypeChecker}) => { const {result} = executeProgram( // language=TypeScript ` diff --git a/test/type-of-expression/type-of-expression.test.ts b/test/type-of-expression/type-of-expression.test.ts index 8fff50c..859528c 100644 --- a/test/type-of-expression/type-of-expression.test.ts +++ b/test/type-of-expression/type-of-expression.test.ts @@ -1,8 +1,7 @@ -import test from "ava"; +import {test} from "../setup/test-runner.js"; import {executeProgram} from "../setup/execute-program.js"; -import {withTypeScript} from "../setup/ts-macro.js"; -test("Can evaluate a TypeOfExpression #1", withTypeScript, (t, {typescript, useTypeChecker}) => { +test("Can evaluate a TypeOfExpression #1", "*", (t, {typescript, useTypeChecker}) => { const {result} = executeProgram( // language=TypeScript ` @@ -19,7 +18,7 @@ test("Can evaluate a TypeOfExpression #1", withTypeScript, (t, {typescript, useT else t.deepEqual(result.value, "bigint"); }); -test("Can evaluate a TypeOfExpression #2", withTypeScript, (t, {typescript, useTypeChecker}) => { +test("Can evaluate a TypeOfExpression #2", "*", (t, {typescript, useTypeChecker}) => { const {result} = executeProgram( // language=TypeScript ` diff --git a/test/void-expression/void-expression.test.ts b/test/void-expression/void-expression.test.ts index a9691d1..fa2190e 100644 --- a/test/void-expression/void-expression.test.ts +++ b/test/void-expression/void-expression.test.ts @@ -1,8 +1,7 @@ -import test from "ava"; +import {test} from "../setup/test-runner.js"; import {executeProgram} from "../setup/execute-program.js"; -import {withTypeScript} from "../setup/ts-macro.js"; -test("Can evaluate VoidExpressions #1", withTypeScript, (t, {typescript, useTypeChecker}) => { +test("Can evaluate VoidExpressions #1", "*", (t, {typescript, useTypeChecker}) => { const {result} = executeProgram( // language=TypeScript ` @@ -21,7 +20,7 @@ test("Can evaluate VoidExpressions #1", withTypeScript, (t, {typescript, useType else t.deepEqual(result.value, 1); }); -test("Can evaluate VoidExpressions #2", withTypeScript, (t, {typescript, useTypeChecker}) => { +test("Can evaluate VoidExpressions #2", "*", (t, {typescript, useTypeChecker}) => { const {result} = executeProgram( // language=TypeScript ` @@ -39,7 +38,7 @@ test("Can evaluate VoidExpressions #2", withTypeScript, (t, {typescript, useType else t.deepEqual(result.value, undefined); }); -test("Can evaluate VoidExpressions #3", withTypeScript, (t, {typescript, useTypeChecker}) => { +test("Can evaluate VoidExpressions #3", "*", (t, {typescript, useTypeChecker}) => { const {result} = executeProgram( // language=TypeScript ` diff --git a/test/while/while.test.ts b/test/while/while.test.ts index ac24d7d..a6629f6 100644 --- a/test/while/while.test.ts +++ b/test/while/while.test.ts @@ -1,8 +1,7 @@ -import test from "ava"; import {executeProgram} from "../setup/execute-program.js"; -import {withTypeScript} from "../setup/ts-macro.js"; +import {test} from "../setup/test-runner.js"; -test("Can evaluate a CallExpression with a WhileStatement. #1", withTypeScript, (t, {typescript, useTypeChecker}) => { +test("Can evaluate a CallExpression with a WhileStatement. #1", "*", (t, {typescript, useTypeChecker}) => { const {result} = executeProgram( // language=TypeScript ` diff --git a/tsconfig.json b/tsconfig.json index 119819e..5aca1a1 100644 --- a/tsconfig.json +++ b/tsconfig.json @@ -2,7 +2,6 @@ "extends": "@wessberg/ts-config", "include": ["src/**/*.*", "test/**/*.*"], "compilerOptions": { - "module": "esnext", "target": "es2019", "importHelpers": false }