From 1f6755d16ff63c4fbb8e65de633ebd835b2925d2 Mon Sep 17 00:00:00 2001 From: yongholeeme Date: Mon, 25 Nov 2024 20:51:36 +0900 Subject: [PATCH] =?UTF-8?q?[#43]=20=F0=9F=91=BD=EF=B8=8F=20Convert=20ts=20?= =?UTF-8?q?to=20flat=20config?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- packages/eslint-config/configs/typescript.js | 30 +++ packages/eslint-config/index.js | 2 + packages/eslint-config/package.json | 4 +- .../eslint-config/recommends/typescript.js | 19 +- .../eslint-config/rules/typescript/index.js | 9 +- .../eslint-config/tests/typescript.test.js | 5 +- packages/eslint-config/typescript/index.js | 23 -- pnpm-lock.yaml | 211 ++++++++---------- 8 files changed, 145 insertions(+), 158 deletions(-) create mode 100644 packages/eslint-config/configs/typescript.js delete mode 100644 packages/eslint-config/typescript/index.js diff --git a/packages/eslint-config/configs/typescript.js b/packages/eslint-config/configs/typescript.js new file mode 100644 index 0000000..0c83843 --- /dev/null +++ b/packages/eslint-config/configs/typescript.js @@ -0,0 +1,30 @@ +import globals from 'globals' + +import recommends from '../recommends/index.js' +import recommendsReact from '../recommends/react.js' +import recommendsTypescript from '../recommends/typescript.js' +import rulesFront from '../rules/front/index.js' +import rulesTypescript from '../rules/typescript/index.js' + +export default [ + ...recommends, + ...recommendsReact, + ...recommendsTypescript, + ...rulesFront, + rulesTypescript, + { + languageOptions: { + globals: { + ...globals.node, + ...globals.browser, + ...globals.jest, + }, + }, + }, + { + files: ['*.js', '*.jsx'], + rules: { + 'no-undef': 'error', + }, + }, +] diff --git a/packages/eslint-config/index.js b/packages/eslint-config/index.js index d92ef4b..56029a5 100644 --- a/packages/eslint-config/index.js +++ b/packages/eslint-config/index.js @@ -2,6 +2,7 @@ import fs from 'node:fs' import node from './configs/node.js' import front from './configs/front.js' +import typescript from './configs/typescript.js' const pkg = JSON.parse(fs.readFileSync(new URL('./package.json', import.meta.url), 'utf8')) @@ -13,5 +14,6 @@ export default { configs: { node, front, + typescript, }, } diff --git a/packages/eslint-config/package.json b/packages/eslint-config/package.json index 8245aa1..f3ec1cf 100644 --- a/packages/eslint-config/package.json +++ b/packages/eslint-config/package.json @@ -22,8 +22,8 @@ "@eslint/eslintrc": "^3.2.0", "@eslint/js": "^9.15.0", "@naverpay/eslint-plugin": "workspace:*", - "@typescript-eslint/eslint-plugin": ">=7", - "@typescript-eslint/parser": ">=7", + "@typescript-eslint/eslint-plugin": ">=8", + "@typescript-eslint/parser": ">=8", "eslint": ">=9", "eslint-config-eslint": "^7.0.0", "eslint-config-prettier": "^9.1.0", diff --git a/packages/eslint-config/recommends/typescript.js b/packages/eslint-config/recommends/typescript.js index d78a85e..86b5cf1 100644 --- a/packages/eslint-config/recommends/typescript.js +++ b/packages/eslint-config/recommends/typescript.js @@ -1,6 +1,13 @@ -module.exports = { - extends: [ - 'plugin:@typescript-eslint/recommended', // https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/eslint-plugin/src/configs/recommended.ts - 'plugin:@typescript-eslint/stylistic', // https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/eslint-plugin/src/configs/stylistic.ts - ], -} +import {FlatCompat} from '@eslint/eslintrc' +import path from 'path' +import {fileURLToPath} from 'url' + +// mimic CommonJS variables -- not needed if using CommonJS +const __filename = fileURLToPath(import.meta.url) +const __dirname = path.dirname(__filename) + +const compat = new FlatCompat({ + baseDirectory: __dirname, +}) + +export default [...compat.extends('plugin:@typescript-eslint/recommended', 'plugin:@typescript-eslint/stylistic')] diff --git a/packages/eslint-config/rules/typescript/index.js b/packages/eslint-config/rules/typescript/index.js index 737d9ae..e50f0a7 100644 --- a/packages/eslint-config/rules/typescript/index.js +++ b/packages/eslint-config/rules/typescript/index.js @@ -1,7 +1,10 @@ -const {typescriptNamingConvention} = require('../../custom') +import typescriptPlugin from '@typescript-eslint/eslint-plugin' +import {typescriptNamingConvention} from '../../custom/index.js' -module.exports = { - plugins: ['@naverpay/eslint-plugin'], +export default { + plugins: { + '@typescript-eslint': typescriptPlugin, + }, rules: { /** Require let or const instead of var @see https://eslint.org/docs/latest/rules/no-var */ diff --git a/packages/eslint-config/tests/typescript.test.js b/packages/eslint-config/tests/typescript.test.js index 6ede9a2..8708cda 100644 --- a/packages/eslint-config/tests/typescript.test.js +++ b/packages/eslint-config/tests/typescript.test.js @@ -1,5 +1,6 @@ -const config = require('../typescript') -const {checkErrorRule, createLinter} = require('./utils') +import {describe, test, expect} from 'vitest' +import config from '../configs/typescript.js' +import {checkErrorRule, createLinter} from './utils/index.js' describe('typescript', () => { describe('@typescript-eslint/naming-convention', function () { diff --git a/packages/eslint-config/typescript/index.js b/packages/eslint-config/typescript/index.js deleted file mode 100644 index fa930c7..0000000 --- a/packages/eslint-config/typescript/index.js +++ /dev/null @@ -1,23 +0,0 @@ -module.exports = { - extends: [ - '../recommends', - '../recommends/react', - '../recommends/typescript', - '../rules/front', - '../rules/typescript', - ].map(require.resolve), - env: { - node: true, - browser: true, - jest: true, - }, - overrides: [ - { - files: ['*.js', '*.jsx'], - rules: { - 'no-undef': 'error', - }, - }, - ], - reportUnusedDisableDirectives: true, -} diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 37cf2e1..862c8d6 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -74,11 +74,11 @@ importers: specifier: workspace:* version: link:../eslint-plugin '@typescript-eslint/eslint-plugin': - specifier: '>=7' - version: 7.15.0(@typescript-eslint/parser@7.9.0(eslint@9.15.0)(typescript@5.3.3))(eslint@9.15.0)(typescript@5.3.3) + specifier: '>=8' + version: 8.16.0(@typescript-eslint/parser@8.15.0(eslint@9.15.0)(typescript@5.3.3))(eslint@9.15.0)(typescript@5.3.3) '@typescript-eslint/parser': - specifier: '>=7' - version: 7.9.0(eslint@9.15.0)(typescript@5.3.3) + specifier: '>=8' + version: 8.15.0(eslint@9.15.0)(typescript@5.3.3) eslint: specifier: '>=9' version: 9.15.0 @@ -90,10 +90,10 @@ importers: version: 9.1.0(eslint@9.15.0) eslint-config-standard: specifier: ^17.1.0 - version: 17.1.0(eslint-plugin-import@2.31.0(@typescript-eslint/parser@7.9.0(eslint@9.15.0)(typescript@5.3.3))(eslint@9.15.0))(eslint-plugin-n@17.14.0(eslint@9.15.0))(eslint-plugin-promise@6.1.1(eslint@9.15.0))(eslint@9.15.0) + version: 17.1.0(eslint-plugin-import@2.31.0(@typescript-eslint/parser@8.15.0(eslint@9.15.0)(typescript@5.3.3))(eslint@9.15.0))(eslint-plugin-n@17.14.0(eslint@9.15.0))(eslint-plugin-promise@6.1.1(eslint@9.15.0))(eslint@9.15.0) eslint-plugin-import: specifier: '>=2.31.0' - version: 2.31.0(@typescript-eslint/parser@7.9.0(eslint@9.15.0)(typescript@5.3.3))(eslint@9.15.0) + version: 2.31.0(@typescript-eslint/parser@8.15.0(eslint@9.15.0)(typescript@5.3.3))(eslint@9.15.0) eslint-plugin-jsx-a11y: specifier: ^6.10.2 version: 6.10.2(eslint@9.15.0) @@ -705,10 +705,6 @@ packages: peerDependencies: eslint: ^6.0.0 || ^7.0.0 || >=8.0.0 - '@eslint-community/regexpp@4.10.0': - resolution: {integrity: sha512-Cu96Sd2By9mCNTx2iyKOmq10v22jUVQv0lQnlGNy16oE9589yE+QADPbrMGCkA51cKZSg3Pu/aTJVTGfL/qjUA==} - engines: {node: ^12.0.0 || ^14.0.0 || >=16.0.0} - '@eslint-community/regexpp@4.12.1': resolution: {integrity: sha512-CCZCDJuduB9OUkFkY2IgppNZMi2lBQgD2qzwXkEia16cge2pijY/aXi96CJMquDMn3nJdlPV1A5KrJEXwfLNzQ==} engines: {node: ^12.0.0 || ^14.0.0 || >=16.0.0} @@ -1046,22 +1042,12 @@ packages: '@types/yargs@17.0.32': resolution: {integrity: sha512-xQ67Yc/laOG5uMfX/093MRlGGCIBzZMarVa+gfNKJxWAIgykYpVGkBdbqEzGDDfCrVUj6Hiff4mTZ5BA6TmAog==} - '@typescript-eslint/eslint-plugin@7.15.0': - resolution: {integrity: sha512-uiNHpyjZtFrLwLDpHnzaDlP3Tt6sGMqTCiqmxaN4n4RP0EfYZDODJyddiFDF44Hjwxr5xAcaYxVKm9QKQFJFLA==} - engines: {node: ^18.18.0 || >=20.0.0} - peerDependencies: - '@typescript-eslint/parser': ^7.0.0 - eslint: ^8.56.0 - typescript: '*' - peerDependenciesMeta: - typescript: - optional: true - - '@typescript-eslint/parser@7.9.0': - resolution: {integrity: sha512-qHMJfkL5qvgQB2aLvhUSXxbK7OLnDkwPzFalg458pxQgfxKDfT1ZDbHQM/I6mDIf/svlMkj21kzKuQ2ixJlatQ==} - engines: {node: ^18.18.0 || >=20.0.0} + '@typescript-eslint/eslint-plugin@8.16.0': + resolution: {integrity: sha512-5YTHKV8MYlyMI6BaEG7crQ9BhSc8RxzshOReKwZwRWN0+XvvTOm+L/UYLCYxFpfwYuAAqhxiq4yae0CMFwbL7Q==} + engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} peerDependencies: - eslint: ^8.56.0 + '@typescript-eslint/parser': ^8.0.0 || ^8.0.0-alpha.0 + eslint: ^8.57.0 || ^9.0.0 typescript: '*' peerDependenciesMeta: typescript: @@ -1077,23 +1063,19 @@ packages: typescript: optional: true - '@typescript-eslint/scope-manager@7.15.0': - resolution: {integrity: sha512-Q/1yrF/XbxOTvttNVPihxh1b9fxamjEoz2Os/Pe38OHwxC24CyCqXxGTOdpb4lt6HYtqw9HetA/Rf6gDGaMPlw==} - engines: {node: ^18.18.0 || >=20.0.0} - - '@typescript-eslint/scope-manager@7.9.0': - resolution: {integrity: sha512-ZwPK4DeCDxr3GJltRz5iZejPFAAr4Wk3+2WIBaj1L5PYK5RgxExu/Y68FFVclN0y6GGwH8q+KgKRCvaTmFBbgQ==} - engines: {node: ^18.18.0 || >=20.0.0} - '@typescript-eslint/scope-manager@8.15.0': resolution: {integrity: sha512-QRGy8ADi4J7ii95xz4UoiymmmMd/zuy9azCaamnZ3FM8T5fZcex8UfJcjkiEZjJSztKfEBe3dZ5T/5RHAmw2mA==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} - '@typescript-eslint/type-utils@7.15.0': - resolution: {integrity: sha512-SkgriaeV6PDvpA6253PDVep0qCqgbO1IOBiycjnXsszNTVQe5flN5wR5jiczoEoDEnAqYFSFFc9al9BSGVltkg==} - engines: {node: ^18.18.0 || >=20.0.0} + '@typescript-eslint/scope-manager@8.16.0': + resolution: {integrity: sha512-mwsZWubQvBki2t5565uxF0EYvG+FwdFb8bMtDuGQLdCCnGPrDEDvm1gtfynuKlnpzeBRqdFCkMf9jg1fnAK8sg==} + engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} + + '@typescript-eslint/type-utils@8.16.0': + resolution: {integrity: sha512-IqZHGG+g1XCWX9NyqnI/0CX5LL8/18awQqmkZSl2ynn8F76j579dByc0jhfVSnSnhf7zv76mKBQv9HQFKvDCgg==} + engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} peerDependencies: - eslint: ^8.56.0 + eslint: ^8.57.0 || ^9.0.0 typescript: '*' peerDependenciesMeta: typescript: @@ -1103,14 +1085,14 @@ packages: resolution: {integrity: sha512-aV1+B1+ySXbQH0pLK0rx66I3IkiZNidYobyfn0WFsdGhSXw+P3YOqeTq5GED458SfB24tg+ux3S+9g118hjlTw==} engines: {node: ^18.18.0 || >=20.0.0} - '@typescript-eslint/types@7.9.0': - resolution: {integrity: sha512-oZQD9HEWQanl9UfsbGVcZ2cGaR0YT5476xfWE0oE5kQa2sNK2frxOlkeacLOTh9po4AlUT5rtkGyYM5kew0z5w==} - engines: {node: ^18.18.0 || >=20.0.0} - '@typescript-eslint/types@8.15.0': resolution: {integrity: sha512-n3Gt8Y/KyJNe0S3yDCD2RVKrHBC4gTUcLTebVBXacPy091E6tNspFLKRXlk3hwT4G55nfr1n2AdFqi/XMxzmPQ==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} + '@typescript-eslint/types@8.16.0': + resolution: {integrity: sha512-NzrHj6thBAOSE4d9bsuRNMvk+BvaQvmY4dDglgkgGC0EW/tB3Kelnp3tAKH87GEwzoxgeQn9fNGRyFJM/xd+GQ==} + engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} + '@typescript-eslint/typescript-estree@7.15.0': resolution: {integrity: sha512-gjyB/rHAopL/XxfmYThQbXbzRMGhZzGw6KpcMbfe8Q3nNQKStpxnUKeXb0KiN/fFDR42Z43szs6rY7eHk0zdGQ==} engines: {node: ^18.18.0 || >=20.0.0} @@ -1120,17 +1102,17 @@ packages: typescript: optional: true - '@typescript-eslint/typescript-estree@7.9.0': - resolution: {integrity: sha512-zBCMCkrb2YjpKV3LA0ZJubtKCDxLttxfdGmwZvTqqWevUPN0FZvSI26FalGFFUZU/9YQK/A4xcQF9o/VVaCKAg==} - engines: {node: ^18.18.0 || >=20.0.0} + '@typescript-eslint/typescript-estree@8.15.0': + resolution: {integrity: sha512-1eMp2JgNec/niZsR7ioFBlsh/Fk0oJbhaqO0jRyQBMgkz7RrFfkqF9lYYmBoGBaSiLnu8TAPQTwoTUiSTUW9dg==} + engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} peerDependencies: typescript: '*' peerDependenciesMeta: typescript: optional: true - '@typescript-eslint/typescript-estree@8.15.0': - resolution: {integrity: sha512-1eMp2JgNec/niZsR7ioFBlsh/Fk0oJbhaqO0jRyQBMgkz7RrFfkqF9lYYmBoGBaSiLnu8TAPQTwoTUiSTUW9dg==} + '@typescript-eslint/typescript-estree@8.16.0': + resolution: {integrity: sha512-E2+9IzzXMc1iaBy9zmo+UYvluE3TW7bCGWSF41hVWUE01o8nzr1rvOQYSxelxr6StUvRcTMe633eY8mXASMaNw==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} peerDependencies: typescript: '*' @@ -1138,24 +1120,28 @@ packages: typescript: optional: true - '@typescript-eslint/utils@7.15.0': - resolution: {integrity: sha512-hfDMDqaqOqsUVGiEPSMLR/AjTSCsmJwjpKkYQRo1FNbmW4tBwBspYDwO9eh7sKSTwMQgBw9/T4DHudPaqshRWA==} - engines: {node: ^18.18.0 || >=20.0.0} + '@typescript-eslint/utils@8.16.0': + resolution: {integrity: sha512-C1zRy/mOL8Pj157GiX4kaw7iyRLKfJXBR3L82hk5kS/GyHcOFmy4YUq/zfZti72I9wnuQtA/+xzft4wCC8PJdA==} + engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} peerDependencies: - eslint: ^8.56.0 + eslint: ^8.57.0 || ^9.0.0 + typescript: '*' + peerDependenciesMeta: + typescript: + optional: true '@typescript-eslint/visitor-keys@7.15.0': resolution: {integrity: sha512-Hqgy/ETgpt2L5xueA/zHHIl4fJI2O4XUE9l4+OIfbJIRSnTJb/QscncdqqZzofQegIJugRIF57OJea1khw2SDw==} engines: {node: ^18.18.0 || >=20.0.0} - '@typescript-eslint/visitor-keys@7.9.0': - resolution: {integrity: sha512-iESPx2TNLDNGQLyjKhUvIKprlP49XNEK+MvIf9nIO7ZZaZdbnfWKHnXAgufpxqfA0YryH8XToi4+CjBgVnFTSQ==} - engines: {node: ^18.18.0 || >=20.0.0} - '@typescript-eslint/visitor-keys@8.15.0': resolution: {integrity: sha512-h8vYOulWec9LhpwfAdZf2bjr8xIp0KNKnpgqSz0qqYYKAW/QZKw3ktRndbiAtUz4acH4QLQavwZBYCc0wulA/Q==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} + '@typescript-eslint/visitor-keys@8.16.0': + resolution: {integrity: sha512-pq19gbaMOmFE3CbL0ZB8J8BFCo2ckfHBfaIsaOZgBIF4EoISJIdLX5xRhd0FGB0LlHReNRuzoJoMGpTjq8F2CQ==} + engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} + '@vitest/expect@2.1.5': resolution: {integrity: sha512-nZSBTW1XIdpZvEJyoP/Sy8fUg0b8od7ZpGDkTUcfJ7wz/VoZAFzFfLyxVxGFhUjJzhYqSbIpfMtl/+k/dpWa3Q==} @@ -4236,7 +4222,7 @@ snapshots: '@babel/helper-split-export-declaration': 7.24.7 '@babel/parser': 7.24.8 '@babel/types': 7.24.8 - debug: 4.3.4 + debug: 4.3.7 globals: 11.12.0 transitivePeerDependencies: - supports-color @@ -4492,8 +4478,6 @@ snapshots: eslint: 9.15.0 eslint-visitor-keys: 3.4.3 - '@eslint-community/regexpp@4.10.0': {} - '@eslint-community/regexpp@4.12.1': {} '@eslint/config-array@0.19.0': @@ -4906,17 +4890,17 @@ snapshots: dependencies: '@types/yargs-parser': 21.0.3 - '@typescript-eslint/eslint-plugin@7.15.0(@typescript-eslint/parser@7.9.0(eslint@9.15.0)(typescript@5.3.3))(eslint@9.15.0)(typescript@5.3.3)': + '@typescript-eslint/eslint-plugin@8.16.0(@typescript-eslint/parser@8.15.0(eslint@9.15.0)(typescript@5.3.3))(eslint@9.15.0)(typescript@5.3.3)': dependencies: - '@eslint-community/regexpp': 4.10.0 - '@typescript-eslint/parser': 7.9.0(eslint@9.15.0)(typescript@5.3.3) - '@typescript-eslint/scope-manager': 7.15.0 - '@typescript-eslint/type-utils': 7.15.0(eslint@9.15.0)(typescript@5.3.3) - '@typescript-eslint/utils': 7.15.0(eslint@9.15.0)(typescript@5.3.3) - '@typescript-eslint/visitor-keys': 7.15.0 + '@eslint-community/regexpp': 4.12.1 + '@typescript-eslint/parser': 8.15.0(eslint@9.15.0)(typescript@5.3.3) + '@typescript-eslint/scope-manager': 8.16.0 + '@typescript-eslint/type-utils': 8.16.0(eslint@9.15.0)(typescript@5.3.3) + '@typescript-eslint/utils': 8.16.0(eslint@9.15.0)(typescript@5.3.3) + '@typescript-eslint/visitor-keys': 8.16.0 eslint: 9.15.0 graphemer: 1.4.0 - ignore: 5.3.1 + ignore: 5.3.2 natural-compare: 1.4.0 ts-api-utils: 1.3.0(typescript@5.3.3) optionalDependencies: @@ -4924,19 +4908,6 @@ snapshots: transitivePeerDependencies: - supports-color - '@typescript-eslint/parser@7.9.0(eslint@9.15.0)(typescript@5.3.3)': - dependencies: - '@typescript-eslint/scope-manager': 7.9.0 - '@typescript-eslint/types': 7.9.0 - '@typescript-eslint/typescript-estree': 7.9.0(typescript@5.3.3) - '@typescript-eslint/visitor-keys': 7.9.0 - debug: 4.3.4 - eslint: 9.15.0 - optionalDependencies: - typescript: 5.3.3 - transitivePeerDependencies: - - supports-color - '@typescript-eslint/parser@8.15.0(eslint@9.15.0)(typescript@5.3.3)': dependencies: '@typescript-eslint/scope-manager': 8.15.0 @@ -4950,25 +4921,20 @@ snapshots: transitivePeerDependencies: - supports-color - '@typescript-eslint/scope-manager@7.15.0': - dependencies: - '@typescript-eslint/types': 7.15.0 - '@typescript-eslint/visitor-keys': 7.15.0 - - '@typescript-eslint/scope-manager@7.9.0': - dependencies: - '@typescript-eslint/types': 7.9.0 - '@typescript-eslint/visitor-keys': 7.9.0 - '@typescript-eslint/scope-manager@8.15.0': dependencies: '@typescript-eslint/types': 8.15.0 '@typescript-eslint/visitor-keys': 8.15.0 - '@typescript-eslint/type-utils@7.15.0(eslint@9.15.0)(typescript@5.3.3)': + '@typescript-eslint/scope-manager@8.16.0': dependencies: - '@typescript-eslint/typescript-estree': 7.15.0(typescript@5.3.3) - '@typescript-eslint/utils': 7.15.0(eslint@9.15.0)(typescript@5.3.3) + '@typescript-eslint/types': 8.16.0 + '@typescript-eslint/visitor-keys': 8.16.0 + + '@typescript-eslint/type-utils@8.16.0(eslint@9.15.0)(typescript@5.3.3)': + dependencies: + '@typescript-eslint/typescript-estree': 8.16.0(typescript@5.3.3) + '@typescript-eslint/utils': 8.16.0(eslint@9.15.0)(typescript@5.3.3) debug: 4.3.7 eslint: 9.15.0 ts-api-utils: 1.3.0(typescript@5.3.3) @@ -4979,15 +4945,15 @@ snapshots: '@typescript-eslint/types@7.15.0': {} - '@typescript-eslint/types@7.9.0': {} - '@typescript-eslint/types@8.15.0': {} + '@typescript-eslint/types@8.16.0': {} + '@typescript-eslint/typescript-estree@7.15.0(typescript@5.3.3)': dependencies: '@typescript-eslint/types': 7.15.0 '@typescript-eslint/visitor-keys': 7.15.0 - debug: 4.3.4 + debug: 4.3.7 globby: 11.1.0 is-glob: 4.0.3 minimatch: 9.0.4 @@ -4998,25 +4964,25 @@ snapshots: transitivePeerDependencies: - supports-color - '@typescript-eslint/typescript-estree@7.9.0(typescript@5.3.3)': + '@typescript-eslint/typescript-estree@8.15.0(typescript@5.3.3)': dependencies: - '@typescript-eslint/types': 7.9.0 - '@typescript-eslint/visitor-keys': 7.9.0 - debug: 4.3.4 - globby: 11.1.0 + '@typescript-eslint/types': 8.15.0 + '@typescript-eslint/visitor-keys': 8.15.0 + debug: 4.3.7 + fast-glob: 3.3.2 is-glob: 4.0.3 - minimatch: 9.0.4 - semver: 7.6.0 + minimatch: 9.0.5 + semver: 7.6.3 ts-api-utils: 1.3.0(typescript@5.3.3) optionalDependencies: typescript: 5.3.3 transitivePeerDependencies: - supports-color - '@typescript-eslint/typescript-estree@8.15.0(typescript@5.3.3)': + '@typescript-eslint/typescript-estree@8.16.0(typescript@5.3.3)': dependencies: - '@typescript-eslint/types': 8.15.0 - '@typescript-eslint/visitor-keys': 8.15.0 + '@typescript-eslint/types': 8.16.0 + '@typescript-eslint/visitor-keys': 8.16.0 debug: 4.3.7 fast-glob: 3.3.2 is-glob: 4.0.3 @@ -5028,32 +4994,33 @@ snapshots: transitivePeerDependencies: - supports-color - '@typescript-eslint/utils@7.15.0(eslint@9.15.0)(typescript@5.3.3)': + '@typescript-eslint/utils@8.16.0(eslint@9.15.0)(typescript@5.3.3)': dependencies: '@eslint-community/eslint-utils': 4.4.1(eslint@9.15.0) - '@typescript-eslint/scope-manager': 7.15.0 - '@typescript-eslint/types': 7.15.0 - '@typescript-eslint/typescript-estree': 7.15.0(typescript@5.3.3) + '@typescript-eslint/scope-manager': 8.16.0 + '@typescript-eslint/types': 8.16.0 + '@typescript-eslint/typescript-estree': 8.16.0(typescript@5.3.3) eslint: 9.15.0 + optionalDependencies: + typescript: 5.3.3 transitivePeerDependencies: - supports-color - - typescript '@typescript-eslint/visitor-keys@7.15.0': dependencies: '@typescript-eslint/types': 7.15.0 eslint-visitor-keys: 3.4.3 - '@typescript-eslint/visitor-keys@7.9.0': - dependencies: - '@typescript-eslint/types': 7.9.0 - eslint-visitor-keys: 3.4.3 - '@typescript-eslint/visitor-keys@8.15.0': dependencies: '@typescript-eslint/types': 8.15.0 eslint-visitor-keys: 4.2.0 + '@typescript-eslint/visitor-keys@8.16.0': + dependencies: + '@typescript-eslint/types': 8.16.0 + eslint-visitor-keys: 4.2.0 + '@vitest/expect@2.1.5': dependencies: '@vitest/spy': 2.1.5 @@ -5791,10 +5758,10 @@ snapshots: dependencies: eslint: 9.15.0 - eslint-config-standard@17.1.0(eslint-plugin-import@2.31.0(@typescript-eslint/parser@7.9.0(eslint@9.15.0)(typescript@5.3.3))(eslint@9.15.0))(eslint-plugin-n@17.14.0(eslint@9.15.0))(eslint-plugin-promise@6.1.1(eslint@9.15.0))(eslint@9.15.0): + eslint-config-standard@17.1.0(eslint-plugin-import@2.31.0(@typescript-eslint/parser@8.15.0(eslint@9.15.0)(typescript@5.3.3))(eslint@9.15.0))(eslint-plugin-n@17.14.0(eslint@9.15.0))(eslint-plugin-promise@6.1.1(eslint@9.15.0))(eslint@9.15.0): dependencies: eslint: 9.15.0 - eslint-plugin-import: 2.31.0(@typescript-eslint/parser@7.9.0(eslint@9.15.0)(typescript@5.3.3))(eslint@9.15.0) + eslint-plugin-import: 2.31.0(@typescript-eslint/parser@8.15.0(eslint@9.15.0)(typescript@5.3.3))(eslint@9.15.0) eslint-plugin-n: 17.14.0(eslint@9.15.0) eslint-plugin-promise: 6.1.1(eslint@9.15.0) @@ -5806,11 +5773,11 @@ snapshots: transitivePeerDependencies: - supports-color - eslint-module-utils@2.12.0(@typescript-eslint/parser@7.9.0(eslint@9.15.0)(typescript@5.3.3))(eslint-import-resolver-node@0.3.9)(eslint@9.15.0): + eslint-module-utils@2.12.0(@typescript-eslint/parser@8.15.0(eslint@9.15.0)(typescript@5.3.3))(eslint-import-resolver-node@0.3.9)(eslint@9.15.0): dependencies: debug: 3.2.7 optionalDependencies: - '@typescript-eslint/parser': 7.9.0(eslint@9.15.0)(typescript@5.3.3) + '@typescript-eslint/parser': 8.15.0(eslint@9.15.0)(typescript@5.3.3) eslint: 9.15.0 eslint-import-resolver-node: 0.3.9 transitivePeerDependencies: @@ -5829,7 +5796,7 @@ snapshots: eslint-utils: 2.1.0 regexpp: 3.2.0 - eslint-plugin-import@2.31.0(@typescript-eslint/parser@7.9.0(eslint@9.15.0)(typescript@5.3.3))(eslint@9.15.0): + eslint-plugin-import@2.31.0(@typescript-eslint/parser@8.15.0(eslint@9.15.0)(typescript@5.3.3))(eslint@9.15.0): dependencies: '@rtsao/scc': 1.1.0 array-includes: 3.1.8 @@ -5840,7 +5807,7 @@ snapshots: doctrine: 2.1.0 eslint: 9.15.0 eslint-import-resolver-node: 0.3.9 - eslint-module-utils: 2.12.0(@typescript-eslint/parser@7.9.0(eslint@9.15.0)(typescript@5.3.3))(eslint-import-resolver-node@0.3.9)(eslint@9.15.0) + eslint-module-utils: 2.12.0(@typescript-eslint/parser@8.15.0(eslint@9.15.0)(typescript@5.3.3))(eslint-import-resolver-node@0.3.9)(eslint@9.15.0) hasown: 2.0.2 is-core-module: 2.15.1 is-glob: 4.0.3 @@ -5852,7 +5819,7 @@ snapshots: string.prototype.trimend: 1.0.8 tsconfig-paths: 3.15.0 optionalDependencies: - '@typescript-eslint/parser': 7.9.0(eslint@9.15.0)(typescript@5.3.3) + '@typescript-eslint/parser': 8.15.0(eslint@9.15.0)(typescript@5.3.3) transitivePeerDependencies: - eslint-import-resolver-typescript - eslint-import-resolver-webpack @@ -6521,7 +6488,7 @@ snapshots: istanbul-lib-source-maps@4.0.1: dependencies: - debug: 4.3.4 + debug: 4.3.7 istanbul-lib-coverage: 3.2.2 source-map: 0.6.1 transitivePeerDependencies: