eslint-config-setup 0.3.0 → 0.3.2

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.
@@ -62,131 +62,47 @@ export default [
62
62
  "autoFix": false
63
63
  }
64
64
  ],
65
- "@typescript-eslint/adjacent-overload-signatures": "error",
66
- "@typescript-eslint/array-type": [
67
- "error",
68
- {
69
- "default": "array-simple"
70
- }
71
- ],
72
65
  "@typescript-eslint/await-thenable": "error",
73
- "@typescript-eslint/ban-ts-comment": [
74
- "error",
75
- {
76
- "minimumDescriptionLength": 10
77
- }
78
- ],
79
- "@typescript-eslint/ban-tslint-comment": "error",
80
- "@typescript-eslint/class-literal-property-style": "error",
81
- "@typescript-eslint/consistent-generic-constructors": "error",
82
- "@typescript-eslint/consistent-indexed-object-style": "error",
83
- "@typescript-eslint/consistent-type-assertions": "error",
84
- "@typescript-eslint/consistent-type-definitions": "error",
85
66
  "@typescript-eslint/consistent-type-exports": [
86
67
  "error",
87
68
  {
88
69
  "fixMixedExportsWithInlineTypeSpecifier": true
89
70
  }
90
71
  ],
91
- "@typescript-eslint/consistent-type-imports": [
92
- "error",
93
- {
94
- "fixStyle": "inline-type-imports"
95
- }
96
- ],
97
72
  "@typescript-eslint/dot-notation": "error",
98
- "@typescript-eslint/no-array-constructor": "error",
99
73
  "@typescript-eslint/no-array-delete": "error",
100
74
  "@typescript-eslint/no-base-to-string": "error",
101
- "@typescript-eslint/no-confusing-non-null-assertion": "error",
102
75
  "@typescript-eslint/no-confusing-void-expression": "error",
103
76
  "@typescript-eslint/no-deprecated": "warn",
104
- "@typescript-eslint/no-duplicate-enum-values": "error",
105
77
  "@typescript-eslint/no-duplicate-type-constituents": "error",
106
- "@typescript-eslint/no-dynamic-delete": "error",
107
- "@typescript-eslint/no-empty-function": "error",
108
- "@typescript-eslint/no-empty-object-type": "error",
109
- "@typescript-eslint/no-explicit-any": "error",
110
- "@typescript-eslint/no-extra-non-null-assertion": "error",
111
- "@typescript-eslint/no-extraneous-class": "error",
112
78
  "@typescript-eslint/no-floating-promises": "error",
113
79
  "@typescript-eslint/no-for-in-array": "error",
114
80
  "@typescript-eslint/no-implied-eval": "error",
115
- "@typescript-eslint/no-import-type-side-effects": "error",
116
- "@typescript-eslint/no-inferrable-types": "error",
117
- "@typescript-eslint/no-invalid-void-type": "error",
118
81
  "@typescript-eslint/no-meaningless-void-operator": "error",
119
- "@typescript-eslint/no-misused-new": "error",
120
82
  "@typescript-eslint/no-misused-promises": "error",
121
83
  "@typescript-eslint/no-misused-spread": "error",
122
84
  "@typescript-eslint/no-mixed-enums": "error",
123
- "@typescript-eslint/no-namespace": "error",
124
- "@typescript-eslint/no-non-null-asserted-nullish-coalescing": "error",
125
- "@typescript-eslint/no-non-null-asserted-optional-chain": "error",
126
- "@typescript-eslint/no-non-null-assertion": "error",
127
85
  "@typescript-eslint/no-redundant-type-constituents": "error",
128
- "@typescript-eslint/no-require-imports": "error",
129
- "@typescript-eslint/no-shadow": [
130
- "error",
131
- {
132
- "hoist": "all",
133
- "allow": [
134
- "resolve",
135
- "reject",
136
- "done",
137
- "next",
138
- "error"
139
- ],
140
- "ignoreTypeValueShadow": true,
141
- "ignoreFunctionTypeParameterNameValueShadow": true
142
- }
143
- ],
144
- "@typescript-eslint/no-this-alias": "error",
145
86
  "@typescript-eslint/no-unnecessary-boolean-literal-compare": "error",
146
87
  "@typescript-eslint/no-unnecessary-condition": "error",
147
- "@typescript-eslint/no-unnecessary-parameter-property-assignment": "error",
148
88
  "@typescript-eslint/no-unnecessary-qualifier": "error",
149
89
  "@typescript-eslint/no-unnecessary-template-expression": "error",
150
90
  "@typescript-eslint/no-unnecessary-type-arguments": "error",
151
91
  "@typescript-eslint/no-unnecessary-type-assertion": "error",
152
- "@typescript-eslint/no-unnecessary-type-constraint": "error",
153
92
  "@typescript-eslint/no-unnecessary-type-conversion": "error",
154
93
  "@typescript-eslint/no-unnecessary-type-parameters": "error",
155
94
  "@typescript-eslint/no-unsafe-argument": "error",
156
95
  "@typescript-eslint/no-unsafe-assignment": "error",
157
96
  "@typescript-eslint/no-unsafe-call": "error",
158
- "@typescript-eslint/no-unsafe-declaration-merging": "error",
159
97
  "@typescript-eslint/no-unsafe-enum-comparison": "error",
160
- "@typescript-eslint/no-unsafe-function-type": "error",
161
98
  "@typescript-eslint/no-unsafe-member-access": "error",
162
99
  "@typescript-eslint/no-unsafe-return": "error",
163
100
  "@typescript-eslint/no-unsafe-unary-minus": "error",
164
- "@typescript-eslint/no-unused-expressions": "error",
165
- "@typescript-eslint/no-unused-vars": [
166
- "error",
167
- {
168
- "args": "all",
169
- "argsIgnorePattern": "^_",
170
- "caughtErrors": "all",
171
- "caughtErrorsIgnorePattern": "^_",
172
- "destructuredArrayIgnorePattern": "^_",
173
- "varsIgnorePattern": "^_",
174
- "ignoreRestSiblings": true
175
- }
176
- ],
177
- "@typescript-eslint/no-useless-constructor": "error",
178
101
  "@typescript-eslint/no-useless-default-assignment": "error",
179
- "@typescript-eslint/no-useless-empty-export": "error",
180
- "@typescript-eslint/no-wrapper-object-types": "error",
181
102
  "@typescript-eslint/non-nullable-type-assertion-style": "error",
182
103
  "@typescript-eslint/only-throw-error": "error",
183
- "@typescript-eslint/prefer-as-const": "error",
184
104
  "@typescript-eslint/prefer-find": "error",
185
- "@typescript-eslint/prefer-for-of": "error",
186
- "@typescript-eslint/prefer-function-type": "error",
187
105
  "@typescript-eslint/prefer-includes": "error",
188
- "@typescript-eslint/prefer-literal-enum-member": "error",
189
- "@typescript-eslint/prefer-namespace-keyword": "error",
190
106
  "@typescript-eslint/prefer-nullish-coalescing": "error",
191
107
  "@typescript-eslint/prefer-optional-chain": "error",
192
108
  "@typescript-eslint/prefer-promise-reject-errors": "error",
@@ -224,9 +140,7 @@ export default [
224
140
  }
225
141
  ],
226
142
  "@typescript-eslint/strict-void-return": "error",
227
- "@typescript-eslint/triple-slash-reference": "error",
228
143
  "@typescript-eslint/unbound-method": "error",
229
- "@typescript-eslint/unified-signatures": "error",
230
144
  "@typescript-eslint/use-unknown-in-catch-callback-variable": "error",
231
145
  "accessor-pairs": [
232
146
  "error",
@@ -251,58 +165,26 @@ export default [
251
165
  "error",
252
166
  "smart"
253
167
  ],
254
- "for-direction": "error",
255
168
  "grouped-accessor-pairs": [
256
169
  "error",
257
170
  "getBeforeSet"
258
171
  ],
259
172
  "guard-for-in": "error",
260
- "import/first": "error",
261
173
  "import/newline-after-import": "error",
262
- "import/no-absolute-path": "error",
263
- "import/no-cycle": [
264
- "error",
265
- {
266
- "maxDepth": 3
267
- }
268
- ],
269
- "import/no-duplicates": [
270
- "error",
271
- {
272
- "prefer-inline": true
273
- }
274
- ],
275
- "import/no-empty-named-blocks": "error",
276
- "import/no-mutable-exports": "error",
277
- "import/no-named-as-default": "error",
278
- "import/no-named-as-default-member": "error",
279
- "import/no-self-import": "error",
280
174
  "import/no-useless-path-segments": "error",
281
- "jsdoc/check-access": "error",
282
175
  "jsdoc/check-alignment": "error",
283
176
  "jsdoc/check-param-names": "error",
284
- "jsdoc/check-property-names": "error",
285
- "jsdoc/check-tag-names": "error",
286
177
  "jsdoc/check-types": "error",
287
178
  "jsdoc/check-values": "error",
288
- "jsdoc/empty-tags": "error",
289
179
  "jsdoc/escape-inline-tags": "error",
290
- "jsdoc/implements-on-classes": "error",
291
180
  "jsdoc/multiline-blocks": "error",
292
- "jsdoc/no-defaults": "error",
293
181
  "jsdoc/no-multi-asterisks": "error",
294
182
  "jsdoc/no-types": "error",
295
183
  "jsdoc/no-undefined-types": "error",
296
184
  "jsdoc/reject-any-type": "error",
297
185
  "jsdoc/reject-function-type": "error",
298
186
  "jsdoc/require-next-type": "error",
299
- "jsdoc/require-param-description": "warn",
300
- "jsdoc/require-param-name": "error",
301
- "jsdoc/require-property": "error",
302
- "jsdoc/require-property-description": "error",
303
- "jsdoc/require-property-name": "error",
304
187
  "jsdoc/require-returns-check": "error",
305
- "jsdoc/require-returns-description": "warn",
306
188
  "jsdoc/require-throws-type": "error",
307
189
  "jsdoc/require-yields-check": "error",
308
190
  "jsdoc/require-yields-type": "error",
@@ -341,40 +223,18 @@ export default [
341
223
  15
342
224
  ],
343
225
  "no-alert": "error",
344
- "no-async-promise-executor": "error",
345
- "no-caller": "error",
346
226
  "no-case-declarations": "error",
347
- "no-compare-neg-zero": "error",
348
- "no-cond-assign": "error",
349
- "no-constant-binary-expression": "error",
350
- "no-constant-condition": "error",
351
227
  "no-constructor-return": "error",
352
- "no-control-regex": "error",
353
- "no-debugger": "error",
354
- "no-delete-var": "error",
355
- "no-dupe-else-if": "error",
356
- "no-duplicate-case": "error",
357
228
  "no-empty": "error",
358
- "no-empty-pattern": "error",
359
- "no-empty-static-block": "error",
360
- "no-eval": "error",
361
- "no-ex-assign": "error",
362
229
  "no-extend-native": "error",
363
230
  "no-extra-bind": "error",
364
- "no-extra-boolean-cast": "error",
365
231
  "no-fallthrough": "error",
366
- "no-global-assign": "error",
367
- "no-irregular-whitespace": "error",
368
- "no-iterator": "error",
369
232
  "no-labels": "error",
370
233
  "no-lone-blocks": "error",
371
- "no-loss-of-precision": "error",
372
- "no-misleading-character-class": "error",
373
234
  "no-multi-str": "error",
374
235
  "no-new": "error",
375
236
  "no-new-func": "error",
376
237
  "no-new-wrappers": "error",
377
- "no-nonoctal-decimal-escape": "error",
378
238
  "no-object-constructor": "error",
379
239
  "no-octal": "error",
380
240
  "no-octal-escape": "error",
@@ -383,26 +243,15 @@ export default [
383
243
  "no-prototype-builtins": "error",
384
244
  "no-regex-spaces": "error",
385
245
  "no-script-url": "error",
386
- "no-self-assign": "error",
387
246
  "no-self-compare": "error",
388
247
  "no-sequences": "error",
389
- "no-shadow-restricted-names": "error",
390
- "no-sparse-arrays": "error",
391
248
  "no-template-curly-in-string": "error",
392
- "no-unassigned-vars": "error",
393
249
  "no-unmodified-loop-condition": "error",
394
250
  "no-unreachable-loop": "error",
395
- "no-unsafe-finally": "error",
396
- "no-unsafe-optional-chaining": "error",
397
- "no-unused-labels": "error",
398
- "no-unused-private-class-members": "error",
399
251
  "no-useless-assignment": "error",
400
252
  "no-useless-call": "error",
401
- "no-useless-catch": "error",
402
253
  "no-useless-computed-key": "error",
403
254
  "no-useless-concat": "error",
404
- "no-useless-escape": "error",
405
- "no-useless-rename": "error",
406
255
  "no-useless-return": "error",
407
256
  "no-var": "error",
408
257
  "node/hashbang": "error",
@@ -518,7 +367,6 @@ export default [
518
367
  "regexp/strict": "error",
519
368
  "regexp/use-ignore-case": "error",
520
369
  "require-atomic-updates": "error",
521
- "require-yield": "error",
522
370
  "security/detect-bidi-characters": "error",
523
371
  "security/detect-buffer-noassert": "error",
524
372
  "security/detect-child-process": "error",
@@ -557,85 +405,14 @@ export default [
557
405
  "sonarjs/prefer-single-boolean-return": "error",
558
406
  "sonarjs/reduce-initial-value": "error",
559
407
  "symbol-description": "error",
560
- "unicorn/better-regex": "error",
561
- "unicorn/catch-error-name": [
562
- "error",
563
- {
564
- "name": "error"
565
- }
566
- ],
567
- "unicorn/consistent-date-clone": "error",
568
- "unicorn/consistent-empty-array-spread": "error",
569
- "unicorn/consistent-existence-index-check": "error",
570
- "unicorn/error-message": "error",
571
- "unicorn/new-for-builtins": "error",
572
- "unicorn/no-abusive-eslint-disable": "error",
573
- "unicorn/no-accessor-recursion": "error",
574
- "unicorn/no-anonymous-default-export": "error",
575
- "unicorn/no-array-callback-reference": "error",
576
- "unicorn/no-array-method-this-argument": "error",
577
- "unicorn/no-await-expression-member": "error",
578
- "unicorn/no-await-in-promise-methods": "error",
579
- "unicorn/no-instanceof-builtins": "error",
580
- "unicorn/no-invalid-fetch-options": "error",
581
- "unicorn/no-invalid-remove-event-listener": "error",
582
- "unicorn/no-negation-in-equality-check": "error",
583
- "unicorn/no-new-array": "error",
584
- "unicorn/no-new-buffer": "error",
585
- "unicorn/no-thenable": "error",
586
- "unicorn/no-this-assignment": "error",
587
- "unicorn/no-typeof-undefined": "error",
588
- "unicorn/no-unnecessary-await": "error",
589
- "unicorn/no-unnecessary-slice-end": "error",
590
- "unicorn/no-unreadable-array-destructuring": "error",
591
- "unicorn/no-unreadable-iife": "error",
592
- "unicorn/no-useless-fallback-in-spread": "error",
593
- "unicorn/no-useless-length-check": "error",
594
- "unicorn/no-useless-promise-resolve-reject": "error",
595
- "unicorn/no-useless-spread": "error",
596
- "unicorn/no-useless-undefined": "error",
597
- "unicorn/no-zero-fractions": "error",
598
- "unicorn/numeric-separators-style": "error",
599
- "unicorn/prefer-array-find": "error",
600
- "unicorn/prefer-array-flat": "error",
601
- "unicorn/prefer-array-flat-map": "error",
602
- "unicorn/prefer-array-index-of": "error",
603
- "unicorn/prefer-array-some": "error",
604
- "unicorn/prefer-at": "error",
605
- "unicorn/prefer-date-now": "error",
606
408
  "unicorn/prefer-export-from": [
607
409
  "error",
608
410
  {
609
411
  "ignoreUsedVariables": true
610
412
  }
611
413
  ],
612
- "unicorn/prefer-global-this": "error",
613
414
  "unicorn/prefer-import-meta-properties": "error",
614
- "unicorn/prefer-includes": "error",
615
- "unicorn/prefer-modern-dom-apis": "error",
616
- "unicorn/prefer-modern-math-apis": "error",
617
- "unicorn/prefer-native-coercion-functions": "error",
618
- "unicorn/prefer-negative-index": "error",
619
- "unicorn/prefer-node-protocol": "error",
620
- "unicorn/prefer-number-properties": "error",
621
- "unicorn/prefer-object-from-entries": "error",
622
- "unicorn/prefer-optional-catch-binding": "error",
623
- "unicorn/prefer-regexp-test": "error",
624
- "unicorn/prefer-set-has": "error",
625
- "unicorn/prefer-spread": "error",
626
- "unicorn/prefer-string-replace-all": "error",
627
- "unicorn/prefer-string-slice": "error",
628
- "unicorn/prefer-string-starts-ends-with": "error",
629
- "unicorn/prefer-string-trim-start-end": "error",
630
- "unicorn/prefer-structured-clone": "error",
631
- "unicorn/prefer-top-level-await": "error",
632
- "unicorn/prefer-type-error": "error",
633
- "unicorn/relative-url-style": "error",
634
- "unicorn/text-encoding-identifier-case": "error",
635
- "unicorn/throw-new-error": "error",
636
415
  "unused-imports/no-unused-imports": "error",
637
- "use-isnan": "error",
638
- "valid-typeof": "error",
639
416
  "yoda": "error"
640
417
  },
641
418
  },
@@ -706,25 +483,12 @@ export default [
706
483
  "@typescript-eslint/switch-exhaustiveness-check": "off",
707
484
  "@typescript-eslint/unbound-method": "off",
708
485
  "@typescript-eslint/use-unknown-in-catch-callback-variable": "off",
709
- "constructor-super": "error",
710
486
  "getter-return": "error",
711
- "no-class-assign": "error",
712
- "no-const-assign": "error",
713
487
  "no-dupe-args": "error",
714
- "no-dupe-class-members": "error",
715
- "no-dupe-keys": "error",
716
- "no-func-assign": "error",
717
- "no-import-assign": "error",
718
- "no-new-native-nonconstructor": "error",
719
488
  "no-new-symbol": "off",
720
- "no-obj-calls": "error",
721
489
  "no-redeclare": "error",
722
- "no-setter-return": "error",
723
- "no-this-before-super": "error",
724
490
  "no-undef": "error",
725
491
  "no-unreachable": "error",
726
- "no-unsafe-negation": "error",
727
- "no-with": "error",
728
492
  "prefer-const": [
729
493
  "error",
730
494
  {
@@ -743,8 +507,6 @@ export default [
743
507
  "testing-library": testingLibraryPlugin,
744
508
  },
745
509
  rules: {
746
- "@typescript-eslint/no-explicit-any": "off",
747
- "@typescript-eslint/no-non-null-assertion": "off",
748
510
  "@typescript-eslint/no-unsafe-assignment": "off",
749
511
  "@typescript-eslint/no-unsafe-member-access": "off",
750
512
  "max-lines": "off",
@@ -768,20 +530,13 @@ export default [
768
530
  "testing-library/prefer-query-by-disappearance": "error",
769
531
  "testing-library/prefer-screen-queries": "error",
770
532
  "testing-library/render-result-naming-convention": "error",
771
- "vitest/expect-expect": "error",
772
- "vitest/no-conditional-expect": "error",
773
533
  "vitest/no-conditional-in-test": "error",
774
- "vitest/no-disabled-tests": "warn",
775
534
  "vitest/no-duplicate-hooks": "error",
776
- "vitest/no-focused-tests": "error",
777
535
  "vitest/no-identical-title": "error",
778
- "vitest/no-standalone-expect": "error",
779
536
  "vitest/prefer-spy-on": "error",
780
537
  "vitest/prefer-strict-equal": "error",
781
538
  "vitest/prefer-to-be": "error",
782
539
  "vitest/prefer-to-have-length": "error",
783
- "vitest/require-to-throw-message": "error",
784
- "vitest/valid-expect": "error",
785
540
  "vitest/valid-title": "error"
786
541
  },
787
542
  },
@@ -860,7 +615,6 @@ export default [
860
615
  "storybook": storybookPlugin,
861
616
  },
862
617
  rules: {
863
- "import/no-default-export": "off",
864
618
  "max-lines": "off",
865
619
  "max-lines-per-function": "off",
866
620
  "storybook/await-interactions": "error",
@@ -882,10 +636,7 @@ export default [
882
636
  name: "eslint-config-setup/config-files",
883
637
  files: ["**/*.config.{ts,mts,cts,js,mjs,cjs}","**/vite.config.*","**/vitest.config.*","**/next.config.*","**/tailwind.config.*","**/postcss.config.*"],
884
638
  rules: {
885
- "@typescript-eslint/no-magic-numbers": "off",
886
- "@typescript-eslint/no-require-imports": "off",
887
639
  "complexity": "off",
888
- "import/no-default-export": "off",
889
640
  "max-lines": "off",
890
641
  "max-lines-per-function": "off",
891
642
  "max-statements": "off",
@@ -899,16 +650,7 @@ export default [
899
650
  name: "eslint-config-setup/declarations",
900
651
  files: ["**/*.d.ts"],
901
652
  rules: {
902
- "@typescript-eslint/consistent-type-definitions": "off",
903
- "@typescript-eslint/explicit-function-return-type": "off",
904
653
  "@typescript-eslint/naming-convention": "off",
905
- "@typescript-eslint/no-empty-interface": "off",
906
- "@typescript-eslint/no-empty-object-type": "off",
907
- "@typescript-eslint/no-explicit-any": "off",
908
- "@typescript-eslint/no-namespace": "off",
909
- "@typescript-eslint/no-unused-vars": "off",
910
- "import/no-duplicates": "off",
911
- "unicorn/filename-case": "off",
912
654
  "unicorn/prevent-abbreviations": "off",
913
655
  "unused-imports/no-unused-imports": "off"
914
656
  },
@@ -919,12 +661,10 @@ export default [
919
661
  name: "eslint-config-setup/scripts",
920
662
  files: ["**/scripts/**/*.{ts,mts,js,mjs}"],
921
663
  rules: {
922
- "@typescript-eslint/explicit-function-return-type": "off",
923
664
  "max-lines": "off",
924
665
  "max-lines-per-function": "off",
925
666
  "no-console": "off",
926
- "node/no-process-exit": "off",
927
- "unicorn/no-process-exit": "off"
667
+ "node/no-process-exit": "off"
928
668
  },
929
669
  },
930
670
 
@@ -981,11 +721,11 @@ export default [
981
721
  },
982
722
 
983
723
  // OxLint integration — disables rules already covered by OxLint
984
- { name: "eslint-config-setup/oxlint", ...oxlintPlugin.configs["flat/recommended"] },
985
- { name: "eslint-config-setup/oxlint-node", ...oxlintPlugin.configs["flat/node"] },
986
- { name: "eslint-config-setup/oxlint-typescript", ...oxlintPlugin.configs["flat/typescript"] },
987
- { name: "eslint-config-setup/oxlint-unicorn", ...oxlintPlugin.configs["flat/unicorn"] },
988
- { name: "eslint-config-setup/oxlint-import", ...oxlintPlugin.configs["flat/import"] },
989
- { name: "eslint-config-setup/oxlint-jsdoc", ...oxlintPlugin.configs["flat/jsdoc"] },
724
+ ...[oxlintPlugin.configs["flat/recommended"]].flat().map((c) => ({ name: "eslint-config-setup/oxlint", ...c })),
725
+ ...[oxlintPlugin.configs["flat/node"]].flat().map((c) => ({ name: "eslint-config-setup/oxlint-node", ...c })),
726
+ ...[oxlintPlugin.configs["flat/typescript"]].flat().map((c) => ({ name: "eslint-config-setup/oxlint-typescript", ...c })),
727
+ ...[oxlintPlugin.configs["flat/unicorn"]].flat().map((c) => ({ name: "eslint-config-setup/oxlint-unicorn", ...c })),
728
+ ...[oxlintPlugin.configs["flat/import"]].flat().map((c) => ({ name: "eslint-config-setup/oxlint-import", ...c })),
729
+ ...[oxlintPlugin.configs["flat/jsdoc"]].flat().map((c) => ({ name: "eslint-config-setup/oxlint-jsdoc", ...c })),
990
730
 
991
731
  ]