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.
@@ -58,131 +58,47 @@ export default [
58
58
  "autoFix": false
59
59
  }
60
60
  ],
61
- "@typescript-eslint/adjacent-overload-signatures": "error",
62
- "@typescript-eslint/array-type": [
63
- "error",
64
- {
65
- "default": "array-simple"
66
- }
67
- ],
68
61
  "@typescript-eslint/await-thenable": "error",
69
- "@typescript-eslint/ban-ts-comment": [
70
- "error",
71
- {
72
- "minimumDescriptionLength": 10
73
- }
74
- ],
75
- "@typescript-eslint/ban-tslint-comment": "error",
76
- "@typescript-eslint/class-literal-property-style": "error",
77
- "@typescript-eslint/consistent-generic-constructors": "error",
78
- "@typescript-eslint/consistent-indexed-object-style": "error",
79
- "@typescript-eslint/consistent-type-assertions": "error",
80
- "@typescript-eslint/consistent-type-definitions": "error",
81
62
  "@typescript-eslint/consistent-type-exports": [
82
63
  "error",
83
64
  {
84
65
  "fixMixedExportsWithInlineTypeSpecifier": true
85
66
  }
86
67
  ],
87
- "@typescript-eslint/consistent-type-imports": [
88
- "error",
89
- {
90
- "fixStyle": "inline-type-imports"
91
- }
92
- ],
93
68
  "@typescript-eslint/dot-notation": "error",
94
- "@typescript-eslint/no-array-constructor": "error",
95
69
  "@typescript-eslint/no-array-delete": "error",
96
70
  "@typescript-eslint/no-base-to-string": "error",
97
- "@typescript-eslint/no-confusing-non-null-assertion": "error",
98
71
  "@typescript-eslint/no-confusing-void-expression": "error",
99
72
  "@typescript-eslint/no-deprecated": "warn",
100
- "@typescript-eslint/no-duplicate-enum-values": "error",
101
73
  "@typescript-eslint/no-duplicate-type-constituents": "error",
102
- "@typescript-eslint/no-dynamic-delete": "error",
103
- "@typescript-eslint/no-empty-function": "error",
104
- "@typescript-eslint/no-empty-object-type": "error",
105
- "@typescript-eslint/no-explicit-any": "error",
106
- "@typescript-eslint/no-extra-non-null-assertion": "error",
107
- "@typescript-eslint/no-extraneous-class": "error",
108
74
  "@typescript-eslint/no-floating-promises": "error",
109
75
  "@typescript-eslint/no-for-in-array": "error",
110
76
  "@typescript-eslint/no-implied-eval": "error",
111
- "@typescript-eslint/no-import-type-side-effects": "error",
112
- "@typescript-eslint/no-inferrable-types": "error",
113
- "@typescript-eslint/no-invalid-void-type": "error",
114
77
  "@typescript-eslint/no-meaningless-void-operator": "error",
115
- "@typescript-eslint/no-misused-new": "error",
116
78
  "@typescript-eslint/no-misused-promises": "error",
117
79
  "@typescript-eslint/no-misused-spread": "error",
118
80
  "@typescript-eslint/no-mixed-enums": "error",
119
- "@typescript-eslint/no-namespace": "error",
120
- "@typescript-eslint/no-non-null-asserted-nullish-coalescing": "error",
121
- "@typescript-eslint/no-non-null-asserted-optional-chain": "error",
122
- "@typescript-eslint/no-non-null-assertion": "error",
123
81
  "@typescript-eslint/no-redundant-type-constituents": "error",
124
- "@typescript-eslint/no-require-imports": "error",
125
- "@typescript-eslint/no-shadow": [
126
- "error",
127
- {
128
- "hoist": "all",
129
- "allow": [
130
- "resolve",
131
- "reject",
132
- "done",
133
- "next",
134
- "error"
135
- ],
136
- "ignoreTypeValueShadow": true,
137
- "ignoreFunctionTypeParameterNameValueShadow": true
138
- }
139
- ],
140
- "@typescript-eslint/no-this-alias": "error",
141
82
  "@typescript-eslint/no-unnecessary-boolean-literal-compare": "error",
142
83
  "@typescript-eslint/no-unnecessary-condition": "error",
143
- "@typescript-eslint/no-unnecessary-parameter-property-assignment": "error",
144
84
  "@typescript-eslint/no-unnecessary-qualifier": "error",
145
85
  "@typescript-eslint/no-unnecessary-template-expression": "error",
146
86
  "@typescript-eslint/no-unnecessary-type-arguments": "error",
147
87
  "@typescript-eslint/no-unnecessary-type-assertion": "error",
148
- "@typescript-eslint/no-unnecessary-type-constraint": "error",
149
88
  "@typescript-eslint/no-unnecessary-type-conversion": "error",
150
89
  "@typescript-eslint/no-unnecessary-type-parameters": "error",
151
90
  "@typescript-eslint/no-unsafe-argument": "error",
152
91
  "@typescript-eslint/no-unsafe-assignment": "error",
153
92
  "@typescript-eslint/no-unsafe-call": "error",
154
- "@typescript-eslint/no-unsafe-declaration-merging": "error",
155
93
  "@typescript-eslint/no-unsafe-enum-comparison": "error",
156
- "@typescript-eslint/no-unsafe-function-type": "error",
157
94
  "@typescript-eslint/no-unsafe-member-access": "error",
158
95
  "@typescript-eslint/no-unsafe-return": "error",
159
96
  "@typescript-eslint/no-unsafe-unary-minus": "error",
160
- "@typescript-eslint/no-unused-expressions": "error",
161
- "@typescript-eslint/no-unused-vars": [
162
- "error",
163
- {
164
- "args": "all",
165
- "argsIgnorePattern": "^_",
166
- "caughtErrors": "all",
167
- "caughtErrorsIgnorePattern": "^_",
168
- "destructuredArrayIgnorePattern": "^_",
169
- "varsIgnorePattern": "^_",
170
- "ignoreRestSiblings": true
171
- }
172
- ],
173
- "@typescript-eslint/no-useless-constructor": "error",
174
97
  "@typescript-eslint/no-useless-default-assignment": "error",
175
- "@typescript-eslint/no-useless-empty-export": "error",
176
- "@typescript-eslint/no-wrapper-object-types": "error",
177
98
  "@typescript-eslint/non-nullable-type-assertion-style": "error",
178
99
  "@typescript-eslint/only-throw-error": "error",
179
- "@typescript-eslint/prefer-as-const": "error",
180
100
  "@typescript-eslint/prefer-find": "error",
181
- "@typescript-eslint/prefer-for-of": "error",
182
- "@typescript-eslint/prefer-function-type": "error",
183
101
  "@typescript-eslint/prefer-includes": "error",
184
- "@typescript-eslint/prefer-literal-enum-member": "error",
185
- "@typescript-eslint/prefer-namespace-keyword": "error",
186
102
  "@typescript-eslint/prefer-nullish-coalescing": "error",
187
103
  "@typescript-eslint/prefer-optional-chain": "error",
188
104
  "@typescript-eslint/prefer-promise-reject-errors": "error",
@@ -220,9 +136,7 @@ export default [
220
136
  }
221
137
  ],
222
138
  "@typescript-eslint/strict-void-return": "error",
223
- "@typescript-eslint/triple-slash-reference": "error",
224
139
  "@typescript-eslint/unbound-method": "error",
225
- "@typescript-eslint/unified-signatures": "error",
226
140
  "@typescript-eslint/use-unknown-in-catch-callback-variable": "error",
227
141
  "accessor-pairs": [
228
142
  "error",
@@ -248,58 +162,26 @@ export default [
248
162
  "error",
249
163
  "smart"
250
164
  ],
251
- "for-direction": "error",
252
165
  "grouped-accessor-pairs": [
253
166
  "error",
254
167
  "getBeforeSet"
255
168
  ],
256
169
  "guard-for-in": "error",
257
- "import/first": "error",
258
170
  "import/newline-after-import": "error",
259
- "import/no-absolute-path": "error",
260
- "import/no-cycle": [
261
- "error",
262
- {
263
- "maxDepth": 3
264
- }
265
- ],
266
- "import/no-duplicates": [
267
- "error",
268
- {
269
- "prefer-inline": true
270
- }
271
- ],
272
- "import/no-empty-named-blocks": "error",
273
- "import/no-mutable-exports": "error",
274
- "import/no-named-as-default": "error",
275
- "import/no-named-as-default-member": "error",
276
- "import/no-self-import": "error",
277
171
  "import/no-useless-path-segments": "error",
278
- "jsdoc/check-access": "error",
279
172
  "jsdoc/check-alignment": "error",
280
173
  "jsdoc/check-param-names": "error",
281
- "jsdoc/check-property-names": "error",
282
- "jsdoc/check-tag-names": "error",
283
174
  "jsdoc/check-types": "error",
284
175
  "jsdoc/check-values": "error",
285
- "jsdoc/empty-tags": "error",
286
176
  "jsdoc/escape-inline-tags": "error",
287
- "jsdoc/implements-on-classes": "error",
288
177
  "jsdoc/multiline-blocks": "error",
289
- "jsdoc/no-defaults": "error",
290
178
  "jsdoc/no-multi-asterisks": "error",
291
179
  "jsdoc/no-types": "error",
292
180
  "jsdoc/no-undefined-types": "error",
293
181
  "jsdoc/reject-any-type": "error",
294
182
  "jsdoc/reject-function-type": "error",
295
183
  "jsdoc/require-next-type": "error",
296
- "jsdoc/require-param-description": "warn",
297
- "jsdoc/require-param-name": "error",
298
- "jsdoc/require-property": "error",
299
- "jsdoc/require-property-description": "error",
300
- "jsdoc/require-property-name": "error",
301
184
  "jsdoc/require-returns-check": "error",
302
- "jsdoc/require-returns-description": "warn",
303
185
  "jsdoc/require-throws-type": "error",
304
186
  "jsdoc/require-yields-check": "error",
305
187
  "jsdoc/require-yields-type": "error",
@@ -338,40 +220,18 @@ export default [
338
220
  15
339
221
  ],
340
222
  "no-alert": "error",
341
- "no-async-promise-executor": "error",
342
- "no-caller": "error",
343
223
  "no-case-declarations": "error",
344
- "no-compare-neg-zero": "error",
345
- "no-cond-assign": "error",
346
- "no-constant-binary-expression": "error",
347
- "no-constant-condition": "error",
348
224
  "no-constructor-return": "error",
349
- "no-control-regex": "error",
350
- "no-debugger": "error",
351
- "no-delete-var": "error",
352
- "no-dupe-else-if": "error",
353
- "no-duplicate-case": "error",
354
225
  "no-empty": "error",
355
- "no-empty-pattern": "error",
356
- "no-empty-static-block": "error",
357
- "no-eval": "error",
358
- "no-ex-assign": "error",
359
226
  "no-extend-native": "error",
360
227
  "no-extra-bind": "error",
361
- "no-extra-boolean-cast": "error",
362
228
  "no-fallthrough": "error",
363
- "no-global-assign": "error",
364
- "no-irregular-whitespace": "error",
365
- "no-iterator": "error",
366
229
  "no-labels": "error",
367
230
  "no-lone-blocks": "error",
368
- "no-loss-of-precision": "error",
369
- "no-misleading-character-class": "error",
370
231
  "no-multi-str": "error",
371
232
  "no-new": "error",
372
233
  "no-new-func": "error",
373
234
  "no-new-wrappers": "error",
374
- "no-nonoctal-decimal-escape": "error",
375
235
  "no-object-constructor": "error",
376
236
  "no-octal": "error",
377
237
  "no-octal-escape": "error",
@@ -380,26 +240,15 @@ export default [
380
240
  "no-prototype-builtins": "error",
381
241
  "no-regex-spaces": "error",
382
242
  "no-script-url": "error",
383
- "no-self-assign": "error",
384
243
  "no-self-compare": "error",
385
244
  "no-sequences": "error",
386
- "no-shadow-restricted-names": "error",
387
- "no-sparse-arrays": "error",
388
245
  "no-template-curly-in-string": "error",
389
- "no-unassigned-vars": "error",
390
246
  "no-unmodified-loop-condition": "error",
391
247
  "no-unreachable-loop": "error",
392
- "no-unsafe-finally": "error",
393
- "no-unsafe-optional-chaining": "error",
394
- "no-unused-labels": "error",
395
- "no-unused-private-class-members": "error",
396
248
  "no-useless-assignment": "error",
397
249
  "no-useless-call": "error",
398
- "no-useless-catch": "error",
399
250
  "no-useless-computed-key": "error",
400
251
  "no-useless-concat": "error",
401
- "no-useless-escape": "error",
402
- "no-useless-rename": "error",
403
252
  "no-useless-return": "error",
404
253
  "no-var": "error",
405
254
  "perfectionist/sort-exports": "error",
@@ -488,7 +337,6 @@ export default [
488
337
  "regexp/strict": "error",
489
338
  "regexp/use-ignore-case": "error",
490
339
  "require-atomic-updates": "error",
491
- "require-yield": "error",
492
340
  "security/detect-bidi-characters": "error",
493
341
  "security/detect-buffer-noassert": "error",
494
342
  "security/detect-child-process": "error",
@@ -527,85 +375,14 @@ export default [
527
375
  "sonarjs/prefer-single-boolean-return": "error",
528
376
  "sonarjs/reduce-initial-value": "error",
529
377
  "symbol-description": "error",
530
- "unicorn/better-regex": "error",
531
- "unicorn/catch-error-name": [
532
- "error",
533
- {
534
- "name": "error"
535
- }
536
- ],
537
- "unicorn/consistent-date-clone": "error",
538
- "unicorn/consistent-empty-array-spread": "error",
539
- "unicorn/consistent-existence-index-check": "error",
540
- "unicorn/error-message": "error",
541
- "unicorn/new-for-builtins": "error",
542
- "unicorn/no-abusive-eslint-disable": "error",
543
- "unicorn/no-accessor-recursion": "error",
544
- "unicorn/no-anonymous-default-export": "error",
545
- "unicorn/no-array-callback-reference": "error",
546
- "unicorn/no-array-method-this-argument": "error",
547
- "unicorn/no-await-expression-member": "error",
548
- "unicorn/no-await-in-promise-methods": "error",
549
- "unicorn/no-instanceof-builtins": "error",
550
- "unicorn/no-invalid-fetch-options": "error",
551
- "unicorn/no-invalid-remove-event-listener": "error",
552
- "unicorn/no-negation-in-equality-check": "error",
553
- "unicorn/no-new-array": "error",
554
- "unicorn/no-new-buffer": "error",
555
- "unicorn/no-thenable": "error",
556
- "unicorn/no-this-assignment": "error",
557
- "unicorn/no-typeof-undefined": "error",
558
- "unicorn/no-unnecessary-await": "error",
559
- "unicorn/no-unnecessary-slice-end": "error",
560
- "unicorn/no-unreadable-array-destructuring": "error",
561
- "unicorn/no-unreadable-iife": "error",
562
- "unicorn/no-useless-fallback-in-spread": "error",
563
- "unicorn/no-useless-length-check": "error",
564
- "unicorn/no-useless-promise-resolve-reject": "error",
565
- "unicorn/no-useless-spread": "error",
566
- "unicorn/no-useless-undefined": "error",
567
- "unicorn/no-zero-fractions": "error",
568
- "unicorn/numeric-separators-style": "error",
569
- "unicorn/prefer-array-find": "error",
570
- "unicorn/prefer-array-flat": "error",
571
- "unicorn/prefer-array-flat-map": "error",
572
- "unicorn/prefer-array-index-of": "error",
573
- "unicorn/prefer-array-some": "error",
574
- "unicorn/prefer-at": "error",
575
- "unicorn/prefer-date-now": "error",
576
378
  "unicorn/prefer-export-from": [
577
379
  "error",
578
380
  {
579
381
  "ignoreUsedVariables": true
580
382
  }
581
383
  ],
582
- "unicorn/prefer-global-this": "error",
583
384
  "unicorn/prefer-import-meta-properties": "error",
584
- "unicorn/prefer-includes": "error",
585
- "unicorn/prefer-modern-dom-apis": "error",
586
- "unicorn/prefer-modern-math-apis": "error",
587
- "unicorn/prefer-native-coercion-functions": "error",
588
- "unicorn/prefer-negative-index": "error",
589
- "unicorn/prefer-node-protocol": "error",
590
- "unicorn/prefer-number-properties": "error",
591
- "unicorn/prefer-object-from-entries": "error",
592
- "unicorn/prefer-optional-catch-binding": "error",
593
- "unicorn/prefer-regexp-test": "error",
594
- "unicorn/prefer-set-has": "error",
595
- "unicorn/prefer-spread": "error",
596
- "unicorn/prefer-string-replace-all": "error",
597
- "unicorn/prefer-string-slice": "error",
598
- "unicorn/prefer-string-starts-ends-with": "error",
599
- "unicorn/prefer-string-trim-start-end": "error",
600
- "unicorn/prefer-structured-clone": "error",
601
- "unicorn/prefer-top-level-await": "error",
602
- "unicorn/prefer-type-error": "error",
603
- "unicorn/relative-url-style": "error",
604
- "unicorn/text-encoding-identifier-case": "error",
605
- "unicorn/throw-new-error": "error",
606
385
  "unused-imports/no-unused-imports": "error",
607
- "use-isnan": "error",
608
- "valid-typeof": "error",
609
386
  "yoda": "error"
610
387
  },
611
388
  },
@@ -676,25 +453,12 @@ export default [
676
453
  "@typescript-eslint/switch-exhaustiveness-check": "off",
677
454
  "@typescript-eslint/unbound-method": "off",
678
455
  "@typescript-eslint/use-unknown-in-catch-callback-variable": "off",
679
- "constructor-super": "error",
680
456
  "getter-return": "error",
681
- "no-class-assign": "error",
682
- "no-const-assign": "error",
683
457
  "no-dupe-args": "error",
684
- "no-dupe-class-members": "error",
685
- "no-dupe-keys": "error",
686
- "no-func-assign": "error",
687
- "no-import-assign": "error",
688
- "no-new-native-nonconstructor": "error",
689
458
  "no-new-symbol": "off",
690
- "no-obj-calls": "error",
691
459
  "no-redeclare": "error",
692
- "no-setter-return": "error",
693
- "no-this-before-super": "error",
694
460
  "no-undef": "error",
695
461
  "no-unreachable": "error",
696
- "no-unsafe-negation": "error",
697
- "no-with": "error",
698
462
  "prefer-const": [
699
463
  "error",
700
464
  {
@@ -713,8 +477,6 @@ export default [
713
477
  "testing-library": testingLibraryPlugin,
714
478
  },
715
479
  rules: {
716
- "@typescript-eslint/no-explicit-any": "off",
717
- "@typescript-eslint/no-non-null-assertion": "off",
718
480
  "@typescript-eslint/no-unsafe-assignment": "off",
719
481
  "@typescript-eslint/no-unsafe-member-access": "off",
720
482
  "max-lines": "off",
@@ -738,20 +500,13 @@ export default [
738
500
  "testing-library/prefer-query-by-disappearance": "error",
739
501
  "testing-library/prefer-screen-queries": "error",
740
502
  "testing-library/render-result-naming-convention": "error",
741
- "vitest/expect-expect": "error",
742
- "vitest/no-conditional-expect": "error",
743
503
  "vitest/no-conditional-in-test": "error",
744
- "vitest/no-disabled-tests": "warn",
745
504
  "vitest/no-duplicate-hooks": "error",
746
- "vitest/no-focused-tests": "error",
747
505
  "vitest/no-identical-title": "error",
748
- "vitest/no-standalone-expect": "error",
749
506
  "vitest/prefer-spy-on": "error",
750
507
  "vitest/prefer-strict-equal": "error",
751
508
  "vitest/prefer-to-be": "error",
752
509
  "vitest/prefer-to-have-length": "error",
753
- "vitest/require-to-throw-message": "error",
754
- "vitest/valid-expect": "error",
755
510
  "vitest/valid-title": "error"
756
511
  },
757
512
  },
@@ -830,7 +585,6 @@ export default [
830
585
  "storybook": storybookPlugin,
831
586
  },
832
587
  rules: {
833
- "import/no-default-export": "off",
834
588
  "max-lines": "off",
835
589
  "max-lines-per-function": "off",
836
590
  "storybook/await-interactions": "error",
@@ -852,10 +606,7 @@ export default [
852
606
  name: "eslint-config-setup/config-files",
853
607
  files: ["**/*.config.{ts,mts,cts,js,mjs,cjs}","**/vite.config.*","**/vitest.config.*","**/next.config.*","**/tailwind.config.*","**/postcss.config.*"],
854
608
  rules: {
855
- "@typescript-eslint/no-magic-numbers": "off",
856
- "@typescript-eslint/no-require-imports": "off",
857
609
  "complexity": "off",
858
- "import/no-default-export": "off",
859
610
  "max-lines": "off",
860
611
  "max-lines-per-function": "off",
861
612
  "max-statements": "off",
@@ -869,16 +620,7 @@ export default [
869
620
  name: "eslint-config-setup/declarations",
870
621
  files: ["**/*.d.ts"],
871
622
  rules: {
872
- "@typescript-eslint/consistent-type-definitions": "off",
873
- "@typescript-eslint/explicit-function-return-type": "off",
874
623
  "@typescript-eslint/naming-convention": "off",
875
- "@typescript-eslint/no-empty-interface": "off",
876
- "@typescript-eslint/no-empty-object-type": "off",
877
- "@typescript-eslint/no-explicit-any": "off",
878
- "@typescript-eslint/no-namespace": "off",
879
- "@typescript-eslint/no-unused-vars": "off",
880
- "import/no-duplicates": "off",
881
- "unicorn/filename-case": "off",
882
624
  "unicorn/prevent-abbreviations": "off",
883
625
  "unused-imports/no-unused-imports": "off"
884
626
  },
@@ -889,12 +631,10 @@ export default [
889
631
  name: "eslint-config-setup/scripts",
890
632
  files: ["**/scripts/**/*.{ts,mts,js,mjs}"],
891
633
  rules: {
892
- "@typescript-eslint/explicit-function-return-type": "off",
893
634
  "max-lines": "off",
894
635
  "max-lines-per-function": "off",
895
636
  "no-console": "off",
896
- "node/no-process-exit": "off",
897
- "unicorn/no-process-exit": "off"
637
+ "node/no-process-exit": "off"
898
638
  },
899
639
  },
900
640
 
@@ -951,10 +691,10 @@ export default [
951
691
  },
952
692
 
953
693
  // OxLint integration — disables rules already covered by OxLint
954
- { name: "eslint-config-setup/oxlint", ...oxlintPlugin.configs["flat/recommended"] },
955
- { name: "eslint-config-setup/oxlint-typescript", ...oxlintPlugin.configs["flat/typescript"] },
956
- { name: "eslint-config-setup/oxlint-unicorn", ...oxlintPlugin.configs["flat/unicorn"] },
957
- { name: "eslint-config-setup/oxlint-import", ...oxlintPlugin.configs["flat/import"] },
958
- { name: "eslint-config-setup/oxlint-jsdoc", ...oxlintPlugin.configs["flat/jsdoc"] },
694
+ ...[oxlintPlugin.configs["flat/recommended"]].flat().map((c) => ({ name: "eslint-config-setup/oxlint", ...c })),
695
+ ...[oxlintPlugin.configs["flat/typescript"]].flat().map((c) => ({ name: "eslint-config-setup/oxlint-typescript", ...c })),
696
+ ...[oxlintPlugin.configs["flat/unicorn"]].flat().map((c) => ({ name: "eslint-config-setup/oxlint-unicorn", ...c })),
697
+ ...[oxlintPlugin.configs["flat/import"]].flat().map((c) => ({ name: "eslint-config-setup/oxlint-import", ...c })),
698
+ ...[oxlintPlugin.configs["flat/jsdoc"]].flat().map((c) => ({ name: "eslint-config-setup/oxlint-jsdoc", ...c })),
959
699
 
960
700
  ]