diff --git a/.eslintignore b/.eslintignore deleted file mode 100644 index bf76b82..0000000 --- a/.eslintignore +++ /dev/null @@ -1,7 +0,0 @@ -### Dependencies ### -.yarn/ -node_modules/ - -### Auto-generated ### -build/ -dist/ diff --git a/.eslintrc.json b/.eslintrc.json deleted file mode 100644 index dea8d66..0000000 --- a/.eslintrc.json +++ /dev/null @@ -1,252 +0,0 @@ -{ - "root": true, - "env": { - "browser": true, - "es6": true, - "node": true - }, - "settings": { - "import/resolver": { - "typescript": { - "alwaysTryTypes": true, - "project": "./tsconfig.json" - } - }, - "react": { - "version": "detect" - } - }, - "parserOptions": { - "ecmaVersion": "latest", - "project": "./tsconfig.json", - "sourceType": "module" - }, - "plugins": [ - "@typescript-eslint", - "eslint-plugin-import", - "eslint-plugin-jsdoc", - "eslint-plugin-react", - "etc", - "react-hooks", - "sonarjs" - ], - "extends": [ - "eslint:recommended", - "plugin:@typescript-eslint/recommended", - "plugin:@typescript-eslint/recommended-requiring-type-checking", - "plugin:etc/recommended", - "plugin:import/typescript", - "plugin:react/recommended", - "plugin:react/jsx-runtime", - "plugin:sonarjs/recommended" - ], - "overrides": [{ - "files": "*.ts?(x)", - "parser": "@typescript-eslint/parser" - }, { - "files": "*.test.ts?(x)", - "rules": { - "@typescript-eslint/no-non-null-assertion": "off", - "@typescript-eslint/restrict-template-expressions": "off", - "etc/throw-error": "off" - } - }, { - "files": "*.typetest.ts?(x)", - "rules": { - "@typescript-eslint/ban-ts-comment": ["error", { "ts-expect-error": false }], - "etc/throw-error": "off" - } - }, { - "files": "*.js?(x)", - "rules": { - "@typescript-eslint/explicit-function-return-type": "off", - "@typescript-eslint/explicit-member-accessibility": "off", - "@typescript-eslint/explicit-module-boundary-types": "off", - "@typescript-eslint/no-unsafe-argument": "off", - "@typescript-eslint/no-unsafe-assignment": "off", - "@typescript-eslint/no-unsafe-member-access": "off", - "@typescript-eslint/no-unsafe-call": "off", - "@typescript-eslint/no-unsafe-return": "off", - "@typescript-eslint/no-var-requires": "off", - "@typescript-eslint/restrict-plus-operands": "off", - "@typescript-eslint/restrict-template-expressions": "off" - } - }], - "rules": { - "@typescript-eslint/ban-types": "error", - "@typescript-eslint/comma-dangle": ["error", "always-multiline"], - "@typescript-eslint/consistent-type-assertions": "error", - "@typescript-eslint/dot-notation": "error", - "@typescript-eslint/explicit-function-return-type": ["error", { "allowExpressions": true }], - "@typescript-eslint/explicit-member-accessibility": "error", - "@typescript-eslint/explicit-module-boundary-types": "error", - "@typescript-eslint/member-ordering": ["error", { - "classes": [ - "static-field", - "field", - "constructor", - "static-method", - "abstract-method", - "protected-method", - "public-method", - "private-method" - ], - "interfaces": { "order": "alphabetically" }, - "typeLiterals": { "order": "alphabetically" } - }], - "@typescript-eslint/member-delimiter-style": ["error", { - "multiline": { - "delimiter": "semi", - "requireLast": true - }, - "singleline": { - "delimiter": "semi", - "requireLast": true - } - }], - "@typescript-eslint/no-empty-function": "error", - "@typescript-eslint/no-empty-interface": "error", - "@typescript-eslint/no-explicit-any": ["error", { "ignoreRestArgs": true }], - "@typescript-eslint/no-floating-promises": "off", - "@typescript-eslint/no-inferrable-types": ["error", { - "ignoreParameters": true, - "ignoreProperties": true - }], - "@typescript-eslint/no-misused-new": "error", - "@typescript-eslint/no-namespace": "off", - "@typescript-eslint/no-non-null-assertion": "error", - "@typescript-eslint/no-redundant-type-constituents": "error", - "@typescript-eslint/no-shadow": ["error", { "hoist": "all" }], - "@typescript-eslint/no-unused-expressions": ["error", { "allowTernary": true }], - "@typescript-eslint/no-unused-vars": ["error", { - "destructuredArrayIgnorePattern": "^_", - "ignoreRestSiblings": true - }], - "@typescript-eslint/no-use-before-define": ["error", { - "functions": false, - "classes": false - }], - "@typescript-eslint/no-var-requires": "error", - "@typescript-eslint/parameter-properties": "error", - "@typescript-eslint/prefer-for-of": "error", - "@typescript-eslint/prefer-function-type": "error", - "@typescript-eslint/prefer-namespace-keyword": "error", - "@typescript-eslint/quotes": ["error", "double", { - "avoidEscape": true, - "allowTemplateLiterals": false - }], - "@typescript-eslint/restrict-template-expressions": ["error", { - "allowNumber": true, - "allowBoolean": true, - "allowNullish": true - }], - "@typescript-eslint/semi": "error", - "@typescript-eslint/space-infix-ops": "error", - "@typescript-eslint/triple-slash-reference": "error", - "@typescript-eslint/type-annotation-spacing": "error", - "@typescript-eslint/unbound-method": ["error", { "ignoreStatic": true }], - "@typescript-eslint/unified-signatures": "error", - "array-bracket-spacing": "error", - "arrow-parens": ["error", "as-needed"], - "arrow-spacing": "error", - "brace-style": "error", - "camelcase": "error", - "comma-spacing": "error", - "computed-property-spacing": "error", - "constructor-super": "error", - "curly": "error", - "etc/no-commented-out-code": "error", - "etc/throw-error": "error", - "eol-last": "error", - "eqeqeq": "error", - "func-style": ["error", "declaration", { "allowArrowFunctions": true }], - "import/newline-after-import": "error", - "import/no-absolute-path": "error", - "import/no-cycle": ["error", { - "allowUnsafeDynamicCyclicDependency": true, - "ignoreExternal": true - }], - "import/no-duplicates": "error", - "import/no-import-module-exports": "error", - "import/no-namespace": "error", - "import/no-relative-packages": "error", - "import/no-unresolved": "error", - "import/no-useless-path-segments": "error", - "import/order": ["error", { - "alphabetize": { - "caseInsensitive": false, - "order": "asc" - }, - "newlines-between": "always", - "groups": ["external", "parent", "sibling"] - }], - "jsdoc/check-alignment": "error", - "jsdoc/check-indentation": ["error", { "excludeTags": ["example", "param", "returns"] }], - "jsdoc/tag-lines": ["error", "any", { "startLines": 1 }], - "jsx-quotes": "error", - "keyword-spacing": "error", - "linebreak-style": "error", - "max-classes-per-file": ["error", 1], - "max-len": ["error", { - "code": 120, - "comments": 80, - "ignoreRegExpLiterals": true, - "ignorePattern": "^import (\\{ )?\\w+( \\})? from \".+\";$", - "ignoreUrls": true, - "tabWidth": 2 - }], - "new-parens": "error", - "no-caller": "error", - "no-cond-assign": "error", - "no-console": "error", - "no-duplicate-imports": "error", - "no-empty-function": "error", - "no-eval": "error", - "no-extra-boolean-cast": ["error", { "enforceForLogicalOperands": true }], - "no-invalid-this": "error", - "no-labels": "error", - "no-multiple-empty-lines": ["error", { "max": 1, "maxEOF": 0, "maxBOF": 0 }], - "no-multi-spaces": "error", - "no-new-wrappers": "error", - "no-param-reassign": "error", - "no-tabs": "error", - "no-throw-literal": "error", - "no-trailing-spaces": "error", - "no-underscore-dangle": "error", - "no-use-before-define": "off", - "no-useless-computed-key": ["error", { "enforceForClassMembers": true }], - "no-var": "error", - "object-curly-spacing": ["error", "always"], - "object-shorthand": "error", - "one-var": ["error", "never"], - "prefer-const": "error", - "quote-props": ["error", "as-needed"], - "radix": "error", - "rest-spread-spacing": "error", - "react/display-name": "off", - "react/hook-use-state": "error", - "react/jsx-boolean-value": ["error", "always"], - "react/jsx-closing-bracket-location": "error", - "react/jsx-curly-spacing": ["error", { "when": "never" }], - "react/jsx-equals-spacing": ["error", "never"], - "react/jsx-max-props-per-line": ["error", { - "maximum": 1, - "when": "multiline" - }], - "react/jsx-no-bind": "error", - "react/jsx-no-literals": "error", - "react/jsx-tag-spacing": "error", - "react/prop-types": "off", - "react/self-closing-comp": "error", - "react-hooks/rules-of-hooks": "error", - "semi-spacing": "error", - "sonarjs/cognitive-complexity": "off", - "sonarjs/no-duplicate-string": "off", - "sonarjs/no-inverted-boolean-check": "error", - "sort-keys": "error", - "space-before-blocks": "error", - "space-in-parens": "error", - "spaced-comment": "error", - "switch-colon-spacing": "error" - } -} diff --git a/eslint.config.mjs b/eslint.config.mjs new file mode 100644 index 0000000..af51afc --- /dev/null +++ b/eslint.config.mjs @@ -0,0 +1,277 @@ +// @ts-check +import eslintJs from "@eslint/js"; +import stylistic from "@stylistic/eslint-plugin"; +import { defineConfig } from "eslint/config"; +import importPlugin from "eslint-plugin-import"; +import jsdoc from "eslint-plugin-jsdoc"; +import perfectionist from "eslint-plugin-perfectionist"; +import reactPlugin from "eslint-plugin-react"; +import sonarjs from "eslint-plugin-sonarjs"; +import globals from "globals"; +import eslintTs from "typescript-eslint"; + +const project = "./tsconfig.json"; + +export default defineConfig( + eslintJs.configs.recommended, + ...eslintTs.configs.recommendedTypeChecked, + importPlugin.flatConfigs?.typescript, + reactPlugin.configs.flat?.recommended, + reactPlugin.configs.flat?.["jsx-runtime"], + sonarjs.configs.recommended, + stylistic.configs.customize({ + braceStyle: "1tbs", + quotes: "double", + semi: true, + }), + { + ignores: [ + "**/.turbo/**", + "**/.yarn/**", + "**/build/**", + "**/dist/**", + "**/node_modules/**", + ], + }, + { + languageOptions: { + globals: { ...globals.browser, ...globals.node }, + parserOptions: { + ecmaFeatures: { jsx: true }, + ecmaVersion: 2024, + jsxPragma: null, + project, + tsconfigRootDir: import.meta.dirname, + }, + sourceType: "module", + }, + linterOptions: { + reportUnusedDisableDirectives: "error", + }, + plugins: { + jsdoc, + perfectionist, + }, + settings: { + "import/resolver": { + typescript: { + alwaysTryTypes: true, + project, + }, + }, + react: { + version: "detect", + }, + }, + }, + { + rules: { + "@stylistic/arrow-parens": ["error", "as-needed"], + "@stylistic/indent-binary-ops": "off", + "@stylistic/jsx-curly-brace-presence": ["error", { children: "always" }], + "@stylistic/jsx-curly-newline": "off", + "@stylistic/jsx-pascal-case": ["error", { allowNamespace: true }], + "@stylistic/jsx-self-closing-comp": "error", + "@stylistic/jsx-wrap-multilines": ["error", { prop: "ignore" }], + "@stylistic/linebreak-style": "error", + "@stylistic/max-len": ["error", { + code: 120, + comments: 80, + ignorePattern: /^import \{?.+\}? from ["'].+["'];$/iu.source, + ignoreRegExpLiterals: true, + ignoreUrls: true, + tabWidth: 2, + }], + "@stylistic/member-delimiter-style": ["error", { singleline: { requireLast: true } }], + "@stylistic/no-extra-semi": "error", + "@stylistic/no-mixed-spaces-and-tabs": "error", + "@stylistic/no-multi-spaces": "error", + "@stylistic/no-multiple-empty-lines": ["error", { max: 1, maxBOF: 0, maxEOF: 0 }], + "@stylistic/object-curly-spacing": ["error", "always"], + "@stylistic/object-property-newline": ["error", { allowAllPropertiesOnSameLine: true }], + "@stylistic/padded-blocks": ["error", "never", { allowSingleLineBlocks: false }], + "@stylistic/quote-props": ["error", "as-needed"], + "@stylistic/quotes": ["error", "double", { + allowTemplateLiterals: "always", + avoidEscape: true, + }], + "@stylistic/space-before-function-paren": ["error", { anonymous: "never", named: "never" }], + "@stylistic/switch-colon-spacing": "error", + "@typescript-eslint/consistent-type-assertions": "error", + "@typescript-eslint/consistent-type-exports": "error", + "@typescript-eslint/consistent-type-imports": ["error", { fixStyle: "inline-type-imports" }], + "@typescript-eslint/dot-notation": "error", + "@typescript-eslint/explicit-function-return-type": ["error", { allowExpressions: true }], + "@typescript-eslint/explicit-member-accessibility": "error", + "@typescript-eslint/explicit-module-boundary-types": "error", + "@typescript-eslint/member-ordering": ["error", { + classes: [ + "static-field", + "field", + "constructor", + "static-method", + "abstract-method", + "protected-method", + "public-method", + "private-method", + ], + interfaces: { memberTypes: "never" }, + typeLiterals: { memberTypes: "never" }, + }], + "@typescript-eslint/no-empty-function": "error", + "@typescript-eslint/no-empty-object-type": "error", + "@typescript-eslint/no-explicit-any": ["error", { ignoreRestArgs: true }], + "@typescript-eslint/no-floating-promises": "off", + "@typescript-eslint/no-import-type-side-effects": "error", + "@typescript-eslint/no-inferrable-types": ["error", { + ignoreParameters: true, + ignoreProperties: true, + }], + "@typescript-eslint/no-misused-new": "error", + "@typescript-eslint/no-namespace": "off", + "@typescript-eslint/no-non-null-assertion": "error", + "@typescript-eslint/no-redundant-type-constituents": "error", + "@typescript-eslint/no-shadow": ["error", { hoist: "all" }], + "@typescript-eslint/no-unused-expressions": ["error", { allowTernary: true }], + "@typescript-eslint/no-unused-vars": ["error", { + destructuredArrayIgnorePattern: "^_", + ignoreRestSiblings: true, + }], + "@typescript-eslint/no-use-before-define": ["error", { + classes: false, + functions: false, + }], + "@typescript-eslint/no-useless-constructor": "error", + "@typescript-eslint/no-var-requires": "error", + "@typescript-eslint/only-throw-error": "error", + "@typescript-eslint/parameter-properties": "error", + "@typescript-eslint/prefer-for-of": "error", + "@typescript-eslint/prefer-function-type": "error", + "@typescript-eslint/prefer-namespace-keyword": "error", + "@typescript-eslint/require-array-sort-compare": "error", + "@typescript-eslint/restrict-template-expressions": ["error", { + allowBoolean: true, + allowNullish: true, + allowNumber: true, + }], + "@typescript-eslint/triple-slash-reference": "error", + "@typescript-eslint/unbound-method": ["error", { ignoreStatic: true }], + "@typescript-eslint/unified-signatures": "error", + camelcase: "error", + "constructor-super": "error", + curly: "error", + eqeqeq: "error", + "func-style": ["error", "declaration", { allowArrowFunctions: true }], + "import/newline-after-import": "error", + "import/no-absolute-path": "error", + "import/no-cycle": ["error", { + allowUnsafeDynamicCyclicDependency: true, + ignoreExternal: true, + maxDepth: 1, + }], + "import/no-duplicates": ["error", { "prefer-inline": true }], + "import/no-import-module-exports": "error", + "import/no-namespace": ["error", { ignore: ["eslint-plugin-import"] }], + "import/no-relative-packages": "error", + "import/no-unresolved": "error", + "import/no-useless-path-segments": "error", + "import/order": ["error", { + alphabetize: { + caseInsensitive: false, + order: "asc", + orderImportKind: "asc", + }, + groups: [ + "builtin", + ["external", "internal"], + "parent", + "sibling", + "index", + "type", + ], + "newlines-between": "always", + }], + "jsdoc/check-alignment": "error", + "jsdoc/check-indentation": ["error", { excludeTags: ["example", "param", "returns"] }], + "jsdoc/tag-lines": ["error", "any", { startLines: 1 }], + "max-classes-per-file": ["error", 1], + "no-caller": "error", + "no-cond-assign": "error", + "no-console": "error", + "no-duplicate-imports": "error", + "no-empty-function": "error", + "no-eval": "error", + "no-extra-boolean-cast": ["error", { enforceForLogicalOperands: true }], + "no-inner-declarations": ["error", "both"], + "no-invalid-this": "error", + "no-labels": "error", + "no-new-wrappers": "error", + "no-param-reassign": "error", + "no-throw-literal": "off", + "no-underscore-dangle": "error", + "no-use-before-define": "off", + "no-useless-computed-key": ["error", { enforceForClassMembers: true }], + "no-useless-constructor": "off", + "no-var": "error", + "object-shorthand": "error", + "one-var": ["error", "never"], + "perfectionist/sort-interfaces": ["error", { ignoreCase: false, type: "natural" }], + "perfectionist/sort-intersection-types": ["error", { ignoreCase: false, type: "natural" }], + "perfectionist/sort-object-types": ["error", { ignoreCase: false, type: "natural" }], + "perfectionist/sort-objects": ["error", { ignoreCase: false, type: "natural" }], + "perfectionist/sort-union-types": ["error", { ignoreCase: false, type: "natural" }], + "prefer-const": "error", + radix: "error", + "react/display-name": "off", + "react/hook-use-state": "error", + "react/jsx-boolean-value": ["error", "always"], + "react/jsx-no-bind": "error", + "react/jsx-no-literals": "error", + "react/prop-types": "off", + "sonarjs/cognitive-complexity": "off", + "sonarjs/different-types-comparison": "off", + "sonarjs/function-return-type": "off", + "sonarjs/no-duplicate-string": "off", + "sonarjs/no-extend-native": "off", + "sonarjs/no-nested-functions": "off", + "sonarjs/no-selector-parameter": "off", + "sonarjs/no-unused-expressions": "off", + "sonarjs/no-unused-vars": "off", + "sonarjs/prefer-read-only-props": "off", + "sort-imports": ["error", { ignoreDeclarationSort: true }], + }, + }, + { + files: ["**/*.?(c|m)js"], + languageOptions: { + parserOptions: { + programs: null, + project: false, + }, + }, + rules: { + ...eslintTs.configs.disableTypeChecked.rules, + "@typescript-eslint/explicit-function-return-type": "off", + "@typescript-eslint/explicit-module-boundary-types": "off", + "sonarjs/no-unused-vars": "error", + }, + }, + { + files: ["**/*.cjs"], + rules: { + "@typescript-eslint/no-require-imports": "off", + "@typescript-eslint/no-var-requires": "off", + }, + }, + { + files: ["**/*.test.ts?(x)"], + rules: { + "@typescript-eslint/no-non-null-assertion": "off", + "@typescript-eslint/prefer-promise-reject-errors": "off", + "@typescript-eslint/restrict-template-expressions": "off", + "sonarjs/assertions-in-tests": "off", + "sonarjs/no-empty-test-file": "off", + "sonarjs/no-nested-functions": "off", + }, + }, +); diff --git a/examples/jest/jest.config.ts b/examples/jest/jest.config.ts index 1d6f9f1..37ced07 100644 --- a/examples/jest/jest.config.ts +++ b/examples/jest/jest.config.ts @@ -1,4 +1,4 @@ -import { type Config } from "jest"; +import type { Config } from "jest"; const jestConfig: Config = { preset: "ts-jest", diff --git a/examples/jest/package.json b/examples/jest/package.json index c7f9862..cd1cf90 100644 --- a/examples/jest/package.json +++ b/examples/jest/package.json @@ -14,6 +14,6 @@ "jest": "^29.7.0", "ts-jest": "^29.1.2", "ts-node": "^10.9.2", - "typescript": "^5.4.2" + "typescript": "^5.9.3" } } diff --git a/examples/mocha/package.json b/examples/mocha/package.json index 778a646..35cb0b6 100644 --- a/examples/mocha/package.json +++ b/examples/mocha/package.json @@ -13,6 +13,6 @@ "@types/node": "^24.10.1", "mocha": "^10.3.0", "ts-node": "^10.9.2", - "typescript": "^5.4.2" + "typescript": "^5.9.3" } } diff --git a/examples/mocha/test/hooks.ts b/examples/mocha/test/hooks.ts index 4ca6597..f439829 100644 --- a/examples/mocha/test/hooks.ts +++ b/examples/mocha/test/hooks.ts @@ -1,4 +1,3 @@ -/* eslint-disable react-hooks/rules-of-hooks */ import { usePlugin } from "@assertive-ts/core"; import { SymbolPlugin } from "@examples/symbol-plugin"; diff --git a/examples/symbolPlugin/package.json b/examples/symbolPlugin/package.json index 0a96b92..6ad7da5 100644 --- a/examples/symbolPlugin/package.json +++ b/examples/symbolPlugin/package.json @@ -10,7 +10,7 @@ }, "devDependencies": { "@assertive-ts/core": "workspace:^", - "typescript": "^5.4.2" + "typescript": "^5.9.3" }, "peerDependencies": { "@assertive-ts/core": "*" diff --git a/examples/symbolPlugin/src/lib/SymbolAssertion.ts b/examples/symbolPlugin/src/lib/SymbolAssertion.ts index d2044ea..5f531c2 100644 --- a/examples/symbolPlugin/src/lib/SymbolAssertion.ts +++ b/examples/symbolPlugin/src/lib/SymbolAssertion.ts @@ -1,7 +1,6 @@ import { Assertion, AssertionError } from "@assertive-ts/core"; export class SymbolAssertion extends Assertion { - public constructor(actual: symbol) { super(actual); } diff --git a/examples/symbolPlugin/src/main.ts b/examples/symbolPlugin/src/main.ts index c59a9b3..a16fa4c 100644 --- a/examples/symbolPlugin/src/main.ts +++ b/examples/symbolPlugin/src/main.ts @@ -1,7 +1,7 @@ -import { Plugin } from "@assertive-ts/core"; - import { SymbolAssertion } from "./lib/SymbolAssertion"; +import type { Plugin } from "@assertive-ts/core"; + declare module "@assertive-ts/core" { export interface Expect { diff --git a/package.json b/package.json index 062b1dc..4894250 100644 --- a/package.json +++ b/package.json @@ -20,22 +20,24 @@ "compile": "turbo run compile", "docs": "turbo docs", "lint": "eslint .", + "lint:fix": "eslint . --fix", "release": "turbo release --concurrency=1", "test": "turbo run test" }, "devDependencies": { - "@typescript-eslint/eslint-plugin": "^7.3.0", - "@typescript-eslint/parser": "^7.3.0", - "eslint": "^8.57.0", - "eslint-import-resolver-typescript": "^3.6.1", - "eslint-plugin-etc": "^2.0.3", - "eslint-plugin-import": "^2.29.1", - "eslint-plugin-jsdoc": "^48.2.1", - "eslint-plugin-react": "^7.34.1", - "eslint-plugin-react-hooks": "^4.6.0", - "eslint-plugin-sonarjs": "^0.24.0", + "@eslint/js": "^9.39.1", + "@stylistic/eslint-plugin": "^5.6.1", + "eslint": "^9.39.1", + "eslint-import-resolver-typescript": "^4.4.4", + "eslint-plugin-import": "^2.32.0", + "eslint-plugin-jsdoc": "^61.2.1", + "eslint-plugin-perfectionist": "^4.15.1", + "eslint-plugin-react": "^7.37.5", + "eslint-plugin-sonarjs": "^3.0.5", + "globals": "^16.5.0", "rimraf": "^6.1.2", "turbo": "^1.12.4", - "typescript": "^5.4.2" + "typescript": "^5.9.3", + "typescript-eslint": "^8.47.0" } } diff --git a/packages/core/package.json b/packages/core/package.json index 3339f60..223aff7 100644 --- a/packages/core/package.json +++ b/packages/core/package.json @@ -33,7 +33,7 @@ "dependencies": { "dedent": "^1.5.1", "fast-deep-equal": "^3.1.3", - "tslib": "^2.6.2" + "tslib": "^2.8.1" }, "devDependencies": { "@types/mocha": "^10.0.6", @@ -48,7 +48,7 @@ "typedoc": "^0.25.8", "typedoc-plugin-markdown": "^3.17.1", "typedoc-plugin-merge-modules": "^5.1.0", - "typescript": "^5.4.2" + "typescript": "^5.9.3" }, "publishConfig": { "access": "public", diff --git a/packages/core/src/lib/ArrayAssertion.ts b/packages/core/src/lib/ArrayAssertion.ts index 0f5773f..b6cdd7c 100644 --- a/packages/core/src/lib/ArrayAssertion.ts +++ b/packages/core/src/lib/ArrayAssertion.ts @@ -1,12 +1,13 @@ +import { AssertionError } from "assert"; + import isDeepEqual from "fast-deep-equal/es6"; import { Assertion } from "./Assertion"; import { UnsupportedOperationError } from "./errors/UnsupportedOperationError"; -import { type Expect } from "./expect"; -import { type TypeFactory } from "./helpers/TypeFactories"; import { prettify } from "./helpers/messages"; -import { AssertionError } from "assert"; +import type { Expect } from "./expect"; +import type { TypeFactory } from "./helpers/TypeFactories"; /** * Encapsulates assertion methods applicable to arrays. @@ -14,7 +15,6 @@ import { AssertionError } from "assert"; * @param T the type of the array */ export class ArrayAssertion extends Assertion { - public constructor(actual: T[]) { super(actual); } @@ -142,7 +142,7 @@ export class ArrayAssertion extends Assertion { try { consumer(value); return true; - } catch (err) { + } catch { return false; } }), @@ -354,7 +354,10 @@ export class ArrayAssertion extends Assertion { } // We use `require(..)` to avoid import cycles with the `./expect` module - // eslint-disable-next-line @typescript-eslint/no-var-requires + /* eslint-disable-next-line + @typescript-eslint/no-var-requires, + @typescript-eslint/no-require-imports + */ const { expect } = require("./expect") as { expect: Expect; }; return expect(this.actual[index]).asType(typeFactory); diff --git a/packages/core/src/lib/Assertion.ts b/packages/core/src/lib/Assertion.ts index 8405a89..9b13d76 100644 --- a/packages/core/src/lib/Assertion.ts +++ b/packages/core/src/lib/Assertion.ts @@ -1,19 +1,20 @@ +import { AssertionError } from "assert"; + import isDeepEqual from "fast-deep-equal/es6"; import { UnsupportedOperationError } from "./errors/UnsupportedOperationError"; -import { type TypeFactory } from "./helpers/TypeFactories"; -import { isStruct, isKeyOf } from "./helpers/guards"; +import { isKeyOf, isStruct } from "./helpers/guards"; import { prettify } from "./helpers/messages"; -import { AssertionError } from "assert"; +import type { TypeFactory } from "./helpers/TypeFactories"; -// eslint-disable-next-line @typescript-eslint/ban-types +// eslint-disable-next-line @typescript-eslint/no-unsafe-function-type export interface Constructor extends Function { prototype: T; } -export type DataType = - | "array" +export type DataType + = "array" | "bigint" | "boolean" | "function" @@ -46,7 +47,6 @@ export interface ExecuteOptions { * @param T the type of the `actual` value */ export class Assertion { - protected readonly actual: T; protected readonly inverted: boolean; @@ -60,6 +60,18 @@ export class Assertion { this.not = new Proxy(this, { get: this.proxyInverter(true) }); } + protected proxyInverter(isInverted: boolean): ProxyHandler["get"] { + return (target, p) => { + const key = isKeyOf(target, p) ? p : undefined; + + if (key === "inverted") { + return isInverted; + } + + return key ? target[key] : undefined; + }; + } + /** * A convenience method to normalize the assertion instance. If it was * inverted with `.not`, it'll return it back to the previous non-inverted @@ -565,16 +577,4 @@ export class Assertion { message: `Expected <${prettify(this.actual)}> to be of type "${typeName}"`, }); } - - private proxyInverter(isInverted: boolean): ProxyHandler["get"] { - return (target, p) => { - const key = isKeyOf(target, p) ? p : undefined; - - if (key === "inverted") { - return isInverted; - } - - return key ? target[key] : undefined; - }; - } } diff --git a/packages/core/src/lib/BooleanAssertion.ts b/packages/core/src/lib/BooleanAssertion.ts index a088a29..2d2e8d1 100644 --- a/packages/core/src/lib/BooleanAssertion.ts +++ b/packages/core/src/lib/BooleanAssertion.ts @@ -1,12 +1,11 @@ -import { Assertion } from "./Assertion"; - import { AssertionError } from "assert"; +import { Assertion } from "./Assertion"; + /** * Encapsulates assertion methods applicable to values of type boolean */ export class BooleanAssertion extends Assertion { - public constructor(actual: boolean) { super(actual); } diff --git a/packages/core/src/lib/DateAssertion.ts b/packages/core/src/lib/DateAssertion.ts index 9ffd4e7..e29363e 100644 --- a/packages/core/src/lib/DateAssertion.ts +++ b/packages/core/src/lib/DateAssertion.ts @@ -1,8 +1,9 @@ +import { AssertionError } from "assert"; + import { Assertion } from "./Assertion"; -import { DateMethod, DateOptions, DayOfWeek } from "./DateAssertion.types"; -import { optionsToDate, dayOfWeekAsNumber, dateToOptions } from "./helpers/dates"; +import { dateToOptions, dayOfWeekAsNumber, optionsToDate } from "./helpers/dates"; -import { AssertionError } from "assert"; +import type { DateMethod, DateOptions, DayOfWeek } from "./DateAssertion.types"; const DATE_METHOD_MAP: Record = { day: "getDay", @@ -18,7 +19,6 @@ const DATE_METHOD_MAP: Record = { * Encapsulates assertion methods applicable to values of type Date */ export class DateAssertion extends Assertion { - public constructor(actual: Date) { super(actual); } diff --git a/packages/core/src/lib/DateAssertion.types.ts b/packages/core/src/lib/DateAssertion.types.ts index f0612a3..dca5762 100644 --- a/packages/core/src/lib/DateAssertion.types.ts +++ b/packages/core/src/lib/DateAssertion.types.ts @@ -1,25 +1,25 @@ -export type Month = - | "january" +export type Month + = "april" + | "august" + | "december" | "february" + | "january" + | "july" + | "june" | "march" - | "april" | "may" - | "june" - | "july" - | "august" - | "september" - | "october" | "november" - | "december"; + | "october" + | "september"; -export type DayOfWeek = +export type DayOfWeek + = "friday" | "monday" - | "tuesday" - | "wednesday" - | "thursday" - | "friday" | "saturday" - | "sunday"; + | "sunday" + | "thursday" + | "tuesday" + | "wednesday"; export type DateMethod = { [K in keyof Date]: Date[K] extends () => number diff --git a/packages/core/src/lib/ErrorAssertion.ts b/packages/core/src/lib/ErrorAssertion.ts index 7ba7ea5..013e374 100644 --- a/packages/core/src/lib/ErrorAssertion.ts +++ b/packages/core/src/lib/ErrorAssertion.ts @@ -1,14 +1,13 @@ -import { Assertion } from "./Assertion"; - import { AssertionError } from "assert"; +import { Assertion } from "./Assertion"; + /** * Encapsulates assertion methods applicable to Error instances. * * @param T the Error constructor type */ export class ErrorAssertion extends Assertion { - public constructor(actual: T) { super(actual); } @@ -84,7 +83,7 @@ export class ErrorAssertion extends Assertion { * @param fragment the fragment the message should contain * @returns the assertion instance */ - public toHaveMessageContaining(fragment: string): this { + public toHaveMessageContaining(fragment: string): this { const error = new AssertionError({ actual: this.actual.message, message: `Expected error to have a message containing: ${fragment}`, @@ -113,7 +112,7 @@ export class ErrorAssertion extends Assertion { * @param fragment the fragment the message should end with * @returns the assertion instance */ - public toHaveMessageEndingWith(fragment: string): this { + public toHaveMessageEndingWith(fragment: string): this { const error = new AssertionError({ actual: this.actual.message, message: `Expected error to have a message ending with: ${fragment}`, diff --git a/packages/core/src/lib/FunctionAssertion.ts b/packages/core/src/lib/FunctionAssertion.ts index a36a1a0..7bac65c 100644 --- a/packages/core/src/lib/FunctionAssertion.ts +++ b/packages/core/src/lib/FunctionAssertion.ts @@ -1,11 +1,12 @@ +import { AssertionError } from "assert"; + import isDeepEqual from "fast-deep-equal/es6"; -import { Assertion, Constructor } from "./Assertion"; +import { Assertion, type Constructor } from "./Assertion"; import { ErrorAssertion } from "./ErrorAssertion"; -import { type TypeFactory } from "./helpers/TypeFactories"; import { prettify } from "./helpers/messages"; -import { AssertionError } from "assert"; +import type { TypeFactory } from "./helpers/TypeFactories"; export type AnyFunction = (...args: unknown[]) => unknown; @@ -23,7 +24,6 @@ const NoThrow = Symbol("NoThrow"); * @param T the type of the function's signature */ export class FunctionAssertion extends Assertion { - public constructor(actual: T) { super(actual); } @@ -184,7 +184,7 @@ export class FunctionAssertion extends Assertion { : new Assertion(captured) as A; } - private captureError(): X | typeof NoThrow { + private captureError(): typeof NoThrow | X { try { this.actual(); return NoThrow; diff --git a/packages/core/src/lib/NumberAssertion.helpers.ts b/packages/core/src/lib/NumberAssertion.helpers.ts index b50bdd6..af0a3bd 100644 --- a/packages/core/src/lib/NumberAssertion.helpers.ts +++ b/packages/core/src/lib/NumberAssertion.helpers.ts @@ -19,11 +19,11 @@ export interface HighInclusiveBetweenOptions extends BaseBetweenOptions { highInclusive: boolean; } -export type BetweenOptions = - | BaseBetweenOptions +export type BetweenOptions + = BaseBetweenOptions + | HighInclusiveBetweenOptions | InclusiveBetweenOptions - | LowInclusiveBetweenOptions - | HighInclusiveBetweenOptions; + | LowInclusiveBetweenOptions; export function isInclusiveOptions(options: BetweenOptions): options is InclusiveBetweenOptions { return (options as InclusiveBetweenOptions).inclusive !== undefined; diff --git a/packages/core/src/lib/NumberAssertion.ts b/packages/core/src/lib/NumberAssertion.ts index 7f214aa..ea2699c 100644 --- a/packages/core/src/lib/NumberAssertion.ts +++ b/packages/core/src/lib/NumberAssertion.ts @@ -1,8 +1,8 @@ +import { AssertionError } from "assert"; + import { Assertion } from "./Assertion"; import { isHighInclusiveOptions, isInclusiveOptions, isLowInclusiveOptions } from "./helpers/guards"; -import { AssertionError } from "assert"; - export interface BaseBetweenOptions { range: [number, number]; } @@ -24,17 +24,16 @@ export interface HighInclusiveBetweenOptions extends BaseBetweenOptions { highInclusive: boolean; } -export type BetweenOptions = - | BaseBetweenOptions +export type BetweenOptions + = BaseBetweenOptions + | HighInclusiveBetweenOptions | InclusiveBetweenOptions - | LowInclusiveBetweenOptions - | HighInclusiveBetweenOptions; + | LowInclusiveBetweenOptions; /** * Encapsulates assertion methods applicable to values of type number */ export class NumberAssertion extends Assertion { - public constructor(actual: number) { super(actual); } @@ -275,8 +274,8 @@ export class NumberAssertion extends Assertion { * `lowInclusive: true` or `highInclusive: true`, respectively * @returns the assertion instance */ -public toBeBetween(options: BetweenOptions): this { - const [min, max] = options.range; + public toBeBetween(options: BetweenOptions): this { + const [min, max] = options.range; if (isInclusiveOptions(options)) { const rangeText = options.inclusive ? `[${min}, ${max}]` : `(${min}, ${max})`; diff --git a/packages/core/src/lib/ObjectAssertion.ts b/packages/core/src/lib/ObjectAssertion.ts index 0cb8070..b609ed7 100644 --- a/packages/core/src/lib/ObjectAssertion.ts +++ b/packages/core/src/lib/ObjectAssertion.ts @@ -1,10 +1,11 @@ +import { AssertionError } from "assert"; + import isDeepEqual from "fast-deep-equal/es6"; import { Assertion } from "./Assertion"; import { prettify } from "./helpers/messages"; -import { Entry, Struct } from "./helpers/types"; -import { AssertionError } from "assert"; +import type { Entry, Struct } from "./helpers/types"; /** * Encapsulates assertion methods applicable to objects. @@ -12,7 +13,6 @@ import { AssertionError } from "assert"; * @param T the object's definition type */ export class ObjectAssertion extends Assertion { - public constructor(actual: T) { super(actual); } @@ -146,8 +146,8 @@ export class ObjectAssertion extends Assertion { * @returns the assertion instance */ public toHaveKeys(...keys: Array): this { - const sortedActual = Object.keys(this.actual).sort(); - const sortedKeys = [...keys].sort(); + const sortedActual = Object.keys(this.actual).toSorted(alphabetically); + const sortedKeys = keys.toSorted(alphabetically); const allKeys = sortedKeys.map(prettify).join(", "); const error = new AssertionError({ @@ -274,8 +274,8 @@ export class ObjectAssertion extends Assertion { * @returns the assertion instance */ public toHaveValues(...values: Array): this { - const sortedActual = Object.values(this.actual).sort(); - const sorterdValues = [...values].sort(); + const sortedActual = Object.values(this.actual).toSorted(alphabetically); + const sorterdValues = values.toSorted(alphabetically); const allValues = sorterdValues.map(prettify).join(", "); const error = new AssertionError({ @@ -318,8 +318,8 @@ export class ObjectAssertion extends Assertion { }); return this.execute({ assertWhen: - this.hasOwnProp(entry[0]) && - isDeepEqual(Object.getOwnPropertyDescriptor(this.actual, entry[0])?.value, entry[1]), + this.hasOwnProp(entry[0]) + && isDeepEqual(Object.getOwnPropertyDescriptor(this.actual, entry[0])?.value, entry[1]), error, invertedError, }); @@ -351,8 +351,8 @@ export class ObjectAssertion extends Assertion { return this.execute({ assertWhen: entries .every(entry => - this.hasOwnProp(entry[0]) && - isDeepEqual(Object.getOwnPropertyDescriptor(this.actual, entry[0])?.value, entry[1]), + this.hasOwnProp(entry[0]) + && isDeepEqual(Object.getOwnPropertyDescriptor(this.actual, entry[0])?.value, entry[1]), ), error, invertedError, @@ -386,8 +386,8 @@ export class ObjectAssertion extends Assertion { return this.execute({ assertWhen: entries .some(entry => - this.hasOwnProp(entry[0]) && - isDeepEqual(Object.getOwnPropertyDescriptor(this.actual, entry[0])?.value, entry[1]), + this.hasOwnProp(entry[0]) + && isDeepEqual(Object.getOwnPropertyDescriptor(this.actual, entry[0])?.value, entry[1]), ), error, invertedError, @@ -407,8 +407,8 @@ export class ObjectAssertion extends Assertion { * @returns the assertion instance */ public toHaveEntries(...entries: Entry[]): this { - const sortedActual = Object.entries(this.actual).sort(); - const sortedEntries = [...entries].sort(); + const sortedActual = Object.entries(this.actual).toSorted(alphabetically); + const sortedEntries = entries.toSorted(alphabetically); const allEntries = sortedEntries.map(prettify).join(", "); const error = new AssertionError({ actual: sortedActual, @@ -466,3 +466,7 @@ export class ObjectAssertion extends Assertion { : false; } } + +function alphabetically(a: T, b: T): number { + return String(a).localeCompare(String(b)); +} diff --git a/packages/core/src/lib/PromiseAssertion.ts b/packages/core/src/lib/PromiseAssertion.ts index 0d7e336..0b2ed54 100644 --- a/packages/core/src/lib/PromiseAssertion.ts +++ b/packages/core/src/lib/PromiseAssertion.ts @@ -1,11 +1,11 @@ +import { AssertionError } from "assert/strict"; + import dedent from "dedent"; import isDeepEqual from "fast-deep-equal/es6"; import { Assertion } from "./Assertion"; import { prettify } from "./helpers/messages"; -import { AssertionError } from "assert/strict"; - /** * Encapsulates assertion methods applicable to Promises * @@ -13,7 +13,6 @@ import { AssertionError } from "assert/strict"; * @param I type to track the current inverted state */ export class PromiseAssertion extends Assertion> { - // eslint-disable-next-line @typescript-eslint/ban-ts-comment // @ts-ignore: // Needed because the `I` generic has to change in the inverted @@ -24,6 +23,7 @@ export class PromiseAssertion extends Assertion) { super(actual); + this.not = new Proxy(this, { get: super.proxyInverter(true) }) as PromiseAssertion; } /** @@ -42,30 +42,31 @@ export class PromiseAssertion extends Assertion { - return this.actual.then(value => { - if (this.inverted) { + return this.actual + .then(value => { + if (this.inverted) { + throw new AssertionError({ + actual: this.actual, + message: "Expected promise NOT to be resolved", + }); + } + + return value; + }) + .catch((error: unknown) => { + if (error instanceof AssertionError) { + throw error; + } + + if (this.inverted) { + return error as I extends false ? T : unknown; + } + throw new AssertionError({ actual: this.actual, - message: "Expected promise NOT to be resolved", + message: `Expected promise to be resolved, but it was rejected with <${prettify(error)}> instead`, }); - } - - return value; - }) - .catch((error: unknown) => { - if (error instanceof AssertionError) { - throw error; - } - - if (this.inverted) { - return error as I extends false ? T : unknown; - } - - throw new AssertionError({ - actual: this.actual, - message: `Expected promise to be resolved, but it was rejected with <${prettify(error)}> instead`, }); - }); } /** @@ -85,41 +86,45 @@ export class PromiseAssertion extends Assertion { - return this.actual.then(value => { - this.execute({ - assertWhen: isDeepEqual(value, expected), - error: new AssertionError({ - actual: value, - expected, - message: `Expected promise to be resolved with <${prettify(expected)}>, but got <${prettify(value)}> instead`, - }), - invertedError: new AssertionError({ - actual: value, - message: `Expected promise NOT to be resolved with <${prettify(value)}>`, - }), - }); + return this.actual + .then(value => { + this.execute({ + assertWhen: isDeepEqual(value, expected), + error: new AssertionError({ + actual: value, + expected, + message: dedent` + Expected promise to be resolved with <${prettify(expected)}>, \ + but got <${prettify(value)}> instead + `, + }), + invertedError: new AssertionError({ + actual: value, + message: `Expected promise NOT to be resolved with <${prettify(value)}>`, + }), + }); + + return value; + }) + .catch((error: unknown) => { + if (error instanceof AssertionError) { + throw error; + } - return value; - }) - .catch((error: unknown) => { - if (error instanceof AssertionError) { - throw error; - } - - throw new AssertionError({ - actual: error, - expected: !this.inverted ? expected : undefined, - message: this.inverted - ? dedent` + throw new AssertionError({ + actual: error, + expected: !this.inverted ? expected : undefined, + message: this.inverted + ? dedent` Expected promise to be resolved with anything but <${prettify(expected)}>, but was rejected with \ <${prettify(error)}> instead ` - : dedent` + : dedent` Expected promise to be resolved with <${prettify(expected)}>, but it was rejected with \ <${prettify(error)}> instead `, + }); }); - }); } /** @@ -138,30 +143,31 @@ export class PromiseAssertion extends Assertion { - return this.actual.then(value => { - if (this.inverted) { - return value; - } - - throw new AssertionError({ - actual: this.actual, - message: `Expected promise to be rejected, but it was resolved with <${prettify(value)}> instead`, - }); - }) - .catch((error: unknown) => { - if (error instanceof AssertionError) { - throw error; - } + return this.actual + .then(value => { + if (this.inverted) { + return value; + } - if (this.inverted) { throw new AssertionError({ - actual: error, - message: "Expected promise NOT to be rejected", + actual: this.actual, + message: `Expected promise to be rejected, but it was resolved with <${prettify(value)}> instead`, }); - } - - return error as I extends false ? unknown : T; - }); + }) + .catch((error: unknown) => { + if (error instanceof AssertionError) { + throw error; + } + + if (this.inverted) { + throw new AssertionError({ + actual: error, + message: "Expected promise NOT to be rejected", + }); + } + + return error as I extends false ? unknown : T; + }); } /** @@ -182,40 +188,44 @@ export class PromiseAssertion extends Assertion(expected: E): Promise { - return this.actual.then(value => { - throw new AssertionError({ - actual: this.actual, - expected: !this.inverted ? expected : undefined, - message: this.inverted - ? dedent` + return this.actual + .then(value => { + throw new AssertionError({ + actual: this.actual, + expected: !this.inverted ? expected : undefined, + message: this.inverted + ? dedent` Expected promise to be rejected with anything but <${prettify(expected)}>, but it was resolved with \ <${prettify(value)}> instead ` - : dedent` + : dedent` Expected promise to be rejected with <${prettify(expected)}>, but it was resolved with \ <${prettify(value)}> instead `, - }); - }) - .catch((error: unknown) => { - if (error instanceof AssertionError) { - throw error; - } - - this.execute({ - assertWhen: isDeepEqual(error, expected), - error: new AssertionError({ - actual: error, - expected, - message: `Expected promise to be rejected with <${prettify(expected)}>, but got <${prettify(error)}> instead`, - }), - invertedError: new AssertionError({ - actual: error, - message: `Expected promise NOT to be rejected with <${prettify(error)}>`, - }), - }); + }); + }) + .catch((error: unknown) => { + if (error instanceof AssertionError) { + throw error; + } + + this.execute({ + assertWhen: isDeepEqual(error, expected), + error: new AssertionError({ + actual: error, + expected, + message: dedent` + Expected promise to be rejected with <${prettify(expected)}>, \ + but got <${prettify(error)}> instead + `, + }), + invertedError: new AssertionError({ + actual: error, + message: `Expected promise NOT to be rejected with <${prettify(error)}>`, + }), + }); - return error as I extends false ? E : unknown; - }); + return error as I extends false ? E : unknown; + }); } } diff --git a/packages/core/src/lib/StringAssertion.ts b/packages/core/src/lib/StringAssertion.ts index 3d07c1a..b1de634 100644 --- a/packages/core/src/lib/StringAssertion.ts +++ b/packages/core/src/lib/StringAssertion.ts @@ -1,12 +1,11 @@ -import { Assertion } from "./Assertion"; - import { AssertionError } from "assert"; +import { Assertion } from "./Assertion"; + /** * Encapsulates assertion methods applicable to values of type string */ export class StringAssertion extends Assertion { - public constructor(actual: string) { super(actual); } diff --git a/packages/core/src/lib/config/Config.ts b/packages/core/src/lib/config/Config.ts index 578c2d5..482ba2b 100644 --- a/packages/core/src/lib/config/Config.ts +++ b/packages/core/src/lib/config/Config.ts @@ -1,4 +1,4 @@ -import { Assertion } from "../Assertion"; +import type { Assertion } from "../Assertion"; /** * A plugin object that can be used to extend the `expect(..)` function. @@ -16,7 +16,7 @@ export interface Plugin> { * - `top`: Test before all primitives and object-related types. * - `bottom`: Test after all primitives and object-related types. */ - insertAt: "top" | "bottom"; + insertAt: "bottom" | "top"; /** * The predicate that tests if the actual value should returnt and instance of * the plugin's `Assertion`. @@ -29,7 +29,6 @@ export interface Plugin> { * methods that can change global settings. */ export class Config { - // eslint-disable-next-line @typescript-eslint/no-explicit-any private pluginSet: Set>>; diff --git a/packages/core/src/lib/errors/UnsupportedOperationError.ts b/packages/core/src/lib/errors/UnsupportedOperationError.ts index cb5efae..7d0c2d6 100644 --- a/packages/core/src/lib/errors/UnsupportedOperationError.ts +++ b/packages/core/src/lib/errors/UnsupportedOperationError.ts @@ -2,7 +2,6 @@ * Custom Error to describe an unsupported operation. */ export class UnsupportedOperationError extends Error { - public constructor(message?: string) { super(`Unsupported operation. ${message}`); diff --git a/packages/core/src/lib/expect.ts b/packages/core/src/lib/expect.ts index 073e706..3898aaf 100644 --- a/packages/core/src/lib/expect.ts +++ b/packages/core/src/lib/expect.ts @@ -3,14 +3,15 @@ import { Assertion } from "./Assertion"; import { BooleanAssertion } from "./BooleanAssertion"; import { DateAssertion } from "./DateAssertion"; import { ErrorAssertion } from "./ErrorAssertion"; -import { AnyFunction, FunctionAssertion } from "./FunctionAssertion"; +import { type AnyFunction, FunctionAssertion } from "./FunctionAssertion"; import { NumberAssertion } from "./NumberAssertion"; import { ObjectAssertion } from "./ObjectAssertion"; import { PromiseAssertion } from "./PromiseAssertion"; import { StringAssertion } from "./StringAssertion"; import { config } from "./config/Config"; -import { isAnyFunction, isStruct, isPromise } from "./helpers/guards"; -import { Struct } from "./helpers/types"; +import { isAnyFunction, isPromise, isStruct } from "./helpers/guards"; + +import type { Struct } from "./helpers/types"; export interface Expect { (actual: boolean): BooleanAssertion; diff --git a/packages/core/src/lib/helpers/TypeFactories.ts b/packages/core/src/lib/helpers/TypeFactories.ts index d09d11f..e5ce8f4 100644 --- a/packages/core/src/lib/helpers/TypeFactories.ts +++ b/packages/core/src/lib/helpers/TypeFactories.ts @@ -1,5 +1,5 @@ import { ArrayAssertion } from "../ArrayAssertion"; -import { Assertion, Constructor } from "../Assertion"; +import { Assertion, type Constructor } from "../Assertion"; import { BooleanAssertion } from "../BooleanAssertion"; import { DateAssertion } from "../DateAssertion"; import { ErrorAssertion } from "../ErrorAssertion"; @@ -9,7 +9,8 @@ import { ObjectAssertion } from "../ObjectAssertion"; import { StringAssertion } from "../StringAssertion"; import { isStruct } from "./guards"; -import { Struct } from "./types"; + +import type { Struct } from "./types"; export type AssertionFactory> = new(actual: S) => A; @@ -40,30 +41,6 @@ export interface TypeFactory> { * Encapsulates a set of predefined {@link TypeFactory} instances. */ export interface StaticTypeFactories { - /** - * A `boolean` TypeFactory. - */ - Boolean: TypeFactory; - /** - * A `Date` TypeFactory. - */ - Date: TypeFactory; - /** - * An `Error` TypeFactory. - */ - Error: TypeFactory>; - /** - * A `function` TypeFactory. - */ - Function: TypeFactory>; - /** - * A `number` TypeFactory. - */ - Number: TypeFactory; - /** - * A `string` TypeFactory. - */ - String: TypeFactory; /** * Creates an array TypeFactory of the given TypeFactory. * @@ -76,6 +53,14 @@ export interface StaticTypeFactories { * @param innerType the TypeFactory for the array type */ array(innerType?: TypeFactory>): TypeFactory>; + /** + * A `boolean` TypeFactory. + */ + Boolean: TypeFactory; + /** + * A `Date` TypeFactory. + */ + Date: TypeFactory; /** * Creates an `Error` TypeFactory for a specific error constructor. * @@ -90,6 +75,14 @@ export interface StaticTypeFactories { * @param Type the error constructor */ error(Type: Constructor): TypeFactory>; + /** + * An `Error` TypeFactory. + */ + Error: TypeFactory>; + /** + * A `function` TypeFactory. + */ + Function: TypeFactory>; /** * Creates a TypeFactory for an instance of the given constructor. * @@ -105,6 +98,10 @@ export interface StaticTypeFactories { * @param Type the instance constructor */ instanceOf(Type: Constructor): TypeFactory>; + /** + * A `number` TypeFactory. + */ + Number: TypeFactory; /** * Creates a TypeFactory for a Javascript Object. * @@ -120,9 +117,23 @@ export interface StaticTypeFactories { * @typeParam T the type of the object */ object(): TypeFactory>; + /** + * A `string` TypeFactory. + */ + String: TypeFactory; } export const TypeFactories: Readonly = { + array(innerType?: TypeFactory>) { + return { + Factory: ArrayAssertion, + predicate: (value): value is T[] => + innerType !== undefined + ? Array.isArray(value) && value.every(innerType.predicate) + : Array.isArray(value), + typeName: "array", + }; + }, Boolean: { Factory: BooleanAssertion, predicate: (value): value is boolean => typeof value === "boolean", @@ -138,31 +149,6 @@ export const TypeFactories: Readonly = { predicate: (value): value is Error => value instanceof Error, typeName: Error.name, }, - Function: { - Factory: FunctionAssertion, - predicate: (value): value is AnyFunction => typeof value === "function", - typeName: "function", - }, - Number: { - Factory: NumberAssertion, - predicate: (value): value is number => typeof value === "number", - typeName: "number", - }, - String: { - Factory: StringAssertion, - predicate: (value): value is string => typeof value === "string", - typeName: "string", - }, - array(innerType?: TypeFactory>) { - return { - Factory: ArrayAssertion, - predicate: (value): value is T[] => - innerType !== undefined - ? Array.isArray(value) && value.every(innerType.predicate) - : Array.isArray(value), - typeName: "array", - }; - }, error(Type: Constructor) { return { Factory: ErrorAssertion, @@ -170,6 +156,11 @@ export const TypeFactories: Readonly = { typeName: Type.name, }; }, + Function: { + Factory: FunctionAssertion, + predicate: (value): value is AnyFunction => typeof value === "function", + typeName: "function", + }, instanceOf(type: Constructor) { return { Factory: Assertion, @@ -177,6 +168,11 @@ export const TypeFactories: Readonly = { typeName: type.name, }; }, + Number: { + Factory: NumberAssertion, + predicate: (value): value is number => typeof value === "number", + typeName: "number", + }, object() { return { Factory: ObjectAssertion, @@ -184,4 +180,9 @@ export const TypeFactories: Readonly = { typeName: "object", }; }, + String: { + Factory: StringAssertion, + predicate: (value): value is string => typeof value === "string", + typeName: "string", + }, }; diff --git a/packages/core/src/lib/helpers/dates.ts b/packages/core/src/lib/helpers/dates.ts index 9449c9d..5324b50 100644 --- a/packages/core/src/lib/helpers/dates.ts +++ b/packages/core/src/lib/helpers/dates.ts @@ -1,4 +1,4 @@ -import { DateOptions, DayOfWeek, Month } from "../DateAssertion.types"; +import type { DateOptions, DayOfWeek, Month } from "../DateAssertion.types"; const DAYS_OF_WEEK: DayOfWeek[] = [ "sunday", @@ -33,7 +33,7 @@ const MONTHS: Month[] = [ * @param day a day of the week string * @returns a number representing the day of the week */ -export function dayOfWeekAsNumber (day: DayOfWeek): number { +export function dayOfWeekAsNumber(day: DayOfWeek): number { return DAYS_OF_WEEK.indexOf(day); } @@ -45,19 +45,19 @@ export function dayOfWeekAsNumber (day: DayOfWeek): number { * @param month a month string * @returns a number representing the month */ -export function monthOfYear (month: Month): number { +export function monthOfYear(month: Month): number { return MONTHS.indexOf(month); } export function optionsToDate(options: DateOptions): Date { const { - year = 0, - month = 0, day = 0, hours = 0, + milliseconds = 0, minutes = 0, + month = 0, seconds = 0, - milliseconds = 0, + year = 0, } = options; const monthAsNum = typeof month === "string" ? monthOfYear(month) + 1 diff --git a/packages/core/src/lib/helpers/guards.ts b/packages/core/src/lib/helpers/guards.ts index d0fa2ef..bf97bd9 100644 --- a/packages/core/src/lib/helpers/guards.ts +++ b/packages/core/src/lib/helpers/guards.ts @@ -1,3 +1,4 @@ +import type { Struct } from "./types"; import type { AnyFunction } from "../FunctionAssertion"; import type { BetweenOptions, @@ -6,9 +7,7 @@ import type { LowInclusiveBetweenOptions, } from "../NumberAssertion"; -import { Struct } from "./types"; - -export function isStruct(value: T): value is { [K in keyof T]: T[K] } & Struct { +export function isStruct(value: T): value is Struct & { [K in keyof T]: T[K] } { return typeof value === "object" && value !== null && !Array.isArray(value); @@ -24,7 +23,7 @@ export function isKeyOf(target: T, key: unknown): key is keyof } export function isPromise(value: unknown): value is Promise { - const maybePromise = value as Promise | null; + const maybePromise = value as null | Promise; return ( typeof value === "object" diff --git a/packages/core/src/lib/helpers/types.ts b/packages/core/src/lib/helpers/types.ts index 295b14e..0ee9db1 100644 --- a/packages/core/src/lib/helpers/types.ts +++ b/packages/core/src/lib/helpers/types.ts @@ -1,10 +1,3 @@ -/** - * Backwards compatibility alias of the `Struct` type. - * - * @deprecated in favor of {@link Struct} - */ -export type JSObject = Struct; - /** * Utility type that represents any kind of structured object. */ diff --git a/packages/core/src/main.ts b/packages/core/src/main.ts index d944394..5f35e73 100644 --- a/packages/core/src/main.ts +++ b/packages/core/src/main.ts @@ -1,23 +1,13 @@ import { Assertion } from "./lib/Assertion"; -import { config, Plugin } from "./lib/config/Config"; -import { expect, Expect } from "./lib/expect"; +import { type Plugin, config } from "./lib/config/Config"; +import { type Expect, expect } from "./lib/expect"; export { AssertionError } from "assert/strict"; -export { - AssertionFactory, - StaticTypeFactories, - TypeFactory, - TypeFactories, -} from "./lib/helpers/TypeFactories"; +export type { AssertionFactory, StaticTypeFactories, TypeFactory } from "./lib/helpers/TypeFactories"; +export { TypeFactories } from "./lib/helpers/TypeFactories"; -export { - Assertion, - Expect, - Plugin, - expect, - expect as assert, - expect as assertThat, -}; +export type { Expect, Plugin }; +export { Assertion, expect, expect as assert, expect as assertThat }; /** * Extends `@assertive-ts/core` with local or 3rd-party plugin(s). diff --git a/packages/core/test/lib/ArrayAssertion.test.ts b/packages/core/test/lib/ArrayAssertion.test.ts index 9be879b..93ec7af 100644 --- a/packages/core/test/lib/ArrayAssertion.test.ts +++ b/packages/core/test/lib/ArrayAssertion.test.ts @@ -1,11 +1,11 @@ +import assert, { AssertionError } from "assert"; + import { ArrayAssertion } from "../../src/lib/ArrayAssertion"; import { NumberAssertion } from "../../src/lib/NumberAssertion"; import { UnsupportedOperationError } from "../../src/lib/errors/UnsupportedOperationError"; import { TypeFactories } from "../../src/lib/helpers/TypeFactories"; import { expect } from "../../src/main"; -import assert, { AssertionError } from "assert"; - describe("[Unit] ArrayAssertion.test.ts", () => { describe(".toMatchAll", () => { const isPositive = (actual: number): boolean => actual > 0; diff --git a/packages/core/test/lib/Assertion.test.ts b/packages/core/test/lib/Assertion.test.ts index fb9247b..8ec5650 100644 --- a/packages/core/test/lib/Assertion.test.ts +++ b/packages/core/test/lib/Assertion.test.ts @@ -1,13 +1,15 @@ +// Remove when migrated to Vitest +/* eslint-disable @typescript-eslint/no-base-to-string */ +import assert, { AssertionError } from "assert"; + import Sinon from "sinon"; -import { Assertion, DataType } from "../../src/lib/Assertion"; +import { Assertion, type DataType } from "../../src/lib/Assertion"; import { StringAssertion } from "../../src/lib/StringAssertion"; import { UnsupportedOperationError } from "../../src/lib/errors/UnsupportedOperationError"; import { TypeFactories } from "../../src/lib/helpers/TypeFactories"; import { prettify } from "../../src/lib/helpers/messages"; -import assert, { AssertionError } from "assert"; - const HERO = { name: "Batman", realName: "Bruce Wayne", @@ -56,7 +58,6 @@ const BASE_DIFFS = [ ]; class Car { - private readonly model: string; public constructor(model: string) { @@ -328,17 +329,17 @@ describe("[Unit] Assertion.test.ts", () => { ["deep-array", [...THINGS, { x: HERO }], [...THINGS, { x: HERO }]], ["date", TODAY, new Date(TODAY.toISOString())], ] - .forEach(([type, actual, expected]) => { - it(`[${type}] returns the assertion instance`, () => { - const test = new Assertion(actual); - - assert.deepStrictEqual(test.toBeEqual(expected), test); - assert.throws(() => test.not.toBeEqual(expected), { - message: "Expected both values to NOT be deep equal", - name: AssertionError.name, + .forEach(([type, actual, expected]) => { + it(`[${type}] returns the assertion instance`, () => { + const test = new Assertion(actual); + + assert.deepStrictEqual(test.toBeEqual(expected), test); + assert.throws(() => test.not.toBeEqual(expected), { + message: "Expected both values to NOT be deep equal", + name: AssertionError.name, + }); }); }); - }); }); context("when the value is NOT referentially, NOR shallow, NOR deep equal", () => { @@ -352,17 +353,17 @@ describe("[Unit] Assertion.test.ts", () => { ["deep-object", { ...HERO, opts: { x: 1 } }, { ...HERO, opts: { x: 2 } }], ["deep-array", [...THINGS, { x: 1 }], [...THINGS, { x: 2 }]], ] - .forEach(([type, actual, expected]) => { - it(`[${type}] throws an assertion error`, () => { - const test = new Assertion(actual); - - assert.throws(() => test.toBeEqual(expected), { - message: "Expected both values to be deep equal", - name: AssertionError.name, + .forEach(([type, actual, expected]) => { + it(`[${type}] throws an assertion error`, () => { + const test = new Assertion(actual); + + assert.throws(() => test.toBeEqual(expected), { + message: "Expected both values to be deep equal", + name: AssertionError.name, + }); + assert.deepStrictEqual(test.not.toBeEqual(expected), test); }); - assert.deepStrictEqual(test.not.toBeEqual(expected), test); }); - }); }); }); @@ -374,17 +375,17 @@ describe("[Unit] Assertion.test.ts", () => { ["shallow-object", HERO, { name: "Batman", realName: "Bruce Wayne" }], ["shallow-array", THINGS, [1, "foo", false]], ] - .forEach(([valueType, expected, actual]) => { - it(`[${valueType}] returns the assertion instance`, () => { - const test = new Assertion(actual); - - assert.deepStrictEqual(test.toBeSimilar(expected), test); - assert.throws(() => test.not.toBeSimilar(expected), { - message: "Expected both values to NOT be similar", - name: AssertionError.name, + .forEach(([valueType, expected, actual]) => { + it(`[${valueType}] returns the assertion instance`, () => { + const test = new Assertion(actual); + + assert.deepStrictEqual(test.toBeSimilar(expected), test); + assert.throws(() => test.not.toBeSimilar(expected), { + message: "Expected both values to NOT be similar", + name: AssertionError.name, + }); }); }); - }); }); context("when the value is NOT referentially, NOR shallow equal", () => { @@ -398,17 +399,17 @@ describe("[Unit] Assertion.test.ts", () => { ["deep-object", { ...HERO, opts: { x: THINGS } }, { ...HERO, opts: { x: THINGS } }], ["deep-array", [...THINGS, { x: 1 }], [...THINGS, { x: 1 }]], ] - .forEach(([type, actual, expected]) => { - it(`[${type}] throws an assertion error`, () => { - const test = new Assertion(actual); - - assert.throws(() => test.toBeSimilar(expected), { - message: "Expected both values to be similar", - name: AssertionError.name, + .forEach(([type, actual, expected]) => { + it(`[${type}] throws an assertion error`, () => { + const test = new Assertion(actual); + + assert.throws(() => test.toBeSimilar(expected), { + message: "Expected both values to be similar", + name: AssertionError.name, + }); + assert.deepStrictEqual(test.not.toBeSimilar(expected), test); }); - assert.deepStrictEqual(test.not.toBeSimilar(expected), test); }); - }); }); }); @@ -438,17 +439,17 @@ describe("[Unit] Assertion.test.ts", () => { ["deep-object", { ...HERO, opts: { x: THINGS } }, { ...HERO, opts: { x: THINGS } }], ["deep-array", [...THINGS, { x: 1 }], [...THINGS, { x: 1 }]], ] - .forEach(([type, actual, expected]) => { - it(`[${type}] throws an assertion error`, () => { - const test = new Assertion(actual); - - assert.throws(() => test.toBeSame(expected), { - message: "Expected both values to be the same", - name: AssertionError.name, + .forEach(([type, actual, expected]) => { + it(`[${type}] throws an assertion error`, () => { + const test = new Assertion(actual); + + assert.throws(() => test.toBeSame(expected), { + message: "Expected both values to be the same", + name: AssertionError.name, + }); + assert.deepStrictEqual(test.not.toBeSame(expected), test); }); - assert.deepStrictEqual(test.not.toBeSame(expected), test); }); - }); }); }); diff --git a/packages/core/test/lib/BooleanAssertion.test.ts b/packages/core/test/lib/BooleanAssertion.test.ts index fef10df..0b60128 100644 --- a/packages/core/test/lib/BooleanAssertion.test.ts +++ b/packages/core/test/lib/BooleanAssertion.test.ts @@ -1,7 +1,7 @@ -import { BooleanAssertion } from "../../src/lib/BooleanAssertion"; - import assert, { AssertionError } from "assert"; +import { BooleanAssertion } from "../../src/lib/BooleanAssertion"; + describe("[Unit] BooleanAssertion.test.ts", () => { describe(".toBeTrue", () => { context("when the value is true", () => { diff --git a/packages/core/test/lib/DateAssertion.test.ts b/packages/core/test/lib/DateAssertion.test.ts index 0edd2ed..efd880d 100644 --- a/packages/core/test/lib/DateAssertion.test.ts +++ b/packages/core/test/lib/DateAssertion.test.ts @@ -1,10 +1,11 @@ +import assert, { AssertionError } from "assert"; + import dedent from "dedent"; import { DateAssertion } from "../../src/lib/DateAssertion"; -import { DateOptions } from "../../src/lib/DateAssertion.types"; import { dayOfWeekAsNumber } from "../../src/lib/helpers/dates"; -import assert, { AssertionError } from "assert"; +import type { DateOptions } from "../../src/lib/DateAssertion.types"; describe("[Unit] DateAssertion.test.ts", () => { describe(".toBeDayOfWeek", () => { @@ -128,37 +129,37 @@ describe("[Unit] DateAssertion.test.ts", () => { describe(".toBeBeforeOrEqualTo", () => { context("when the actual date is before or equal to the passed date", () => { - it("returns the assertion instance", () => { - const actualDate = new Date(2021, 1, 1); - const passedDate = new Date(2021, 1, 1); - const test = new DateAssertion(actualDate); - assert.deepStrictEqual(test.toBeBeforeOrEqual(passedDate), test); - assert.throws(() => test.not.toBeBeforeOrEqual(passedDate), { - message: dedent` + it("returns the assertion instance", () => { + const actualDate = new Date(2021, 1, 1); + const passedDate = new Date(2021, 1, 1); + const test = new DateAssertion(actualDate); + assert.deepStrictEqual(test.toBeBeforeOrEqual(passedDate), test); + assert.throws(() => test.not.toBeBeforeOrEqual(passedDate), { + message: dedent` Expected <${actualDate.toISOString()}> \ NOT to be before or equal to <${passedDate.toISOString()}> `, - name: AssertionError.name, - }); + name: AssertionError.name, }); - }, + }); + }, ); context("when the actual date is NOT before or equal to the passed date", () => { - it("throws an assertion error", () => { - const actualDate = new Date(2021, 2, 1); - const passedDate = new Date(2021, 1, 1); - const test = new DateAssertion(actualDate); - assert.throws(() => test.toBeBeforeOrEqual(passedDate), { - message: `Expected <${actualDate.toISOString()}> to be before or equal to <${passedDate.toISOString()}>`, - name: AssertionError.name, - }); - assert.deepStrictEqual( - test.not.toBeBeforeOrEqual(passedDate), - test, - ); + it("throws an assertion error", () => { + const actualDate = new Date(2021, 2, 1); + const passedDate = new Date(2021, 1, 1); + const test = new DateAssertion(actualDate); + assert.throws(() => test.toBeBeforeOrEqual(passedDate), { + message: `Expected <${actualDate.toISOString()}> to be before or equal to <${passedDate.toISOString()}>`, + name: AssertionError.name, }); - }, + assert.deepStrictEqual( + test.not.toBeBeforeOrEqual(passedDate), + test, + ); + }); + }, ); }); @@ -205,17 +206,17 @@ describe("[Unit] DateAssertion.test.ts", () => { }); context("when the actual date is NOT after or equal to the passed date", () => { - it("throws an assertion error", () => { - const actualDate = new Date(2021, 1, 1); - const passedDate = new Date(2021, 2, 1); - const test = new DateAssertion(actualDate); - assert.throws(() => test.toBeAfterOrEqual(passedDate), { - message: `Expected <${actualDate.toISOString()}> to be after or equal to <${passedDate.toISOString()}>`, - name: AssertionError.name, - }); - assert.deepStrictEqual(test.not.toBeAfterOrEqual(passedDate), test); + it("throws an assertion error", () => { + const actualDate = new Date(2021, 1, 1); + const passedDate = new Date(2021, 2, 1); + const test = new DateAssertion(actualDate); + assert.throws(() => test.toBeAfterOrEqual(passedDate), { + message: `Expected <${actualDate.toISOString()}> to be after or equal to <${passedDate.toISOString()}>`, + name: AssertionError.name, }); - }, + assert.deepStrictEqual(test.not.toBeAfterOrEqual(passedDate), test); + }); + }, ); }); }); diff --git a/packages/core/test/lib/ErrorAssertion.test.ts b/packages/core/test/lib/ErrorAssertion.test.ts index cccdace..0634c6a 100644 --- a/packages/core/test/lib/ErrorAssertion.test.ts +++ b/packages/core/test/lib/ErrorAssertion.test.ts @@ -1,9 +1,8 @@ -import { ErrorAssertion } from "../../src/lib/ErrorAssertion"; - import assert, { AssertionError } from "assert"; -class CustomError extends Error { +import { ErrorAssertion } from "../../src/lib/ErrorAssertion"; +class CustomError extends Error { public constructor(message?: string) { super(message); diff --git a/packages/core/test/lib/FunctionAssertion.test.ts b/packages/core/test/lib/FunctionAssertion.test.ts index 2521d15..3a9d19c 100644 --- a/packages/core/test/lib/FunctionAssertion.test.ts +++ b/packages/core/test/lib/FunctionAssertion.test.ts @@ -1,14 +1,13 @@ -/* eslint-disable no-throw-literal */ +/* eslint-disable @typescript-eslint/only-throw-error */ +import assert, { AssertionError } from "assert"; + import { Assertion } from "../../src/lib/Assertion"; import { ErrorAssertion } from "../../src/lib/ErrorAssertion"; import { FunctionAssertion } from "../../src/lib/FunctionAssertion"; import { NumberAssertion } from "../../src/lib/NumberAssertion"; import { TypeFactories } from "../../src/lib/helpers/TypeFactories"; -import assert, { AssertionError } from "assert"; - class CustomError extends Error { - public constructor(message?: string) { super(message); diff --git a/packages/core/test/lib/NumberAssertion.helpers.test.ts b/packages/core/test/lib/NumberAssertion.helpers.test.ts index 9929749..fa57e20 100644 --- a/packages/core/test/lib/NumberAssertion.helpers.test.ts +++ b/packages/core/test/lib/NumberAssertion.helpers.test.ts @@ -1,11 +1,11 @@ +import assert from "assert"; + import { isHighInclusiveOptions, isInclusiveOptions, isLowInclusiveOptions, } from "../../src/lib/NumberAssertion.helpers"; -import assert from "assert"; - describe("[Unit] NumberAssertion.helpers.test.ts", () => { describe(".isInclusiveOptions", () => { context("when inclusive is included", () => { diff --git a/packages/core/test/lib/NumberAssertion.test.ts b/packages/core/test/lib/NumberAssertion.test.ts index 072d557..ea0f87e 100644 --- a/packages/core/test/lib/NumberAssertion.test.ts +++ b/packages/core/test/lib/NumberAssertion.test.ts @@ -1,7 +1,7 @@ -import { NumberAssertion } from "../../src/lib/NumberAssertion"; - import assert, { AssertionError } from "assert"; +import { NumberAssertion } from "../../src/lib/NumberAssertion"; + describe("[Unit] NumberAssertion.test.ts", () => { describe(".toBeZero", () => { context("when the value is zero", () => { @@ -296,25 +296,25 @@ describe("[Unit] NumberAssertion.test.ts", () => { test.toBeBetween({ inclusive: true, range: [10, 12] }); assert.deepStrictEqual(test.toBeBetween({ inclusive: false, range: [10, 12] }), test); assert.throws(() => test.not.toBeBetween({ inclusive: false, range: [10, 12] }), { - message: "Expected <11> NOT to be between (10, 12) range", - name: AssertionError.name, - }, + message: "Expected <11> NOT to be between (10, 12) range", + name: AssertionError.name, + }, ); }); }); context("when the actual value is NOT between passed range argument and is NOT inclusive", () => { - it("throws an assertion error", () => { - const test = new NumberAssertion(5); + it("throws an assertion error", () => { + const test = new NumberAssertion(5); - assert.throws(() => test.toBeBetween({ inclusive: false, range: [10, 12] }), { - message: "Expected <5> to be between (10, 12) range", - name: AssertionError.name, - }, - ); - assert.deepStrictEqual(test.not.toBeBetween({ inclusive: false, range: [10, 12] }), test); - }); - }, + assert.throws(() => test.toBeBetween({ inclusive: false, range: [10, 12] }), { + message: "Expected <5> to be between (10, 12) range", + name: AssertionError.name, + }, + ); + assert.deepStrictEqual(test.not.toBeBetween({ inclusive: false, range: [10, 12] }), test); + }); + }, ); context("when the actual value is between passed range argument and is inclusive", () => { @@ -323,9 +323,9 @@ describe("[Unit] NumberAssertion.test.ts", () => { assert.deepStrictEqual(test.toBeBetween({ inclusive: true, range: [10, 12] }), test); assert.throws(() => test.not.toBeBetween({ inclusive: true, range: [10, 12] }), { - message: "Expected <12> NOT to be between [10, 12] range", - name: AssertionError.name, - }, + message: "Expected <12> NOT to be between [10, 12] range", + name: AssertionError.name, + }, ); }); }); @@ -335,9 +335,9 @@ describe("[Unit] NumberAssertion.test.ts", () => { const test = new NumberAssertion(5); assert.throws(() => test.toBeBetween({ inclusive: true, range: [10, 12] }), { - message: "Expected <5> to be between [10, 12] range", - name: AssertionError.name, - }, + message: "Expected <5> to be between [10, 12] range", + name: AssertionError.name, + }, ); assert.deepStrictEqual(test.not.toBeBetween({ inclusive: true, range: [10, 12] }), test); }); @@ -350,9 +350,9 @@ describe("[Unit] NumberAssertion.test.ts", () => { assert.deepStrictEqual(test.toBeBetween({ inclusive: true, range: [10, 12] }), test); assert.throws(() => test.not.toBeBetween({ inclusive: true, range: [10, 12] }), { - message: "Expected <11> NOT to be between [10, 12] range", - name: AssertionError.name, - }, + message: "Expected <11> NOT to be between [10, 12] range", + name: AssertionError.name, + }, ); }); }); @@ -362,9 +362,9 @@ describe("[Unit] NumberAssertion.test.ts", () => { const test = new NumberAssertion(10); assert.throws(() => test.toBeBetween({ inclusive: false, range: [10, 12] }), { - message: "Expected <10> to be between (10, 12) range", - name: AssertionError.name, - }, + message: "Expected <10> to be between (10, 12) range", + name: AssertionError.name, + }, ); assert.deepStrictEqual(test.not.toBeBetween({ inclusive: false, range: [10, 12] }), test); }); @@ -373,90 +373,90 @@ describe("[Unit] NumberAssertion.test.ts", () => { context("when LowInclusiveBetweenOptions are used", () => { context("and actual value is between passed range argument and low limit is NOT inclusive", () => { - it("returns the assertion instance", () => { - const test = new NumberAssertion(11); - - assert.deepStrictEqual(test.toBeBetween({ lowInclusive: false, range: [10, 12] }), test); - assert.throws(() => test.not.toBeBetween({ lowInclusive: false, range: [10, 12] }), - { - message: "Expected <11> NOT to be between (10, 12) range", - name: AssertionError.name, - }, - ); - }); - }, + it("returns the assertion instance", () => { + const test = new NumberAssertion(11); + + assert.deepStrictEqual(test.toBeBetween({ lowInclusive: false, range: [10, 12] }), test); + assert.throws(() => test.not.toBeBetween({ lowInclusive: false, range: [10, 12] }), + { + message: "Expected <11> NOT to be between (10, 12) range", + name: AssertionError.name, + }, + ); + }); + }, ); context("and actual value is NOT between passed range argument and low limit is NOT inclusive", () => { - it("throws an assertion error", () => { - const test = new NumberAssertion(5); + it("throws an assertion error", () => { + const test = new NumberAssertion(5); - assert.throws(() => test.toBeBetween({ lowInclusive: false, range: [10, 12] }), { - message: "Expected <5> to be between (10, 12) range", - name: AssertionError.name, - }, - ); - assert.deepStrictEqual(test.not.toBeBetween({ lowInclusive: false, range: [10, 12] }), test); - }); - }, + assert.throws(() => test.toBeBetween({ lowInclusive: false, range: [10, 12] }), { + message: "Expected <5> to be between (10, 12) range", + name: AssertionError.name, + }, + ); + assert.deepStrictEqual(test.not.toBeBetween({ lowInclusive: false, range: [10, 12] }), test); + }); + }, ); context("and the actual value is between passed range argument and low limit is inclusive", () => { - it("returns the assertion instance", () => { - const test = new NumberAssertion(10); + it("returns the assertion instance", () => { + const test = new NumberAssertion(10); - assert.deepStrictEqual(test.toBeBetween({ lowInclusive: true, range: [10, 12] }), test); - assert.throws(() => test.not.toBeBetween({ lowInclusive: true, range: [10, 12] }), { - message: "Expected <10> NOT to be between [10, 12) range", - name: AssertionError.name, - }, - ); - }); - }, + assert.deepStrictEqual(test.toBeBetween({ lowInclusive: true, range: [10, 12] }), test); + assert.throws(() => test.not.toBeBetween({ lowInclusive: true, range: [10, 12] }), { + message: "Expected <10> NOT to be between [10, 12) range", + name: AssertionError.name, + }, + ); + }); + }, ); context("and the actual value is NOT between passed range argument and low limit is inclusive", () => { - it("throws an assertion error", () => { - const test = new NumberAssertion(5); + it("throws an assertion error", () => { + const test = new NumberAssertion(5); - assert.throws(() => test.toBeBetween({ lowInclusive: true, range: [10, 12] }), { - message: "Expected <5> to be between [10, 12) range", - name: AssertionError.name, - }, - ); - assert.deepStrictEqual(test.not.toBeBetween({ lowInclusive: true, range: [10, 12] }), test); - }); - }, + assert.throws(() => test.toBeBetween({ lowInclusive: true, range: [10, 12] }), { + message: "Expected <5> to be between [10, 12) range", + name: AssertionError.name, + }, + ); + assert.deepStrictEqual(test.not.toBeBetween({ lowInclusive: true, range: [10, 12] }), test); + }); + }, ); }); context("when HighInclusiveBetweenOptions are used", () => { context("and the actual value is between passed range argument and high limit is NOT inclusive", () => { - it("returns the assertion instance", () => { - const test = new NumberAssertion(11); + it("returns the assertion instance", () => { + const test = new NumberAssertion(11); - assert.deepStrictEqual(test.toBeBetween({ highInclusive: false, range: [10, 12] }), test); - assert.throws(() => test.not.toBeBetween({ highInclusive: false, range: [10, 12] }), { - message: "Expected <11> NOT to be between (10, 12) range", - name: AssertionError.name, - }, - ); - }); - }, + assert.deepStrictEqual(test.toBeBetween({ highInclusive: false, range: [10, 12] }), test); + assert.throws(() => test.not.toBeBetween({ highInclusive: false, range: [10, 12] }), { + message: "Expected <11> NOT to be between (10, 12) range", + name: AssertionError.name, + }, + ); + }); + }, ); context("and the actual value is NOT between passed range argument and high limit is NOT inclusive", () => { - it("throws an assertion error", () => { - const test = new NumberAssertion(5); + it("throws an assertion error", () => { + const test = new NumberAssertion(5); - assert.throws(() => test.toBeBetween({ highInclusive: false, range: [10, 12] }), { - message: "Expected <5> to be between (10, 12) range", - name: AssertionError.name, - }, - ); - assert.deepStrictEqual(test.not.toBeBetween({ highInclusive: false, range: [10, 12] }), test); - }); - }, + assert.throws(() => test.toBeBetween({ highInclusive: false, range: [10, 12] }), { + message: "Expected <5> to be between (10, 12) range", + name: AssertionError.name, + }, + ); + assert.deepStrictEqual(test.not.toBeBetween({ highInclusive: false, range: [10, 12] }), test); + }); + }, ); context("and the actual value is between passed range argument and high limit is inclusive", @@ -466,27 +466,27 @@ describe("[Unit] NumberAssertion.test.ts", () => { assert.deepStrictEqual(test.toBeBetween({ highInclusive: true, range: [10, 12] }), test); assert.throws(() => test.not.toBeBetween({ highInclusive: true, range: [10, 12] }), { - message: + message: "Expected <12> NOT to be between (10, 12] range", - name: AssertionError.name, - }, + name: AssertionError.name, + }, ); }); }, ); context("and the actual value is NOT between passed range argument and high limit is inclusive", () => { - it("throws an assertion error", () => { - const test = new NumberAssertion(5); + it("throws an assertion error", () => { + const test = new NumberAssertion(5); - assert.throws(() => test.toBeBetween({ highInclusive: true, range: [10, 12] }), { - message: "Expected <5> to be between (10, 12] range", - name: AssertionError.name, - }, - ); - assert.deepStrictEqual(test.not.toBeBetween({ highInclusive: true, range: [10, 12] }), test); - }); - }, + assert.throws(() => test.toBeBetween({ highInclusive: true, range: [10, 12] }), { + message: "Expected <5> to be between (10, 12] range", + name: AssertionError.name, + }, + ); + assert.deepStrictEqual(test.not.toBeBetween({ highInclusive: true, range: [10, 12] }), test); + }); + }, ); }); }); @@ -498,9 +498,9 @@ describe("[Unit] NumberAssertion.test.ts", () => { assert.deepStrictEqual(test.toBeCloseTo({ value: 10, withOffset: 2 }), test); assert.throws(() => test.not.toBeCloseTo({ value: 10, withOffset: 2 }), { - message: "Expected <9> NOT to be close to <10> with offset <2>", - name: AssertionError.name, - }, + message: "Expected <9> NOT to be close to <10> with offset <2>", + name: AssertionError.name, + }, ); }); }); @@ -510,9 +510,9 @@ describe("[Unit] NumberAssertion.test.ts", () => { const test = new NumberAssertion(4); assert.throws(() => test.toBeCloseTo({ value: 10, withOffset: 2 }), { - message: "Expected <4> to be close to <10> with offset <2>", - name: AssertionError.name, - }, + message: "Expected <4> to be close to <10> with offset <2>", + name: AssertionError.name, + }, ); assert.deepStrictEqual(test.not.toBeCloseTo({ value: 10, withOffset: 2 }), test); }); diff --git a/packages/core/test/lib/ObjectAssertion.test.ts b/packages/core/test/lib/ObjectAssertion.test.ts index a41d8f0..de15c41 100644 --- a/packages/core/test/lib/ObjectAssertion.test.ts +++ b/packages/core/test/lib/ObjectAssertion.test.ts @@ -1,11 +1,11 @@ +import assert, { AssertionError } from "assert"; + import dedent from "dedent"; import { ObjectAssertion } from "../../src/lib/ObjectAssertion"; import { prettify } from "../../src/lib/helpers/messages"; -import assert, { AssertionError } from "assert"; - -type Entry = ["myKey", number] | [2, { innerObjKey: number; message: string; }] | [string, boolean]; +type Entry = [2, { innerObjKey: number; message: string; }] | ["myKey", number] | [string, boolean]; const RECORD: Record = { falsy: false, diff --git a/packages/core/test/lib/PromiseAssertion.test.ts b/packages/core/test/lib/PromiseAssertion.test.ts index 90b0a88..0a7306a 100644 --- a/packages/core/test/lib/PromiseAssertion.test.ts +++ b/packages/core/test/lib/PromiseAssertion.test.ts @@ -1,10 +1,10 @@ +import assert from "assert"; +import { AssertionError } from "assert/strict"; + import dedent from "dedent"; import { PromiseAssertion } from "../../src/lib/PromiseAssertion"; -import assert from "assert"; -import { AssertionError } from "assert/strict"; - describe("[Unit] PromiseAssertion.test.ts", () => { describe(".toBeResolved", () => { context("when the promise is resolved", () => { diff --git a/packages/core/test/lib/StringAssertion.test.ts b/packages/core/test/lib/StringAssertion.test.ts index 55071dc..8c10995 100644 --- a/packages/core/test/lib/StringAssertion.test.ts +++ b/packages/core/test/lib/StringAssertion.test.ts @@ -1,9 +1,9 @@ +import assert, { AssertionError } from "assert"; + import Sinon from "sinon"; import { StringAssertion } from "../../src/lib/StringAssertion"; -import assert, { AssertionError } from "assert"; - describe("[Unit] StringAssertion.test.ts", () => { describe(".toBeEmpty", () => { context("when the value is an empty string", () => { @@ -213,9 +213,9 @@ describe("[Unit] StringAssertion.test.ts", () => { it("returns the assertion instance", () => { const test = new StringAssertion("1234567890"); - assert.deepStrictEqual(test.toMatchRegex(/^[0-9]+$/), test); - assert.throws(() => test.not.toMatchRegex(/^[0-9]+$/), { - message: "Expected <1234567890> NOT to match the regular expression <^[0-9]+$>", + assert.deepStrictEqual(test.toMatchRegex(/^\d+$/), test); + assert.throws(() => test.not.toMatchRegex(/^\d+$/), { + message: "Expected <1234567890> NOT to match the regular expression <^\\d+$>", name: AssertionError.name, }); }); @@ -225,11 +225,11 @@ describe("[Unit] StringAssertion.test.ts", () => { it("throws an assertion error", () => { const test = new StringAssertion("1234567890x"); - assert.throws(() => test.toMatchRegex(/^[0-9]+$/), { - message: "Expected <1234567890x> to match the regular expression <^[0-9]+$>", + assert.throws(() => test.toMatchRegex(/^\d+$/), { + message: "Expected <1234567890x> to match the regular expression <^\\d+$>", name: AssertionError.name, }); - assert.deepStrictEqual(test.not.toMatchRegex(/^[0-9]+$/), test); + assert.deepStrictEqual(test.not.toMatchRegex(/^\d+$/), test); }); }); }); diff --git a/packages/core/test/lib/expect.test.ts b/packages/core/test/lib/expect.test.ts index 0306fd6..8edbdae 100644 --- a/packages/core/test/lib/expect.test.ts +++ b/packages/core/test/lib/expect.test.ts @@ -1,3 +1,5 @@ +import assert from "assert"; + import { ArrayAssertion } from "../../src/lib/ArrayAssertion"; import { Assertion } from "../../src/lib/Assertion"; import { BooleanAssertion } from "../../src/lib/BooleanAssertion"; @@ -10,10 +12,7 @@ import { PromiseAssertion } from "../../src/lib/PromiseAssertion"; import { StringAssertion } from "../../src/lib/StringAssertion"; import { expect } from "../../src/main"; -import assert from "assert"; - class CustomError extends Error { - public constructor(message?: string) { super(message); @@ -85,13 +84,13 @@ describe("[Unit] expect.test.ts", () => { new Error("classic"), new CustomError("custom"), ] - .forEach(error => { - it(`[${error.name}] returns an ErrorAssertion`, () => { - const test = expect(error); + .forEach(error => { + it(`[${error.name}] returns an ErrorAssertion`, () => { + const test = expect(error); - assert(test instanceof ErrorAssertion); + assert(test instanceof ErrorAssertion); + }); }); - }); }); context("when the actual value is an Object", () => { diff --git a/packages/core/test/lib/helpers/TypeFactories.test.ts b/packages/core/test/lib/helpers/TypeFactories.test.ts index 4f9bb99..289342d 100644 --- a/packages/core/test/lib/helpers/TypeFactories.test.ts +++ b/packages/core/test/lib/helpers/TypeFactories.test.ts @@ -1,9 +1,8 @@ -import { TypeFactories } from "../../../src/lib/helpers/TypeFactories"; - import assert from "assert"; -class CustomError extends Error { +import { TypeFactories } from "../../../src/lib/helpers/TypeFactories"; +class CustomError extends Error { public constructor(message?: string) { super(message); diff --git a/packages/core/test/lib/helpers/dates.test.ts b/packages/core/test/lib/helpers/dates.test.ts index 7e05239..c0ed859 100644 --- a/packages/core/test/lib/helpers/dates.test.ts +++ b/packages/core/test/lib/helpers/dates.test.ts @@ -1,7 +1,8 @@ -import { DateOptions } from "../../../src/lib/DateAssertion.types"; +import assert from "assert"; + import { dateToOptions, dayOfWeekAsNumber, monthOfYear, optionsToDate } from "../../../src/lib/helpers/dates"; -import assert from "assert"; +import type { DateOptions } from "../../../src/lib/DateAssertion.types"; describe("[Unit] dates.test.ts", () => { describe(".dayOfWeekAsNumber", () => { diff --git a/packages/core/test/lib/helpers/guards.test.ts b/packages/core/test/lib/helpers/guards.test.ts index 0428a2f..2466542 100644 --- a/packages/core/test/lib/helpers/guards.test.ts +++ b/packages/core/test/lib/helpers/guards.test.ts @@ -1,12 +1,12 @@ +import assert from "assert"; + import { isAnyFunction, - isStruct, isKeyOf, isPromise, + isStruct, } from "../../../src/lib/helpers/guards"; -import assert from "assert"; - describe("[Unit] guards.test.ts", () => { describe(".isStruct", () => { context("when the value is an object", () => { @@ -17,7 +17,7 @@ describe("[Unit] guards.test.ts", () => { ["foo", false], [null, false], [{ }, true], - ]; + ] as const; variants.forEach(([value, expected]) => { context(`and the value is ${JSON.stringify(value)}`, () => { @@ -48,13 +48,13 @@ describe("[Unit] guards.test.ts", () => { ...Object.keys(target), ...Object.getOwnPropertySymbols(target), ] - .forEach(key => { - it(`[${key.toString()}] return true`, () => { - const isKey = isKeyOf(target, key); + .forEach(key => { + it(`[${key.toString()}] return true`, () => { + const isKey = isKeyOf(target, key); - assert.equal(isKey, true); + assert.equal(isKey, true); + }); }); - }); }); context("when the value is not a key of the target", () => { diff --git a/packages/core/test/lib/helpers/messages.test.ts b/packages/core/test/lib/helpers/messages.test.ts index a393d4e..648ab8e 100644 --- a/packages/core/test/lib/helpers/messages.test.ts +++ b/packages/core/test/lib/helpers/messages.test.ts @@ -1,7 +1,7 @@ -import { prettify } from "../../../src/lib/helpers/messages"; - import assert from "assert"; +import { prettify } from "../../../src/lib/helpers/messages"; + describe("[Unit] messages.test.ts", () => { describe(".prettify", () => { context("when the value is an object", () => { diff --git a/packages/core/test/main.test.ts b/packages/core/test/main.test.ts index c8a9730..0370fc9 100644 --- a/packages/core/test/main.test.ts +++ b/packages/core/test/main.test.ts @@ -1,7 +1,7 @@ -import { assert as libAssert, assertThat, expect, TypeFactories } from "../src/main"; - import assert from "assert"; +import { TypeFactories, assertThat, expect, assert as libAssert } from "../src/main"; + describe("[Unit] main.test.ts", () => { context("expect", () => { it("is exposed to the API", () => { diff --git a/packages/dom/package.json b/packages/dom/package.json index db420e8..aa4aa61 100644 --- a/packages/dom/package.json +++ b/packages/dom/package.json @@ -36,7 +36,7 @@ }, "dependencies": { "fast-deep-equal": "^3.1.3", - "tslib": "^2.6.2" + "tslib": "^2.8.1" }, "devDependencies": { "@assertive-ts/core": "workspace:^", @@ -60,7 +60,7 @@ "typedoc": "^0.25.8", "typedoc-plugin-markdown": "^3.17.1", "typedoc-plugin-merge-modules": "^5.1.0", - "typescript": "^5.4.2" + "typescript": "^5.9.3" }, "peerDependencies": { "@assertive-ts/core": ">=2.0.0" diff --git a/packages/dom/src/lib/ElementAssertion.ts b/packages/dom/src/lib/ElementAssertion.ts index 537d808..1a4d3a7 100644 --- a/packages/dom/src/lib/ElementAssertion.ts +++ b/packages/dom/src/lib/ElementAssertion.ts @@ -1,7 +1,6 @@ import { Assertion, AssertionError } from "@assertive-ts/core"; export class ElementAssertion extends Assertion { - public constructor(actual: T) { super(actual); } diff --git a/packages/dom/test/unit/lib/ElementAssertion.test.tsx b/packages/dom/test/unit/lib/ElementAssertion.test.tsx index 47bb167..3b6bd8f 100644 --- a/packages/dom/test/unit/lib/ElementAssertion.test.tsx +++ b/packages/dom/test/unit/lib/ElementAssertion.test.tsx @@ -3,16 +3,16 @@ import { render } from "@testing-library/react"; import { ElementAssertion } from "../../../src/lib/ElementAssertion"; -import { HaveClassTestComponent } from "./fixtures/haveClassTestComponent"; -import { NestedElementsTestComponent } from "./fixtures/nestedElementsTestComponent"; -import { SimpleTestComponent } from "./fixtures/simpleTestComponent"; -import { WithAttributesTestComponent } from "./fixtures/withAttributesTestComponent"; +import { HaveClassTest } from "./fixtures/HaveClassTest"; +import { NestedElementsTest } from "./fixtures/NestedElementsTest"; +import { SimpleTest } from "./fixtures/SimpleTest"; +import { WithAttributesTest } from "./fixtures/WithAttributesTest"; describe("[Unit] ElementAssertion.test.ts", () => { describe(".toBeInTheDocument", () => { context("when the element is in the document", () => { it("returns the assertion instance", async () => { - const { findByRole } = render(); + const { findByRole } = render(); const button = await findByRole("button", { name: "click me" }); const test = new ElementAssertion(button); @@ -42,7 +42,7 @@ describe("[Unit] ElementAssertion.test.ts", () => { context("when the descendant element is contained in the ancestor element", () => { context("and it is a direct child", () => { it("returns the assertion instance", async () => { - const { findByTestId } = render(); + const { findByTestId } = render(); const grandparent = await findByTestId("grandparent"); const parent = await findByTestId("parent"); const child = await findByTestId("child"); @@ -50,9 +50,9 @@ describe("[Unit] ElementAssertion.test.ts", () => { const grandparentTest = new ElementAssertion(grandparent); const parentTest = new ElementAssertion(parent); - expect(grandparentTest.toContainElement(parent)); - expect(grandparentTest.toContainElement(svgElement)); - expect(parentTest.toContainElement(child)); + expect(grandparentTest.toContainElement(parent)).toBeEqual(grandparentTest); + expect(grandparentTest.toContainElement(svgElement)).toBeEqual(grandparentTest); + expect(parentTest.toContainElement(child)).toBeEqual(parentTest); expect(() => grandparentTest.not.toContainElement(parent)) .toThrowError(AssertionError) @@ -70,12 +70,12 @@ describe("[Unit] ElementAssertion.test.ts", () => { context("and it is an indirect child", () => { it("returns the assertion instance", async () => { - const { findByTestId } = render(); + const { findByTestId } = render(); const grandparent = await findByTestId("grandparent"); const child = await findByTestId("child"); const grandparentTest = new ElementAssertion(grandparent); - expect(grandparentTest.toContainElement(child)); + expect(grandparentTest.toContainElement(child)).toBeEqual(grandparentTest); expect(() => grandparentTest.not.toContainElement(child)) .toThrowError(AssertionError) @@ -85,12 +85,12 @@ describe("[Unit] ElementAssertion.test.ts", () => { context("and it is a deeply nested child", () => { it("returns the assertion instance", async () => { - const { findByTestId } = render(); + const { findByTestId } = render(); const grandparent = await findByTestId("grandparent"); const deepChild = await findByTestId("deep-child"); const grandparentTest = new ElementAssertion(grandparent); - expect(grandparentTest.toContainElement(deepChild)); + expect(grandparentTest.toContainElement(deepChild)).toBeEqual(grandparentTest); expect(() => grandparentTest.not.toContainElement(deepChild)) .toThrowError(AssertionError) @@ -102,7 +102,7 @@ describe("[Unit] ElementAssertion.test.ts", () => { context("when element is NOT contained in ancestor element", () => { it("throws an assertion error", async () => { const notChildElement = document.createElement("span"); - const { findByTestId } = render(); + const { findByTestId } = render(); const grandparent = await findByTestId("grandparent"); const grandparentTest = new ElementAssertion(grandparent); @@ -118,7 +118,7 @@ describe("[Unit] ElementAssertion.test.ts", () => { describe(".toHaveAttribute", () => { context("when the element has the attribute with the expected value", () => { it("returns the assertion instance", async () => { - const { findByRole } = render(); + const { findByRole } = render(); const button = await findByRole("button", { name: "click me" }); const test = new ElementAssertion(button); @@ -132,7 +132,7 @@ describe("[Unit] ElementAssertion.test.ts", () => { context("when the element has the attribute with a not expected value", () => { it("throws an assertion error", async () => { - const { findByRole } = render(); + const { findByRole } = render(); const button = await findByRole("button", { name: "click me" }); const test = new ElementAssertion(button); @@ -147,7 +147,7 @@ describe("[Unit] ElementAssertion.test.ts", () => { context("when the element has the attribute without checking value", () => { it("returns the assertion instance", async () => { - const { findByRole } = render(); + const { findByRole } = render(); const button = await findByRole("button", { name: "click me" }); const test = new ElementAssertion(button); @@ -161,7 +161,7 @@ describe("[Unit] ElementAssertion.test.ts", () => { context("when the element does not have the attribute", () => { it("throws an assertion error", async () => { - const { findByRole } = render(); + const { findByRole } = render(); const button = await findByRole("button", { name: "click me" }); const test = new ElementAssertion(button); @@ -177,7 +177,7 @@ describe("[Unit] ElementAssertion.test.ts", () => { describe(".toHaveClass", () => { context("when the element has the expected class", () => { it("returns the assertion instance", () => { - const { getByText } = render(); + const { getByText } = render(); const divTest = getByText("Test text inside a div"); const test = new ElementAssertion(divTest); @@ -191,7 +191,7 @@ describe("[Unit] ElementAssertion.test.ts", () => { context("when the element does not have the expected class", () => { it("throws an assertion error", () => { - const { getByText } = render(); + const { getByText } = render(); const divTest = getByText("Test text inside a div"); const test = new ElementAssertion(divTest); @@ -207,7 +207,7 @@ describe("[Unit] ElementAssertion.test.ts", () => { describe(".toHaveAnyClass", () => { context("when the element has at least one of the expected classes", () => { it("returns the assertion instance", () => { - const { getByText } = render(); + const { getByText } = render(); const divTest = getByText("Test text inside a div"); const test = new ElementAssertion(divTest); @@ -221,7 +221,7 @@ describe("[Unit] ElementAssertion.test.ts", () => { context("when the element does not have any of the expected classes", () => { it("throws an assertion error", () => { - const { getByText } = render(); + const { getByText } = render(); const divTest = getByText("Test text inside a div"); const test = new ElementAssertion(divTest); @@ -237,7 +237,7 @@ describe("[Unit] ElementAssertion.test.ts", () => { describe(".toHaveAllClasses", () => { context("when the element has all the expected classes", () => { it("returns the assertion instance", () => { - const { getByText } = render(); + const { getByText } = render(); const divTest = getByText("Test text inside a div"); const test = new ElementAssertion(divTest); @@ -251,7 +251,7 @@ describe("[Unit] ElementAssertion.test.ts", () => { context("when the element does not have all the expected classes", () => { it("throws an assertion error", () => { - const { getByText } = render(); + const { getByText } = render(); const divTest = getByText("Test text inside a div"); divTest.classList.add("foo", "bar"); const test = new ElementAssertion(divTest); @@ -264,5 +264,4 @@ describe("[Unit] ElementAssertion.test.ts", () => { }); }); }); - }); diff --git a/packages/dom/test/unit/lib/fixtures/HaveClassTest.tsx b/packages/dom/test/unit/lib/fixtures/HaveClassTest.tsx new file mode 100644 index 0000000..077051d --- /dev/null +++ b/packages/dom/test/unit/lib/fixtures/HaveClassTest.tsx @@ -0,0 +1,13 @@ +import type { ReactElement } from "react"; + +interface HaveClassTestComponentProps { + className?: string; +} + +export function HaveClassTest({ className }: HaveClassTestComponentProps): ReactElement { + return ( +
+ {"Test text inside a div"} +
+ ); +} diff --git a/packages/dom/test/unit/lib/fixtures/nestedElementsTestComponent.tsx b/packages/dom/test/unit/lib/fixtures/NestedElementsTest.tsx similarity index 78% rename from packages/dom/test/unit/lib/fixtures/nestedElementsTestComponent.tsx rename to packages/dom/test/unit/lib/fixtures/NestedElementsTest.tsx index 58273e0..e219967 100644 --- a/packages/dom/test/unit/lib/fixtures/nestedElementsTestComponent.tsx +++ b/packages/dom/test/unit/lib/fixtures/NestedElementsTest.tsx @@ -1,6 +1,6 @@ -import { ReactElement } from "react"; +import type { ReactElement } from "react"; -export function NestedElementsTestComponent(): ReactElement { +export function NestedElementsTest(): ReactElement { return ( diff --git a/packages/dom/test/unit/lib/fixtures/SimpleTest.tsx b/packages/dom/test/unit/lib/fixtures/SimpleTest.tsx new file mode 100644 index 0000000..ae62390 --- /dev/null +++ b/packages/dom/test/unit/lib/fixtures/SimpleTest.tsx @@ -0,0 +1,9 @@ +import type { ReactElement } from "react"; + +export function SimpleTest(): ReactElement { + return ( +
+ +
+ ); +} diff --git a/packages/dom/test/unit/lib/fixtures/WithAttributesTest.tsx b/packages/dom/test/unit/lib/fixtures/WithAttributesTest.tsx new file mode 100644 index 0000000..b95b74f --- /dev/null +++ b/packages/dom/test/unit/lib/fixtures/WithAttributesTest.tsx @@ -0,0 +1,9 @@ +import type { ReactElement } from "react"; + +export function WithAttributesTest(): ReactElement { + return ( + + ); +} diff --git a/packages/dom/test/unit/lib/fixtures/haveClassTestComponent.tsx b/packages/dom/test/unit/lib/fixtures/haveClassTestComponent.tsx deleted file mode 100644 index a7b8fb3..0000000 --- a/packages/dom/test/unit/lib/fixtures/haveClassTestComponent.tsx +++ /dev/null @@ -1,9 +0,0 @@ -import { ReactElement } from "react"; - -export function HaveClassTestComponent({ className }: { className?: string; }): ReactElement { - return ( -
- {"Test text inside a div"} -
- ); -} diff --git a/packages/dom/test/unit/lib/fixtures/simpleTestComponent.tsx b/packages/dom/test/unit/lib/fixtures/simpleTestComponent.tsx deleted file mode 100644 index 150062c..0000000 --- a/packages/dom/test/unit/lib/fixtures/simpleTestComponent.tsx +++ /dev/null @@ -1,9 +0,0 @@ -import { ReactElement } from "react"; - -export function SimpleTestComponent(): ReactElement { - return ( -
- -
- ); - } diff --git a/packages/dom/test/unit/lib/fixtures/withAttributesTestComponent.tsx b/packages/dom/test/unit/lib/fixtures/withAttributesTestComponent.tsx deleted file mode 100644 index 14e52ff..0000000 --- a/packages/dom/test/unit/lib/fixtures/withAttributesTestComponent.tsx +++ /dev/null @@ -1,9 +0,0 @@ -import { ReactElement } from "react"; - -export function WithAttributesTestComponent(): ReactElement { - return ( - - ); -} diff --git a/packages/native/package.json b/packages/native/package.json index 9d68014..a19a86c 100644 --- a/packages/native/package.json +++ b/packages/native/package.json @@ -36,7 +36,7 @@ "dependencies": { "dot-prop-immutable": "^2.1.1", "fast-deep-equal": "^3.1.3", - "tslib": "^2.6.2" + "tslib": "^2.8.1" }, "devDependencies": { "@assertive-ts/core": "workspace:^", @@ -58,7 +58,7 @@ "typedoc": "^0.25.8", "typedoc-plugin-markdown": "^3.17.1", "typedoc-plugin-merge-modules": "^5.1.0", - "typescript": "^5.4.2" + "typescript": "^5.9.3" }, "peerDependencies": { "@assertive-ts/core": ">=2.0.0", diff --git a/packages/native/src/lib/ElementAssertion.ts b/packages/native/src/lib/ElementAssertion.ts index f30d78b..0ce4e00 100644 --- a/packages/native/src/lib/ElementAssertion.ts +++ b/packages/native/src/lib/ElementAssertion.ts @@ -1,10 +1,11 @@ import { Assertion, AssertionError } from "@assertive-ts/core"; import { get } from "dot-prop-immutable"; import { Children } from "react"; -import { ReactTestInstance } from "react-test-renderer"; import { instanceToString } from "./helpers/helpers"; +import type { ReactTestInstance } from "react-test-renderer"; + export class ElementAssertion extends Assertion { public constructor(actual: ReactTestInstance) { super(actual); @@ -129,7 +130,7 @@ export class ElementAssertion extends Assertion { } return ( - get(element, "props.aria-disabled") + get(element, "props.aria-disabled") || get(element, "props.disabled", false) || get(element, "props.accessibilityState.disabled", false) || get(element, "props.accessibilityStates", []).includes("disabled") diff --git a/packages/native/src/lib/helpers/helpers.ts b/packages/native/src/lib/helpers/helpers.ts index 631395c..7a2a205 100644 --- a/packages/native/src/lib/helpers/helpers.ts +++ b/packages/native/src/lib/helpers/helpers.ts @@ -1,4 +1,4 @@ -import { ReactTestInstance } from "react-test-renderer"; +import type { ReactTestInstance } from "react-test-renderer"; /** * Converts a ReactTestInstance to a string representation. @@ -6,7 +6,7 @@ import { ReactTestInstance } from "react-test-renderer"; * @param instance The ReactTestInstance to convert. * @returns A string representation of the instance. */ -export function instanceToString(instance: ReactTestInstance | null): string { +export function instanceToString(instance: null | ReactTestInstance): string { if (instance === null) { return "null"; } diff --git a/packages/native/src/main.ts b/packages/native/src/main.ts index a6fe8a1..22e90b4 100644 --- a/packages/native/src/main.ts +++ b/packages/native/src/main.ts @@ -1,21 +1,21 @@ -import { Plugin } from "@assertive-ts/core"; -import { ReactTestInstance } from "react-test-renderer"; - import { ElementAssertion } from "./lib/ElementAssertion"; +import type { Plugin } from "@assertive-ts/core"; +import type { ReactTestInstance } from "react-test-renderer"; + declare module "@assertive-ts/core" { - export interface Expect { - // eslint-disable-next-line @typescript-eslint/prefer-function-type - (actual: ReactTestInstance): ElementAssertion; - } + export interface Expect { + // eslint-disable-next-line @typescript-eslint/prefer-function-type + (actual: ReactTestInstance): ElementAssertion; + } } const ElementPlugin: Plugin = { - Assertion: ElementAssertion, - insertAt: "top", - predicate: (actual): actual is ReactTestInstance => - typeof actual === "object" + Assertion: ElementAssertion, + insertAt: "top", + predicate: (actual): actual is ReactTestInstance => + typeof actual === "object" && actual !== null && "instance" in actual && typeof actual.instance === "object" diff --git a/packages/native/test/hooks.ts b/packages/native/test/hooks.ts index 9ca3b9f..080954f 100644 --- a/packages/native/test/hooks.ts +++ b/packages/native/test/hooks.ts @@ -1,4 +1,3 @@ -/* eslint-disable react-hooks/rules-of-hooks */ import Sinon from "sinon"; export function mochaHooks(): Mocha.RootHookObject { diff --git a/packages/native/test/lib/ElementAssertion.test.tsx b/packages/native/test/lib/ElementAssertion.test.tsx index 575046d..82b160d 100644 --- a/packages/native/test/lib/ElementAssertion.test.tsx +++ b/packages/native/test/lib/ElementAssertion.test.tsx @@ -1,12 +1,12 @@ import { AssertionError, expect } from "@assertive-ts/core"; import { fireEvent, render } from "@testing-library/react-native"; -import { useState, useCallback, ReactElement } from "react"; +import { type ReactElement, useCallback, useState } from "react"; import { - View, - TextInput, - Text, - Modal, Button, + Modal, + Text, + TextInput, + View, } from "react-native"; import { ElementAssertion } from "../../src/lib/ElementAssertion"; @@ -37,7 +37,7 @@ describe("[Unit] ElementAssertion.test.ts", () => { context("and the element is not editable", () => { it("returns the assertion instance", () => { const element = render( - , + , ); const test = new ElementAssertion(element.getByTestId("id")); expect(test.toBeDisabled()).toBe(test); @@ -202,7 +202,7 @@ describe("[Unit] ElementAssertion.test.ts", () => { context("when the element contains 'display' property", () => { context("and display = none", () => { it("throws an error", () => { - const { getByText, getByRole } = render( + const { getByRole, getByText } = render( , ); const textElement = new ElementAssertion(getByText("Toggle me!")); @@ -248,7 +248,7 @@ describe("[Unit] ElementAssertion.test.ts", () => { context("when the element contains 'importantForAccessibility' property", () => { it("returns the assertion instance", () => { const { getByTestId } = render( - , + , ); const test = new ElementAssertion(getByTestId("id")); @@ -262,7 +262,7 @@ describe("[Unit] ElementAssertion.test.ts", () => { context("when the parent element contains 'opacity' property", () => { context("and parent opacity = 0", () => { const { getByTestId } = render( - + , ); @@ -287,7 +287,7 @@ describe("[Unit] ElementAssertion.test.ts", () => { context("and child opacity = 0", () => { const { getByTestId } = render( - + , ); diff --git a/packages/sinon/package.json b/packages/sinon/package.json index ac39d9e..d0590f0 100644 --- a/packages/sinon/package.json +++ b/packages/sinon/package.json @@ -35,7 +35,7 @@ }, "dependencies": { "fast-deep-equal": "^3.1.3", - "tslib": "^2.6.2" + "tslib": "^2.8.1" }, "devDependencies": { "@assertive-ts/core": "workspace:^", @@ -50,7 +50,7 @@ "typedoc": "^0.25.8", "typedoc-plugin-markdown": "^3.17.1", "typedoc-plugin-merge-modules": "^5.1.0", - "typescript": "^5.4.2" + "typescript": "^5.9.3" }, "peerDependencies": { "@assertive-ts/core": ">=2.0.0", diff --git a/packages/sinon/src/lib/SinonSpyAssertion.ts b/packages/sinon/src/lib/SinonSpyAssertion.ts index 6b59df7..da518b1 100644 --- a/packages/sinon/src/lib/SinonSpyAssertion.ts +++ b/packages/sinon/src/lib/SinonSpyAssertion.ts @@ -1,10 +1,11 @@ import { Assertion, AssertionError } from "@assertive-ts/core"; import isDeepEqual from "fast-deep-equal"; -import { SinonSpy } from "sinon"; import { SinonSpyCallAssertion } from "./SinonSpyCallAssertion"; import { callTimes, numeral, prettify } from "./helpers/messages"; +import type { SinonSpy } from "sinon"; + /** * Encapsulates assertion methods applicable to {@link SinonSpy} instances. * This includes `Sinon.spy(..)`, `Sinon.stub(..)`, `Sinon.mock()` and @@ -14,7 +15,6 @@ import { callTimes, numeral, prettify } from "./helpers/messages"; * @param R the type return type of the spied function */ export class SinonSpyAssertion extends Assertion> { - public constructor(actual: SinonSpy) { super(actual); } @@ -39,7 +39,7 @@ export class SinonSpyAssertion extends Assertion extends Assertion to be called at least ${numeral(times)}, but it was ${callTimes(callCount)}`, @@ -166,7 +166,7 @@ export class SinonSpyAssertion extends Assertion to be called at most ${numeral(times)}, but it was ${callTimes(callCount)}`, @@ -196,7 +196,7 @@ export class SinonSpyAssertion extends Assertion extends Assertion extends Assertion` diff --git a/packages/sinon/src/lib/SinonSpyCallAssertion.ts b/packages/sinon/src/lib/SinonSpyCallAssertion.ts index 343f848..9369838 100644 --- a/packages/sinon/src/lib/SinonSpyCallAssertion.ts +++ b/packages/sinon/src/lib/SinonSpyCallAssertion.ts @@ -1,11 +1,12 @@ import { Assertion, AssertionError } from "@assertive-ts/core"; -import { Constructor } from "@assertive-ts/core/dist/lib/Assertion"; import { ErrorAssertion } from "@assertive-ts/core/dist/lib/ErrorAssertion"; import isDeepEqual from "fast-deep-equal"; -import { SinonSpyCall } from "sinon"; import { prettify } from "./helpers/messages"; +import type { Constructor } from "@assertive-ts/core/dist/lib/Assertion"; +import type { SinonSpyCall } from "sinon"; + /** * Encapsulates assertion methods applicable to {@link SinonSpyCall} instances. * This includes single calls of `Sinon.spy(..)`, `Sinon.stub(..)`, @@ -15,7 +16,6 @@ import { prettify } from "./helpers/messages"; * @param R the type return type of the spied function */ export class SinonSpyCallAssertion extends Assertion> { - private spyName: string; public constructor(actual: SinonSpyCall) { diff --git a/packages/sinon/src/main.ts b/packages/sinon/src/main.ts index 0677d3a..19478c2 100644 --- a/packages/sinon/src/main.ts +++ b/packages/sinon/src/main.ts @@ -1,9 +1,9 @@ -import { Plugin } from "@assertive-ts/core"; -import { SinonSpy, SinonSpyCall } from "sinon"; - import { SinonSpyAssertion } from "./lib/SinonSpyAssertion"; import { SinonSpyCallAssertion } from "./lib/SinonSpyCallAssertion"; +import type { Plugin } from "@assertive-ts/core"; +import type { SinonSpy, SinonSpyCall } from "sinon"; + export type { SinonSpyAssertion } from "./lib/SinonSpyAssertion"; export type { SinonSpyCallAssertion } from "./lib/SinonSpyCallAssertion"; diff --git a/packages/sinon/test/helpers/common.ts b/packages/sinon/test/helpers/common.ts index 06688cd..f4748a6 100644 --- a/packages/sinon/test/helpers/common.ts +++ b/packages/sinon/test/helpers/common.ts @@ -6,7 +6,7 @@ export function sneakyCall(fn: () => unknown): void { try { fn(); - } catch (e) { + } catch { // continue... } } diff --git a/packages/sinon/test/unit/lib/SinonSpyCallAssertion.test.ts b/packages/sinon/test/unit/lib/SinonSpyCallAssertion.test.ts index 3b3d349..cdfdc6b 100644 --- a/packages/sinon/test/unit/lib/SinonSpyCallAssertion.test.ts +++ b/packages/sinon/test/unit/lib/SinonSpyCallAssertion.test.ts @@ -7,7 +7,6 @@ import { SinonSpyCallAssertion } from "../../../src/lib/SinonSpyCallAssertion"; import { sneakyCall } from "../../helpers/common"; class InvariantError extends Error { - public constructor(message: string) { super(`Invariant: ${message}`); this.name = InvariantError.name; diff --git a/tsconfig.json b/tsconfig.json index 0df25bd..d1f0a10 100644 --- a/tsconfig.json +++ b/tsconfig.json @@ -1,29 +1,36 @@ { "compilerOptions": { + "allowSyntheticDefaultImports": true, "alwaysStrict": true, "declaration": true, "esModuleInterop": true, "importHelpers": true, "incremental": true, "forceConsistentCasingInFileNames": true, - "module": "CommonJS", - "moduleResolution": "Node", - "noImplicitAny": true, + "isolatedModules": true, + "jsx": "react-jsx", + "lib": ["DOM", "DOM.Iterable", "ES2023"], + "module": "commonjs", + "moduleResolution": "node", "noImplicitOverride": true, "noImplicitReturns": true, - "noImplicitThis": true, "noUncheckedIndexedAccess": true, "noUnusedLocals": true, "noUnusedParameters": true, "removeComments": false, + "resolveJsonModule": true, "skipLibCheck": true, "sourceMap": true, "strict": true, - "target": "ES6", - "typeRoots": ["./node_modules/@types/"] + "target": "es6", + "useDefineForClassFields": true, + "useUnknownInCatchVariables": true, }, "exclude": [ - ".yarn/*", - "node_modules/*" + "**/.turbo/**", + "**/.yarn/**", + "**/build/**", + "**/dist/**", + "**/node_modules/**" ] } diff --git a/yarn.lock b/yarn.lock index 12ff163..a11cfc9 100644 --- a/yarn.lock +++ b/yarn.lock @@ -5,13 +5,6 @@ __metadata: version: 8 cacheKey: 10 -"@aashutoshrathi/word-wrap@npm:^1.2.3": - version: 1.2.6 - resolution: "@aashutoshrathi/word-wrap@npm:1.2.6" - checksum: 10/6eebd12a5cd03cee38fcb915ef9f4ea557df6a06f642dfc7fe8eb4839eb5c9ca55a382f3604d52c14200b0c214c12af5e1f23d2a6d8e23ef2d016b105a9d6c0a - languageName: node - linkType: hard - "@ampproject/remapping@npm:^2.2.0": version: 2.2.1 resolution: "@ampproject/remapping@npm:2.2.1" @@ -37,11 +30,11 @@ __metadata: semantic-release-yarn: "npm:^3.0.2" sinon: "npm:^17.0.1" ts-node: "npm:^10.9.2" - tslib: "npm:^2.6.2" + tslib: "npm:^2.8.1" typedoc: "npm:^0.25.8" typedoc-plugin-markdown: "npm:^3.17.1" typedoc-plugin-merge-modules: "npm:^5.1.0" - typescript: "npm:^5.4.2" + typescript: "npm:^5.9.3" languageName: unknown linkType: soft @@ -68,11 +61,11 @@ __metadata: semantic-release: "npm:^23.0.2" semantic-release-yarn: "npm:^3.0.2" ts-node: "npm:^10.9.2" - tslib: "npm:^2.6.2" + tslib: "npm:^2.8.1" typedoc: "npm:^0.25.8" typedoc-plugin-markdown: "npm:^3.17.1" typedoc-plugin-merge-modules: "npm:^5.1.0" - typescript: "npm:^5.4.2" + typescript: "npm:^5.9.3" peerDependencies: "@assertive-ts/core": ">=2.0.0" peerDependenciesMeta: @@ -103,11 +96,11 @@ __metadata: semantic-release-yarn: "npm:^3.0.2" sinon: "npm:^17.0.1" ts-node: "npm:^10.9.2" - tslib: "npm:^2.6.2" + tslib: "npm:^2.8.1" typedoc: "npm:^0.25.8" typedoc-plugin-markdown: "npm:^3.17.1" typedoc-plugin-merge-modules: "npm:^5.1.0" - typescript: "npm:^5.4.2" + typescript: "npm:^5.9.3" peerDependencies: "@assertive-ts/core": ">=2.0.0" react: "*" @@ -136,11 +129,11 @@ __metadata: semantic-release-yarn: "npm:^3.0.2" sinon: "npm:^17.0.1" ts-node: "npm:^10.9.2" - tslib: "npm:^2.6.2" + tslib: "npm:^2.8.1" typedoc: "npm:^0.25.8" typedoc-plugin-markdown: "npm:^3.17.1" typedoc-plugin-merge-modules: "npm:^5.1.0" - typescript: "npm:^5.4.2" + typescript: "npm:^5.9.3" peerDependencies: "@assertive-ts/core": ">=2.0.0" sinon: ">=15.2.0" @@ -1426,56 +1419,146 @@ __metadata: languageName: node linkType: hard -"@es-joy/jsdoccomment@npm:~0.42.0": - version: 0.42.0 - resolution: "@es-joy/jsdoccomment@npm:0.42.0" +"@emnapi/core@npm:^1.4.3": + version: 1.7.1 + resolution: "@emnapi/core@npm:1.7.1" + dependencies: + "@emnapi/wasi-threads": "npm:1.1.0" + tslib: "npm:^2.4.0" + checksum: 10/260841f6dd2a7823a964d9de6da3a5e6f565dac8d21a5bd8f6215b87c45c22a4dc371b9ad877961579ee3cca8a76e55e3dd033ae29cba1998999cda6d794bdab + languageName: node + linkType: hard + +"@emnapi/runtime@npm:^1.4.3": + version: 1.7.1 + resolution: "@emnapi/runtime@npm:1.7.1" + dependencies: + tslib: "npm:^2.4.0" + checksum: 10/6fc83f938e3c70e32e84c1fbe5cab6cb9340b8107cee4048384ad5b8f2998a06502b4bed342acaf6e44f473f2c14c4ab1e3fd5083bd7823fc63abfca9eff0175 + languageName: node + linkType: hard + +"@emnapi/wasi-threads@npm:1.1.0": + version: 1.1.0 + resolution: "@emnapi/wasi-threads@npm:1.1.0" + dependencies: + tslib: "npm:^2.4.0" + checksum: 10/0d557e75262d2f4c95cb2a456ba0785ef61f919ce488c1d76e5e3acfd26e00c753ef928cd80068363e0c166ba8cc0141305daf0f81aad5afcd421f38f11e0f4e + languageName: node + linkType: hard + +"@es-joy/jsdoccomment@npm:~0.76.0": + version: 0.76.0 + resolution: "@es-joy/jsdoccomment@npm:0.76.0" dependencies: + "@types/estree": "npm:^1.0.8" + "@typescript-eslint/types": "npm:^8.46.0" comment-parser: "npm:1.4.1" - esquery: "npm:^1.5.0" - jsdoc-type-pratt-parser: "npm:~4.0.0" - checksum: 10/413c058f224f91cf6370a514e7024944d20977819724878121178e598714cc4734ee9898b3eca6396f67542ad81acd9d46d5a0209e62306b0ef17a28626ec566 + esquery: "npm:^1.6.0" + jsdoc-type-pratt-parser: "npm:~6.10.0" + checksum: 10/ce7a79c3323f17afdcf997221c0aa45a023c7dc6bbfec501642538691b3307e920146fcb490c00c9f4e8a21adcafad664dffbb3e53051dbb75a0ee85a2428c43 + languageName: node + linkType: hard + +"@es-joy/resolve.exports@npm:1.2.0": + version: 1.2.0 + resolution: "@es-joy/resolve.exports@npm:1.2.0" + checksum: 10/238189f011902b3db0dcf9cd01d403eb565cfc80fb2614cba01c0c1f66b607575132f9952ac914a7395074fbca13415137a50152afc17b1dcb5ae032a84a680d languageName: node linkType: hard -"@eslint-community/eslint-utils@npm:^4.2.0, @eslint-community/eslint-utils@npm:^4.4.0": - version: 4.4.0 - resolution: "@eslint-community/eslint-utils@npm:4.4.0" +"@eslint-community/eslint-utils@npm:^4.7.0, @eslint-community/eslint-utils@npm:^4.8.0, @eslint-community/eslint-utils@npm:^4.9.0": + version: 4.9.0 + resolution: "@eslint-community/eslint-utils@npm:4.9.0" dependencies: - eslint-visitor-keys: "npm:^3.3.0" + eslint-visitor-keys: "npm:^3.4.3" peerDependencies: eslint: ^6.0.0 || ^7.0.0 || >=8.0.0 - checksum: 10/8d70bcdcd8cd279049183aca747d6c2ed7092a5cf0cf5916faac1ef37ffa74f0c245c2a3a3d3b9979d9dfdd4ca59257b4c5621db699d637b847a2c5e02f491c2 + checksum: 10/89b1eb3137e14c379865e60573f524fcc0ee5c4b0c7cd21090673e75e5a720f14b92f05ab2d02704c2314b67e67b6f96f3bb209ded6b890ced7b667aa4bf1fa2 languageName: node linkType: hard -"@eslint-community/regexpp@npm:^4.5.1, @eslint-community/regexpp@npm:^4.6.1": - version: 4.10.0 - resolution: "@eslint-community/regexpp@npm:4.10.0" - checksum: 10/8c36169c815fc5d726078e8c71a5b592957ee60d08c6470f9ce0187c8046af1a00afbda0a065cc40ff18d5d83f82aed9793c6818f7304a74a7488dc9f3ecbd42 +"@eslint-community/regexpp@npm:4.12.1": + version: 4.12.1 + resolution: "@eslint-community/regexpp@npm:4.12.1" + checksum: 10/c08f1dd7dd18fbb60bdd0d85820656d1374dd898af9be7f82cb00451313402a22d5e30569c150315b4385907cdbca78c22389b2a72ab78883b3173be317620cc languageName: node linkType: hard -"@eslint/eslintrc@npm:^2.1.4": - version: 2.1.4 - resolution: "@eslint/eslintrc@npm:2.1.4" +"@eslint-community/regexpp@npm:^4.10.0, @eslint-community/regexpp@npm:^4.12.1, @eslint-community/regexpp@npm:^4.8.0": + version: 4.12.2 + resolution: "@eslint-community/regexpp@npm:4.12.2" + checksum: 10/049b280fddf71dd325514e0a520024969431dc3a8b02fa77476e6820e9122f28ab4c9168c11821f91a27982d2453bcd7a66193356ea84e84fb7c8d793be1ba0c + languageName: node + linkType: hard + +"@eslint/config-array@npm:^0.21.1": + version: 0.21.1 + resolution: "@eslint/config-array@npm:0.21.1" + dependencies: + "@eslint/object-schema": "npm:^2.1.7" + debug: "npm:^4.3.1" + minimatch: "npm:^3.1.2" + checksum: 10/6eaa0435972f735ce52d581f355a0b616e50a9b8a73304a7015398096e252798b9b3b968a67b524eefb0fdeacc57c4d960f0ec6432abe1c1e24be815b88c5d18 + languageName: node + linkType: hard + +"@eslint/config-helpers@npm:^0.4.2": + version: 0.4.2 + resolution: "@eslint/config-helpers@npm:0.4.2" + dependencies: + "@eslint/core": "npm:^0.17.0" + checksum: 10/3f2b4712d8e391c36ec98bc200f7dea423dfe518e42956569666831b89ede83b33120c761dfd3ab6347d8e8894a6d4af47254a18d464a71c6046fd88065f6daf + languageName: node + linkType: hard + +"@eslint/core@npm:^0.17.0": + version: 0.17.0 + resolution: "@eslint/core@npm:0.17.0" + dependencies: + "@types/json-schema": "npm:^7.0.15" + checksum: 10/f9a428cc651ec15fb60d7d60c2a7bacad4666e12508320eafa98258e976fafaa77d7be7be91519e75f801f15f830105420b14a458d4aab121a2b0a59bc43517b + languageName: node + linkType: hard + +"@eslint/eslintrc@npm:^3.3.1": + version: 3.3.1 + resolution: "@eslint/eslintrc@npm:3.3.1" dependencies: ajv: "npm:^6.12.4" debug: "npm:^4.3.2" - espree: "npm:^9.6.0" - globals: "npm:^13.19.0" + espree: "npm:^10.0.1" + globals: "npm:^14.0.0" ignore: "npm:^5.2.0" import-fresh: "npm:^3.2.1" js-yaml: "npm:^4.1.0" minimatch: "npm:^3.1.2" strip-json-comments: "npm:^3.1.1" - checksum: 10/7a3b14f4b40fc1a22624c3f84d9f467a3d9ea1ca6e9a372116cb92507e485260359465b58e25bcb6c9981b155416b98c9973ad9b796053fd7b3f776a6946bce8 + checksum: 10/cc240addbab3c5fceaa65b2c8d5d4fd77ddbbf472c2f74f0270b9d33263dc9116840b6099c46b64c9680301146250439b044ed79278a1bcc557da412a4e3c1bb + languageName: node + linkType: hard + +"@eslint/js@npm:9.39.1, @eslint/js@npm:^9.39.1": + version: 9.39.1 + resolution: "@eslint/js@npm:9.39.1" + checksum: 10/b10b9b953212c0f3ffca475159bbe519e9e98847200c7432d1637d444fddcd7b712d2b7710a7dc20510f9cfbe8db330039b2aad09cb55d9545b116d940dbeed2 + languageName: node + linkType: hard + +"@eslint/object-schema@npm:^2.1.7": + version: 2.1.7 + resolution: "@eslint/object-schema@npm:2.1.7" + checksum: 10/946ef5d6235b4d1c0907c6c6e6429c8895f535380c562b7705c131f63f2e961b06e8785043c86a293da48e0a60c6286d98ba395b8b32ea55561fe6e4417cb7e4 languageName: node linkType: hard -"@eslint/js@npm:8.57.0": - version: 8.57.0 - resolution: "@eslint/js@npm:8.57.0" - checksum: 10/3c501ce8a997cf6cbbaf4ed358af5492875e3550c19b9621413b82caa9ae5382c584b0efa79835639e6e0ddaa568caf3499318e5bdab68643ef4199dce5eb0a0 +"@eslint/plugin-kit@npm:^0.4.1": + version: 0.4.1 + resolution: "@eslint/plugin-kit@npm:0.4.1" + dependencies: + "@eslint/core": "npm:^0.17.0" + levn: "npm:^0.4.1" + checksum: 10/c5947d0ffeddca77d996ac1b886a66060c1a15ed1d5e425d0c7e7d7044a4bd3813fc968892d03950a7831c9b89368a2f7b281e45dd3c74a048962b74bf3a1cb4 languageName: node linkType: hard @@ -1490,7 +1573,7 @@ __metadata: jest: "npm:^29.7.0" ts-jest: "npm:^29.1.2" ts-node: "npm:^10.9.2" - typescript: "npm:^5.4.2" + typescript: "npm:^5.9.3" languageName: unknown linkType: soft @@ -1504,7 +1587,7 @@ __metadata: "@types/node": "npm:^24.10.1" mocha: "npm:^10.3.0" ts-node: "npm:^10.9.2" - typescript: "npm:^5.4.2" + typescript: "npm:^5.9.3" languageName: unknown linkType: soft @@ -1513,7 +1596,7 @@ __metadata: resolution: "@examples/symbol-plugin@workspace:examples/symbolPlugin" dependencies: "@assertive-ts/core": "workspace:^" - typescript: "npm:^5.4.2" + typescript: "npm:^5.9.3" peerDependencies: "@assertive-ts/core": "*" languageName: unknown @@ -1535,14 +1618,20 @@ __metadata: languageName: node linkType: hard -"@humanwhocodes/config-array@npm:^0.11.14": - version: 0.11.14 - resolution: "@humanwhocodes/config-array@npm:0.11.14" +"@humanfs/core@npm:^0.19.1": + version: 0.19.1 + resolution: "@humanfs/core@npm:0.19.1" + checksum: 10/270d936be483ab5921702623bc74ce394bf12abbf57d9145a69e8a0d1c87eb1c768bd2d93af16c5705041e257e6d9cc7529311f63a1349f3678abc776fc28523 + languageName: node + linkType: hard + +"@humanfs/node@npm:^0.16.6": + version: 0.16.7 + resolution: "@humanfs/node@npm:0.16.7" dependencies: - "@humanwhocodes/object-schema": "npm:^2.0.2" - debug: "npm:^4.3.1" - minimatch: "npm:^3.0.5" - checksum: 10/3ffb24ecdfab64014a230e127118d50a1a04d11080cbb748bc21629393d100850496456bbcb4e8c438957fe0934430d731042f1264d6a167b62d32fc2863580a + "@humanfs/core": "npm:^0.19.1" + "@humanwhocodes/retry": "npm:^0.4.0" + checksum: 10/b3633d3dce898592cac515ba5e6693c78e6be92863541d3eaf2c009b10f52b2fa62ff6e6e06f240f2447ddbe7b5f1890bc34e9308470675c876eee207553a08d languageName: node linkType: hard @@ -1553,10 +1642,10 @@ __metadata: languageName: node linkType: hard -"@humanwhocodes/object-schema@npm:^2.0.2": - version: 2.0.2 - resolution: "@humanwhocodes/object-schema@npm:2.0.2" - checksum: 10/ef915e3e2f34652f3d383b28a9a99cfea476fa991482370889ab14aac8ecd2b38d47cc21932526c6d949da0daf4a4a6bf629d30f41b0caca25e146819cbfa70e +"@humanwhocodes/retry@npm:^0.4.0, @humanwhocodes/retry@npm:^0.4.2": + version: 0.4.3 + resolution: "@humanwhocodes/retry@npm:0.4.3" + checksum: 10/0b32cfd362bea7a30fbf80bb38dcaf77fee9c2cae477ee80b460871d03590110ac9c77d654f04ec5beaf71b6f6a89851bdf6c1e34ccdf2f686bd86fcd97d9e61 languageName: node linkType: hard @@ -1966,6 +2055,17 @@ __metadata: languageName: node linkType: hard +"@napi-rs/wasm-runtime@npm:^0.2.11": + version: 0.2.12 + resolution: "@napi-rs/wasm-runtime@npm:0.2.12" + dependencies: + "@emnapi/core": "npm:^1.4.3" + "@emnapi/runtime": "npm:^1.4.3" + "@tybys/wasm-util": "npm:^0.10.0" + checksum: 10/5fd518182427980c28bc724adf06c5f32f9a8915763ef560b5f7d73607d30cd15ac86d0cbd2eb80d4cfab23fc80d0876d89ca36a9daadcb864bc00917c94187c + languageName: node + linkType: hard + "@nodelib/fs.scandir@npm:2.1.5": version: 2.1.5 resolution: "@nodelib/fs.scandir@npm:2.1.5" @@ -1983,7 +2083,7 @@ __metadata: languageName: node linkType: hard -"@nodelib/fs.walk@npm:^1.2.3, @nodelib/fs.walk@npm:^1.2.8": +"@nodelib/fs.walk@npm:^1.2.3": version: 1.2.8 resolution: "@nodelib/fs.walk@npm:1.2.8" dependencies: @@ -2313,17 +2413,6 @@ __metadata: languageName: node linkType: hard -"@phenomnomnominal/tsquery@npm:^5.0.0": - version: 5.0.1 - resolution: "@phenomnomnominal/tsquery@npm:5.0.1" - dependencies: - esquery: "npm:^1.4.0" - peerDependencies: - typescript: ^3 || ^4 || ^5 - checksum: 10/46ad2081b4c95c9cddf77ba89263b68e3bb0a21c68d1e08220cef9deb0fe1944d19c930d32565e699bb4fd561242c61939d5e4365222f15a9be206e04284d252 - languageName: node - linkType: hard - "@pkgjs/parseargs@npm:^0.11.0": version: 0.11.0 resolution: "@pkgjs/parseargs@npm:0.11.0" @@ -2712,6 +2801,13 @@ __metadata: languageName: node linkType: hard +"@rtsao/scc@npm:^1.1.0": + version: 1.1.0 + resolution: "@rtsao/scc@npm:1.1.0" + checksum: 10/17d04adf404e04c1e61391ed97bca5117d4c2767a76ae3e879390d6dec7b317fcae68afbf9e98badee075d0b64fa60f287729c4942021b4d19cd01db77385c01 + languageName: node + linkType: hard + "@semantic-release/commit-analyzer@npm:^11.0.0": version: 11.1.0 resolution: "@semantic-release/commit-analyzer@npm:11.1.0" @@ -2891,6 +2987,13 @@ __metadata: languageName: node linkType: hard +"@sindresorhus/base62@npm:^1.0.0": + version: 1.0.0 + resolution: "@sindresorhus/base62@npm:1.0.0" + checksum: 10/ba1a1ccfc9de0995f0e4506b8cabff3436fd1a9815f9c1a44f6833694bba6b3db7fa61fa5fc2f63180edda01abf3c26ffd16325be0ab25409f992ba91ea6dcd0 + languageName: node + linkType: hard + "@sindresorhus/is@npm:^4.6.0": version: 4.6.0 resolution: "@sindresorhus/is@npm:4.6.0" @@ -2959,6 +3062,22 @@ __metadata: languageName: node linkType: hard +"@stylistic/eslint-plugin@npm:^5.6.1": + version: 5.6.1 + resolution: "@stylistic/eslint-plugin@npm:5.6.1" + dependencies: + "@eslint-community/eslint-utils": "npm:^4.9.0" + "@typescript-eslint/types": "npm:^8.47.0" + eslint-visitor-keys: "npm:^4.2.1" + espree: "npm:^10.4.0" + estraverse: "npm:^5.3.0" + picomatch: "npm:^4.0.3" + peerDependencies: + eslint: ">=9.0.0" + checksum: 10/1d6a11f98f14fbb20e09c3b6a7fc6cdd2aeceb02ed7cd62becb4fc21a520d314ea45ebf979e9c1e792ca386da282aca2d7a3b991b200d3050f0236735b8f882a + languageName: node + linkType: hard + "@testing-library/dom@npm:^10.1.0": version: 10.1.0 resolution: "@testing-library/dom@npm:10.1.0" @@ -3059,6 +3178,15 @@ __metadata: languageName: node linkType: hard +"@tybys/wasm-util@npm:^0.10.0": + version: 0.10.1 + resolution: "@tybys/wasm-util@npm:0.10.1" + dependencies: + tslib: "npm:^2.4.0" + checksum: 10/7fe0d239397aebb002ac4855d30c197c06a05ea8df8511350a3a5b1abeefe26167c60eda8a5508337571161e4c4b53d7c1342296123f9607af8705369de9fa7f + languageName: node + linkType: hard + "@types/aria-query@npm:^5.0.1": version: 5.0.4 resolution: "@types/aria-query@npm:5.0.4" @@ -3107,6 +3235,13 @@ __metadata: languageName: node linkType: hard +"@types/estree@npm:^1.0.6, @types/estree@npm:^1.0.8": + version: 1.0.8 + resolution: "@types/estree@npm:1.0.8" + checksum: 10/25a4c16a6752538ffde2826c2cc0c6491d90e69cd6187bef4a006dd2c3c45469f049e643d7e516c515f21484dc3d48fd5c870be158a5beb72f5baf3dc43e4099 + languageName: node + linkType: hard + "@types/graceful-fs@npm:^4.1.3": version: 4.1.9 resolution: "@types/graceful-fs@npm:4.1.9" @@ -3171,7 +3306,7 @@ __metadata: languageName: node linkType: hard -"@types/json-schema@npm:^7.0.12, @types/json-schema@npm:^7.0.9": +"@types/json-schema@npm:^7.0.15": version: 7.0.15 resolution: "@types/json-schema@npm:7.0.15" checksum: 10/1a3c3e06236e4c4aab89499c428d585527ce50c24fe8259e8b3926d3df4cfbbbcf306cfc73ddfb66cbafc973116efd15967020b0f738f63e09e64c7d260519e7 @@ -3262,13 +3397,6 @@ __metadata: languageName: node linkType: hard -"@types/semver@npm:^7.3.12, @types/semver@npm:^7.5.0": - version: 7.5.7 - resolution: "@types/semver@npm:7.5.7" - checksum: 10/535d88ec577fe59e38211881f79a1e2ba391e9e1516f8fff74e7196a5ba54315bace9c67a4616c334c830c89027d70a9f473a4ceb634526086a9da39180f2f9a - languageName: node - linkType: hard - "@types/sinon@npm:^17.0.3": version: 17.0.3 resolution: "@types/sinon@npm:17.0.3" @@ -3315,7 +3443,7 @@ __metadata: languageName: node linkType: hard -"@types/yargs@npm:^17.0.0, @types/yargs@npm:^17.0.8": +"@types/yargs@npm:^17.0.8": version: 17.0.32 resolution: "@types/yargs@npm:17.0.32" dependencies: @@ -3324,207 +3452,275 @@ __metadata: languageName: node linkType: hard -"@typescript-eslint/eslint-plugin@npm:^7.3.0": - version: 7.3.0 - resolution: "@typescript-eslint/eslint-plugin@npm:7.3.0" +"@typescript-eslint/eslint-plugin@npm:8.47.0": + version: 8.47.0 + resolution: "@typescript-eslint/eslint-plugin@npm:8.47.0" dependencies: - "@eslint-community/regexpp": "npm:^4.5.1" - "@typescript-eslint/scope-manager": "npm:7.3.0" - "@typescript-eslint/type-utils": "npm:7.3.0" - "@typescript-eslint/utils": "npm:7.3.0" - "@typescript-eslint/visitor-keys": "npm:7.3.0" - debug: "npm:^4.3.4" + "@eslint-community/regexpp": "npm:^4.10.0" + "@typescript-eslint/scope-manager": "npm:8.47.0" + "@typescript-eslint/type-utils": "npm:8.47.0" + "@typescript-eslint/utils": "npm:8.47.0" + "@typescript-eslint/visitor-keys": "npm:8.47.0" graphemer: "npm:^1.4.0" - ignore: "npm:^5.2.4" + ignore: "npm:^7.0.0" natural-compare: "npm:^1.4.0" - semver: "npm:^7.5.4" - ts-api-utils: "npm:^1.0.1" + ts-api-utils: "npm:^2.1.0" peerDependencies: - "@typescript-eslint/parser": ^7.0.0 - eslint: ^8.56.0 - peerDependenciesMeta: - typescript: - optional: true - checksum: 10/6728d30193446f1477c3b566fb33b762c95e531b385f1aeb4d5a28b488278e7a66e1efaa7de8ffea75eb470a99c78c9ffe022067b043bd4e3c936dd26d59df0b + "@typescript-eslint/parser": ^8.47.0 + eslint: ^8.57.0 || ^9.0.0 + typescript: ">=4.8.4 <6.0.0" + checksum: 10/53d86116a39429c0cdde5969f9ea2cf712f7c7cb2ed023088a876686a4771df131dbefda7645ba0724e2a5a0532e14bdffcb92c708060a46a8607dc5243083d1 languageName: node linkType: hard -"@typescript-eslint/experimental-utils@npm:^5.0.0": - version: 5.62.0 - resolution: "@typescript-eslint/experimental-utils@npm:5.62.0" +"@typescript-eslint/parser@npm:8.47.0": + version: 8.47.0 + resolution: "@typescript-eslint/parser@npm:8.47.0" dependencies: - "@typescript-eslint/utils": "npm:5.62.0" + "@typescript-eslint/scope-manager": "npm:8.47.0" + "@typescript-eslint/types": "npm:8.47.0" + "@typescript-eslint/typescript-estree": "npm:8.47.0" + "@typescript-eslint/visitor-keys": "npm:8.47.0" + debug: "npm:^4.3.4" peerDependencies: - eslint: ^6.0.0 || ^7.0.0 || ^8.0.0 - checksum: 10/ce55d9f74eac5cb94d66d5db9ead9a5d734f4301519fb5956a57f4b405a5318a115b0316195a3c039e0111489138680411709cb769085d71e1e1db1376ea0949 + eslint: ^8.57.0 || ^9.0.0 + typescript: ">=4.8.4 <6.0.0" + checksum: 10/e7213296a27b78511b8c9b2627ff6530d0eb31e6b076eef6f34f11ca7fbcb7e998a2fa079bfc1563a53f9d88326aa4af995241bcdf08a15c3e5be0d13fdff2d7 languageName: node linkType: hard -"@typescript-eslint/parser@npm:^7.3.0": - version: 7.3.0 - resolution: "@typescript-eslint/parser@npm:7.3.0" +"@typescript-eslint/project-service@npm:8.47.0": + version: 8.47.0 + resolution: "@typescript-eslint/project-service@npm:8.47.0" dependencies: - "@typescript-eslint/scope-manager": "npm:7.3.0" - "@typescript-eslint/types": "npm:7.3.0" - "@typescript-eslint/typescript-estree": "npm:7.3.0" - "@typescript-eslint/visitor-keys": "npm:7.3.0" + "@typescript-eslint/tsconfig-utils": "npm:^8.47.0" + "@typescript-eslint/types": "npm:^8.47.0" debug: "npm:^4.3.4" peerDependencies: - eslint: ^8.56.0 - peerDependenciesMeta: - typescript: - optional: true - checksum: 10/df06a4e8d734951bb6843797f04e315122be071bbc5cc7939c9a0e61480fa3045e363db8862cdc81ebf04abd594cc1cedf625ba33fc62918319c4bd2ba7fb5fc + typescript: ">=4.8.4 <6.0.0" + checksum: 10/e2f935dae66ce27e6c0cce8b750da0e8fe84b6e0fa248bf8210b84eec3c4d2e2679a878185f445ce507d132215a676dcf8a21d47ab70c547da47ede000a128e1 languageName: node linkType: hard -"@typescript-eslint/scope-manager@npm:5.62.0": - version: 5.62.0 - resolution: "@typescript-eslint/scope-manager@npm:5.62.0" +"@typescript-eslint/scope-manager@npm:8.47.0": + version: 8.47.0 + resolution: "@typescript-eslint/scope-manager@npm:8.47.0" dependencies: - "@typescript-eslint/types": "npm:5.62.0" - "@typescript-eslint/visitor-keys": "npm:5.62.0" - checksum: 10/e827770baa202223bc0387e2fd24f630690809e460435b7dc9af336c77322290a770d62bd5284260fa881c86074d6a9fd6c97b07382520b115f6786b8ed499da + "@typescript-eslint/types": "npm:8.47.0" + "@typescript-eslint/visitor-keys": "npm:8.47.0" + checksum: 10/e97ae0f746f6bb5706181a973bcc0c1268706ef7e8c18594b37168bb0b41b1673d3f0ba1a2575ee3bd121066500fdc75af313f6ad283198942a5cdb65ade7621 languageName: node linkType: hard -"@typescript-eslint/scope-manager@npm:7.3.0": - version: 7.3.0 - resolution: "@typescript-eslint/scope-manager@npm:7.3.0" - dependencies: - "@typescript-eslint/types": "npm:7.3.0" - "@typescript-eslint/visitor-keys": "npm:7.3.0" - checksum: 10/380ac558032f396dd7cf8a38d91a462358bef559cb2d6fcbe6a15faf846923ec31e46054d48e18def609e7c955d14ca67790d578e7a08511815b876b4497d8ac +"@typescript-eslint/tsconfig-utils@npm:8.47.0, @typescript-eslint/tsconfig-utils@npm:^8.47.0": + version: 8.47.0 + resolution: "@typescript-eslint/tsconfig-utils@npm:8.47.0" + peerDependencies: + typescript: ">=4.8.4 <6.0.0" + checksum: 10/7f44441da3778928937419f8ebc62939538cf30087e56c0ca56f599ce98111b82f496902a9e15d713822b9cd14b17937d57b722468450a48748f8e50fd7161af languageName: node linkType: hard -"@typescript-eslint/type-utils@npm:7.3.0": - version: 7.3.0 - resolution: "@typescript-eslint/type-utils@npm:7.3.0" +"@typescript-eslint/type-utils@npm:8.47.0": + version: 8.47.0 + resolution: "@typescript-eslint/type-utils@npm:8.47.0" dependencies: - "@typescript-eslint/typescript-estree": "npm:7.3.0" - "@typescript-eslint/utils": "npm:7.3.0" + "@typescript-eslint/types": "npm:8.47.0" + "@typescript-eslint/typescript-estree": "npm:8.47.0" + "@typescript-eslint/utils": "npm:8.47.0" debug: "npm:^4.3.4" - ts-api-utils: "npm:^1.0.1" + ts-api-utils: "npm:^2.1.0" peerDependencies: - eslint: ^8.56.0 - peerDependenciesMeta: - typescript: - optional: true - checksum: 10/361ac197924ebc0d8530e786b1573c557589d264d3988dbe25d301d71470bcf0168e694ab31dc8b8c7385c54b178e0005e4e7b17fa2a7e617a58a363ec3d84af - languageName: node - linkType: hard - -"@typescript-eslint/types@npm:5.62.0": - version: 5.62.0 - resolution: "@typescript-eslint/types@npm:5.62.0" - checksum: 10/24e8443177be84823242d6729d56af2c4b47bfc664dd411a1d730506abf2150d6c31bdefbbc6d97c8f91043e3a50e0c698239dcb145b79bb6b0c34469aaf6c45 + eslint: ^8.57.0 || ^9.0.0 + typescript: ">=4.8.4 <6.0.0" + checksum: 10/07dcdd1ac071bbaf87b6b320d107129787a62cc403ce78e081cbe5e2ed0c576d660654e4117e6224c4c23d46919d7130b70801835d2fc41d9344c47ff946ce81 languageName: node linkType: hard -"@typescript-eslint/types@npm:7.3.0": - version: 7.3.0 - resolution: "@typescript-eslint/types@npm:7.3.0" - checksum: 10/7e190be9e051268f582b1ad6482adc60c1d55aef59c9ed7d962df7dfb114f41ff0b95b984cf91a295cdac6b8f530f70f5768e926eeb606801d6f2ec3f772427b +"@typescript-eslint/types@npm:8.47.0, @typescript-eslint/types@npm:^8.38.0, @typescript-eslint/types@npm:^8.46.0, @typescript-eslint/types@npm:^8.47.0": + version: 8.47.0 + resolution: "@typescript-eslint/types@npm:8.47.0" + checksum: 10/fc42416c01c512cfe1533bdf521925bca999adc68ffefa246e48552783f1fe9d22487d912611c5cb35fca481604aae3cab88279a53ce76c7cd7510b76775c078 languageName: node linkType: hard -"@typescript-eslint/typescript-estree@npm:5.62.0": - version: 5.62.0 - resolution: "@typescript-eslint/typescript-estree@npm:5.62.0" +"@typescript-eslint/typescript-estree@npm:8.47.0": + version: 8.47.0 + resolution: "@typescript-eslint/typescript-estree@npm:8.47.0" dependencies: - "@typescript-eslint/types": "npm:5.62.0" - "@typescript-eslint/visitor-keys": "npm:5.62.0" + "@typescript-eslint/project-service": "npm:8.47.0" + "@typescript-eslint/tsconfig-utils": "npm:8.47.0" + "@typescript-eslint/types": "npm:8.47.0" + "@typescript-eslint/visitor-keys": "npm:8.47.0" debug: "npm:^4.3.4" - globby: "npm:^11.1.0" + fast-glob: "npm:^3.3.2" is-glob: "npm:^4.0.3" - semver: "npm:^7.3.7" - tsutils: "npm:^3.21.0" - peerDependenciesMeta: - typescript: - optional: true - checksum: 10/06c975eb5f44b43bd19fadc2e1023c50cf87038fe4c0dd989d4331c67b3ff509b17fa60a3251896668ab4d7322bdc56162a9926971218d2e1a1874d2bef9a52e + minimatch: "npm:^9.0.4" + semver: "npm:^7.6.0" + ts-api-utils: "npm:^2.1.0" + peerDependencies: + typescript: ">=4.8.4 <6.0.0" + checksum: 10/a480e83f1fca8a389642cbb18855ef25214c4765694b1d4a74051d2653a4fbbbf3a3cc4e544d1ecb79d49958fbf819246043c0d823d4384aa1c7b5ff79d02fcc languageName: node linkType: hard -"@typescript-eslint/typescript-estree@npm:7.3.0": - version: 7.3.0 - resolution: "@typescript-eslint/typescript-estree@npm:7.3.0" +"@typescript-eslint/utils@npm:8.47.0, @typescript-eslint/utils@npm:^8.38.0": + version: 8.47.0 + resolution: "@typescript-eslint/utils@npm:8.47.0" dependencies: - "@typescript-eslint/types": "npm:7.3.0" - "@typescript-eslint/visitor-keys": "npm:7.3.0" - debug: "npm:^4.3.4" - globby: "npm:^11.1.0" - is-glob: "npm:^4.0.3" - minimatch: "npm:9.0.3" - semver: "npm:^7.5.4" - ts-api-utils: "npm:^1.0.1" - peerDependenciesMeta: - typescript: - optional: true - checksum: 10/af3bf304401b184cd56d72aa95cc4f924ae33ae35206fa848c1ea3a2c647b03e05e8b19f42c14c5fdd67d4a47f4e9fcbc34c9b566d2fe3f93a7fd297c6241bbb + "@eslint-community/eslint-utils": "npm:^4.7.0" + "@typescript-eslint/scope-manager": "npm:8.47.0" + "@typescript-eslint/types": "npm:8.47.0" + "@typescript-eslint/typescript-estree": "npm:8.47.0" + peerDependencies: + eslint: ^8.57.0 || ^9.0.0 + typescript: ">=4.8.4 <6.0.0" + checksum: 10/e165bbcaaafb88761f12272bc4b3be1631d8a8ea319765c80cfe5bf7a5858f437486eeae177643baa213570a664f0254b41bf0541e9238b57080bb30d1a2c8ab languageName: node linkType: hard -"@typescript-eslint/utils@npm:5.62.0": - version: 5.62.0 - resolution: "@typescript-eslint/utils@npm:5.62.0" +"@typescript-eslint/visitor-keys@npm:8.47.0": + version: 8.47.0 + resolution: "@typescript-eslint/visitor-keys@npm:8.47.0" dependencies: - "@eslint-community/eslint-utils": "npm:^4.2.0" - "@types/json-schema": "npm:^7.0.9" - "@types/semver": "npm:^7.3.12" - "@typescript-eslint/scope-manager": "npm:5.62.0" - "@typescript-eslint/types": "npm:5.62.0" - "@typescript-eslint/typescript-estree": "npm:5.62.0" - eslint-scope: "npm:^5.1.1" - semver: "npm:^7.3.7" - peerDependencies: - eslint: ^6.0.0 || ^7.0.0 || ^8.0.0 - checksum: 10/15ef13e43998a082b15f85db979f8d3ceb1f9ce4467b8016c267b1738d5e7cdb12aa90faf4b4e6dd6486c236cf9d33c463200465cf25ff997dbc0f12358550a1 + "@typescript-eslint/types": "npm:8.47.0" + eslint-visitor-keys: "npm:^4.2.1" + checksum: 10/1e184cdebc4ab15da8a46ae2624ba4543c6bea83ced80a1602da99b72c00b5f6ea913ae021823c555a35a65bb9a9df09d119713998c44b00eba25e1407844294 languageName: node linkType: hard -"@typescript-eslint/utils@npm:7.3.0": - version: 7.3.0 - resolution: "@typescript-eslint/utils@npm:7.3.0" - dependencies: - "@eslint-community/eslint-utils": "npm:^4.4.0" - "@types/json-schema": "npm:^7.0.12" - "@types/semver": "npm:^7.5.0" - "@typescript-eslint/scope-manager": "npm:7.3.0" - "@typescript-eslint/types": "npm:7.3.0" - "@typescript-eslint/typescript-estree": "npm:7.3.0" - semver: "npm:^7.5.4" - peerDependencies: - eslint: ^8.56.0 - checksum: 10/349b353fdf03ed8f627287136b0cbc1fe40c670e6bd59099a6cc8ea1e37f2cc12a4d0cdf84e3a635a4f44bab92bd9d84b2c4d16525130b34cc27484177ce19b8 +"@unrs/resolver-binding-android-arm-eabi@npm:1.11.1": + version: 1.11.1 + resolution: "@unrs/resolver-binding-android-arm-eabi@npm:1.11.1" + conditions: os=android & cpu=arm languageName: node linkType: hard -"@typescript-eslint/visitor-keys@npm:5.62.0": - version: 5.62.0 - resolution: "@typescript-eslint/visitor-keys@npm:5.62.0" - dependencies: - "@typescript-eslint/types": "npm:5.62.0" - eslint-visitor-keys: "npm:^3.3.0" - checksum: 10/dc613ab7569df9bbe0b2ca677635eb91839dfb2ca2c6fa47870a5da4f160db0b436f7ec0764362e756d4164e9445d49d5eb1ff0b87f4c058946ae9d8c92eb388 +"@unrs/resolver-binding-android-arm64@npm:1.11.1": + version: 1.11.1 + resolution: "@unrs/resolver-binding-android-arm64@npm:1.11.1" + conditions: os=android & cpu=arm64 + languageName: node + linkType: hard + +"@unrs/resolver-binding-darwin-arm64@npm:1.11.1": + version: 1.11.1 + resolution: "@unrs/resolver-binding-darwin-arm64@npm:1.11.1" + conditions: os=darwin & cpu=arm64 + languageName: node + linkType: hard + +"@unrs/resolver-binding-darwin-x64@npm:1.11.1": + version: 1.11.1 + resolution: "@unrs/resolver-binding-darwin-x64@npm:1.11.1" + conditions: os=darwin & cpu=x64 + languageName: node + linkType: hard + +"@unrs/resolver-binding-freebsd-x64@npm:1.11.1": + version: 1.11.1 + resolution: "@unrs/resolver-binding-freebsd-x64@npm:1.11.1" + conditions: os=freebsd & cpu=x64 + languageName: node + linkType: hard + +"@unrs/resolver-binding-linux-arm-gnueabihf@npm:1.11.1": + version: 1.11.1 + resolution: "@unrs/resolver-binding-linux-arm-gnueabihf@npm:1.11.1" + conditions: os=linux & cpu=arm + languageName: node + linkType: hard + +"@unrs/resolver-binding-linux-arm-musleabihf@npm:1.11.1": + version: 1.11.1 + resolution: "@unrs/resolver-binding-linux-arm-musleabihf@npm:1.11.1" + conditions: os=linux & cpu=arm + languageName: node + linkType: hard + +"@unrs/resolver-binding-linux-arm64-gnu@npm:1.11.1": + version: 1.11.1 + resolution: "@unrs/resolver-binding-linux-arm64-gnu@npm:1.11.1" + conditions: os=linux & cpu=arm64 & libc=glibc + languageName: node + linkType: hard + +"@unrs/resolver-binding-linux-arm64-musl@npm:1.11.1": + version: 1.11.1 + resolution: "@unrs/resolver-binding-linux-arm64-musl@npm:1.11.1" + conditions: os=linux & cpu=arm64 & libc=musl + languageName: node + linkType: hard + +"@unrs/resolver-binding-linux-ppc64-gnu@npm:1.11.1": + version: 1.11.1 + resolution: "@unrs/resolver-binding-linux-ppc64-gnu@npm:1.11.1" + conditions: os=linux & cpu=ppc64 & libc=glibc + languageName: node + linkType: hard + +"@unrs/resolver-binding-linux-riscv64-gnu@npm:1.11.1": + version: 1.11.1 + resolution: "@unrs/resolver-binding-linux-riscv64-gnu@npm:1.11.1" + conditions: os=linux & cpu=riscv64 & libc=glibc + languageName: node + linkType: hard + +"@unrs/resolver-binding-linux-riscv64-musl@npm:1.11.1": + version: 1.11.1 + resolution: "@unrs/resolver-binding-linux-riscv64-musl@npm:1.11.1" + conditions: os=linux & cpu=riscv64 & libc=musl + languageName: node + linkType: hard + +"@unrs/resolver-binding-linux-s390x-gnu@npm:1.11.1": + version: 1.11.1 + resolution: "@unrs/resolver-binding-linux-s390x-gnu@npm:1.11.1" + conditions: os=linux & cpu=s390x & libc=glibc + languageName: node + linkType: hard + +"@unrs/resolver-binding-linux-x64-gnu@npm:1.11.1": + version: 1.11.1 + resolution: "@unrs/resolver-binding-linux-x64-gnu@npm:1.11.1" + conditions: os=linux & cpu=x64 & libc=glibc + languageName: node + linkType: hard + +"@unrs/resolver-binding-linux-x64-musl@npm:1.11.1": + version: 1.11.1 + resolution: "@unrs/resolver-binding-linux-x64-musl@npm:1.11.1" + conditions: os=linux & cpu=x64 & libc=musl languageName: node linkType: hard -"@typescript-eslint/visitor-keys@npm:7.3.0": - version: 7.3.0 - resolution: "@typescript-eslint/visitor-keys@npm:7.3.0" +"@unrs/resolver-binding-wasm32-wasi@npm:1.11.1": + version: 1.11.1 + resolution: "@unrs/resolver-binding-wasm32-wasi@npm:1.11.1" dependencies: - "@typescript-eslint/types": "npm:7.3.0" - eslint-visitor-keys: "npm:^3.4.1" - checksum: 10/814d52a33eefddd32d522c9f8f3f9e163efb642e1fef5c57981bbf51382c5081451d01050e1a00d20cfbf60bfd8274a1eee4f393dbd3ec69dc5a9d36fea89269 + "@napi-rs/wasm-runtime": "npm:^0.2.11" + conditions: cpu=wasm32 languageName: node linkType: hard -"@ungap/structured-clone@npm:^1.2.0": - version: 1.2.0 - resolution: "@ungap/structured-clone@npm:1.2.0" - checksum: 10/c6fe89a505e513a7592e1438280db1c075764793a2397877ff1351721fe8792a966a5359769e30242b3cd023f2efb9e63ca2ca88019d73b564488cc20e3eab12 +"@unrs/resolver-binding-win32-arm64-msvc@npm:1.11.1": + version: 1.11.1 + resolution: "@unrs/resolver-binding-win32-arm64-msvc@npm:1.11.1" + conditions: os=win32 & cpu=arm64 + languageName: node + linkType: hard + +"@unrs/resolver-binding-win32-ia32-msvc@npm:1.11.1": + version: 1.11.1 + resolution: "@unrs/resolver-binding-win32-ia32-msvc@npm:1.11.1" + conditions: os=win32 & cpu=ia32 + languageName: node + linkType: hard + +"@unrs/resolver-binding-win32-x64-msvc@npm:1.11.1": + version: 1.11.1 + resolution: "@unrs/resolver-binding-win32-x64-msvc@npm:1.11.1" + conditions: os=win32 & cpu=x64 languageName: node linkType: hard @@ -3582,7 +3778,16 @@ __metadata: languageName: node linkType: hard -"acorn@npm:^8.4.1, acorn@npm:^8.9.0": +"acorn@npm:^8.15.0": + version: 8.15.0 + resolution: "acorn@npm:8.15.0" + bin: + acorn: bin/acorn + checksum: 10/77f2de5051a631cf1729c090e5759148459cdb76b5f5c70f890503d629cf5052357b0ce783c0f976dd8a93c5150f59f6d18df1def3f502396a20f81282482fa4 + languageName: node + linkType: hard + +"acorn@npm:^8.4.1": version: 8.11.3 resolution: "acorn@npm:8.11.3" bin: @@ -3859,13 +4064,13 @@ __metadata: languageName: node linkType: hard -"array-buffer-byte-length@npm:^1.0.1": - version: 1.0.1 - resolution: "array-buffer-byte-length@npm:1.0.1" +"array-buffer-byte-length@npm:^1.0.1, array-buffer-byte-length@npm:^1.0.2": + version: 1.0.2 + resolution: "array-buffer-byte-length@npm:1.0.2" dependencies: - call-bind: "npm:^1.0.5" - is-array-buffer: "npm:^3.0.4" - checksum: 10/53524e08f40867f6a9f35318fafe467c32e45e9c682ba67b11943e167344d2febc0f6977a17e699b05699e805c3e8f073d876f8bbf1b559ed494ad2cd0fae09e + call-bound: "npm:^1.0.3" + is-array-buffer: "npm:^3.0.5" + checksum: 10/0ae3786195c3211b423e5be8dd93357870e6fb66357d81da968c2c39ef43583ef6eece1f9cb1caccdae4806739c65dea832b44b8593414313cd76a89795fca63 languageName: node linkType: hard @@ -3876,50 +4081,19 @@ __metadata: languageName: node linkType: hard -"array-includes@npm:^3.1.6, array-includes@npm:^3.1.8": - version: 3.1.8 - resolution: "array-includes@npm:3.1.8" +"array-includes@npm:^3.1.6, array-includes@npm:^3.1.8, array-includes@npm:^3.1.9": + version: 3.1.9 + resolution: "array-includes@npm:3.1.9" dependencies: - call-bind: "npm:^1.0.7" + call-bind: "npm:^1.0.8" + call-bound: "npm:^1.0.4" define-properties: "npm:^1.2.1" - es-abstract: "npm:^1.23.2" - es-object-atoms: "npm:^1.0.0" - get-intrinsic: "npm:^1.2.4" - is-string: "npm:^1.0.7" - checksum: 10/290b206c9451f181fb2b1f79a3bf1c0b66bb259791290ffbada760c79b284eef6f5ae2aeb4bcff450ebc9690edd25732c4c73a3c2b340fcc0f4563aed83bf488 - languageName: node - linkType: hard - -"array-includes@npm:^3.1.7": - version: 3.1.7 - resolution: "array-includes@npm:3.1.7" - dependencies: - call-bind: "npm:^1.0.2" - define-properties: "npm:^1.2.0" - es-abstract: "npm:^1.22.1" - get-intrinsic: "npm:^1.2.1" - is-string: "npm:^1.0.7" - checksum: 10/856a8be5d118967665936ad33ff3b07adfc50b06753e596e91fb80c3da9b8c022e92e3cc6781156d6ad95db7109b9f603682c7df2d6a529ed01f7f6b39a4a360 - languageName: node - linkType: hard - -"array-union@npm:^2.1.0": - version: 2.1.0 - resolution: "array-union@npm:2.1.0" - checksum: 10/5bee12395cba82da674931df6d0fea23c4aa4660cb3b338ced9f828782a65caa232573e6bf3968f23e0c5eb301764a382cef2f128b170a9dc59de0e36c39f98d - languageName: node - linkType: hard - -"array.prototype.filter@npm:^1.0.3": - version: 1.0.3 - resolution: "array.prototype.filter@npm:1.0.3" - dependencies: - call-bind: "npm:^1.0.2" - define-properties: "npm:^1.2.0" - es-abstract: "npm:^1.22.1" - es-array-method-boxes-properly: "npm:^1.0.0" - is-string: "npm:^1.0.7" - checksum: 10/3da2189afb00f95559cc73fc3c50f17a071a65bb705c0b2f2e2a2b2142781215b622442368c8b4387389b6ab251adf09ad347f9a8a4cf29d24404cc5ea1e295c + es-abstract: "npm:^1.24.0" + es-object-atoms: "npm:^1.1.1" + get-intrinsic: "npm:^1.3.0" + is-string: "npm:^1.1.1" + math-intrinsics: "npm:^1.1.0" + checksum: 10/8bfe9a58df74f326b4a76b04ee05c13d871759e888b4ee8f013145297cf5eb3c02cfa216067ebdaac5d74eb9763ac5cad77cdf2773b8ab475833701e032173aa languageName: node linkType: hard @@ -3937,40 +4111,42 @@ __metadata: languageName: node linkType: hard -"array.prototype.findlastindex@npm:^1.2.3": - version: 1.2.4 - resolution: "array.prototype.findlastindex@npm:1.2.4" +"array.prototype.findlastindex@npm:^1.2.6": + version: 1.2.6 + resolution: "array.prototype.findlastindex@npm:1.2.6" dependencies: - call-bind: "npm:^1.0.5" + call-bind: "npm:^1.0.8" + call-bound: "npm:^1.0.4" define-properties: "npm:^1.2.1" - es-abstract: "npm:^1.22.3" + es-abstract: "npm:^1.23.9" es-errors: "npm:^1.3.0" - es-shim-unscopables: "npm:^1.0.2" - checksum: 10/12d7de8da619065b9d4c40550d11c13f2fbbc863c4270ef01d022f49ef16fbe9022441ee9d60b1e952853c661dd4b3e05c21e4348d4631c6d93ddf802a252296 + es-object-atoms: "npm:^1.1.1" + es-shim-unscopables: "npm:^1.1.0" + checksum: 10/5ddb6420e820bef6ddfdcc08ce780d0fd5e627e97457919c27e32359916de5a11ce12f7c55073555e503856618eaaa70845d6ca11dcba724766f38eb1c22f7a2 languageName: node linkType: hard -"array.prototype.flat@npm:^1.3.1, array.prototype.flat@npm:^1.3.2": - version: 1.3.2 - resolution: "array.prototype.flat@npm:1.3.2" +"array.prototype.flat@npm:^1.3.1, array.prototype.flat@npm:^1.3.3": + version: 1.3.3 + resolution: "array.prototype.flat@npm:1.3.3" dependencies: - call-bind: "npm:^1.0.2" - define-properties: "npm:^1.2.0" - es-abstract: "npm:^1.22.1" - es-shim-unscopables: "npm:^1.0.0" - checksum: 10/d9d2f6f27584de92ec7995bc931103e6de722cd2498bdbfc4cba814fc3e52f056050a93be883018811f7c0a35875f5056584a0e940603a5e5934f0279896aebe + call-bind: "npm:^1.0.8" + define-properties: "npm:^1.2.1" + es-abstract: "npm:^1.23.5" + es-shim-unscopables: "npm:^1.0.2" + checksum: 10/f9b992fa0775d8f7c97abc91eb7f7b2f0ed8430dd9aeb9fdc2967ac4760cdd7fc2ef7ead6528fef40c7261e4d790e117808ce0d3e7e89e91514d4963a531cd01 languageName: node linkType: hard -"array.prototype.flatmap@npm:^1.3.2": - version: 1.3.2 - resolution: "array.prototype.flatmap@npm:1.3.2" +"array.prototype.flatmap@npm:^1.3.3": + version: 1.3.3 + resolution: "array.prototype.flatmap@npm:1.3.3" dependencies: - call-bind: "npm:^1.0.2" - define-properties: "npm:^1.2.0" - es-abstract: "npm:^1.22.1" - es-shim-unscopables: "npm:^1.0.0" - checksum: 10/33f20006686e0cbe844fde7fd290971e8366c6c5e3380681c2df15738b1df766dd02c7784034aeeb3b037f65c496ee54de665388288edb323a2008bb550f77ea + call-bind: "npm:^1.0.8" + define-properties: "npm:^1.2.1" + es-abstract: "npm:^1.23.5" + es-shim-unscopables: "npm:^1.0.2" + checksum: 10/473534573aa4b37b1d80705d0ce642f5933cccf5617c9f3e8a56686e9815ba93d469138e86a1f25d2fe8af999c3d24f54d703ec1fc2db2e6778d46d0f4ac951e languageName: node linkType: hard @@ -3987,19 +4163,18 @@ __metadata: languageName: node linkType: hard -"arraybuffer.prototype.slice@npm:^1.0.3": - version: 1.0.3 - resolution: "arraybuffer.prototype.slice@npm:1.0.3" +"arraybuffer.prototype.slice@npm:^1.0.4": + version: 1.0.4 + resolution: "arraybuffer.prototype.slice@npm:1.0.4" dependencies: array-buffer-byte-length: "npm:^1.0.1" - call-bind: "npm:^1.0.5" + call-bind: "npm:^1.0.8" define-properties: "npm:^1.2.1" - es-abstract: "npm:^1.22.3" - es-errors: "npm:^1.2.1" - get-intrinsic: "npm:^1.2.3" + es-abstract: "npm:^1.23.5" + es-errors: "npm:^1.3.0" + get-intrinsic: "npm:^1.2.6" is-array-buffer: "npm:^3.0.4" - is-shared-array-buffer: "npm:^1.0.2" - checksum: 10/0221f16c1e3ec7b67da870ee0e1f12b825b5f9189835392b59a22990f715827561a4f4cd5330dc7507de272d8df821be6cd4b0cb569babf5ea4be70e365a2f3d + checksum: 10/4821ebdfe7d699f910c7f09bc9fa996f09b96b80bccb4f5dd4b59deae582f6ad6e505ecef6376f8beac1eda06df2dbc89b70e82835d104d6fcabd33c1aed1ae9 languageName: node linkType: hard @@ -4014,19 +4189,20 @@ __metadata: version: 0.0.0-use.local resolution: "assertive-ts@workspace:." dependencies: - "@typescript-eslint/eslint-plugin": "npm:^7.3.0" - "@typescript-eslint/parser": "npm:^7.3.0" - eslint: "npm:^8.57.0" - eslint-import-resolver-typescript: "npm:^3.6.1" - eslint-plugin-etc: "npm:^2.0.3" - eslint-plugin-import: "npm:^2.29.1" - eslint-plugin-jsdoc: "npm:^48.2.1" - eslint-plugin-react: "npm:^7.34.1" - eslint-plugin-react-hooks: "npm:^4.6.0" - eslint-plugin-sonarjs: "npm:^0.24.0" + "@eslint/js": "npm:^9.39.1" + "@stylistic/eslint-plugin": "npm:^5.6.1" + eslint: "npm:^9.39.1" + eslint-import-resolver-typescript: "npm:^4.4.4" + eslint-plugin-import: "npm:^2.32.0" + eslint-plugin-jsdoc: "npm:^61.2.1" + eslint-plugin-perfectionist: "npm:^4.15.1" + eslint-plugin-react: "npm:^7.37.5" + eslint-plugin-sonarjs: "npm:^3.0.5" + globals: "npm:^16.5.0" rimraf: "npm:^6.1.2" turbo: "npm:^1.12.4" - typescript: "npm:^5.4.2" + typescript: "npm:^5.9.3" + typescript-eslint: "npm:^8.47.0" languageName: unknown linkType: soft @@ -4046,6 +4222,20 @@ __metadata: languageName: node linkType: hard +"async-function@npm:^1.0.0": + version: 1.0.0 + resolution: "async-function@npm:1.0.0" + checksum: 10/1a09379937d846f0ce7614e75071c12826945d4e417db634156bf0e4673c495989302f52186dfa9767a1d9181794554717badd193ca2bbab046ef1da741d8efd + languageName: node + linkType: hard + +"async-generator-function@npm:^1.0.0": + version: 1.0.0 + resolution: "async-generator-function@npm:1.0.0" + checksum: 10/3d49e7acbeee9e84537f4cb0e0f91893df8eba976759875ae8ee9e3d3c82f6ecdebdb347c2fad9926b92596d93cdfc78ecc988bcdf407e40433e8e8e6fe5d78e + languageName: node + linkType: hard + "async-limiter@npm:~1.0.0": version: 1.0.1 resolution: "async-limiter@npm:1.0.1" @@ -4067,13 +4257,6 @@ __metadata: languageName: node linkType: hard -"available-typed-arrays@npm:^1.0.6": - version: 1.0.6 - resolution: "available-typed-arrays@npm:1.0.6" - checksum: 10/c1e2e3d3a694f21bf60e0a048d8275fa7358131a0b8e6b57714318d618b59522416db67fb9f56973af0ce596f4333ef1336ca12c37a41d5a72ef79885373a7fd - languageName: node - linkType: hard - "available-typed-arrays@npm:^1.0.7": version: 1.0.7 resolution: "available-typed-arrays@npm:1.0.7" @@ -4378,7 +4561,7 @@ __metadata: languageName: node linkType: hard -"builtin-modules@npm:^3.3.0": +"builtin-modules@npm:3.3.0": version: 3.3.0 resolution: "builtin-modules@npm:3.3.0" checksum: 10/62e063ab40c0c1efccbfa9ffa31873e4f9d57408cb396a2649981a0ecbce56aabc93c28feaccbc5658c95aab2703ad1d11980e62ec2e5e72637404e1eb60f39e @@ -4421,7 +4604,7 @@ __metadata: languageName: node linkType: hard -"call-bind-apply-helpers@npm:^1.0.1, call-bind-apply-helpers@npm:^1.0.2": +"call-bind-apply-helpers@npm:^1.0.0, call-bind-apply-helpers@npm:^1.0.1, call-bind-apply-helpers@npm:^1.0.2": version: 1.0.2 resolution: "call-bind-apply-helpers@npm:1.0.2" dependencies: @@ -4431,16 +4614,25 @@ __metadata: languageName: node linkType: hard -"call-bind@npm:^1.0.2, call-bind@npm:^1.0.5, call-bind@npm:^1.0.6, call-bind@npm:^1.0.7": - version: 1.0.7 - resolution: "call-bind@npm:1.0.7" +"call-bind@npm:^1.0.7, call-bind@npm:^1.0.8": + version: 1.0.8 + resolution: "call-bind@npm:1.0.8" dependencies: + call-bind-apply-helpers: "npm:^1.0.0" es-define-property: "npm:^1.0.0" - es-errors: "npm:^1.3.0" - function-bind: "npm:^1.1.2" get-intrinsic: "npm:^1.2.4" - set-function-length: "npm:^1.2.1" - checksum: 10/cd6fe658e007af80985da5185bff7b55e12ef4c2b6f41829a26ed1eef254b1f1c12e3dfd5b2b068c6ba8b86aba62390842d81752e67dcbaec4f6f76e7113b6b7 + set-function-length: "npm:^1.2.2" + checksum: 10/659b03c79bbfccf0cde3a79e7d52570724d7290209823e1ca5088f94b52192dc1836b82a324d0144612f816abb2f1734447438e38d9dafe0b3f82c2a1b9e3bce + languageName: node + linkType: hard + +"call-bound@npm:^1.0.2, call-bound@npm:^1.0.3, call-bound@npm:^1.0.4": + version: 1.0.4 + resolution: "call-bound@npm:1.0.4" + dependencies: + call-bind-apply-helpers: "npm:^1.0.2" + get-intrinsic: "npm:^1.3.0" + checksum: 10/ef2b96e126ec0e58a7ff694db43f4d0d44f80e641370c21549ed911fecbdbc2df3ebc9bddad918d6bbdefeafb60bb3337902006d5176d72bcd2da74820991af7 languageName: node linkType: hard @@ -5105,7 +5297,7 @@ __metadata: languageName: node linkType: hard -"cross-spawn@npm:^7.0.0, cross-spawn@npm:^7.0.2, cross-spawn@npm:^7.0.3": +"cross-spawn@npm:^7.0.0, cross-spawn@npm:^7.0.3": version: 7.0.3 resolution: "cross-spawn@npm:7.0.3" dependencies: @@ -5116,6 +5308,17 @@ __metadata: languageName: node linkType: hard +"cross-spawn@npm:^7.0.6": + version: 7.0.6 + resolution: "cross-spawn@npm:7.0.6" + dependencies: + path-key: "npm:^3.1.0" + shebang-command: "npm:^2.0.0" + which: "npm:^2.0.1" + checksum: 10/0d52657d7ae36eb130999dffff1168ec348687b48dd38e2ff59992ed916c88d328cf1d07ff4a4a10bc78de5e1c23f04b306d569e42f7a2293915c081e4dfee86 + languageName: node + linkType: hard + "crypto-random-string@npm:^4.0.0": version: 4.0.0 resolution: "crypto-random-string@npm:4.0.0" @@ -5160,36 +5363,36 @@ __metadata: languageName: node linkType: hard -"data-view-buffer@npm:^1.0.1": - version: 1.0.1 - resolution: "data-view-buffer@npm:1.0.1" +"data-view-buffer@npm:^1.0.2": + version: 1.0.2 + resolution: "data-view-buffer@npm:1.0.2" dependencies: - call-bind: "npm:^1.0.6" + call-bound: "npm:^1.0.3" es-errors: "npm:^1.3.0" - is-data-view: "npm:^1.0.1" - checksum: 10/5919a39a18ee919573336158fd162fdf8ada1bc23a139f28543fd45fac48e0ea4a3ad3bfde91de124d4106e65c4a7525f6a84c20ba0797ec890a77a96d13a82a + is-data-view: "npm:^1.0.2" + checksum: 10/c10b155a4e93999d3a215d08c23eea95f865e1f510b2e7748fcae1882b776df1afe8c99f483ace7fc0e5a3193ab08da138abebc9829d12003746c5a338c4d644 languageName: node linkType: hard -"data-view-byte-length@npm:^1.0.1": - version: 1.0.1 - resolution: "data-view-byte-length@npm:1.0.1" +"data-view-byte-length@npm:^1.0.2": + version: 1.0.2 + resolution: "data-view-byte-length@npm:1.0.2" dependencies: - call-bind: "npm:^1.0.7" + call-bound: "npm:^1.0.3" es-errors: "npm:^1.3.0" - is-data-view: "npm:^1.0.1" - checksum: 10/f33c65e58d8d0432ad79761f2e8a579818d724b5dc6dc4e700489b762d963ab30873c0f1c37d8f2ed12ef51c706d1195f64422856d25f067457aeec50cc40aac + is-data-view: "npm:^1.0.2" + checksum: 10/2a47055fcf1ab3ec41b00b6f738c6461a841391a643c9ed9befec1117c1765b4d492661d97fb7cc899200c328949dca6ff189d2c6537d96d60e8a02dfe3c95f7 languageName: node linkType: hard -"data-view-byte-offset@npm:^1.0.0": - version: 1.0.0 - resolution: "data-view-byte-offset@npm:1.0.0" +"data-view-byte-offset@npm:^1.0.1": + version: 1.0.1 + resolution: "data-view-byte-offset@npm:1.0.1" dependencies: - call-bind: "npm:^1.0.6" + call-bound: "npm:^1.0.2" es-errors: "npm:^1.3.0" is-data-view: "npm:^1.0.1" - checksum: 10/96f34f151bf02affb7b9f98762fb7aca1dd5f4553cb57b80bce750ca609c15d33ca659568ef1d422f7e35680736cbccb893a3d4b012760c758c1446bbdc4c6db + checksum: 10/fa3bdfa0968bea6711ee50375094b39f561bce3f15f9e558df59de9c25f0bdd4cddc002d9c1d70ac7772ebd36854a7e22d1761e7302a934e6f1c2263bcf44aa2 languageName: node linkType: hard @@ -5209,7 +5412,7 @@ __metadata: languageName: node linkType: hard -"debug@npm:4, debug@npm:4.3.4, debug@npm:^4.0.0, debug@npm:^4.1.0, debug@npm:^4.1.1, debug@npm:^4.3.1, debug@npm:^4.3.2, debug@npm:^4.3.4": +"debug@npm:4, debug@npm:4.3.4, debug@npm:^4.0.0, debug@npm:^4.1.0, debug@npm:^4.1.1, debug@npm:^4.3.1, debug@npm:^4.3.4": version: 4.3.4 resolution: "debug@npm:4.3.4" dependencies: @@ -5230,6 +5433,18 @@ __metadata: languageName: node linkType: hard +"debug@npm:^4.3.2, debug@npm:^4.4.1, debug@npm:^4.4.3": + version: 4.4.3 + resolution: "debug@npm:4.4.3" + dependencies: + ms: "npm:^2.1.3" + peerDependenciesMeta: + supports-color: + optional: true + checksum: 10/9ada3434ea2993800bd9a1e320bd4aa7af69659fb51cca685d390949434bc0a8873c21ed7c9b852af6f2455a55c6d050aa3937d52b3c69f796dab666f762acad + languageName: node + linkType: hard + "debug@npm:^4.3.5": version: 4.3.7 resolution: "debug@npm:4.3.7" @@ -5305,7 +5520,7 @@ __metadata: languageName: node linkType: hard -"define-data-property@npm:^1.0.1, define-data-property@npm:^1.1.2, define-data-property@npm:^1.1.4": +"define-data-property@npm:^1.0.1, define-data-property@npm:^1.1.4": version: 1.1.4 resolution: "define-data-property@npm:1.1.4" dependencies: @@ -5316,7 +5531,7 @@ __metadata: languageName: node linkType: hard -"define-properties@npm:^1.1.3, define-properties@npm:^1.2.0, define-properties@npm:^1.2.1": +"define-properties@npm:^1.1.3, define-properties@npm:^1.2.1": version: 1.2.1 resolution: "define-properties@npm:1.2.1" dependencies: @@ -5440,15 +5655,6 @@ __metadata: languageName: node linkType: hard -"doctrine@npm:^3.0.0": - version: 3.0.0 - resolution: "doctrine@npm:3.0.0" - dependencies: - esutils: "npm:^2.0.2" - checksum: 10/b4b28f1df5c563f7d876e7461254a4597b8cabe915abe94d7c5d1633fed263fcf9a85e8d3836591fc2d040108e822b0d32758e5ec1fe31c590dc7e08086e3e48 - languageName: node - linkType: hard - "dom-accessibility-api@npm:^0.5.9": version: 0.5.16 resolution: "dom-accessibility-api@npm:0.5.16" @@ -5472,7 +5678,7 @@ __metadata: languageName: node linkType: hard -"dunder-proto@npm:^1.0.1": +"dunder-proto@npm:^1.0.0, dunder-proto@npm:^1.0.1": version: 1.0.1 resolution: "dunder-proto@npm:1.0.1" dependencies: @@ -5571,16 +5777,6 @@ __metadata: languageName: node linkType: hard -"enhanced-resolve@npm:^5.12.0": - version: 5.15.0 - resolution: "enhanced-resolve@npm:5.15.0" - dependencies: - graceful-fs: "npm:^4.2.4" - tapable: "npm:^2.2.0" - checksum: 10/180c3f2706f9117bf4dc7982e1df811dad83a8db075723f299245ef4488e0cad7e96859c5f0e410682d28a4ecd4da021ec7d06265f7e4eb6eed30c69ca5f7d3e - languageName: node - linkType: hard - "entities@npm:^4.4.0": version: 4.5.0 resolution: "entities@npm:4.5.0" @@ -5649,159 +5845,103 @@ __metadata: languageName: node linkType: hard -"es-abstract@npm:^1.17.5, es-abstract@npm:^1.23.0, es-abstract@npm:^1.23.1, es-abstract@npm:^1.23.2, es-abstract@npm:^1.23.3": - version: 1.23.3 - resolution: "es-abstract@npm:1.23.3" +"es-abstract@npm:^1.17.5, es-abstract@npm:^1.23.2, es-abstract@npm:^1.23.3, es-abstract@npm:^1.23.5, es-abstract@npm:^1.23.6, es-abstract@npm:^1.23.9, es-abstract@npm:^1.24.0": + version: 1.24.0 + resolution: "es-abstract@npm:1.24.0" dependencies: - array-buffer-byte-length: "npm:^1.0.1" - arraybuffer.prototype.slice: "npm:^1.0.3" + array-buffer-byte-length: "npm:^1.0.2" + arraybuffer.prototype.slice: "npm:^1.0.4" available-typed-arrays: "npm:^1.0.7" - call-bind: "npm:^1.0.7" - data-view-buffer: "npm:^1.0.1" - data-view-byte-length: "npm:^1.0.1" - data-view-byte-offset: "npm:^1.0.0" - es-define-property: "npm:^1.0.0" + call-bind: "npm:^1.0.8" + call-bound: "npm:^1.0.4" + data-view-buffer: "npm:^1.0.2" + data-view-byte-length: "npm:^1.0.2" + data-view-byte-offset: "npm:^1.0.1" + es-define-property: "npm:^1.0.1" es-errors: "npm:^1.3.0" - es-object-atoms: "npm:^1.0.0" - es-set-tostringtag: "npm:^2.0.3" - es-to-primitive: "npm:^1.2.1" - function.prototype.name: "npm:^1.1.6" - get-intrinsic: "npm:^1.2.4" - get-symbol-description: "npm:^1.0.2" - globalthis: "npm:^1.0.3" - gopd: "npm:^1.0.1" + es-object-atoms: "npm:^1.1.1" + es-set-tostringtag: "npm:^2.1.0" + es-to-primitive: "npm:^1.3.0" + function.prototype.name: "npm:^1.1.8" + get-intrinsic: "npm:^1.3.0" + get-proto: "npm:^1.0.1" + get-symbol-description: "npm:^1.1.0" + globalthis: "npm:^1.0.4" + gopd: "npm:^1.2.0" has-property-descriptors: "npm:^1.0.2" - has-proto: "npm:^1.0.3" - has-symbols: "npm:^1.0.3" + has-proto: "npm:^1.2.0" + has-symbols: "npm:^1.1.0" hasown: "npm:^2.0.2" - internal-slot: "npm:^1.0.7" - is-array-buffer: "npm:^3.0.4" + internal-slot: "npm:^1.1.0" + is-array-buffer: "npm:^3.0.5" is-callable: "npm:^1.2.7" - is-data-view: "npm:^1.0.1" + is-data-view: "npm:^1.0.2" is-negative-zero: "npm:^2.0.3" - is-regex: "npm:^1.1.4" - is-shared-array-buffer: "npm:^1.0.3" - is-string: "npm:^1.0.7" - is-typed-array: "npm:^1.1.13" - is-weakref: "npm:^1.0.2" - object-inspect: "npm:^1.13.1" + is-regex: "npm:^1.2.1" + is-set: "npm:^2.0.3" + is-shared-array-buffer: "npm:^1.0.4" + is-string: "npm:^1.1.1" + is-typed-array: "npm:^1.1.15" + is-weakref: "npm:^1.1.1" + math-intrinsics: "npm:^1.1.0" + object-inspect: "npm:^1.13.4" object-keys: "npm:^1.1.1" - object.assign: "npm:^4.1.5" - regexp.prototype.flags: "npm:^1.5.2" - safe-array-concat: "npm:^1.1.2" - safe-regex-test: "npm:^1.0.3" - string.prototype.trim: "npm:^1.2.9" - string.prototype.trimend: "npm:^1.0.8" + object.assign: "npm:^4.1.7" + own-keys: "npm:^1.0.1" + regexp.prototype.flags: "npm:^1.5.4" + safe-array-concat: "npm:^1.1.3" + safe-push-apply: "npm:^1.0.0" + safe-regex-test: "npm:^1.1.0" + set-proto: "npm:^1.0.0" + stop-iteration-iterator: "npm:^1.1.0" + string.prototype.trim: "npm:^1.2.10" + string.prototype.trimend: "npm:^1.0.9" string.prototype.trimstart: "npm:^1.0.8" - typed-array-buffer: "npm:^1.0.2" - typed-array-byte-length: "npm:^1.0.1" - typed-array-byte-offset: "npm:^1.0.2" - typed-array-length: "npm:^1.0.6" - unbox-primitive: "npm:^1.0.2" - which-typed-array: "npm:^1.1.15" - checksum: 10/2da795a6a1ac5fc2c452799a409acc2e3692e06dc6440440b076908617188899caa562154d77263e3053bcd9389a07baa978ab10ac3b46acc399bd0c77be04cb + typed-array-buffer: "npm:^1.0.3" + typed-array-byte-length: "npm:^1.0.3" + typed-array-byte-offset: "npm:^1.0.4" + typed-array-length: "npm:^1.0.7" + unbox-primitive: "npm:^1.1.0" + which-typed-array: "npm:^1.1.19" + checksum: 10/64e07a886f7439cf5ccfc100f9716e6173e10af6071a50a5031afbdde474a3dbc9619d5965da54e55f8908746a9134a46be02af8c732d574b7b81ed3124e2daf languageName: node linkType: hard -"es-abstract@npm:^1.22.1, es-abstract@npm:^1.22.3": - version: 1.22.4 - resolution: "es-abstract@npm:1.22.4" - dependencies: - array-buffer-byte-length: "npm:^1.0.1" - arraybuffer.prototype.slice: "npm:^1.0.3" - available-typed-arrays: "npm:^1.0.6" - call-bind: "npm:^1.0.7" - es-define-property: "npm:^1.0.0" - es-errors: "npm:^1.3.0" - es-set-tostringtag: "npm:^2.0.2" - es-to-primitive: "npm:^1.2.1" - function.prototype.name: "npm:^1.1.6" - get-intrinsic: "npm:^1.2.4" - get-symbol-description: "npm:^1.0.2" - globalthis: "npm:^1.0.3" - gopd: "npm:^1.0.1" - has-property-descriptors: "npm:^1.0.2" - has-proto: "npm:^1.0.1" - has-symbols: "npm:^1.0.3" - hasown: "npm:^2.0.1" - internal-slot: "npm:^1.0.7" - is-array-buffer: "npm:^3.0.4" - is-callable: "npm:^1.2.7" - is-negative-zero: "npm:^2.0.2" - is-regex: "npm:^1.1.4" - is-shared-array-buffer: "npm:^1.0.2" - is-string: "npm:^1.0.7" - is-typed-array: "npm:^1.1.13" - is-weakref: "npm:^1.0.2" - object-inspect: "npm:^1.13.1" - object-keys: "npm:^1.1.1" - object.assign: "npm:^4.1.5" - regexp.prototype.flags: "npm:^1.5.2" - safe-array-concat: "npm:^1.1.0" - safe-regex-test: "npm:^1.0.3" - string.prototype.trim: "npm:^1.2.8" - string.prototype.trimend: "npm:^1.0.7" - string.prototype.trimstart: "npm:^1.0.7" - typed-array-buffer: "npm:^1.0.1" - typed-array-byte-length: "npm:^1.0.0" - typed-array-byte-offset: "npm:^1.0.0" - typed-array-length: "npm:^1.0.4" - unbox-primitive: "npm:^1.0.2" - which-typed-array: "npm:^1.1.14" - checksum: 10/062e562a000e280c0c0683ad4a7b81732f97463bc769110c668a8edb739cd5df56975fa55965f5304a3256fd6eee03b9b66a47d863076f8976c2050731946b1f - languageName: node - linkType: hard - -"es-array-method-boxes-properly@npm:^1.0.0": - version: 1.0.0 - resolution: "es-array-method-boxes-properly@npm:1.0.0" - checksum: 10/27a8a21acf20f3f51f69dce8e643f151e380bffe569e95dc933b9ded9fcd89a765ee21b5229c93f9206c93f87395c6b75f80be8ac8c08a7ceb8771e1822ff1fb - languageName: node - linkType: hard - -"es-define-property@npm:^1.0.0": - version: 1.0.0 - resolution: "es-define-property@npm:1.0.0" - dependencies: - get-intrinsic: "npm:^1.2.4" - checksum: 10/f66ece0a887b6dca71848fa71f70461357c0e4e7249696f81bad0a1f347eed7b31262af4a29f5d726dc026426f085483b6b90301855e647aa8e21936f07293c6 - languageName: node - linkType: hard - -"es-define-property@npm:^1.0.1": +"es-define-property@npm:^1.0.0, es-define-property@npm:^1.0.1": version: 1.0.1 resolution: "es-define-property@npm:1.0.1" checksum: 10/f8dc9e660d90919f11084db0a893128f3592b781ce967e4fccfb8f3106cb83e400a4032c559184ec52ee1dbd4b01e7776c7cd0b3327b1961b1a4a7008920fe78 languageName: node linkType: hard -"es-errors@npm:^1.0.0, es-errors@npm:^1.2.1, es-errors@npm:^1.3.0": +"es-errors@npm:^1.3.0": version: 1.3.0 resolution: "es-errors@npm:1.3.0" checksum: 10/96e65d640156f91b707517e8cdc454dd7d47c32833aa3e85d79f24f9eb7ea85f39b63e36216ef0114996581969b59fe609a94e30316b08f5f4df1d44134cf8d5 languageName: node linkType: hard -"es-iterator-helpers@npm:^1.1.0": - version: 1.2.0 - resolution: "es-iterator-helpers@npm:1.2.0" +"es-iterator-helpers@npm:^1.2.1": + version: 1.2.1 + resolution: "es-iterator-helpers@npm:1.2.1" dependencies: - call-bind: "npm:^1.0.7" + call-bind: "npm:^1.0.8" + call-bound: "npm:^1.0.3" define-properties: "npm:^1.2.1" - es-abstract: "npm:^1.23.3" + es-abstract: "npm:^1.23.6" es-errors: "npm:^1.3.0" es-set-tostringtag: "npm:^2.0.3" function-bind: "npm:^1.1.2" - get-intrinsic: "npm:^1.2.4" + get-intrinsic: "npm:^1.2.6" globalthis: "npm:^1.0.4" - gopd: "npm:^1.0.1" + gopd: "npm:^1.2.0" has-property-descriptors: "npm:^1.0.2" - has-proto: "npm:^1.0.3" - has-symbols: "npm:^1.0.3" - internal-slot: "npm:^1.0.7" - iterator.prototype: "npm:^1.1.3" - safe-array-concat: "npm:^1.1.2" - checksum: 10/a4159e36c6bae03d4b636894fff2ff1acfcedc16c622939298b00adf4d2da6356ad92f682cc75c037a012a4b06adb903f67dfdfd05bac61847e9b763de2acbcb + has-proto: "npm:^1.2.0" + has-symbols: "npm:^1.1.0" + internal-slot: "npm:^1.1.0" + iterator.prototype: "npm:^1.1.4" + safe-array-concat: "npm:^1.1.3" + checksum: 10/802e0e8427a05ff4a5b0c70c7fdaaeff37cdb81a28694aeb7bfb831c6ab340d8f3deeb67b96732ff9e9699ea240524d5ea8a9a6a335fcd15aa3983b27b06113f languageName: node linkType: hard @@ -5823,29 +5963,7 @@ __metadata: languageName: node linkType: hard -"es-set-tostringtag@npm:^2.0.2": - version: 2.0.2 - resolution: "es-set-tostringtag@npm:2.0.2" - dependencies: - get-intrinsic: "npm:^1.2.2" - has-tostringtag: "npm:^1.0.0" - hasown: "npm:^2.0.0" - checksum: 10/afcec3a4c9890ae14d7ec606204858441c801ff84f312538e1d1ccf1e5493c8b17bd672235df785f803756472cb4f2d49b87bde5237aef33411e74c22f194e07 - languageName: node - linkType: hard - -"es-set-tostringtag@npm:^2.0.3": - version: 2.0.3 - resolution: "es-set-tostringtag@npm:2.0.3" - dependencies: - get-intrinsic: "npm:^1.2.4" - has-tostringtag: "npm:^1.0.2" - hasown: "npm:^2.0.1" - checksum: 10/7227fa48a41c0ce83e0377b11130d324ac797390688135b8da5c28994c0165be8b252e15cd1de41e1325e5a5412511586960213e88f9ab4a5e7d028895db5129 - languageName: node - linkType: hard - -"es-set-tostringtag@npm:^2.1.0": +"es-set-tostringtag@npm:^2.0.3, es-set-tostringtag@npm:^2.1.0": version: 2.1.0 resolution: "es-set-tostringtag@npm:2.1.0" dependencies: @@ -5857,23 +5975,23 @@ __metadata: languageName: node linkType: hard -"es-shim-unscopables@npm:^1.0.0, es-shim-unscopables@npm:^1.0.2": - version: 1.0.2 - resolution: "es-shim-unscopables@npm:1.0.2" +"es-shim-unscopables@npm:^1.0.2, es-shim-unscopables@npm:^1.1.0": + version: 1.1.0 + resolution: "es-shim-unscopables@npm:1.1.0" dependencies: - hasown: "npm:^2.0.0" - checksum: 10/6d3bf91f658a27cc7217cd32b407a0d714393a84d125ad576319b9e83a893bea165cf41270c29e9ceaa56d3cf41608945d7e2a2c31fd51c0009b0c31402b91c7 + hasown: "npm:^2.0.2" + checksum: 10/c351f586c30bbabc62355be49564b2435468b52c3532b8a1663672e3d10dc300197e69c247869dd173e56d86423ab95fc0c10b0939cdae597094e0fdca078cba languageName: node linkType: hard -"es-to-primitive@npm:^1.2.1": - version: 1.2.1 - resolution: "es-to-primitive@npm:1.2.1" +"es-to-primitive@npm:^1.3.0": + version: 1.3.0 + resolution: "es-to-primitive@npm:1.3.0" dependencies: - is-callable: "npm:^1.1.4" - is-date-object: "npm:^1.0.1" - is-symbol: "npm:^1.0.2" - checksum: 10/74aeeefe2714cf99bb40cab7ce3012d74e1e2c1bd60d0a913b467b269edde6e176ca644b5ba03a5b865fb044a29bca05671cd445c85ca2cdc2de155d7fc8fe9b + is-callable: "npm:^1.2.7" + is-date-object: "npm:^1.0.5" + is-symbol: "npm:^1.0.4" + checksum: 10/17faf35c221aad59a16286cbf58ef6f080bf3c485dff202c490d074d8e74da07884e29b852c245d894eac84f73c58330ec956dfd6d02c0b449d75eb1012a3f9b languageName: node linkType: hard @@ -5926,17 +6044,18 @@ __metadata: languageName: node linkType: hard -"eslint-etc@npm:^5.1.0": - version: 5.2.1 - resolution: "eslint-etc@npm:5.2.1" +"eslint-import-context@npm:^0.1.8": + version: 0.1.9 + resolution: "eslint-import-context@npm:0.1.9" dependencies: - "@typescript-eslint/experimental-utils": "npm:^5.0.0" - tsutils: "npm:^3.17.1" - tsutils-etc: "npm:^1.4.1" + get-tsconfig: "npm:^4.10.1" + stable-hash-x: "npm:^0.2.0" peerDependencies: - eslint: ^8.0.0 - typescript: ">=4.0.0" - checksum: 10/2be2886635ade572638a77a2313fadb689435f89f5e56cefdca27d81970eabd76575f57cf950abcff9949e20ce4dd65ce6b6dafff3f95db7fe6aecbaf54a9004 + unrs-resolver: ^1.0.0 + peerDependenciesMeta: + unrs-resolver: + optional: true + checksum: 10/f0778126bb3aae57c8c68946c71c4418927e9d39f72099b799d9c47a3b5712d6c9166b63ee8be58a020961dcc9216df09c856b825336af375ccbbdeedfc82a99 languageName: node linkType: hard @@ -5951,228 +6070,237 @@ __metadata: languageName: node linkType: hard -"eslint-import-resolver-typescript@npm:^3.6.1": - version: 3.6.1 - resolution: "eslint-import-resolver-typescript@npm:3.6.1" +"eslint-import-resolver-typescript@npm:^4.4.4": + version: 4.4.4 + resolution: "eslint-import-resolver-typescript@npm:4.4.4" dependencies: - debug: "npm:^4.3.4" - enhanced-resolve: "npm:^5.12.0" - eslint-module-utils: "npm:^2.7.4" - fast-glob: "npm:^3.3.1" - get-tsconfig: "npm:^4.5.0" - is-core-module: "npm:^2.11.0" - is-glob: "npm:^4.0.3" + debug: "npm:^4.4.1" + eslint-import-context: "npm:^0.1.8" + get-tsconfig: "npm:^4.10.1" + is-bun-module: "npm:^2.0.0" + stable-hash-x: "npm:^0.2.0" + tinyglobby: "npm:^0.2.14" + unrs-resolver: "npm:^1.7.11" peerDependencies: eslint: "*" eslint-plugin-import: "*" - checksum: 10/261df24721a7c5e37ee598b63e7e12c54e3d20c9ae5de6dbc132cecced023cb967c481007eef73252da108ac7eabb2e859853ff2e2d5776699a2954466ca716f + eslint-plugin-import-x: "*" + peerDependenciesMeta: + eslint-plugin-import: + optional: true + eslint-plugin-import-x: + optional: true + checksum: 10/4f871f6d1a04c55c2087c5ff1030f783a29abb59901b354d7ef58a0fc687d379dcbd08cf377cddeb7e19f26dd380d32d85ee4760e9410a059639d2b3df7d1ff3 languageName: node linkType: hard -"eslint-module-utils@npm:^2.7.4, eslint-module-utils@npm:^2.8.0": - version: 2.8.0 - resolution: "eslint-module-utils@npm:2.8.0" +"eslint-module-utils@npm:^2.12.1": + version: 2.12.1 + resolution: "eslint-module-utils@npm:2.12.1" dependencies: debug: "npm:^3.2.7" peerDependenciesMeta: eslint: optional: true - checksum: 10/a9a7ed93eb858092e3cdc797357d4ead2b3ea06959b0eada31ab13862d46a59eb064b9cb82302214232e547980ce33618c2992f6821138a4934e65710ed9cc29 + checksum: 10/bd25d6610ec3abaa50e8f1beb0119541562bbb8dd02c035c7e887976fe1e0c5dd8175f4607ca8d86d1146df24d52a071bd3d1dd329f6902bd58df805a8ca16d3 languageName: node linkType: hard -"eslint-plugin-etc@npm:^2.0.3": - version: 2.0.3 - resolution: "eslint-plugin-etc@npm:2.0.3" +"eslint-plugin-import@npm:^2.32.0": + version: 2.32.0 + resolution: "eslint-plugin-import@npm:2.32.0" dependencies: - "@phenomnomnominal/tsquery": "npm:^5.0.0" - "@typescript-eslint/experimental-utils": "npm:^5.0.0" - eslint-etc: "npm:^5.1.0" - requireindex: "npm:~1.2.0" - tslib: "npm:^2.0.0" - tsutils: "npm:^3.0.0" - peerDependencies: - eslint: ^8.0.0 - typescript: ">=4.0.0" - checksum: 10/9879c60c244720683a42f9c55f6628d8d160811e641caf42523e4ddcd53ca441d8b20ffa7b50eba03e94e7dcf2da92bda0c8424a81bf73811f4067002f351d14 - languageName: node - linkType: hard - -"eslint-plugin-import@npm:^2.29.1": - version: 2.29.1 - resolution: "eslint-plugin-import@npm:2.29.1" - dependencies: - array-includes: "npm:^3.1.7" - array.prototype.findlastindex: "npm:^1.2.3" - array.prototype.flat: "npm:^1.3.2" - array.prototype.flatmap: "npm:^1.3.2" + "@rtsao/scc": "npm:^1.1.0" + array-includes: "npm:^3.1.9" + array.prototype.findlastindex: "npm:^1.2.6" + array.prototype.flat: "npm:^1.3.3" + array.prototype.flatmap: "npm:^1.3.3" debug: "npm:^3.2.7" doctrine: "npm:^2.1.0" eslint-import-resolver-node: "npm:^0.3.9" - eslint-module-utils: "npm:^2.8.0" - hasown: "npm:^2.0.0" - is-core-module: "npm:^2.13.1" + eslint-module-utils: "npm:^2.12.1" + hasown: "npm:^2.0.2" + is-core-module: "npm:^2.16.1" is-glob: "npm:^4.0.3" minimatch: "npm:^3.1.2" - object.fromentries: "npm:^2.0.7" - object.groupby: "npm:^1.0.1" - object.values: "npm:^1.1.7" + object.fromentries: "npm:^2.0.8" + object.groupby: "npm:^1.0.3" + object.values: "npm:^1.2.1" semver: "npm:^6.3.1" + string.prototype.trimend: "npm:^1.0.9" tsconfig-paths: "npm:^3.15.0" peerDependencies: - eslint: ^2 || ^3 || ^4 || ^5 || ^6 || ^7.2.0 || ^8 - checksum: 10/5865f05c38552145423c535326ec9a7113ab2305c7614c8b896ff905cfabc859c8805cac21e979c9f6f742afa333e6f62f812eabf891a7e8f5f0b853a32593c1 + eslint: ^2 || ^3 || ^4 || ^5 || ^6 || ^7.2.0 || ^8 || ^9 + checksum: 10/1bacf4967e9ebf99e12176a795f0d6d3a87d1c9a030c2207f27b267e10d96a1220be2647504c7fc13ab543cdf13ffef4b8f5620e0447032dba4ff0d3922f7c9e languageName: node linkType: hard -"eslint-plugin-jsdoc@npm:^48.2.1": - version: 48.2.1 - resolution: "eslint-plugin-jsdoc@npm:48.2.1" +"eslint-plugin-jsdoc@npm:^61.2.1": + version: 61.2.1 + resolution: "eslint-plugin-jsdoc@npm:61.2.1" dependencies: - "@es-joy/jsdoccomment": "npm:~0.42.0" + "@es-joy/jsdoccomment": "npm:~0.76.0" + "@es-joy/resolve.exports": "npm:1.2.0" are-docs-informative: "npm:^0.0.2" comment-parser: "npm:1.4.1" - debug: "npm:^4.3.4" + debug: "npm:^4.4.3" escape-string-regexp: "npm:^4.0.0" - esquery: "npm:^1.5.0" - is-builtin-module: "npm:^3.2.1" - semver: "npm:^7.6.0" + espree: "npm:^10.4.0" + esquery: "npm:^1.6.0" + html-entities: "npm:^2.6.0" + object-deep-merge: "npm:^2.0.0" + parse-imports-exports: "npm:^0.2.4" + semver: "npm:^7.7.3" spdx-expression-parse: "npm:^4.0.0" + to-valid-identifier: "npm:^1.0.0" peerDependencies: eslint: ^7.0.0 || ^8.0.0 || ^9.0.0 - checksum: 10/4b4e6592ea27646d2556b0feedda4427dac110f4a9adf858aa040aead0d673d263d5474673f774d1202492b8971065ff027fbe3531c20a2b255b11cbc06a90ca + checksum: 10/8b1c545911f44049161de285b67f330ae7d55995225534046627ffc3650ebc2f3e086f10459aad7e093bae191a6a1462ba365438a5ae1901384336f3dbc9ec84 languageName: node linkType: hard -"eslint-plugin-react-hooks@npm:^4.6.0": - version: 4.6.2 - resolution: "eslint-plugin-react-hooks@npm:4.6.2" +"eslint-plugin-perfectionist@npm:^4.15.1": + version: 4.15.1 + resolution: "eslint-plugin-perfectionist@npm:4.15.1" + dependencies: + "@typescript-eslint/types": "npm:^8.38.0" + "@typescript-eslint/utils": "npm:^8.38.0" + natural-orderby: "npm:^5.0.0" peerDependencies: - eslint: ^3.0.0 || ^4.0.0 || ^5.0.0 || ^6.0.0 || ^7.0.0 || ^8.0.0-0 - checksum: 10/5a0680941f34e70cf505bcb6082df31a3e445d193ee95a88ff3483041eb944f4cefdaf7e81b0eb1feb4eeceee8c7c6ddb8a2a6e8c4c0388514a42e16ac7b7a69 + eslint: ">=8.45.0" + checksum: 10/974ba29d9a36592ac754dc1ffb35f26a5305be9ad336d9b15c697d699253a4b49a21fe8bd40878aa9245dffbad1620061ec2412d54e07295b46f973d57c81090 languageName: node linkType: hard -"eslint-plugin-react@npm:^7.34.1": - version: 7.37.2 - resolution: "eslint-plugin-react@npm:7.37.2" +"eslint-plugin-react@npm:^7.37.5": + version: 7.37.5 + resolution: "eslint-plugin-react@npm:7.37.5" dependencies: array-includes: "npm:^3.1.8" array.prototype.findlast: "npm:^1.2.5" - array.prototype.flatmap: "npm:^1.3.2" + array.prototype.flatmap: "npm:^1.3.3" array.prototype.tosorted: "npm:^1.1.4" doctrine: "npm:^2.1.0" - es-iterator-helpers: "npm:^1.1.0" + es-iterator-helpers: "npm:^1.2.1" estraverse: "npm:^5.3.0" hasown: "npm:^2.0.2" jsx-ast-utils: "npm:^2.4.1 || ^3.0.0" minimatch: "npm:^3.1.2" - object.entries: "npm:^1.1.8" + object.entries: "npm:^1.1.9" object.fromentries: "npm:^2.0.8" - object.values: "npm:^1.2.0" + object.values: "npm:^1.2.1" prop-types: "npm:^15.8.1" resolve: "npm:^2.0.0-next.5" semver: "npm:^6.3.1" - string.prototype.matchall: "npm:^4.0.11" + string.prototype.matchall: "npm:^4.0.12" string.prototype.repeat: "npm:^1.0.0" peerDependencies: eslint: ^3 || ^4 || ^5 || ^6 || ^7 || ^8 || ^9.7 - checksum: 10/df2f7ab198018d3378f305a8a5ceceebc9bd31f019fc7567a2ef9c77789dc8a6a2c3c3957f8b0805f26c11c02f9f86c972e02cd0eda12f4d0370526c11f8a9a3 - languageName: node - linkType: hard - -"eslint-plugin-sonarjs@npm:^0.24.0": - version: 0.24.0 - resolution: "eslint-plugin-sonarjs@npm:0.24.0" - peerDependencies: - eslint: ^5.0.0 || ^6.0.0 || ^7.0.0 || ^8.0.0 - checksum: 10/5d313f183d77a654d98b392ac878ab5492417f872e26a57d25649ddce1bf3e40c0765cb05e183f383a583bdc92d2b02b9b38139c180d190de85a9c6732bd1917 + checksum: 10/ee1bd4e0ec64f29109d5a625bb703d179c82e0159c86c3f1b52fc1209d2994625a137dae303c333fb308a2e38315e44066d5204998177e31974382f9fda25d5c languageName: node linkType: hard -"eslint-scope@npm:^5.1.1": - version: 5.1.1 - resolution: "eslint-scope@npm:5.1.1" +"eslint-plugin-sonarjs@npm:^3.0.5": + version: 3.0.5 + resolution: "eslint-plugin-sonarjs@npm:3.0.5" dependencies: - esrecurse: "npm:^4.3.0" - estraverse: "npm:^4.1.1" - checksum: 10/c541ef384c92eb5c999b7d3443d80195fcafb3da335500946f6db76539b87d5826c8f2e1d23bf6afc3154ba8cd7c8e566f8dc00f1eea25fdf3afc8fb9c87b238 + "@eslint-community/regexpp": "npm:4.12.1" + builtin-modules: "npm:3.3.0" + bytes: "npm:3.1.2" + functional-red-black-tree: "npm:1.0.1" + jsx-ast-utils-x: "npm:0.1.0" + lodash.merge: "npm:4.6.2" + minimatch: "npm:9.0.5" + scslre: "npm:0.3.0" + semver: "npm:7.7.2" + typescript: "npm:>=5" + peerDependencies: + eslint: ^8.0.0 || ^9.0.0 + checksum: 10/82351630ab8c4fa1331edce96bd3bbe3afbc4a40ae92aa4474d45ef68c6a99990c4a6634e79d8d81d938edad7152b099ff18fe71f12e06362007c5f80856057d languageName: node linkType: hard -"eslint-scope@npm:^7.2.2": - version: 7.2.2 - resolution: "eslint-scope@npm:7.2.2" +"eslint-scope@npm:^8.4.0": + version: 8.4.0 + resolution: "eslint-scope@npm:8.4.0" dependencies: esrecurse: "npm:^4.3.0" estraverse: "npm:^5.2.0" - checksum: 10/5c660fb905d5883ad018a6fea2b49f3cb5b1cbf2cd4bd08e98646e9864f9bc2c74c0839bed2d292e90a4a328833accc197c8f0baed89cbe8d605d6f918465491 + checksum: 10/e8e611701f65375e034c62123946e628894f0b54aa8cb11abe224816389abe5cd74cf16b62b72baa36504f22d1a958b9b8b0169b82397fe2e7997674c0d09b06 languageName: node linkType: hard -"eslint-visitor-keys@npm:^3.3.0, eslint-visitor-keys@npm:^3.4.1, eslint-visitor-keys@npm:^3.4.3": +"eslint-visitor-keys@npm:^3.4.3": version: 3.4.3 resolution: "eslint-visitor-keys@npm:3.4.3" checksum: 10/3f357c554a9ea794b094a09bd4187e5eacd1bc0d0653c3adeb87962c548e6a1ab8f982b86963ae1337f5d976004146536dcee5d0e2806665b193fbfbf1a9231b languageName: node linkType: hard -"eslint@npm:^8.57.0": - version: 8.57.0 - resolution: "eslint@npm:8.57.0" +"eslint-visitor-keys@npm:^4.2.1": + version: 4.2.1 + resolution: "eslint-visitor-keys@npm:4.2.1" + checksum: 10/3ee00fc6a7002d4b0ffd9dc99e13a6a7882c557329e6c25ab254220d71e5c9c4f89dca4695352949ea678eb1f3ba912a18ef8aac0a7fe094196fd92f441bfce2 + languageName: node + linkType: hard + +"eslint@npm:^9.39.1": + version: 9.39.1 + resolution: "eslint@npm:9.39.1" dependencies: - "@eslint-community/eslint-utils": "npm:^4.2.0" - "@eslint-community/regexpp": "npm:^4.6.1" - "@eslint/eslintrc": "npm:^2.1.4" - "@eslint/js": "npm:8.57.0" - "@humanwhocodes/config-array": "npm:^0.11.14" + "@eslint-community/eslint-utils": "npm:^4.8.0" + "@eslint-community/regexpp": "npm:^4.12.1" + "@eslint/config-array": "npm:^0.21.1" + "@eslint/config-helpers": "npm:^0.4.2" + "@eslint/core": "npm:^0.17.0" + "@eslint/eslintrc": "npm:^3.3.1" + "@eslint/js": "npm:9.39.1" + "@eslint/plugin-kit": "npm:^0.4.1" + "@humanfs/node": "npm:^0.16.6" "@humanwhocodes/module-importer": "npm:^1.0.1" - "@nodelib/fs.walk": "npm:^1.2.8" - "@ungap/structured-clone": "npm:^1.2.0" + "@humanwhocodes/retry": "npm:^0.4.2" + "@types/estree": "npm:^1.0.6" ajv: "npm:^6.12.4" chalk: "npm:^4.0.0" - cross-spawn: "npm:^7.0.2" + cross-spawn: "npm:^7.0.6" debug: "npm:^4.3.2" - doctrine: "npm:^3.0.0" escape-string-regexp: "npm:^4.0.0" - eslint-scope: "npm:^7.2.2" - eslint-visitor-keys: "npm:^3.4.3" - espree: "npm:^9.6.1" - esquery: "npm:^1.4.2" + eslint-scope: "npm:^8.4.0" + eslint-visitor-keys: "npm:^4.2.1" + espree: "npm:^10.4.0" + esquery: "npm:^1.5.0" esutils: "npm:^2.0.2" fast-deep-equal: "npm:^3.1.3" - file-entry-cache: "npm:^6.0.1" + file-entry-cache: "npm:^8.0.0" find-up: "npm:^5.0.0" glob-parent: "npm:^6.0.2" - globals: "npm:^13.19.0" - graphemer: "npm:^1.4.0" ignore: "npm:^5.2.0" imurmurhash: "npm:^0.1.4" is-glob: "npm:^4.0.0" - is-path-inside: "npm:^3.0.3" - js-yaml: "npm:^4.1.0" json-stable-stringify-without-jsonify: "npm:^1.0.1" - levn: "npm:^0.4.1" lodash.merge: "npm:^4.6.2" minimatch: "npm:^3.1.2" natural-compare: "npm:^1.4.0" optionator: "npm:^0.9.3" - strip-ansi: "npm:^6.0.1" - text-table: "npm:^0.2.0" + peerDependencies: + jiti: "*" + peerDependenciesMeta: + jiti: + optional: true bin: eslint: bin/eslint.js - checksum: 10/00496e218b23747a7a9817bf58b522276d0dc1f2e546dceb4eea49f9871574088f72f1f069a6b560ef537efa3a75261b8ef70e51ef19033da1cc4c86a755ef15 + checksum: 10/c85fefe4a81a1a476e62087366907af830b62a6565ac153f6d50a100a42a946aeb049c3af8f06c0e091105ba0fe97ac109f379f32755a67f66ecb7d4d1e4dca3 languageName: node linkType: hard -"espree@npm:^9.6.0, espree@npm:^9.6.1": - version: 9.6.1 - resolution: "espree@npm:9.6.1" +"espree@npm:^10.0.1, espree@npm:^10.4.0": + version: 10.4.0 + resolution: "espree@npm:10.4.0" dependencies: - acorn: "npm:^8.9.0" + acorn: "npm:^8.15.0" acorn-jsx: "npm:^5.3.2" - eslint-visitor-keys: "npm:^3.4.1" - checksum: 10/255ab260f0d711a54096bdeda93adff0eadf02a6f9b92f02b323e83a2b7fc258797919437ad331efec3930475feb0142c5ecaaf3cdab4befebd336d47d3f3134 + eslint-visitor-keys: "npm:^4.2.1" + checksum: 10/9b355b32dbd1cc9f57121d5ee3be258fab87ebeb7c83fc6c02e5af1a74fc8c5ba79fe8c663e69ea112c3e84a1b95e6a2067ac4443ee7813bb85ac7581acb8bf9 languageName: node linkType: hard @@ -6186,12 +6314,12 @@ __metadata: languageName: node linkType: hard -"esquery@npm:^1.4.0, esquery@npm:^1.4.2, esquery@npm:^1.5.0": - version: 1.5.0 - resolution: "esquery@npm:1.5.0" +"esquery@npm:^1.5.0, esquery@npm:^1.6.0": + version: 1.6.0 + resolution: "esquery@npm:1.6.0" dependencies: estraverse: "npm:^5.1.0" - checksum: 10/e65fcdfc1e0ff5effbf50fb4f31ea20143ae5df92bb2e4953653d8d40aa4bc148e0d06117a592ce4ea53eeab1dafdfded7ea7e22a5be87e82d73757329a1b01d + checksum: 10/c587fb8ec9ed83f2b1bc97cf2f6854cc30bf784a79d62ba08c6e358bf22280d69aee12827521cf38e69ae9761d23fb7fde593ce315610f85655c139d99b05e5a languageName: node linkType: hard @@ -6204,13 +6332,6 @@ __metadata: languageName: node linkType: hard -"estraverse@npm:^4.1.1": - version: 4.3.0 - resolution: "estraverse@npm:4.3.0" - checksum: 10/3f67ad02b6dbfaddd9ea459cf2b6ef4ecff9a6082a7af9d22e445b9abc082ad9ca47e1825557b293fcdae477f4714e561123e30bb6a5b2f184fb2bad4a9497eb - languageName: node - linkType: hard - "estraverse@npm:^5.1.0, estraverse@npm:^5.2.0, estraverse@npm:^5.3.0": version: 5.3.0 resolution: "estraverse@npm:5.3.0" @@ -6318,7 +6439,7 @@ __metadata: languageName: node linkType: hard -"fast-glob@npm:^3.2.9, fast-glob@npm:^3.3.1, fast-glob@npm:^3.3.2": +"fast-glob@npm:^3.3.2": version: 3.3.2 resolution: "fast-glob@npm:3.3.2" dependencies: @@ -6381,6 +6502,18 @@ __metadata: languageName: node linkType: hard +"fdir@npm:^6.5.0": + version: 6.5.0 + resolution: "fdir@npm:6.5.0" + peerDependencies: + picomatch: ^3 || ^4 + peerDependenciesMeta: + picomatch: + optional: true + checksum: 10/14ca1c9f0a0e8f4f2e9bf4e8551065a164a09545dae548c12a18d238b72e51e5a7b39bd8e5494b56463a0877672d0a6c1ef62c6fa0677db1b0c847773be939b1 + languageName: node + linkType: hard + "figures@npm:^2.0.0": version: 2.0.0 resolution: "figures@npm:2.0.0" @@ -6408,12 +6541,12 @@ __metadata: languageName: node linkType: hard -"file-entry-cache@npm:^6.0.1": - version: 6.0.1 - resolution: "file-entry-cache@npm:6.0.1" +"file-entry-cache@npm:^8.0.0": + version: 8.0.0 + resolution: "file-entry-cache@npm:8.0.0" dependencies: - flat-cache: "npm:^3.0.4" - checksum: 10/099bb9d4ab332cb93c48b14807a6918a1da87c45dce91d4b61fd40e6505d56d0697da060cb901c729c90487067d93c9243f5da3dc9c41f0358483bfdebca736b + flat-cache: "npm:^4.0.0" + checksum: 10/afe55c4de4e0d226a23c1eae62a7219aafb390859122608a89fa4df6addf55c7fd3f1a2da6f5b41e7cdff496e4cf28bbd215d53eab5c817afa96d2b40c81bfb0 languageName: node linkType: hard @@ -6506,14 +6639,13 @@ __metadata: languageName: node linkType: hard -"flat-cache@npm:^3.0.4": - version: 3.2.0 - resolution: "flat-cache@npm:3.2.0" +"flat-cache@npm:^4.0.0": + version: 4.0.1 + resolution: "flat-cache@npm:4.0.1" dependencies: flatted: "npm:^3.2.9" - keyv: "npm:^4.5.3" - rimraf: "npm:^3.0.2" - checksum: 10/02381c6ece5e9fa5b826c9bbea481d7fd77645d96e4b0b1395238124d581d10e56f17f723d897b6d133970f7a57f0fab9148cbbb67237a0a0ffe794ba60c0c70 + keyv: "npm:^4.5.4" + checksum: 10/58ce851d9045fffc7871ce2bd718bc485ad7e777bf748c054904b87c351ff1080c2c11da00788d78738bfb51b71e4d5ea12d13b98eb36e3358851ffe495b62dc languageName: node linkType: hard @@ -6527,9 +6659,9 @@ __metadata: linkType: hard "flatted@npm:^3.2.9": - version: 3.2.9 - resolution: "flatted@npm:3.2.9" - checksum: 10/dc2b89e46a2ebde487199de5a4fcb79e8c46f984043fea5c41dbf4661eb881fefac1c939b5bdcd8a09d7f960ec364f516970c7ec44e58ff451239c07fd3d419b + version: 3.3.3 + resolution: "flatted@npm:3.3.3" + checksum: 10/8c96c02fbeadcf4e8ffd0fa24983241e27698b0781295622591fc13585e2f226609d95e422bcf2ef044146ffacb6b68b1f20871454eddf75ab3caa6ee5f4a1fe languageName: node linkType: hard @@ -6554,12 +6686,12 @@ __metadata: languageName: node linkType: hard -"for-each@npm:^0.3.3": - version: 0.3.3 - resolution: "for-each@npm:0.3.3" +"for-each@npm:^0.3.3, for-each@npm:^0.3.5": + version: 0.3.5 + resolution: "for-each@npm:0.3.5" dependencies: - is-callable: "npm:^1.1.3" - checksum: 10/fdac0cde1be35610bd635ae958422e8ce0cc1313e8d32ea6d34cfda7b60850940c1fd07c36456ad76bd9c24aef6ff5e03b02beb58c83af5ef6c968a64eada676 + is-callable: "npm:^1.2.7" + checksum: 10/330cc2439f85c94f4609de3ee1d32c5693ae15cdd7fe3d112c4fd9efd4ce7143f2c64ef6c2c9e0cfdb0058437f33ef05b5bdae5b98fcc903fb2143fbaf0fea0f languageName: node linkType: hard @@ -6676,15 +6808,24 @@ __metadata: languageName: node linkType: hard -"function.prototype.name@npm:^1.1.6": - version: 1.1.6 - resolution: "function.prototype.name@npm:1.1.6" +"function.prototype.name@npm:^1.1.6, function.prototype.name@npm:^1.1.8": + version: 1.1.8 + resolution: "function.prototype.name@npm:1.1.8" dependencies: - call-bind: "npm:^1.0.2" - define-properties: "npm:^1.2.0" - es-abstract: "npm:^1.22.1" + call-bind: "npm:^1.0.8" + call-bound: "npm:^1.0.3" + define-properties: "npm:^1.2.1" functions-have-names: "npm:^1.2.3" - checksum: 10/4d40be44d4609942e4e90c4fff77a811fa936f4985d92d2abfcf44f673ba344e2962bf223a33101f79c1a056465f36f09b072b9c289d7660ca554a12491cd5a2 + hasown: "npm:^2.0.2" + is-callable: "npm:^1.2.7" + checksum: 10/25b9e5bea936732a6f0c0c08db58cc0d609ac1ed458c6a07ead46b32e7b9bf3fe5887796c3f83d35994efbc4fdde81c08ac64135b2c399b8f2113968d44082bc + languageName: node + linkType: hard + +"functional-red-black-tree@npm:1.0.1": + version: 1.0.1 + resolution: "functional-red-black-tree@npm:1.0.1" + checksum: 10/debe73e92204341d1fa5f89614e44284d3add26dee660722978d8c50829170f87d1c74768f68c251d215ae461c11db7bac13101c77f4146ff051da75466f7a12 languageName: node linkType: hard @@ -6711,6 +6852,13 @@ __metadata: languageName: node linkType: hard +"generator-function@npm:^2.0.0": + version: 2.0.1 + resolution: "generator-function@npm:2.0.1" + checksum: 10/eb7e7eb896c5433f3d40982b2ccacdb3dd990dd3499f14040e002b5d54572476513be8a2e6f9609f6e41ab29f2c4469307611ddbfc37ff4e46b765c326663805 + languageName: node + linkType: hard + "gensync@npm:^1.0.0-beta.2": version: 1.0.0-beta.2 resolution: "gensync@npm:1.0.0-beta.2" @@ -6725,16 +6873,24 @@ __metadata: languageName: node linkType: hard -"get-intrinsic@npm:^1.1.3, get-intrinsic@npm:^1.2.1, get-intrinsic@npm:^1.2.2, get-intrinsic@npm:^1.2.3, get-intrinsic@npm:^1.2.4": - version: 1.2.4 - resolution: "get-intrinsic@npm:1.2.4" +"get-intrinsic@npm:^1.2.4, get-intrinsic@npm:^1.2.5, get-intrinsic@npm:^1.2.7, get-intrinsic@npm:^1.3.0": + version: 1.3.1 + resolution: "get-intrinsic@npm:1.3.1" dependencies: + async-function: "npm:^1.0.0" + async-generator-function: "npm:^1.0.0" + call-bind-apply-helpers: "npm:^1.0.2" + es-define-property: "npm:^1.0.1" es-errors: "npm:^1.3.0" + es-object-atoms: "npm:^1.1.1" function-bind: "npm:^1.1.2" - has-proto: "npm:^1.0.1" - has-symbols: "npm:^1.0.3" - hasown: "npm:^2.0.0" - checksum: 10/85bbf4b234c3940edf8a41f4ecbd4e25ce78e5e6ad4e24ca2f77037d983b9ef943fd72f00f3ee97a49ec622a506b67db49c36246150377efcda1c9eb03e5f06d + generator-function: "npm:^2.0.0" + get-proto: "npm:^1.0.1" + gopd: "npm:^1.2.0" + has-symbols: "npm:^1.1.0" + hasown: "npm:^2.0.2" + math-intrinsics: "npm:^1.1.0" + checksum: 10/bb579dda84caa4a3a41611bdd483dade7f00f246f2a7992eb143c5861155290df3fdb48a8406efa3dfb0b434e2c8fafa4eebd469e409d0439247f85fc3fa2cc1 languageName: node linkType: hard @@ -6763,7 +6919,7 @@ __metadata: languageName: node linkType: hard -"get-proto@npm:^1.0.1": +"get-proto@npm:^1.0.0, get-proto@npm:^1.0.1": version: 1.0.1 resolution: "get-proto@npm:1.0.1" dependencies: @@ -6794,23 +6950,23 @@ __metadata: languageName: node linkType: hard -"get-symbol-description@npm:^1.0.2": - version: 1.0.2 - resolution: "get-symbol-description@npm:1.0.2" +"get-symbol-description@npm:^1.1.0": + version: 1.1.0 + resolution: "get-symbol-description@npm:1.1.0" dependencies: - call-bind: "npm:^1.0.5" + call-bound: "npm:^1.0.3" es-errors: "npm:^1.3.0" - get-intrinsic: "npm:^1.2.4" - checksum: 10/e1cb53bc211f9dbe9691a4f97a46837a553c4e7caadd0488dc24ac694db8a390b93edd412b48dcdd0b4bbb4c595de1709effc75fc87c0839deedc6968f5bd973 + get-intrinsic: "npm:^1.2.6" + checksum: 10/a353e3a9595a74720b40fb5bae3ba4a4f826e186e83814d93375182384265676f59e49998b9cdfac4a2225ce95a3d32a68f502a2c5619303987f1c183ab80494 languageName: node linkType: hard -"get-tsconfig@npm:^4.5.0": - version: 4.7.2 - resolution: "get-tsconfig@npm:4.7.2" +"get-tsconfig@npm:^4.10.1": + version: 4.13.0 + resolution: "get-tsconfig@npm:4.13.0" dependencies: resolve-pkg-maps: "npm:^1.0.0" - checksum: 10/f21135848fb5d16012269b7b34b186af7a41824830f8616aba17a15eb4d9e54fdc876833f1e21768395215a826c8145582f5acd594ae2b4de3284d10b38d20f8 + checksum: 10/3603c6da30e312636e4c20461e779114c9126601d1eca70ee4e36e3e3c00e3c21892d2d920027333afa2cc9e20998a436b14abe03a53cde40742581cb0e9ceb2 languageName: node linkType: hard @@ -6906,21 +7062,17 @@ __metadata: languageName: node linkType: hard -"globals@npm:^13.19.0": - version: 13.24.0 - resolution: "globals@npm:13.24.0" - dependencies: - type-fest: "npm:^0.20.2" - checksum: 10/62c5b1997d06674fc7191d3e01e324d3eda4d65ac9cc4e78329fa3b5c4fd42a0e1c8722822497a6964eee075255ce21ccf1eec2d83f92ef3f06653af4d0ee28e +"globals@npm:^14.0.0": + version: 14.0.0 + resolution: "globals@npm:14.0.0" + checksum: 10/03939c8af95c6df5014b137cac83aa909090c3a3985caef06ee9a5a669790877af8698ab38007e4c0186873adc14c0b13764acc754b16a754c216cc56aa5f021 languageName: node linkType: hard -"globalthis@npm:^1.0.3": - version: 1.0.3 - resolution: "globalthis@npm:1.0.3" - dependencies: - define-properties: "npm:^1.1.3" - checksum: 10/45ae2f3b40a186600d0368f2a880ae257e8278b4c7704f0417d6024105ad7f7a393661c5c2fa1334669cd485ea44bc883a08fdd4516df2428aec40c99f52aa89 +"globals@npm:^16.5.0": + version: 16.5.0 + resolution: "globals@npm:16.5.0" + checksum: 10/f9e8a2a13f50222c127030a619e283e7bbfe32966316bdde0715af1d15a7e40cb9c24ff52cad59671f97762ed8b515353c2f8674f560c63d9385f19ee26735a6 languageName: node linkType: hard @@ -6934,20 +7086,6 @@ __metadata: languageName: node linkType: hard -"globby@npm:^11.1.0": - version: 11.1.0 - resolution: "globby@npm:11.1.0" - dependencies: - array-union: "npm:^2.1.0" - dir-glob: "npm:^3.0.1" - fast-glob: "npm:^3.2.9" - ignore: "npm:^5.2.0" - merge2: "npm:^1.4.1" - slash: "npm:^3.0.0" - checksum: 10/288e95e310227bbe037076ea81b7c2598ccbc3122d87abc6dab39e1eec309aa14f0e366a98cdc45237ffcfcbad3db597778c0068217dcb1950fef6249104e1b1 - languageName: node - linkType: hard - "globby@npm:^14.0.0": version: 14.0.1 resolution: "globby@npm:14.0.1" @@ -6962,16 +7100,7 @@ __metadata: languageName: node linkType: hard -"gopd@npm:^1.0.1": - version: 1.0.1 - resolution: "gopd@npm:1.0.1" - dependencies: - get-intrinsic: "npm:^1.1.3" - checksum: 10/5fbc7ad57b368ae4cd2f41214bd947b045c1a4be2f194a7be1778d71f8af9dbf4004221f3b6f23e30820eb0d052b4f819fe6ebe8221e2a3c6f0ee4ef173421ca - languageName: node - linkType: hard - -"gopd@npm:^1.2.0": +"gopd@npm:^1.0.1, gopd@npm:^1.2.0": version: 1.2.0 resolution: "gopd@npm:1.2.0" checksum: 10/94e296d69f92dc1c0768fcfeecfb3855582ab59a7c75e969d5f96ce50c3d201fd86d5a2857c22565764d5bb8a816c7b1e58f133ec318cd56274da36c5e3fb1a1 @@ -7017,10 +7146,10 @@ __metadata: languageName: node linkType: hard -"has-bigints@npm:^1.0.1, has-bigints@npm:^1.0.2": - version: 1.0.2 - resolution: "has-bigints@npm:1.0.2" - checksum: 10/4e0426c900af034d12db14abfece02ce7dbf53f2022d28af1a97913ff4c07adb8799476d57dc44fbca0e07d1dbda2a042c2928b1f33d3f09c15de0640a7fb81b +"has-bigints@npm:^1.0.2": + version: 1.1.0 + resolution: "has-bigints@npm:1.1.0" + checksum: 10/90fb1b24d40d2472bcd1c8bd9dd479037ec240215869bdbff97b2be83acef57d28f7e96bdd003a21bed218d058b49097f4acc8821c05b1629cc5d48dd7bfcccd languageName: node linkType: hard @@ -7038,7 +7167,7 @@ __metadata: languageName: node linkType: hard -"has-property-descriptors@npm:^1.0.0, has-property-descriptors@npm:^1.0.1, has-property-descriptors@npm:^1.0.2": +"has-property-descriptors@npm:^1.0.0, has-property-descriptors@npm:^1.0.2": version: 1.0.2 resolution: "has-property-descriptors@npm:1.0.2" dependencies: @@ -7047,21 +7176,16 @@ __metadata: languageName: node linkType: hard -"has-proto@npm:^1.0.1": - version: 1.0.1 - resolution: "has-proto@npm:1.0.1" - checksum: 10/eab2ab0ed1eae6d058b9bbc4c1d99d2751b29717be80d02fd03ead8b62675488de0c7359bc1fdd4b87ef6fd11e796a9631ad4d7452d9324fdada70158c2e5be7 - languageName: node - linkType: hard - -"has-proto@npm:^1.0.3": - version: 1.0.3 - resolution: "has-proto@npm:1.0.3" - checksum: 10/0b67c2c94e3bea37db3e412e3c41f79d59259875e636ba471e94c009cdfb1fa82bf045deeffafc7dbb9c148e36cae6b467055aaa5d9fad4316e11b41e3ba551a +"has-proto@npm:^1.2.0": + version: 1.2.0 + resolution: "has-proto@npm:1.2.0" + dependencies: + dunder-proto: "npm:^1.0.0" + checksum: 10/7eaed07728eaa28b77fadccabce53f30de467ff186a766872669a833ac2e87d8922b76a22cc58339d7e0277aefe98d6d00762113b27a97cdf65adcf958970935 languageName: node linkType: hard -"has-symbols@npm:^1.0.2, has-symbols@npm:^1.0.3": +"has-symbols@npm:^1.0.3": version: 1.0.3 resolution: "has-symbols@npm:1.0.3" checksum: 10/464f97a8202a7690dadd026e6d73b1ceeddd60fe6acfd06151106f050303eaa75855aaa94969df8015c11ff7c505f196114d22f7386b4a471038da5874cf5e9b @@ -7075,7 +7199,7 @@ __metadata: languageName: node linkType: hard -"has-tostringtag@npm:^1.0.0, has-tostringtag@npm:^1.0.1, has-tostringtag@npm:^1.0.2": +"has-tostringtag@npm:^1.0.2": version: 1.0.2 resolution: "has-tostringtag@npm:1.0.2" dependencies: @@ -7091,7 +7215,7 @@ __metadata: languageName: node linkType: hard -"hasown@npm:^2.0.0, hasown@npm:^2.0.1": +"hasown@npm:^2.0.0": version: 2.0.1 resolution: "hasown@npm:2.0.1" dependencies: @@ -7191,6 +7315,13 @@ __metadata: languageName: node linkType: hard +"html-entities@npm:^2.6.0": + version: 2.6.0 + resolution: "html-entities@npm:2.6.0" + checksum: 10/06d4e7a3ba6243bba558af176e56f85e09894b26d911bc1ef7b2b9b3f18b46604360805b32636f080e954778e9a34313d1982479a05a5aa49791afd6a4229346 + languageName: node + linkType: hard + "html-escaper@npm:^2.0.0": version: 2.0.2 resolution: "html-escaper@npm:2.0.2" @@ -7286,13 +7417,27 @@ __metadata: languageName: node linkType: hard -"ignore@npm:^5.2.0, ignore@npm:^5.2.4": +"ignore@npm:^5.2.0": + version: 5.3.2 + resolution: "ignore@npm:5.3.2" + checksum: 10/cceb6a457000f8f6a50e1196429750d782afce5680dd878aa4221bd79972d68b3a55b4b1458fc682be978f4d3c6a249046aa0880637367216444ab7b014cfc98 + languageName: node + linkType: hard + +"ignore@npm:^5.2.4": version: 5.3.1 resolution: "ignore@npm:5.3.1" checksum: 10/0a884c2fbc8c316f0b9f92beaf84464253b73230a4d4d286697be45fca081199191ca33e1c2e82d9e5f851f5e9a48a78e25a35c951e7eb41e59f150db3530065 languageName: node linkType: hard +"ignore@npm:^7.0.0": + version: 7.0.5 + resolution: "ignore@npm:7.0.5" + checksum: 10/f134b96a4de0af419196f52c529d5c6120c4456ff8a6b5a14ceaaa399f883e15d58d2ce651c9b69b9388491d4669dda47285d307e827de9304a53a1824801bc6 + languageName: node + linkType: hard + "image-size@npm:^1.0.2": version: 1.2.1 resolution: "image-size@npm:1.2.1" @@ -7314,7 +7459,17 @@ __metadata: languageName: node linkType: hard -"import-fresh@npm:^3.2.1, import-fresh@npm:^3.3.0": +"import-fresh@npm:^3.2.1": + version: 3.3.1 + resolution: "import-fresh@npm:3.3.1" + dependencies: + parent-module: "npm:^1.0.0" + resolve-from: "npm:^4.0.0" + checksum: 10/a06b19461b4879cc654d46f8a6244eb55eb053437afd4cbb6613cad6be203811849ed3e4ea038783092879487299fda24af932b86bdfff67c9055ba3612b8c87 + languageName: node + linkType: hard + +"import-fresh@npm:^3.3.0": version: 3.3.0 resolution: "import-fresh@npm:3.3.0" dependencies: @@ -7448,14 +7603,14 @@ __metadata: languageName: node linkType: hard -"internal-slot@npm:^1.0.7": - version: 1.0.7 - resolution: "internal-slot@npm:1.0.7" +"internal-slot@npm:^1.1.0": + version: 1.1.0 + resolution: "internal-slot@npm:1.1.0" dependencies: es-errors: "npm:^1.3.0" - hasown: "npm:^2.0.0" - side-channel: "npm:^1.0.4" - checksum: 10/3e66720508831153ecf37d13def9f6856f9f2960989ec8a0a0476c98f887fca9eff0163127466485cb825c900c2d6fc601aa9117b7783b90ffce23a71ea5d053 + hasown: "npm:^2.0.2" + side-channel: "npm:^1.1.0" + checksum: 10/1d5219273a3dab61b165eddf358815eefc463207db33c20fcfca54717da02e3f492003757721f972fd0bf21e4b426cab389c5427b99ceea4b8b670dc88ee6d4a languageName: node linkType: hard @@ -7495,13 +7650,14 @@ __metadata: languageName: node linkType: hard -"is-array-buffer@npm:^3.0.4": - version: 3.0.4 - resolution: "is-array-buffer@npm:3.0.4" +"is-array-buffer@npm:^3.0.4, is-array-buffer@npm:^3.0.5": + version: 3.0.5 + resolution: "is-array-buffer@npm:3.0.5" dependencies: - call-bind: "npm:^1.0.2" - get-intrinsic: "npm:^1.2.1" - checksum: 10/34a26213d981d58b30724ef37a1e0682f4040d580fa9ff58fdfdd3cefcb2287921718c63971c1c404951e7b747c50fdc7caf6e867e951353fa71b369c04c969b + call-bind: "npm:^1.0.8" + call-bound: "npm:^1.0.3" + get-intrinsic: "npm:^1.2.6" + checksum: 10/ef1095c55b963cd0dcf6f88a113e44a0aeca91e30d767c475e7d746d28d1195b10c5076b94491a7a0cd85020ca6a4923070021d74651d093dc909e9932cf689b languageName: node linkType: hard @@ -7513,20 +7669,24 @@ __metadata: linkType: hard "is-async-function@npm:^2.0.0": - version: 2.0.0 - resolution: "is-async-function@npm:2.0.0" + version: 2.1.1 + resolution: "is-async-function@npm:2.1.1" dependencies: - has-tostringtag: "npm:^1.0.0" - checksum: 10/2cf336fbf8cba3badcf526aa3d10384c30bab32615ac4831b74492eb4e843ccb7d8439a119c27f84bcf217d72024e611b1373f870f433b48f3fa57d3d1b863f1 + async-function: "npm:^1.0.0" + call-bound: "npm:^1.0.3" + get-proto: "npm:^1.0.1" + has-tostringtag: "npm:^1.0.2" + safe-regex-test: "npm:^1.1.0" + checksum: 10/7c2ac7efdf671e03265e74a043bcb1c0a32e226bc2a42dfc5ec8644667df668bbe14b91c08e6c1414f392f8cf86cd1d489b3af97756e2c7a49dd1ba63fd40ca6 languageName: node linkType: hard -"is-bigint@npm:^1.0.1": - version: 1.0.4 - resolution: "is-bigint@npm:1.0.4" +"is-bigint@npm:^1.1.0": + version: 1.1.0 + resolution: "is-bigint@npm:1.1.0" dependencies: - has-bigints: "npm:^1.0.1" - checksum: 10/cc981cf0564c503aaccc1e5f39e994ae16ae2d1a8fcd14721f14ad431809071f39ec568cfceef901cff408045f1a6d6bac90d1b43eeb0b8e3bc34c8eb1bdb4c4 + has-bigints: "npm:^1.0.2" + checksum: 10/10cf327310d712fe227cfaa32d8b11814c214392b6ac18c827f157e1e85363cf9c8e2a22df526689bd5d25e53b58cc110894787afb54e138e7c504174dba15fd languageName: node linkType: hard @@ -7539,26 +7699,26 @@ __metadata: languageName: node linkType: hard -"is-boolean-object@npm:^1.1.0": - version: 1.1.2 - resolution: "is-boolean-object@npm:1.1.2" +"is-boolean-object@npm:^1.2.1": + version: 1.2.2 + resolution: "is-boolean-object@npm:1.2.2" dependencies: - call-bind: "npm:^1.0.2" - has-tostringtag: "npm:^1.0.0" - checksum: 10/ba794223b56a49a9f185e945eeeb6b7833b8ea52a335cec087d08196cf27b538940001615d3bb976511287cefe94e5907d55f00bb49580533f9ca9b4515fcc2e + call-bound: "npm:^1.0.3" + has-tostringtag: "npm:^1.0.2" + checksum: 10/051fa95fdb99d7fbf653165a7e6b2cba5d2eb62f7ffa81e793a790f3fb5366c91c1b7b6af6820aa2937dd86c73aa3ca9d9ca98f500988457b1c59692c52ba911 languageName: node linkType: hard -"is-builtin-module@npm:^3.2.1": - version: 3.2.1 - resolution: "is-builtin-module@npm:3.2.1" +"is-bun-module@npm:^2.0.0": + version: 2.0.0 + resolution: "is-bun-module@npm:2.0.0" dependencies: - builtin-modules: "npm:^3.3.0" - checksum: 10/e8f0ffc19a98240bda9c7ada84d846486365af88d14616e737d280d378695c8c448a621dcafc8332dbf0fcd0a17b0763b845400709963fa9151ddffece90ae88 + semver: "npm:^7.7.1" + checksum: 10/cded5a1a58368b847872d08617975d620ad94426d76a932f3e08d55b4574d199e0a62a4fb024fa2dc444200b71719eb0bffc5d3d1e1cc82e29b293bb8d66a990 languageName: node linkType: hard -"is-callable@npm:^1.1.3, is-callable@npm:^1.1.4, is-callable@npm:^1.2.7": +"is-callable@npm:^1.2.7": version: 1.2.7 resolution: "is-callable@npm:1.2.7" checksum: 10/48a9297fb92c99e9df48706241a189da362bff3003354aea4048bd5f7b2eb0d823cd16d0a383cece3d76166ba16d85d9659165ac6fcce1ac12e6c649d66dbdb9 @@ -7574,7 +7734,7 @@ __metadata: languageName: node linkType: hard -"is-core-module@npm:^2.11.0, is-core-module@npm:^2.13.0, is-core-module@npm:^2.13.1, is-core-module@npm:^2.8.1": +"is-core-module@npm:^2.13.0, is-core-module@npm:^2.8.1": version: 2.13.1 resolution: "is-core-module@npm:2.13.1" dependencies: @@ -7583,21 +7743,33 @@ __metadata: languageName: node linkType: hard -"is-data-view@npm:^1.0.1": - version: 1.0.1 - resolution: "is-data-view@npm:1.0.1" +"is-core-module@npm:^2.16.1": + version: 2.16.1 + resolution: "is-core-module@npm:2.16.1" dependencies: + hasown: "npm:^2.0.2" + checksum: 10/452b2c2fb7f889cbbf7e54609ef92cf6c24637c568acc7e63d166812a0fb365ae8a504c333a29add8bdb1686704068caa7f4e4b639b650dde4f00a038b8941fb + languageName: node + linkType: hard + +"is-data-view@npm:^1.0.1, is-data-view@npm:^1.0.2": + version: 1.0.2 + resolution: "is-data-view@npm:1.0.2" + dependencies: + call-bound: "npm:^1.0.2" + get-intrinsic: "npm:^1.2.6" is-typed-array: "npm:^1.1.13" - checksum: 10/4ba4562ac2b2ec005fefe48269d6bd0152785458cd253c746154ffb8a8ab506a29d0cfb3b74af87513843776a88e4981ae25c89457bf640a33748eab1a7216b5 + checksum: 10/357e9a48fa38f369fd6c4c3b632a3ab2b8adca14997db2e4b3fe94c4cd0a709af48e0fb61b02c64a90c0dd542fd489d49c2d03157b05ae6c07f5e4dec9e730a8 languageName: node linkType: hard -"is-date-object@npm:^1.0.1, is-date-object@npm:^1.0.5": - version: 1.0.5 - resolution: "is-date-object@npm:1.0.5" +"is-date-object@npm:^1.0.5, is-date-object@npm:^1.1.0": + version: 1.1.0 + resolution: "is-date-object@npm:1.1.0" dependencies: - has-tostringtag: "npm:^1.0.0" - checksum: 10/cc80b3a4b42238fa0d358b9a6230dae40548b349e64a477cb7c5eff9b176ba194c11f8321daaf6dd157e44073e9b7fd01f87db1f14952a88d5657acdcd3a56e2 + call-bound: "npm:^1.0.2" + has-tostringtag: "npm:^1.0.2" + checksum: 10/3a811b2c3176fb31abee1d23d3dc78b6c65fd9c07d591fcb67553cab9e7f272728c3dd077d2d738b53f9a2103255b0a6e8dfc9568a7805c56a78b2563e8d1dec languageName: node linkType: hard @@ -7624,12 +7796,12 @@ __metadata: languageName: node linkType: hard -"is-finalizationregistry@npm:^1.0.2": - version: 1.0.2 - resolution: "is-finalizationregistry@npm:1.0.2" +"is-finalizationregistry@npm:^1.1.0": + version: 1.1.1 + resolution: "is-finalizationregistry@npm:1.1.1" dependencies: - call-bind: "npm:^1.0.2" - checksum: 10/1b8e9e1bf2075e862315ef9d38ce6d39c43ca9d81d46f73b34473506992f4b0fbaadb47ec9b420a5e76afe3f564d9f1f0d9b552ef272cc2395e0f21d743c9c29 + call-bound: "npm:^1.0.3" + checksum: 10/0bfb145e9a1ba852ddde423b0926d2169ae5fe9e37882cde9e8f69031281a986308df4d982283e152396e88b86562ed2256cbaa5e6390fb840a4c25ab54b8a80 languageName: node linkType: hard @@ -7655,11 +7827,15 @@ __metadata: linkType: hard "is-generator-function@npm:^1.0.10": - version: 1.0.10 - resolution: "is-generator-function@npm:1.0.10" + version: 1.1.2 + resolution: "is-generator-function@npm:1.1.2" dependencies: - has-tostringtag: "npm:^1.0.0" - checksum: 10/499a3ce6361064c3bd27fbff5c8000212d48506ebe1977842bbd7b3e708832d0deb1f4cc69186ece3640770e8c4f1287b24d99588a0b8058b2dbdd344bc1f47f + call-bound: "npm:^1.0.4" + generator-function: "npm:^2.0.0" + get-proto: "npm:^1.0.1" + has-tostringtag: "npm:^1.0.2" + safe-regex-test: "npm:^1.1.0" + checksum: 10/cc50fa01034356bdfda26983c5457103240f201f4663c0de1257802714e40d36bcff7aee21091d37bbba4be962fa5c6475ce7ddbc0abfa86d6bef466e41e50a5 languageName: node linkType: hard @@ -7693,13 +7869,6 @@ __metadata: languageName: node linkType: hard -"is-negative-zero@npm:^2.0.2": - version: 2.0.2 - resolution: "is-negative-zero@npm:2.0.2" - checksum: 10/edbec1a9e6454d68bf595a114c3a72343d2d0be7761d8173dae46c0b73d05bb8fe9398c85d121e7794a66467d2f40b4a610b0be84cd804262d234fc634c86131 - languageName: node - linkType: hard - "is-negative-zero@npm:^2.0.3": version: 2.0.3 resolution: "is-negative-zero@npm:2.0.3" @@ -7707,12 +7876,13 @@ __metadata: languageName: node linkType: hard -"is-number-object@npm:^1.0.4": - version: 1.0.7 - resolution: "is-number-object@npm:1.0.7" +"is-number-object@npm:^1.1.1": + version: 1.1.1 + resolution: "is-number-object@npm:1.1.1" dependencies: - has-tostringtag: "npm:^1.0.0" - checksum: 10/8700dcf7f602e0a9625830541345b8615d04953655acbf5c6d379c58eb1af1465e71227e95d501343346e1d49b6f2d53cbc166b1fc686a7ec19151272df582f9 + call-bound: "npm:^1.0.3" + has-tostringtag: "npm:^1.0.2" + checksum: 10/a5922fb8779ab1ea3b8a9c144522b3d0bea5d9f8f23f7a72470e61e1e4df47714e28e0154ac011998b709cce260c3c9447ad3cd24a96c2f2a0abfdb2cbdc76c8 languageName: node linkType: hard @@ -7730,13 +7900,6 @@ __metadata: languageName: node linkType: hard -"is-path-inside@npm:^3.0.3": - version: 3.0.3 - resolution: "is-path-inside@npm:3.0.3" - checksum: 10/abd50f06186a052b349c15e55b182326f1936c89a78bf6c8f2b707412517c097ce04bc49a0ca221787bc44e1049f51f09a2ffb63d22899051988d3a618ba13e9 - languageName: node - linkType: hard - "is-plain-obj@npm:^2.1.0": version: 2.1.0 resolution: "is-plain-obj@npm:2.1.0" @@ -7760,13 +7923,15 @@ __metadata: languageName: node linkType: hard -"is-regex@npm:^1.1.4": - version: 1.1.4 - resolution: "is-regex@npm:1.1.4" +"is-regex@npm:^1.2.1": + version: 1.2.1 + resolution: "is-regex@npm:1.2.1" dependencies: - call-bind: "npm:^1.0.2" - has-tostringtag: "npm:^1.0.0" - checksum: 10/36d9174d16d520b489a5e9001d7d8d8624103b387be300c50f860d9414556d0485d74a612fdafc6ebbd5c89213d947dcc6b6bff6b2312093f71ea03cbb19e564 + call-bound: "npm:^1.0.2" + gopd: "npm:^1.2.0" + has-tostringtag: "npm:^1.0.2" + hasown: "npm:^2.0.2" + checksum: 10/c42b7efc5868a5c9a4d8e6d3e9816e8815c611b09535c00fead18a1138455c5cb5e1887f0023a467ad3f9c419d62ba4dc3d9ba8bafe55053914d6d6454a945d2 languageName: node linkType: hard @@ -7777,21 +7942,12 @@ __metadata: languageName: node linkType: hard -"is-shared-array-buffer@npm:^1.0.2": - version: 1.0.2 - resolution: "is-shared-array-buffer@npm:1.0.2" - dependencies: - call-bind: "npm:^1.0.2" - checksum: 10/23d82259d6cd6dbb7c4ff3e4efeff0c30dbc6b7f88698498c17f9821cb3278d17d2b6303a5341cbd638ab925a28f3f086a6c79b3df70ac986cc526c725d43b4f - languageName: node - linkType: hard - -"is-shared-array-buffer@npm:^1.0.3": - version: 1.0.3 - resolution: "is-shared-array-buffer@npm:1.0.3" +"is-shared-array-buffer@npm:^1.0.4": + version: 1.0.4 + resolution: "is-shared-array-buffer@npm:1.0.4" dependencies: - call-bind: "npm:^1.0.7" - checksum: 10/bc5402900dc62b96ebb2548bf5b0a0bcfacc2db122236fe3ab3b3e3c884293a0d5eb777e73f059bcbf8dc8563bb65eae972fee0fb97e38a9ae27c8678f62bcfe + call-bound: "npm:^1.0.3" + checksum: 10/0380d7c60cc692856871526ffcd38a8133818a2ee42d47bb8008248a0cd2121d8c8b5f66b6da3cac24bc5784553cacb6faaf678f66bc88c6615b42af2825230e languageName: node linkType: hard @@ -7809,21 +7965,24 @@ __metadata: languageName: node linkType: hard -"is-string@npm:^1.0.5, is-string@npm:^1.0.7": - version: 1.0.7 - resolution: "is-string@npm:1.0.7" +"is-string@npm:^1.1.1": + version: 1.1.1 + resolution: "is-string@npm:1.1.1" dependencies: - has-tostringtag: "npm:^1.0.0" - checksum: 10/2bc292fe927493fb6dfc3338c099c3efdc41f635727c6ebccf704aeb2a27bca7acb9ce6fd34d103db78692b10b22111a8891de26e12bfa1c5e11e263c99d1fef + call-bound: "npm:^1.0.3" + has-tostringtag: "npm:^1.0.2" + checksum: 10/5277cb9e225a7cc8a368a72623b44a99f2cfa139659c6b203553540681ad4276bfc078420767aad0e73eef5f0bd07d4abf39a35d37ec216917879d11cebc1f8b languageName: node linkType: hard -"is-symbol@npm:^1.0.2, is-symbol@npm:^1.0.3": - version: 1.0.4 - resolution: "is-symbol@npm:1.0.4" +"is-symbol@npm:^1.0.4, is-symbol@npm:^1.1.1": + version: 1.1.1 + resolution: "is-symbol@npm:1.1.1" dependencies: - has-symbols: "npm:^1.0.2" - checksum: 10/a47dd899a84322528b71318a89db25c7ecdec73197182dad291df15ffea501e17e3c92c8de0bfb50e63402747399981a687b31c519971b1fa1a27413612be929 + call-bound: "npm:^1.0.2" + has-symbols: "npm:^1.1.0" + safe-regex-test: "npm:^1.1.0" + checksum: 10/db495c0d8cd0a7a66b4f4ef7fccee3ab5bd954cb63396e8ac4d32efe0e9b12fdfceb851d6c501216a71f4f21e5ff20fc2ee845a3d52d455e021c466ac5eb2db2 languageName: node linkType: hard @@ -7836,12 +7995,12 @@ __metadata: languageName: node linkType: hard -"is-typed-array@npm:^1.1.10, is-typed-array@npm:^1.1.13, is-typed-array@npm:^1.1.9": - version: 1.1.13 - resolution: "is-typed-array@npm:1.1.13" +"is-typed-array@npm:^1.1.13, is-typed-array@npm:^1.1.14, is-typed-array@npm:^1.1.15": + version: 1.1.15 + resolution: "is-typed-array@npm:1.1.15" dependencies: - which-typed-array: "npm:^1.1.14" - checksum: 10/f850ba08286358b9a11aee6d93d371a45e3c59b5953549ee1c1a9a55ba5c1dd1bd9952488ae194ad8f32a9cf5e79c8fa5f0cc4d78c00720aa0bbcf238b38062d + which-typed-array: "npm:^1.1.16" + checksum: 10/e8cf60b9ea85667097a6ad68c209c9722cfe8c8edf04d6218366469e51944c5cc25bae45ffb845c23f811d262e4314d3b0168748eb16711aa34d12724cdf0735 languageName: node linkType: hard @@ -7866,22 +8025,22 @@ __metadata: languageName: node linkType: hard -"is-weakref@npm:^1.0.2": - version: 1.0.2 - resolution: "is-weakref@npm:1.0.2" +"is-weakref@npm:^1.0.2, is-weakref@npm:^1.1.1": + version: 1.1.1 + resolution: "is-weakref@npm:1.1.1" dependencies: - call-bind: "npm:^1.0.2" - checksum: 10/0023fd0e4bdf9c338438ffbe1eed7ebbbff7e7e18fb7cdc227caaf9d4bd024a2dcdf6a8c9f40c92192022eac8391243bb9e66cccebecbf6fe1d8a366108f8513 + call-bound: "npm:^1.0.3" + checksum: 10/543506fd8259038b371bb083aac25b16cb4fd8b12fc58053aa3d45ac28dfd001cd5c6dffbba7aeea4213c74732d46b6cb2cfb5b412eed11f2db524f3f97d09a0 languageName: node linkType: hard "is-weakset@npm:^2.0.3": - version: 2.0.3 - resolution: "is-weakset@npm:2.0.3" + version: 2.0.4 + resolution: "is-weakset@npm:2.0.4" dependencies: - call-bind: "npm:^1.0.7" - get-intrinsic: "npm:^1.2.4" - checksum: 10/40159582ff1b44fc40085f631baf19f56479b05af2faede65b4e6a0b6acab745c13fd070e35b475aafd8a1ee50879ba5a3f1265125b46bebdb446b6be1f62165 + call-bound: "npm:^1.0.3" + get-intrinsic: "npm:^1.2.6" + checksum: 10/1d5e1d0179beeed3661125a6faa2e59bfb48afda06fc70db807f178aa0ebebc3758fb6358d76b3d528090d5ef85148c345dcfbf90839592fe293e3e5e82f2134 languageName: node linkType: hard @@ -8014,16 +8173,17 @@ __metadata: languageName: node linkType: hard -"iterator.prototype@npm:^1.1.3": - version: 1.1.3 - resolution: "iterator.prototype@npm:1.1.3" +"iterator.prototype@npm:^1.1.4": + version: 1.1.5 + resolution: "iterator.prototype@npm:1.1.5" dependencies: - define-properties: "npm:^1.2.1" - get-intrinsic: "npm:^1.2.1" - has-symbols: "npm:^1.0.3" - reflect.getprototypeof: "npm:^1.0.4" - set-function-name: "npm:^2.0.1" - checksum: 10/1a2a508d3baac121b76c834404ff552d1bb96a173b1d74ff947b2c5763840c0b1e5be01be7e2183a19b08e99e38729812668ff1f23b35f6655a366017bc32519 + define-data-property: "npm:^1.1.4" + es-object-atoms: "npm:^1.0.0" + get-intrinsic: "npm:^1.2.6" + get-proto: "npm:^1.0.0" + has-symbols: "npm:^1.1.0" + set-function-name: "npm:^2.0.2" + checksum: 10/352bcf333f42189e65cc8cb2dcb94a5c47cf0a9110ce12aba788d405a980b5f5f3a06c79bf915377e1d480647169babd842ded0d898bed181bf6686e8e6823f6 languageName: node linkType: hard @@ -8581,10 +8741,10 @@ __metadata: languageName: node linkType: hard -"jsdoc-type-pratt-parser@npm:~4.0.0": - version: 4.0.0 - resolution: "jsdoc-type-pratt-parser@npm:4.0.0" - checksum: 10/a225ab874e56612730dd6c0466ce9f09e8a0e7d85896e9e5f0fa53cfb2e897128a7ec702fd99ed3854b3fbf5a89ad6dce72ca4f4f6149da69f130c2874f06b75 +"jsdoc-type-pratt-parser@npm:~6.10.0": + version: 6.10.0 + resolution: "jsdoc-type-pratt-parser@npm:6.10.0" + checksum: 10/c9f12f33a14edd7755b119e98d19c0bd062e9bb6dc0cd9d326ed9d768d4aaaaf2aca8f04086cef2db9c83cd5664c435f9682fde78e24b7ecba7f272f8787613f languageName: node linkType: hard @@ -8775,6 +8935,13 @@ __metadata: languageName: node linkType: hard +"jsx-ast-utils-x@npm:0.1.0": + version: 0.1.0 + resolution: "jsx-ast-utils-x@npm:0.1.0" + checksum: 10/ca28d2f2c9cf7e1c971f4a21d1f73197bb528659a9da50ab84065cdeedad422dacdf835e83cbc4264da4d84d41303f0c8fcca78d430d3fdbf22e10b7c7bf4724 + languageName: node + linkType: hard + "jsx-ast-utils@npm:^2.4.1 || ^3.0.0": version: 3.3.5 resolution: "jsx-ast-utils@npm:3.3.5" @@ -8808,7 +8975,7 @@ __metadata: languageName: node linkType: hard -"keyv@npm:^4.5.3": +"keyv@npm:^4.5.4": version: 4.5.4 resolution: "keyv@npm:4.5.4" dependencies: @@ -9113,7 +9280,7 @@ __metadata: languageName: node linkType: hard -"lodash.merge@npm:^4.6.2": +"lodash.merge@npm:4.6.2, lodash.merge@npm:^4.6.2": version: 4.6.2 resolution: "lodash.merge@npm:4.6.2" checksum: 10/d0ea2dd0097e6201be083865d50c3fb54fbfbdb247d9cc5950e086c991f448b7ab0cdab0d57eacccb43473d3f2acd21e134db39f22dac2d6c9ba6bf26978e3d6 @@ -9346,7 +9513,7 @@ __metadata: languageName: node linkType: hard -"merge2@npm:^1.3.0, merge2@npm:^1.4.1": +"merge2@npm:^1.3.0": version: 1.4.1 resolution: "merge2@npm:1.4.1" checksum: 10/7268db63ed5169466540b6fb947aec313200bcf6d40c5ab722c22e242f651994619bcd85601602972d3c85bd2cc45a358a4c61937e9f11a061919a1da569b0c2 @@ -9675,12 +9842,12 @@ __metadata: languageName: node linkType: hard -"minimatch@npm:9.0.3, minimatch@npm:^9.0.0, minimatch@npm:^9.0.1, minimatch@npm:^9.0.3": - version: 9.0.3 - resolution: "minimatch@npm:9.0.3" +"minimatch@npm:9.0.5, minimatch@npm:^9.0.4": + version: 9.0.5 + resolution: "minimatch@npm:9.0.5" dependencies: brace-expansion: "npm:^2.0.1" - checksum: 10/c81b47d28153e77521877649f4bab48348d10938df9e8147a58111fe00ef89559a2938de9f6632910c4f7bf7bb5cd81191a546167e58d357f0cfb1e18cecc1c5 + checksum: 10/dd6a8927b063aca6d910b119e1f2df6d2ce7d36eab91de83167dd136bb85e1ebff97b0d3de1cb08bd1f7e018ca170b4962479fefab5b2a69e2ae12cb2edc8348 languageName: node linkType: hard @@ -9693,7 +9860,7 @@ __metadata: languageName: node linkType: hard -"minimatch@npm:^3.0.2, minimatch@npm:^3.0.4, minimatch@npm:^3.0.5, minimatch@npm:^3.1.1, minimatch@npm:^3.1.2": +"minimatch@npm:^3.0.2, minimatch@npm:^3.0.4, minimatch@npm:^3.1.1, minimatch@npm:^3.1.2": version: 3.1.2 resolution: "minimatch@npm:3.1.2" dependencies: @@ -9711,6 +9878,15 @@ __metadata: languageName: node linkType: hard +"minimatch@npm:^9.0.0, minimatch@npm:^9.0.1, minimatch@npm:^9.0.3": + version: 9.0.3 + resolution: "minimatch@npm:9.0.3" + dependencies: + brace-expansion: "npm:^2.0.1" + checksum: 10/c81b47d28153e77521877649f4bab48348d10938df9e8147a58111fe00ef89559a2938de9f6632910c4f7bf7bb5cd81191a546167e58d357f0cfb1e18cecc1c5 + languageName: node + linkType: hard + "minimist@npm:^1.2.0, minimist@npm:^1.2.5, minimist@npm:^1.2.6": version: 1.2.8 resolution: "minimist@npm:1.2.8" @@ -9916,6 +10092,15 @@ __metadata: languageName: node linkType: hard +"napi-postinstall@npm:^0.3.0": + version: 0.3.4 + resolution: "napi-postinstall@npm:0.3.4" + bin: + napi-postinstall: lib/cli.js + checksum: 10/5541381508f9e1051ff3518701c7130ebac779abb3a1ffe9391fcc3cab4cc0569b0ba0952357db3f6b12909c3bb508359a7a60261ffd795feebbdab967175832 + languageName: node + linkType: hard + "natural-compare@npm:^1.4.0": version: 1.4.0 resolution: "natural-compare@npm:1.4.0" @@ -9923,6 +10108,13 @@ __metadata: languageName: node linkType: hard +"natural-orderby@npm:^5.0.0": + version: 5.0.0 + resolution: "natural-orderby@npm:5.0.0" + checksum: 10/7620051a2d79af81ac6bce96f6bdec45c291d4acc1d709d62d7a6648b01cda4e751415d63bc71060ce8ab223dbf3ce013f229ee683ea651868f36ea4008d0dbe + languageName: node + linkType: hard + "negotiator@npm:0.6.3, negotiator@npm:^0.6.3": version: 0.6.3 resolution: "negotiator@npm:0.6.3" @@ -10336,10 +10528,17 @@ __metadata: languageName: node linkType: hard -"object-inspect@npm:^1.13.1": - version: 1.13.1 - resolution: "object-inspect@npm:1.13.1" - checksum: 10/92f4989ed83422d56431bc39656d4c780348eb15d397ce352ade6b7fec08f973b53744bd41b94af021901e61acaf78fcc19e65bf464ecc0df958586a672700f0 +"object-deep-merge@npm:^2.0.0": + version: 2.0.0 + resolution: "object-deep-merge@npm:2.0.0" + checksum: 10/d2f9aa0b2160118f3e261fe51634a958b9f19993f64479911df3d3b4daa0212cb01bf2a7cf2c3ab1a1830cc167151a408ecf8c3e47efa44343b516777d6ef11c + languageName: node + linkType: hard + +"object-inspect@npm:^1.13.3, object-inspect@npm:^1.13.4": + version: 1.13.4 + resolution: "object-inspect@npm:1.13.4" + checksum: 10/aa13b1190ad3e366f6c83ad8a16ed37a19ed57d267385aa4bfdccda833d7b90465c057ff6c55d035a6b2e52c1a2295582b294217a0a3a1ae7abdd6877ef781fb languageName: node linkType: hard @@ -10350,37 +10549,29 @@ __metadata: languageName: node linkType: hard -"object.assign@npm:^4.1.4, object.assign@npm:^4.1.5": - version: 4.1.5 - resolution: "object.assign@npm:4.1.5" +"object.assign@npm:^4.1.4, object.assign@npm:^4.1.7": + version: 4.1.7 + resolution: "object.assign@npm:4.1.7" dependencies: - call-bind: "npm:^1.0.5" + call-bind: "npm:^1.0.8" + call-bound: "npm:^1.0.3" define-properties: "npm:^1.2.1" - has-symbols: "npm:^1.0.3" + es-object-atoms: "npm:^1.0.0" + has-symbols: "npm:^1.1.0" object-keys: "npm:^1.1.1" - checksum: 10/dbb22da4cda82e1658349ea62b80815f587b47131b3dd7a4ab7f84190ab31d206bbd8fe7e26ae3220c55b65725ac4529825f6142154211220302aa6b1518045d + checksum: 10/3fe28cdd779f2a728a9a66bd688679ba231a2b16646cd1e46b528fe7c947494387dda4bc189eff3417f3717ef4f0a8f2439347cf9a9aa3cef722fbfd9f615587 languageName: node linkType: hard -"object.entries@npm:^1.1.8": - version: 1.1.8 - resolution: "object.entries@npm:1.1.8" +"object.entries@npm:^1.1.9": + version: 1.1.9 + resolution: "object.entries@npm:1.1.9" dependencies: - call-bind: "npm:^1.0.7" + call-bind: "npm:^1.0.8" + call-bound: "npm:^1.0.4" define-properties: "npm:^1.2.1" - es-object-atoms: "npm:^1.0.0" - checksum: 10/2301918fbd1ee697cf6ff7cd94f060c738c0a7d92b22fd24c7c250e9b593642c9707ad2c44d339303c1439c5967d8964251cdfc855f7f6ec55db2dd79e8dc2a7 - languageName: node - linkType: hard - -"object.fromentries@npm:^2.0.7": - version: 2.0.7 - resolution: "object.fromentries@npm:2.0.7" - dependencies: - call-bind: "npm:^1.0.2" - define-properties: "npm:^1.2.0" - es-abstract: "npm:^1.22.1" - checksum: 10/1bfbe42a51f8d84e417d193fae78e4b8eebb134514cdd44406480f8e8a0e075071e0717635d8e3eccd50fec08c1d555fe505c38804cbac0808397187653edd59 + es-object-atoms: "npm:^1.1.1" + checksum: 10/24163ab1e1e013796693fc5f5d349e8b3ac0b6a34a7edb6c17d3dd45c6a8854145780c57d302a82512c1582f63720f4b4779d6c1cfba12cbb1420b978802d8a3 languageName: node linkType: hard @@ -10396,38 +10587,26 @@ __metadata: languageName: node linkType: hard -"object.groupby@npm:^1.0.1": - version: 1.0.2 - resolution: "object.groupby@npm:1.0.2" +"object.groupby@npm:^1.0.3": + version: 1.0.3 + resolution: "object.groupby@npm:1.0.3" dependencies: - array.prototype.filter: "npm:^1.0.3" - call-bind: "npm:^1.0.5" + call-bind: "npm:^1.0.7" define-properties: "npm:^1.2.1" - es-abstract: "npm:^1.22.3" - es-errors: "npm:^1.0.0" - checksum: 10/07c1bea1772c45f7967a63358a683ef7b0bd99cabe0563e6fee3e8acc061cc5984d2f01a46472ebf10b2cb439298c46776b2134550dce457fd7240baaaa4f592 + es-abstract: "npm:^1.23.2" + checksum: 10/44cb86dd2c660434be65f7585c54b62f0425b0c96b5c948d2756be253ef06737da7e68d7106e35506ce4a44d16aa85a413d11c5034eb7ce5579ec28752eb42d0 languageName: node linkType: hard -"object.values@npm:^1.1.6, object.values@npm:^1.2.0": - version: 1.2.0 - resolution: "object.values@npm:1.2.0" +"object.values@npm:^1.1.6, object.values@npm:^1.2.1": + version: 1.2.1 + resolution: "object.values@npm:1.2.1" dependencies: - call-bind: "npm:^1.0.7" + call-bind: "npm:^1.0.8" + call-bound: "npm:^1.0.3" define-properties: "npm:^1.2.1" es-object-atoms: "npm:^1.0.0" - checksum: 10/db2e498019c354428c5dd30d02980d920ac365b155fce4dcf63eb9433f98ccf0f72624309e182ce7cc227c95e45d474e1d483418e60de2293dd23fa3ebe34903 - languageName: node - linkType: hard - -"object.values@npm:^1.1.7": - version: 1.1.7 - resolution: "object.values@npm:1.1.7" - dependencies: - call-bind: "npm:^1.0.2" - define-properties: "npm:^1.2.0" - es-abstract: "npm:^1.22.1" - checksum: 10/20ab42c0bbf984405c80e060114b18cf5d629a40a132c7eac4fb79c5d06deb97496311c19297dcf9c61f45c2539cd4c7f7c5d6230e51db360ff297bbc9910162 + checksum: 10/f5ec9eccdefeaaa834b089c525663436812a65ff13de7964a1c3a9110f32054f2d58aa476a645bb14f75a79f3fe1154fb3e7bfdae7ac1e80affe171b2ef74bce languageName: node linkType: hard @@ -10503,16 +10682,16 @@ __metadata: linkType: hard "optionator@npm:^0.9.3": - version: 0.9.3 - resolution: "optionator@npm:0.9.3" + version: 0.9.4 + resolution: "optionator@npm:0.9.4" dependencies: - "@aashutoshrathi/word-wrap": "npm:^1.2.3" deep-is: "npm:^0.1.3" fast-levenshtein: "npm:^2.0.6" levn: "npm:^0.4.1" prelude-ls: "npm:^1.2.1" type-check: "npm:^0.4.0" - checksum: 10/fa28d3016395974f7fc087d6bbf0ac7f58ac3489f4f202a377e9c194969f329a7b88c75f8152b33fb08794a30dcd5c079db6bb465c28151357f113d80bbf67da + word-wrap: "npm:^1.2.5" + checksum: 10/a8398559c60aef88d7f353a4f98dcdff6090a4e70f874c827302bf1213d9106a1c4d5fcb68dacb1feb3c30a04c4102f41047aa55d4c576b863d6fc876e001af6 languageName: node linkType: hard @@ -10540,6 +10719,17 @@ __metadata: languageName: node linkType: hard +"own-keys@npm:^1.0.1": + version: 1.0.1 + resolution: "own-keys@npm:1.0.1" + dependencies: + get-intrinsic: "npm:^1.2.6" + object-keys: "npm:^1.1.1" + safe-push-apply: "npm:^1.0.0" + checksum: 10/ab4bb3b8636908554fc19bf899e225444195092864cb61503a0d048fdaf662b04be2605b636a4ffeaf6e8811f6fcfa8cbb210ec964c0eb1a41eb853e1d5d2f41 + languageName: node + linkType: hard + "p-each-series@npm:^3.0.0": version: 3.0.0 resolution: "p-each-series@npm:3.0.0" @@ -10718,6 +10908,15 @@ __metadata: languageName: node linkType: hard +"parse-imports-exports@npm:^0.2.4": + version: 0.2.4 + resolution: "parse-imports-exports@npm:0.2.4" + dependencies: + parse-statements: "npm:1.0.11" + checksum: 10/144d459771d1aeaa80eebffe43a2074c34e5b79a86d326c907efea90b62ff41af9555600b8e117e6cab717654d8e20b440e9ab09cdbbc9092f352cb0a9e1f3a3 + languageName: node + linkType: hard + "parse-json@npm:^4.0.0": version: 4.0.0 resolution: "parse-json@npm:4.0.0" @@ -10764,6 +10963,13 @@ __metadata: languageName: node linkType: hard +"parse-statements@npm:1.0.11": + version: 1.0.11 + resolution: "parse-statements@npm:1.0.11" + checksum: 10/287c2739f4cbffa08e28a95ea2d3ff4a8a51ddb367df6212ae2cd80580a1189e09c6edcb8277fc05d0fdbcb93c86ad16b591f317e2fe12ac4189de738863e514 + languageName: node + linkType: hard + "parse5-htmlparser2-tree-adapter@npm:^6.0.0": version: 6.0.1 resolution: "parse5-htmlparser2-tree-adapter@npm:6.0.1" @@ -10916,6 +11122,13 @@ __metadata: languageName: node linkType: hard +"picomatch@npm:^4.0.3": + version: 4.0.3 + resolution: "picomatch@npm:4.0.3" + checksum: 10/57b99055f40b16798f2802916d9c17e9744e620a0db136554af01d19598b96e45e2f00014c91d1b8b13874b80caa8c295b3d589a3f72373ec4aaf54baa5962d5 + languageName: node + linkType: hard + "pify@npm:^3.0.0": version: 3.0.0 resolution: "pify@npm:3.0.0" @@ -10973,9 +11186,9 @@ __metadata: linkType: hard "possible-typed-array-names@npm:^1.0.0": - version: 1.0.0 - resolution: "possible-typed-array-names@npm:1.0.0" - checksum: 10/8ed3e96dfeea1c5880c1f4c9cb707e5fb26e8be22f14f82ef92df20fd2004e635c62ba47fbe8f2bb63bfd80dac1474be2fb39798da8c2feba2815435d1f749af + version: 1.1.0 + resolution: "possible-typed-array-names@npm:1.1.0" + checksum: 10/2f44137b8d3dd35f4a7ba7469eec1cd9cfbb46ec164b93a5bc1f4c3d68599c9910ee3b91da1d28b4560e9cc8414c3cd56fedc07259c67e52cc774476270d3302 languageName: node linkType: hard @@ -11518,18 +11731,28 @@ __metadata: languageName: node linkType: hard -"reflect.getprototypeof@npm:^1.0.4": - version: 1.0.6 - resolution: "reflect.getprototypeof@npm:1.0.6" +"refa@npm:^0.12.0, refa@npm:^0.12.1": + version: 0.12.1 + resolution: "refa@npm:0.12.1" dependencies: - call-bind: "npm:^1.0.7" + "@eslint-community/regexpp": "npm:^4.8.0" + checksum: 10/b89411434e31637a519c065acd8fd1ec9eabc1dec38eec58dbc69a386ec21d88f97fa175e56fb3133e21c090ddb68fe7b5653ffc4bbcc9f069abc0e88c0d290c + languageName: node + linkType: hard + +"reflect.getprototypeof@npm:^1.0.6, reflect.getprototypeof@npm:^1.0.9": + version: 1.0.10 + resolution: "reflect.getprototypeof@npm:1.0.10" + dependencies: + call-bind: "npm:^1.0.8" define-properties: "npm:^1.2.1" - es-abstract: "npm:^1.23.1" + es-abstract: "npm:^1.23.9" es-errors: "npm:^1.3.0" - get-intrinsic: "npm:^1.2.4" - globalthis: "npm:^1.0.3" - which-builtin-type: "npm:^1.1.3" - checksum: 10/518f6457e4bb470c9b317d239c62d4b4a05678b7eae4f1c3f4332fad379b3ea6d2d8999bfad448547fdba8fb77e4725cfe8c6440d0168ff387f16b4f19f759ad + es-object-atoms: "npm:^1.0.0" + get-intrinsic: "npm:^1.2.7" + get-proto: "npm:^1.0.1" + which-builtin-type: "npm:^1.2.1" + checksum: 10/80a4e2be716f4fe46a89a08ccad0863b47e8ce0f49616cab2d65dab0fbd53c6fdba0f52935fd41d37a2e4e22355c272004f920d63070de849f66eea7aeb4a081 languageName: node linkType: hard @@ -11563,15 +11786,27 @@ __metadata: languageName: node linkType: hard -"regexp.prototype.flags@npm:^1.5.2": - version: 1.5.2 - resolution: "regexp.prototype.flags@npm:1.5.2" +"regexp-ast-analysis@npm:^0.7.0": + version: 0.7.1 + resolution: "regexp-ast-analysis@npm:0.7.1" + dependencies: + "@eslint-community/regexpp": "npm:^4.8.0" + refa: "npm:^0.12.1" + checksum: 10/92299636d9c941ee27db7568a775354d36024504c104c5d7981a89dda1b0ff1e2a56db16f92d7e166a50a1164593788c0849c5840ec9d79b39c1c040d59c442c + languageName: node + linkType: hard + +"regexp.prototype.flags@npm:^1.5.3, regexp.prototype.flags@npm:^1.5.4": + version: 1.5.4 + resolution: "regexp.prototype.flags@npm:1.5.4" dependencies: - call-bind: "npm:^1.0.6" + call-bind: "npm:^1.0.8" define-properties: "npm:^1.2.1" es-errors: "npm:^1.3.0" - set-function-name: "npm:^2.0.1" - checksum: 10/9fffc01da9c4e12670ff95bc5204364615fcc12d86fc30642765af908675678ebb0780883c874b2dbd184505fb52fa603d80073ecf69f461ce7f56b15d10be9c + get-proto: "npm:^1.0.1" + gopd: "npm:^1.2.0" + set-function-name: "npm:^2.0.2" + checksum: 10/8ab897ca445968e0b96f6237641510f3243e59c180ee2ee8d83889c52ff735dd1bf3657fcd36db053e35e1d823dd53f2565d0b8021ea282c9fe62401c6c3bd6d languageName: node linkType: hard @@ -11630,13 +11865,6 @@ __metadata: languageName: node linkType: hard -"requireindex@npm:~1.2.0": - version: 1.2.0 - resolution: "requireindex@npm:1.2.0" - checksum: 10/266d1cb31f6cbc4b6cf2e898f5bbc45581f7919bcf61bba5c45d0adb69b722b9ff5a13727be3350cde4520d7cd37f39df45d58a29854baaa4552cd6b05ae4a1a - languageName: node - linkType: hard - "requires-port@npm:^1.0.0": version: 1.0.0 resolution: "requires-port@npm:1.0.0" @@ -11644,6 +11872,13 @@ __metadata: languageName: node linkType: hard +"reserved-identifiers@npm:^1.0.0": + version: 1.2.0 + resolution: "reserved-identifiers@npm:1.2.0" + checksum: 10/02722585aa97f25384a59a33055529a90c8fa8ce3d32f02be4bcec1454254fb385429fc3168a85fe56bb952ad632ea8fecb8fa2addb47e7d97a1ab4922827ad9 + languageName: node + linkType: hard + "resolve-cwd@npm:^3.0.0": version: 3.0.0 resolution: "resolve-cwd@npm:3.0.0" @@ -11697,7 +11932,7 @@ __metadata: languageName: node linkType: hard -"resolve@npm:^1.14.2, resolve@npm:^1.20.0, resolve@npm:^1.22.4": +"resolve@npm:^1.14.2, resolve@npm:^1.20.0": version: 1.22.8 resolution: "resolve@npm:1.22.8" dependencies: @@ -11710,6 +11945,19 @@ __metadata: languageName: node linkType: hard +"resolve@npm:^1.22.4": + version: 1.22.11 + resolution: "resolve@npm:1.22.11" + dependencies: + is-core-module: "npm:^2.16.1" + path-parse: "npm:^1.0.7" + supports-preserve-symlinks-flag: "npm:^1.0.0" + bin: + resolve: bin/resolve + checksum: 10/e1b2e738884a08de03f97ee71494335eba8c2b0feb1de9ae065e82c48997f349f77a2b10e8817e147cf610bfabc4b1cb7891ee8eaf5bf80d4ad514a34c4fab0a + languageName: node + linkType: hard + "resolve@npm:^2.0.0-next.5": version: 2.0.0-next.5 resolution: "resolve@npm:2.0.0-next.5" @@ -11732,16 +11980,29 @@ __metadata: languageName: node linkType: hard -"resolve@patch:resolve@npm%3A^1.14.2#optional!builtin, resolve@patch:resolve@npm%3A^1.20.0#optional!builtin, resolve@patch:resolve@npm%3A^1.22.4#optional!builtin": - version: 1.22.8 - resolution: "resolve@patch:resolve@npm%3A1.22.8#optional!builtin::version=1.22.8&hash=c3c19d" +"resolve@patch:resolve@npm%3A^1.14.2#optional!builtin, resolve@patch:resolve@npm%3A^1.20.0#optional!builtin": + version: 1.22.8 + resolution: "resolve@patch:resolve@npm%3A1.22.8#optional!builtin::version=1.22.8&hash=c3c19d" + dependencies: + is-core-module: "npm:^2.13.0" + path-parse: "npm:^1.0.7" + supports-preserve-symlinks-flag: "npm:^1.0.0" + bin: + resolve: bin/resolve + checksum: 10/f345cd37f56a2c0275e3fe062517c650bb673815d885e7507566df589375d165bbbf4bdb6aa95600a9bc55f4744b81f452b5a63f95b9f10a72787dba3c90890a + languageName: node + linkType: hard + +"resolve@patch:resolve@npm%3A^1.22.4#optional!builtin": + version: 1.22.11 + resolution: "resolve@patch:resolve@npm%3A1.22.11#optional!builtin::version=1.22.11&hash=c3c19d" dependencies: - is-core-module: "npm:^2.13.0" + is-core-module: "npm:^2.16.1" path-parse: "npm:^1.0.7" supports-preserve-symlinks-flag: "npm:^1.0.0" bin: resolve: bin/resolve - checksum: 10/f345cd37f56a2c0275e3fe062517c650bb673815d885e7507566df589375d165bbbf4bdb6aa95600a9bc55f4744b81f452b5a63f95b9f10a72787dba3c90890a + checksum: 10/fd342cad25e52cd6f4f3d1716e189717f2522bfd6641109fe7aa372f32b5714a296ed7c238ddbe7ebb0c1ddfe0b7f71c9984171024c97cf1b2073e3e40ff71a8 languageName: node linkType: hard @@ -11848,27 +12109,16 @@ __metadata: languageName: node linkType: hard -"safe-array-concat@npm:^1.1.0": - version: 1.1.0 - resolution: "safe-array-concat@npm:1.1.0" - dependencies: - call-bind: "npm:^1.0.5" - get-intrinsic: "npm:^1.2.2" - has-symbols: "npm:^1.0.3" - isarray: "npm:^2.0.5" - checksum: 10/41ac35ce46c44e2e8637b1805b0697d5269507779e3082b7afb92c01605fd73ab813bbc799510c56e300cfc941b1447fd98a338205db52db7fd1322ab32d7c9f - languageName: node - linkType: hard - -"safe-array-concat@npm:^1.1.2": - version: 1.1.2 - resolution: "safe-array-concat@npm:1.1.2" +"safe-array-concat@npm:^1.1.3": + version: 1.1.3 + resolution: "safe-array-concat@npm:1.1.3" dependencies: - call-bind: "npm:^1.0.7" - get-intrinsic: "npm:^1.2.4" - has-symbols: "npm:^1.0.3" + call-bind: "npm:^1.0.8" + call-bound: "npm:^1.0.2" + get-intrinsic: "npm:^1.2.6" + has-symbols: "npm:^1.1.0" isarray: "npm:^2.0.5" - checksum: 10/a54f8040d7cb696a1ee38d19cc71ab3cfb654b9b81bae00c6459618cfad8214ece7e6666592f9c925aafef43d0a20c5e6fbb3413a2b618e1ce9d516a2e6dcfc5 + checksum: 10/fac4f40f20a3f7da024b54792fcc61059e814566dcbb04586bfefef4d3b942b2408933f25b7b3dd024affd3f2a6bbc916bef04807855e4f192413941369db864 languageName: node linkType: hard @@ -11886,14 +12136,24 @@ __metadata: languageName: node linkType: hard -"safe-regex-test@npm:^1.0.3": - version: 1.0.3 - resolution: "safe-regex-test@npm:1.0.3" +"safe-push-apply@npm:^1.0.0": + version: 1.0.0 + resolution: "safe-push-apply@npm:1.0.0" + dependencies: + es-errors: "npm:^1.3.0" + isarray: "npm:^2.0.5" + checksum: 10/2bd4e53b6694f7134b9cf93631480e7fafc8637165f0ee91d5a4af5e7f33d37de9562d1af5021178dd4217d0230cde8d6530fa28cfa1ebff9a431bf8fff124b4 + languageName: node + linkType: hard + +"safe-regex-test@npm:^1.1.0": + version: 1.1.0 + resolution: "safe-regex-test@npm:1.1.0" dependencies: - call-bind: "npm:^1.0.6" + call-bound: "npm:^1.0.2" es-errors: "npm:^1.3.0" - is-regex: "npm:^1.1.4" - checksum: 10/b04de61114b10274d92e25b6de7ccb5de07f11ea15637ff636de4b5190c0f5cd8823fe586dde718504cf78055437d70fd8804976894df502fcf5a210c970afb3 + is-regex: "npm:^1.2.1" + checksum: 10/ebdb61f305bf4756a5b023ad86067df5a11b26898573afe9e52a548a63c3bd594825d9b0e2dde2eb3c94e57e0e04ac9929d4107c394f7b8e56a4613bed46c69a languageName: node linkType: hard @@ -11931,6 +12191,17 @@ __metadata: languageName: node linkType: hard +"scslre@npm:0.3.0": + version: 0.3.0 + resolution: "scslre@npm:0.3.0" + dependencies: + "@eslint-community/regexpp": "npm:^4.8.0" + refa: "npm:^0.12.0" + regexp-ast-analysis: "npm:^0.7.0" + checksum: 10/164ec9b9a9d819838240b1df613b6c60ae00c69c4472264f354a191f73b538c064d43c0ac3accf89f5c05880ddab33846077b0cda3ad383701623d468960c005 + languageName: node + linkType: hard + "semantic-release-yarn@npm:^3.0.2": version: 3.0.2 resolution: "semantic-release-yarn@npm:3.0.2" @@ -12006,6 +12277,15 @@ __metadata: languageName: node linkType: hard +"semver@npm:7.7.2": + version: 7.7.2 + resolution: "semver@npm:7.7.2" + bin: + semver: bin/semver.js + checksum: 10/7a24cffcaa13f53c09ce55e05efe25cd41328730b2308678624f8b9f5fc3093fc4d189f47950f0b811ff8f3c3039c24a2c36717ba7961615c682045bf03e1dda + languageName: node + linkType: hard + "semver@npm:^5.6.0": version: 5.7.2 resolution: "semver@npm:5.7.2" @@ -12024,7 +12304,7 @@ __metadata: languageName: node linkType: hard -"semver@npm:^7.0.0, semver@npm:^7.1.1, semver@npm:^7.1.2, semver@npm:^7.3.2, semver@npm:^7.3.5, semver@npm:^7.3.7, semver@npm:^7.3.8, semver@npm:^7.5.2, semver@npm:^7.5.3, semver@npm:^7.5.4, semver@npm:^7.6.0": +"semver@npm:^7.0.0, semver@npm:^7.1.1, semver@npm:^7.1.2, semver@npm:^7.3.2, semver@npm:^7.3.5, semver@npm:^7.3.7, semver@npm:^7.3.8, semver@npm:^7.5.2, semver@npm:^7.5.3, semver@npm:^7.5.4": version: 7.6.0 resolution: "semver@npm:7.6.0" dependencies: @@ -12035,6 +12315,15 @@ __metadata: languageName: node linkType: hard +"semver@npm:^7.6.0, semver@npm:^7.7.1, semver@npm:^7.7.3": + version: 7.7.3 + resolution: "semver@npm:7.7.3" + bin: + semver: bin/semver.js + checksum: 10/8dbc3168e057a38fc322af909c7f5617483c50caddba135439ff09a754b20bdd6482a5123ff543dad4affa488ecf46ec5fb56d61312ad20bb140199b88dfaea9 + languageName: node + linkType: hard + "send@npm:0.19.0": version: 0.19.0 resolution: "send@npm:0.19.0" @@ -12091,28 +12380,17 @@ __metadata: languageName: node linkType: hard -"set-function-length@npm:^1.2.1": - version: 1.2.1 - resolution: "set-function-length@npm:1.2.1" +"set-function-length@npm:^1.2.2": + version: 1.2.2 + resolution: "set-function-length@npm:1.2.2" dependencies: - define-data-property: "npm:^1.1.2" + define-data-property: "npm:^1.1.4" es-errors: "npm:^1.3.0" function-bind: "npm:^1.1.2" - get-intrinsic: "npm:^1.2.3" + get-intrinsic: "npm:^1.2.4" gopd: "npm:^1.0.1" - has-property-descriptors: "npm:^1.0.1" - checksum: 10/9ab1d200149574ab27c1a7acae56d6235e02568fc68655fe8afe63e4e02ccad3c27665f55c32408bd1ff40705939dbb7539abfb9c3a07fda27ecad1ab9e449f5 - languageName: node - linkType: hard - -"set-function-name@npm:^2.0.1": - version: 2.0.1 - resolution: "set-function-name@npm:2.0.1" - dependencies: - define-data-property: "npm:^1.0.1" - functions-have-names: "npm:^1.2.3" - has-property-descriptors: "npm:^1.0.0" - checksum: 10/4975d17d90c40168eee2c7c9c59d023429f0a1690a89d75656306481ece0c3c1fb1ebcc0150ea546d1913e35fbd037bace91372c69e543e51fc5d1f31a9fa126 + has-property-descriptors: "npm:^1.0.2" + checksum: 10/505d62b8e088468917ca4e3f8f39d0e29f9a563b97dbebf92f4bd2c3172ccfb3c5b8e4566d5fcd00784a00433900e7cb8fbc404e2dbd8c3818ba05bb9d4a8a6d languageName: node linkType: hard @@ -12128,6 +12406,17 @@ __metadata: languageName: node linkType: hard +"set-proto@npm:^1.0.0": + version: 1.0.0 + resolution: "set-proto@npm:1.0.0" + dependencies: + dunder-proto: "npm:^1.0.1" + es-errors: "npm:^1.3.0" + es-object-atoms: "npm:^1.0.0" + checksum: 10/b87f8187bca595ddc3c0721ece4635015fd9d7cb294e6dd2e394ce5186a71bbfa4dc8a35010958c65e43ad83cde09642660e61a952883c24fd6b45ead15f045c + languageName: node + linkType: hard + "setprototypeof@npm:1.2.0": version: 1.2.0 resolution: "setprototypeof@npm:1.2.0" @@ -12179,27 +12468,51 @@ __metadata: languageName: node linkType: hard -"side-channel@npm:^1.0.4": - version: 1.0.5 - resolution: "side-channel@npm:1.0.5" +"side-channel-list@npm:^1.0.0": + version: 1.0.0 + resolution: "side-channel-list@npm:1.0.0" dependencies: - call-bind: "npm:^1.0.6" es-errors: "npm:^1.3.0" - get-intrinsic: "npm:^1.2.4" - object-inspect: "npm:^1.13.1" - checksum: 10/27708b70b5d81bf18dc8cc23f38f1b6c9511691a64abc4aaf17956e67d132c855cf8b46f931e2fc5a6262b29371eb60da7755c1b9f4f862eccea8562b469f8f6 + object-inspect: "npm:^1.13.3" + checksum: 10/603b928997abd21c5a5f02ae6b9cc36b72e3176ad6827fab0417ead74580cc4fb4d5c7d0a8a2ff4ead34d0f9e35701ed7a41853dac8a6d1a664fcce1a044f86f languageName: node linkType: hard -"side-channel@npm:^1.0.6": - version: 1.0.6 - resolution: "side-channel@npm:1.0.6" +"side-channel-map@npm:^1.0.1": + version: 1.0.1 + resolution: "side-channel-map@npm:1.0.1" dependencies: - call-bind: "npm:^1.0.7" + call-bound: "npm:^1.0.2" es-errors: "npm:^1.3.0" - get-intrinsic: "npm:^1.2.4" - object-inspect: "npm:^1.13.1" - checksum: 10/eb10944f38cebad8ad643dd02657592fa41273ce15b8bfa928d3291aff2d30c20ff777cfe908f76ccc4551ace2d1245822fdc576657cce40e9066c638ca8fa4d + get-intrinsic: "npm:^1.2.5" + object-inspect: "npm:^1.13.3" + checksum: 10/5771861f77feefe44f6195ed077a9e4f389acc188f895f570d56445e251b861754b547ea9ef73ecee4e01fdada6568bfe9020d2ec2dfc5571e9fa1bbc4a10615 + languageName: node + linkType: hard + +"side-channel-weakmap@npm:^1.0.2": + version: 1.0.2 + resolution: "side-channel-weakmap@npm:1.0.2" + dependencies: + call-bound: "npm:^1.0.2" + es-errors: "npm:^1.3.0" + get-intrinsic: "npm:^1.2.5" + object-inspect: "npm:^1.13.3" + side-channel-map: "npm:^1.0.1" + checksum: 10/a815c89bc78c5723c714ea1a77c938377ea710af20d4fb886d362b0d1f8ac73a17816a5f6640f354017d7e292a43da9c5e876c22145bac00b76cfb3468001736 + languageName: node + linkType: hard + +"side-channel@npm:^1.1.0": + version: 1.1.0 + resolution: "side-channel@npm:1.1.0" + dependencies: + es-errors: "npm:^1.3.0" + object-inspect: "npm:^1.13.3" + side-channel-list: "npm:^1.0.0" + side-channel-map: "npm:^1.0.1" + side-channel-weakmap: "npm:^1.0.2" + checksum: 10/7d53b9db292c6262f326b6ff3bc1611db84ece36c2c7dc0e937954c13c73185b0406c56589e2bb8d071d6fee468e14c39fb5d203ee39be66b7b8174f179afaba languageName: node linkType: hard @@ -12456,6 +12769,13 @@ __metadata: languageName: node linkType: hard +"stable-hash-x@npm:^0.2.0": + version: 0.2.0 + resolution: "stable-hash-x@npm:0.2.0" + checksum: 10/136f05d0e4d441876012b423541476ff5b695c93b56d1959560be858b9e324ea6de6c16ecbd735a040ee8396427dd867bed0bf90b2cdb1fc422566747b91a0e5 + languageName: node + linkType: hard + "stack-utils@npm:^2.0.3": version: 2.0.6 resolution: "stack-utils@npm:2.0.6" @@ -12495,6 +12815,16 @@ __metadata: languageName: node linkType: hard +"stop-iteration-iterator@npm:^1.1.0": + version: 1.1.0 + resolution: "stop-iteration-iterator@npm:1.1.0" + dependencies: + es-errors: "npm:^1.3.0" + internal-slot: "npm:^1.1.0" + checksum: 10/ff36c4db171ee76c936ccfe9541946b77017f12703d4c446652017356816862d3aa029a64e7d4c4ceb484e00ed4a81789333896390d808458638f3a216aa1f41 + languageName: node + linkType: hard + "stream-combiner2@npm:~1.1.1": version: 1.1.1 resolution: "stream-combiner2@npm:1.1.1" @@ -12537,23 +12867,24 @@ __metadata: languageName: node linkType: hard -"string.prototype.matchall@npm:^4.0.11": - version: 4.0.11 - resolution: "string.prototype.matchall@npm:4.0.11" +"string.prototype.matchall@npm:^4.0.12": + version: 4.0.12 + resolution: "string.prototype.matchall@npm:4.0.12" dependencies: - call-bind: "npm:^1.0.7" + call-bind: "npm:^1.0.8" + call-bound: "npm:^1.0.3" define-properties: "npm:^1.2.1" - es-abstract: "npm:^1.23.2" + es-abstract: "npm:^1.23.6" es-errors: "npm:^1.3.0" es-object-atoms: "npm:^1.0.0" - get-intrinsic: "npm:^1.2.4" - gopd: "npm:^1.0.1" - has-symbols: "npm:^1.0.3" - internal-slot: "npm:^1.0.7" - regexp.prototype.flags: "npm:^1.5.2" + get-intrinsic: "npm:^1.2.6" + gopd: "npm:^1.2.0" + has-symbols: "npm:^1.1.0" + internal-slot: "npm:^1.1.0" + regexp.prototype.flags: "npm:^1.5.3" set-function-name: "npm:^2.0.2" - side-channel: "npm:^1.0.6" - checksum: 10/a902ff4500f909f2a08e55cc5ab1ffbbc905f603b36837674370ee3921058edd0392147e15891910db62a2f31ace2adaf065eaa3bc6e9810bdbc8ca48e05a7b5 + side-channel: "npm:^1.1.0" + checksum: 10/e4ab34b9e7639211e6c5e9759adb063028c5c5c4fc32ad967838b2bd1e5ce83a66ae8ec755d24a79302849f090b59194571b2c33471e86e7821b21c0f56df316 languageName: node linkType: hard @@ -12567,59 +12898,30 @@ __metadata: languageName: node linkType: hard -"string.prototype.trim@npm:^1.2.8": - version: 1.2.8 - resolution: "string.prototype.trim@npm:1.2.8" - dependencies: - call-bind: "npm:^1.0.2" - define-properties: "npm:^1.2.0" - es-abstract: "npm:^1.22.1" - checksum: 10/9301f6cb2b6c44f069adde1b50f4048915985170a20a1d64cf7cb2dc53c5cd6b9525b92431f1257f894f94892d6c4ae19b5aa7f577c3589e7e51772dffc9d5a4 - languageName: node - linkType: hard - -"string.prototype.trim@npm:^1.2.9": - version: 1.2.9 - resolution: "string.prototype.trim@npm:1.2.9" +"string.prototype.trim@npm:^1.2.10": + version: 1.2.10 + resolution: "string.prototype.trim@npm:1.2.10" dependencies: - call-bind: "npm:^1.0.7" + call-bind: "npm:^1.0.8" + call-bound: "npm:^1.0.2" + define-data-property: "npm:^1.1.4" define-properties: "npm:^1.2.1" - es-abstract: "npm:^1.23.0" + es-abstract: "npm:^1.23.5" es-object-atoms: "npm:^1.0.0" - checksum: 10/b2170903de6a2fb5a49bb8850052144e04b67329d49f1343cdc6a87cb24fb4e4b8ad00d3e273a399b8a3d8c32c89775d93a8f43cb42fbff303f25382079fb58a - languageName: node - linkType: hard - -"string.prototype.trimend@npm:^1.0.7": - version: 1.0.7 - resolution: "string.prototype.trimend@npm:1.0.7" - dependencies: - call-bind: "npm:^1.0.2" - define-properties: "npm:^1.2.0" - es-abstract: "npm:^1.22.1" - checksum: 10/3f0d3397ab9bd95cd98ae2fe0943bd3e7b63d333c2ab88f1875cf2e7c958c75dc3355f6fe19ee7c8fca28de6f39f2475e955e103821feb41299a2764a7463ffa + has-property-descriptors: "npm:^1.0.2" + checksum: 10/47bb63cd2470a64bc5e2da1e570d369c016ccaa85c918c3a8bb4ab5965120f35e66d1f85ea544496fac84b9207a6b722adf007e6c548acd0813e5f8a82f9712a languageName: node linkType: hard -"string.prototype.trimend@npm:^1.0.8": - version: 1.0.8 - resolution: "string.prototype.trimend@npm:1.0.8" +"string.prototype.trimend@npm:^1.0.9": + version: 1.0.9 + resolution: "string.prototype.trimend@npm:1.0.9" dependencies: - call-bind: "npm:^1.0.7" + call-bind: "npm:^1.0.8" + call-bound: "npm:^1.0.2" define-properties: "npm:^1.2.1" es-object-atoms: "npm:^1.0.0" - checksum: 10/c2e862ae724f95771da9ea17c27559d4eeced9208b9c20f69bbfcd1b9bc92375adf8af63a103194dba17c4cc4a5cb08842d929f415ff9d89c062d44689c8761b - languageName: node - linkType: hard - -"string.prototype.trimstart@npm:^1.0.7": - version: 1.0.7 - resolution: "string.prototype.trimstart@npm:1.0.7" - dependencies: - call-bind: "npm:^1.0.2" - define-properties: "npm:^1.2.0" - es-abstract: "npm:^1.22.1" - checksum: 10/6e594d3a61b127d243b8be1312e9f78683abe452cfe0bcafa3e0dc62ad6f030ccfb64d87ed3086fb7cb540fda62442c164d237cc5cc4d53c6e3eb659c29a0aeb + checksum: 10/140c73899b6747de9e499c7c2e7a83d549c47a26fa06045b69492be9cfb9e2a95187499a373983a08a115ecff8bc3bd7b0fb09b8ff72fb2172abe766849272ef languageName: node linkType: hard @@ -12802,13 +13104,6 @@ __metadata: languageName: node linkType: hard -"tapable@npm:^2.2.0": - version: 2.2.1 - resolution: "tapable@npm:2.2.1" - checksum: 10/1769336dd21481ae6347611ca5fca47add0962fd8e80466515032125eca0084a4f0ede11e65341b9c0018ef4e1cf1ad820adbb0fba7cc99865c6005734000b0a - languageName: node - linkType: hard - "tar@npm:^6.1.11, tar@npm:^6.1.2, tar@npm:^6.2.0": version: 6.2.0 resolution: "tar@npm:6.2.0" @@ -12890,7 +13185,7 @@ __metadata: languageName: node linkType: hard -"text-table@npm:^0.2.0, text-table@npm:~0.2.0": +"text-table@npm:~0.2.0": version: 0.2.0 resolution: "text-table@npm:0.2.0" checksum: 10/4383b5baaeffa9bb4cda2ac33a4aa2e6d1f8aaf811848bf73513a9b88fd76372dc461f6fd6d2e9cb5100f48b473be32c6f95bd983509b7d92bb4d92c10747452 @@ -12946,6 +13241,16 @@ __metadata: languageName: node linkType: hard +"tinyglobby@npm:^0.2.14": + version: 0.2.15 + resolution: "tinyglobby@npm:0.2.15" + dependencies: + fdir: "npm:^6.5.0" + picomatch: "npm:^4.0.3" + checksum: 10/d72bd826a8b0fa5fa3929e7fe5ba48fceb2ae495df3a231b6c5408cd7d8c00b58ab5a9c2a76ba56a62ee9b5e083626f1f33599734bed1ffc4b792406408f0ca2 + languageName: node + linkType: hard + "tmp@npm:^0.0.33": version: 0.0.33 resolution: "tmp@npm:0.0.33" @@ -12978,6 +13283,16 @@ __metadata: languageName: node linkType: hard +"to-valid-identifier@npm:^1.0.0": + version: 1.0.0 + resolution: "to-valid-identifier@npm:1.0.0" + dependencies: + "@sindresorhus/base62": "npm:^1.0.0" + reserved-identifiers: "npm:^1.0.0" + checksum: 10/fba7ebdf464c92c92ccde887f917c9461792f99b738d36bebe5c3bd07562c3fdceedfd120ac115da359162b115798136bb8b9ea7417d7e3a663db9425ff1bcc1 + languageName: node + linkType: hard + "toidentifier@npm:1.0.1": version: 1.0.1 resolution: "toidentifier@npm:1.0.1" @@ -13027,12 +13342,12 @@ __metadata: languageName: node linkType: hard -"ts-api-utils@npm:^1.0.1": - version: 1.2.1 - resolution: "ts-api-utils@npm:1.2.1" +"ts-api-utils@npm:^2.1.0": + version: 2.1.0 + resolution: "ts-api-utils@npm:2.1.0" peerDependencies: - typescript: ">=4.2.0" - checksum: 10/6d7f60fd01e3885bb334607f22b9cb1002e72da81dad2e672fef1b0d1a2f640b0f0ff5310369401488fac90c7a7f5d39c89fd18789af59c672c9b5aef4cade3e + typescript: ">=4.8.4" + checksum: 10/02e55b49d9617c6eebf8aadfa08d3ca03ca0cd2f0586ad34117fdfc7aa3cd25d95051843fde9df86665ad907f99baed179e7a117b11021417f379e4d2614eacd languageName: node linkType: hard @@ -13126,54 +13441,20 @@ __metadata: languageName: node linkType: hard -"tslib@npm:^1.8.1, tslib@npm:^1.9.0": +"tslib@npm:^1.9.0": version: 1.14.1 resolution: "tslib@npm:1.14.1" checksum: 10/7dbf34e6f55c6492637adb81b555af5e3b4f9cc6b998fb440dac82d3b42bdc91560a35a5fb75e20e24a076c651438234da6743d139e4feabf0783f3cdfe1dddb languageName: node linkType: hard -"tslib@npm:^2.0.0, tslib@npm:^2.6.2": - version: 2.6.2 - resolution: "tslib@npm:2.6.2" - checksum: 10/bd26c22d36736513980091a1e356378e8b662ded04204453d353a7f34a4c21ed0afc59b5f90719d4ba756e581a162ecbf93118dc9c6be5acf70aa309188166ca - languageName: node - linkType: hard - -"tslib@npm:^2.0.1": +"tslib@npm:^2.0.1, tslib@npm:^2.4.0, tslib@npm:^2.8.1": version: 2.8.1 resolution: "tslib@npm:2.8.1" checksum: 10/3e2e043d5c2316461cb54e5c7fe02c30ef6dccb3384717ca22ae5c6b5bc95232a6241df19c622d9c73b809bea33b187f6dbc73030963e29950c2141bc32a79f7 languageName: node linkType: hard -"tsutils-etc@npm:^1.4.1": - version: 1.4.2 - resolution: "tsutils-etc@npm:1.4.2" - dependencies: - "@types/yargs": "npm:^17.0.0" - yargs: "npm:^17.0.0" - peerDependencies: - tsutils: ^3.0.0 - typescript: ">=4.0.0" - bin: - ts-flags: bin/ts-flags - ts-kind: bin/ts-kind - checksum: 10/b204bf464837e5b3f0ba89bee06ce86b9a554a49648de57932bf65a16163c5f472d3e3c26c6f71d178b5fa5b7655a88af1d7725100891db2b2f0f9edb0107a59 - languageName: node - linkType: hard - -"tsutils@npm:^3.0.0, tsutils@npm:^3.17.1, tsutils@npm:^3.21.0": - version: 3.21.0 - resolution: "tsutils@npm:3.21.0" - dependencies: - tslib: "npm:^1.8.1" - 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" - checksum: 10/ea036bec1dd024e309939ffd49fda7a351c0e87a1b8eb049570dd119d447250e2c56e0e6c00554e8205760e7417793fdebff752a46e573fbe07d4f375502a5b2 - languageName: node - linkType: hard - "tuf-js@npm:^2.2.0": version: 2.2.0 resolution: "tuf-js@npm:2.2.0" @@ -13272,13 +13553,6 @@ __metadata: languageName: node linkType: hard -"type-fest@npm:^0.20.2": - version: 0.20.2 - resolution: "type-fest@npm:0.20.2" - checksum: 10/8907e16284b2d6cfa4f4817e93520121941baba36b39219ea36acfe64c86b9dbc10c9941af450bd60832c8f43464974d51c0957f9858bc66b952b66b6914cbb9 - languageName: node - linkType: hard - "type-fest@npm:^0.21.3": version: 0.21.3 resolution: "type-fest@npm:0.21.3" @@ -13321,103 +13595,56 @@ __metadata: languageName: node linkType: hard -"typed-array-buffer@npm:^1.0.1": - version: 1.0.1 - resolution: "typed-array-buffer@npm:1.0.1" - dependencies: - call-bind: "npm:^1.0.6" - es-errors: "npm:^1.3.0" - is-typed-array: "npm:^1.1.13" - checksum: 10/1d65e46b2b9b7ec2a30df39b9ddf32e55ad08d6119aec33975506a3dba56057796bdc3c64dbeb7fdb61bf340a75e279dfd55b48ce8f3b874f01731e1da6833d2 - languageName: node - linkType: hard - -"typed-array-buffer@npm:^1.0.2": - version: 1.0.2 - resolution: "typed-array-buffer@npm:1.0.2" +"typed-array-buffer@npm:^1.0.3": + version: 1.0.3 + resolution: "typed-array-buffer@npm:1.0.3" dependencies: - call-bind: "npm:^1.0.7" + call-bound: "npm:^1.0.3" es-errors: "npm:^1.3.0" - is-typed-array: "npm:^1.1.13" - checksum: 10/02ffc185d29c6df07968272b15d5319a1610817916ec8d4cd670ded5d1efe72901541ff2202fcc622730d8a549c76e198a2f74e312eabbfb712ed907d45cbb0b - languageName: node - linkType: hard - -"typed-array-byte-length@npm:^1.0.0": - version: 1.0.0 - resolution: "typed-array-byte-length@npm:1.0.0" - dependencies: - call-bind: "npm:^1.0.2" - for-each: "npm:^0.3.3" - has-proto: "npm:^1.0.1" - is-typed-array: "npm:^1.1.10" - checksum: 10/6f376bf5d988f00f98ccee41fd551cafc389095a2a307c18fab30f29da7d1464fc3697139cf254cda98b4128bbcb114f4b557bbabdc6d9c2e5039c515b31decf - languageName: node - linkType: hard - -"typed-array-byte-length@npm:^1.0.1": - version: 1.0.1 - resolution: "typed-array-byte-length@npm:1.0.1" - dependencies: - call-bind: "npm:^1.0.7" - for-each: "npm:^0.3.3" - gopd: "npm:^1.0.1" - has-proto: "npm:^1.0.3" - is-typed-array: "npm:^1.1.13" - checksum: 10/e4a38329736fe6a73b52a09222d4a9e8de14caaa4ff6ad8e55217f6705b017d9815b7284c85065b3b8a7704e226ccff1372a72b78c2a5b6b71b7bf662308c903 - languageName: node - linkType: hard - -"typed-array-byte-offset@npm:^1.0.0": - version: 1.0.1 - resolution: "typed-array-byte-offset@npm:1.0.1" - dependencies: - available-typed-arrays: "npm:^1.0.6" - call-bind: "npm:^1.0.7" - for-each: "npm:^0.3.3" - gopd: "npm:^1.0.1" - has-proto: "npm:^1.0.1" - is-typed-array: "npm:^1.1.13" - checksum: 10/b174c0bac20bcd8787d2f5ccd7bd8f5e5a128e060ffe0909ffe27d65e486de50a3552248a307a45e5c9c593fd8ec97f5acdf119c3e13806f11943b7a2ce555be + is-typed-array: "npm:^1.1.14" + checksum: 10/3fb91f0735fb413b2bbaaca9fabe7b8fc14a3fa5a5a7546bab8a57e755be0e3788d893195ad9c2b842620592de0e68d4c077d4c2c41f04ec25b8b5bb82fa9a80 languageName: node linkType: hard -"typed-array-byte-offset@npm:^1.0.2": - version: 1.0.2 - resolution: "typed-array-byte-offset@npm:1.0.2" +"typed-array-byte-length@npm:^1.0.3": + version: 1.0.3 + resolution: "typed-array-byte-length@npm:1.0.3" dependencies: - available-typed-arrays: "npm:^1.0.7" - call-bind: "npm:^1.0.7" + call-bind: "npm:^1.0.8" for-each: "npm:^0.3.3" - gopd: "npm:^1.0.1" - has-proto: "npm:^1.0.3" - is-typed-array: "npm:^1.1.13" - checksum: 10/ac26d720ebb2aacbc45e231347c359e6649f52e0cfe0e76e62005912f8030d68e4cb7b725b1754e8fdd48e433cb68df5a8620a3e420ad1457d666e8b29bf9150 + gopd: "npm:^1.2.0" + has-proto: "npm:^1.2.0" + is-typed-array: "npm:^1.1.14" + checksum: 10/269dad101dda73e3110117a9b84db86f0b5c07dad3a9418116fd38d580cab7fc628a4fc167e29b6d7c39da2f53374b78e7cb578b3c5ec7a556689d985d193519 languageName: node linkType: hard -"typed-array-length@npm:^1.0.4": +"typed-array-byte-offset@npm:^1.0.4": version: 1.0.4 - resolution: "typed-array-length@npm:1.0.4" + resolution: "typed-array-byte-offset@npm:1.0.4" dependencies: - call-bind: "npm:^1.0.2" + available-typed-arrays: "npm:^1.0.7" + call-bind: "npm:^1.0.8" for-each: "npm:^0.3.3" - is-typed-array: "npm:^1.1.9" - checksum: 10/0444658acc110b233176cb0b7689dcb828b0cfa099ab1d377da430e8553b6fdcdce882360b7ffe9ae085b6330e1d39383d7b2c61574d6cd8eef651d3e4a87822 + gopd: "npm:^1.2.0" + has-proto: "npm:^1.2.0" + is-typed-array: "npm:^1.1.15" + reflect.getprototypeof: "npm:^1.0.9" + checksum: 10/c2869aa584cdae24ecfd282f20a0f556b13a49a9d5bca1713370bb3c89dff0ccbc5ceb45cb5b784c98f4579e5e3e2a07e438c3a5b8294583e2bd4abbd5104fb5 languageName: node linkType: hard -"typed-array-length@npm:^1.0.6": - version: 1.0.6 - resolution: "typed-array-length@npm:1.0.6" +"typed-array-length@npm:^1.0.7": + version: 1.0.7 + resolution: "typed-array-length@npm:1.0.7" dependencies: call-bind: "npm:^1.0.7" for-each: "npm:^0.3.3" gopd: "npm:^1.0.1" - has-proto: "npm:^1.0.3" is-typed-array: "npm:^1.1.13" possible-typed-array-names: "npm:^1.0.0" - checksum: 10/05e96cf4ff836743ebfc593d86133b8c30e83172cb5d16c56814d7bacfed57ce97e87ada9c4b2156d9aaa59f75cdef01c25bd9081c7826e0b869afbefc3e8c39 + reflect.getprototypeof: "npm:^1.0.6" + checksum: 10/d6b2f0e81161682d2726eb92b1dc2b0890890f9930f33f9bcf6fc7272895ce66bc368066d273e6677776de167608adc53fcf81f1be39a146d64b630edbf2081c languageName: node linkType: hard @@ -13457,23 +13684,38 @@ __metadata: languageName: node linkType: hard -"typescript@npm:^5.4.2": - version: 5.4.2 - resolution: "typescript@npm:5.4.2" +"typescript-eslint@npm:^8.47.0": + version: 8.47.0 + resolution: "typescript-eslint@npm:8.47.0" + dependencies: + "@typescript-eslint/eslint-plugin": "npm:8.47.0" + "@typescript-eslint/parser": "npm:8.47.0" + "@typescript-eslint/typescript-estree": "npm:8.47.0" + "@typescript-eslint/utils": "npm:8.47.0" + peerDependencies: + eslint: ^8.57.0 || ^9.0.0 + typescript: ">=4.8.4 <6.0.0" + checksum: 10/159dad98535dafd68c6228fae4aaf9e02d65d9ac3b02ddf0356b56ce72651dd9860e8bf9e0ee22532d77dd382d7f810e1bf1dd41c3fab381f627a08580c5117e + languageName: node + linkType: hard + +"typescript@npm:>=5, typescript@npm:^5.9.3": + version: 5.9.3 + resolution: "typescript@npm:5.9.3" bin: tsc: bin/tsc tsserver: bin/tsserver - checksum: 10/f8cfdc630ab1672f004e9561eb2916935b2d267792d07ce93e97fc601c7a65191af32033d5e9c0169b7dc37da7db9bf320f7432bc84527cb7697effaa4e4559d + checksum: 10/c089d9d3da2729fd4ac517f9b0e0485914c4b3c26f80dc0cffcb5de1719a17951e92425d55db59515c1a7ddab65808466debb864d0d56dcf43f27007d0709594 languageName: node linkType: hard -"typescript@patch:typescript@npm%3A^5.4.2#optional!builtin": - version: 5.4.2 - resolution: "typescript@patch:typescript@npm%3A5.4.2#optional!builtin::version=5.4.2&hash=d69c25" +"typescript@patch:typescript@npm%3A>=5#optional!builtin, typescript@patch:typescript@npm%3A^5.9.3#optional!builtin": + version: 5.9.3 + resolution: "typescript@patch:typescript@npm%3A5.9.3#optional!builtin::version=5.9.3&hash=d69c25" bin: tsc: bin/tsc tsserver: bin/tsserver - checksum: 10/ef4fc2994cc0219dc9ada94c92106ba8d44cbfd7a0328ed6f8d730311caf66e114cdfa07fbc6f369bfc0fc182d9493851b3bf1644c06fc5818690b19ee960d72 + checksum: 10/5d416ad4f2ea564f515a3f919e901edbfa4b497cc17dd325c5726046c3eef7ed22d1f59c787267d478311f6f0a265ff790f8a6c7e9df3ea3471458f5ec81e8b7 languageName: node linkType: hard @@ -13486,15 +13728,15 @@ __metadata: languageName: node linkType: hard -"unbox-primitive@npm:^1.0.2": - version: 1.0.2 - resolution: "unbox-primitive@npm:1.0.2" +"unbox-primitive@npm:^1.1.0": + version: 1.1.0 + resolution: "unbox-primitive@npm:1.1.0" dependencies: - call-bind: "npm:^1.0.2" + call-bound: "npm:^1.0.3" has-bigints: "npm:^1.0.2" - has-symbols: "npm:^1.0.3" - which-boxed-primitive: "npm:^1.0.2" - checksum: 10/06e1ee41c1095e37281cb71a975cb3350f7cb470a0665d2576f02cc9564f623bd90cfc0183693b8a7fdf2d242963dcc3010b509fa3ac683f540c765c0f3e7e43 + has-symbols: "npm:^1.1.0" + which-boxed-primitive: "npm:^1.1.1" + checksum: 10/fadb347020f66b2c8aeacf8b9a79826fa34cc5e5457af4eb0bbc4e79bd87fed0fa795949825df534320f7c13f199259516ad30abc55a6e7b91d8d996ca069e50 languageName: node linkType: hard @@ -13619,6 +13861,73 @@ __metadata: languageName: node linkType: hard +"unrs-resolver@npm:^1.7.11": + version: 1.11.1 + resolution: "unrs-resolver@npm:1.11.1" + dependencies: + "@unrs/resolver-binding-android-arm-eabi": "npm:1.11.1" + "@unrs/resolver-binding-android-arm64": "npm:1.11.1" + "@unrs/resolver-binding-darwin-arm64": "npm:1.11.1" + "@unrs/resolver-binding-darwin-x64": "npm:1.11.1" + "@unrs/resolver-binding-freebsd-x64": "npm:1.11.1" + "@unrs/resolver-binding-linux-arm-gnueabihf": "npm:1.11.1" + "@unrs/resolver-binding-linux-arm-musleabihf": "npm:1.11.1" + "@unrs/resolver-binding-linux-arm64-gnu": "npm:1.11.1" + "@unrs/resolver-binding-linux-arm64-musl": "npm:1.11.1" + "@unrs/resolver-binding-linux-ppc64-gnu": "npm:1.11.1" + "@unrs/resolver-binding-linux-riscv64-gnu": "npm:1.11.1" + "@unrs/resolver-binding-linux-riscv64-musl": "npm:1.11.1" + "@unrs/resolver-binding-linux-s390x-gnu": "npm:1.11.1" + "@unrs/resolver-binding-linux-x64-gnu": "npm:1.11.1" + "@unrs/resolver-binding-linux-x64-musl": "npm:1.11.1" + "@unrs/resolver-binding-wasm32-wasi": "npm:1.11.1" + "@unrs/resolver-binding-win32-arm64-msvc": "npm:1.11.1" + "@unrs/resolver-binding-win32-ia32-msvc": "npm:1.11.1" + "@unrs/resolver-binding-win32-x64-msvc": "npm:1.11.1" + napi-postinstall: "npm:^0.3.0" + dependenciesMeta: + "@unrs/resolver-binding-android-arm-eabi": + optional: true + "@unrs/resolver-binding-android-arm64": + optional: true + "@unrs/resolver-binding-darwin-arm64": + optional: true + "@unrs/resolver-binding-darwin-x64": + optional: true + "@unrs/resolver-binding-freebsd-x64": + optional: true + "@unrs/resolver-binding-linux-arm-gnueabihf": + optional: true + "@unrs/resolver-binding-linux-arm-musleabihf": + optional: true + "@unrs/resolver-binding-linux-arm64-gnu": + optional: true + "@unrs/resolver-binding-linux-arm64-musl": + optional: true + "@unrs/resolver-binding-linux-ppc64-gnu": + optional: true + "@unrs/resolver-binding-linux-riscv64-gnu": + optional: true + "@unrs/resolver-binding-linux-riscv64-musl": + optional: true + "@unrs/resolver-binding-linux-s390x-gnu": + optional: true + "@unrs/resolver-binding-linux-x64-gnu": + optional: true + "@unrs/resolver-binding-linux-x64-musl": + optional: true + "@unrs/resolver-binding-wasm32-wasi": + optional: true + "@unrs/resolver-binding-win32-arm64-msvc": + optional: true + "@unrs/resolver-binding-win32-ia32-msvc": + optional: true + "@unrs/resolver-binding-win32-x64-msvc": + optional: true + checksum: 10/4de653508cbaae47883a896bd5cdfef0e5e87b428d62620d16fd35cd534beaebf08ebf0cf2f8b4922aa947b2fe745180facf6cc3f39ba364f7ce0f974cb06a70 + languageName: node + linkType: hard + "update-browserslist-db@npm:^1.0.13": version: 1.0.13 resolution: "update-browserslist-db@npm:1.0.13" @@ -13843,36 +14152,37 @@ __metadata: languageName: node linkType: hard -"which-boxed-primitive@npm:^1.0.2": - version: 1.0.2 - resolution: "which-boxed-primitive@npm:1.0.2" +"which-boxed-primitive@npm:^1.1.0, which-boxed-primitive@npm:^1.1.1": + version: 1.1.1 + resolution: "which-boxed-primitive@npm:1.1.1" dependencies: - is-bigint: "npm:^1.0.1" - is-boolean-object: "npm:^1.1.0" - is-number-object: "npm:^1.0.4" - is-string: "npm:^1.0.5" - is-symbol: "npm:^1.0.3" - checksum: 10/9c7ca7855255f25ac47f4ce8b59c4cc33629e713fd7a165c9d77a2bb47bf3d9655a5664660c70337a3221cf96742f3589fae15a3a33639908d33e29aa2941efb + is-bigint: "npm:^1.1.0" + is-boolean-object: "npm:^1.2.1" + is-number-object: "npm:^1.1.1" + is-string: "npm:^1.1.1" + is-symbol: "npm:^1.1.1" + checksum: 10/a877c0667bc089518c83ad4d845cf8296b03efe3565c1de1940c646e00a2a1ae9ed8a185bcfa27cbf352de7906f0616d83b9d2f19ca500ee02a551fb5cf40740 languageName: node linkType: hard -"which-builtin-type@npm:^1.1.3": - version: 1.1.4 - resolution: "which-builtin-type@npm:1.1.4" +"which-builtin-type@npm:^1.2.1": + version: 1.2.1 + resolution: "which-builtin-type@npm:1.2.1" dependencies: + call-bound: "npm:^1.0.2" function.prototype.name: "npm:^1.1.6" has-tostringtag: "npm:^1.0.2" is-async-function: "npm:^2.0.0" - is-date-object: "npm:^1.0.5" - is-finalizationregistry: "npm:^1.0.2" + is-date-object: "npm:^1.1.0" + is-finalizationregistry: "npm:^1.1.0" is-generator-function: "npm:^1.0.10" - is-regex: "npm:^1.1.4" + is-regex: "npm:^1.2.1" is-weakref: "npm:^1.0.2" isarray: "npm:^2.0.5" - which-boxed-primitive: "npm:^1.0.2" + which-boxed-primitive: "npm:^1.1.0" which-collection: "npm:^1.0.2" - which-typed-array: "npm:^1.1.15" - checksum: 10/c0cdb9b004e7a326f4ce54c75b19658a3bec73601a71dd7e2d9538accb3e781b546b589c3f306caf5e7429ac1c8019028d5e662e2860f03603354105b8247c83 + which-typed-array: "npm:^1.1.16" + checksum: 10/22c81c5cb7a896c5171742cd30c90d992ff13fb1ea7693e6cf80af077791613fb3f89aa9b4b7f890bd47b6ce09c6322c409932359580a2a2a54057f7b52d1cbe languageName: node linkType: hard @@ -13895,29 +14205,18 @@ __metadata: languageName: node linkType: hard -"which-typed-array@npm:^1.1.14": - version: 1.1.14 - resolution: "which-typed-array@npm:1.1.14" - dependencies: - available-typed-arrays: "npm:^1.0.6" - call-bind: "npm:^1.0.5" - for-each: "npm:^0.3.3" - gopd: "npm:^1.0.1" - has-tostringtag: "npm:^1.0.1" - checksum: 10/56253d2c9d6b41b8a4af96d8c2751bac5508906bd500cdcd0dc5301fb082de0391a4311ab21258bc8d2609ed593f422c1a66f0020fcb3a1e97f719bc928b9018 - languageName: node - linkType: hard - -"which-typed-array@npm:^1.1.15": - version: 1.1.15 - resolution: "which-typed-array@npm:1.1.15" +"which-typed-array@npm:^1.1.16, which-typed-array@npm:^1.1.19": + version: 1.1.19 + resolution: "which-typed-array@npm:1.1.19" dependencies: available-typed-arrays: "npm:^1.0.7" - call-bind: "npm:^1.0.7" - for-each: "npm:^0.3.3" - gopd: "npm:^1.0.1" + call-bind: "npm:^1.0.8" + call-bound: "npm:^1.0.4" + for-each: "npm:^0.3.5" + get-proto: "npm:^1.0.1" + gopd: "npm:^1.2.0" has-tostringtag: "npm:^1.0.2" - checksum: 10/c3b6a99beadc971baa53c3ee5b749f2b9bdfa3b3b9a70650dd8511a48b61d877288b498d424712e9991d16019633086bd8b5923369460d93463c5825fa36c448 + checksum: 10/12be30fb88567f9863186bee1777f11bea09dd59ed8b3ce4afa7dd5cade75e2f4cc56191a2da165113cc7cf79987ba021dac1e22b5b62aa7e5c56949f2469a68 languageName: node linkType: hard @@ -13952,6 +14251,13 @@ __metadata: languageName: node linkType: hard +"word-wrap@npm:^1.2.5": + version: 1.2.5 + resolution: "word-wrap@npm:1.2.5" + checksum: 10/1ec6f6089f205f83037be10d0c4b34c9183b0b63fca0834a5b3cee55dd321429d73d40bb44c8fc8471b5203d6e8f8275717f49a8ff4b2b0ab41d7e1b563e0854 + languageName: node + linkType: hard + "wordwrap@npm:^1.0.0": version: 1.0.0 resolution: "wordwrap@npm:1.0.0" @@ -14211,7 +14517,7 @@ __metadata: languageName: node linkType: hard -"yargs@npm:^17.0.0, yargs@npm:^17.3.1, yargs@npm:^17.5.1, yargs@npm:^17.6.2": +"yargs@npm:^17.3.1, yargs@npm:^17.5.1, yargs@npm:^17.6.2": version: 17.7.2 resolution: "yargs@npm:17.7.2" dependencies: