Skip to content

Commit 4b150bc

Browse files
committed
$ yarn remove eslint-plugin-import
$ yarn add -D eslint-plugin-import-x # due to un-ts/eslint-plugin-import-x#24 $ sed -i "s@(:|')import/@\1import-x/@" .eslintrc.cjs @ fe
1 parent 3add4c3 commit 4b150bc

File tree

3 files changed

+96
-37
lines changed

3 files changed

+96
-37
lines changed

fe/.eslintrc.cjs

Lines changed: 15 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -17,19 +17,19 @@ const eslintPluginUnicorn = { // as of [email protected]
1717
};
1818
const eslintPluginImport = { // as of [email protected]
1919
optout: {
20-
'import/namespace': 'off', // https://github.com/import-js/eslint-plugin-import/issues/2340
20+
'import-x/namespace': 'off', // https://github.com/import-js/eslint-plugin-import/issues/2340
2121
},
2222
optin: {
23-
'import/no-empty-named-blocks': 'error',
24-
'import/no-extraneous-dependencies': 'error',
25-
'import/no-mutable-exports': 'error',
26-
'import/no-self-import': 'error',
27-
'import/no-useless-path-segments': 'error',
28-
'import/consistent-type-specifier-style': ['error', 'prefer-top-level'],
29-
'import/extensions': ['error', 'always', { js: 'never', ts: 'never' }],
30-
'import/newline-after-import': 'error',
31-
'import/no-named-default': 'error',
32-
'import/order': ['error', {
23+
'import-x/no-empty-named-blocks': 'error',
24+
'import-x/no-extraneous-dependencies': 'error',
25+
'import-x/no-mutable-exports': 'error',
26+
'import-x/no-self-import': 'error',
27+
'import-x/no-useless-path-segments': 'error',
28+
'import-x/consistent-type-specifier-style': ['error', 'prefer-top-level'],
29+
'import-x/extensions': ['error', 'always', { js: 'never', ts: 'never' }],
30+
'import-x/newline-after-import': 'error',
31+
'import-x/no-named-default': 'error',
32+
'import-x/order': ['error', {
3333
groups: ['type', 'object', 'index', 'sibling', 'parent', 'internal', 'external', 'builtin', 'unknown'],
3434
pathGroups: [ // https://www.digitalocean.com/community/tools/glob
3535
{ pattern: '**/*.vue', group: 'internal', position: 'before' }, // vue SFC
@@ -539,7 +539,7 @@ module.exports = {
539539
overrides: [{ // https://stackoverflow.com/questions/57107800/eslint-disable-extends-in-override
540540
files: '*.ts',
541541
parser: 'typescript-eslint-parser-for-extra-files',
542-
settings: { 'import/resolver': { typescript: true } },
542+
settings: { 'import-x/resolver': { typescript: true } },
543543
}, {
544544
files: '*.vue',
545545
parser: 'vue-eslint-parser',
@@ -550,7 +550,7 @@ module.exports = {
550550
tsconfigRootDir: __dirname,
551551
},
552552
settings: {
553-
'import/resolver': {
553+
'import-x/resolver': {
554554
typescript: true,
555555

556556
// https://github.com/pzmosquito/eslint-import-resolver-vite/issues/12#issuecomment-1979897899
@@ -574,8 +574,8 @@ module.exports = {
574574
'@vue/typescript/recommended',
575575
'plugin:@typescript-eslint/strict-type-checked',
576576
'plugin:@typescript-eslint/stylistic-type-checked',
577-
'plugin:import/recommended',
578-
'plugin:import/typescript',
577+
'plugin:import-x/recommended',
578+
'plugin:import-x/typescript',
579579
'plugin:unicorn/recommended',
580580
'plugin:@tanstack/eslint-plugin-query/recommended',
581581
],

fe/package.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -59,7 +59,7 @@
5959
"eslint": "^9.4.0",
6060
"eslint-import-resolver-typescript": "^3.6.1",
6161
"eslint-import-resolver-vite": "^2.0.1",
62-
"eslint-plugin-import": "npm:eslint-plugin-i@latest",
62+
"eslint-plugin-import-x": "^0.5.1",
6363
"eslint-plugin-unicorn": "^53.0.0",
6464
"eslint-plugin-vue": "^9.26.0",
6565
"rollup-plugin-visualizer": "^5.12.0",

fe/yarn.lock

Lines changed: 80 additions & 21 deletions
Original file line numberDiff line numberDiff line change
@@ -1617,6 +1617,16 @@ __metadata:
16171617
languageName: node
16181618
linkType: hard
16191619

1620+
"@typescript-eslint/scope-manager@npm:7.12.0":
1621+
version: 7.12.0
1622+
resolution: "@typescript-eslint/scope-manager@npm:7.12.0"
1623+
dependencies:
1624+
"@typescript-eslint/types": "npm:7.12.0"
1625+
"@typescript-eslint/visitor-keys": "npm:7.12.0"
1626+
checksum: 10c0/7af53cd9045cc70459e4f451377affc0ef03e67bd743480ab2cbfebe1b7d8269fc639406966930c5abb26f1b633623c98442c2b60f6257e0ce1555439343d5e9
1627+
languageName: node
1628+
linkType: hard
1629+
16201630
"@typescript-eslint/type-utils@npm:7.1.1":
16211631
version: 7.1.1
16221632
resolution: "@typescript-eslint/type-utils@npm:7.1.1"
@@ -1672,6 +1682,13 @@ __metadata:
16721682
languageName: node
16731683
linkType: hard
16741684

1685+
"@typescript-eslint/types@npm:7.12.0":
1686+
version: 7.12.0
1687+
resolution: "@typescript-eslint/types@npm:7.12.0"
1688+
checksum: 10c0/76786d02a0838750d74ad6e49b026875c0753b81c5a46a56525a1e82d89c0939a13434b03494e3b31b7ffbba7824f426c5b502a12337806a1f6ca560b5dad46c
1689+
languageName: node
1690+
linkType: hard
1691+
16751692
"@typescript-eslint/typescript-estree@npm:6.21.0":
16761693
version: 6.21.0
16771694
resolution: "@typescript-eslint/typescript-estree@npm:6.21.0"
@@ -1729,6 +1746,25 @@ __metadata:
17291746
languageName: node
17301747
linkType: hard
17311748

1749+
"@typescript-eslint/typescript-estree@npm:7.12.0":
1750+
version: 7.12.0
1751+
resolution: "@typescript-eslint/typescript-estree@npm:7.12.0"
1752+
dependencies:
1753+
"@typescript-eslint/types": "npm:7.12.0"
1754+
"@typescript-eslint/visitor-keys": "npm:7.12.0"
1755+
debug: "npm:^4.3.4"
1756+
globby: "npm:^11.1.0"
1757+
is-glob: "npm:^4.0.3"
1758+
minimatch: "npm:^9.0.4"
1759+
semver: "npm:^7.6.0"
1760+
ts-api-utils: "npm:^1.3.0"
1761+
peerDependenciesMeta:
1762+
typescript:
1763+
optional: true
1764+
checksum: 10c0/855be5ba6c3d7540319ad250555055a798deb04855f26abe719a3b8d555a3227d52e09453930bd829e260a72f65a985998b235514ce2872b31615015da3163c0
1765+
languageName: node
1766+
linkType: hard
1767+
17321768
"@typescript-eslint/utils@npm:7.1.1":
17331769
version: 7.1.1
17341770
resolution: "@typescript-eslint/utils@npm:7.1.1"
@@ -1777,6 +1813,20 @@ __metadata:
17771813
languageName: node
17781814
linkType: hard
17791815

1816+
"@typescript-eslint/utils@npm:^7.4.0":
1817+
version: 7.12.0
1818+
resolution: "@typescript-eslint/utils@npm:7.12.0"
1819+
dependencies:
1820+
"@eslint-community/eslint-utils": "npm:^4.4.0"
1821+
"@typescript-eslint/scope-manager": "npm:7.12.0"
1822+
"@typescript-eslint/types": "npm:7.12.0"
1823+
"@typescript-eslint/typescript-estree": "npm:7.12.0"
1824+
peerDependencies:
1825+
eslint: ^8.56.0
1826+
checksum: 10c0/04241c0313f2d061bc81ec2d5d589c9a723f8c1493e5b83d98f804ff9dac23c5e7157d9bb57bee8b458f40824f56ea65a02ebd344926a37cb58bf151cb4d3bf2
1827+
languageName: node
1828+
linkType: hard
1829+
17801830
"@typescript-eslint/visitor-keys@npm:6.21.0":
17811831
version: 6.21.0
17821832
resolution: "@typescript-eslint/visitor-keys@npm:6.21.0"
@@ -1807,6 +1857,16 @@ __metadata:
18071857
languageName: node
18081858
linkType: hard
18091859

1860+
"@typescript-eslint/visitor-keys@npm:7.12.0":
1861+
version: 7.12.0
1862+
resolution: "@typescript-eslint/visitor-keys@npm:7.12.0"
1863+
dependencies:
1864+
"@typescript-eslint/types": "npm:7.12.0"
1865+
eslint-visitor-keys: "npm:^3.4.3"
1866+
checksum: 10c0/f3aa6704961e65fa8d66fcde57cd28e382412bb8bec2e99312bf8cda38772ae9a74d6d95b9765f76a249bc9ab65624db34b8c00078ebad129b2e1b624e935d90
1867+
languageName: node
1868+
linkType: hard
1869+
18101870
"@unhead/dom@npm:1.9.12":
18111871
version: 1.9.12
18121872
resolution: "@unhead/dom@npm:1.9.12"
@@ -3231,7 +3291,7 @@ __metadata:
32313291
languageName: node
32323292
linkType: hard
32333293

3234-
"eslint-module-utils@npm:^2.7.4, eslint-module-utils@npm:^2.8.0":
3294+
"eslint-module-utils@npm:^2.7.4":
32353295
version: 2.8.0
32363296
resolution: "eslint-module-utils@npm:2.8.0"
32373297
dependencies:
@@ -3243,21 +3303,22 @@ __metadata:
32433303
languageName: node
32443304
linkType: hard
32453305

3246-
"eslint-plugin-import@npm:eslint-plugin-i@latest":
3247-
version: 2.29.1
3248-
resolution: "eslint-plugin-i@npm:2.29.1"
3306+
"eslint-plugin-import-x@npm:^0.5.1":
3307+
version: 0.5.1
3308+
resolution: "eslint-plugin-import-x@npm:0.5.1"
32493309
dependencies:
3310+
"@typescript-eslint/utils": "npm:^7.4.0"
32503311
debug: "npm:^4.3.4"
32513312
doctrine: "npm:^3.0.0"
32523313
eslint-import-resolver-node: "npm:^0.3.9"
3253-
eslint-module-utils: "npm:^2.8.0"
3254-
get-tsconfig: "npm:^4.7.2"
3314+
get-tsconfig: "npm:^4.7.3"
32553315
is-glob: "npm:^4.0.3"
3256-
minimatch: "npm:^3.1.2"
3257-
semver: "npm:^7.5.4"
3316+
minimatch: "npm:^9.0.3"
3317+
semver: "npm:^7.6.0"
3318+
tslib: "npm:^2.6.2"
32583319
peerDependencies:
3259-
eslint: ^7.2.0 || ^8
3260-
checksum: 10c0/7bb544b7b2d59de64010b17c19bdcec006620a11d26317fcf92692bfefee686889bf272318fc14499972e2a90041a5dc520b06708716f48a8162416b0cdb410f
3320+
eslint: ^8.56.0 || ^9.0.0-0
3321+
checksum: 10c0/3e605970550afd6c8372da774de1ed5a86164d0d69190c532ef9caed4e882d4519f589683130122ba2d353fba15e96e3b49391f893139147c5d48a432eaa9945
32613322
languageName: node
32623323
linkType: hard
32633324

@@ -3672,16 +3733,7 @@ __metadata:
36723733
languageName: node
36733734
linkType: hard
36743735

3675-
"get-tsconfig@npm:^4.7.2":
3676-
version: 4.7.2
3677-
resolution: "get-tsconfig@npm:4.7.2"
3678-
dependencies:
3679-
resolve-pkg-maps: "npm:^1.0.0"
3680-
checksum: 10c0/169b2beababfbb16e8a0ae813ee59d3e14d4960231c816615161ab5be68ec07a394dce59695742ac84295e2efab8d9e89bcf3abaf5e253dfbec3496e01bb9a65
3681-
languageName: node
3682-
linkType: hard
3683-
3684-
"get-tsconfig@npm:^4.7.5":
3736+
"get-tsconfig@npm:^4.7.3, get-tsconfig@npm:^4.7.5":
36853737
version: 4.7.5
36863738
resolution: "get-tsconfig@npm:4.7.5"
36873739
dependencies:
@@ -5540,7 +5592,7 @@ __metadata:
55405592
eslint: "npm:^9.4.0"
55415593
eslint-import-resolver-typescript: "npm:^3.6.1"
55425594
eslint-import-resolver-vite: "npm:^2.0.1"
5543-
eslint-plugin-import: "npm:eslint-plugin-i@latest"
5595+
eslint-plugin-import-x: "npm:^0.5.1"
55445596
eslint-plugin-unicorn: "npm:^53.0.0"
55455597
eslint-plugin-vue: "npm:^9.26.0"
55465598
lodash-es: "npm:^4.17.21"
@@ -5641,6 +5693,13 @@ __metadata:
56415693
languageName: node
56425694
linkType: hard
56435695

5696+
"tslib@npm:^2.6.2":
5697+
version: 2.6.2
5698+
resolution: "tslib@npm:2.6.2"
5699+
checksum: 10c0/e03a8a4271152c8b26604ed45535954c0a45296e32445b4b87f8a5abdb2421f40b59b4ca437c4346af0f28179780d604094eb64546bee2019d903d01c6c19bdb
5700+
languageName: node
5701+
linkType: hard
5702+
56445703
"tsx@npm:^4.11.0":
56455704
version: 4.11.0
56465705
resolution: "tsx@npm:4.11.0"

0 commit comments

Comments
 (0)