@kazupon/eslint-config 0.31.0 → 0.32.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 +0 -2
- package/dist/index.d.ts +196 -65
- package/package.json +32 -32
package/README.md
CHANGED
|
@@ -179,7 +179,5 @@ Thank you! ❤️
|
|
|
179
179
|
|
|
180
180
|
[npm-version-src]: https://img.shields.io/npm/v/@kazupon/eslint-config?style=flat
|
|
181
181
|
[npm-version-href]: https://npmjs.com/package/@kazupon/eslint-config
|
|
182
|
-
[npm-downloads-src]: https://img.shields.io/npm/dm/@kazupon/eslint-config?style=flat
|
|
183
|
-
[npm-downloads-href]: https://npmjs.com/package/@kazupon/eslint-config
|
|
184
182
|
[ci-src]: https://github.com/kazupon/eslint-config/actions/workflows/ci.yml/badge.svg
|
|
185
183
|
[ci-href]: https://github.com/kazupon/eslint-config/actions/workflows/ci.yml
|
package/dist/index.d.ts
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { FlatConfigComposer } from "eslint-flat-config-utils";
|
|
2
2
|
import { Awaitable } from "@kazupon/jts-utils/types";
|
|
3
3
|
import { ESLint, Linter } from "eslint";
|
|
4
|
-
import * as
|
|
4
|
+
import * as typescript0 from "typescript";
|
|
5
5
|
import { StylisticCustomizeOptions } from "@stylistic/eslint-plugin";
|
|
6
6
|
|
|
7
7
|
//#region src/config.d.ts
|
|
@@ -79,6 +79,11 @@ interface CommentsRules {
|
|
|
79
79
|
* @see https://eslint-plugin.kazupon.dev/rules/no-tag-comments
|
|
80
80
|
*/
|
|
81
81
|
"@kazupon/no-tag-comments"?: Linter.RuleEntry<KazuponNoTagComments>;
|
|
82
|
+
/**
|
|
83
|
+
* enforce adding a scope to tag comments
|
|
84
|
+
* @see https://eslint-plugin.kazupon.dev/rules/prefer-scope-on-tag-comment
|
|
85
|
+
*/
|
|
86
|
+
"@kazupon/prefer-scope-on-tag-comment"?: Linter.RuleEntry<KazuponPreferScopeOnTagComment>;
|
|
82
87
|
}
|
|
83
88
|
/* ======= Declarations ======= */
|
|
84
89
|
// ----- @eslint-community/eslint-comments/disable-enable-pair -----
|
|
@@ -99,6 +104,10 @@ type EslintCommunityEslintCommentsRequireDescription = [] | [{
|
|
|
99
104
|
type KazuponNoTagComments = [] | [{
|
|
100
105
|
tags?: [string, ...(string)[]];
|
|
101
106
|
}];
|
|
107
|
+
// ----- @kazupon/prefer-scope-on-tag-comment -----
|
|
108
|
+
type KazuponPreferScopeOnTagComment = [] | [{
|
|
109
|
+
tags?: [string, ...(string)[]];
|
|
110
|
+
}];
|
|
102
111
|
//#endregion
|
|
103
112
|
//#region src/types/gens/css.d.ts
|
|
104
113
|
interface CssRules {
|
|
@@ -133,6 +142,11 @@ interface CssRules {
|
|
|
133
142
|
*/
|
|
134
143
|
"css/prefer-logical-properties"?: Linter.RuleEntry<CssPreferLogicalProperties>;
|
|
135
144
|
/**
|
|
145
|
+
* Enforce the use of relative font units
|
|
146
|
+
* @see https://github.com/eslint/css/blob/main/docs/rules/relative-font-units.md
|
|
147
|
+
*/
|
|
148
|
+
"css/relative-font-units"?: Linter.RuleEntry<CssRelativeFontUnits>;
|
|
149
|
+
/**
|
|
136
150
|
* Enforce the use of baseline features
|
|
137
151
|
* @see https://github.com/eslint/css/blob/main/docs/rules/use-baseline.md
|
|
138
152
|
*/
|
|
@@ -149,6 +163,11 @@ type CssPreferLogicalProperties = [] | [{
|
|
|
149
163
|
allowProperties?: string[];
|
|
150
164
|
allowUnits?: string[];
|
|
151
165
|
}];
|
|
166
|
+
// ----- css/relative-font-units -----
|
|
167
|
+
type CssRelativeFontUnits = [] | [{
|
|
168
|
+
allowUnits?: ("%" | "cap" | "ch" | "em" | "ex" | "ic" | "lh" | "rcap" | "rch" | "rem" | "rex" | "ric" | "rlh")[];
|
|
169
|
+
[k: string]: unknown | undefined;
|
|
170
|
+
}];
|
|
152
171
|
// ----- css/use-baseline -----
|
|
153
172
|
type CssUseBaseline = [] | [{
|
|
154
173
|
available?: (("widely" | "newly") | number);
|
|
@@ -207,6 +226,11 @@ interface HtmlRules {
|
|
|
207
226
|
*/
|
|
208
227
|
"@html-eslint/no-aria-hidden-body"?: Linter.RuleEntry<[]>;
|
|
209
228
|
/**
|
|
229
|
+
* Disallow aria-hidden="true" on focusable elements
|
|
230
|
+
* @see https://html-eslint.org/docs/rules/no-aria-hidden-on-focusable
|
|
231
|
+
*/
|
|
232
|
+
"@html-eslint/no-aria-hidden-on-focusable"?: Linter.RuleEntry<[]>;
|
|
233
|
+
/**
|
|
210
234
|
* Disallow to use duplicate attributes
|
|
211
235
|
* @see https://html-eslint.org/docs/rules/no-duplicate-attrs
|
|
212
236
|
*/
|
|
@@ -222,6 +246,16 @@ interface HtmlRules {
|
|
|
222
246
|
*/
|
|
223
247
|
"@html-eslint/no-duplicate-id"?: Linter.RuleEntry<[]>;
|
|
224
248
|
/**
|
|
249
|
+
* Disallow duplicate tags in `<head>`
|
|
250
|
+
* @see https://html-eslint.org/docs/rules/no-duplicate-in-head
|
|
251
|
+
*/
|
|
252
|
+
"@html-eslint/no-duplicate-in-head"?: Linter.RuleEntry<[]>;
|
|
253
|
+
/**
|
|
254
|
+
* Disallow empty or inaccessible headings.
|
|
255
|
+
* @see https://html-eslint.org/docs/rules/no-empty-headings
|
|
256
|
+
*/
|
|
257
|
+
"@html-eslint/no-empty-headings"?: Linter.RuleEntry<[]>;
|
|
258
|
+
/**
|
|
225
259
|
* Disallow an extra spacing around attributes
|
|
226
260
|
* @see https://html-eslint.org/docs/rules/no-extra-spacing-attrs
|
|
227
261
|
*/
|
|
@@ -242,6 +276,11 @@ interface HtmlRules {
|
|
|
242
276
|
*/
|
|
243
277
|
"@html-eslint/no-inline-styles"?: Linter.RuleEntry<[]>;
|
|
244
278
|
/**
|
|
279
|
+
* Disallows the use of invalid HTML entities
|
|
280
|
+
* @see https://html-eslint.org/docs/rules/no-invalid-entity
|
|
281
|
+
*/
|
|
282
|
+
"@html-eslint/no-invalid-entity"?: Linter.RuleEntry<[]>;
|
|
283
|
+
/**
|
|
245
284
|
* Disallows use of invalid role.
|
|
246
285
|
* @see https://html-eslint.org/docs/rules/no-invalid-role
|
|
247
286
|
*/
|
|
@@ -412,13 +451,11 @@ interface HtmlRules {
|
|
|
412
451
|
type HtmlEslintAttrsNewline = [] | [{
|
|
413
452
|
closeStyle?: ("newline" | "sameline");
|
|
414
453
|
ifAttrsMoreThan?: number;
|
|
415
|
-
[k: string]: unknown | undefined;
|
|
416
454
|
}];
|
|
417
455
|
// ----- @html-eslint/element-newline -----
|
|
418
456
|
type HtmlEslintElementNewline = [] | [{
|
|
419
457
|
inline?: string[];
|
|
420
458
|
skip?: string[];
|
|
421
|
-
[k: string]: unknown | undefined;
|
|
422
459
|
}];
|
|
423
460
|
// ----- @html-eslint/id-naming-convention -----
|
|
424
461
|
type HtmlEslintIdNamingConvention = [] | [("camelCase" | "snake_case" | "PascalCase" | "kebab-case" | "regex")] | [("camelCase" | "snake_case" | "PascalCase" | "kebab-case" | "regex"), {
|
|
@@ -431,7 +468,6 @@ type HtmlEslintIndent = [] | [("tab" | number)] | [("tab" | number), {
|
|
|
431
468
|
tagChildrenIndent?: {
|
|
432
469
|
[k: string]: number;
|
|
433
470
|
};
|
|
434
|
-
[k: string]: unknown | undefined;
|
|
435
471
|
}];
|
|
436
472
|
// ----- @html-eslint/max-element-depth -----
|
|
437
473
|
type HtmlEslintMaxElementDepth = [] | [{
|
|
@@ -443,7 +479,6 @@ type HtmlEslintNoExtraSpacingAttrs = [] | [{
|
|
|
443
479
|
disallowMissing?: boolean;
|
|
444
480
|
disallowTabs?: boolean;
|
|
445
481
|
enforceBeforeSelfClose?: boolean;
|
|
446
|
-
[k: string]: unknown | undefined;
|
|
447
482
|
}];
|
|
448
483
|
// ----- @html-eslint/no-extra-spacing-text -----
|
|
449
484
|
type HtmlEslintNoExtraSpacingText = [] | [{
|
|
@@ -458,17 +493,17 @@ type HtmlEslintNoRestrictedAttrValues = {
|
|
|
458
493
|
attrPatterns: string[];
|
|
459
494
|
attrValuePatterns: string[];
|
|
460
495
|
message?: string;
|
|
461
|
-
[k: string]: unknown | undefined;
|
|
462
496
|
}[];
|
|
463
497
|
// ----- @html-eslint/no-restricted-attrs -----
|
|
464
498
|
type HtmlEslintNoRestrictedAttrs = {
|
|
465
499
|
tagPatterns: string[];
|
|
466
500
|
attrPatterns: string[];
|
|
467
501
|
message?: string;
|
|
468
|
-
[k: string]: unknown | undefined;
|
|
469
502
|
}[];
|
|
470
503
|
// ----- @html-eslint/quotes -----
|
|
471
|
-
type HtmlEslintQuotes = [] | [("single" | "double")]
|
|
504
|
+
type HtmlEslintQuotes = [] | [("single" | "double")] | [("single" | "double"), {
|
|
505
|
+
enforceTemplatedAttrValue?: boolean;
|
|
506
|
+
}];
|
|
472
507
|
// ----- @html-eslint/require-attrs -----
|
|
473
508
|
type HtmlEslintRequireAttrs = {
|
|
474
509
|
tag: string;
|
|
@@ -488,14 +523,12 @@ type HtmlEslintRequireExplicitSize = [] | [{
|
|
|
488
523
|
// ----- @html-eslint/require-img-alt -----
|
|
489
524
|
type HtmlEslintRequireImgAlt = [] | [{
|
|
490
525
|
substitute?: string[];
|
|
491
|
-
[k: string]: unknown | undefined;
|
|
492
526
|
}];
|
|
493
527
|
// ----- @html-eslint/require-open-graph-protocol -----
|
|
494
528
|
type HtmlEslintRequireOpenGraphProtocol = [] | [string[]];
|
|
495
529
|
// ----- @html-eslint/sort-attrs -----
|
|
496
530
|
type HtmlEslintSortAttrs = [] | [{
|
|
497
531
|
priority?: string[];
|
|
498
|
-
[k: string]: unknown | undefined;
|
|
499
532
|
}];
|
|
500
533
|
// ----- @html-eslint/use-baseline -----
|
|
501
534
|
type HtmlEslintUseBaseline = [] | [{
|
|
@@ -506,42 +539,47 @@ type HtmlEslintUseBaseline = [] | [{
|
|
|
506
539
|
interface ImportsRules {
|
|
507
540
|
/**
|
|
508
541
|
* Enforce or ban the use of inline type-only markers for named imports.
|
|
509
|
-
* @see https://github.com/import-js/eslint-plugin-import/blob/v2.
|
|
542
|
+
* @see https://github.com/import-js/eslint-plugin-import/blob/v2.32.0/docs/rules/consistent-type-specifier-style.md
|
|
510
543
|
*/
|
|
511
544
|
"import/consistent-type-specifier-style"?: Linter.RuleEntry<ImportConsistentTypeSpecifierStyle>;
|
|
512
545
|
/**
|
|
513
546
|
* Ensure a default export is present, given a default import.
|
|
514
|
-
* @see https://github.com/import-js/eslint-plugin-import/blob/v2.
|
|
547
|
+
* @see https://github.com/import-js/eslint-plugin-import/blob/v2.32.0/docs/rules/default.md
|
|
515
548
|
*/
|
|
516
549
|
"import/default"?: Linter.RuleEntry<[]>;
|
|
517
550
|
/**
|
|
518
551
|
* Enforce a leading comment with the webpackChunkName for dynamic imports.
|
|
519
|
-
* @see https://github.com/import-js/eslint-plugin-import/blob/v2.
|
|
552
|
+
* @see https://github.com/import-js/eslint-plugin-import/blob/v2.32.0/docs/rules/dynamic-import-chunkname.md
|
|
520
553
|
*/
|
|
521
554
|
"import/dynamic-import-chunkname"?: Linter.RuleEntry<ImportDynamicImportChunkname>;
|
|
522
555
|
/**
|
|
556
|
+
* Enforce either using, or omitting, the `node:` protocol when importing Node.js builtin modules.
|
|
557
|
+
* @see https://github.com/import-js/eslint-plugin-import/blob/v2.32.0/docs/rules/enforce-node-protocol-usage.md
|
|
558
|
+
*/
|
|
559
|
+
"import/enforce-node-protocol-usage"?: Linter.RuleEntry<ImportEnforceNodeProtocolUsage>;
|
|
560
|
+
/**
|
|
523
561
|
* Forbid any invalid exports, i.e. re-export of the same name.
|
|
524
|
-
* @see https://github.com/import-js/eslint-plugin-import/blob/v2.
|
|
562
|
+
* @see https://github.com/import-js/eslint-plugin-import/blob/v2.32.0/docs/rules/export.md
|
|
525
563
|
*/
|
|
526
564
|
"import/export"?: Linter.RuleEntry<[]>;
|
|
527
565
|
/**
|
|
528
566
|
* Ensure all exports appear after other statements.
|
|
529
|
-
* @see https://github.com/import-js/eslint-plugin-import/blob/v2.
|
|
567
|
+
* @see https://github.com/import-js/eslint-plugin-import/blob/v2.32.0/docs/rules/exports-last.md
|
|
530
568
|
*/
|
|
531
569
|
"import/exports-last"?: Linter.RuleEntry<[]>;
|
|
532
570
|
/**
|
|
533
571
|
* Ensure consistent use of file extension within the import path.
|
|
534
|
-
* @see https://github.com/import-js/eslint-plugin-import/blob/v2.
|
|
572
|
+
* @see https://github.com/import-js/eslint-plugin-import/blob/v2.32.0/docs/rules/extensions.md
|
|
535
573
|
*/
|
|
536
574
|
"import/extensions"?: Linter.RuleEntry<ImportExtensions>;
|
|
537
575
|
/**
|
|
538
576
|
* Ensure all imports appear before other statements.
|
|
539
|
-
* @see https://github.com/import-js/eslint-plugin-import/blob/v2.
|
|
577
|
+
* @see https://github.com/import-js/eslint-plugin-import/blob/v2.32.0/docs/rules/first.md
|
|
540
578
|
*/
|
|
541
579
|
"import/first"?: Linter.RuleEntry<ImportFirst>;
|
|
542
580
|
/**
|
|
543
581
|
* Prefer named exports to be grouped together in a single export declaration
|
|
544
|
-
* @see https://github.com/import-js/eslint-plugin-import/blob/v2.
|
|
582
|
+
* @see https://github.com/import-js/eslint-plugin-import/blob/v2.32.0/docs/rules/group-exports.md
|
|
545
583
|
*/
|
|
546
584
|
"import/group-exports"?: Linter.RuleEntry<[]>;
|
|
547
585
|
/**
|
|
@@ -552,77 +590,77 @@ interface ImportsRules {
|
|
|
552
590
|
"import/imports-first"?: Linter.RuleEntry<ImportImportsFirst>;
|
|
553
591
|
/**
|
|
554
592
|
* Enforce the maximum number of dependencies a module can have.
|
|
555
|
-
* @see https://github.com/import-js/eslint-plugin-import/blob/v2.
|
|
593
|
+
* @see https://github.com/import-js/eslint-plugin-import/blob/v2.32.0/docs/rules/max-dependencies.md
|
|
556
594
|
*/
|
|
557
595
|
"import/max-dependencies"?: Linter.RuleEntry<ImportMaxDependencies>;
|
|
558
596
|
/**
|
|
559
597
|
* Ensure named imports correspond to a named export in the remote file.
|
|
560
|
-
* @see https://github.com/import-js/eslint-plugin-import/blob/v2.
|
|
598
|
+
* @see https://github.com/import-js/eslint-plugin-import/blob/v2.32.0/docs/rules/named.md
|
|
561
599
|
*/
|
|
562
600
|
"import/named"?: Linter.RuleEntry<ImportNamed>;
|
|
563
601
|
/**
|
|
564
602
|
* Ensure imported namespaces contain dereferenced properties as they are dereferenced.
|
|
565
|
-
* @see https://github.com/import-js/eslint-plugin-import/blob/v2.
|
|
603
|
+
* @see https://github.com/import-js/eslint-plugin-import/blob/v2.32.0/docs/rules/namespace.md
|
|
566
604
|
*/
|
|
567
605
|
"import/namespace"?: Linter.RuleEntry<ImportNamespace>;
|
|
568
606
|
/**
|
|
569
607
|
* Enforce a newline after import statements.
|
|
570
|
-
* @see https://github.com/import-js/eslint-plugin-import/blob/v2.
|
|
608
|
+
* @see https://github.com/import-js/eslint-plugin-import/blob/v2.32.0/docs/rules/newline-after-import.md
|
|
571
609
|
*/
|
|
572
610
|
"import/newline-after-import"?: Linter.RuleEntry<ImportNewlineAfterImport>;
|
|
573
611
|
/**
|
|
574
612
|
* Forbid import of modules using absolute paths.
|
|
575
|
-
* @see https://github.com/import-js/eslint-plugin-import/blob/v2.
|
|
613
|
+
* @see https://github.com/import-js/eslint-plugin-import/blob/v2.32.0/docs/rules/no-absolute-path.md
|
|
576
614
|
*/
|
|
577
615
|
"import/no-absolute-path"?: Linter.RuleEntry<ImportNoAbsolutePath>;
|
|
578
616
|
/**
|
|
579
617
|
* Forbid AMD `require` and `define` calls.
|
|
580
|
-
* @see https://github.com/import-js/eslint-plugin-import/blob/v2.
|
|
618
|
+
* @see https://github.com/import-js/eslint-plugin-import/blob/v2.32.0/docs/rules/no-amd.md
|
|
581
619
|
*/
|
|
582
620
|
"import/no-amd"?: Linter.RuleEntry<[]>;
|
|
583
621
|
/**
|
|
584
622
|
* Forbid anonymous values as default exports.
|
|
585
|
-
* @see https://github.com/import-js/eslint-plugin-import/blob/v2.
|
|
623
|
+
* @see https://github.com/import-js/eslint-plugin-import/blob/v2.32.0/docs/rules/no-anonymous-default-export.md
|
|
586
624
|
*/
|
|
587
625
|
"import/no-anonymous-default-export"?: Linter.RuleEntry<ImportNoAnonymousDefaultExport>;
|
|
588
626
|
/**
|
|
589
627
|
* Forbid CommonJS `require` calls and `module.exports` or `exports.*`.
|
|
590
|
-
* @see https://github.com/import-js/eslint-plugin-import/blob/v2.
|
|
628
|
+
* @see https://github.com/import-js/eslint-plugin-import/blob/v2.32.0/docs/rules/no-commonjs.md
|
|
591
629
|
*/
|
|
592
630
|
"import/no-commonjs"?: Linter.RuleEntry<ImportNoCommonjs>;
|
|
593
631
|
/**
|
|
594
632
|
* Forbid a module from importing a module with a dependency path back to itself.
|
|
595
|
-
* @see https://github.com/import-js/eslint-plugin-import/blob/v2.
|
|
633
|
+
* @see https://github.com/import-js/eslint-plugin-import/blob/v2.32.0/docs/rules/no-cycle.md
|
|
596
634
|
*/
|
|
597
635
|
"import/no-cycle"?: Linter.RuleEntry<ImportNoCycle>;
|
|
598
636
|
/**
|
|
599
637
|
* Forbid default exports.
|
|
600
|
-
* @see https://github.com/import-js/eslint-plugin-import/blob/v2.
|
|
638
|
+
* @see https://github.com/import-js/eslint-plugin-import/blob/v2.32.0/docs/rules/no-default-export.md
|
|
601
639
|
*/
|
|
602
640
|
"import/no-default-export"?: Linter.RuleEntry<[]>;
|
|
603
641
|
/**
|
|
604
642
|
* Forbid imported names marked with `@deprecated` documentation tag.
|
|
605
|
-
* @see https://github.com/import-js/eslint-plugin-import/blob/v2.
|
|
643
|
+
* @see https://github.com/import-js/eslint-plugin-import/blob/v2.32.0/docs/rules/no-deprecated.md
|
|
606
644
|
*/
|
|
607
645
|
"import/no-deprecated"?: Linter.RuleEntry<[]>;
|
|
608
646
|
/**
|
|
609
647
|
* Forbid repeated import of the same module in multiple places.
|
|
610
|
-
* @see https://github.com/import-js/eslint-plugin-import/blob/v2.
|
|
648
|
+
* @see https://github.com/import-js/eslint-plugin-import/blob/v2.32.0/docs/rules/no-duplicates.md
|
|
611
649
|
*/
|
|
612
650
|
"import/no-duplicates"?: Linter.RuleEntry<ImportNoDuplicates>;
|
|
613
651
|
/**
|
|
614
652
|
* Forbid `require()` calls with expressions.
|
|
615
|
-
* @see https://github.com/import-js/eslint-plugin-import/blob/v2.
|
|
653
|
+
* @see https://github.com/import-js/eslint-plugin-import/blob/v2.32.0/docs/rules/no-dynamic-require.md
|
|
616
654
|
*/
|
|
617
655
|
"import/no-dynamic-require"?: Linter.RuleEntry<ImportNoDynamicRequire>;
|
|
618
656
|
/**
|
|
619
657
|
* Forbid empty named import blocks.
|
|
620
|
-
* @see https://github.com/import-js/eslint-plugin-import/blob/v2.
|
|
658
|
+
* @see https://github.com/import-js/eslint-plugin-import/blob/v2.32.0/docs/rules/no-empty-named-blocks.md
|
|
621
659
|
*/
|
|
622
660
|
"import/no-empty-named-blocks"?: Linter.RuleEntry<[]>;
|
|
623
661
|
/**
|
|
624
662
|
* Forbid the use of extraneous packages.
|
|
625
|
-
* @see https://github.com/import-js/eslint-plugin-import/blob/v2.
|
|
663
|
+
* @see https://github.com/import-js/eslint-plugin-import/blob/v2.32.0/docs/rules/no-extraneous-dependencies.md
|
|
626
664
|
*/
|
|
627
665
|
"import/no-extraneous-dependencies"?: Linter.RuleEntry<ImportNoExtraneousDependencies>;
|
|
628
666
|
/**
|
|
@@ -631,102 +669,102 @@ interface ImportsRules {
|
|
|
631
669
|
"import/no-import-module-exports"?: Linter.RuleEntry<ImportNoImportModuleExports>;
|
|
632
670
|
/**
|
|
633
671
|
* Forbid importing the submodules of other modules.
|
|
634
|
-
* @see https://github.com/import-js/eslint-plugin-import/blob/v2.
|
|
672
|
+
* @see https://github.com/import-js/eslint-plugin-import/blob/v2.32.0/docs/rules/no-internal-modules.md
|
|
635
673
|
*/
|
|
636
674
|
"import/no-internal-modules"?: Linter.RuleEntry<ImportNoInternalModules>;
|
|
637
675
|
/**
|
|
638
676
|
* Forbid the use of mutable exports with `var` or `let`.
|
|
639
|
-
* @see https://github.com/import-js/eslint-plugin-import/blob/v2.
|
|
677
|
+
* @see https://github.com/import-js/eslint-plugin-import/blob/v2.32.0/docs/rules/no-mutable-exports.md
|
|
640
678
|
*/
|
|
641
679
|
"import/no-mutable-exports"?: Linter.RuleEntry<[]>;
|
|
642
680
|
/**
|
|
643
681
|
* Forbid use of exported name as identifier of default export.
|
|
644
|
-
* @see https://github.com/import-js/eslint-plugin-import/blob/v2.
|
|
682
|
+
* @see https://github.com/import-js/eslint-plugin-import/blob/v2.32.0/docs/rules/no-named-as-default.md
|
|
645
683
|
*/
|
|
646
684
|
"import/no-named-as-default"?: Linter.RuleEntry<[]>;
|
|
647
685
|
/**
|
|
648
686
|
* Forbid use of exported name as property of default export.
|
|
649
|
-
* @see https://github.com/import-js/eslint-plugin-import/blob/v2.
|
|
687
|
+
* @see https://github.com/import-js/eslint-plugin-import/blob/v2.32.0/docs/rules/no-named-as-default-member.md
|
|
650
688
|
*/
|
|
651
689
|
"import/no-named-as-default-member"?: Linter.RuleEntry<[]>;
|
|
652
690
|
/**
|
|
653
691
|
* Forbid named default exports.
|
|
654
|
-
* @see https://github.com/import-js/eslint-plugin-import/blob/v2.
|
|
692
|
+
* @see https://github.com/import-js/eslint-plugin-import/blob/v2.32.0/docs/rules/no-named-default.md
|
|
655
693
|
*/
|
|
656
694
|
"import/no-named-default"?: Linter.RuleEntry<[]>;
|
|
657
695
|
/**
|
|
658
696
|
* Forbid named exports.
|
|
659
|
-
* @see https://github.com/import-js/eslint-plugin-import/blob/v2.
|
|
697
|
+
* @see https://github.com/import-js/eslint-plugin-import/blob/v2.32.0/docs/rules/no-named-export.md
|
|
660
698
|
*/
|
|
661
699
|
"import/no-named-export"?: Linter.RuleEntry<[]>;
|
|
662
700
|
/**
|
|
663
701
|
* Forbid namespace (a.k.a. "wildcard" `*`) imports.
|
|
664
|
-
* @see https://github.com/import-js/eslint-plugin-import/blob/v2.
|
|
702
|
+
* @see https://github.com/import-js/eslint-plugin-import/blob/v2.32.0/docs/rules/no-namespace.md
|
|
665
703
|
*/
|
|
666
704
|
"import/no-namespace"?: Linter.RuleEntry<ImportNoNamespace>;
|
|
667
705
|
/**
|
|
668
706
|
* Forbid Node.js builtin modules.
|
|
669
|
-
* @see https://github.com/import-js/eslint-plugin-import/blob/v2.
|
|
707
|
+
* @see https://github.com/import-js/eslint-plugin-import/blob/v2.32.0/docs/rules/no-nodejs-modules.md
|
|
670
708
|
*/
|
|
671
709
|
"import/no-nodejs-modules"?: Linter.RuleEntry<ImportNoNodejsModules>;
|
|
672
710
|
/**
|
|
673
711
|
* Forbid importing packages through relative paths.
|
|
674
|
-
* @see https://github.com/import-js/eslint-plugin-import/blob/v2.
|
|
712
|
+
* @see https://github.com/import-js/eslint-plugin-import/blob/v2.32.0/docs/rules/no-relative-packages.md
|
|
675
713
|
*/
|
|
676
714
|
"import/no-relative-packages"?: Linter.RuleEntry<ImportNoRelativePackages>;
|
|
677
715
|
/**
|
|
678
716
|
* Forbid importing modules from parent directories.
|
|
679
|
-
* @see https://github.com/import-js/eslint-plugin-import/blob/v2.
|
|
717
|
+
* @see https://github.com/import-js/eslint-plugin-import/blob/v2.32.0/docs/rules/no-relative-parent-imports.md
|
|
680
718
|
*/
|
|
681
719
|
"import/no-relative-parent-imports"?: Linter.RuleEntry<ImportNoRelativeParentImports>;
|
|
682
720
|
/**
|
|
683
721
|
* Enforce which files can be imported in a given folder.
|
|
684
|
-
* @see https://github.com/import-js/eslint-plugin-import/blob/v2.
|
|
722
|
+
* @see https://github.com/import-js/eslint-plugin-import/blob/v2.32.0/docs/rules/no-restricted-paths.md
|
|
685
723
|
*/
|
|
686
724
|
"import/no-restricted-paths"?: Linter.RuleEntry<ImportNoRestrictedPaths>;
|
|
687
725
|
/**
|
|
688
726
|
* Forbid a module from importing itself.
|
|
689
|
-
* @see https://github.com/import-js/eslint-plugin-import/blob/v2.
|
|
727
|
+
* @see https://github.com/import-js/eslint-plugin-import/blob/v2.32.0/docs/rules/no-self-import.md
|
|
690
728
|
*/
|
|
691
729
|
"import/no-self-import"?: Linter.RuleEntry<[]>;
|
|
692
730
|
/**
|
|
693
731
|
* Forbid unassigned imports
|
|
694
|
-
* @see https://github.com/import-js/eslint-plugin-import/blob/v2.
|
|
732
|
+
* @see https://github.com/import-js/eslint-plugin-import/blob/v2.32.0/docs/rules/no-unassigned-import.md
|
|
695
733
|
*/
|
|
696
734
|
"import/no-unassigned-import"?: Linter.RuleEntry<ImportNoUnassignedImport>;
|
|
697
735
|
/**
|
|
698
736
|
* Ensure imports point to a file/module that can be resolved.
|
|
699
|
-
* @see https://github.com/import-js/eslint-plugin-import/blob/v2.
|
|
737
|
+
* @see https://github.com/import-js/eslint-plugin-import/blob/v2.32.0/docs/rules/no-unresolved.md
|
|
700
738
|
*/
|
|
701
739
|
"import/no-unresolved"?: Linter.RuleEntry<ImportNoUnresolved>;
|
|
702
740
|
/**
|
|
703
741
|
* Forbid modules without exports, or exports without matching import in another module.
|
|
704
|
-
* @see https://github.com/import-js/eslint-plugin-import/blob/v2.
|
|
742
|
+
* @see https://github.com/import-js/eslint-plugin-import/blob/v2.32.0/docs/rules/no-unused-modules.md
|
|
705
743
|
*/
|
|
706
744
|
"import/no-unused-modules"?: Linter.RuleEntry<ImportNoUnusedModules>;
|
|
707
745
|
/**
|
|
708
746
|
* Forbid unnecessary path segments in import and require statements.
|
|
709
|
-
* @see https://github.com/import-js/eslint-plugin-import/blob/v2.
|
|
747
|
+
* @see https://github.com/import-js/eslint-plugin-import/blob/v2.32.0/docs/rules/no-useless-path-segments.md
|
|
710
748
|
*/
|
|
711
749
|
"import/no-useless-path-segments"?: Linter.RuleEntry<ImportNoUselessPathSegments>;
|
|
712
750
|
/**
|
|
713
751
|
* Forbid webpack loader syntax in imports.
|
|
714
|
-
* @see https://github.com/import-js/eslint-plugin-import/blob/v2.
|
|
752
|
+
* @see https://github.com/import-js/eslint-plugin-import/blob/v2.32.0/docs/rules/no-webpack-loader-syntax.md
|
|
715
753
|
*/
|
|
716
754
|
"import/no-webpack-loader-syntax"?: Linter.RuleEntry<[]>;
|
|
717
755
|
/**
|
|
718
756
|
* Enforce a convention in module import order.
|
|
719
|
-
* @see https://github.com/import-js/eslint-plugin-import/blob/v2.
|
|
757
|
+
* @see https://github.com/import-js/eslint-plugin-import/blob/v2.32.0/docs/rules/order.md
|
|
720
758
|
*/
|
|
721
759
|
"import/order"?: Linter.RuleEntry<ImportOrder>;
|
|
722
760
|
/**
|
|
723
761
|
* Prefer a default export if module exports a single name or multiple names.
|
|
724
|
-
* @see https://github.com/import-js/eslint-plugin-import/blob/v2.
|
|
762
|
+
* @see https://github.com/import-js/eslint-plugin-import/blob/v2.32.0/docs/rules/prefer-default-export.md
|
|
725
763
|
*/
|
|
726
764
|
"import/prefer-default-export"?: Linter.RuleEntry<ImportPreferDefaultExport>;
|
|
727
765
|
/**
|
|
728
766
|
* Forbid potentially ambiguous parse goal (`script` vs. `module`).
|
|
729
|
-
* @see https://github.com/import-js/eslint-plugin-import/blob/v2.
|
|
767
|
+
* @see https://github.com/import-js/eslint-plugin-import/blob/v2.32.0/docs/rules/unambiguous.md
|
|
730
768
|
*/
|
|
731
769
|
"import/unambiguous"?: Linter.RuleEntry<[]>;
|
|
732
770
|
/**
|
|
@@ -765,6 +803,8 @@ type ImportDynamicImportChunkname = [] | [{
|
|
|
765
803
|
webpackChunknameFormat?: string;
|
|
766
804
|
[k: string]: unknown | undefined;
|
|
767
805
|
}];
|
|
806
|
+
// ----- import/enforce-node-protocol-usage -----
|
|
807
|
+
type ImportEnforceNodeProtocolUsage = [("always" | "never")];
|
|
768
808
|
// ----- import/extensions -----
|
|
769
809
|
type ImportExtensions = ([] | [("always" | "ignorePackages" | "never")] | [] | [("always" | "ignorePackages" | "never")] | [("always" | "ignorePackages" | "never"), {
|
|
770
810
|
pattern?: {
|
|
@@ -772,6 +812,13 @@ type ImportExtensions = ([] | [("always" | "ignorePackages" | "never")] | [] | [
|
|
|
772
812
|
};
|
|
773
813
|
checkTypeImports?: boolean;
|
|
774
814
|
ignorePackages?: boolean;
|
|
815
|
+
pathGroupOverrides?: {
|
|
816
|
+
pattern: string;
|
|
817
|
+
patternOptions?: {
|
|
818
|
+
[k: string]: unknown | undefined;
|
|
819
|
+
};
|
|
820
|
+
action: ("enforce" | "ignore");
|
|
821
|
+
}[];
|
|
775
822
|
[k: string]: unknown | undefined;
|
|
776
823
|
}] | [] | [{
|
|
777
824
|
pattern?: {
|
|
@@ -779,6 +826,13 @@ type ImportExtensions = ([] | [("always" | "ignorePackages" | "never")] | [] | [
|
|
|
779
826
|
};
|
|
780
827
|
checkTypeImports?: boolean;
|
|
781
828
|
ignorePackages?: boolean;
|
|
829
|
+
pathGroupOverrides?: {
|
|
830
|
+
pattern: string;
|
|
831
|
+
patternOptions?: {
|
|
832
|
+
[k: string]: unknown | undefined;
|
|
833
|
+
};
|
|
834
|
+
action: ("enforce" | "ignore");
|
|
835
|
+
}[];
|
|
782
836
|
[k: string]: unknown | undefined;
|
|
783
837
|
}] | [] | [{
|
|
784
838
|
[k: string]: ("always" | "ignorePackages" | "never");
|
|
@@ -944,7 +998,7 @@ type ImportNoUselessPathSegments = [] | [{
|
|
|
944
998
|
}];
|
|
945
999
|
// ----- import/order -----
|
|
946
1000
|
type ImportOrder = [] | [{
|
|
947
|
-
groups?: unknown[];
|
|
1001
|
+
groups?: (("builtin" | "external" | "internal" | "unknown" | "parent" | "sibling" | "index" | "object" | "type") | ("builtin" | "external" | "internal" | "unknown" | "parent" | "sibling" | "index" | "object" | "type")[])[];
|
|
948
1002
|
pathGroupsExcludedImportTypes?: unknown[];
|
|
949
1003
|
distinctGroup?: boolean;
|
|
950
1004
|
pathGroups?: {
|
|
@@ -956,6 +1010,9 @@ type ImportOrder = [] | [{
|
|
|
956
1010
|
position?: ("after" | "before");
|
|
957
1011
|
}[];
|
|
958
1012
|
"newlines-between"?: ("ignore" | "always" | "always-and-inside-groups" | "never");
|
|
1013
|
+
"newlines-between-types"?: ("ignore" | "always" | "always-and-inside-groups" | "never");
|
|
1014
|
+
consolidateIslands?: ("inside-groups" | "never");
|
|
1015
|
+
sortTypesGroup?: boolean;
|
|
959
1016
|
named?: (boolean | {
|
|
960
1017
|
enabled?: boolean;
|
|
961
1018
|
import?: boolean;
|
|
@@ -1503,7 +1560,7 @@ interface JavascriptRules {
|
|
|
1503
1560
|
*/
|
|
1504
1561
|
"no-console"?: Linter.RuleEntry<NoConsole>;
|
|
1505
1562
|
/**
|
|
1506
|
-
* Disallow reassigning `const` variables
|
|
1563
|
+
* Disallow reassigning `const`, `using`, and `await using` variables
|
|
1507
1564
|
* @see https://eslint.org/docs/latest/rules/no-const-assign
|
|
1508
1565
|
*/
|
|
1509
1566
|
"no-const-assign"?: Linter.RuleEntry<[]>;
|
|
@@ -3386,6 +3443,7 @@ type NoConstantCondition = [] | [{
|
|
|
3386
3443
|
// ----- no-duplicate-imports -----
|
|
3387
3444
|
type NoDuplicateImports = [] | [{
|
|
3388
3445
|
includeExports?: boolean;
|
|
3446
|
+
allowSeparateTypeImports?: boolean;
|
|
3389
3447
|
}];
|
|
3390
3448
|
// ----- no-else-return -----
|
|
3391
3449
|
type NoElseReturn = [] | [{
|
|
@@ -4427,6 +4485,7 @@ type JsdocLinesBeforeBlock = [] | [{
|
|
|
4427
4485
|
checkBlockStarts?: boolean;
|
|
4428
4486
|
excludedTags?: string[];
|
|
4429
4487
|
ignoreSameLine?: boolean;
|
|
4488
|
+
ignoreSingleLines?: boolean;
|
|
4430
4489
|
lines?: number;
|
|
4431
4490
|
}];
|
|
4432
4491
|
// ----- jsdoc/match-description -----
|
|
@@ -4457,8 +4516,8 @@ type JsdocMatchName = [] | [{
|
|
|
4457
4516
|
context?: string;
|
|
4458
4517
|
disallowName?: string;
|
|
4459
4518
|
message?: string;
|
|
4519
|
+
replacement?: string;
|
|
4460
4520
|
tags?: string[];
|
|
4461
|
-
[k: string]: unknown | undefined;
|
|
4462
4521
|
}[];
|
|
4463
4522
|
}];
|
|
4464
4523
|
// ----- jsdoc/multiline-blocks -----
|
|
@@ -4470,6 +4529,7 @@ type JsdocMultilineBlocks = [] | [{
|
|
|
4470
4529
|
noMultilineBlocks?: boolean;
|
|
4471
4530
|
noSingleLineBlocks?: boolean;
|
|
4472
4531
|
noZeroLineText?: boolean;
|
|
4532
|
+
requireSingleLineUnderCount?: number;
|
|
4473
4533
|
singleLineTags?: string[];
|
|
4474
4534
|
}];
|
|
4475
4535
|
// ----- jsdoc/no-bad-blocks -----
|
|
@@ -4531,7 +4591,6 @@ type JsdocRequireAsteriskPrefix = [] | [("always" | "never" | "any")] | [("alway
|
|
|
4531
4591
|
always?: string[];
|
|
4532
4592
|
any?: string[];
|
|
4533
4593
|
never?: string[];
|
|
4534
|
-
[k: string]: unknown | undefined;
|
|
4535
4594
|
};
|
|
4536
4595
|
}];
|
|
4537
4596
|
// ----- jsdoc/require-description -----
|
|
@@ -4741,7 +4800,6 @@ type JsdocSortTags = [] | [{
|
|
|
4741
4800
|
reportTagGroupSpacing?: boolean;
|
|
4742
4801
|
tagSequence?: {
|
|
4743
4802
|
tags?: string[];
|
|
4744
|
-
[k: string]: unknown | undefined;
|
|
4745
4803
|
}[];
|
|
4746
4804
|
}];
|
|
4747
4805
|
// ----- jsdoc/tag-lines -----
|
|
@@ -5270,6 +5328,11 @@ interface MarkdownRules {
|
|
|
5270
5328
|
*/
|
|
5271
5329
|
"markdown/heading-increment"?: Linter.RuleEntry<[]>;
|
|
5272
5330
|
/**
|
|
5331
|
+
* Disallow bare URLs
|
|
5332
|
+
* @see https://github.com/eslint/markdown/blob/main/docs/rules/no-bare-urls.md
|
|
5333
|
+
*/
|
|
5334
|
+
"markdown/no-bare-urls"?: Linter.RuleEntry<[]>;
|
|
5335
|
+
/**
|
|
5273
5336
|
* Disallow duplicate definitions
|
|
5274
5337
|
* @see https://github.com/eslint/markdown/blob/main/docs/rules/no-duplicate-definitions.md
|
|
5275
5338
|
*/
|
|
@@ -5278,12 +5341,12 @@ interface MarkdownRules {
|
|
|
5278
5341
|
* Disallow duplicate headings in the same document
|
|
5279
5342
|
* @see https://github.com/eslint/markdown/blob/main/docs/rules/no-duplicate-headings.md
|
|
5280
5343
|
*/
|
|
5281
|
-
"markdown/no-duplicate-headings"?: Linter.RuleEntry<
|
|
5344
|
+
"markdown/no-duplicate-headings"?: Linter.RuleEntry<MarkdownNoDuplicateHeadings>;
|
|
5282
5345
|
/**
|
|
5283
5346
|
* Disallow empty definitions
|
|
5284
5347
|
* @see https://github.com/eslint/markdown/blob/main/docs/rules/no-empty-definitions.md
|
|
5285
5348
|
*/
|
|
5286
|
-
"markdown/no-empty-definitions"?: Linter.RuleEntry<
|
|
5349
|
+
"markdown/no-empty-definitions"?: Linter.RuleEntry<MarkdownNoEmptyDefinitions>;
|
|
5287
5350
|
/**
|
|
5288
5351
|
* Disallow empty images
|
|
5289
5352
|
* @see https://github.com/eslint/markdown/blob/main/docs/rules/no-empty-images.md
|
|
@@ -5315,11 +5378,26 @@ interface MarkdownRules {
|
|
|
5315
5378
|
*/
|
|
5316
5379
|
"markdown/no-missing-label-refs"?: Linter.RuleEntry<[]>;
|
|
5317
5380
|
/**
|
|
5381
|
+
* Disallow link fragments that do not reference valid headings
|
|
5382
|
+
* @see https://github.com/eslint/markdown/blob/main/docs/rules/no-missing-link-fragments.md
|
|
5383
|
+
*/
|
|
5384
|
+
"markdown/no-missing-link-fragments"?: Linter.RuleEntry<MarkdownNoMissingLinkFragments>;
|
|
5385
|
+
/**
|
|
5318
5386
|
* Disallow multiple H1 headings in the same document
|
|
5319
5387
|
* @see https://github.com/eslint/markdown/blob/main/docs/rules/no-multiple-h1.md
|
|
5320
5388
|
*/
|
|
5321
5389
|
"markdown/no-multiple-h1"?: Linter.RuleEntry<MarkdownNoMultipleH1>;
|
|
5322
5390
|
/**
|
|
5391
|
+
* Disallow reversed link and image syntax
|
|
5392
|
+
* @see https://github.com/eslint/markdown/blob/main/docs/rules/no-reversed-media-syntax.md
|
|
5393
|
+
*/
|
|
5394
|
+
"markdown/no-reversed-media-syntax"?: Linter.RuleEntry<[]>;
|
|
5395
|
+
/**
|
|
5396
|
+
* Disallow unused definitions
|
|
5397
|
+
* @see https://github.com/eslint/markdown/blob/main/docs/rules/no-unused-definitions.md
|
|
5398
|
+
*/
|
|
5399
|
+
"markdown/no-unused-definitions"?: Linter.RuleEntry<MarkdownNoUnusedDefinitions>;
|
|
5400
|
+
/**
|
|
5323
5401
|
* Require alternative text for images
|
|
5324
5402
|
* @see https://github.com/eslint/markdown/blob/main/docs/rules/require-alt-text.md
|
|
5325
5403
|
*/
|
|
@@ -5340,14 +5418,34 @@ type MarkdownNoDuplicateDefinitions = [] | [{
|
|
|
5340
5418
|
allowDefinitions?: string[];
|
|
5341
5419
|
allowFootnoteDefinitions?: string[];
|
|
5342
5420
|
}];
|
|
5421
|
+
// ----- markdown/no-duplicate-headings -----
|
|
5422
|
+
type MarkdownNoDuplicateHeadings = [] | [{
|
|
5423
|
+
checkSiblingsOnly?: boolean;
|
|
5424
|
+
}];
|
|
5425
|
+
// ----- markdown/no-empty-definitions -----
|
|
5426
|
+
type MarkdownNoEmptyDefinitions = [] | [{
|
|
5427
|
+
allowDefinitions?: string[];
|
|
5428
|
+
allowFootnoteDefinitions?: string[];
|
|
5429
|
+
checkFootnoteDefinitions?: boolean;
|
|
5430
|
+
}];
|
|
5343
5431
|
// ----- markdown/no-html -----
|
|
5344
5432
|
type MarkdownNoHtml = [] | [{
|
|
5345
5433
|
allowed?: string[];
|
|
5346
5434
|
}];
|
|
5435
|
+
// ----- markdown/no-missing-link-fragments -----
|
|
5436
|
+
type MarkdownNoMissingLinkFragments = [] | [{
|
|
5437
|
+
ignoreCase?: boolean;
|
|
5438
|
+
allowPattern?: string;
|
|
5439
|
+
}];
|
|
5347
5440
|
// ----- markdown/no-multiple-h1 -----
|
|
5348
5441
|
type MarkdownNoMultipleH1 = [] | [{
|
|
5349
5442
|
frontmatterTitle?: string;
|
|
5350
5443
|
}];
|
|
5444
|
+
// ----- markdown/no-unused-definitions -----
|
|
5445
|
+
type MarkdownNoUnusedDefinitions = [] | [{
|
|
5446
|
+
allowDefinitions?: string[];
|
|
5447
|
+
allowFootnoteDefinitions?: string[];
|
|
5448
|
+
}];
|
|
5351
5449
|
//#endregion
|
|
5352
5450
|
//#region src/types/gens/prettier.d.ts
|
|
5353
5451
|
/* eslint-disable */
|
|
@@ -10505,6 +10603,7 @@ interface _TypescriptEslintNamingConvention_MatchRegexConfig {
|
|
|
10505
10603
|
}
|
|
10506
10604
|
// ----- @typescript-eslint/no-base-to-string -----
|
|
10507
10605
|
type TypescriptEslintNoBaseToString = [] | [{
|
|
10606
|
+
checkUnknown?: boolean;
|
|
10508
10607
|
ignoredTypeNames?: string[];
|
|
10509
10608
|
}];
|
|
10510
10609
|
// ----- @typescript-eslint/no-confusing-void-expression -----
|
|
@@ -10828,7 +10927,6 @@ type TypescriptEslintPreferDestructuring = [] | [({
|
|
|
10828
10927
|
}), {
|
|
10829
10928
|
enforceForDeclarationWithTypeAnnotation?: boolean;
|
|
10830
10929
|
enforceForRenamedProperties?: boolean;
|
|
10831
|
-
[k: string]: unknown | undefined;
|
|
10832
10930
|
}];
|
|
10833
10931
|
// ----- @typescript-eslint/prefer-literal-enum-member -----
|
|
10834
10932
|
type TypescriptEslintPreferLiteralEnumMember = [] | [{
|
|
@@ -10846,7 +10944,6 @@ type TypescriptEslintPreferNullishCoalescing = [] | [{
|
|
|
10846
10944
|
boolean?: boolean;
|
|
10847
10945
|
number?: boolean;
|
|
10848
10946
|
string?: boolean;
|
|
10849
|
-
[k: string]: unknown | undefined;
|
|
10850
10947
|
} | true);
|
|
10851
10948
|
ignoreTernaryTests?: boolean;
|
|
10852
10949
|
}];
|
|
@@ -11888,6 +11985,11 @@ interface VitestRules {
|
|
|
11888
11985
|
*/
|
|
11889
11986
|
"vitest/consistent-test-it"?: Linter.RuleEntry<VitestConsistentTestIt>;
|
|
11890
11987
|
/**
|
|
11988
|
+
* enforce using vitest or vi but not both
|
|
11989
|
+
* @see https://github.com/vitest-dev/eslint-plugin-vitest/blob/main/docs/rules/consistent-vitest-vi.md
|
|
11990
|
+
*/
|
|
11991
|
+
"vitest/consistent-vitest-vi"?: Linter.RuleEntry<VitestConsistentVitestVi>;
|
|
11992
|
+
/**
|
|
11891
11993
|
* enforce having expectation in test body
|
|
11892
11994
|
* @see https://github.com/vitest-dev/eslint-plugin-vitest/blob/main/docs/rules/expect-expect.md
|
|
11893
11995
|
*/
|
|
@@ -11964,6 +12066,11 @@ interface VitestRules {
|
|
|
11964
12066
|
*/
|
|
11965
12067
|
"vitest/no-import-node-test"?: Linter.RuleEntry<[]>;
|
|
11966
12068
|
/**
|
|
12069
|
+
* disallow importing Vitest globals
|
|
12070
|
+
* @see https://github.com/vitest-dev/eslint-plugin-vitest/blob/main/docs/rules/no-importing-vitest-globals.md
|
|
12071
|
+
*/
|
|
12072
|
+
"vitest/no-importing-vitest-globals"?: Linter.RuleEntry<[]>;
|
|
12073
|
+
/**
|
|
11967
12074
|
* disallow string interpolation in snapshots
|
|
11968
12075
|
* @see https://github.com/vitest-dev/eslint-plugin-vitest/blob/main/docs/rules/no-interpolation-in-snapshots.md
|
|
11969
12076
|
*/
|
|
@@ -11994,7 +12101,7 @@ interface VitestRules {
|
|
|
11994
12101
|
*/
|
|
11995
12102
|
"vitest/no-standalone-expect"?: Linter.RuleEntry<VitestNoStandaloneExpect>;
|
|
11996
12103
|
/**
|
|
11997
|
-
*
|
|
12104
|
+
* disallow using the `f` and `x` prefixes in favour of `.only` and `.skip`
|
|
11998
12105
|
* @see https://github.com/vitest-dev/eslint-plugin-vitest/blob/main/docs/rules/no-test-prefixes.md
|
|
11999
12106
|
*/
|
|
12000
12107
|
"vitest/no-test-prefixes"?: Linter.RuleEntry<[]>;
|
|
@@ -12044,6 +12151,16 @@ interface VitestRules {
|
|
|
12044
12151
|
*/
|
|
12045
12152
|
"vitest/padding-around-test-blocks"?: Linter.RuleEntry<[]>;
|
|
12046
12153
|
/**
|
|
12154
|
+
* enforce using `toBeCalledOnce()` or `toHaveBeenCalledOnce()`
|
|
12155
|
+
* @see https://github.com/vitest-dev/eslint-plugin-vitest/blob/main/docs/rules/prefer-called-once.md
|
|
12156
|
+
*/
|
|
12157
|
+
"vitest/prefer-called-once"?: Linter.RuleEntry<[]>;
|
|
12158
|
+
/**
|
|
12159
|
+
* enforce using `toBeCalledTimes(1)` or `toHaveBeenCalledTimes(1)`
|
|
12160
|
+
* @see https://github.com/vitest-dev/eslint-plugin-vitest/blob/main/docs/rules/prefer-called-times.md
|
|
12161
|
+
*/
|
|
12162
|
+
"vitest/prefer-called-times"?: Linter.RuleEntry<[]>;
|
|
12163
|
+
/**
|
|
12047
12164
|
* enforce using `toBeCalledWith()` or `toHaveBeenCalledWith()`
|
|
12048
12165
|
* @see https://github.com/vitest-dev/eslint-plugin-vitest/blob/main/docs/rules/prefer-called-with.md
|
|
12049
12166
|
*/
|
|
@@ -12089,6 +12206,11 @@ interface VitestRules {
|
|
|
12089
12206
|
*/
|
|
12090
12207
|
"vitest/prefer-hooks-on-top"?: Linter.RuleEntry<[]>;
|
|
12091
12208
|
/**
|
|
12209
|
+
* enforce importing Vitest globals
|
|
12210
|
+
* @see https://github.com/vitest-dev/eslint-plugin-vitest/blob/main/docs/rules/prefer-importing-vitest-globals.md
|
|
12211
|
+
*/
|
|
12212
|
+
"vitest/prefer-importing-vitest-globals"?: Linter.RuleEntry<[]>;
|
|
12213
|
+
/**
|
|
12092
12214
|
* enforce lowercase titles
|
|
12093
12215
|
* @see https://github.com/vitest-dev/eslint-plugin-vitest/blob/main/docs/rules/prefer-lowercase-title.md
|
|
12094
12216
|
*/
|
|
@@ -12203,6 +12325,11 @@ interface VitestRules {
|
|
|
12203
12325
|
* @see https://github.com/vitest-dev/eslint-plugin-vitest/blob/main/docs/rules/valid-title.md
|
|
12204
12326
|
*/
|
|
12205
12327
|
"vitest/valid-title"?: Linter.RuleEntry<VitestValidTitle>;
|
|
12328
|
+
/**
|
|
12329
|
+
* disallow `.todo` usage
|
|
12330
|
+
* @see https://github.com/vitest-dev/eslint-plugin-vitest/blob/main/docs/rules/warn-todo.md
|
|
12331
|
+
*/
|
|
12332
|
+
"vitest/warn-todo"?: Linter.RuleEntry<[]>;
|
|
12206
12333
|
}
|
|
12207
12334
|
/* ======= Declarations ======= */
|
|
12208
12335
|
// ----- vitest/consistent-test-filename -----
|
|
@@ -12215,6 +12342,10 @@ type VitestConsistentTestIt = [] | [{
|
|
|
12215
12342
|
fn?: ("test" | "it");
|
|
12216
12343
|
withinDescribe?: ("test" | "it");
|
|
12217
12344
|
}];
|
|
12345
|
+
// ----- vitest/consistent-vitest-vi -----
|
|
12346
|
+
type VitestConsistentVitestVi = [] | [{
|
|
12347
|
+
fn?: ("vi" | "vitest");
|
|
12348
|
+
}];
|
|
12218
12349
|
// ----- vitest/expect-expect -----
|
|
12219
12350
|
type VitestExpectExpect = [] | [{
|
|
12220
12351
|
assertFunctionNames?: string[];
|
|
@@ -13091,7 +13222,7 @@ interface VueRules {
|
|
|
13091
13222
|
*/
|
|
13092
13223
|
"vue/no-restricted-custom-event"?: Linter.RuleEntry<VueNoRestrictedCustomEvent>;
|
|
13093
13224
|
/**
|
|
13094
|
-
* disallow specific
|
|
13225
|
+
* disallow specific elements
|
|
13095
13226
|
* @see https://eslint.vuejs.org/rules/no-restricted-html-elements.html
|
|
13096
13227
|
*/
|
|
13097
13228
|
"vue/no-restricted-html-elements"?: Linter.RuleEntry<VueNoRestrictedHtmlElements>;
|
|
@@ -15823,7 +15954,7 @@ interface TypeScriptParserOptions {
|
|
|
15823
15954
|
jsxFragmentName?: string | null;
|
|
15824
15955
|
jsxPragma?: string | null;
|
|
15825
15956
|
lib?: string[];
|
|
15826
|
-
programs?:
|
|
15957
|
+
programs?: typescript0.Program[];
|
|
15827
15958
|
project?: string | string[] | boolean | null;
|
|
15828
15959
|
projectFolderIgnoreList?: string[];
|
|
15829
15960
|
projectService?: boolean | TypeScriptProjectServiceOptions;
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@kazupon/eslint-config",
|
|
3
3
|
"description": "ESLint config for @kazupon",
|
|
4
|
-
"version": "0.
|
|
4
|
+
"version": "0.32.0",
|
|
5
5
|
"author": {
|
|
6
6
|
"email": "kawakazu80@gmail.com",
|
|
7
7
|
"name": "kazuya kawaguchi"
|
|
@@ -50,17 +50,17 @@
|
|
|
50
50
|
},
|
|
51
51
|
"dependencies": {
|
|
52
52
|
"@eslint-community/eslint-plugin-eslint-comments": "^4.5.0",
|
|
53
|
-
"@eslint/js": "^9.
|
|
54
|
-
"@kazupon/eslint-plugin": "^0.
|
|
53
|
+
"@eslint/js": "^9.31.0",
|
|
54
|
+
"@kazupon/eslint-plugin": "^0.4.0",
|
|
55
55
|
"@kazupon/jts-utils": "^0.6.0",
|
|
56
56
|
"@stylistic/eslint-plugin": "^4.4.1",
|
|
57
57
|
"eslint-flat-config-utils": "^2.1.0",
|
|
58
58
|
"eslint-merge-processors": "^2.0.0",
|
|
59
|
-
"globals": "^16.
|
|
59
|
+
"globals": "^16.3.0"
|
|
60
60
|
},
|
|
61
61
|
"peerDependencies": {
|
|
62
62
|
"@eslint/css": ">=0.5.0",
|
|
63
|
-
"@eslint/markdown": ">=
|
|
63
|
+
"@eslint/markdown": ">=7.0.0",
|
|
64
64
|
"@html-eslint/eslint-plugin": ">=0.41.0",
|
|
65
65
|
"@intlify/eslint-plugin-vue-i18n": ">=4.0.0",
|
|
66
66
|
"@vitest/eslint-plugin": ">=1.0.0",
|
|
@@ -68,7 +68,7 @@
|
|
|
68
68
|
"eslint-config-prettier": ">=9.1.0",
|
|
69
69
|
"eslint-import-resolver-typescript": ">=3.6.0",
|
|
70
70
|
"eslint-plugin-import": ">=2.31.0",
|
|
71
|
-
"eslint-plugin-jsdoc": ">=
|
|
71
|
+
"eslint-plugin-jsdoc": ">=51.0.0",
|
|
72
72
|
"eslint-plugin-jsonc": ">=2.16.0",
|
|
73
73
|
"eslint-plugin-module-interop": ">=0.3.0",
|
|
74
74
|
"eslint-plugin-promise": ">=6.4.0",
|
|
@@ -172,48 +172,48 @@
|
|
|
172
172
|
}
|
|
173
173
|
},
|
|
174
174
|
"devDependencies": {
|
|
175
|
-
"@eslint/compat": "^1.
|
|
176
|
-
"@eslint/css": "^0.
|
|
177
|
-
"@eslint/markdown": "^
|
|
178
|
-
"@html-eslint/eslint-plugin": "^0.
|
|
175
|
+
"@eslint/compat": "^1.3.1",
|
|
176
|
+
"@eslint/css": "^0.9.0",
|
|
177
|
+
"@eslint/markdown": "^7.0.0",
|
|
178
|
+
"@html-eslint/eslint-plugin": "^0.43.0",
|
|
179
179
|
"@intlify/eslint-plugin-vue-i18n": "^4.0.1",
|
|
180
180
|
"@kazupon/prettier-config": "^0.1.1",
|
|
181
181
|
"@types/eslint": "^9.6.1",
|
|
182
|
-
"@types/node": "^22.
|
|
183
|
-
"@vitest/eslint-plugin": "^1.
|
|
184
|
-
"bumpp": "^10.
|
|
185
|
-
"eslint": "^9.
|
|
186
|
-
"eslint-config-prettier": "^10.1.
|
|
187
|
-
"eslint-import-resolver-typescript": "^4.4.
|
|
188
|
-
"eslint-plugin-import": "^2.
|
|
189
|
-
"eslint-plugin-jsdoc": "^
|
|
182
|
+
"@types/node": "^22.16.5",
|
|
183
|
+
"@vitest/eslint-plugin": "^1.3.4",
|
|
184
|
+
"bumpp": "^10.2.0",
|
|
185
|
+
"eslint": "^9.31.0",
|
|
186
|
+
"eslint-config-prettier": "^10.1.8",
|
|
187
|
+
"eslint-import-resolver-typescript": "^4.4.4",
|
|
188
|
+
"eslint-plugin-import": "^2.32.0",
|
|
189
|
+
"eslint-plugin-jsdoc": "^51.0.0",
|
|
190
190
|
"eslint-plugin-jsonc": "^2.20.1",
|
|
191
191
|
"eslint-plugin-module-interop": "^0.3.1",
|
|
192
192
|
"eslint-plugin-promise": "^7.2.1",
|
|
193
193
|
"eslint-plugin-react": "^7.37.5",
|
|
194
194
|
"eslint-plugin-react-hooks": "^5.2.0",
|
|
195
195
|
"eslint-plugin-react-refresh": "^0.4.20",
|
|
196
|
-
"eslint-plugin-regexp": "^2.
|
|
196
|
+
"eslint-plugin-regexp": "^2.9.0",
|
|
197
197
|
"eslint-plugin-svelte": "^2.46.1",
|
|
198
198
|
"eslint-plugin-toml": "^0.12.0",
|
|
199
|
-
"eslint-plugin-unicorn": "^59.0.
|
|
199
|
+
"eslint-plugin-unicorn": "^59.0.1",
|
|
200
200
|
"eslint-plugin-unused-imports": "^4.1.4",
|
|
201
|
-
"eslint-plugin-vue": "^10.
|
|
201
|
+
"eslint-plugin-vue": "^10.3.0",
|
|
202
202
|
"eslint-plugin-vue-composable": "^1.0.0",
|
|
203
|
-
"eslint-plugin-vue-scoped-css": "^2.
|
|
203
|
+
"eslint-plugin-vue-scoped-css": "^2.11.0",
|
|
204
204
|
"eslint-plugin-vuejs-accessibility": "^2.4.1",
|
|
205
205
|
"eslint-plugin-yml": "^1.18.0",
|
|
206
|
-
"eslint-typegen": "^2.2.
|
|
206
|
+
"eslint-typegen": "^2.2.1",
|
|
207
207
|
"gh-changelogen": "^0.2.8",
|
|
208
208
|
"jiti": "^2.4.2",
|
|
209
|
-
"knip": "^5.
|
|
210
|
-
"lint-staged": "^16.
|
|
211
|
-
"prettier": "^3.
|
|
212
|
-
"svelte": "^5.
|
|
213
|
-
"tsdown": "^0.
|
|
209
|
+
"knip": "^5.62.0",
|
|
210
|
+
"lint-staged": "^16.1.2",
|
|
211
|
+
"prettier": "^3.6.2",
|
|
212
|
+
"svelte": "^5.36.13",
|
|
213
|
+
"tsdown": "^0.13.0",
|
|
214
214
|
"typescript": "^5.8.3",
|
|
215
|
-
"typescript-eslint": "^8.
|
|
216
|
-
"vitest": "^3.2.
|
|
215
|
+
"typescript-eslint": "^8.38.0",
|
|
216
|
+
"vitest": "^3.2.4"
|
|
217
217
|
},
|
|
218
218
|
"prettier": "@kazupon/prettier-config",
|
|
219
219
|
"lint-staged": {
|
|
@@ -237,11 +237,11 @@
|
|
|
237
237
|
"fix": "pnpm run --parallel --color \"/^fix:/\"",
|
|
238
238
|
"fix:eslint": "eslint . --fix",
|
|
239
239
|
"fix:knip": "knip --fix --no-exit-code",
|
|
240
|
-
"fix:prettier": "prettier . --write",
|
|
240
|
+
"fix:prettier": "prettier . --write --experimental-cli",
|
|
241
241
|
"lint": "pnpm run --parallel --color \"/^lint:/\"",
|
|
242
242
|
"lint:eslint": "eslint .",
|
|
243
243
|
"lint:knip": "knip",
|
|
244
|
-
"lint:prettier": "prettier . --check",
|
|
244
|
+
"lint:prettier": "prettier . --check --experimental-cli",
|
|
245
245
|
"release": "bumpp --commit \"release: v%s\" --all --push --tag",
|
|
246
246
|
"test": "vitest run --typecheck",
|
|
247
247
|
"typecheck": "tsc -p .",
|