@oliver139/eslint-config 3.0.0 → 3.1.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.d.ts +1 -1
- package/dist/cli.js +7 -6
- package/dist/index.d.ts +665 -43
- package/dist/index.js +34 -5
- package/package.json +27 -21
package/dist/cli.d.ts
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
export {
|
|
1
|
+
export {};
|
package/dist/cli.js
CHANGED
|
@@ -9,7 +9,7 @@ import parse from "parse-gitignore";
|
|
|
9
9
|
import { execSync } from "node:child_process";
|
|
10
10
|
|
|
11
11
|
//#region package.json
|
|
12
|
-
var version = "3.
|
|
12
|
+
var version = "3.1.0";
|
|
13
13
|
|
|
14
14
|
//#endregion
|
|
15
15
|
//#region src/cli/constants.ts
|
|
@@ -178,10 +178,10 @@ async function updateEslintFiles(result) {
|
|
|
178
178
|
//#region src/cli/constants-generated.ts
|
|
179
179
|
const versionsMap = {
|
|
180
180
|
"@eslint-react/eslint-plugin": "^1.52.3",
|
|
181
|
-
"@next/eslint-plugin-next": "^15.4.
|
|
182
|
-
"@unocss/eslint-plugin": "^66.
|
|
181
|
+
"@next/eslint-plugin-next": "^15.4.6",
|
|
182
|
+
"@unocss/eslint-plugin": "^66.4.2",
|
|
183
183
|
"astro-eslint-parser": "^1.2.2",
|
|
184
|
-
"eslint": "^9.
|
|
184
|
+
"eslint": "^9.33.0",
|
|
185
185
|
"eslint-plugin-astro": "^1.3.1",
|
|
186
186
|
"eslint-plugin-format": "^1.0.1",
|
|
187
187
|
"eslint-plugin-react-hooks": "^5.2.0",
|
|
@@ -190,7 +190,7 @@ const versionsMap = {
|
|
|
190
190
|
"eslint-plugin-svelte": "^3.11.0",
|
|
191
191
|
"prettier-plugin-astro": "^0.14.1",
|
|
192
192
|
"prettier-plugin-slidev": "^1.0.5",
|
|
193
|
-
"svelte-eslint-parser": "^1.3.
|
|
193
|
+
"svelte-eslint-parser": "^1.3.1"
|
|
194
194
|
};
|
|
195
195
|
|
|
196
196
|
//#endregion
|
|
@@ -341,4 +341,5 @@ cli.help();
|
|
|
341
341
|
cli.version(version);
|
|
342
342
|
cli.parse();
|
|
343
343
|
|
|
344
|
-
//#endregion
|
|
344
|
+
//#endregion
|
|
345
|
+
export { };
|
package/dist/index.d.ts
CHANGED
|
@@ -111,182 +111,182 @@ interface RuleOptions {
|
|
|
111
111
|
* apply `jsx-a11y/alt-text` rule to Astro components
|
|
112
112
|
* @see https://ota-meshi.github.io/eslint-plugin-astro/rules/jsx-a11y/alt-text/
|
|
113
113
|
*/
|
|
114
|
-
'astro/jsx-a11y/alt-text'?: Linter.RuleEntry<
|
|
114
|
+
'astro/jsx-a11y/alt-text'?: Linter.RuleEntry<AstroJsxA11YAltText>;
|
|
115
115
|
/**
|
|
116
116
|
* apply `jsx-a11y/anchor-ambiguous-text` rule to Astro components
|
|
117
117
|
* @see https://ota-meshi.github.io/eslint-plugin-astro/rules/jsx-a11y/anchor-ambiguous-text/
|
|
118
118
|
*/
|
|
119
|
-
'astro/jsx-a11y/anchor-ambiguous-text'?: Linter.RuleEntry<
|
|
119
|
+
'astro/jsx-a11y/anchor-ambiguous-text'?: Linter.RuleEntry<AstroJsxA11YAnchorAmbiguousText>;
|
|
120
120
|
/**
|
|
121
121
|
* apply `jsx-a11y/anchor-has-content` rule to Astro components
|
|
122
122
|
* @see https://ota-meshi.github.io/eslint-plugin-astro/rules/jsx-a11y/anchor-has-content/
|
|
123
123
|
*/
|
|
124
|
-
'astro/jsx-a11y/anchor-has-content'?: Linter.RuleEntry<
|
|
124
|
+
'astro/jsx-a11y/anchor-has-content'?: Linter.RuleEntry<AstroJsxA11YAnchorHasContent>;
|
|
125
125
|
/**
|
|
126
126
|
* apply `jsx-a11y/anchor-is-valid` rule to Astro components
|
|
127
127
|
* @see https://ota-meshi.github.io/eslint-plugin-astro/rules/jsx-a11y/anchor-is-valid/
|
|
128
128
|
*/
|
|
129
|
-
'astro/jsx-a11y/anchor-is-valid'?: Linter.RuleEntry<
|
|
129
|
+
'astro/jsx-a11y/anchor-is-valid'?: Linter.RuleEntry<AstroJsxA11YAnchorIsValid>;
|
|
130
130
|
/**
|
|
131
131
|
* apply `jsx-a11y/aria-activedescendant-has-tabindex` rule to Astro components
|
|
132
132
|
* @see https://ota-meshi.github.io/eslint-plugin-astro/rules/jsx-a11y/aria-activedescendant-has-tabindex/
|
|
133
133
|
*/
|
|
134
|
-
'astro/jsx-a11y/aria-activedescendant-has-tabindex'?: Linter.RuleEntry<
|
|
134
|
+
'astro/jsx-a11y/aria-activedescendant-has-tabindex'?: Linter.RuleEntry<AstroJsxA11YAriaActivedescendantHasTabindex>;
|
|
135
135
|
/**
|
|
136
136
|
* apply `jsx-a11y/aria-props` rule to Astro components
|
|
137
137
|
* @see https://ota-meshi.github.io/eslint-plugin-astro/rules/jsx-a11y/aria-props/
|
|
138
138
|
*/
|
|
139
|
-
'astro/jsx-a11y/aria-props'?: Linter.RuleEntry<
|
|
139
|
+
'astro/jsx-a11y/aria-props'?: Linter.RuleEntry<AstroJsxA11YAriaProps>;
|
|
140
140
|
/**
|
|
141
141
|
* apply `jsx-a11y/aria-proptypes` rule to Astro components
|
|
142
142
|
* @see https://ota-meshi.github.io/eslint-plugin-astro/rules/jsx-a11y/aria-proptypes/
|
|
143
143
|
*/
|
|
144
|
-
'astro/jsx-a11y/aria-proptypes'?: Linter.RuleEntry<
|
|
144
|
+
'astro/jsx-a11y/aria-proptypes'?: Linter.RuleEntry<AstroJsxA11YAriaProptypes>;
|
|
145
145
|
/**
|
|
146
146
|
* apply `jsx-a11y/aria-role` rule to Astro components
|
|
147
147
|
* @see https://ota-meshi.github.io/eslint-plugin-astro/rules/jsx-a11y/aria-role/
|
|
148
148
|
*/
|
|
149
|
-
'astro/jsx-a11y/aria-role'?: Linter.RuleEntry<
|
|
149
|
+
'astro/jsx-a11y/aria-role'?: Linter.RuleEntry<AstroJsxA11YAriaRole>;
|
|
150
150
|
/**
|
|
151
151
|
* apply `jsx-a11y/aria-unsupported-elements` rule to Astro components
|
|
152
152
|
* @see https://ota-meshi.github.io/eslint-plugin-astro/rules/jsx-a11y/aria-unsupported-elements/
|
|
153
153
|
*/
|
|
154
|
-
'astro/jsx-a11y/aria-unsupported-elements'?: Linter.RuleEntry<
|
|
154
|
+
'astro/jsx-a11y/aria-unsupported-elements'?: Linter.RuleEntry<AstroJsxA11YAriaUnsupportedElements>;
|
|
155
155
|
/**
|
|
156
156
|
* apply `jsx-a11y/autocomplete-valid` rule to Astro components
|
|
157
157
|
* @see https://ota-meshi.github.io/eslint-plugin-astro/rules/jsx-a11y/autocomplete-valid/
|
|
158
158
|
*/
|
|
159
|
-
'astro/jsx-a11y/autocomplete-valid'?: Linter.RuleEntry<
|
|
159
|
+
'astro/jsx-a11y/autocomplete-valid'?: Linter.RuleEntry<AstroJsxA11YAutocompleteValid>;
|
|
160
160
|
/**
|
|
161
161
|
* apply `jsx-a11y/click-events-have-key-events` rule to Astro components
|
|
162
162
|
* @see https://ota-meshi.github.io/eslint-plugin-astro/rules/jsx-a11y/click-events-have-key-events/
|
|
163
163
|
*/
|
|
164
|
-
'astro/jsx-a11y/click-events-have-key-events'?: Linter.RuleEntry<
|
|
164
|
+
'astro/jsx-a11y/click-events-have-key-events'?: Linter.RuleEntry<AstroJsxA11YClickEventsHaveKeyEvents>;
|
|
165
165
|
/**
|
|
166
166
|
* apply `jsx-a11y/control-has-associated-label` rule to Astro components
|
|
167
167
|
* @see https://ota-meshi.github.io/eslint-plugin-astro/rules/jsx-a11y/control-has-associated-label/
|
|
168
168
|
*/
|
|
169
|
-
'astro/jsx-a11y/control-has-associated-label'?: Linter.RuleEntry<
|
|
169
|
+
'astro/jsx-a11y/control-has-associated-label'?: Linter.RuleEntry<AstroJsxA11YControlHasAssociatedLabel>;
|
|
170
170
|
/**
|
|
171
171
|
* apply `jsx-a11y/heading-has-content` rule to Astro components
|
|
172
172
|
* @see https://ota-meshi.github.io/eslint-plugin-astro/rules/jsx-a11y/heading-has-content/
|
|
173
173
|
*/
|
|
174
|
-
'astro/jsx-a11y/heading-has-content'?: Linter.RuleEntry<
|
|
174
|
+
'astro/jsx-a11y/heading-has-content'?: Linter.RuleEntry<AstroJsxA11YHeadingHasContent>;
|
|
175
175
|
/**
|
|
176
176
|
* apply `jsx-a11y/html-has-lang` rule to Astro components
|
|
177
177
|
* @see https://ota-meshi.github.io/eslint-plugin-astro/rules/jsx-a11y/html-has-lang/
|
|
178
178
|
*/
|
|
179
|
-
'astro/jsx-a11y/html-has-lang'?: Linter.RuleEntry<
|
|
179
|
+
'astro/jsx-a11y/html-has-lang'?: Linter.RuleEntry<AstroJsxA11YHtmlHasLang>;
|
|
180
180
|
/**
|
|
181
181
|
* apply `jsx-a11y/iframe-has-title` rule to Astro components
|
|
182
182
|
* @see https://ota-meshi.github.io/eslint-plugin-astro/rules/jsx-a11y/iframe-has-title/
|
|
183
183
|
*/
|
|
184
|
-
'astro/jsx-a11y/iframe-has-title'?: Linter.RuleEntry<
|
|
184
|
+
'astro/jsx-a11y/iframe-has-title'?: Linter.RuleEntry<AstroJsxA11YIframeHasTitle>;
|
|
185
185
|
/**
|
|
186
186
|
* apply `jsx-a11y/img-redundant-alt` rule to Astro components
|
|
187
187
|
* @see https://ota-meshi.github.io/eslint-plugin-astro/rules/jsx-a11y/img-redundant-alt/
|
|
188
188
|
*/
|
|
189
|
-
'astro/jsx-a11y/img-redundant-alt'?: Linter.RuleEntry<
|
|
189
|
+
'astro/jsx-a11y/img-redundant-alt'?: Linter.RuleEntry<AstroJsxA11YImgRedundantAlt>;
|
|
190
190
|
/**
|
|
191
191
|
* apply `jsx-a11y/interactive-supports-focus` rule to Astro components
|
|
192
192
|
* @see https://ota-meshi.github.io/eslint-plugin-astro/rules/jsx-a11y/interactive-supports-focus/
|
|
193
193
|
*/
|
|
194
|
-
'astro/jsx-a11y/interactive-supports-focus'?: Linter.RuleEntry<
|
|
194
|
+
'astro/jsx-a11y/interactive-supports-focus'?: Linter.RuleEntry<AstroJsxA11YInteractiveSupportsFocus>;
|
|
195
195
|
/**
|
|
196
196
|
* apply `jsx-a11y/label-has-associated-control` rule to Astro components
|
|
197
197
|
* @see https://ota-meshi.github.io/eslint-plugin-astro/rules/jsx-a11y/label-has-associated-control/
|
|
198
198
|
*/
|
|
199
|
-
'astro/jsx-a11y/label-has-associated-control'?: Linter.RuleEntry<
|
|
199
|
+
'astro/jsx-a11y/label-has-associated-control'?: Linter.RuleEntry<AstroJsxA11YLabelHasAssociatedControl>;
|
|
200
200
|
/**
|
|
201
201
|
* apply `jsx-a11y/lang` rule to Astro components
|
|
202
202
|
* @see https://ota-meshi.github.io/eslint-plugin-astro/rules/jsx-a11y/lang/
|
|
203
203
|
*/
|
|
204
|
-
'astro/jsx-a11y/lang'?: Linter.RuleEntry<
|
|
204
|
+
'astro/jsx-a11y/lang'?: Linter.RuleEntry<AstroJsxA11YLang>;
|
|
205
205
|
/**
|
|
206
206
|
* apply `jsx-a11y/media-has-caption` rule to Astro components
|
|
207
207
|
* @see https://ota-meshi.github.io/eslint-plugin-astro/rules/jsx-a11y/media-has-caption/
|
|
208
208
|
*/
|
|
209
|
-
'astro/jsx-a11y/media-has-caption'?: Linter.RuleEntry<
|
|
209
|
+
'astro/jsx-a11y/media-has-caption'?: Linter.RuleEntry<AstroJsxA11YMediaHasCaption>;
|
|
210
210
|
/**
|
|
211
211
|
* apply `jsx-a11y/mouse-events-have-key-events` rule to Astro components
|
|
212
212
|
* @see https://ota-meshi.github.io/eslint-plugin-astro/rules/jsx-a11y/mouse-events-have-key-events/
|
|
213
213
|
*/
|
|
214
|
-
'astro/jsx-a11y/mouse-events-have-key-events'?: Linter.RuleEntry<
|
|
214
|
+
'astro/jsx-a11y/mouse-events-have-key-events'?: Linter.RuleEntry<AstroJsxA11YMouseEventsHaveKeyEvents>;
|
|
215
215
|
/**
|
|
216
216
|
* apply `jsx-a11y/no-access-key` rule to Astro components
|
|
217
217
|
* @see https://ota-meshi.github.io/eslint-plugin-astro/rules/jsx-a11y/no-access-key/
|
|
218
218
|
*/
|
|
219
|
-
'astro/jsx-a11y/no-access-key'?: Linter.RuleEntry<
|
|
219
|
+
'astro/jsx-a11y/no-access-key'?: Linter.RuleEntry<AstroJsxA11YNoAccessKey>;
|
|
220
220
|
/**
|
|
221
221
|
* apply `jsx-a11y/no-aria-hidden-on-focusable` rule to Astro components
|
|
222
222
|
* @see https://ota-meshi.github.io/eslint-plugin-astro/rules/jsx-a11y/no-aria-hidden-on-focusable/
|
|
223
223
|
*/
|
|
224
|
-
'astro/jsx-a11y/no-aria-hidden-on-focusable'?: Linter.RuleEntry<
|
|
224
|
+
'astro/jsx-a11y/no-aria-hidden-on-focusable'?: Linter.RuleEntry<AstroJsxA11YNoAriaHiddenOnFocusable>;
|
|
225
225
|
/**
|
|
226
226
|
* apply `jsx-a11y/no-autofocus` rule to Astro components
|
|
227
227
|
* @see https://ota-meshi.github.io/eslint-plugin-astro/rules/jsx-a11y/no-autofocus/
|
|
228
228
|
*/
|
|
229
|
-
'astro/jsx-a11y/no-autofocus'?: Linter.RuleEntry<
|
|
229
|
+
'astro/jsx-a11y/no-autofocus'?: Linter.RuleEntry<AstroJsxA11YNoAutofocus>;
|
|
230
230
|
/**
|
|
231
231
|
* apply `jsx-a11y/no-distracting-elements` rule to Astro components
|
|
232
232
|
* @see https://ota-meshi.github.io/eslint-plugin-astro/rules/jsx-a11y/no-distracting-elements/
|
|
233
233
|
*/
|
|
234
|
-
'astro/jsx-a11y/no-distracting-elements'?: Linter.RuleEntry<
|
|
234
|
+
'astro/jsx-a11y/no-distracting-elements'?: Linter.RuleEntry<AstroJsxA11YNoDistractingElements>;
|
|
235
235
|
/**
|
|
236
236
|
* apply `jsx-a11y/no-interactive-element-to-noninteractive-role` rule to Astro components
|
|
237
237
|
* @see https://ota-meshi.github.io/eslint-plugin-astro/rules/jsx-a11y/no-interactive-element-to-noninteractive-role/
|
|
238
238
|
*/
|
|
239
|
-
'astro/jsx-a11y/no-interactive-element-to-noninteractive-role'?: Linter.RuleEntry<
|
|
239
|
+
'astro/jsx-a11y/no-interactive-element-to-noninteractive-role'?: Linter.RuleEntry<AstroJsxA11YNoInteractiveElementToNoninteractiveRole>;
|
|
240
240
|
/**
|
|
241
241
|
* apply `jsx-a11y/no-noninteractive-element-interactions` rule to Astro components
|
|
242
242
|
* @see https://ota-meshi.github.io/eslint-plugin-astro/rules/jsx-a11y/no-noninteractive-element-interactions/
|
|
243
243
|
*/
|
|
244
|
-
'astro/jsx-a11y/no-noninteractive-element-interactions'?: Linter.RuleEntry<
|
|
244
|
+
'astro/jsx-a11y/no-noninteractive-element-interactions'?: Linter.RuleEntry<AstroJsxA11YNoNoninteractiveElementInteractions>;
|
|
245
245
|
/**
|
|
246
246
|
* apply `jsx-a11y/no-noninteractive-element-to-interactive-role` rule to Astro components
|
|
247
247
|
* @see https://ota-meshi.github.io/eslint-plugin-astro/rules/jsx-a11y/no-noninteractive-element-to-interactive-role/
|
|
248
248
|
*/
|
|
249
|
-
'astro/jsx-a11y/no-noninteractive-element-to-interactive-role'?: Linter.RuleEntry<
|
|
249
|
+
'astro/jsx-a11y/no-noninteractive-element-to-interactive-role'?: Linter.RuleEntry<AstroJsxA11YNoNoninteractiveElementToInteractiveRole>;
|
|
250
250
|
/**
|
|
251
251
|
* apply `jsx-a11y/no-noninteractive-tabindex` rule to Astro components
|
|
252
252
|
* @see https://ota-meshi.github.io/eslint-plugin-astro/rules/jsx-a11y/no-noninteractive-tabindex/
|
|
253
253
|
*/
|
|
254
|
-
'astro/jsx-a11y/no-noninteractive-tabindex'?: Linter.RuleEntry<
|
|
254
|
+
'astro/jsx-a11y/no-noninteractive-tabindex'?: Linter.RuleEntry<AstroJsxA11YNoNoninteractiveTabindex>;
|
|
255
255
|
/**
|
|
256
256
|
* apply `jsx-a11y/no-redundant-roles` rule to Astro components
|
|
257
257
|
* @see https://ota-meshi.github.io/eslint-plugin-astro/rules/jsx-a11y/no-redundant-roles/
|
|
258
258
|
*/
|
|
259
|
-
'astro/jsx-a11y/no-redundant-roles'?: Linter.RuleEntry<
|
|
259
|
+
'astro/jsx-a11y/no-redundant-roles'?: Linter.RuleEntry<AstroJsxA11YNoRedundantRoles>;
|
|
260
260
|
/**
|
|
261
261
|
* apply `jsx-a11y/no-static-element-interactions` rule to Astro components
|
|
262
262
|
* @see https://ota-meshi.github.io/eslint-plugin-astro/rules/jsx-a11y/no-static-element-interactions/
|
|
263
263
|
*/
|
|
264
|
-
'astro/jsx-a11y/no-static-element-interactions'?: Linter.RuleEntry<
|
|
264
|
+
'astro/jsx-a11y/no-static-element-interactions'?: Linter.RuleEntry<AstroJsxA11YNoStaticElementInteractions>;
|
|
265
265
|
/**
|
|
266
266
|
* apply `jsx-a11y/prefer-tag-over-role` rule to Astro components
|
|
267
267
|
* @see https://ota-meshi.github.io/eslint-plugin-astro/rules/jsx-a11y/prefer-tag-over-role/
|
|
268
268
|
*/
|
|
269
|
-
'astro/jsx-a11y/prefer-tag-over-role'?: Linter.RuleEntry<
|
|
269
|
+
'astro/jsx-a11y/prefer-tag-over-role'?: Linter.RuleEntry<AstroJsxA11YPreferTagOverRole>;
|
|
270
270
|
/**
|
|
271
271
|
* apply `jsx-a11y/role-has-required-aria-props` rule to Astro components
|
|
272
272
|
* @see https://ota-meshi.github.io/eslint-plugin-astro/rules/jsx-a11y/role-has-required-aria-props/
|
|
273
273
|
*/
|
|
274
|
-
'astro/jsx-a11y/role-has-required-aria-props'?: Linter.RuleEntry<
|
|
274
|
+
'astro/jsx-a11y/role-has-required-aria-props'?: Linter.RuleEntry<AstroJsxA11YRoleHasRequiredAriaProps>;
|
|
275
275
|
/**
|
|
276
276
|
* apply `jsx-a11y/role-supports-aria-props` rule to Astro components
|
|
277
277
|
* @see https://ota-meshi.github.io/eslint-plugin-astro/rules/jsx-a11y/role-supports-aria-props/
|
|
278
278
|
*/
|
|
279
|
-
'astro/jsx-a11y/role-supports-aria-props'?: Linter.RuleEntry<
|
|
279
|
+
'astro/jsx-a11y/role-supports-aria-props'?: Linter.RuleEntry<AstroJsxA11YRoleSupportsAriaProps>;
|
|
280
280
|
/**
|
|
281
281
|
* apply `jsx-a11y/scope` rule to Astro components
|
|
282
282
|
* @see https://ota-meshi.github.io/eslint-plugin-astro/rules/jsx-a11y/scope/
|
|
283
283
|
*/
|
|
284
|
-
'astro/jsx-a11y/scope'?: Linter.RuleEntry<
|
|
284
|
+
'astro/jsx-a11y/scope'?: Linter.RuleEntry<AstroJsxA11YScope>;
|
|
285
285
|
/**
|
|
286
286
|
* apply `jsx-a11y/tabindex-no-positive` rule to Astro components
|
|
287
287
|
* @see https://ota-meshi.github.io/eslint-plugin-astro/rules/jsx-a11y/tabindex-no-positive/
|
|
288
288
|
*/
|
|
289
|
-
'astro/jsx-a11y/tabindex-no-positive'?: Linter.RuleEntry<
|
|
289
|
+
'astro/jsx-a11y/tabindex-no-positive'?: Linter.RuleEntry<AstroJsxA11YTabindexNoPositive>;
|
|
290
290
|
/**
|
|
291
291
|
* the client:only directive is missing the correct component's framework value
|
|
292
292
|
* @see https://ota-meshi.github.io/eslint-plugin-astro/rules/missing-client-only-directive-value/
|
|
@@ -1204,6 +1204,204 @@ interface RuleOptions {
|
|
|
1204
1204
|
* @see https://ota-meshi.github.io/eslint-plugin-jsonc/rules/vue-custom-block/no-parsing-error.html
|
|
1205
1205
|
*/
|
|
1206
1206
|
'jsonc/vue-custom-block/no-parsing-error'?: Linter.RuleEntry<[]>;
|
|
1207
|
+
/**
|
|
1208
|
+
* Enforce emojis are wrapped in `<span>` and provide screen reader access.
|
|
1209
|
+
* @see https://github.com/jsx-eslint/eslint-plugin-jsx-a11y/tree/HEAD/docs/rules/accessible-emoji.md
|
|
1210
|
+
* @deprecated
|
|
1211
|
+
*/
|
|
1212
|
+
'jsx-a11y/accessible-emoji'?: Linter.RuleEntry<JsxA11YAccessibleEmoji>;
|
|
1213
|
+
/**
|
|
1214
|
+
* Enforce all elements that require alternative text have meaningful information to relay back to end user.
|
|
1215
|
+
* @see https://github.com/jsx-eslint/eslint-plugin-jsx-a11y/tree/HEAD/docs/rules/alt-text.md
|
|
1216
|
+
*/
|
|
1217
|
+
'jsx-a11y/alt-text'?: Linter.RuleEntry<JsxA11YAltText>;
|
|
1218
|
+
/**
|
|
1219
|
+
* Enforce `<a>` text to not exactly match "click here", "here", "link", or "a link".
|
|
1220
|
+
* @see https://github.com/jsx-eslint/eslint-plugin-jsx-a11y/tree/HEAD/docs/rules/anchor-ambiguous-text.md
|
|
1221
|
+
*/
|
|
1222
|
+
'jsx-a11y/anchor-ambiguous-text'?: Linter.RuleEntry<JsxA11YAnchorAmbiguousText>;
|
|
1223
|
+
/**
|
|
1224
|
+
* Enforce all anchors to contain accessible content.
|
|
1225
|
+
* @see https://github.com/jsx-eslint/eslint-plugin-jsx-a11y/tree/HEAD/docs/rules/anchor-has-content.md
|
|
1226
|
+
*/
|
|
1227
|
+
'jsx-a11y/anchor-has-content'?: Linter.RuleEntry<JsxA11YAnchorHasContent>;
|
|
1228
|
+
/**
|
|
1229
|
+
* Enforce all anchors are valid, navigable elements.
|
|
1230
|
+
* @see https://github.com/jsx-eslint/eslint-plugin-jsx-a11y/tree/HEAD/docs/rules/anchor-is-valid.md
|
|
1231
|
+
*/
|
|
1232
|
+
'jsx-a11y/anchor-is-valid'?: Linter.RuleEntry<JsxA11YAnchorIsValid>;
|
|
1233
|
+
/**
|
|
1234
|
+
* Enforce elements with aria-activedescendant are tabbable.
|
|
1235
|
+
* @see https://github.com/jsx-eslint/eslint-plugin-jsx-a11y/tree/HEAD/docs/rules/aria-activedescendant-has-tabindex.md
|
|
1236
|
+
*/
|
|
1237
|
+
'jsx-a11y/aria-activedescendant-has-tabindex'?: Linter.RuleEntry<JsxA11YAriaActivedescendantHasTabindex>;
|
|
1238
|
+
/**
|
|
1239
|
+
* Enforce all `aria-*` props are valid.
|
|
1240
|
+
* @see https://github.com/jsx-eslint/eslint-plugin-jsx-a11y/tree/HEAD/docs/rules/aria-props.md
|
|
1241
|
+
*/
|
|
1242
|
+
'jsx-a11y/aria-props'?: Linter.RuleEntry<JsxA11YAriaProps>;
|
|
1243
|
+
/**
|
|
1244
|
+
* Enforce ARIA state and property values are valid.
|
|
1245
|
+
* @see https://github.com/jsx-eslint/eslint-plugin-jsx-a11y/tree/HEAD/docs/rules/aria-proptypes.md
|
|
1246
|
+
*/
|
|
1247
|
+
'jsx-a11y/aria-proptypes'?: Linter.RuleEntry<JsxA11YAriaProptypes>;
|
|
1248
|
+
/**
|
|
1249
|
+
* Enforce that elements with ARIA roles must use a valid, non-abstract ARIA role.
|
|
1250
|
+
* @see https://github.com/jsx-eslint/eslint-plugin-jsx-a11y/tree/HEAD/docs/rules/aria-role.md
|
|
1251
|
+
*/
|
|
1252
|
+
'jsx-a11y/aria-role'?: Linter.RuleEntry<JsxA11YAriaRole>;
|
|
1253
|
+
/**
|
|
1254
|
+
* Enforce that elements that do not support ARIA roles, states, and properties do not have those attributes.
|
|
1255
|
+
* @see https://github.com/jsx-eslint/eslint-plugin-jsx-a11y/tree/HEAD/docs/rules/aria-unsupported-elements.md
|
|
1256
|
+
*/
|
|
1257
|
+
'jsx-a11y/aria-unsupported-elements'?: Linter.RuleEntry<JsxA11YAriaUnsupportedElements>;
|
|
1258
|
+
/**
|
|
1259
|
+
* Enforce that autocomplete attributes are used correctly.
|
|
1260
|
+
* @see https://github.com/jsx-eslint/eslint-plugin-jsx-a11y/tree/HEAD/docs/rules/autocomplete-valid.md
|
|
1261
|
+
*/
|
|
1262
|
+
'jsx-a11y/autocomplete-valid'?: Linter.RuleEntry<JsxA11YAutocompleteValid>;
|
|
1263
|
+
/**
|
|
1264
|
+
* Enforce a clickable non-interactive element has at least one keyboard event listener.
|
|
1265
|
+
* @see https://github.com/jsx-eslint/eslint-plugin-jsx-a11y/tree/HEAD/docs/rules/click-events-have-key-events.md
|
|
1266
|
+
*/
|
|
1267
|
+
'jsx-a11y/click-events-have-key-events'?: Linter.RuleEntry<JsxA11YClickEventsHaveKeyEvents>;
|
|
1268
|
+
/**
|
|
1269
|
+
* Enforce that a control (an interactive element) has a text label.
|
|
1270
|
+
* @see https://github.com/jsx-eslint/eslint-plugin-jsx-a11y/blob/main/docs/rules/control-has-associated-label.md
|
|
1271
|
+
*/
|
|
1272
|
+
'jsx-a11y/control-has-associated-label'?: Linter.RuleEntry<JsxA11YControlHasAssociatedLabel>;
|
|
1273
|
+
/**
|
|
1274
|
+
* Enforce heading (`h1`, `h2`, etc) elements contain accessible content.
|
|
1275
|
+
* @see https://github.com/jsx-eslint/eslint-plugin-jsx-a11y/tree/HEAD/docs/rules/heading-has-content.md
|
|
1276
|
+
*/
|
|
1277
|
+
'jsx-a11y/heading-has-content'?: Linter.RuleEntry<JsxA11YHeadingHasContent>;
|
|
1278
|
+
/**
|
|
1279
|
+
* Enforce `<html>` element has `lang` prop.
|
|
1280
|
+
* @see https://github.com/jsx-eslint/eslint-plugin-jsx-a11y/tree/HEAD/docs/rules/html-has-lang.md
|
|
1281
|
+
*/
|
|
1282
|
+
'jsx-a11y/html-has-lang'?: Linter.RuleEntry<JsxA11YHtmlHasLang>;
|
|
1283
|
+
/**
|
|
1284
|
+
* Enforce iframe elements have a title attribute.
|
|
1285
|
+
* @see https://github.com/jsx-eslint/eslint-plugin-jsx-a11y/tree/HEAD/docs/rules/iframe-has-title.md
|
|
1286
|
+
*/
|
|
1287
|
+
'jsx-a11y/iframe-has-title'?: Linter.RuleEntry<JsxA11YIframeHasTitle>;
|
|
1288
|
+
/**
|
|
1289
|
+
* Enforce `<img>` alt prop does not contain the word "image", "picture", or "photo".
|
|
1290
|
+
* @see https://github.com/jsx-eslint/eslint-plugin-jsx-a11y/tree/HEAD/docs/rules/img-redundant-alt.md
|
|
1291
|
+
*/
|
|
1292
|
+
'jsx-a11y/img-redundant-alt'?: Linter.RuleEntry<JsxA11YImgRedundantAlt>;
|
|
1293
|
+
/**
|
|
1294
|
+
* Enforce that elements with interactive handlers like `onClick` must be focusable.
|
|
1295
|
+
* @see https://github.com/jsx-eslint/eslint-plugin-jsx-a11y/tree/HEAD/docs/rules/interactive-supports-focus.md
|
|
1296
|
+
*/
|
|
1297
|
+
'jsx-a11y/interactive-supports-focus'?: Linter.RuleEntry<JsxA11YInteractiveSupportsFocus>;
|
|
1298
|
+
/**
|
|
1299
|
+
* Enforce that a `label` tag has a text label and an associated control.
|
|
1300
|
+
* @see https://github.com/jsx-eslint/eslint-plugin-jsx-a11y/blob/main/docs/rules/label-has-associated-control.md
|
|
1301
|
+
*/
|
|
1302
|
+
'jsx-a11y/label-has-associated-control'?: Linter.RuleEntry<JsxA11YLabelHasAssociatedControl>;
|
|
1303
|
+
/**
|
|
1304
|
+
* Enforce that `<label>` elements have the `htmlFor` prop.
|
|
1305
|
+
* @see https://github.com/jsx-eslint/eslint-plugin-jsx-a11y/tree/HEAD/docs/rules/label-has-for.md
|
|
1306
|
+
* @deprecated
|
|
1307
|
+
*/
|
|
1308
|
+
'jsx-a11y/label-has-for'?: Linter.RuleEntry<JsxA11YLabelHasFor>;
|
|
1309
|
+
/**
|
|
1310
|
+
* Enforce lang attribute has a valid value.
|
|
1311
|
+
* @see https://github.com/jsx-eslint/eslint-plugin-jsx-a11y/tree/HEAD/docs/rules/lang.md
|
|
1312
|
+
*/
|
|
1313
|
+
'jsx-a11y/lang'?: Linter.RuleEntry<JsxA11YLang>;
|
|
1314
|
+
/**
|
|
1315
|
+
* Enforces that `<audio>` and `<video>` elements must have a `<track>` for captions.
|
|
1316
|
+
* @see https://github.com/jsx-eslint/eslint-plugin-jsx-a11y/tree/HEAD/docs/rules/media-has-caption.md
|
|
1317
|
+
*/
|
|
1318
|
+
'jsx-a11y/media-has-caption'?: Linter.RuleEntry<JsxA11YMediaHasCaption>;
|
|
1319
|
+
/**
|
|
1320
|
+
* Enforce that `onMouseOver`/`onMouseOut` are accompanied by `onFocus`/`onBlur` for keyboard-only users.
|
|
1321
|
+
* @see https://github.com/jsx-eslint/eslint-plugin-jsx-a11y/tree/HEAD/docs/rules/mouse-events-have-key-events.md
|
|
1322
|
+
*/
|
|
1323
|
+
'jsx-a11y/mouse-events-have-key-events'?: Linter.RuleEntry<JsxA11YMouseEventsHaveKeyEvents>;
|
|
1324
|
+
/**
|
|
1325
|
+
* Enforce that the `accessKey` prop is not used on any element to avoid complications with keyboard commands used by a screen reader.
|
|
1326
|
+
* @see https://github.com/jsx-eslint/eslint-plugin-jsx-a11y/tree/HEAD/docs/rules/no-access-key.md
|
|
1327
|
+
*/
|
|
1328
|
+
'jsx-a11y/no-access-key'?: Linter.RuleEntry<JsxA11YNoAccessKey>;
|
|
1329
|
+
/**
|
|
1330
|
+
* Disallow `aria-hidden="true"` from being set on focusable elements.
|
|
1331
|
+
* @see https://github.com/jsx-eslint/eslint-plugin-jsx-a11y/tree/HEAD/docs/rules/no-aria-hidden-on-focusable.md
|
|
1332
|
+
*/
|
|
1333
|
+
'jsx-a11y/no-aria-hidden-on-focusable'?: Linter.RuleEntry<JsxA11YNoAriaHiddenOnFocusable>;
|
|
1334
|
+
/**
|
|
1335
|
+
* Enforce autoFocus prop is not used.
|
|
1336
|
+
* @see https://github.com/jsx-eslint/eslint-plugin-jsx-a11y/tree/HEAD/docs/rules/no-autofocus.md
|
|
1337
|
+
*/
|
|
1338
|
+
'jsx-a11y/no-autofocus'?: Linter.RuleEntry<JsxA11YNoAutofocus>;
|
|
1339
|
+
/**
|
|
1340
|
+
* Enforce distracting elements are not used.
|
|
1341
|
+
* @see https://github.com/jsx-eslint/eslint-plugin-jsx-a11y/tree/HEAD/docs/rules/no-distracting-elements.md
|
|
1342
|
+
*/
|
|
1343
|
+
'jsx-a11y/no-distracting-elements'?: Linter.RuleEntry<JsxA11YNoDistractingElements>;
|
|
1344
|
+
/**
|
|
1345
|
+
* Interactive elements should not be assigned non-interactive roles.
|
|
1346
|
+
* @see https://github.com/jsx-eslint/eslint-plugin-jsx-a11y/tree/HEAD/docs/rules/no-interactive-element-to-noninteractive-role.md
|
|
1347
|
+
*/
|
|
1348
|
+
'jsx-a11y/no-interactive-element-to-noninteractive-role'?: Linter.RuleEntry<JsxA11YNoInteractiveElementToNoninteractiveRole>;
|
|
1349
|
+
/**
|
|
1350
|
+
* Non-interactive elements should not be assigned mouse or keyboard event listeners.
|
|
1351
|
+
* @see https://github.com/jsx-eslint/eslint-plugin-jsx-a11y/tree/HEAD/docs/rules/no-noninteractive-element-interactions.md
|
|
1352
|
+
*/
|
|
1353
|
+
'jsx-a11y/no-noninteractive-element-interactions'?: Linter.RuleEntry<JsxA11YNoNoninteractiveElementInteractions>;
|
|
1354
|
+
/**
|
|
1355
|
+
* Non-interactive elements should not be assigned interactive roles.
|
|
1356
|
+
* @see https://github.com/jsx-eslint/eslint-plugin-jsx-a11y/tree/HEAD/docs/rules/no-noninteractive-element-to-interactive-role.md
|
|
1357
|
+
*/
|
|
1358
|
+
'jsx-a11y/no-noninteractive-element-to-interactive-role'?: Linter.RuleEntry<JsxA11YNoNoninteractiveElementToInteractiveRole>;
|
|
1359
|
+
/**
|
|
1360
|
+
* `tabIndex` should only be declared on interactive elements.
|
|
1361
|
+
* @see https://github.com/jsx-eslint/eslint-plugin-jsx-a11y/tree/HEAD/docs/rules/no-noninteractive-tabindex.md
|
|
1362
|
+
*/
|
|
1363
|
+
'jsx-a11y/no-noninteractive-tabindex'?: Linter.RuleEntry<JsxA11YNoNoninteractiveTabindex>;
|
|
1364
|
+
/**
|
|
1365
|
+
* Enforce usage of `onBlur` over `onChange` on select menus for accessibility.
|
|
1366
|
+
* @see https://github.com/jsx-eslint/eslint-plugin-jsx-a11y/tree/HEAD/docs/rules/no-onchange.md
|
|
1367
|
+
* @deprecated
|
|
1368
|
+
*/
|
|
1369
|
+
'jsx-a11y/no-onchange'?: Linter.RuleEntry<JsxA11YNoOnchange>;
|
|
1370
|
+
/**
|
|
1371
|
+
* Enforce explicit role property is not the same as implicit/default role property on element.
|
|
1372
|
+
* @see https://github.com/jsx-eslint/eslint-plugin-jsx-a11y/tree/HEAD/docs/rules/no-redundant-roles.md
|
|
1373
|
+
*/
|
|
1374
|
+
'jsx-a11y/no-redundant-roles'?: Linter.RuleEntry<JsxA11YNoRedundantRoles>;
|
|
1375
|
+
/**
|
|
1376
|
+
* Enforce that non-interactive, visible elements (such as `<div>`) that have click handlers use the role attribute.
|
|
1377
|
+
* @see https://github.com/jsx-eslint/eslint-plugin-jsx-a11y/tree/HEAD/docs/rules/no-static-element-interactions.md
|
|
1378
|
+
*/
|
|
1379
|
+
'jsx-a11y/no-static-element-interactions'?: Linter.RuleEntry<JsxA11YNoStaticElementInteractions>;
|
|
1380
|
+
/**
|
|
1381
|
+
* Enforces using semantic DOM elements over the ARIA `role` property.
|
|
1382
|
+
* @see https://github.com/jsx-eslint/eslint-plugin-jsx-a11y/tree/HEAD/docs/rules/prefer-tag-over-role.md
|
|
1383
|
+
*/
|
|
1384
|
+
'jsx-a11y/prefer-tag-over-role'?: Linter.RuleEntry<JsxA11YPreferTagOverRole>;
|
|
1385
|
+
/**
|
|
1386
|
+
* Enforce that elements with ARIA roles must have all required attributes for that role.
|
|
1387
|
+
* @see https://github.com/jsx-eslint/eslint-plugin-jsx-a11y/tree/HEAD/docs/rules/role-has-required-aria-props.md
|
|
1388
|
+
*/
|
|
1389
|
+
'jsx-a11y/role-has-required-aria-props'?: Linter.RuleEntry<JsxA11YRoleHasRequiredAriaProps>;
|
|
1390
|
+
/**
|
|
1391
|
+
* Enforce that elements with explicit or implicit roles defined contain only `aria-*` properties supported by that `role`.
|
|
1392
|
+
* @see https://github.com/jsx-eslint/eslint-plugin-jsx-a11y/tree/HEAD/docs/rules/role-supports-aria-props.md
|
|
1393
|
+
*/
|
|
1394
|
+
'jsx-a11y/role-supports-aria-props'?: Linter.RuleEntry<JsxA11YRoleSupportsAriaProps>;
|
|
1395
|
+
/**
|
|
1396
|
+
* Enforce `scope` prop is only used on `<th>` elements.
|
|
1397
|
+
* @see https://github.com/jsx-eslint/eslint-plugin-jsx-a11y/tree/HEAD/docs/rules/scope.md
|
|
1398
|
+
*/
|
|
1399
|
+
'jsx-a11y/scope'?: Linter.RuleEntry<JsxA11YScope>;
|
|
1400
|
+
/**
|
|
1401
|
+
* Enforce `tabIndex` value is not greater than zero.
|
|
1402
|
+
* @see https://github.com/jsx-eslint/eslint-plugin-jsx-a11y/tree/HEAD/docs/rules/tabindex-no-positive.md
|
|
1403
|
+
*/
|
|
1404
|
+
'jsx-a11y/tabindex-no-positive'?: Linter.RuleEntry<JsxA11YTabindexNoPositive>;
|
|
1207
1405
|
/**
|
|
1208
1406
|
* Enforce the consistent use of either double or single quotes in JSX attributes
|
|
1209
1407
|
* @see https://eslint.org/docs/latest/rules/jsx-quotes
|
|
@@ -6658,7 +6856,7 @@ interface RuleOptions {
|
|
|
6658
6856
|
* Order of UnoCSS utilities in class attribute
|
|
6659
6857
|
* @see https://unocss.dev/integrations/eslint#rules
|
|
6660
6858
|
*/
|
|
6661
|
-
'unocss/order'?: Linter.RuleEntry<
|
|
6859
|
+
'unocss/order'?: Linter.RuleEntry<UnocssOrder>;
|
|
6662
6860
|
/**
|
|
6663
6861
|
* Order of UnoCSS attributes
|
|
6664
6862
|
* @see https://unocss.dev/integrations/eslint#rules
|
|
@@ -7224,6 +7422,16 @@ interface RuleOptions {
|
|
|
7224
7422
|
* @see https://eslint.vuejs.org/rules/no-mutating-props.html
|
|
7225
7423
|
*/
|
|
7226
7424
|
'vue/no-mutating-props'?: Linter.RuleEntry<VueNoMutatingProps>;
|
|
7425
|
+
/**
|
|
7426
|
+
* Disallow negated conditions in `<template>`
|
|
7427
|
+
* @see https://eslint.vuejs.org/rules/no-negated-condition.html
|
|
7428
|
+
*/
|
|
7429
|
+
'vue/no-negated-condition'?: Linter.RuleEntry<[]>;
|
|
7430
|
+
/**
|
|
7431
|
+
* disallow negated conditions in v-if/v-else
|
|
7432
|
+
* @see https://eslint.vuejs.org/rules/no-negated-v-if-condition.html
|
|
7433
|
+
*/
|
|
7434
|
+
'vue/no-negated-v-if-condition'?: Linter.RuleEntry<[]>;
|
|
7227
7435
|
/**
|
|
7228
7436
|
* disallow parsing errors in `<template>`
|
|
7229
7437
|
* @see https://eslint.vuejs.org/rules/no-parsing-error.html
|
|
@@ -8162,6 +8370,188 @@ type ArrowSpacing = [] | [{
|
|
|
8162
8370
|
before?: boolean;
|
|
8163
8371
|
after?: boolean;
|
|
8164
8372
|
}];
|
|
8373
|
+
// ----- astro/jsx-a11y/alt-text -----
|
|
8374
|
+
type AstroJsxA11YAltText = [] | [{
|
|
8375
|
+
elements?: string[];
|
|
8376
|
+
img?: string[];
|
|
8377
|
+
object?: string[];
|
|
8378
|
+
area?: string[];
|
|
8379
|
+
"input[type=\"image\"]"?: string[];
|
|
8380
|
+
[k: string]: unknown | undefined;
|
|
8381
|
+
}];
|
|
8382
|
+
// ----- astro/jsx-a11y/anchor-ambiguous-text -----
|
|
8383
|
+
type AstroJsxA11YAnchorAmbiguousText = [] | [{
|
|
8384
|
+
words?: string[];
|
|
8385
|
+
[k: string]: unknown | undefined;
|
|
8386
|
+
}];
|
|
8387
|
+
// ----- astro/jsx-a11y/anchor-has-content -----
|
|
8388
|
+
type AstroJsxA11YAnchorHasContent = [] | [{
|
|
8389
|
+
components?: string[];
|
|
8390
|
+
[k: string]: unknown | undefined;
|
|
8391
|
+
}];
|
|
8392
|
+
// ----- astro/jsx-a11y/anchor-is-valid -----
|
|
8393
|
+
type AstroJsxA11YAnchorIsValid = [] | [{
|
|
8394
|
+
components?: string[];
|
|
8395
|
+
specialLink?: string[];
|
|
8396
|
+
aspects?: [("noHref" | "invalidHref" | "preferButton"), ...(("noHref" | "invalidHref" | "preferButton"))[]];
|
|
8397
|
+
[k: string]: unknown | undefined;
|
|
8398
|
+
}];
|
|
8399
|
+
// ----- astro/jsx-a11y/aria-activedescendant-has-tabindex -----
|
|
8400
|
+
type AstroJsxA11YAriaActivedescendantHasTabindex = [] | [{
|
|
8401
|
+
[k: string]: unknown | undefined;
|
|
8402
|
+
}];
|
|
8403
|
+
// ----- astro/jsx-a11y/aria-props -----
|
|
8404
|
+
type AstroJsxA11YAriaProps = [] | [{
|
|
8405
|
+
[k: string]: unknown | undefined;
|
|
8406
|
+
}];
|
|
8407
|
+
// ----- astro/jsx-a11y/aria-proptypes -----
|
|
8408
|
+
type AstroJsxA11YAriaProptypes = [] | [{
|
|
8409
|
+
[k: string]: unknown | undefined;
|
|
8410
|
+
}];
|
|
8411
|
+
// ----- astro/jsx-a11y/aria-role -----
|
|
8412
|
+
type AstroJsxA11YAriaRole = [] | [{
|
|
8413
|
+
allowedInvalidRoles?: string[];
|
|
8414
|
+
ignoreNonDOM?: boolean;
|
|
8415
|
+
[k: string]: unknown | undefined;
|
|
8416
|
+
}];
|
|
8417
|
+
// ----- astro/jsx-a11y/aria-unsupported-elements -----
|
|
8418
|
+
type AstroJsxA11YAriaUnsupportedElements = [] | [{
|
|
8419
|
+
[k: string]: unknown | undefined;
|
|
8420
|
+
}];
|
|
8421
|
+
// ----- astro/jsx-a11y/autocomplete-valid -----
|
|
8422
|
+
type AstroJsxA11YAutocompleteValid = [] | [{
|
|
8423
|
+
inputComponents?: string[];
|
|
8424
|
+
[k: string]: unknown | undefined;
|
|
8425
|
+
}];
|
|
8426
|
+
// ----- astro/jsx-a11y/click-events-have-key-events -----
|
|
8427
|
+
type AstroJsxA11YClickEventsHaveKeyEvents = [] | [{
|
|
8428
|
+
[k: string]: unknown | undefined;
|
|
8429
|
+
}];
|
|
8430
|
+
// ----- astro/jsx-a11y/control-has-associated-label -----
|
|
8431
|
+
type AstroJsxA11YControlHasAssociatedLabel = [] | [{
|
|
8432
|
+
labelAttributes?: string[];
|
|
8433
|
+
controlComponents?: string[];
|
|
8434
|
+
ignoreElements?: string[];
|
|
8435
|
+
ignoreRoles?: string[];
|
|
8436
|
+
depth?: number;
|
|
8437
|
+
[k: string]: unknown | undefined;
|
|
8438
|
+
}];
|
|
8439
|
+
// ----- astro/jsx-a11y/heading-has-content -----
|
|
8440
|
+
type AstroJsxA11YHeadingHasContent = [] | [{
|
|
8441
|
+
components?: string[];
|
|
8442
|
+
[k: string]: unknown | undefined;
|
|
8443
|
+
}];
|
|
8444
|
+
// ----- astro/jsx-a11y/html-has-lang -----
|
|
8445
|
+
type AstroJsxA11YHtmlHasLang = [] | [{
|
|
8446
|
+
[k: string]: unknown | undefined;
|
|
8447
|
+
}];
|
|
8448
|
+
// ----- astro/jsx-a11y/iframe-has-title -----
|
|
8449
|
+
type AstroJsxA11YIframeHasTitle = [] | [{
|
|
8450
|
+
[k: string]: unknown | undefined;
|
|
8451
|
+
}];
|
|
8452
|
+
// ----- astro/jsx-a11y/img-redundant-alt -----
|
|
8453
|
+
type AstroJsxA11YImgRedundantAlt = [] | [{
|
|
8454
|
+
components?: string[];
|
|
8455
|
+
words?: string[];
|
|
8456
|
+
[k: string]: unknown | undefined;
|
|
8457
|
+
}];
|
|
8458
|
+
// ----- astro/jsx-a11y/interactive-supports-focus -----
|
|
8459
|
+
type AstroJsxA11YInteractiveSupportsFocus = [] | [{
|
|
8460
|
+
tabbable?: ("button" | "checkbox" | "columnheader" | "combobox" | "grid" | "gridcell" | "link" | "listbox" | "menu" | "menubar" | "menuitem" | "menuitemcheckbox" | "menuitemradio" | "option" | "progressbar" | "radio" | "radiogroup" | "row" | "rowheader" | "scrollbar" | "searchbox" | "slider" | "spinbutton" | "switch" | "tab" | "tablist" | "textbox" | "tree" | "treegrid" | "treeitem" | "doc-backlink" | "doc-biblioref" | "doc-glossref" | "doc-noteref")[];
|
|
8461
|
+
[k: string]: unknown | undefined;
|
|
8462
|
+
}];
|
|
8463
|
+
// ----- astro/jsx-a11y/label-has-associated-control -----
|
|
8464
|
+
type AstroJsxA11YLabelHasAssociatedControl = [] | [{
|
|
8465
|
+
labelComponents?: string[];
|
|
8466
|
+
labelAttributes?: string[];
|
|
8467
|
+
controlComponents?: string[];
|
|
8468
|
+
assert?: ("htmlFor" | "nesting" | "both" | "either");
|
|
8469
|
+
depth?: number;
|
|
8470
|
+
[k: string]: unknown | undefined;
|
|
8471
|
+
}];
|
|
8472
|
+
// ----- astro/jsx-a11y/lang -----
|
|
8473
|
+
type AstroJsxA11YLang = [] | [{
|
|
8474
|
+
[k: string]: unknown | undefined;
|
|
8475
|
+
}];
|
|
8476
|
+
// ----- astro/jsx-a11y/media-has-caption -----
|
|
8477
|
+
type AstroJsxA11YMediaHasCaption = [] | [{
|
|
8478
|
+
audio?: string[];
|
|
8479
|
+
video?: string[];
|
|
8480
|
+
track?: string[];
|
|
8481
|
+
[k: string]: unknown | undefined;
|
|
8482
|
+
}];
|
|
8483
|
+
// ----- astro/jsx-a11y/mouse-events-have-key-events -----
|
|
8484
|
+
type AstroJsxA11YMouseEventsHaveKeyEvents = [] | [{
|
|
8485
|
+
hoverInHandlers?: string[];
|
|
8486
|
+
hoverOutHandlers?: string[];
|
|
8487
|
+
[k: string]: unknown | undefined;
|
|
8488
|
+
}];
|
|
8489
|
+
// ----- astro/jsx-a11y/no-access-key -----
|
|
8490
|
+
type AstroJsxA11YNoAccessKey = [] | [{
|
|
8491
|
+
[k: string]: unknown | undefined;
|
|
8492
|
+
}];
|
|
8493
|
+
// ----- astro/jsx-a11y/no-aria-hidden-on-focusable -----
|
|
8494
|
+
type AstroJsxA11YNoAriaHiddenOnFocusable = [] | [{
|
|
8495
|
+
[k: string]: unknown | undefined;
|
|
8496
|
+
}];
|
|
8497
|
+
// ----- astro/jsx-a11y/no-autofocus -----
|
|
8498
|
+
type AstroJsxA11YNoAutofocus = [] | [{
|
|
8499
|
+
ignoreNonDOM?: boolean;
|
|
8500
|
+
[k: string]: unknown | undefined;
|
|
8501
|
+
}];
|
|
8502
|
+
// ----- astro/jsx-a11y/no-distracting-elements -----
|
|
8503
|
+
type AstroJsxA11YNoDistractingElements = [] | [{
|
|
8504
|
+
elements?: ("marquee" | "blink")[];
|
|
8505
|
+
[k: string]: unknown | undefined;
|
|
8506
|
+
}];
|
|
8507
|
+
// ----- astro/jsx-a11y/no-interactive-element-to-noninteractive-role -----
|
|
8508
|
+
type AstroJsxA11YNoInteractiveElementToNoninteractiveRole = [] | [{
|
|
8509
|
+
[k: string]: string[] | undefined;
|
|
8510
|
+
}];
|
|
8511
|
+
// ----- astro/jsx-a11y/no-noninteractive-element-interactions -----
|
|
8512
|
+
type AstroJsxA11YNoNoninteractiveElementInteractions = [] | [{
|
|
8513
|
+
handlers?: string[];
|
|
8514
|
+
[k: string]: unknown | undefined;
|
|
8515
|
+
}];
|
|
8516
|
+
// ----- astro/jsx-a11y/no-noninteractive-element-to-interactive-role -----
|
|
8517
|
+
type AstroJsxA11YNoNoninteractiveElementToInteractiveRole = [] | [{
|
|
8518
|
+
[k: string]: string[] | undefined;
|
|
8519
|
+
}];
|
|
8520
|
+
// ----- astro/jsx-a11y/no-noninteractive-tabindex -----
|
|
8521
|
+
type AstroJsxA11YNoNoninteractiveTabindex = [] | [{
|
|
8522
|
+
roles?: string[];
|
|
8523
|
+
tags?: string[];
|
|
8524
|
+
[k: string]: unknown | undefined;
|
|
8525
|
+
}];
|
|
8526
|
+
// ----- astro/jsx-a11y/no-redundant-roles -----
|
|
8527
|
+
type AstroJsxA11YNoRedundantRoles = [] | [{
|
|
8528
|
+
[k: string]: string[] | undefined;
|
|
8529
|
+
}];
|
|
8530
|
+
// ----- astro/jsx-a11y/no-static-element-interactions -----
|
|
8531
|
+
type AstroJsxA11YNoStaticElementInteractions = [] | [{
|
|
8532
|
+
handlers?: string[];
|
|
8533
|
+
[k: string]: unknown | undefined;
|
|
8534
|
+
}];
|
|
8535
|
+
// ----- astro/jsx-a11y/prefer-tag-over-role -----
|
|
8536
|
+
type AstroJsxA11YPreferTagOverRole = [] | [{
|
|
8537
|
+
[k: string]: unknown | undefined;
|
|
8538
|
+
}];
|
|
8539
|
+
// ----- astro/jsx-a11y/role-has-required-aria-props -----
|
|
8540
|
+
type AstroJsxA11YRoleHasRequiredAriaProps = [] | [{
|
|
8541
|
+
[k: string]: unknown | undefined;
|
|
8542
|
+
}];
|
|
8543
|
+
// ----- astro/jsx-a11y/role-supports-aria-props -----
|
|
8544
|
+
type AstroJsxA11YRoleSupportsAriaProps = [] | [{
|
|
8545
|
+
[k: string]: unknown | undefined;
|
|
8546
|
+
}];
|
|
8547
|
+
// ----- astro/jsx-a11y/scope -----
|
|
8548
|
+
type AstroJsxA11YScope = [] | [{
|
|
8549
|
+
[k: string]: unknown | undefined;
|
|
8550
|
+
}];
|
|
8551
|
+
// ----- astro/jsx-a11y/tabindex-no-positive -----
|
|
8552
|
+
type AstroJsxA11YTabindexNoPositive = [] | [{
|
|
8553
|
+
[k: string]: unknown | undefined;
|
|
8554
|
+
}];
|
|
8165
8555
|
// ----- astro/prefer-split-class-list -----
|
|
8166
8556
|
type AstroPreferSplitClassList = [] | [{
|
|
8167
8557
|
splitLiteral?: boolean;
|
|
@@ -9184,6 +9574,209 @@ type JsoncSpaceUnaryOps = [] | [{
|
|
|
9184
9574
|
[k: string]: boolean | undefined;
|
|
9185
9575
|
};
|
|
9186
9576
|
}];
|
|
9577
|
+
// ----- jsx-a11y/accessible-emoji -----
|
|
9578
|
+
type JsxA11YAccessibleEmoji = [] | [{
|
|
9579
|
+
[k: string]: unknown | undefined;
|
|
9580
|
+
}];
|
|
9581
|
+
// ----- jsx-a11y/alt-text -----
|
|
9582
|
+
type JsxA11YAltText = [] | [{
|
|
9583
|
+
elements?: string[];
|
|
9584
|
+
img?: string[];
|
|
9585
|
+
object?: string[];
|
|
9586
|
+
area?: string[];
|
|
9587
|
+
"input[type=\"image\"]"?: string[];
|
|
9588
|
+
[k: string]: unknown | undefined;
|
|
9589
|
+
}];
|
|
9590
|
+
// ----- jsx-a11y/anchor-ambiguous-text -----
|
|
9591
|
+
type JsxA11YAnchorAmbiguousText = [] | [{
|
|
9592
|
+
words?: string[];
|
|
9593
|
+
[k: string]: unknown | undefined;
|
|
9594
|
+
}];
|
|
9595
|
+
// ----- jsx-a11y/anchor-has-content -----
|
|
9596
|
+
type JsxA11YAnchorHasContent = [] | [{
|
|
9597
|
+
components?: string[];
|
|
9598
|
+
[k: string]: unknown | undefined;
|
|
9599
|
+
}];
|
|
9600
|
+
// ----- jsx-a11y/anchor-is-valid -----
|
|
9601
|
+
type JsxA11YAnchorIsValid = [] | [{
|
|
9602
|
+
components?: string[];
|
|
9603
|
+
specialLink?: string[];
|
|
9604
|
+
aspects?: [("noHref" | "invalidHref" | "preferButton"), ...(("noHref" | "invalidHref" | "preferButton"))[]];
|
|
9605
|
+
[k: string]: unknown | undefined;
|
|
9606
|
+
}];
|
|
9607
|
+
// ----- jsx-a11y/aria-activedescendant-has-tabindex -----
|
|
9608
|
+
type JsxA11YAriaActivedescendantHasTabindex = [] | [{
|
|
9609
|
+
[k: string]: unknown | undefined;
|
|
9610
|
+
}];
|
|
9611
|
+
// ----- jsx-a11y/aria-props -----
|
|
9612
|
+
type JsxA11YAriaProps = [] | [{
|
|
9613
|
+
[k: string]: unknown | undefined;
|
|
9614
|
+
}];
|
|
9615
|
+
// ----- jsx-a11y/aria-proptypes -----
|
|
9616
|
+
type JsxA11YAriaProptypes = [] | [{
|
|
9617
|
+
[k: string]: unknown | undefined;
|
|
9618
|
+
}];
|
|
9619
|
+
// ----- jsx-a11y/aria-role -----
|
|
9620
|
+
type JsxA11YAriaRole = [] | [{
|
|
9621
|
+
allowedInvalidRoles?: string[];
|
|
9622
|
+
ignoreNonDOM?: boolean;
|
|
9623
|
+
[k: string]: unknown | undefined;
|
|
9624
|
+
}];
|
|
9625
|
+
// ----- jsx-a11y/aria-unsupported-elements -----
|
|
9626
|
+
type JsxA11YAriaUnsupportedElements = [] | [{
|
|
9627
|
+
[k: string]: unknown | undefined;
|
|
9628
|
+
}];
|
|
9629
|
+
// ----- jsx-a11y/autocomplete-valid -----
|
|
9630
|
+
type JsxA11YAutocompleteValid = [] | [{
|
|
9631
|
+
inputComponents?: string[];
|
|
9632
|
+
[k: string]: unknown | undefined;
|
|
9633
|
+
}];
|
|
9634
|
+
// ----- jsx-a11y/click-events-have-key-events -----
|
|
9635
|
+
type JsxA11YClickEventsHaveKeyEvents = [] | [{
|
|
9636
|
+
[k: string]: unknown | undefined;
|
|
9637
|
+
}];
|
|
9638
|
+
// ----- jsx-a11y/control-has-associated-label -----
|
|
9639
|
+
type JsxA11YControlHasAssociatedLabel = [] | [{
|
|
9640
|
+
labelAttributes?: string[];
|
|
9641
|
+
controlComponents?: string[];
|
|
9642
|
+
ignoreElements?: string[];
|
|
9643
|
+
ignoreRoles?: string[];
|
|
9644
|
+
depth?: number;
|
|
9645
|
+
[k: string]: unknown | undefined;
|
|
9646
|
+
}];
|
|
9647
|
+
// ----- jsx-a11y/heading-has-content -----
|
|
9648
|
+
type JsxA11YHeadingHasContent = [] | [{
|
|
9649
|
+
components?: string[];
|
|
9650
|
+
[k: string]: unknown | undefined;
|
|
9651
|
+
}];
|
|
9652
|
+
// ----- jsx-a11y/html-has-lang -----
|
|
9653
|
+
type JsxA11YHtmlHasLang = [] | [{
|
|
9654
|
+
[k: string]: unknown | undefined;
|
|
9655
|
+
}];
|
|
9656
|
+
// ----- jsx-a11y/iframe-has-title -----
|
|
9657
|
+
type JsxA11YIframeHasTitle = [] | [{
|
|
9658
|
+
[k: string]: unknown | undefined;
|
|
9659
|
+
}];
|
|
9660
|
+
// ----- jsx-a11y/img-redundant-alt -----
|
|
9661
|
+
type JsxA11YImgRedundantAlt = [] | [{
|
|
9662
|
+
components?: string[];
|
|
9663
|
+
words?: string[];
|
|
9664
|
+
[k: string]: unknown | undefined;
|
|
9665
|
+
}];
|
|
9666
|
+
// ----- jsx-a11y/interactive-supports-focus -----
|
|
9667
|
+
type JsxA11YInteractiveSupportsFocus = [] | [{
|
|
9668
|
+
tabbable?: ("button" | "checkbox" | "columnheader" | "combobox" | "grid" | "gridcell" | "link" | "listbox" | "menu" | "menubar" | "menuitem" | "menuitemcheckbox" | "menuitemradio" | "option" | "progressbar" | "radio" | "radiogroup" | "row" | "rowheader" | "scrollbar" | "searchbox" | "slider" | "spinbutton" | "switch" | "tab" | "tablist" | "textbox" | "tree" | "treegrid" | "treeitem" | "doc-backlink" | "doc-biblioref" | "doc-glossref" | "doc-noteref")[];
|
|
9669
|
+
[k: string]: unknown | undefined;
|
|
9670
|
+
}];
|
|
9671
|
+
// ----- jsx-a11y/label-has-associated-control -----
|
|
9672
|
+
type JsxA11YLabelHasAssociatedControl = [] | [{
|
|
9673
|
+
labelComponents?: string[];
|
|
9674
|
+
labelAttributes?: string[];
|
|
9675
|
+
controlComponents?: string[];
|
|
9676
|
+
assert?: ("htmlFor" | "nesting" | "both" | "either");
|
|
9677
|
+
depth?: number;
|
|
9678
|
+
[k: string]: unknown | undefined;
|
|
9679
|
+
}];
|
|
9680
|
+
// ----- jsx-a11y/label-has-for -----
|
|
9681
|
+
type JsxA11YLabelHasFor = [] | [{
|
|
9682
|
+
components?: string[];
|
|
9683
|
+
required?: (("nesting" | "id") | {
|
|
9684
|
+
some: ("nesting" | "id")[];
|
|
9685
|
+
[k: string]: unknown | undefined;
|
|
9686
|
+
} | {
|
|
9687
|
+
every: ("nesting" | "id")[];
|
|
9688
|
+
[k: string]: unknown | undefined;
|
|
9689
|
+
});
|
|
9690
|
+
allowChildren?: boolean;
|
|
9691
|
+
[k: string]: unknown | undefined;
|
|
9692
|
+
}];
|
|
9693
|
+
// ----- jsx-a11y/lang -----
|
|
9694
|
+
type JsxA11YLang = [] | [{
|
|
9695
|
+
[k: string]: unknown | undefined;
|
|
9696
|
+
}];
|
|
9697
|
+
// ----- jsx-a11y/media-has-caption -----
|
|
9698
|
+
type JsxA11YMediaHasCaption = [] | [{
|
|
9699
|
+
audio?: string[];
|
|
9700
|
+
video?: string[];
|
|
9701
|
+
track?: string[];
|
|
9702
|
+
[k: string]: unknown | undefined;
|
|
9703
|
+
}];
|
|
9704
|
+
// ----- jsx-a11y/mouse-events-have-key-events -----
|
|
9705
|
+
type JsxA11YMouseEventsHaveKeyEvents = [] | [{
|
|
9706
|
+
hoverInHandlers?: string[];
|
|
9707
|
+
hoverOutHandlers?: string[];
|
|
9708
|
+
[k: string]: unknown | undefined;
|
|
9709
|
+
}];
|
|
9710
|
+
// ----- jsx-a11y/no-access-key -----
|
|
9711
|
+
type JsxA11YNoAccessKey = [] | [{
|
|
9712
|
+
[k: string]: unknown | undefined;
|
|
9713
|
+
}];
|
|
9714
|
+
// ----- jsx-a11y/no-aria-hidden-on-focusable -----
|
|
9715
|
+
type JsxA11YNoAriaHiddenOnFocusable = [] | [{
|
|
9716
|
+
[k: string]: unknown | undefined;
|
|
9717
|
+
}];
|
|
9718
|
+
// ----- jsx-a11y/no-autofocus -----
|
|
9719
|
+
type JsxA11YNoAutofocus = [] | [{
|
|
9720
|
+
ignoreNonDOM?: boolean;
|
|
9721
|
+
[k: string]: unknown | undefined;
|
|
9722
|
+
}];
|
|
9723
|
+
// ----- jsx-a11y/no-distracting-elements -----
|
|
9724
|
+
type JsxA11YNoDistractingElements = [] | [{
|
|
9725
|
+
elements?: ("marquee" | "blink")[];
|
|
9726
|
+
[k: string]: unknown | undefined;
|
|
9727
|
+
}];
|
|
9728
|
+
// ----- jsx-a11y/no-interactive-element-to-noninteractive-role -----
|
|
9729
|
+
type JsxA11YNoInteractiveElementToNoninteractiveRole = [] | [{
|
|
9730
|
+
[k: string]: string[] | undefined;
|
|
9731
|
+
}];
|
|
9732
|
+
// ----- jsx-a11y/no-noninteractive-element-interactions -----
|
|
9733
|
+
type JsxA11YNoNoninteractiveElementInteractions = [] | [{
|
|
9734
|
+
handlers?: string[];
|
|
9735
|
+
[k: string]: unknown | undefined;
|
|
9736
|
+
}];
|
|
9737
|
+
// ----- jsx-a11y/no-noninteractive-element-to-interactive-role -----
|
|
9738
|
+
type JsxA11YNoNoninteractiveElementToInteractiveRole = [] | [{
|
|
9739
|
+
[k: string]: string[] | undefined;
|
|
9740
|
+
}];
|
|
9741
|
+
// ----- jsx-a11y/no-noninteractive-tabindex -----
|
|
9742
|
+
type JsxA11YNoNoninteractiveTabindex = [] | [{
|
|
9743
|
+
roles?: string[];
|
|
9744
|
+
tags?: string[];
|
|
9745
|
+
[k: string]: unknown | undefined;
|
|
9746
|
+
}];
|
|
9747
|
+
// ----- jsx-a11y/no-onchange -----
|
|
9748
|
+
type JsxA11YNoOnchange = [] | [{
|
|
9749
|
+
[k: string]: unknown | undefined;
|
|
9750
|
+
}];
|
|
9751
|
+
// ----- jsx-a11y/no-redundant-roles -----
|
|
9752
|
+
type JsxA11YNoRedundantRoles = [] | [{
|
|
9753
|
+
[k: string]: string[] | undefined;
|
|
9754
|
+
}];
|
|
9755
|
+
// ----- jsx-a11y/no-static-element-interactions -----
|
|
9756
|
+
type JsxA11YNoStaticElementInteractions = [] | [{
|
|
9757
|
+
handlers?: string[];
|
|
9758
|
+
[k: string]: unknown | undefined;
|
|
9759
|
+
}];
|
|
9760
|
+
// ----- jsx-a11y/prefer-tag-over-role -----
|
|
9761
|
+
type JsxA11YPreferTagOverRole = [] | [{
|
|
9762
|
+
[k: string]: unknown | undefined;
|
|
9763
|
+
}];
|
|
9764
|
+
// ----- jsx-a11y/role-has-required-aria-props -----
|
|
9765
|
+
type JsxA11YRoleHasRequiredAriaProps = [] | [{
|
|
9766
|
+
[k: string]: unknown | undefined;
|
|
9767
|
+
}];
|
|
9768
|
+
// ----- jsx-a11y/role-supports-aria-props -----
|
|
9769
|
+
type JsxA11YRoleSupportsAriaProps = [] | [{
|
|
9770
|
+
[k: string]: unknown | undefined;
|
|
9771
|
+
}];
|
|
9772
|
+
// ----- jsx-a11y/scope -----
|
|
9773
|
+
type JsxA11YScope = [] | [{
|
|
9774
|
+
[k: string]: unknown | undefined;
|
|
9775
|
+
}];
|
|
9776
|
+
// ----- jsx-a11y/tabindex-no-positive -----
|
|
9777
|
+
type JsxA11YTabindexNoPositive = [] | [{
|
|
9778
|
+
[k: string]: unknown | undefined;
|
|
9779
|
+
}];
|
|
9187
9780
|
// ----- jsx-quotes -----
|
|
9188
9781
|
type JsxQuotes = [] | [("prefer-single" | "prefer-double")];
|
|
9189
9782
|
// ----- key-spacing -----
|
|
@@ -9959,10 +10552,17 @@ type NoRestrictedExports = [] | [({
|
|
|
9959
10552
|
};
|
|
9960
10553
|
})];
|
|
9961
10554
|
// ----- no-restricted-globals -----
|
|
9962
|
-
type NoRestrictedGlobals = (string | {
|
|
10555
|
+
type NoRestrictedGlobals = ((string | {
|
|
9963
10556
|
name: string;
|
|
9964
10557
|
message?: string;
|
|
9965
|
-
})[]
|
|
10558
|
+
})[] | [] | [{
|
|
10559
|
+
globals: (string | {
|
|
10560
|
+
name: string;
|
|
10561
|
+
message?: string;
|
|
10562
|
+
})[];
|
|
10563
|
+
checkGlobalObject?: boolean;
|
|
10564
|
+
globalObjects?: string[];
|
|
10565
|
+
}]);
|
|
9966
10566
|
// ----- no-restricted-imports -----
|
|
9967
10567
|
type NoRestrictedImports = ((string | {
|
|
9968
10568
|
name: string;
|
|
@@ -10457,6 +11057,8 @@ type OneVar = [] | [(("always" | "never" | "consecutive") | {
|
|
|
10457
11057
|
var?: ("always" | "never" | "consecutive");
|
|
10458
11058
|
let?: ("always" | "never" | "consecutive");
|
|
10459
11059
|
const?: ("always" | "never" | "consecutive");
|
|
11060
|
+
using?: ("always" | "never" | "consecutive");
|
|
11061
|
+
awaitUsing?: ("always" | "never" | "consecutive");
|
|
10460
11062
|
} | {
|
|
10461
11063
|
initialized?: ("always" | "never" | "consecutive");
|
|
10462
11064
|
uninitialized?: ("always" | "never" | "consecutive");
|
|
@@ -15320,6 +15922,12 @@ type UnocssEnforceClassCompile = [] | [{
|
|
|
15320
15922
|
prefix?: string;
|
|
15321
15923
|
enableFix?: boolean;
|
|
15322
15924
|
}];
|
|
15925
|
+
// ----- unocss/order -----
|
|
15926
|
+
type UnocssOrder = [] | [{
|
|
15927
|
+
unoFunctions?: string[];
|
|
15928
|
+
unoVariables?: string[];
|
|
15929
|
+
[k: string]: unknown | undefined;
|
|
15930
|
+
}];
|
|
15323
15931
|
// ----- unused-imports/no-unused-imports -----
|
|
15324
15932
|
type UnusedImportsNoUnusedImports = [] | [(("all" | "local") | {
|
|
15325
15933
|
args?: ("all" | "after-used" | "none");
|
|
@@ -16072,6 +16680,7 @@ type VueNoDeprecatedRouterLinkTagProp = [] | [{
|
|
|
16072
16680
|
// ----- vue/no-deprecated-slot-attribute -----
|
|
16073
16681
|
type VueNoDeprecatedSlotAttribute = [] | [{
|
|
16074
16682
|
ignore?: string[];
|
|
16683
|
+
ignoreParents?: string[];
|
|
16075
16684
|
}];
|
|
16076
16685
|
// ----- vue/no-dupe-keys -----
|
|
16077
16686
|
type VueNoDupeKeys = [] | [{
|
|
@@ -16926,6 +17535,19 @@ interface OptionsVue extends OptionsOverrides {
|
|
|
16926
17535
|
*/
|
|
16927
17536
|
a11y?: boolean;
|
|
16928
17537
|
}
|
|
17538
|
+
interface OptionsJSXA11y extends OptionsOverrides {}
|
|
17539
|
+
interface OptionsJSX {
|
|
17540
|
+
/**
|
|
17541
|
+
* Enable JSX accessibility rules.
|
|
17542
|
+
*
|
|
17543
|
+
* Requires installing:
|
|
17544
|
+
* - `eslint-plugin-jsx-a11y`
|
|
17545
|
+
*
|
|
17546
|
+
* Can be a boolean or an object for custom options and overrides.
|
|
17547
|
+
* @default false
|
|
17548
|
+
*/
|
|
17549
|
+
a11y?: boolean | OptionsJSXA11y;
|
|
17550
|
+
}
|
|
16929
17551
|
type OptionsTypescript = (OptionsTypeScriptWithTypes & OptionsOverrides) | (OptionsTypeScriptParserOptions & OptionsOverrides);
|
|
16930
17552
|
interface OptionsFormatters {
|
|
16931
17553
|
/**
|
|
@@ -17109,11 +17731,11 @@ interface OptionsConfig extends OptionsComponentExts, OptionsProjectType {
|
|
|
17109
17731
|
/**
|
|
17110
17732
|
* Enable JSX related rules.
|
|
17111
17733
|
*
|
|
17112
|
-
*
|
|
17734
|
+
* Passing an object to enable JSX accessibility rules.
|
|
17113
17735
|
*
|
|
17114
17736
|
* @default true
|
|
17115
17737
|
*/
|
|
17116
|
-
jsx?: boolean;
|
|
17738
|
+
jsx?: boolean | OptionsJSX;
|
|
17117
17739
|
/**
|
|
17118
17740
|
* Options for eslint-plugin-unicorn.
|
|
17119
17741
|
*
|
|
@@ -17350,7 +17972,7 @@ declare function jsdoc(options?: OptionsStylistic): Promise<TypedFlatConfigItem[
|
|
|
17350
17972
|
declare function jsonc(options?: OptionsFiles & OptionsStylistic & OptionsOverrides): Promise<TypedFlatConfigItem[]>;
|
|
17351
17973
|
//#endregion
|
|
17352
17974
|
//#region src/configs/jsx.d.ts
|
|
17353
|
-
declare function jsx(): Promise<TypedFlatConfigItem[]>;
|
|
17975
|
+
declare function jsx(options?: OptionsJSX): Promise<TypedFlatConfigItem[]>;
|
|
17354
17976
|
//#endregion
|
|
17355
17977
|
//#region src/configs/markdown.d.ts
|
|
17356
17978
|
declare function markdown(options?: OptionsFiles & OptionsComponentExts & OptionsOverrides): Promise<TypedFlatConfigItem[]>;
|
|
@@ -17531,4 +18153,4 @@ declare function ensurePackages(packages: (string | undefined)[]): Promise<void>
|
|
|
17531
18153
|
declare function isInEditorEnv(): boolean;
|
|
17532
18154
|
declare function isInGitHooksOrLintStaged(): boolean;
|
|
17533
18155
|
//#endregion
|
|
17534
|
-
export { Awaitable, type ConfigNames, GLOB_ALL_SRC, GLOB_ASTRO, GLOB_ASTRO_TS, GLOB_CSS, GLOB_EXCLUDE, GLOB_GRAPHQL, GLOB_HTML, GLOB_JS, GLOB_JSON, GLOB_JSON5, GLOB_JSONC, GLOB_JSX, GLOB_LESS, GLOB_MARKDOWN, GLOB_MARKDOWN_CODE, GLOB_MARKDOWN_IN_MARKDOWN, GLOB_POSTCSS, GLOB_SCSS, GLOB_SRC, GLOB_SRC_EXT, GLOB_STYLE, GLOB_SVELTE, GLOB_SVG, GLOB_TESTS, GLOB_TOML, GLOB_TS, GLOB_TSX, GLOB_VUE, GLOB_XML, GLOB_YAML, OptionsComponentExts, OptionsConfig, OptionsFiles, OptionsFormatters, OptionsHasTypeScript, OptionsIsInEditor, OptionsOverrides, OptionsProjectType, OptionsRegExp, OptionsStylistic, OptionsTypeScriptParserOptions, OptionsTypeScriptWithTypes, OptionsTypescript, OptionsUnicorn, OptionsUnoCSS, OptionsVue, ResolvedOptions, Rules, StylisticConfig, StylisticConfigDefaults, StylisticOptions, TypedFlatConfigItem, antfu, astro, combine, command, comments, antfu as default, defaultPluginRenaming, disables, ensurePackages, formatters, getOverrides, ignores, imports, interopDefault, isInEditorEnv, isInGitHooksOrLintStaged, isPackageInScope, javascript, jsdoc, jsonc, jsx, markdown, nextjs, node, parserPlain, perfectionist, pnpm, react, regexp, renamePluginInConfigs, renameRules, resolveSubOptions, solid, sortPackageJson, sortTsconfig, stylistic, svelte, test, toArray, toml, typescript, unicorn, unocss, vue, yaml };
|
|
18156
|
+
export { Awaitable, type ConfigNames, GLOB_ALL_SRC, GLOB_ASTRO, GLOB_ASTRO_TS, GLOB_CSS, GLOB_EXCLUDE, GLOB_GRAPHQL, GLOB_HTML, GLOB_JS, GLOB_JSON, GLOB_JSON5, GLOB_JSONC, GLOB_JSX, GLOB_LESS, GLOB_MARKDOWN, GLOB_MARKDOWN_CODE, GLOB_MARKDOWN_IN_MARKDOWN, GLOB_POSTCSS, GLOB_SCSS, GLOB_SRC, GLOB_SRC_EXT, GLOB_STYLE, GLOB_SVELTE, GLOB_SVG, GLOB_TESTS, GLOB_TOML, GLOB_TS, GLOB_TSX, GLOB_VUE, GLOB_XML, GLOB_YAML, OptionsComponentExts, OptionsConfig, OptionsFiles, OptionsFormatters, OptionsHasTypeScript, OptionsIsInEditor, OptionsJSX, OptionsJSXA11y, OptionsOverrides, OptionsProjectType, OptionsRegExp, OptionsStylistic, OptionsTypeScriptParserOptions, OptionsTypeScriptWithTypes, OptionsTypescript, OptionsUnicorn, OptionsUnoCSS, OptionsVue, ResolvedOptions, Rules, StylisticConfig, StylisticConfigDefaults, StylisticOptions, TypedFlatConfigItem, antfu, astro, combine, command, comments, antfu as default, defaultPluginRenaming, disables, ensurePackages, formatters, getOverrides, ignores, imports, interopDefault, isInEditorEnv, isInGitHooksOrLintStaged, isPackageInScope, javascript, jsdoc, jsonc, jsx, markdown, nextjs, node, parserPlain, perfectionist, pnpm, react, regexp, renamePluginInConfigs, renameRules, resolveSubOptions, solid, sortPackageJson, sortTsconfig, stylistic, svelte, test, toArray, toml, typescript, unicorn, unocss, vue, yaml };
|
package/dist/index.js
CHANGED
|
@@ -928,11 +928,40 @@ async function jsonc(options = {}) {
|
|
|
928
928
|
|
|
929
929
|
//#endregion
|
|
930
930
|
//#region src/configs/jsx.ts
|
|
931
|
-
async function jsx() {
|
|
932
|
-
|
|
931
|
+
async function jsx(options = {}) {
|
|
932
|
+
const { a11y } = options;
|
|
933
|
+
const baseConfig = {
|
|
933
934
|
files: [GLOB_JSX, GLOB_TSX],
|
|
934
935
|
languageOptions: { parserOptions: { ecmaFeatures: { jsx: true } } },
|
|
935
|
-
name: "antfu/jsx/setup"
|
|
936
|
+
name: "antfu/jsx/setup",
|
|
937
|
+
plugins: {},
|
|
938
|
+
rules: {}
|
|
939
|
+
};
|
|
940
|
+
if (!a11y) return [baseConfig];
|
|
941
|
+
await ensurePackages(["eslint-plugin-jsx-a11y"]);
|
|
942
|
+
const jsxA11yPlugin = await interopDefault(import("eslint-plugin-jsx-a11y"));
|
|
943
|
+
const a11yConfig = jsxA11yPlugin.flatConfigs.recommended;
|
|
944
|
+
const a11yRules = {
|
|
945
|
+
...a11yConfig.rules || {},
|
|
946
|
+
...typeof a11y === "object" && a11y.overrides ? a11y.overrides : {}
|
|
947
|
+
};
|
|
948
|
+
return [{
|
|
949
|
+
...baseConfig,
|
|
950
|
+
...a11yConfig,
|
|
951
|
+
files: baseConfig.files,
|
|
952
|
+
languageOptions: {
|
|
953
|
+
...baseConfig.languageOptions,
|
|
954
|
+
...a11yConfig.languageOptions
|
|
955
|
+
},
|
|
956
|
+
name: baseConfig.name,
|
|
957
|
+
plugins: {
|
|
958
|
+
...baseConfig.plugins,
|
|
959
|
+
"jsx-a11y": jsxA11yPlugin
|
|
960
|
+
},
|
|
961
|
+
rules: {
|
|
962
|
+
...baseConfig.rules,
|
|
963
|
+
...a11yRules
|
|
964
|
+
}
|
|
936
965
|
}];
|
|
937
966
|
}
|
|
938
967
|
|
|
@@ -2260,7 +2289,7 @@ function antfu(options = {}, ...userConfigs) {
|
|
|
2260
2289
|
if (isInEditor) console.log("[@oliver139/eslint-config] Detected running in editor, some rules are disabled.");
|
|
2261
2290
|
}
|
|
2262
2291
|
const stylisticOptions = options.stylistic === false ? false : typeof options.stylistic === "object" ? options.stylistic : {};
|
|
2263
|
-
if (stylisticOptions && !("jsx" in stylisticOptions)) stylisticOptions.jsx = enableJsx;
|
|
2292
|
+
if (stylisticOptions && !("jsx" in stylisticOptions)) stylisticOptions.jsx = typeof enableJsx === "object" ? true : enableJsx;
|
|
2264
2293
|
const configs$1 = [];
|
|
2265
2294
|
if (enableGitignore) if (typeof enableGitignore !== "boolean") configs$1.push(interopDefault(import("eslint-config-flat-gitignore")).then((r) => [r({
|
|
2266
2295
|
name: "antfu/gitignore",
|
|
@@ -2282,7 +2311,7 @@ function antfu(options = {}, ...userConfigs) {
|
|
|
2282
2311
|
}));
|
|
2283
2312
|
if (enableUnicorn) configs$1.push(unicorn(enableUnicorn === true ? {} : enableUnicorn));
|
|
2284
2313
|
if (enableVue) componentExts.push("vue");
|
|
2285
|
-
if (enableJsx) configs$1.push(jsx());
|
|
2314
|
+
if (enableJsx) configs$1.push(jsx(enableJsx === true ? {} : enableJsx));
|
|
2286
2315
|
if (enableTypeScript) configs$1.push(typescript({
|
|
2287
2316
|
...typescriptOptions,
|
|
2288
2317
|
componentExts,
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@oliver139/eslint-config",
|
|
3
3
|
"type": "module",
|
|
4
|
-
"version": "3.
|
|
4
|
+
"version": "3.1.0",
|
|
5
5
|
"description": " Oliver's ESLint config preset powered by @antfu/eslint-config",
|
|
6
6
|
"author": "Oliver Mak <oliver139.working@gmail.com> (https://github.com/oliver139)",
|
|
7
7
|
"license": "MIT",
|
|
@@ -35,6 +35,7 @@
|
|
|
35
35
|
"eslint": "^9.10.0",
|
|
36
36
|
"eslint-plugin-astro": "^1.2.0",
|
|
37
37
|
"eslint-plugin-format": ">=0.1.0",
|
|
38
|
+
"eslint-plugin-jsx-a11y": ">=6.10.2",
|
|
38
39
|
"eslint-plugin-react-hooks": "^5.2.0",
|
|
39
40
|
"eslint-plugin-react-refresh": "^0.4.19",
|
|
40
41
|
"eslint-plugin-solid": "^0.14.3",
|
|
@@ -66,6 +67,9 @@
|
|
|
66
67
|
"eslint-plugin-format": {
|
|
67
68
|
"optional": true
|
|
68
69
|
},
|
|
70
|
+
"eslint-plugin-jsx-a11y": {
|
|
71
|
+
"optional": true
|
|
72
|
+
},
|
|
69
73
|
"eslint-plugin-react-hooks": {
|
|
70
74
|
"optional": true
|
|
71
75
|
},
|
|
@@ -96,29 +100,29 @@
|
|
|
96
100
|
"@clack/prompts": "^0.11.0",
|
|
97
101
|
"@eslint-community/eslint-plugin-eslint-comments": "^4.5.0",
|
|
98
102
|
"@eslint/markdown": "^7.1.0",
|
|
99
|
-
"@stylistic/eslint-plugin": "^5.2.
|
|
100
|
-
"@typescript-eslint/eslint-plugin": "^8.
|
|
101
|
-
"@typescript-eslint/parser": "^8.
|
|
103
|
+
"@stylistic/eslint-plugin": "^5.2.3",
|
|
104
|
+
"@typescript-eslint/eslint-plugin": "^8.39.0",
|
|
105
|
+
"@typescript-eslint/parser": "^8.39.0",
|
|
102
106
|
"@vitest/eslint-plugin": "^1.3.4",
|
|
103
107
|
"ansis": "^4.1.0",
|
|
104
108
|
"cac": "^6.7.14",
|
|
105
109
|
"eslint-config-flat-gitignore": "^2.1.0",
|
|
106
|
-
"eslint-flat-config-utils": "^2.1.
|
|
110
|
+
"eslint-flat-config-utils": "^2.1.1",
|
|
107
111
|
"eslint-merge-processors": "^2.0.0",
|
|
108
112
|
"eslint-plugin-antfu": "^3.1.1",
|
|
109
113
|
"eslint-plugin-command": "^3.3.1",
|
|
110
114
|
"eslint-plugin-import-lite": "^0.3.0",
|
|
111
|
-
"eslint-plugin-jsdoc": "^
|
|
115
|
+
"eslint-plugin-jsdoc": "^52.0.4",
|
|
112
116
|
"eslint-plugin-jsonc": "^2.20.1",
|
|
113
|
-
"eslint-plugin-n": "^17.21.
|
|
117
|
+
"eslint-plugin-n": "^17.21.3",
|
|
114
118
|
"eslint-plugin-no-only-tests": "^3.3.0",
|
|
115
119
|
"eslint-plugin-perfectionist": "^4.15.0",
|
|
116
120
|
"eslint-plugin-pnpm": "^1.1.0",
|
|
117
|
-
"eslint-plugin-regexp": "^2.
|
|
121
|
+
"eslint-plugin-regexp": "^2.10.0",
|
|
118
122
|
"eslint-plugin-toml": "^0.12.0",
|
|
119
123
|
"eslint-plugin-unicorn": "^60.0.0",
|
|
120
124
|
"eslint-plugin-unused-imports": "^4.1.4",
|
|
121
|
-
"eslint-plugin-vue": "^10.
|
|
125
|
+
"eslint-plugin-vue": "^10.4.0",
|
|
122
126
|
"eslint-plugin-yml": "^1.18.0",
|
|
123
127
|
"eslint-processor-vue-blocks": "^2.0.0",
|
|
124
128
|
"globals": "^16.3.0",
|
|
@@ -133,15 +137,17 @@
|
|
|
133
137
|
"@antfu/ni": "^25.0.0",
|
|
134
138
|
"@eslint-react/eslint-plugin": "^1.52.3",
|
|
135
139
|
"@eslint/config-inspector": "^1.1.0",
|
|
136
|
-
"@next/eslint-plugin-next": "^15.4.
|
|
140
|
+
"@next/eslint-plugin-next": "^15.4.6",
|
|
137
141
|
"@prettier/plugin-xml": "^3.4.2",
|
|
138
|
-
"@types/
|
|
139
|
-
"@
|
|
142
|
+
"@types/eslint-plugin-jsx-a11y": "^6.10.0",
|
|
143
|
+
"@types/node": "^24.2.1",
|
|
144
|
+
"@unocss/eslint-plugin": "^66.4.2",
|
|
140
145
|
"astro-eslint-parser": "^1.2.2",
|
|
141
|
-
"bumpp": "^10.2.
|
|
142
|
-
"eslint": "^9.
|
|
146
|
+
"bumpp": "^10.2.2",
|
|
147
|
+
"eslint": "^9.33.0",
|
|
143
148
|
"eslint-plugin-astro": "^1.3.1",
|
|
144
149
|
"eslint-plugin-format": "^1.0.1",
|
|
150
|
+
"eslint-plugin-jsx-a11y": "^6.10.2",
|
|
145
151
|
"eslint-plugin-react-hooks": "^5.2.0",
|
|
146
152
|
"eslint-plugin-react-refresh": "^0.4.20",
|
|
147
153
|
"eslint-plugin-solid": "^0.14.5",
|
|
@@ -150,20 +156,20 @@
|
|
|
150
156
|
"eslint-typegen": "^2.3.0",
|
|
151
157
|
"execa": "^9.6.0",
|
|
152
158
|
"jiti": "^2.5.1",
|
|
153
|
-
"lint-staged": "^16.1.
|
|
159
|
+
"lint-staged": "^16.1.5",
|
|
154
160
|
"pnpm-workspace-yaml": "^1.1.0",
|
|
155
161
|
"prettier-plugin-astro": "^0.14.1",
|
|
156
162
|
"prettier-plugin-slidev": "^1.0.5",
|
|
157
|
-
"simple-git-hooks": "^2.13.
|
|
158
|
-
"svelte": "^5.
|
|
159
|
-
"svelte-eslint-parser": "^1.3.
|
|
163
|
+
"simple-git-hooks": "^2.13.1",
|
|
164
|
+
"svelte": "^5.38.0",
|
|
165
|
+
"svelte-eslint-parser": "^1.3.1",
|
|
160
166
|
"tinyglobby": "^0.2.14",
|
|
161
|
-
"tsdown": "^0.
|
|
167
|
+
"tsdown": "^0.14.0",
|
|
162
168
|
"tsx": "^4.20.3",
|
|
163
|
-
"typescript": "^5.
|
|
169
|
+
"typescript": "^5.9.2",
|
|
164
170
|
"vitest": "^3.2.4",
|
|
165
171
|
"vue": "^3.5.18",
|
|
166
|
-
"@oliver139/eslint-config": "3.
|
|
172
|
+
"@oliver139/eslint-config": "3.1.0"
|
|
167
173
|
},
|
|
168
174
|
"resolutions": {
|
|
169
175
|
"eslint": "catalog:peer"
|