@dhzh/eslint-config 0.4.2 → 0.5.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +1 -0
- package/dist/cli.cjs +30 -19
- package/dist/cli.js +30 -19
- package/dist/index.d.cts +33 -0
- package/dist/index.d.ts +33 -0
- package/package.json +18 -19
package/README.md
CHANGED
|
@@ -11,6 +11,7 @@ Differences from [@antfu/eslint-config](./README-antfu.md):
|
|
|
11
11
|
3. Explicitly use `1tbs` as brace style: `braceStyle: '1tbs'`.
|
|
12
12
|
4. Disabled antfu's top level function rule: `'antfu/top-level-function': 'off'`.
|
|
13
13
|
5. Always curly: `'curly': ['error', 'all']`.
|
|
14
|
+
6. This eslint-config will enable `ts/consistent-type-imports` rule. But it will cause [compile issue](https://github.com/typescript-eslint/typescript-eslint/issues/2559) in [nest](https://nestjs.com/) projects. So I [disabled it](https://github.com/typescript-eslint/typescript-eslint/issues/2559#issuecomment-692780580) in this config in nest framework.
|
|
14
15
|
|
|
15
16
|
## Usage
|
|
16
17
|
|
package/dist/cli.cjs
CHANGED
|
@@ -48,7 +48,7 @@ var import_picocolors = __toESM(require("picocolors"), 1);
|
|
|
48
48
|
var package_default = {
|
|
49
49
|
name: "@dhzh/eslint-config",
|
|
50
50
|
type: "module",
|
|
51
|
-
version: "0.
|
|
51
|
+
version: "0.5.0",
|
|
52
52
|
packageManager: "pnpm@9.1.0",
|
|
53
53
|
description: "Easton's ESLint config",
|
|
54
54
|
author: "Easton Zheng <dhzhme@gmail.com>",
|
|
@@ -129,21 +129,21 @@ var package_default = {
|
|
|
129
129
|
dependencies: {
|
|
130
130
|
"@antfu/install-pkg": "^0.3.3",
|
|
131
131
|
"@clack/prompts": "^0.7.0",
|
|
132
|
-
"@eslint-react/eslint-plugin": "^1.5.
|
|
133
|
-
"@stylistic/eslint-plugin": "^1.
|
|
134
|
-
"@typescript-eslint/eslint-plugin": "
|
|
135
|
-
"@typescript-eslint/parser": "
|
|
132
|
+
"@eslint-react/eslint-plugin": "^1.5.11",
|
|
133
|
+
"@stylistic/eslint-plugin": "^2.1.0",
|
|
134
|
+
"@typescript-eslint/eslint-plugin": "^7.8.0",
|
|
135
|
+
"@typescript-eslint/parser": "^7.8.0",
|
|
136
136
|
"eslint-config-flat-gitignore": "^0.1.5",
|
|
137
137
|
"eslint-flat-config-utils": "^0.2.4",
|
|
138
138
|
"eslint-merge-processors": "^0.1.0",
|
|
139
|
-
"eslint-plugin-antfu": "^2.
|
|
140
|
-
"eslint-plugin-command": "^0.
|
|
139
|
+
"eslint-plugin-antfu": "^2.2.0",
|
|
140
|
+
"eslint-plugin-command": "^0.2.0",
|
|
141
141
|
"eslint-plugin-eslint-comments": "^3.2.0",
|
|
142
142
|
"eslint-plugin-import-x": "^0.5.0",
|
|
143
143
|
"eslint-plugin-jsdoc": "^48.2.3",
|
|
144
144
|
"eslint-plugin-jsonc": "^2.15.1",
|
|
145
145
|
"eslint-plugin-markdown": "^5.0.0",
|
|
146
|
-
"eslint-plugin-n": "^17.
|
|
146
|
+
"eslint-plugin-n": "^17.5.1",
|
|
147
147
|
"eslint-plugin-no-only-tests": "^3.1.0",
|
|
148
148
|
"eslint-plugin-perfectionist": "^2.10.0",
|
|
149
149
|
"eslint-plugin-react-hooks": "^4.6.2",
|
|
@@ -152,7 +152,7 @@ var package_default = {
|
|
|
152
152
|
"eslint-plugin-unicorn": "^52.0.0",
|
|
153
153
|
"eslint-plugin-unused-imports": "^3.2.0",
|
|
154
154
|
"eslint-plugin-vitest": "^0.5.4",
|
|
155
|
-
"eslint-plugin-vue": "^9.
|
|
155
|
+
"eslint-plugin-vue": "^9.26.0",
|
|
156
156
|
"eslint-plugin-yml": "^1.14.0",
|
|
157
157
|
"eslint-processor-vue-blocks": "^0.1.2",
|
|
158
158
|
globals: "^15.1.0",
|
|
@@ -166,17 +166,16 @@ var package_default = {
|
|
|
166
166
|
yargs: "^17.7.2"
|
|
167
167
|
},
|
|
168
168
|
devDependencies: {
|
|
169
|
-
"@antfu/eslint-plugin-prettier": "^5.0.1-1",
|
|
170
169
|
"@antfu/ni": "^0.21.12",
|
|
171
170
|
"@dhzh/eslint-config": "workspace:*",
|
|
172
171
|
"@eslint/config-inspector": "^0.4.8",
|
|
173
|
-
"@stylistic/eslint-plugin-migrate": "^1.
|
|
172
|
+
"@stylistic/eslint-plugin-migrate": "^2.1.0",
|
|
174
173
|
"@types/eslint": "^8.56.10",
|
|
175
174
|
"@types/fs-extra": "^11.0.4",
|
|
176
|
-
"@types/node": "^20.12.
|
|
175
|
+
"@types/node": "^20.12.11",
|
|
177
176
|
"@types/prompts": "^2.4.9",
|
|
178
177
|
"@types/yargs": "^17.0.32",
|
|
179
|
-
"@unocss/eslint-plugin": "^0.
|
|
178
|
+
"@unocss/eslint-plugin": "^0.60.0",
|
|
180
179
|
"astro-eslint-parser": "^1.0.2",
|
|
181
180
|
bumpp: "^9.4.1",
|
|
182
181
|
"bundle-require": "^4.1.0",
|
|
@@ -184,10 +183,10 @@ var package_default = {
|
|
|
184
183
|
"eslint-plugin-astro": "^1.1.2",
|
|
185
184
|
"eslint-plugin-format": "^0.1.1",
|
|
186
185
|
"eslint-plugin-solid": "^0.14.0",
|
|
187
|
-
"eslint-plugin-svelte": "2.
|
|
186
|
+
"eslint-plugin-svelte": "^2.38.0",
|
|
188
187
|
"eslint-typegen": "^0.2.4",
|
|
189
188
|
esno: "^4.7.0",
|
|
190
|
-
execa: "^
|
|
189
|
+
execa: "^9.0.0",
|
|
191
190
|
"fast-glob": "^3.3.2",
|
|
192
191
|
"fs-extra": "^11.2.0",
|
|
193
192
|
"lint-staged": "^15.2.2",
|
|
@@ -195,12 +194,12 @@ var package_default = {
|
|
|
195
194
|
"prettier-plugin-slidev": "^1.0.5",
|
|
196
195
|
rimraf: "^5.0.5",
|
|
197
196
|
"simple-git-hooks": "^2.11.1",
|
|
198
|
-
svelte: "^4.2.
|
|
199
|
-
"svelte-eslint-parser": "^0.
|
|
197
|
+
svelte: "^4.2.16",
|
|
198
|
+
"svelte-eslint-parser": "^0.36.0",
|
|
200
199
|
tsup: "^8.0.2",
|
|
201
200
|
typescript: "^5.4.5",
|
|
202
201
|
vitest: "^1.6.0",
|
|
203
|
-
vue: "^3.4.
|
|
202
|
+
vue: "^3.4.27"
|
|
204
203
|
},
|
|
205
204
|
"simple-git-hooks": {
|
|
206
205
|
"pre-commit": "pnpm lint-staged"
|
|
@@ -322,6 +321,10 @@ var frameworkOptions = [
|
|
|
322
321
|
label: import_picocolors.default.green("Vue"),
|
|
323
322
|
value: "vue"
|
|
324
323
|
},
|
|
324
|
+
{
|
|
325
|
+
label: import_picocolors.default.red("Nest"),
|
|
326
|
+
value: "nest"
|
|
327
|
+
},
|
|
325
328
|
{
|
|
326
329
|
label: import_picocolors.default.red("Svelte"),
|
|
327
330
|
value: "svelte"
|
|
@@ -492,10 +495,18 @@ async function updateEslintFiles(result) {
|
|
|
492
495
|
configLines.push(`unocss: true,`);
|
|
493
496
|
}
|
|
494
497
|
for (const framework of result.frameworks) {
|
|
495
|
-
|
|
498
|
+
if (framework !== "nest") {
|
|
499
|
+
configLines.push(`${framework}: true,`);
|
|
500
|
+
}
|
|
496
501
|
}
|
|
497
502
|
const mainConfig = configLines.map((i) => ` ${i}`).join("\n");
|
|
498
503
|
const additionalConfig = [];
|
|
504
|
+
if (result.frameworks.includes("nest")) {
|
|
505
|
+
additionalConfig.push(` rules: {
|
|
506
|
+
'ts/consistent-type-imports': 'off'
|
|
507
|
+
}
|
|
508
|
+
`);
|
|
509
|
+
}
|
|
499
510
|
const eslintConfigContent = getEslintConfigContent(mainConfig, additionalConfig);
|
|
500
511
|
await import_promises2.default.writeFile(pathFlatConfig, eslintConfigContent);
|
|
501
512
|
p2.log.success(import_picocolors3.default.green(`Created ${configFileName}`));
|
package/dist/cli.js
CHANGED
|
@@ -19,7 +19,7 @@ import c from "picocolors";
|
|
|
19
19
|
var package_default = {
|
|
20
20
|
name: "@dhzh/eslint-config",
|
|
21
21
|
type: "module",
|
|
22
|
-
version: "0.
|
|
22
|
+
version: "0.5.0",
|
|
23
23
|
packageManager: "pnpm@9.1.0",
|
|
24
24
|
description: "Easton's ESLint config",
|
|
25
25
|
author: "Easton Zheng <dhzhme@gmail.com>",
|
|
@@ -100,21 +100,21 @@ var package_default = {
|
|
|
100
100
|
dependencies: {
|
|
101
101
|
"@antfu/install-pkg": "^0.3.3",
|
|
102
102
|
"@clack/prompts": "^0.7.0",
|
|
103
|
-
"@eslint-react/eslint-plugin": "^1.5.
|
|
104
|
-
"@stylistic/eslint-plugin": "^1.
|
|
105
|
-
"@typescript-eslint/eslint-plugin": "
|
|
106
|
-
"@typescript-eslint/parser": "
|
|
103
|
+
"@eslint-react/eslint-plugin": "^1.5.11",
|
|
104
|
+
"@stylistic/eslint-plugin": "^2.1.0",
|
|
105
|
+
"@typescript-eslint/eslint-plugin": "^7.8.0",
|
|
106
|
+
"@typescript-eslint/parser": "^7.8.0",
|
|
107
107
|
"eslint-config-flat-gitignore": "^0.1.5",
|
|
108
108
|
"eslint-flat-config-utils": "^0.2.4",
|
|
109
109
|
"eslint-merge-processors": "^0.1.0",
|
|
110
|
-
"eslint-plugin-antfu": "^2.
|
|
111
|
-
"eslint-plugin-command": "^0.
|
|
110
|
+
"eslint-plugin-antfu": "^2.2.0",
|
|
111
|
+
"eslint-plugin-command": "^0.2.0",
|
|
112
112
|
"eslint-plugin-eslint-comments": "^3.2.0",
|
|
113
113
|
"eslint-plugin-import-x": "^0.5.0",
|
|
114
114
|
"eslint-plugin-jsdoc": "^48.2.3",
|
|
115
115
|
"eslint-plugin-jsonc": "^2.15.1",
|
|
116
116
|
"eslint-plugin-markdown": "^5.0.0",
|
|
117
|
-
"eslint-plugin-n": "^17.
|
|
117
|
+
"eslint-plugin-n": "^17.5.1",
|
|
118
118
|
"eslint-plugin-no-only-tests": "^3.1.0",
|
|
119
119
|
"eslint-plugin-perfectionist": "^2.10.0",
|
|
120
120
|
"eslint-plugin-react-hooks": "^4.6.2",
|
|
@@ -123,7 +123,7 @@ var package_default = {
|
|
|
123
123
|
"eslint-plugin-unicorn": "^52.0.0",
|
|
124
124
|
"eslint-plugin-unused-imports": "^3.2.0",
|
|
125
125
|
"eslint-plugin-vitest": "^0.5.4",
|
|
126
|
-
"eslint-plugin-vue": "^9.
|
|
126
|
+
"eslint-plugin-vue": "^9.26.0",
|
|
127
127
|
"eslint-plugin-yml": "^1.14.0",
|
|
128
128
|
"eslint-processor-vue-blocks": "^0.1.2",
|
|
129
129
|
globals: "^15.1.0",
|
|
@@ -137,17 +137,16 @@ var package_default = {
|
|
|
137
137
|
yargs: "^17.7.2"
|
|
138
138
|
},
|
|
139
139
|
devDependencies: {
|
|
140
|
-
"@antfu/eslint-plugin-prettier": "^5.0.1-1",
|
|
141
140
|
"@antfu/ni": "^0.21.12",
|
|
142
141
|
"@dhzh/eslint-config": "workspace:*",
|
|
143
142
|
"@eslint/config-inspector": "^0.4.8",
|
|
144
|
-
"@stylistic/eslint-plugin-migrate": "^1.
|
|
143
|
+
"@stylistic/eslint-plugin-migrate": "^2.1.0",
|
|
145
144
|
"@types/eslint": "^8.56.10",
|
|
146
145
|
"@types/fs-extra": "^11.0.4",
|
|
147
|
-
"@types/node": "^20.12.
|
|
146
|
+
"@types/node": "^20.12.11",
|
|
148
147
|
"@types/prompts": "^2.4.9",
|
|
149
148
|
"@types/yargs": "^17.0.32",
|
|
150
|
-
"@unocss/eslint-plugin": "^0.
|
|
149
|
+
"@unocss/eslint-plugin": "^0.60.0",
|
|
151
150
|
"astro-eslint-parser": "^1.0.2",
|
|
152
151
|
bumpp: "^9.4.1",
|
|
153
152
|
"bundle-require": "^4.1.0",
|
|
@@ -155,10 +154,10 @@ var package_default = {
|
|
|
155
154
|
"eslint-plugin-astro": "^1.1.2",
|
|
156
155
|
"eslint-plugin-format": "^0.1.1",
|
|
157
156
|
"eslint-plugin-solid": "^0.14.0",
|
|
158
|
-
"eslint-plugin-svelte": "2.
|
|
157
|
+
"eslint-plugin-svelte": "^2.38.0",
|
|
159
158
|
"eslint-typegen": "^0.2.4",
|
|
160
159
|
esno: "^4.7.0",
|
|
161
|
-
execa: "^
|
|
160
|
+
execa: "^9.0.0",
|
|
162
161
|
"fast-glob": "^3.3.2",
|
|
163
162
|
"fs-extra": "^11.2.0",
|
|
164
163
|
"lint-staged": "^15.2.2",
|
|
@@ -166,12 +165,12 @@ var package_default = {
|
|
|
166
165
|
"prettier-plugin-slidev": "^1.0.5",
|
|
167
166
|
rimraf: "^5.0.5",
|
|
168
167
|
"simple-git-hooks": "^2.11.1",
|
|
169
|
-
svelte: "^4.2.
|
|
170
|
-
"svelte-eslint-parser": "^0.
|
|
168
|
+
svelte: "^4.2.16",
|
|
169
|
+
"svelte-eslint-parser": "^0.36.0",
|
|
171
170
|
tsup: "^8.0.2",
|
|
172
171
|
typescript: "^5.4.5",
|
|
173
172
|
vitest: "^1.6.0",
|
|
174
|
-
vue: "^3.4.
|
|
173
|
+
vue: "^3.4.27"
|
|
175
174
|
},
|
|
176
175
|
"simple-git-hooks": {
|
|
177
176
|
"pre-commit": "pnpm lint-staged"
|
|
@@ -293,6 +292,10 @@ var frameworkOptions = [
|
|
|
293
292
|
label: c.green("Vue"),
|
|
294
293
|
value: "vue"
|
|
295
294
|
},
|
|
295
|
+
{
|
|
296
|
+
label: c.red("Nest"),
|
|
297
|
+
value: "nest"
|
|
298
|
+
},
|
|
296
299
|
{
|
|
297
300
|
label: c.red("Svelte"),
|
|
298
301
|
value: "svelte"
|
|
@@ -463,10 +466,18 @@ async function updateEslintFiles(result) {
|
|
|
463
466
|
configLines.push(`unocss: true,`);
|
|
464
467
|
}
|
|
465
468
|
for (const framework of result.frameworks) {
|
|
466
|
-
|
|
469
|
+
if (framework !== "nest") {
|
|
470
|
+
configLines.push(`${framework}: true,`);
|
|
471
|
+
}
|
|
467
472
|
}
|
|
468
473
|
const mainConfig = configLines.map((i) => ` ${i}`).join("\n");
|
|
469
474
|
const additionalConfig = [];
|
|
475
|
+
if (result.frameworks.includes("nest")) {
|
|
476
|
+
additionalConfig.push(` rules: {
|
|
477
|
+
'ts/consistent-type-imports': 'off'
|
|
478
|
+
}
|
|
479
|
+
`);
|
|
480
|
+
}
|
|
470
481
|
const eslintConfigContent = getEslintConfigContent(mainConfig, additionalConfig);
|
|
471
482
|
await fsp2.writeFile(pathFlatConfig, eslintConfigContent);
|
|
472
483
|
p2.log.success(c3.green(`Created ${configFileName}`));
|
package/dist/index.d.cts
CHANGED
|
@@ -129,6 +129,11 @@ interface RuleOptions {
|
|
|
129
129
|
* @see https://github.com/antfu/eslint-plugin-antfu/blob/main/src/rules/import-dedupe.md
|
|
130
130
|
*/
|
|
131
131
|
'antfu/import-dedupe'?: Linter.RuleEntry<[]>
|
|
132
|
+
/**
|
|
133
|
+
* Enforce consistent indentation in `unindent` template tag
|
|
134
|
+
* @see https://github.com/antfu/eslint-plugin-antfu/blob/main/src/rules/indent-unindent.test.ts
|
|
135
|
+
*/
|
|
136
|
+
'antfu/indent-unindent'?: Linter.RuleEntry<AntfuIndentUnindent>
|
|
132
137
|
/**
|
|
133
138
|
* Prevent importing modules in `dist` folder
|
|
134
139
|
* @see https://github.com/antfu/eslint-plugin-antfu/blob/main/src/rules/no-import-dist.test.ts
|
|
@@ -2997,6 +3002,7 @@ interface RuleOptions {
|
|
|
2997
3002
|
/**
|
|
2998
3003
|
* disallow complicated conditional rendering
|
|
2999
3004
|
* @see https://eslint-react.xyz/rules/no-complicated-conditional-rendering
|
|
3005
|
+
* @deprecated
|
|
3000
3006
|
*/
|
|
3001
3007
|
'react/no-complicated-conditional-rendering'?: Linter.RuleEntry<[]>
|
|
3002
3008
|
/**
|
|
@@ -3032,6 +3038,7 @@ interface RuleOptions {
|
|
|
3032
3038
|
/**
|
|
3033
3039
|
* disallow spreading 'key' from objects.
|
|
3034
3040
|
* @see https://eslint-react.xyz/rules/no-implicit-key
|
|
3041
|
+
* @deprecated
|
|
3035
3042
|
*/
|
|
3036
3043
|
'react/no-implicit-key'?: Linter.RuleEntry<[]>
|
|
3037
3044
|
/**
|
|
@@ -3555,6 +3562,11 @@ interface RuleOptions {
|
|
|
3555
3562
|
* @see https://eslint.style/rules/ts/keyword-spacing
|
|
3556
3563
|
*/
|
|
3557
3564
|
'style/keyword-spacing'?: Linter.RuleEntry<StyleKeywordSpacing>
|
|
3565
|
+
/**
|
|
3566
|
+
* Enforce position of line comments
|
|
3567
|
+
* @see https://eslint.style/rules/js/line-comment-position
|
|
3568
|
+
*/
|
|
3569
|
+
'style/line-comment-position'?: Linter.RuleEntry<StyleLineCommentPosition>
|
|
3558
3570
|
/**
|
|
3559
3571
|
* Enforce consistent linebreak style
|
|
3560
3572
|
* @see https://eslint.style/rules/js/linebreak-style
|
|
@@ -3585,6 +3597,11 @@ interface RuleOptions {
|
|
|
3585
3597
|
* @see https://eslint.style/rules/ts/member-delimiter-style
|
|
3586
3598
|
*/
|
|
3587
3599
|
'style/member-delimiter-style'?: Linter.RuleEntry<StyleMemberDelimiterStyle>
|
|
3600
|
+
/**
|
|
3601
|
+
* Enforce a particular style for multiline comments
|
|
3602
|
+
* @see https://eslint.style/rules/js/multiline-comment-style
|
|
3603
|
+
*/
|
|
3604
|
+
'style/multiline-comment-style'?: Linter.RuleEntry<StyleMultilineCommentStyle>
|
|
3588
3605
|
/**
|
|
3589
3606
|
* Enforce newlines between operands of ternary expressions
|
|
3590
3607
|
* @see https://eslint.style/rules/js/multiline-ternary
|
|
@@ -7362,6 +7379,11 @@ type AntfuConsistentListNewline = []|[{
|
|
|
7362
7379
|
ArrayPattern?: boolean
|
|
7363
7380
|
JSXOpeningElement?: boolean
|
|
7364
7381
|
}]
|
|
7382
|
+
// ----- antfu/indent-unindent -----
|
|
7383
|
+
type AntfuIndentUnindent = []|[{
|
|
7384
|
+
indent?: number
|
|
7385
|
+
tags?: string[]
|
|
7386
|
+
}]
|
|
7365
7387
|
// ----- array-bracket-newline -----
|
|
7366
7388
|
type ArrayBracketNewline = []|[(("always" | "never" | "consistent") | {
|
|
7367
7389
|
multiline?: boolean
|
|
@@ -10791,6 +10813,13 @@ type StyleKeywordSpacing = []|[{
|
|
|
10791
10813
|
}
|
|
10792
10814
|
}
|
|
10793
10815
|
}]
|
|
10816
|
+
// ----- style/line-comment-position -----
|
|
10817
|
+
type StyleLineCommentPosition = []|[(("above" | "beside") | {
|
|
10818
|
+
position?: ("above" | "beside")
|
|
10819
|
+
ignorePattern?: string
|
|
10820
|
+
applyDefaultPatterns?: boolean
|
|
10821
|
+
applyDefaultIgnorePatterns?: boolean
|
|
10822
|
+
})]
|
|
10794
10823
|
// ----- style/linebreak-style -----
|
|
10795
10824
|
type StyleLinebreakStyle = []|[("unix" | "windows")]
|
|
10796
10825
|
// ----- style/lines-around-comment -----
|
|
@@ -10944,6 +10973,10 @@ interface _StyleMemberDelimiterStyle_DelimiterConfig {
|
|
|
10944
10973
|
requireLast?: boolean
|
|
10945
10974
|
}
|
|
10946
10975
|
}
|
|
10976
|
+
// ----- style/multiline-comment-style -----
|
|
10977
|
+
type StyleMultilineCommentStyle = ([]|[("starred-block" | "bare-block")] | []|["separate-lines"]|["separate-lines", {
|
|
10978
|
+
checkJSDoc?: boolean
|
|
10979
|
+
}])
|
|
10947
10980
|
// ----- style/multiline-ternary -----
|
|
10948
10981
|
type StyleMultilineTernary = []|[("always" | "always-multiline" | "never")]|[("always" | "always-multiline" | "never"), {
|
|
10949
10982
|
ignoreJSX?: boolean
|
package/dist/index.d.ts
CHANGED
|
@@ -129,6 +129,11 @@ interface RuleOptions {
|
|
|
129
129
|
* @see https://github.com/antfu/eslint-plugin-antfu/blob/main/src/rules/import-dedupe.md
|
|
130
130
|
*/
|
|
131
131
|
'antfu/import-dedupe'?: Linter.RuleEntry<[]>
|
|
132
|
+
/**
|
|
133
|
+
* Enforce consistent indentation in `unindent` template tag
|
|
134
|
+
* @see https://github.com/antfu/eslint-plugin-antfu/blob/main/src/rules/indent-unindent.test.ts
|
|
135
|
+
*/
|
|
136
|
+
'antfu/indent-unindent'?: Linter.RuleEntry<AntfuIndentUnindent>
|
|
132
137
|
/**
|
|
133
138
|
* Prevent importing modules in `dist` folder
|
|
134
139
|
* @see https://github.com/antfu/eslint-plugin-antfu/blob/main/src/rules/no-import-dist.test.ts
|
|
@@ -2997,6 +3002,7 @@ interface RuleOptions {
|
|
|
2997
3002
|
/**
|
|
2998
3003
|
* disallow complicated conditional rendering
|
|
2999
3004
|
* @see https://eslint-react.xyz/rules/no-complicated-conditional-rendering
|
|
3005
|
+
* @deprecated
|
|
3000
3006
|
*/
|
|
3001
3007
|
'react/no-complicated-conditional-rendering'?: Linter.RuleEntry<[]>
|
|
3002
3008
|
/**
|
|
@@ -3032,6 +3038,7 @@ interface RuleOptions {
|
|
|
3032
3038
|
/**
|
|
3033
3039
|
* disallow spreading 'key' from objects.
|
|
3034
3040
|
* @see https://eslint-react.xyz/rules/no-implicit-key
|
|
3041
|
+
* @deprecated
|
|
3035
3042
|
*/
|
|
3036
3043
|
'react/no-implicit-key'?: Linter.RuleEntry<[]>
|
|
3037
3044
|
/**
|
|
@@ -3555,6 +3562,11 @@ interface RuleOptions {
|
|
|
3555
3562
|
* @see https://eslint.style/rules/ts/keyword-spacing
|
|
3556
3563
|
*/
|
|
3557
3564
|
'style/keyword-spacing'?: Linter.RuleEntry<StyleKeywordSpacing>
|
|
3565
|
+
/**
|
|
3566
|
+
* Enforce position of line comments
|
|
3567
|
+
* @see https://eslint.style/rules/js/line-comment-position
|
|
3568
|
+
*/
|
|
3569
|
+
'style/line-comment-position'?: Linter.RuleEntry<StyleLineCommentPosition>
|
|
3558
3570
|
/**
|
|
3559
3571
|
* Enforce consistent linebreak style
|
|
3560
3572
|
* @see https://eslint.style/rules/js/linebreak-style
|
|
@@ -3585,6 +3597,11 @@ interface RuleOptions {
|
|
|
3585
3597
|
* @see https://eslint.style/rules/ts/member-delimiter-style
|
|
3586
3598
|
*/
|
|
3587
3599
|
'style/member-delimiter-style'?: Linter.RuleEntry<StyleMemberDelimiterStyle>
|
|
3600
|
+
/**
|
|
3601
|
+
* Enforce a particular style for multiline comments
|
|
3602
|
+
* @see https://eslint.style/rules/js/multiline-comment-style
|
|
3603
|
+
*/
|
|
3604
|
+
'style/multiline-comment-style'?: Linter.RuleEntry<StyleMultilineCommentStyle>
|
|
3588
3605
|
/**
|
|
3589
3606
|
* Enforce newlines between operands of ternary expressions
|
|
3590
3607
|
* @see https://eslint.style/rules/js/multiline-ternary
|
|
@@ -7362,6 +7379,11 @@ type AntfuConsistentListNewline = []|[{
|
|
|
7362
7379
|
ArrayPattern?: boolean
|
|
7363
7380
|
JSXOpeningElement?: boolean
|
|
7364
7381
|
}]
|
|
7382
|
+
// ----- antfu/indent-unindent -----
|
|
7383
|
+
type AntfuIndentUnindent = []|[{
|
|
7384
|
+
indent?: number
|
|
7385
|
+
tags?: string[]
|
|
7386
|
+
}]
|
|
7365
7387
|
// ----- array-bracket-newline -----
|
|
7366
7388
|
type ArrayBracketNewline = []|[(("always" | "never" | "consistent") | {
|
|
7367
7389
|
multiline?: boolean
|
|
@@ -10791,6 +10813,13 @@ type StyleKeywordSpacing = []|[{
|
|
|
10791
10813
|
}
|
|
10792
10814
|
}
|
|
10793
10815
|
}]
|
|
10816
|
+
// ----- style/line-comment-position -----
|
|
10817
|
+
type StyleLineCommentPosition = []|[(("above" | "beside") | {
|
|
10818
|
+
position?: ("above" | "beside")
|
|
10819
|
+
ignorePattern?: string
|
|
10820
|
+
applyDefaultPatterns?: boolean
|
|
10821
|
+
applyDefaultIgnorePatterns?: boolean
|
|
10822
|
+
})]
|
|
10794
10823
|
// ----- style/linebreak-style -----
|
|
10795
10824
|
type StyleLinebreakStyle = []|[("unix" | "windows")]
|
|
10796
10825
|
// ----- style/lines-around-comment -----
|
|
@@ -10944,6 +10973,10 @@ interface _StyleMemberDelimiterStyle_DelimiterConfig {
|
|
|
10944
10973
|
requireLast?: boolean
|
|
10945
10974
|
}
|
|
10946
10975
|
}
|
|
10976
|
+
// ----- style/multiline-comment-style -----
|
|
10977
|
+
type StyleMultilineCommentStyle = ([]|[("starred-block" | "bare-block")] | []|["separate-lines"]|["separate-lines", {
|
|
10978
|
+
checkJSDoc?: boolean
|
|
10979
|
+
}])
|
|
10947
10980
|
// ----- style/multiline-ternary -----
|
|
10948
10981
|
type StyleMultilineTernary = []|[("always" | "always-multiline" | "never")]|[("always" | "always-multiline" | "never"), {
|
|
10949
10982
|
ignoreJSX?: boolean
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@dhzh/eslint-config",
|
|
3
3
|
"type": "module",
|
|
4
|
-
"version": "0.
|
|
4
|
+
"version": "0.5.0",
|
|
5
5
|
"description": "Easton's ESLint config",
|
|
6
6
|
"author": "Easton Zheng <dhzhme@gmail.com>",
|
|
7
7
|
"license": "MIT",
|
|
@@ -67,21 +67,21 @@
|
|
|
67
67
|
"dependencies": {
|
|
68
68
|
"@antfu/install-pkg": "^0.3.3",
|
|
69
69
|
"@clack/prompts": "^0.7.0",
|
|
70
|
-
"@eslint-react/eslint-plugin": "^1.5.
|
|
71
|
-
"@stylistic/eslint-plugin": "^1.
|
|
72
|
-
"@typescript-eslint/eslint-plugin": "
|
|
73
|
-
"@typescript-eslint/parser": "
|
|
70
|
+
"@eslint-react/eslint-plugin": "^1.5.11",
|
|
71
|
+
"@stylistic/eslint-plugin": "^2.1.0",
|
|
72
|
+
"@typescript-eslint/eslint-plugin": "^7.8.0",
|
|
73
|
+
"@typescript-eslint/parser": "^7.8.0",
|
|
74
74
|
"eslint-config-flat-gitignore": "^0.1.5",
|
|
75
75
|
"eslint-flat-config-utils": "^0.2.4",
|
|
76
76
|
"eslint-merge-processors": "^0.1.0",
|
|
77
|
-
"eslint-plugin-antfu": "^2.
|
|
78
|
-
"eslint-plugin-command": "^0.
|
|
77
|
+
"eslint-plugin-antfu": "^2.2.0",
|
|
78
|
+
"eslint-plugin-command": "^0.2.0",
|
|
79
79
|
"eslint-plugin-eslint-comments": "^3.2.0",
|
|
80
80
|
"eslint-plugin-import-x": "^0.5.0",
|
|
81
81
|
"eslint-plugin-jsdoc": "^48.2.3",
|
|
82
82
|
"eslint-plugin-jsonc": "^2.15.1",
|
|
83
83
|
"eslint-plugin-markdown": "^5.0.0",
|
|
84
|
-
"eslint-plugin-n": "^17.
|
|
84
|
+
"eslint-plugin-n": "^17.5.1",
|
|
85
85
|
"eslint-plugin-no-only-tests": "^3.1.0",
|
|
86
86
|
"eslint-plugin-perfectionist": "^2.10.0",
|
|
87
87
|
"eslint-plugin-react-hooks": "^4.6.2",
|
|
@@ -90,7 +90,7 @@
|
|
|
90
90
|
"eslint-plugin-unicorn": "^52.0.0",
|
|
91
91
|
"eslint-plugin-unused-imports": "^3.2.0",
|
|
92
92
|
"eslint-plugin-vitest": "^0.5.4",
|
|
93
|
-
"eslint-plugin-vue": "^9.
|
|
93
|
+
"eslint-plugin-vue": "^9.26.0",
|
|
94
94
|
"eslint-plugin-yml": "^1.14.0",
|
|
95
95
|
"eslint-processor-vue-blocks": "^0.1.2",
|
|
96
96
|
"globals": "^15.1.0",
|
|
@@ -104,16 +104,15 @@
|
|
|
104
104
|
"yargs": "^17.7.2"
|
|
105
105
|
},
|
|
106
106
|
"devDependencies": {
|
|
107
|
-
"@antfu/eslint-plugin-prettier": "^5.0.1-1",
|
|
108
107
|
"@antfu/ni": "^0.21.12",
|
|
109
108
|
"@eslint/config-inspector": "^0.4.8",
|
|
110
|
-
"@stylistic/eslint-plugin-migrate": "^1.
|
|
109
|
+
"@stylistic/eslint-plugin-migrate": "^2.1.0",
|
|
111
110
|
"@types/eslint": "^8.56.10",
|
|
112
111
|
"@types/fs-extra": "^11.0.4",
|
|
113
|
-
"@types/node": "^20.12.
|
|
112
|
+
"@types/node": "^20.12.11",
|
|
114
113
|
"@types/prompts": "^2.4.9",
|
|
115
114
|
"@types/yargs": "^17.0.32",
|
|
116
|
-
"@unocss/eslint-plugin": "^0.
|
|
115
|
+
"@unocss/eslint-plugin": "^0.60.0",
|
|
117
116
|
"astro-eslint-parser": "^1.0.2",
|
|
118
117
|
"bumpp": "^9.4.1",
|
|
119
118
|
"bundle-require": "^4.1.0",
|
|
@@ -121,10 +120,10 @@
|
|
|
121
120
|
"eslint-plugin-astro": "^1.1.2",
|
|
122
121
|
"eslint-plugin-format": "^0.1.1",
|
|
123
122
|
"eslint-plugin-solid": "^0.14.0",
|
|
124
|
-
"eslint-plugin-svelte": "2.
|
|
123
|
+
"eslint-plugin-svelte": "^2.38.0",
|
|
125
124
|
"eslint-typegen": "^0.2.4",
|
|
126
125
|
"esno": "^4.7.0",
|
|
127
|
-
"execa": "^
|
|
126
|
+
"execa": "^9.0.0",
|
|
128
127
|
"fast-glob": "^3.3.2",
|
|
129
128
|
"fs-extra": "^11.2.0",
|
|
130
129
|
"lint-staged": "^15.2.2",
|
|
@@ -132,13 +131,13 @@
|
|
|
132
131
|
"prettier-plugin-slidev": "^1.0.5",
|
|
133
132
|
"rimraf": "^5.0.5",
|
|
134
133
|
"simple-git-hooks": "^2.11.1",
|
|
135
|
-
"svelte": "^4.2.
|
|
136
|
-
"svelte-eslint-parser": "^0.
|
|
134
|
+
"svelte": "^4.2.16",
|
|
135
|
+
"svelte-eslint-parser": "^0.36.0",
|
|
137
136
|
"tsup": "^8.0.2",
|
|
138
137
|
"typescript": "^5.4.5",
|
|
139
138
|
"vitest": "^1.6.0",
|
|
140
|
-
"vue": "^3.4.
|
|
141
|
-
"@dhzh/eslint-config": "0.
|
|
139
|
+
"vue": "^3.4.27",
|
|
140
|
+
"@dhzh/eslint-config": "0.5.0"
|
|
142
141
|
},
|
|
143
142
|
"simple-git-hooks": {
|
|
144
143
|
"pre-commit": "pnpm lint-staged"
|