|
1 | 1 | import eslint from '@eslint/js';
|
2 | 2 | import tseslint from 'typescript-eslint';
|
3 |
| -import importPlugin from 'eslint-plugin-import'; |
| 3 | +import importXPlugin from 'eslint-plugin-import-x'; |
4 | 4 | import stylistic from '@stylistic/eslint-plugin';
|
5 | 5 | import simpleImportSort from 'eslint-plugin-simple-import-sort';
|
| 6 | +import { createTypeScriptImportResolver } from 'eslint-import-resolver-typescript'; |
6 | 7 |
|
7 | 8 | const baseConfig = tseslint.config(
|
8 | 9 | eslint.configs.recommended,
|
9 | 10 | ...tseslint.configs.recommended,
|
10 |
| - importPlugin.flatConfigs.recommended, |
| 11 | + importXPlugin.flatConfigs.recommended, |
11 | 12 | {
|
| 13 | + settings: { |
| 14 | + 'import-x/resolver-next': [ |
| 15 | + createTypeScriptImportResolver() |
| 16 | + ], |
| 17 | + }, |
12 | 18 | plugins: {
|
13 | 19 | '@stylistic': stylistic,
|
14 | 20 | 'simple-import-sort': simpleImportSort,
|
@@ -55,12 +61,12 @@ const baseConfig = tseslint.config(
|
55 | 61 | }
|
56 | 62 | }],
|
57 | 63 |
|
58 |
| - 'import/no-duplicates': 'error', |
| 64 | + 'import-x/no-duplicates': 'error', |
59 | 65 |
|
60 | 66 | // Disabled rules from presets
|
61 | 67 | '@typescript-eslint/ban-types': 'off',
|
62 | 68 | '@typescript-eslint/no-explicit-any': 'off',
|
63 |
| - 'import/no-unresolved': 'off', |
| 69 | + 'import-x/no-unresolved': 'off', |
64 | 70 | },
|
65 | 71 | },
|
66 | 72 | {
|
|
0 commit comments