@dhzh/eslint-config 1.23.1 → 1.24.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/dist/cli/index.cjs +12 -13
- package/dist/cli/index.js +12 -13
- package/dist/index.cjs +2 -6
- package/dist/index.d.cts +28 -26
- package/dist/index.d.ts +28 -26
- package/dist/index.js +2 -6
- package/package.json +11 -12
package/dist/cli/index.cjs
CHANGED
|
@@ -28,12 +28,12 @@ var import_ansis6 = __toESM(require("ansis"), 1);
|
|
|
28
28
|
var import_cac = require("cac");
|
|
29
29
|
|
|
30
30
|
// package.json
|
|
31
|
-
var version = "1.
|
|
31
|
+
var version = "1.24.0";
|
|
32
32
|
var package_default = {
|
|
33
33
|
name: "@dhzh/eslint-config",
|
|
34
34
|
type: "module",
|
|
35
35
|
version,
|
|
36
|
-
packageManager: "pnpm@10.28.
|
|
36
|
+
packageManager: "pnpm@10.28.2",
|
|
37
37
|
description: "Lyle's ESLint config",
|
|
38
38
|
author: {
|
|
39
39
|
name: "Lyle Zheng",
|
|
@@ -91,11 +91,11 @@ var package_default = {
|
|
|
91
91
|
}
|
|
92
92
|
},
|
|
93
93
|
dependencies: {
|
|
94
|
-
"@clack/prompts": "^0.
|
|
94
|
+
"@clack/prompts": "^1.0.0",
|
|
95
95
|
"@eslint-community/eslint-plugin-eslint-comments": "^4.6.0",
|
|
96
|
-
"@eslint-react/eslint-plugin": "^2.
|
|
96
|
+
"@eslint-react/eslint-plugin": "^2.8.1",
|
|
97
97
|
"@eslint/js": "^9.39.2",
|
|
98
|
-
"@stylistic/eslint-plugin": "^5.7.
|
|
98
|
+
"@stylistic/eslint-plugin": "^5.7.1",
|
|
99
99
|
"@unocss/eslint-config": "66.6.0",
|
|
100
100
|
ansis: "^4.2.0",
|
|
101
101
|
cac: "^6.7.14",
|
|
@@ -106,27 +106,26 @@ var package_default = {
|
|
|
106
106
|
"eslint-plugin-import-x": "^4.16.1",
|
|
107
107
|
"eslint-plugin-jsonc": "^2.21.0",
|
|
108
108
|
"eslint-plugin-n": "^17.23.2",
|
|
109
|
-
"eslint-plugin-package-json": "^0.88.
|
|
109
|
+
"eslint-plugin-package-json": "^0.88.2",
|
|
110
110
|
"eslint-plugin-react-compiler": "19.1.0-rc.2",
|
|
111
111
|
"eslint-plugin-react-google-translate": "^0.1.1",
|
|
112
112
|
"eslint-plugin-react-hooks": "^7.0.1",
|
|
113
113
|
"eslint-plugin-react-refresh": "^0.4.26",
|
|
114
|
-
"eslint-plugin-regexp": "^
|
|
114
|
+
"eslint-plugin-regexp": "^3.0.0",
|
|
115
115
|
"eslint-plugin-simple-import-sort": "^12.1.1",
|
|
116
116
|
"eslint-plugin-tailwindcss": "4.0.0-beta.0",
|
|
117
|
-
"eslint-plugin-toml": "^1.0.
|
|
117
|
+
"eslint-plugin-toml": "^1.0.3",
|
|
118
118
|
"eslint-plugin-unicorn": "^62.0.0",
|
|
119
119
|
"eslint-plugin-unused-imports": "^4.3.0",
|
|
120
120
|
"eslint-plugin-vue": "^10.7.0",
|
|
121
|
-
"eslint-plugin-yml": "^
|
|
121
|
+
"eslint-plugin-yml": "^3.0.0",
|
|
122
122
|
"eslint-processor-vue-blocks": "^2.0.0",
|
|
123
|
-
globals: "^17.
|
|
123
|
+
globals: "^17.2.0",
|
|
124
124
|
"jsonc-eslint-parser": "^2.4.2",
|
|
125
125
|
"local-pkg": "^1.1.2",
|
|
126
126
|
"toml-eslint-parser": "^1.0.3",
|
|
127
|
-
"typescript-eslint": "^8.
|
|
128
|
-
"vue-eslint-parser": "^10.2.0"
|
|
129
|
-
"yaml-eslint-parser": "^2.0.0"
|
|
127
|
+
"typescript-eslint": "^8.54.0",
|
|
128
|
+
"vue-eslint-parser": "^10.2.0"
|
|
130
129
|
},
|
|
131
130
|
devDependencies: {
|
|
132
131
|
"@eslint/config-inspector": "^1.4.2",
|
package/dist/cli/index.js
CHANGED
|
@@ -4,12 +4,12 @@ import c5 from "ansis";
|
|
|
4
4
|
import { cac } from "cac";
|
|
5
5
|
|
|
6
6
|
// package.json
|
|
7
|
-
var version = "1.
|
|
7
|
+
var version = "1.24.0";
|
|
8
8
|
var package_default = {
|
|
9
9
|
name: "@dhzh/eslint-config",
|
|
10
10
|
type: "module",
|
|
11
11
|
version,
|
|
12
|
-
packageManager: "pnpm@10.28.
|
|
12
|
+
packageManager: "pnpm@10.28.2",
|
|
13
13
|
description: "Lyle's ESLint config",
|
|
14
14
|
author: {
|
|
15
15
|
name: "Lyle Zheng",
|
|
@@ -67,11 +67,11 @@ var package_default = {
|
|
|
67
67
|
}
|
|
68
68
|
},
|
|
69
69
|
dependencies: {
|
|
70
|
-
"@clack/prompts": "^0.
|
|
70
|
+
"@clack/prompts": "^1.0.0",
|
|
71
71
|
"@eslint-community/eslint-plugin-eslint-comments": "^4.6.0",
|
|
72
|
-
"@eslint-react/eslint-plugin": "^2.
|
|
72
|
+
"@eslint-react/eslint-plugin": "^2.8.1",
|
|
73
73
|
"@eslint/js": "^9.39.2",
|
|
74
|
-
"@stylistic/eslint-plugin": "^5.7.
|
|
74
|
+
"@stylistic/eslint-plugin": "^5.7.1",
|
|
75
75
|
"@unocss/eslint-config": "66.6.0",
|
|
76
76
|
ansis: "^4.2.0",
|
|
77
77
|
cac: "^6.7.14",
|
|
@@ -82,27 +82,26 @@ var package_default = {
|
|
|
82
82
|
"eslint-plugin-import-x": "^4.16.1",
|
|
83
83
|
"eslint-plugin-jsonc": "^2.21.0",
|
|
84
84
|
"eslint-plugin-n": "^17.23.2",
|
|
85
|
-
"eslint-plugin-package-json": "^0.88.
|
|
85
|
+
"eslint-plugin-package-json": "^0.88.2",
|
|
86
86
|
"eslint-plugin-react-compiler": "19.1.0-rc.2",
|
|
87
87
|
"eslint-plugin-react-google-translate": "^0.1.1",
|
|
88
88
|
"eslint-plugin-react-hooks": "^7.0.1",
|
|
89
89
|
"eslint-plugin-react-refresh": "^0.4.26",
|
|
90
|
-
"eslint-plugin-regexp": "^
|
|
90
|
+
"eslint-plugin-regexp": "^3.0.0",
|
|
91
91
|
"eslint-plugin-simple-import-sort": "^12.1.1",
|
|
92
92
|
"eslint-plugin-tailwindcss": "4.0.0-beta.0",
|
|
93
|
-
"eslint-plugin-toml": "^1.0.
|
|
93
|
+
"eslint-plugin-toml": "^1.0.3",
|
|
94
94
|
"eslint-plugin-unicorn": "^62.0.0",
|
|
95
95
|
"eslint-plugin-unused-imports": "^4.3.0",
|
|
96
96
|
"eslint-plugin-vue": "^10.7.0",
|
|
97
|
-
"eslint-plugin-yml": "^
|
|
97
|
+
"eslint-plugin-yml": "^3.0.0",
|
|
98
98
|
"eslint-processor-vue-blocks": "^2.0.0",
|
|
99
|
-
globals: "^17.
|
|
99
|
+
globals: "^17.2.0",
|
|
100
100
|
"jsonc-eslint-parser": "^2.4.2",
|
|
101
101
|
"local-pkg": "^1.1.2",
|
|
102
102
|
"toml-eslint-parser": "^1.0.3",
|
|
103
|
-
"typescript-eslint": "^8.
|
|
104
|
-
"vue-eslint-parser": "^10.2.0"
|
|
105
|
-
"yaml-eslint-parser": "^2.0.0"
|
|
103
|
+
"typescript-eslint": "^8.54.0",
|
|
104
|
+
"vue-eslint-parser": "^10.2.0"
|
|
106
105
|
},
|
|
107
106
|
devDependencies: {
|
|
108
107
|
"@eslint/config-inspector": "^1.4.2",
|
package/dist/index.cjs
CHANGED
|
@@ -1598,11 +1598,10 @@ function unocss(options = {}) {
|
|
|
1598
1598
|
|
|
1599
1599
|
// src/configs/yml.ts
|
|
1600
1600
|
var import_eslint_plugin_yml = __toESM(require("eslint-plugin-yml"), 1);
|
|
1601
|
-
var parserYml = __toESM(require("yaml-eslint-parser"), 1);
|
|
1602
1601
|
function yml(options = {}) {
|
|
1603
1602
|
const { overrides = {}, indent = 2, quotes = "single" } = options;
|
|
1604
1603
|
return [
|
|
1605
|
-
...import_eslint_plugin_yml.default.configs
|
|
1604
|
+
...import_eslint_plugin_yml.default.configs.recommended.map((item) => ({
|
|
1606
1605
|
...item,
|
|
1607
1606
|
name: `${RULE_PREFIX}/yml/shared`,
|
|
1608
1607
|
files: [GLOB_YML]
|
|
@@ -1610,9 +1609,6 @@ function yml(options = {}) {
|
|
|
1610
1609
|
{
|
|
1611
1610
|
name: `${RULE_PREFIX}/yml/customize`,
|
|
1612
1611
|
files: [GLOB_YML],
|
|
1613
|
-
languageOptions: {
|
|
1614
|
-
parser: parserYml
|
|
1615
|
-
},
|
|
1616
1612
|
rules: {
|
|
1617
1613
|
"yml/block-mapping": "error",
|
|
1618
1614
|
"yml/block-sequence": "error",
|
|
@@ -1728,7 +1724,7 @@ function regexp(options = {}) {
|
|
|
1728
1724
|
const { overrides = {} } = options;
|
|
1729
1725
|
return [
|
|
1730
1726
|
{
|
|
1731
|
-
...pluginRegexp.configs
|
|
1727
|
+
...pluginRegexp.configs.recommended,
|
|
1732
1728
|
name: `${RULE_PREFIX}/regexp/shared`,
|
|
1733
1729
|
files: GLOB_SRC
|
|
1734
1730
|
},
|
package/dist/index.d.cts
CHANGED
|
@@ -232,7 +232,7 @@ interface RuleOptions {
|
|
|
232
232
|
*/
|
|
233
233
|
'@eslint-react/dom/no-unknown-property'?: Linter.RuleEntry<EslintReactDomNoUnknownProperty>
|
|
234
234
|
/**
|
|
235
|
-
* Enforces 'sandbox' attribute for 'iframe' elements is not set to unsafe combinations.
|
|
235
|
+
* Enforces that the 'sandbox' attribute for 'iframe' elements is not set to unsafe combinations.
|
|
236
236
|
* @see https://eslint-react.xyz/docs/rules/dom-no-unsafe-iframe-sandbox
|
|
237
237
|
*/
|
|
238
238
|
'@eslint-react/dom/no-unsafe-iframe-sandbox'?: Linter.RuleEntry<[]>
|
|
@@ -262,12 +262,12 @@ interface RuleOptions {
|
|
|
262
262
|
*/
|
|
263
263
|
'@eslint-react/hooks-extra/no-direct-set-state-in-use-effect'?: Linter.RuleEntry<[]>
|
|
264
264
|
/**
|
|
265
|
-
* Prevents unnecessary
|
|
265
|
+
* Prevents unnecessary '$' symbols before JSX expressions.
|
|
266
266
|
* @see https://eslint-react.xyz/docs/rules/jsx-dollar
|
|
267
267
|
*/
|
|
268
268
|
'@eslint-react/jsx-dollar'?: Linter.RuleEntry<[]>
|
|
269
269
|
/**
|
|
270
|
-
* Enforces
|
|
270
|
+
* Enforces 'key' prop placement before spread props.
|
|
271
271
|
* @see https://eslint-react.xyz/docs/rules/jsx-key-before-spread
|
|
272
272
|
*/
|
|
273
273
|
'@eslint-react/jsx-key-before-spread'?: Linter.RuleEntry<[]>
|
|
@@ -282,7 +282,7 @@ interface RuleOptions {
|
|
|
282
282
|
*/
|
|
283
283
|
'@eslint-react/jsx-no-duplicate-props'?: Linter.RuleEntry<[]>
|
|
284
284
|
/**
|
|
285
|
-
* Disallows
|
|
285
|
+
* Disallows immediately-invoked function expressions in JSX.
|
|
286
286
|
* @see https://eslint-react.xyz/docs/rules/jsx-no-iife
|
|
287
287
|
*/
|
|
288
288
|
'@eslint-react/jsx-no-iife'?: Linter.RuleEntry<[]>
|
|
@@ -292,12 +292,12 @@ interface RuleOptions {
|
|
|
292
292
|
*/
|
|
293
293
|
'@eslint-react/jsx-no-undef'?: Linter.RuleEntry<[]>
|
|
294
294
|
/**
|
|
295
|
-
* Enforces
|
|
295
|
+
* Enforces shorthand syntax for boolean props.
|
|
296
296
|
* @see https://eslint-react.xyz/docs/rules/jsx-shorthand-boolean
|
|
297
297
|
*/
|
|
298
298
|
'@eslint-react/jsx-shorthand-boolean'?: Linter.RuleEntry<EslintReactJsxShorthandBoolean>
|
|
299
299
|
/**
|
|
300
|
-
* Enforces
|
|
300
|
+
* Enforces shorthand syntax for fragment elements.
|
|
301
301
|
* @see https://eslint-react.xyz/docs/rules/jsx-shorthand-fragment
|
|
302
302
|
*/
|
|
303
303
|
'@eslint-react/jsx-shorthand-fragment'?: Linter.RuleEntry<EslintReactJsxShorthandFragment>
|
|
@@ -307,7 +307,7 @@ interface RuleOptions {
|
|
|
307
307
|
*/
|
|
308
308
|
'@eslint-react/jsx-uses-react'?: Linter.RuleEntry<[]>
|
|
309
309
|
/**
|
|
310
|
-
* Marks
|
|
310
|
+
* Marks JSX element variables as used.
|
|
311
311
|
* @see https://eslint-react.xyz/docs/rules/jsx-uses-vars
|
|
312
312
|
*/
|
|
313
313
|
'@eslint-react/jsx-uses-vars'?: Linter.RuleEntry<[]>
|
|
@@ -427,7 +427,7 @@ interface RuleOptions {
|
|
|
427
427
|
*/
|
|
428
428
|
'@eslint-react/no-direct-mutation-state'?: Linter.RuleEntry<[]>
|
|
429
429
|
/**
|
|
430
|
-
*
|
|
430
|
+
* Prevents duplicate 'key' props on sibling elements when rendering lists.
|
|
431
431
|
* @see https://eslint-react.xyz/docs/rules/no-duplicate-key
|
|
432
432
|
*/
|
|
433
433
|
'@eslint-react/no-duplicate-key'?: Linter.RuleEntry<[]>
|
|
@@ -453,12 +453,12 @@ interface RuleOptions {
|
|
|
453
453
|
*/
|
|
454
454
|
'@eslint-react/no-leaked-conditional-rendering'?: Linter.RuleEntry<[]>
|
|
455
455
|
/**
|
|
456
|
-
* Enforces that all components have a 'displayName' that can be used in
|
|
456
|
+
* Enforces that all components have a 'displayName' that can be used in DevTools.
|
|
457
457
|
* @see https://eslint-react.xyz/docs/rules/no-missing-component-display-name
|
|
458
458
|
*/
|
|
459
459
|
'@eslint-react/no-missing-component-display-name'?: Linter.RuleEntry<[]>
|
|
460
460
|
/**
|
|
461
|
-
* Enforces that all contexts have a 'displayName' that can be used in
|
|
461
|
+
* Enforces that all contexts have a 'displayName' that can be used in DevTools.
|
|
462
462
|
* @see https://eslint-react.xyz/docs/rules/no-missing-context-display-name
|
|
463
463
|
*/
|
|
464
464
|
'@eslint-react/no-missing-context-display-name'?: Linter.RuleEntry<[]>
|
|
@@ -513,7 +513,7 @@ interface RuleOptions {
|
|
|
513
513
|
*/
|
|
514
514
|
'@eslint-react/no-string-refs'?: Linter.RuleEntry<[]>
|
|
515
515
|
/**
|
|
516
|
-
* Disallows unnecessary 'key' props on elements.
|
|
516
|
+
* Disallows unnecessary 'key' props on nested child elements when rendering lists.
|
|
517
517
|
* @see https://eslint-react.xyz/docs/rules/no-unnecessary-key
|
|
518
518
|
*/
|
|
519
519
|
'@eslint-react/no-unnecessary-key'?: Linter.RuleEntry<[]>
|
|
@@ -16195,18 +16195,20 @@ type Yoda = []|[("always" | "never")]|[("always" | "never"), {
|
|
|
16195
16195
|
}]
|
|
16196
16196
|
|
|
16197
16197
|
type RuleOption = RuleOptions & Linter.RulesRecord;
|
|
16198
|
-
type
|
|
16198
|
+
type Rule = {
|
|
16199
|
+
[key in keyof RuleOption]: Linter.RuleEntry<[]>;
|
|
16200
|
+
};
|
|
16199
16201
|
interface IConfigsOptions {
|
|
16200
|
-
overrides?:
|
|
16202
|
+
overrides?: Rule;
|
|
16201
16203
|
}
|
|
16202
16204
|
interface IReactConfigsOptions {
|
|
16203
16205
|
language?: 'typescript' | 'javascript';
|
|
16204
16206
|
overrides?: {
|
|
16205
|
-
core?:
|
|
16206
|
-
hooks?:
|
|
16207
|
-
refresh?:
|
|
16208
|
-
compiler?:
|
|
16209
|
-
googleTranslate?:
|
|
16207
|
+
core?: Rule;
|
|
16208
|
+
hooks?: Rule;
|
|
16209
|
+
refresh?: Rule;
|
|
16210
|
+
compiler?: Rule;
|
|
16211
|
+
googleTranslate?: Rule;
|
|
16210
16212
|
};
|
|
16211
16213
|
}
|
|
16212
16214
|
interface IVueConfigsOptions extends IConfigsOptions {
|
|
@@ -16224,8 +16226,8 @@ interface INodeConfigsOptions extends IConfigsOptions {
|
|
|
16224
16226
|
interface IJsonConfigsOptions {
|
|
16225
16227
|
indent?: number;
|
|
16226
16228
|
overrides?: {
|
|
16227
|
-
core?:
|
|
16228
|
-
packageJson?:
|
|
16229
|
+
core?: Rule;
|
|
16230
|
+
packageJson?: Rule;
|
|
16229
16231
|
};
|
|
16230
16232
|
packageJsonRequireType?: boolean;
|
|
16231
16233
|
}
|
|
@@ -16261,12 +16263,12 @@ interface IEslintCommentsConfigsOptions extends IConfigsOptions {
|
|
|
16261
16263
|
}
|
|
16262
16264
|
interface IDisablesConfigsOptions {
|
|
16263
16265
|
overrides?: {
|
|
16264
|
-
scripts?:
|
|
16265
|
-
cli?:
|
|
16266
|
-
bin?:
|
|
16267
|
-
dts?:
|
|
16268
|
-
cjs?:
|
|
16269
|
-
config?:
|
|
16266
|
+
scripts?: Rule;
|
|
16267
|
+
cli?: Rule;
|
|
16268
|
+
bin?: Rule;
|
|
16269
|
+
dts?: Rule;
|
|
16270
|
+
cjs?: Rule;
|
|
16271
|
+
config?: Rule;
|
|
16270
16272
|
};
|
|
16271
16273
|
}
|
|
16272
16274
|
interface Options {
|
package/dist/index.d.ts
CHANGED
|
@@ -232,7 +232,7 @@ interface RuleOptions {
|
|
|
232
232
|
*/
|
|
233
233
|
'@eslint-react/dom/no-unknown-property'?: Linter.RuleEntry<EslintReactDomNoUnknownProperty>
|
|
234
234
|
/**
|
|
235
|
-
* Enforces 'sandbox' attribute for 'iframe' elements is not set to unsafe combinations.
|
|
235
|
+
* Enforces that the 'sandbox' attribute for 'iframe' elements is not set to unsafe combinations.
|
|
236
236
|
* @see https://eslint-react.xyz/docs/rules/dom-no-unsafe-iframe-sandbox
|
|
237
237
|
*/
|
|
238
238
|
'@eslint-react/dom/no-unsafe-iframe-sandbox'?: Linter.RuleEntry<[]>
|
|
@@ -262,12 +262,12 @@ interface RuleOptions {
|
|
|
262
262
|
*/
|
|
263
263
|
'@eslint-react/hooks-extra/no-direct-set-state-in-use-effect'?: Linter.RuleEntry<[]>
|
|
264
264
|
/**
|
|
265
|
-
* Prevents unnecessary
|
|
265
|
+
* Prevents unnecessary '$' symbols before JSX expressions.
|
|
266
266
|
* @see https://eslint-react.xyz/docs/rules/jsx-dollar
|
|
267
267
|
*/
|
|
268
268
|
'@eslint-react/jsx-dollar'?: Linter.RuleEntry<[]>
|
|
269
269
|
/**
|
|
270
|
-
* Enforces
|
|
270
|
+
* Enforces 'key' prop placement before spread props.
|
|
271
271
|
* @see https://eslint-react.xyz/docs/rules/jsx-key-before-spread
|
|
272
272
|
*/
|
|
273
273
|
'@eslint-react/jsx-key-before-spread'?: Linter.RuleEntry<[]>
|
|
@@ -282,7 +282,7 @@ interface RuleOptions {
|
|
|
282
282
|
*/
|
|
283
283
|
'@eslint-react/jsx-no-duplicate-props'?: Linter.RuleEntry<[]>
|
|
284
284
|
/**
|
|
285
|
-
* Disallows
|
|
285
|
+
* Disallows immediately-invoked function expressions in JSX.
|
|
286
286
|
* @see https://eslint-react.xyz/docs/rules/jsx-no-iife
|
|
287
287
|
*/
|
|
288
288
|
'@eslint-react/jsx-no-iife'?: Linter.RuleEntry<[]>
|
|
@@ -292,12 +292,12 @@ interface RuleOptions {
|
|
|
292
292
|
*/
|
|
293
293
|
'@eslint-react/jsx-no-undef'?: Linter.RuleEntry<[]>
|
|
294
294
|
/**
|
|
295
|
-
* Enforces
|
|
295
|
+
* Enforces shorthand syntax for boolean props.
|
|
296
296
|
* @see https://eslint-react.xyz/docs/rules/jsx-shorthand-boolean
|
|
297
297
|
*/
|
|
298
298
|
'@eslint-react/jsx-shorthand-boolean'?: Linter.RuleEntry<EslintReactJsxShorthandBoolean>
|
|
299
299
|
/**
|
|
300
|
-
* Enforces
|
|
300
|
+
* Enforces shorthand syntax for fragment elements.
|
|
301
301
|
* @see https://eslint-react.xyz/docs/rules/jsx-shorthand-fragment
|
|
302
302
|
*/
|
|
303
303
|
'@eslint-react/jsx-shorthand-fragment'?: Linter.RuleEntry<EslintReactJsxShorthandFragment>
|
|
@@ -307,7 +307,7 @@ interface RuleOptions {
|
|
|
307
307
|
*/
|
|
308
308
|
'@eslint-react/jsx-uses-react'?: Linter.RuleEntry<[]>
|
|
309
309
|
/**
|
|
310
|
-
* Marks
|
|
310
|
+
* Marks JSX element variables as used.
|
|
311
311
|
* @see https://eslint-react.xyz/docs/rules/jsx-uses-vars
|
|
312
312
|
*/
|
|
313
313
|
'@eslint-react/jsx-uses-vars'?: Linter.RuleEntry<[]>
|
|
@@ -427,7 +427,7 @@ interface RuleOptions {
|
|
|
427
427
|
*/
|
|
428
428
|
'@eslint-react/no-direct-mutation-state'?: Linter.RuleEntry<[]>
|
|
429
429
|
/**
|
|
430
|
-
*
|
|
430
|
+
* Prevents duplicate 'key' props on sibling elements when rendering lists.
|
|
431
431
|
* @see https://eslint-react.xyz/docs/rules/no-duplicate-key
|
|
432
432
|
*/
|
|
433
433
|
'@eslint-react/no-duplicate-key'?: Linter.RuleEntry<[]>
|
|
@@ -453,12 +453,12 @@ interface RuleOptions {
|
|
|
453
453
|
*/
|
|
454
454
|
'@eslint-react/no-leaked-conditional-rendering'?: Linter.RuleEntry<[]>
|
|
455
455
|
/**
|
|
456
|
-
* Enforces that all components have a 'displayName' that can be used in
|
|
456
|
+
* Enforces that all components have a 'displayName' that can be used in DevTools.
|
|
457
457
|
* @see https://eslint-react.xyz/docs/rules/no-missing-component-display-name
|
|
458
458
|
*/
|
|
459
459
|
'@eslint-react/no-missing-component-display-name'?: Linter.RuleEntry<[]>
|
|
460
460
|
/**
|
|
461
|
-
* Enforces that all contexts have a 'displayName' that can be used in
|
|
461
|
+
* Enforces that all contexts have a 'displayName' that can be used in DevTools.
|
|
462
462
|
* @see https://eslint-react.xyz/docs/rules/no-missing-context-display-name
|
|
463
463
|
*/
|
|
464
464
|
'@eslint-react/no-missing-context-display-name'?: Linter.RuleEntry<[]>
|
|
@@ -513,7 +513,7 @@ interface RuleOptions {
|
|
|
513
513
|
*/
|
|
514
514
|
'@eslint-react/no-string-refs'?: Linter.RuleEntry<[]>
|
|
515
515
|
/**
|
|
516
|
-
* Disallows unnecessary 'key' props on elements.
|
|
516
|
+
* Disallows unnecessary 'key' props on nested child elements when rendering lists.
|
|
517
517
|
* @see https://eslint-react.xyz/docs/rules/no-unnecessary-key
|
|
518
518
|
*/
|
|
519
519
|
'@eslint-react/no-unnecessary-key'?: Linter.RuleEntry<[]>
|
|
@@ -16195,18 +16195,20 @@ type Yoda = []|[("always" | "never")]|[("always" | "never"), {
|
|
|
16195
16195
|
}]
|
|
16196
16196
|
|
|
16197
16197
|
type RuleOption = RuleOptions & Linter.RulesRecord;
|
|
16198
|
-
type
|
|
16198
|
+
type Rule = {
|
|
16199
|
+
[key in keyof RuleOption]: Linter.RuleEntry<[]>;
|
|
16200
|
+
};
|
|
16199
16201
|
interface IConfigsOptions {
|
|
16200
|
-
overrides?:
|
|
16202
|
+
overrides?: Rule;
|
|
16201
16203
|
}
|
|
16202
16204
|
interface IReactConfigsOptions {
|
|
16203
16205
|
language?: 'typescript' | 'javascript';
|
|
16204
16206
|
overrides?: {
|
|
16205
|
-
core?:
|
|
16206
|
-
hooks?:
|
|
16207
|
-
refresh?:
|
|
16208
|
-
compiler?:
|
|
16209
|
-
googleTranslate?:
|
|
16207
|
+
core?: Rule;
|
|
16208
|
+
hooks?: Rule;
|
|
16209
|
+
refresh?: Rule;
|
|
16210
|
+
compiler?: Rule;
|
|
16211
|
+
googleTranslate?: Rule;
|
|
16210
16212
|
};
|
|
16211
16213
|
}
|
|
16212
16214
|
interface IVueConfigsOptions extends IConfigsOptions {
|
|
@@ -16224,8 +16226,8 @@ interface INodeConfigsOptions extends IConfigsOptions {
|
|
|
16224
16226
|
interface IJsonConfigsOptions {
|
|
16225
16227
|
indent?: number;
|
|
16226
16228
|
overrides?: {
|
|
16227
|
-
core?:
|
|
16228
|
-
packageJson?:
|
|
16229
|
+
core?: Rule;
|
|
16230
|
+
packageJson?: Rule;
|
|
16229
16231
|
};
|
|
16230
16232
|
packageJsonRequireType?: boolean;
|
|
16231
16233
|
}
|
|
@@ -16261,12 +16263,12 @@ interface IEslintCommentsConfigsOptions extends IConfigsOptions {
|
|
|
16261
16263
|
}
|
|
16262
16264
|
interface IDisablesConfigsOptions {
|
|
16263
16265
|
overrides?: {
|
|
16264
|
-
scripts?:
|
|
16265
|
-
cli?:
|
|
16266
|
-
bin?:
|
|
16267
|
-
dts?:
|
|
16268
|
-
cjs?:
|
|
16269
|
-
config?:
|
|
16266
|
+
scripts?: Rule;
|
|
16267
|
+
cli?: Rule;
|
|
16268
|
+
bin?: Rule;
|
|
16269
|
+
dts?: Rule;
|
|
16270
|
+
cjs?: Rule;
|
|
16271
|
+
config?: Rule;
|
|
16270
16272
|
};
|
|
16271
16273
|
}
|
|
16272
16274
|
interface Options {
|
package/dist/index.js
CHANGED
|
@@ -1562,11 +1562,10 @@ function unocss(options = {}) {
|
|
|
1562
1562
|
|
|
1563
1563
|
// src/configs/yml.ts
|
|
1564
1564
|
import pluginYml from "eslint-plugin-yml";
|
|
1565
|
-
import * as parserYml from "yaml-eslint-parser";
|
|
1566
1565
|
function yml(options = {}) {
|
|
1567
1566
|
const { overrides = {}, indent = 2, quotes = "single" } = options;
|
|
1568
1567
|
return [
|
|
1569
|
-
...pluginYml.configs
|
|
1568
|
+
...pluginYml.configs.recommended.map((item) => ({
|
|
1570
1569
|
...item,
|
|
1571
1570
|
name: `${RULE_PREFIX}/yml/shared`,
|
|
1572
1571
|
files: [GLOB_YML]
|
|
@@ -1574,9 +1573,6 @@ function yml(options = {}) {
|
|
|
1574
1573
|
{
|
|
1575
1574
|
name: `${RULE_PREFIX}/yml/customize`,
|
|
1576
1575
|
files: [GLOB_YML],
|
|
1577
|
-
languageOptions: {
|
|
1578
|
-
parser: parserYml
|
|
1579
|
-
},
|
|
1580
1576
|
rules: {
|
|
1581
1577
|
"yml/block-mapping": "error",
|
|
1582
1578
|
"yml/block-sequence": "error",
|
|
@@ -1692,7 +1688,7 @@ function regexp(options = {}) {
|
|
|
1692
1688
|
const { overrides = {} } = options;
|
|
1693
1689
|
return [
|
|
1694
1690
|
{
|
|
1695
|
-
...pluginRegexp.configs
|
|
1691
|
+
...pluginRegexp.configs.recommended,
|
|
1696
1692
|
name: `${RULE_PREFIX}/regexp/shared`,
|
|
1697
1693
|
files: GLOB_SRC
|
|
1698
1694
|
},
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@dhzh/eslint-config",
|
|
3
3
|
"type": "module",
|
|
4
|
-
"version": "1.
|
|
4
|
+
"version": "1.24.0",
|
|
5
5
|
"description": "Lyle's ESLint config",
|
|
6
6
|
"author": {
|
|
7
7
|
"name": "Lyle Zheng",
|
|
@@ -47,11 +47,11 @@
|
|
|
47
47
|
}
|
|
48
48
|
},
|
|
49
49
|
"dependencies": {
|
|
50
|
-
"@clack/prompts": "^0.
|
|
50
|
+
"@clack/prompts": "^1.0.0",
|
|
51
51
|
"@eslint-community/eslint-plugin-eslint-comments": "^4.6.0",
|
|
52
|
-
"@eslint-react/eslint-plugin": "^2.
|
|
52
|
+
"@eslint-react/eslint-plugin": "^2.8.1",
|
|
53
53
|
"@eslint/js": "^9.39.2",
|
|
54
|
-
"@stylistic/eslint-plugin": "^5.7.
|
|
54
|
+
"@stylistic/eslint-plugin": "^5.7.1",
|
|
55
55
|
"@unocss/eslint-config": "66.6.0",
|
|
56
56
|
"ansis": "^4.2.0",
|
|
57
57
|
"cac": "^6.7.14",
|
|
@@ -62,27 +62,26 @@
|
|
|
62
62
|
"eslint-plugin-import-x": "^4.16.1",
|
|
63
63
|
"eslint-plugin-jsonc": "^2.21.0",
|
|
64
64
|
"eslint-plugin-n": "^17.23.2",
|
|
65
|
-
"eslint-plugin-package-json": "^0.88.
|
|
65
|
+
"eslint-plugin-package-json": "^0.88.2",
|
|
66
66
|
"eslint-plugin-react-compiler": "19.1.0-rc.2",
|
|
67
67
|
"eslint-plugin-react-google-translate": "^0.1.1",
|
|
68
68
|
"eslint-plugin-react-hooks": "^7.0.1",
|
|
69
69
|
"eslint-plugin-react-refresh": "^0.4.26",
|
|
70
|
-
"eslint-plugin-regexp": "^
|
|
70
|
+
"eslint-plugin-regexp": "^3.0.0",
|
|
71
71
|
"eslint-plugin-simple-import-sort": "^12.1.1",
|
|
72
72
|
"eslint-plugin-tailwindcss": "4.0.0-beta.0",
|
|
73
|
-
"eslint-plugin-toml": "^1.0.
|
|
73
|
+
"eslint-plugin-toml": "^1.0.3",
|
|
74
74
|
"eslint-plugin-unicorn": "^62.0.0",
|
|
75
75
|
"eslint-plugin-unused-imports": "^4.3.0",
|
|
76
76
|
"eslint-plugin-vue": "^10.7.0",
|
|
77
|
-
"eslint-plugin-yml": "^
|
|
77
|
+
"eslint-plugin-yml": "^3.0.0",
|
|
78
78
|
"eslint-processor-vue-blocks": "^2.0.0",
|
|
79
|
-
"globals": "^17.
|
|
79
|
+
"globals": "^17.2.0",
|
|
80
80
|
"jsonc-eslint-parser": "^2.4.2",
|
|
81
81
|
"local-pkg": "^1.1.2",
|
|
82
82
|
"toml-eslint-parser": "^1.0.3",
|
|
83
|
-
"typescript-eslint": "^8.
|
|
84
|
-
"vue-eslint-parser": "^10.2.0"
|
|
85
|
-
"yaml-eslint-parser": "^2.0.0"
|
|
83
|
+
"typescript-eslint": "^8.54.0",
|
|
84
|
+
"vue-eslint-parser": "^10.2.0"
|
|
86
85
|
},
|
|
87
86
|
"devDependencies": {
|
|
88
87
|
"@eslint/config-inspector": "^1.4.2",
|