diff --git a/eslint.ts.config.base.mjs b/eslint.ts.config.base.mjs index 095a55337b..0afb4cb2f7 100644 --- a/eslint.ts.config.base.mjs +++ b/eslint.ts.config.base.mjs @@ -3,55 +3,53 @@ import eslint from '@eslint/js'; import tseslint from 'typescript-eslint'; import eslintConfigPrettier from 'eslint-config-prettier'; -export default (tsconfigRootDir, files = ['**/*.ts'], project = true) => - defineConfig([ - { - files, - ...eslint.configs.recommended, - }, - ...tseslint.configs.recommendedTypeChecked.map((config) => ({ - files, - ...config, - })), - ...tseslint.configs.stylisticTypeChecked.map((config) => ({ - files, - ...config, - })), - { - files, - languageOptions: { - parserOptions: { - project, - tsconfigRootDir, - }, +export default defineConfig([ + { + files: ['**/*.ts'], + ...eslint.configs.recommended, + }, + ...tseslint.configs.recommendedTypeChecked.map((config) => ({ + files: ['**/*.ts'], + ...config, + })), + ...tseslint.configs.stylisticTypeChecked.map((config) => ({ + files: ['**/*.ts'], + ...config, + })), + { + files: ['**/*.ts'], + languageOptions: { + parserOptions: { + projectService: true, }, }, - { - files, - ...eslintConfigPrettier, - }, - { - files, - rules: { - '@typescript-eslint/no-unsafe-return': 'off', - '@typescript-eslint/no-unsafe-assignment': 'off', - '@typescript-eslint/no-unsafe-call': 'off', - '@typescript-eslint/no-unsafe-member-access': 'off', - '@typescript-eslint/prefer-optional-chain': 'off', - '@typescript-eslint/no-base-to-string': 'off', - '@typescript-eslint/consistent-indexed-object-style': 'off', - '@typescript-eslint/prefer-nullish-coalescing': 'off', - '@typescript-eslint/consistent-type-definitions': 'off', - '@typescript-eslint/no-unused-vars': 'off', - '@typescript-eslint/no-explicit-any': 'off', - '@typescript-eslint/prefer-for-of': 'off', - '@typescript-eslint/non-nullable-type-assertion-style': 'off', - '@typescript-eslint/class-literal-property-style': 'off', - '@typescript-eslint/no-redundant-type-constituents': 'off', - '@typescript-eslint/prefer-string-starts-ends-with': 'off', - '@typescript-eslint/no-duplicate-type-constituents': 'off', - '@typescript-eslint/array-type': 'off', - '@typescript-eslint/prefer-function-type': 'off', - }, + }, + { + files: ['**/*.ts'], + ...eslintConfigPrettier, + }, + { + files: ['**/*.ts'], + rules: { + '@typescript-eslint/no-unsafe-return': 'off', + '@typescript-eslint/no-unsafe-assignment': 'off', + '@typescript-eslint/no-unsafe-call': 'off', + '@typescript-eslint/no-unsafe-member-access': 'off', + '@typescript-eslint/prefer-optional-chain': 'off', + '@typescript-eslint/no-base-to-string': 'off', + '@typescript-eslint/consistent-indexed-object-style': 'off', + '@typescript-eslint/prefer-nullish-coalescing': 'off', + '@typescript-eslint/consistent-type-definitions': 'off', + '@typescript-eslint/no-unused-vars': 'off', + '@typescript-eslint/no-explicit-any': 'off', + '@typescript-eslint/prefer-for-of': 'off', + '@typescript-eslint/non-nullable-type-assertion-style': 'off', + '@typescript-eslint/class-literal-property-style': 'off', + '@typescript-eslint/no-redundant-type-constituents': 'off', + '@typescript-eslint/prefer-string-starts-ends-with': 'off', + '@typescript-eslint/no-duplicate-type-constituents': 'off', + '@typescript-eslint/array-type': 'off', + '@typescript-eslint/prefer-function-type': 'off', }, - ]); + }, +]); diff --git a/eslint.ts.jest.config.base.mjs b/eslint.ts.jest.config.base.mjs index d3ebd7be20..f169010f12 100644 --- a/eslint.ts.jest.config.base.mjs +++ b/eslint.ts.jest.config.base.mjs @@ -4,63 +4,61 @@ import tseslint from 'typescript-eslint'; import jest from 'eslint-plugin-jest'; import eslintConfigPrettier from 'eslint-config-prettier'; -export default (tsconfigRootDir) => - defineConfig([ - { - files: ['test/**/*.ts'], - ...eslint.configs.recommended, - }, - ...tseslint.configs.recommendedTypeChecked.map((config) => ({ - files: ['test/**/*.ts'], - ...config, - })), - ...tseslint.configs.stylisticTypeChecked.map((config) => ({ - files: ['test/**/*.ts'], - ...config, - })), - { - files: ['test/**/*.ts'], - languageOptions: { - parserOptions: { - project: ['./tsconfig.test.json'], - tsconfigRootDir, - }, +export default defineConfig([ + { + files: ['test/**/*.ts'], + ...eslint.configs.recommended, + }, + ...tseslint.configs.recommendedTypeChecked.map((config) => ({ + files: ['test/**/*.ts'], + ...config, + })), + ...tseslint.configs.stylisticTypeChecked.map((config) => ({ + files: ['test/**/*.ts'], + ...config, + })), + { + files: ['test/**/*.ts'], + languageOptions: { + parserOptions: { + projectService: true, }, }, - { - files: ['test/**/*.ts'], - ...jest.configs['flat/recommended'], - }, - { - files: ['test/**/*.ts'], - ...jest.configs['jest/style'], - }, - { - files: ['test/**/*.ts'], - ...eslintConfigPrettier, - }, - { - files: ['test/**/*.ts'], - rules: { - '@typescript-eslint/no-unsafe-return': 'off', - '@typescript-eslint/no-unsafe-assignment': 'off', - '@typescript-eslint/no-unsafe-call': 'off', - '@typescript-eslint/no-unsafe-member-access': 'off', - '@typescript-eslint/prefer-optional-chain': 'off', - '@typescript-eslint/no-base-to-string': 'off', - '@typescript-eslint/consistent-indexed-object-style': 'off', - '@typescript-eslint/prefer-nullish-coalescing': 'off', - '@typescript-eslint/consistent-type-definitions': 'off', - '@typescript-eslint/no-unused-vars': 'off', - '@typescript-eslint/no-explicit-any': 'off', - '@typescript-eslint/prefer-for-of': 'off', - '@typescript-eslint/non-nullable-type-assertion-style': 'off', - '@typescript-eslint/class-literal-property-style': 'off', - '@typescript-eslint/no-redundant-type-constituents': 'off', - '@typescript-eslint/prefer-string-starts-ends-with': 'off', - '@typescript-eslint/no-duplicate-type-constituents': 'off', - '@typescript-eslint/array-type': 'off', - '@typescript-eslint/prefer-function-type': 'off', - }, + }, + { + files: ['test/**/*.ts'], + ...jest.configs['flat/recommended'], + }, + { + files: ['test/**/*.ts'], + ...jest.configs['jest/style'], + }, + { + files: ['test/**/*.ts'], + ...eslintConfigPrettier, + }, + { + files: ['test/**/*.ts'], + rules: { + '@typescript-eslint/no-unsafe-return': 'off', + '@typescript-eslint/no-unsafe-assignment': 'off', + '@typescript-eslint/no-unsafe-call': 'off', + '@typescript-eslint/no-unsafe-member-access': 'off', + '@typescript-eslint/prefer-optional-chain': 'off', + '@typescript-eslint/no-base-to-string': 'off', + '@typescript-eslint/consistent-indexed-object-style': 'off', + '@typescript-eslint/prefer-nullish-coalescing': 'off', + '@typescript-eslint/consistent-type-definitions': 'off', + '@typescript-eslint/no-unused-vars': 'off', + '@typescript-eslint/no-explicit-any': 'off', + '@typescript-eslint/prefer-for-of': 'off', + '@typescript-eslint/non-nullable-type-assertion-style': 'off', + '@typescript-eslint/class-literal-property-style': 'off', + '@typescript-eslint/no-redundant-type-constituents': 'off', + '@typescript-eslint/prefer-string-starts-ends-with': 'off', + '@typescript-eslint/no-duplicate-type-constituents': 'off', + '@typescript-eslint/array-type': 'off', + '@typescript-eslint/prefer-function-type': 'off', }, - ]); + }, +]); diff --git a/packages/d3-state-visualizer/eslint.config.js b/packages/d3-state-visualizer/eslint.config.js index 542c8b7cee..b3b9f57bfc 100644 --- a/packages/d3-state-visualizer/eslint.config.js +++ b/packages/d3-state-visualizer/eslint.config.js @@ -3,7 +3,7 @@ import eslintTs from '../../eslint.ts.config.base.mjs'; export default [ ...eslintJs, - ...eslintTs(import.meta.dirname), + ...eslintTs, { ignores: ['examples', 'lib'], }, diff --git a/packages/d3-state-visualizer/examples/tree/eslint.config.mjs b/packages/d3-state-visualizer/examples/tree/eslint.config.mjs index 9f6f0310a1..999a80ea58 100644 --- a/packages/d3-state-visualizer/examples/tree/eslint.config.mjs +++ b/packages/d3-state-visualizer/examples/tree/eslint.config.mjs @@ -3,12 +3,7 @@ import eslintTs from '../../../../eslint.ts.config.base.mjs'; export default [ ...eslintJs, - ...eslintTs(import.meta.dirname), - ...eslintTs( - import.meta.dirname, - ['webpack.config.ts'], - ['./tsconfig.webpack.json'], - ), + ...eslintTs, { ignores: ['dist'], }, diff --git a/packages/d3tooltip/eslint.config.js b/packages/d3tooltip/eslint.config.js index c842915566..e8f422bd18 100644 --- a/packages/d3tooltip/eslint.config.js +++ b/packages/d3tooltip/eslint.config.js @@ -3,7 +3,7 @@ import eslintTs from '../../eslint.ts.config.base.mjs'; export default [ ...eslintJs, - ...eslintTs(import.meta.dirname), + ...eslintTs, { ignores: ['lib'], }, diff --git a/packages/map2tree/eslint.config.js b/packages/map2tree/eslint.config.js index 27657b2ca7..5dba0fba1d 100644 --- a/packages/map2tree/eslint.config.js +++ b/packages/map2tree/eslint.config.js @@ -4,8 +4,8 @@ import eslintTsJest from '../../eslint.ts.jest.config.base.mjs'; export default [ ...eslintJs, - ...eslintTs(import.meta.dirname), - ...eslintTsJest(import.meta.dirname), + ...eslintTs, + ...eslintTsJest, { ignores: ['jest.config.ts', 'lib'], }, diff --git a/packages/react-base16-styling/eslint.config.js b/packages/react-base16-styling/eslint.config.js index 27657b2ca7..5dba0fba1d 100644 --- a/packages/react-base16-styling/eslint.config.js +++ b/packages/react-base16-styling/eslint.config.js @@ -4,8 +4,8 @@ import eslintTsJest from '../../eslint.ts.jest.config.base.mjs'; export default [ ...eslintJs, - ...eslintTs(import.meta.dirname), - ...eslintTsJest(import.meta.dirname), + ...eslintTs, + ...eslintTsJest, { ignores: ['jest.config.ts', 'lib'], }, diff --git a/packages/redux-devtools-cli/eslint.config.mjs b/packages/redux-devtools-cli/eslint.config.mjs index 4e37c4a245..2c63879d9b 100644 --- a/packages/redux-devtools-cli/eslint.config.mjs +++ b/packages/redux-devtools-cli/eslint.config.mjs @@ -5,8 +5,8 @@ import eslintTsJest from '../../eslint.ts.jest.config.base.mjs'; export default [ ...eslintJs, - ...eslintTs(import.meta.dirname), - ...eslintTsJest(import.meta.dirname), + ...eslintTs, + ...eslintTsJest, { ignores: ['dist', 'jest.config.ts', 'umd'], }, diff --git a/packages/redux-devtools-extension/eslint.config.mjs b/packages/redux-devtools-extension/eslint.config.mjs index c842915566..e8f422bd18 100644 --- a/packages/redux-devtools-extension/eslint.config.mjs +++ b/packages/redux-devtools-extension/eslint.config.mjs @@ -3,7 +3,7 @@ import eslintTs from '../../eslint.ts.config.base.mjs'; export default [ ...eslintJs, - ...eslintTs(import.meta.dirname), + ...eslintTs, { ignores: ['lib'], }, diff --git a/packages/redux-devtools-instrument/eslint.config.mjs b/packages/redux-devtools-instrument/eslint.config.mjs index 27657b2ca7..5dba0fba1d 100644 --- a/packages/redux-devtools-instrument/eslint.config.mjs +++ b/packages/redux-devtools-instrument/eslint.config.mjs @@ -4,8 +4,8 @@ import eslintTsJest from '../../eslint.ts.jest.config.base.mjs'; export default [ ...eslintJs, - ...eslintTs(import.meta.dirname), - ...eslintTsJest(import.meta.dirname), + ...eslintTs, + ...eslintTsJest, { ignores: ['jest.config.ts', 'lib'], }, diff --git a/packages/redux-devtools-remote/eslint.config.mjs b/packages/redux-devtools-remote/eslint.config.mjs index 542c8b7cee..b3b9f57bfc 100644 --- a/packages/redux-devtools-remote/eslint.config.mjs +++ b/packages/redux-devtools-remote/eslint.config.mjs @@ -3,7 +3,7 @@ import eslintTs from '../../eslint.ts.config.base.mjs'; export default [ ...eslintJs, - ...eslintTs(import.meta.dirname), + ...eslintTs, { ignores: ['examples', 'lib'], }, diff --git a/packages/redux-devtools-serialize/eslint.config.mjs b/packages/redux-devtools-serialize/eslint.config.mjs index 27657b2ca7..5dba0fba1d 100644 --- a/packages/redux-devtools-serialize/eslint.config.mjs +++ b/packages/redux-devtools-serialize/eslint.config.mjs @@ -4,8 +4,8 @@ import eslintTsJest from '../../eslint.ts.jest.config.base.mjs'; export default [ ...eslintJs, - ...eslintTs(import.meta.dirname), - ...eslintTsJest(import.meta.dirname), + ...eslintTs, + ...eslintTsJest, { ignores: ['jest.config.ts', 'lib'], }, diff --git a/packages/redux-devtools-utils/eslint.config.mjs b/packages/redux-devtools-utils/eslint.config.mjs index 624b7096c7..29c5f28e33 100644 --- a/packages/redux-devtools-utils/eslint.config.mjs +++ b/packages/redux-devtools-utils/eslint.config.mjs @@ -4,8 +4,8 @@ import eslintTsJest from '../../eslint.ts.jest.config.base.mjs'; export default [ ...eslintJs, - ...eslintTs(import.meta.dirname), - ...eslintTsJest(import.meta.dirname), + ...eslintTs, + ...eslintTsJest, { ignores: ['lib'], },