diff --git a/backend/.eslintrc.js b/backend/.eslintrc.js deleted file mode 100644 index 574b8a4b4..000000000 --- a/backend/.eslintrc.js +++ /dev/null @@ -1,98 +0,0 @@ -/* SPDX-FileCopyrightText: 2021 The HedgeDoc developers (see AUTHORS file) - * - * SPDX-License-Identifier: CC0-1.0 - */ -module.exports = { - parser: '@typescript-eslint/parser', - parserOptions: { - project: 'tsconfig.json', - sourceType: 'module', - }, - overrides: [ - { - files: ['test/**', 'src/**/*.spec.ts'], - extends: ['plugin:jest/recommended'], - rules: { - '@typescript-eslint/unbound-method': 'off', - '@typescript-eslint/no-unsafe-assignment': 'off', - '@typescript-eslint/no-unsafe-argument': 'off', - '@typescript-eslint/no-unsafe-member-access': 'off', - '@typescript-eslint/require-await': 'off', - '@typescript-eslint/explicit-function-return-type': 'off', - 'jest/unbound-method': 'error', - 'jest/expect-expect': [ - 'error', - { - assertFunctionNames: [ - 'expect', - 'request.**.expect', - 'agent[0-9]?.**.expect', - ], - }, - ], - 'jest/no-standalone-expect': [ - 'error', - { - additionalTestBlockFunctions: ['afterEach', 'beforeAll'], - }, - ], - }, - }, - ], - plugins: ['@typescript-eslint', 'jest', 'eslint-plugin-local-rules','@darraghor/nestjs-typed'], - extends: [ - 'eslint:recommended', - 'plugin:@typescript-eslint/recommended', - 'plugin:@typescript-eslint/recommended-requiring-type-checking', - 'plugin:prettier/recommended', - 'plugin:@darraghor/nestjs-typed/recommended' - ], - root: true, - env: { - node: true, - jest: true, - }, - rules: { - 'prettier/prettier': ['error', require('./.prettierrc.json')], - 'local-rules/correct-logger-context': 'error', - 'local-rules/no-typeorm-equal': 'error', - 'func-style': ['error', 'declaration'], - '@typescript-eslint/no-unused-vars': [ - 'warn', - { argsIgnorePattern: '^_+$' }, - ], - '@typescript-eslint/explicit-function-return-type': 'warn', - 'no-return-await': 'off', - '@typescript-eslint/return-await': ['error', 'always'], - '@typescript-eslint/naming-convention': [ - 'error', - { - selector: 'default', - format: ['camelCase'], - leadingUnderscore: 'allow', - trailingUnderscore: 'allow', - }, - { - selector: 'import', - format: ['camelCase', 'PascalCase'], - }, - { - selector: 'enumMember', - format: ['UPPER_CASE'], - }, - { - selector: 'variable', - format: ['camelCase', 'UPPER_CASE'], - leadingUnderscore: 'allow', - trailingUnderscore: 'allow', - }, - - { - selector: 'typeLike', - format: ['PascalCase'], - }, - ], - // We have our own OpenApi decorator and don't directly use the one from NestJS - '@darraghor/nestjs-typed/api-method-should-specify-api-response': 'off', - }, -}; diff --git a/backend/eslint-local-rules.js b/backend/eslint-local-rules.js index faa5038d7..3a988e958 100644 --- a/backend/eslint-local-rules.js +++ b/backend/eslint-local-rules.js @@ -19,6 +19,7 @@ module.exports = { schema: [], }, create: function (context) { + const sourceCode = context.sourceCode ?? context.getSourceCode(); return { CallExpression: function (node) { if ( @@ -31,7 +32,9 @@ module.exports = { ) { const usedContext = node.arguments[1].value; let correctContext = 'undefined'; - const ancestors = context.getAncestors(); + const ancestors = sourceCode.getAncestors + ? sourceCode.getAncestors(node) + : context.getAncestors(); for (let index = ancestors.length - 1; index >= 0; index--) { if (ancestors[index].type === 'MethodDefinition') { correctContext = ancestors[index].key.name; @@ -45,7 +48,7 @@ module.exports = { fix: function (fixer) { return fixer.replaceText( node.arguments[1], - `'${correctContext}'` + `'${correctContext}'`, ); }, }); @@ -74,7 +77,7 @@ module.exports = { fix: function (fixer) { return fixer.replaceText( node.parent, - `{ id: ${node.parent.arguments[0].name}.id }` + `{ id: ${node.parent.arguments[0].name}.id }`, ); }, }); diff --git a/backend/eslint.config.mjs b/backend/eslint.config.mjs new file mode 100644 index 000000000..6327f613d --- /dev/null +++ b/backend/eslint.config.mjs @@ -0,0 +1,122 @@ +/* SPDX-FileCopyrightText: 2024 The HedgeDoc developers (see AUTHORS file) + * + * SPDX-License-Identifier: CC0-1.0 + */ + +import { + includeIgnoreFile +} from "@eslint/compat"; +import eslint from "@eslint/js"; +import jest from "eslint-plugin-jest"; +import localRules from "eslint-plugin-local-rules"; +import eslintPluginPrettierRecommended + from "eslint-plugin-prettier/recommended"; + +import path from "node:path"; +import { fileURLToPath } from "node:url"; +import tseslint from "typescript-eslint"; + +const __filename = fileURLToPath(import.meta.url); +const __dirname = path.dirname(__filename); +const gitignorePath = path.resolve(__dirname, ".gitignore"); + +export default tseslint.config( + // typescript eslint default config + type checks + eslint.configs.recommended, + ...tseslint.configs.recommendedTypeChecked, + + { + languageOptions: { + parserOptions: { + projectService: true, + tsconfigRootDir: __dirname + } + } + }, + eslintPluginPrettierRecommended, + // ignore files from .gitignore + // https://eslint.org/docs/latest/use/configure/ignore#including-gitignore-files + includeIgnoreFile(gitignorePath), + { ignores: ["eslint.config.mjs"] }, + { + plugins: { + "local-rules": localRules + } + }, + // custom rules + { + rules: { + "local-rules/correct-logger-context": "error", + "local-rules/no-typeorm-equal": "error", + "func-style": ["error", "declaration"], + "@typescript-eslint/no-unused-vars": [ + "warn", + { argsIgnorePattern: "^_+$" } + ], + "@typescript-eslint/explicit-function-return-type": "warn", + "no-return-await": "off", + "@typescript-eslint/return-await": ["error", "always"], + "@typescript-eslint/naming-convention": [ + "error", + { + selector: "default", + format: ["camelCase"], + leadingUnderscore: "allow", + trailingUnderscore: "allow" + }, + { + selector: "import", + format: ["camelCase", "PascalCase"] + }, + { + selector: "enumMember", + format: ["UPPER_CASE"] + }, + { + selector: "variable", + format: ["camelCase", "UPPER_CASE"], + leadingUnderscore: "allow", + trailingUnderscore: "allow" + }, + + { + selector: "typeLike", + format: ["PascalCase"] + } + ], + // We have our own OpenApi decorator and don't directly use the one from NestJS + "@darraghor/nestjs-typed/api-method-should-specify-api-response": "off" + } + }, + + { + files: ["test/**", "src/**/*.spec.ts"], + ...jest.configs["flat/recommended"], + rules: { + "@typescript-eslint/unbound-method": "off", + "@typescript-eslint/no-unsafe-assignment": "off", + "@typescript-eslint/no-unsafe-argument": "off", + "@typescript-eslint/no-unsafe-member-access": "off", + "@typescript-eslint/require-await": "off", + "@typescript-eslint/explicit-function-return-type": "off", + + "jest/expect-expect": [ + "error", + { + assertFunctionNames: [ + "expect", + "request.**.expect", + "agent[0-9]?.**.expect" + ] + } + ], + + "jest/no-standalone-expect": [ + "error", + { + additionalTestBlockFunctions: ["afterEach", "beforeAll"] + } + ] + } + } +); diff --git a/backend/package.json b/backend/package.json index 9d2b33768..57e012084 100644 --- a/backend/package.json +++ b/backend/package.json @@ -80,6 +80,8 @@ }, "devDependencies": { "@darraghor/eslint-plugin-nestjs-typed": "5.0.18", + "@eslint/compat": "1.1.1", + "@eslint/js": "9.9.1", "@nestjs/cli": "10.4.5", "@nestjs/schematics": "10.1.4", "@nestjs/testing": "10.4.1", @@ -89,6 +91,7 @@ "@types/cookie": "0.6.0", "@types/cookie-signature": "1.1.2", "@types/diff": "5.2.2", + "@types/eslint__js": "8.42.3", "@types/express": "4.17.21", "@types/express-session": "1.18.0", "@types/jest": "29.5.12", @@ -100,8 +103,8 @@ "@types/source-map-support": "0.5.10", "@types/supertest": "2.0.16", "@types/ws": "8.5.10", - "@typescript-eslint/eslint-plugin": "6.21.0", - "@typescript-eslint/parser": "6.21.0", + "@typescript-eslint/eslint-plugin": "8.3.0", + "@typescript-eslint/parser": "8.3.0", "eslint": "9.9.1", "eslint-config-prettier": "9.1.0", "eslint-plugin-import": "2.29.1", diff --git a/commons/package.json b/commons/package.json index 656e43161..612c0854f 100644 --- a/commons/package.json +++ b/commons/package.json @@ -55,8 +55,8 @@ "@mrdrogdrog/optional": "1.2.1", "@types/js-yaml": "4.0.9", "@types/ws": "8.5.10", - "@typescript-eslint/eslint-plugin": "6.21.0", - "@typescript-eslint/parser": "6.21.0", + "@typescript-eslint/eslint-plugin": "8.3.0", + "@typescript-eslint/parser": "8.3.0", "eslint": "9.9.1", "eslint-config-prettier": "9.1.0", "eslint-plugin-jest": "28.8.1", diff --git a/frontend/package.json b/frontend/package.json index ba3c4905a..b59e1ec1d 100644 --- a/frontend/package.json +++ b/frontend/package.json @@ -142,8 +142,8 @@ "@types/testing-library__jest-dom": "5.14.9", "@types/uuid": "9.0.8", "@types/ws": "8.5.10", - "@typescript-eslint/eslint-plugin": "6.21.0", - "@typescript-eslint/parser": "6.21.0", + "@typescript-eslint/eslint-plugin": "8.3.0", + "@typescript-eslint/parser": "8.3.0", "csstype": "3.1.3", "cypress": "13.6.6", "cypress-commands": "3.0.0", diff --git a/html-to-react/package.json b/html-to-react/package.json index b6985c727..11b95c570 100644 --- a/html-to-react/package.json +++ b/html-to-react/package.json @@ -52,8 +52,8 @@ "@jest/types": "29.6.3", "@types/react": "18.3.5", "@types/react-dom": "18.3.0", - "@typescript-eslint/eslint-plugin": "6.21.0", - "@typescript-eslint/parser": "6.21.0", + "@typescript-eslint/eslint-plugin": "8.3.0", + "@typescript-eslint/parser": "8.3.0", "eslint": "9.9.1", "eslint-config-prettier": "9.1.0", "eslint-plugin-jest": "28.8.1", diff --git a/markdown-it-plugins/package.json b/markdown-it-plugins/package.json index e2c86cfaa..d320d27f2 100644 --- a/markdown-it-plugins/package.json +++ b/markdown-it-plugins/package.json @@ -110,8 +110,8 @@ "devDependencies": { "@jest/types": "29.6.3", "@types/markdown-it": "13.0.7", - "@typescript-eslint/eslint-plugin": "6.21.0", - "@typescript-eslint/parser": "6.21.0", + "@typescript-eslint/eslint-plugin": "8.3.0", + "@typescript-eslint/parser": "8.3.0", "eslint": "9.9.1", "eslint-config-prettier": "9.1.0", "eslint-plugin-jest": "28.8.1", diff --git a/yarn.lock b/yarn.lock index 3a70b2c91..7e06b8261 100644 --- a/yarn.lock +++ b/yarn.lock @@ -2397,17 +2397,17 @@ __metadata: languageName: node linkType: hard -"@eslint-community/regexpp@npm:^4.11.0": +"@eslint-community/regexpp@npm:^4.10.0, @eslint-community/regexpp@npm:^4.11.0": version: 4.11.0 resolution: "@eslint-community/regexpp@npm:4.11.0" checksum: 10c0/0f6328869b2741e2794da4ad80beac55cba7de2d3b44f796a60955b0586212ec75e6b0253291fd4aad2100ad471d1480d8895f2b54f1605439ba4c875e05e523 languageName: node linkType: hard -"@eslint-community/regexpp@npm:^4.5.1": - version: 4.10.0 - resolution: "@eslint-community/regexpp@npm:4.10.0" - checksum: 10c0/c5f60ef1f1ea7649fa7af0e80a5a79f64b55a8a8fa5086de4727eb4c86c652aedee407a9c143b8995d2c0b2d75c1222bec9ba5d73dbfc1f314550554f0979ef4 +"@eslint/compat@npm:1.1.1": + version: 1.1.1 + resolution: "@eslint/compat@npm:1.1.1" + checksum: 10c0/ca8aa3811fa22d45913f5724978e6f3ae05fb7685b793de4797c9db3b0e22b530f0f492011b253754bffce879d7cece65762cc3391239b5d2249aef8230edc9a languageName: node linkType: hard @@ -2489,6 +2489,8 @@ __metadata: dependencies: "@azure/storage-blob": "npm:12.24.0" "@darraghor/eslint-plugin-nestjs-typed": "npm:5.0.18" + "@eslint/compat": "npm:1.1.1" + "@eslint/js": "npm:9.9.1" "@hedgedoc/commons": "workspace:commons" "@mrdrogdrog/optional": "npm:1.2.1" "@nestjs/cli": "npm:10.4.5" @@ -2514,6 +2516,7 @@ __metadata: "@types/cookie-signature": "npm:1.1.2" "@types/cron": "npm:2.4.0" "@types/diff": "npm:5.2.2" + "@types/eslint__js": "npm:8.42.3" "@types/express": "npm:4.17.21" "@types/express-session": "npm:1.18.0" "@types/jest": "npm:29.5.12" @@ -2528,8 +2531,8 @@ __metadata: "@types/source-map-support": "npm:0.5.10" "@types/supertest": "npm:2.0.16" "@types/ws": "npm:8.5.10" - "@typescript-eslint/eslint-plugin": "npm:6.21.0" - "@typescript-eslint/parser": "npm:6.21.0" + "@typescript-eslint/eslint-plugin": "npm:8.3.0" + "@typescript-eslint/parser": "npm:8.3.0" "@zxcvbn-ts/core": "npm:3.0.4" "@zxcvbn-ts/language-common": "npm:3.0.4" "@zxcvbn-ts/language-en": "npm:3.0.2" @@ -2589,8 +2592,8 @@ __metadata: "@mrdrogdrog/optional": "npm:1.2.1" "@types/js-yaml": "npm:4.0.9" "@types/ws": "npm:8.5.10" - "@typescript-eslint/eslint-plugin": "npm:6.21.0" - "@typescript-eslint/parser": "npm:6.21.0" + "@typescript-eslint/eslint-plugin": "npm:8.3.0" + "@typescript-eslint/parser": "npm:8.3.0" domhandler: "npm:5.0.3" eslint: "npm:9.9.1" eslint-config-prettier: "npm:9.1.0" @@ -2671,8 +2674,8 @@ __metadata: "@types/testing-library__jest-dom": "npm:5.14.9" "@types/uuid": "npm:9.0.8" "@types/ws": "npm:8.5.10" - "@typescript-eslint/eslint-plugin": "npm:6.21.0" - "@typescript-eslint/parser": "npm:6.21.0" + "@typescript-eslint/eslint-plugin": "npm:8.3.0" + "@typescript-eslint/parser": "npm:8.3.0" "@uiw/react-codemirror": "npm:4.23.0" abcjs: "npm:6.4.2" bootstrap: "npm:5.3.3" @@ -2773,8 +2776,8 @@ __metadata: "@jest/types": "npm:29.6.3" "@types/react": "npm:18.3.5" "@types/react-dom": "npm:18.3.0" - "@typescript-eslint/eslint-plugin": "npm:6.21.0" - "@typescript-eslint/parser": "npm:6.21.0" + "@typescript-eslint/eslint-plugin": "npm:8.3.0" + "@typescript-eslint/parser": "npm:8.3.0" domelementtype: "npm:2.3.0" domhandler: "npm:5.0.3" eslint: "npm:9.9.1" @@ -2800,8 +2803,8 @@ __metadata: "@jest/types": "npm:29.6.3" "@mrdrogdrog/optional": "npm:1.2.1" "@types/markdown-it": "npm:13.0.7" - "@typescript-eslint/eslint-plugin": "npm:6.21.0" - "@typescript-eslint/parser": "npm:6.21.0" + "@typescript-eslint/eslint-plugin": "npm:8.3.0" + "@typescript-eslint/parser": "npm:8.3.0" eslint: "npm:9.9.1" eslint-config-prettier: "npm:9.1.0" eslint-plugin-jest: "npm:28.8.1" @@ -5044,7 +5047,26 @@ __metadata: languageName: node linkType: hard -"@types/estree@npm:^1.0.0, @types/estree@npm:^1.0.5": +"@types/eslint@npm:*": + version: 9.6.1 + resolution: "@types/eslint@npm:9.6.1" + dependencies: + "@types/estree": "npm:*" + "@types/json-schema": "npm:*" + checksum: 10c0/69ba24fee600d1e4c5abe0df086c1a4d798abf13792d8cfab912d76817fe1a894359a1518557d21237fbaf6eda93c5ab9309143dee4c59ef54336d1b3570420e + languageName: node + linkType: hard + +"@types/eslint__js@npm:8.42.3": + version: 8.42.3 + resolution: "@types/eslint__js@npm:8.42.3" + dependencies: + "@types/eslint": "npm:*" + checksum: 10c0/ccc5180b92155929a089ffb03ed62625216dcd5e46dd3197c6f82370ce8b52c7cb9df66c06b0a3017995409e023bc9eafe5a3f009e391960eacefaa1b62d9a56 + languageName: node + linkType: hard + +"@types/estree@npm:*, @types/estree@npm:^1.0.0, @types/estree@npm:^1.0.5": version: 1.0.5 resolution: "@types/estree@npm:1.0.5" checksum: 10c0/b3b0e334288ddb407c7b3357ca67dbee75ee22db242ca7c56fe27db4e1a31989cb8af48a84dd401deb787fe10cc6b2ab1ee82dc4783be87ededbe3d53c79c70d @@ -5174,7 +5196,7 @@ __metadata: languageName: node linkType: hard -"@types/json-schema@npm:^7.0.11, @types/json-schema@npm:^7.0.12, @types/json-schema@npm:^7.0.8, @types/json-schema@npm:^7.0.9": +"@types/json-schema@npm:*, @types/json-schema@npm:^7.0.11, @types/json-schema@npm:^7.0.8, @types/json-schema@npm:^7.0.9": version: 7.0.15 resolution: "@types/json-schema@npm:7.0.15" checksum: 10c0/a996a745e6c5d60292f36731dd41341339d4eeed8180bb09226e5c8d23759067692b1d88e5d91d72ee83dfc00d3aca8e7bd43ea120516c17922cbcb7c3e252db @@ -5485,7 +5507,7 @@ __metadata: languageName: node linkType: hard -"@types/semver@npm:^7.3.12, @types/semver@npm:^7.5.0": +"@types/semver@npm:^7.3.12": version: 7.5.8 resolution: "@types/semver@npm:7.5.8" checksum: 10c0/8663ff927234d1c5fcc04b33062cb2b9fcfbe0f5f351ed26c4d1e1581657deebd506b41ff7fdf89e787e3d33ce05854bc01686379b89e9c49b564c4cfa988efa @@ -5655,46 +5677,44 @@ __metadata: languageName: node linkType: hard -"@typescript-eslint/eslint-plugin@npm:6.21.0": - version: 6.21.0 - resolution: "@typescript-eslint/eslint-plugin@npm:6.21.0" +"@typescript-eslint/eslint-plugin@npm:8.3.0": + version: 8.3.0 + resolution: "@typescript-eslint/eslint-plugin@npm:8.3.0" dependencies: - "@eslint-community/regexpp": "npm:^4.5.1" - "@typescript-eslint/scope-manager": "npm:6.21.0" - "@typescript-eslint/type-utils": "npm:6.21.0" - "@typescript-eslint/utils": "npm:6.21.0" - "@typescript-eslint/visitor-keys": "npm:6.21.0" - debug: "npm:^4.3.4" + "@eslint-community/regexpp": "npm:^4.10.0" + "@typescript-eslint/scope-manager": "npm:8.3.0" + "@typescript-eslint/type-utils": "npm:8.3.0" + "@typescript-eslint/utils": "npm:8.3.0" + "@typescript-eslint/visitor-keys": "npm:8.3.0" graphemer: "npm:^1.4.0" - ignore: "npm:^5.2.4" + ignore: "npm:^5.3.1" natural-compare: "npm:^1.4.0" - semver: "npm:^7.5.4" - ts-api-utils: "npm:^1.0.1" + ts-api-utils: "npm:^1.3.0" peerDependencies: - "@typescript-eslint/parser": ^6.0.0 || ^6.0.0-alpha - eslint: ^7.0.0 || ^8.0.0 + "@typescript-eslint/parser": ^8.0.0 || ^8.0.0-alpha.0 + eslint: ^8.57.0 || ^9.0.0 peerDependenciesMeta: typescript: optional: true - checksum: 10c0/f911a79ee64d642f814a3b6cdb0d324b5f45d9ef955c5033e78903f626b7239b4aa773e464a38c3e667519066169d983538f2bf8e5d00228af587c9d438fb344 + checksum: 10c0/d5242b16b8602ab5817cf04b35ac7208b6bee530730eeed6eab886667d1f2c5fac1537b3e33c453393090a1c6fcd50f727c07f5168985a00e7d23d1f99576988 languageName: node linkType: hard -"@typescript-eslint/parser@npm:6.21.0": - version: 6.21.0 - resolution: "@typescript-eslint/parser@npm:6.21.0" +"@typescript-eslint/parser@npm:8.3.0": + version: 8.3.0 + resolution: "@typescript-eslint/parser@npm:8.3.0" dependencies: - "@typescript-eslint/scope-manager": "npm:6.21.0" - "@typescript-eslint/types": "npm:6.21.0" - "@typescript-eslint/typescript-estree": "npm:6.21.0" - "@typescript-eslint/visitor-keys": "npm:6.21.0" + "@typescript-eslint/scope-manager": "npm:8.3.0" + "@typescript-eslint/types": "npm:8.3.0" + "@typescript-eslint/typescript-estree": "npm:8.3.0" + "@typescript-eslint/visitor-keys": "npm:8.3.0" debug: "npm:^4.3.4" peerDependencies: - eslint: ^7.0.0 || ^8.0.0 + eslint: ^8.57.0 || ^9.0.0 peerDependenciesMeta: typescript: optional: true - checksum: 10c0/a8f99820679decd0d115c0af61903fb1de3b1b5bec412dc72b67670bf636de77ab07f2a68ee65d6da7976039bbf636907f9d5ca546db3f0b98a31ffbc225bc7d + checksum: 10c0/8185e7f1f570cded8719cfb1e8147fcbbc5b8796de628d68024d2929ce6fb02d1f6101b741161229e877be1c30c720701e1e1f7c4313dba33d4bb1190a85f705 languageName: node linkType: hard @@ -5726,16 +5746,6 @@ __metadata: languageName: node linkType: hard -"@typescript-eslint/scope-manager@npm:6.21.0": - version: 6.21.0 - resolution: "@typescript-eslint/scope-manager@npm:6.21.0" - dependencies: - "@typescript-eslint/types": "npm:6.21.0" - "@typescript-eslint/visitor-keys": "npm:6.21.0" - checksum: 10c0/eaf868938d811cbbea33e97e44ba7050d2b6892202cea6a9622c486b85ab1cf801979edf78036179a8ba4ac26f1dfdf7fcc83a68c1ff66be0b3a8e9a9989b526 - languageName: node - linkType: hard - "@typescript-eslint/scope-manager@npm:7.14.1": version: 7.14.1 resolution: "@typescript-eslint/scope-manager@npm:7.14.1" @@ -5766,20 +5776,18 @@ __metadata: languageName: node linkType: hard -"@typescript-eslint/type-utils@npm:6.21.0": - version: 6.21.0 - resolution: "@typescript-eslint/type-utils@npm:6.21.0" +"@typescript-eslint/type-utils@npm:8.3.0": + version: 8.3.0 + resolution: "@typescript-eslint/type-utils@npm:8.3.0" dependencies: - "@typescript-eslint/typescript-estree": "npm:6.21.0" - "@typescript-eslint/utils": "npm:6.21.0" + "@typescript-eslint/typescript-estree": "npm:8.3.0" + "@typescript-eslint/utils": "npm:8.3.0" debug: "npm:^4.3.4" - ts-api-utils: "npm:^1.0.1" - peerDependencies: - eslint: ^7.0.0 || ^8.0.0 + ts-api-utils: "npm:^1.3.0" peerDependenciesMeta: typescript: optional: true - checksum: 10c0/7409c97d1c4a4386b488962739c4f1b5b04dc60cf51f8cd88e6b12541f84d84c6b8b67e491a147a2c95f9ec486539bf4519fb9d418411aef6537b9c156468117 + checksum: 10c0/0e4b42ff2bfcd1727893bb7fe5fcf1aa808b45b5f690c249c68ce7aff68ddfba3d8b1565de2f08972915df23fa7ab114c09f507668e9b0b63faf1e34a5091706 languageName: node linkType: hard @@ -5790,13 +5798,6 @@ __metadata: languageName: node linkType: hard -"@typescript-eslint/types@npm:6.21.0": - version: 6.21.0 - resolution: "@typescript-eslint/types@npm:6.21.0" - checksum: 10c0/020631d3223bbcff8a0da3efbdf058220a8f48a3de221563996ad1dcc30d6c08dadc3f7608cc08830d21c0d565efd2db19b557b9528921c78aabb605eef2d74d - languageName: node - linkType: hard - "@typescript-eslint/types@npm:7.14.1": version: 7.14.1 resolution: "@typescript-eslint/types@npm:7.14.1" @@ -5836,25 +5837,6 @@ __metadata: languageName: node linkType: hard -"@typescript-eslint/typescript-estree@npm:6.21.0": - version: 6.21.0 - resolution: "@typescript-eslint/typescript-estree@npm:6.21.0" - dependencies: - "@typescript-eslint/types": "npm:6.21.0" - "@typescript-eslint/visitor-keys": "npm:6.21.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: 10c0/af1438c60f080045ebb330155a8c9bb90db345d5069cdd5d01b67de502abb7449d6c75500519df829f913a6b3f490ade3e8215279b6bdc63d0fb0ae61034df5f - languageName: node - linkType: hard - "@typescript-eslint/typescript-estree@npm:7.14.1": version: 7.14.1 resolution: "@typescript-eslint/typescript-estree@npm:7.14.1" @@ -5912,23 +5894,6 @@ __metadata: languageName: node linkType: hard -"@typescript-eslint/utils@npm:6.21.0": - version: 6.21.0 - resolution: "@typescript-eslint/utils@npm:6.21.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:6.21.0" - "@typescript-eslint/types": "npm:6.21.0" - "@typescript-eslint/typescript-estree": "npm:6.21.0" - semver: "npm:^7.5.4" - peerDependencies: - eslint: ^7.0.0 || ^8.0.0 - checksum: 10c0/ab2df3833b2582d4e5467a484d08942b4f2f7208f8e09d67de510008eb8001a9b7460f2f9ba11c12086fd3cdcac0c626761c7995c2c6b5657d5fa6b82030a32d - languageName: node - linkType: hard - "@typescript-eslint/utils@npm:7.14.1": version: 7.14.1 resolution: "@typescript-eslint/utils@npm:7.14.1" @@ -5943,6 +5908,20 @@ __metadata: languageName: node linkType: hard +"@typescript-eslint/utils@npm:8.3.0, @typescript-eslint/utils@npm:^6.0.0 || ^7.0.0 || ^8.0.0": + version: 8.3.0 + resolution: "@typescript-eslint/utils@npm:8.3.0" + dependencies: + "@eslint-community/eslint-utils": "npm:^4.4.0" + "@typescript-eslint/scope-manager": "npm:8.3.0" + "@typescript-eslint/types": "npm:8.3.0" + "@typescript-eslint/typescript-estree": "npm:8.3.0" + peerDependencies: + eslint: ^8.57.0 || ^9.0.0 + checksum: 10c0/e4e9e820cf4b4775bb66b2293a2a827897edaba88577b63df317b50752a01d542be521cc4842976fbbd93e08b9e273ce9d20e23768d06de68a83d68cc0f68a93 + languageName: node + linkType: hard + "@typescript-eslint/utils@npm:^5.58.0": version: 5.62.0 resolution: "@typescript-eslint/utils@npm:5.62.0" @@ -5961,20 +5940,6 @@ __metadata: languageName: node linkType: hard -"@typescript-eslint/utils@npm:^6.0.0 || ^7.0.0 || ^8.0.0": - version: 8.3.0 - resolution: "@typescript-eslint/utils@npm:8.3.0" - dependencies: - "@eslint-community/eslint-utils": "npm:^4.4.0" - "@typescript-eslint/scope-manager": "npm:8.3.0" - "@typescript-eslint/types": "npm:8.3.0" - "@typescript-eslint/typescript-estree": "npm:8.3.0" - peerDependencies: - eslint: ^8.57.0 || ^9.0.0 - checksum: 10c0/e4e9e820cf4b4775bb66b2293a2a827897edaba88577b63df317b50752a01d542be521cc4842976fbbd93e08b9e273ce9d20e23768d06de68a83d68cc0f68a93 - 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" @@ -5985,16 +5950,6 @@ __metadata: languageName: node linkType: hard -"@typescript-eslint/visitor-keys@npm:6.21.0": - version: 6.21.0 - resolution: "@typescript-eslint/visitor-keys@npm:6.21.0" - dependencies: - "@typescript-eslint/types": "npm:6.21.0" - eslint-visitor-keys: "npm:^3.4.1" - checksum: 10c0/7395f69739cfa1cb83c1fb2fad30afa2a814756367302fb4facd5893eff66abc807e8d8f63eba94ed3b0fe0c1c996ac9a1680bcbf0f83717acedc3f2bb724fbf - languageName: node - linkType: hard - "@typescript-eslint/visitor-keys@npm:7.14.1": version: 7.14.1 resolution: "@typescript-eslint/visitor-keys@npm:7.14.1" @@ -11409,6 +11364,13 @@ __metadata: languageName: node linkType: hard +"ignore@npm:^5.3.1": + version: 5.3.2 + resolution: "ignore@npm:5.3.2" + checksum: 10c0/f9f652c957983634ded1e7f02da3b559a0d4cc210fca3792cb67f1b153623c9c42efdc1c4121af171e295444459fc4a9201101fb041b1104a3c000bccb188337 + languageName: node + linkType: hard + "immer@npm:^10.0.3": version: 10.0.3 resolution: "immer@npm:10.0.3"