Skip to content

Commit f24689d

Browse files
authoredJul 23, 2024
feat: enforce consistent imports with import/order (#26)
1 parent 43326eb commit f24689d

File tree

3 files changed

+121
-0
lines changed

3 files changed

+121
-0
lines changed
 

‎package.json

+1
Original file line numberDiff line numberDiff line change
@@ -38,6 +38,7 @@
3838
"common-tags": "^1.8.2",
3939
"eslint": "^9.5.0",
4040
"eslint-config-prettier": "^9.1.0",
41+
"eslint-plugin-import-x": "^3.0.1",
4142
"eslint-plugin-jsonc": "^2.16.0",
4243
"eslint-plugin-prettier": "^5.1.3",
4344
"globals": "^15.6.0",

‎pnpm-lock.yaml

+108
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

‎src/configs/recommended.ts

+12
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,7 @@
11
import stylisticTS from '@stylistic/eslint-plugin-ts';
22
import * as tsParser from '@typescript-eslint/parser';
33
import type { FlatConfig } from '@typescript-eslint/utils/ts-eslint';
4+
import pluginImport from 'eslint-plugin-import-x';
45
import eslintPluginPrettierRecommended from 'eslint-plugin-prettier/recommended';
56
import tseslint from 'typescript-eslint';
67
import { rules as blitzRules } from '../rules';
@@ -56,5 +57,16 @@ export function recommended(extenions?: RuleExtensions): FlatConfig.ConfigArray
5657
...tsRules(extenions?.ts),
5758
},
5859
},
60+
{
61+
name: 'blitz/import',
62+
files: [...tsFileExtensions, ...jsFileExtensions],
63+
plugins: {
64+
import: pluginImport,
65+
},
66+
rules: {
67+
// https://github.com/un-ts/eslint-plugin-import-x/blob/master/docs/rules/order.md
68+
'import/order': ['error', { alphabetize: { order: 'asc' } }],
69+
},
70+
},
5971
];
6072
}

0 commit comments

Comments
 (0)