eslint-config-setup 0.3.1 → 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.
@@ -17,7 +17,6 @@ import perfectionistPlugin from "eslint-plugin-perfectionist"
17
17
  import playwrightPlugin from "eslint-plugin-playwright"
18
18
  import reactEffectPlugin from "eslint-plugin-react-you-might-not-need-an-effect"
19
19
  import reactHooksPlugin from "eslint-plugin-react-hooks"
20
- import reactRefreshPlugin from "eslint-plugin-react-refresh"
21
20
  import regexpPlugin from "eslint-plugin-regexp"
22
21
  import securityPlugin from "eslint-plugin-security"
23
22
  import sonarjsPlugin from "eslint-plugin-sonarjs"
@@ -50,7 +49,6 @@ export default [
50
49
  "react": eslintReactPlugin,
51
50
  "react-dom": eslintReactPlugin.configs.dom.plugins["@eslint-react/dom"],
52
51
  "react-hooks": reactHooksPlugin,
53
- "react-refresh": reactRefreshPlugin,
54
52
  "react-web-api": eslintReactPlugin.configs["web-api"].plugins["@eslint-react/web-api"],
55
53
  "react-you-might-not-need-an-effect": reactEffectPlugin,
56
54
  "regexp": regexpPlugin,
@@ -87,51 +85,14 @@ export default [
87
85
  }
88
86
  ],
89
87
  "@stylistic/jsx-self-closing-comp": "error",
90
- "@typescript-eslint/adjacent-overload-signatures": "error",
91
- "@typescript-eslint/array-type": [
92
- "error",
93
- {
94
- "default": "array-simple"
95
- }
96
- ],
97
88
  "@typescript-eslint/await-thenable": "error",
98
- "@typescript-eslint/ban-ts-comment": [
99
- "error",
100
- {
101
- "minimumDescriptionLength": 10
102
- }
103
- ],
104
- "@typescript-eslint/ban-tslint-comment": "error",
105
- "@typescript-eslint/class-literal-property-style": "error",
106
- "@typescript-eslint/consistent-generic-constructors": "error",
107
- "@typescript-eslint/consistent-indexed-object-style": "error",
108
- "@typescript-eslint/consistent-type-assertions": "error",
109
- "@typescript-eslint/consistent-type-definitions": [
110
- "error",
111
- "type"
112
- ],
113
89
  "@typescript-eslint/consistent-type-exports": [
114
90
  "error",
115
91
  {
116
92
  "fixMixedExportsWithInlineTypeSpecifier": true
117
93
  }
118
94
  ],
119
- "@typescript-eslint/consistent-type-imports": [
120
- "error",
121
- {
122
- "fixStyle": "inline-type-imports"
123
- }
124
- ],
125
95
  "@typescript-eslint/dot-notation": "error",
126
- "@typescript-eslint/explicit-function-return-type": [
127
- "error",
128
- {
129
- "allowExpressions": true,
130
- "allowTypedFunctionExpressions": true,
131
- "allowHigherOrderFunctions": true,
132
- "allowIIFEs": true
133
- }
134
- ],
135
96
  "@typescript-eslint/explicit-member-accessibility": "error",
136
97
  "@typescript-eslint/member-ordering": [
137
98
  "warn",
@@ -314,25 +275,11 @@ export default [
314
275
  ]
315
276
  }
316
277
  ],
317
- "@typescript-eslint/no-array-constructor": "error",
318
278
  "@typescript-eslint/no-array-delete": "error",
319
279
  "@typescript-eslint/no-base-to-string": "error",
320
- "@typescript-eslint/no-confusing-non-null-assertion": "error",
321
280
  "@typescript-eslint/no-confusing-void-expression": "error",
322
281
  "@typescript-eslint/no-deprecated": "warn",
323
- "@typescript-eslint/no-duplicate-enum-values": "error",
324
282
  "@typescript-eslint/no-duplicate-type-constituents": "error",
325
- "@typescript-eslint/no-dynamic-delete": "error",
326
- "@typescript-eslint/no-empty-function": "error",
327
- "@typescript-eslint/no-empty-object-type": "error",
328
- "@typescript-eslint/no-explicit-any": [
329
- "error",
330
- {
331
- "fixToUnknown": true
332
- }
333
- ],
334
- "@typescript-eslint/no-extra-non-null-assertion": "error",
335
- "@typescript-eslint/no-extraneous-class": "error",
336
283
  "@typescript-eslint/no-floating-promises": [
337
284
  "error",
338
285
  {
@@ -342,102 +289,32 @@ export default [
342
289
  ],
343
290
  "@typescript-eslint/no-for-in-array": "error",
344
291
  "@typescript-eslint/no-implied-eval": "error",
345
- "@typescript-eslint/no-import-type-side-effects": "error",
346
- "@typescript-eslint/no-inferrable-types": "error",
347
- "@typescript-eslint/no-invalid-void-type": "error",
348
- "@typescript-eslint/no-magic-numbers": [
349
- "error",
350
- {
351
- "ignore": [
352
- -1,
353
- 0,
354
- 1,
355
- 2
356
- ],
357
- "ignoreArrayIndexes": true,
358
- "ignoreDefaultValues": true,
359
- "enforceConst": true,
360
- "ignoreClassFieldInitialValues": true,
361
- "ignoreEnums": true,
362
- "ignoreNumericLiteralTypes": true,
363
- "ignoreReadonlyClassProperties": true,
364
- "ignoreTypeIndexes": true
365
- }
366
- ],
367
292
  "@typescript-eslint/no-meaningless-void-operator": "error",
368
- "@typescript-eslint/no-misused-new": "error",
369
293
  "@typescript-eslint/no-misused-promises": "error",
370
294
  "@typescript-eslint/no-misused-spread": "error",
371
295
  "@typescript-eslint/no-mixed-enums": "error",
372
- "@typescript-eslint/no-namespace": "error",
373
- "@typescript-eslint/no-non-null-asserted-nullish-coalescing": "error",
374
- "@typescript-eslint/no-non-null-asserted-optional-chain": "error",
375
- "@typescript-eslint/no-non-null-assertion": "error",
376
296
  "@typescript-eslint/no-redundant-type-constituents": "error",
377
- "@typescript-eslint/no-require-imports": "error",
378
- "@typescript-eslint/no-shadow": [
379
- "error",
380
- {
381
- "hoist": "all",
382
- "allow": [
383
- "resolve",
384
- "reject",
385
- "done",
386
- "next",
387
- "error"
388
- ],
389
- "ignoreTypeValueShadow": true,
390
- "ignoreFunctionTypeParameterNameValueShadow": true
391
- }
392
- ],
393
- "@typescript-eslint/no-this-alias": "error",
394
297
  "@typescript-eslint/no-unnecessary-boolean-literal-compare": "error",
395
298
  "@typescript-eslint/no-unnecessary-condition": "error",
396
- "@typescript-eslint/no-unnecessary-parameter-property-assignment": "error",
397
299
  "@typescript-eslint/no-unnecessary-qualifier": "error",
398
300
  "@typescript-eslint/no-unnecessary-template-expression": "error",
399
301
  "@typescript-eslint/no-unnecessary-type-arguments": "error",
400
302
  "@typescript-eslint/no-unnecessary-type-assertion": "error",
401
- "@typescript-eslint/no-unnecessary-type-constraint": "error",
402
303
  "@typescript-eslint/no-unnecessary-type-conversion": "error",
403
304
  "@typescript-eslint/no-unnecessary-type-parameters": "error",
404
305
  "@typescript-eslint/no-unsafe-argument": "error",
405
306
  "@typescript-eslint/no-unsafe-assignment": "error",
406
307
  "@typescript-eslint/no-unsafe-call": "error",
407
- "@typescript-eslint/no-unsafe-declaration-merging": "error",
408
308
  "@typescript-eslint/no-unsafe-enum-comparison": "error",
409
- "@typescript-eslint/no-unsafe-function-type": "error",
410
309
  "@typescript-eslint/no-unsafe-member-access": "error",
411
310
  "@typescript-eslint/no-unsafe-return": "error",
412
311
  "@typescript-eslint/no-unsafe-type-assertion": "error",
413
312
  "@typescript-eslint/no-unsafe-unary-minus": "error",
414
- "@typescript-eslint/no-unused-expressions": "error",
415
- "@typescript-eslint/no-unused-vars": [
416
- "error",
417
- {
418
- "args": "all",
419
- "argsIgnorePattern": "^_",
420
- "caughtErrors": "all",
421
- "caughtErrorsIgnorePattern": "^_",
422
- "destructuredArrayIgnorePattern": "^_",
423
- "varsIgnorePattern": "^_",
424
- "ignoreRestSiblings": true
425
- }
426
- ],
427
- "@typescript-eslint/no-useless-constructor": "error",
428
313
  "@typescript-eslint/no-useless-default-assignment": "error",
429
- "@typescript-eslint/no-useless-empty-export": "error",
430
- "@typescript-eslint/no-wrapper-object-types": "error",
431
314
  "@typescript-eslint/non-nullable-type-assertion-style": "error",
432
315
  "@typescript-eslint/only-throw-error": "error",
433
- "@typescript-eslint/prefer-as-const": "error",
434
- "@typescript-eslint/prefer-enum-initializers": "error",
435
316
  "@typescript-eslint/prefer-find": "error",
436
- "@typescript-eslint/prefer-for-of": "error",
437
- "@typescript-eslint/prefer-function-type": "error",
438
317
  "@typescript-eslint/prefer-includes": "error",
439
- "@typescript-eslint/prefer-literal-enum-member": "error",
440
- "@typescript-eslint/prefer-namespace-keyword": "error",
441
318
  "@typescript-eslint/prefer-nullish-coalescing": "error",
442
319
  "@typescript-eslint/prefer-optional-chain": "error",
443
320
  "@typescript-eslint/prefer-promise-reject-errors": "error",
@@ -490,9 +367,7 @@ export default [
490
367
  "requireDefaultForNonUnion": true
491
368
  }
492
369
  ],
493
- "@typescript-eslint/triple-slash-reference": "error",
494
370
  "@typescript-eslint/unbound-method": "error",
495
- "@typescript-eslint/unified-signatures": "error",
496
371
  "@typescript-eslint/use-unknown-in-catch-callback-variable": "error",
497
372
  "accessor-pairs": [
498
373
  "error",
@@ -516,98 +391,34 @@ export default [
516
391
  "de-morgan/no-negated-disjunction": "error",
517
392
  "default-case-last": "error",
518
393
  "eqeqeq": "error",
519
- "for-direction": "error",
520
394
  "grouped-accessor-pairs": [
521
395
  "error",
522
396
  "getBeforeSet"
523
397
  ],
524
398
  "guard-for-in": "error",
525
- "import/first": "error",
526
399
  "import/newline-after-import": "error",
527
- "import/no-absolute-path": "error",
528
- "import/no-cycle": [
529
- "error",
530
- {
531
- "maxDepth": 3
532
- }
533
- ],
534
- "import/no-duplicates": [
535
- "error",
536
- {
537
- "prefer-inline": true
538
- }
539
- ],
540
- "import/no-empty-named-blocks": "error",
541
- "import/no-mutable-exports": "error",
542
- "import/no-named-as-default": "error",
543
- "import/no-named-as-default-member": "error",
544
- "import/no-self-import": "error",
545
400
  "import/no-useless-path-segments": "error",
546
- "jsdoc/check-access": "error",
547
401
  "jsdoc/check-alignment": "error",
548
402
  "jsdoc/check-param-names": "error",
549
- "jsdoc/check-property-names": "error",
550
- "jsdoc/check-tag-names": "error",
551
403
  "jsdoc/check-types": "error",
552
404
  "jsdoc/check-values": "error",
553
- "jsdoc/empty-tags": "error",
554
405
  "jsdoc/escape-inline-tags": "error",
555
- "jsdoc/implements-on-classes": "error",
556
406
  "jsdoc/informative-docs": "error",
557
407
  "jsdoc/multiline-blocks": "error",
558
- "jsdoc/no-defaults": "error",
559
408
  "jsdoc/no-multi-asterisks": "error",
560
409
  "jsdoc/no-types": "error",
561
410
  "jsdoc/no-undefined-types": "error",
562
411
  "jsdoc/reject-any-type": "error",
563
412
  "jsdoc/reject-function-type": "error",
564
413
  "jsdoc/require-next-type": "error",
565
- "jsdoc/require-param": "error",
566
- "jsdoc/require-param-description": "warn",
567
- "jsdoc/require-param-name": "error",
568
- "jsdoc/require-property": "error",
569
- "jsdoc/require-property-description": "error",
570
- "jsdoc/require-property-name": "error",
571
- "jsdoc/require-returns": "error",
572
414
  "jsdoc/require-returns-check": "error",
573
- "jsdoc/require-returns-description": "warn",
574
415
  "jsdoc/require-throws-type": "error",
575
416
  "jsdoc/require-yields-check": "error",
576
417
  "jsdoc/require-yields-type": "error",
577
418
  "jsdoc/ts-no-empty-object-type": "error",
578
419
  "jsdoc/valid-types": "error",
579
- "jsx-a11y/alt-text": "error",
580
- "jsx-a11y/anchor-has-content": "error",
581
- "jsx-a11y/anchor-is-valid": "error",
582
- "jsx-a11y/aria-activedescendant-has-tabindex": "error",
583
- "jsx-a11y/aria-props": "error",
584
- "jsx-a11y/aria-proptypes": "error",
585
- "jsx-a11y/aria-role": "error",
586
- "jsx-a11y/aria-unsupported-elements": "error",
587
- "jsx-a11y/autocomplete-valid": "error",
588
- "jsx-a11y/click-events-have-key-events": "error",
589
- "jsx-a11y/heading-has-content": "error",
590
- "jsx-a11y/html-has-lang": "error",
591
- "jsx-a11y/img-redundant-alt": "error",
592
420
  "jsx-a11y/interactive-supports-focus": "error",
593
- "jsx-a11y/label-has-associated-control": "error",
594
- "jsx-a11y/lang": "error",
595
- "jsx-a11y/mouse-events-have-key-events": "error",
596
- "jsx-a11y/no-access-key": "error",
597
- "jsx-a11y/no-autofocus": [
598
- "error",
599
- {
600
- "ignoreNonDOM": true
601
- }
602
- ],
603
- "jsx-a11y/no-distracting-elements": "error",
604
421
  "jsx-a11y/no-noninteractive-element-interactions": "error",
605
- "jsx-a11y/no-redundant-roles": "error",
606
- "jsx-a11y/no-static-element-interactions": "error",
607
- "jsx-a11y/role-has-required-aria-props": "error",
608
- "jsx-a11y/role-supports-aria-props": "error",
609
- "jsx-a11y/scope": "error",
610
- "jsx-a11y/tabindex-no-positive": "error",
611
422
  "logical-assignment-operators": [
612
423
  "error",
613
424
  "always",
@@ -648,20 +459,9 @@ export default [
648
459
  15
649
460
  ],
650
461
  "no-alert": "error",
651
- "no-async-promise-executor": "error",
652
462
  "no-await-in-loop": "error",
653
- "no-caller": "error",
654
463
  "no-case-declarations": "error",
655
- "no-compare-neg-zero": "error",
656
- "no-cond-assign": "error",
657
- "no-constant-binary-expression": "error",
658
- "no-constant-condition": "error",
659
464
  "no-constructor-return": "error",
660
- "no-control-regex": "error",
661
- "no-debugger": "error",
662
- "no-delete-var": "error",
663
- "no-dupe-else-if": "error",
664
- "no-duplicate-case": "error",
665
465
  "no-else-return": [
666
466
  "error",
667
467
  {
@@ -669,23 +469,13 @@ export default [
669
469
  }
670
470
  ],
671
471
  "no-empty": "error",
672
- "no-empty-pattern": "error",
673
- "no-empty-static-block": "error",
674
- "no-eval": "error",
675
- "no-ex-assign": "error",
676
472
  "no-extend-native": "error",
677
473
  "no-extra-bind": "error",
678
- "no-extra-boolean-cast": "error",
679
474
  "no-fallthrough": "error",
680
- "no-global-assign": "error",
681
475
  "no-implicit-coercion": "error",
682
- "no-irregular-whitespace": "error",
683
- "no-iterator": "error",
684
476
  "no-labels": "error",
685
477
  "no-lone-blocks": "error",
686
478
  "no-lonely-if": "error",
687
- "no-loss-of-precision": "error",
688
- "no-misleading-character-class": "error",
689
479
  "no-multi-assign": "error",
690
480
  "no-multi-str": "error",
691
481
  "no-negated-condition": "error",
@@ -693,7 +483,6 @@ export default [
693
483
  "no-new": "error",
694
484
  "no-new-func": "error",
695
485
  "no-new-wrappers": "error",
696
- "no-nonoctal-decimal-escape": "error",
697
486
  "no-object-constructor": "error",
698
487
  "no-octal": "error",
699
488
  "no-octal-escape": "error",
@@ -712,27 +501,16 @@ export default [
712
501
  "always"
713
502
  ],
714
503
  "no-script-url": "error",
715
- "no-self-assign": "error",
716
504
  "no-self-compare": "error",
717
505
  "no-sequences": "error",
718
- "no-shadow-restricted-names": "error",
719
- "no-sparse-arrays": "error",
720
506
  "no-template-curly-in-string": "error",
721
- "no-unassigned-vars": "error",
722
507
  "no-unmodified-loop-condition": "error",
723
508
  "no-unneeded-ternary": "error",
724
509
  "no-unreachable-loop": "error",
725
- "no-unsafe-finally": "error",
726
- "no-unsafe-optional-chaining": "error",
727
- "no-unused-labels": "error",
728
- "no-unused-private-class-members": "error",
729
510
  "no-useless-assignment": "error",
730
511
  "no-useless-call": "error",
731
- "no-useless-catch": "error",
732
512
  "no-useless-computed-key": "error",
733
513
  "no-useless-concat": "error",
734
- "no-useless-escape": "error",
735
- "no-useless-rename": "error",
736
514
  "no-useless-return": "error",
737
515
  "no-var": "error",
738
516
  "no-warning-comments": "warn",
@@ -799,14 +577,7 @@ export default [
799
577
  "react-dom/no-unknown-property": "error",
800
578
  "react-dom/no-unsafe-target-blank": "error",
801
579
  "react-dom/no-void-elements-with-children": "error",
802
- "react-hooks/exhaustive-deps": "error",
803
580
  "react-hooks/rules-of-hooks": "error",
804
- "react-refresh/only-export-components": [
805
- "warn",
806
- {
807
- "allowConstantExport": true
808
- }
809
- ],
810
581
  "react-web-api/no-leaked-event-listener": "error",
811
582
  "react-web-api/no-leaked-interval": "error",
812
583
  "react-web-api/no-leaked-resize-observer": "error",
@@ -820,13 +591,9 @@ export default [
820
591
  "react-you-might-not-need-an-effect/no-pass-data-to-parent": "error",
821
592
  "react-you-might-not-need-an-effect/no-pass-live-state-to-parent": "error",
822
593
  "react-you-might-not-need-an-effect/no-reset-all-state-on-prop-change": "error",
823
- "react/jsx-no-comment-textnodes": "error",
824
594
  "react/jsx-shorthand-boolean": "error",
825
595
  "react/no-access-state-in-setstate": "error",
826
- "react/no-array-index-key": "error",
827
- "react/no-children-prop": "error",
828
596
  "react/no-context-provider": "error",
829
- "react/no-direct-mutation-state": "error",
830
597
  "react/no-duplicate-key": "error",
831
598
  "react/no-forward-ref": "error",
832
599
  "react/no-leaked-conditional-rendering": "error",
@@ -910,7 +677,6 @@ export default [
910
677
  "regexp/use-ignore-case": "error",
911
678
  "require-atomic-updates": "error",
912
679
  "require-unicode-regexp": "error",
913
- "require-yield": "error",
914
680
  "security/detect-bidi-characters": "error",
915
681
  "security/detect-buffer-noassert": "error",
916
682
  "security/detect-child-process": "error",
@@ -965,118 +731,24 @@ export default [
965
731
  "sonarjs/public-static-readonly": "error",
966
732
  "sonarjs/reduce-initial-value": "error",
967
733
  "symbol-description": "error",
968
- "unicorn/better-regex": "error",
969
- "unicorn/catch-error-name": [
970
- "error",
971
- {
972
- "name": "error"
973
- }
974
- ],
975
- "unicorn/consistent-date-clone": "error",
976
- "unicorn/consistent-empty-array-spread": "error",
977
- "unicorn/consistent-existence-index-check": "error",
978
- "unicorn/consistent-function-scoping": "error",
979
734
  "unicorn/custom-error-definition": "error",
980
- "unicorn/error-message": "error",
981
- "unicorn/explicit-length-check": "error",
982
- "unicorn/filename-case": [
983
- "error",
984
- {
985
- "cases": {
986
- "camelCase": true,
987
- "pascalCase": true
988
- }
989
- }
990
- ],
991
- "unicorn/new-for-builtins": "error",
992
- "unicorn/no-abusive-eslint-disable": "error",
993
- "unicorn/no-accessor-recursion": "error",
994
- "unicorn/no-anonymous-default-export": "error",
995
- "unicorn/no-array-callback-reference": "error",
996
- "unicorn/no-array-for-each": "error",
997
- "unicorn/no-array-method-this-argument": "error",
998
735
  "unicorn/no-array-push-push": "error",
999
- "unicorn/no-array-reduce": "error",
1000
- "unicorn/no-await-expression-member": "error",
1001
- "unicorn/no-await-in-promise-methods": "error",
1002
736
  "unicorn/no-for-loop": "error",
1003
- "unicorn/no-instanceof-builtins": "error",
1004
- "unicorn/no-invalid-fetch-options": "error",
1005
- "unicorn/no-invalid-remove-event-listener": "error",
1006
- "unicorn/no-negation-in-equality-check": "error",
1007
- "unicorn/no-new-array": "error",
1008
- "unicorn/no-new-buffer": "error",
1009
- "unicorn/no-thenable": "error",
1010
- "unicorn/no-this-assignment": "error",
1011
- "unicorn/no-typeof-undefined": "error",
1012
- "unicorn/no-unnecessary-await": "error",
1013
- "unicorn/no-unnecessary-slice-end": "error",
1014
- "unicorn/no-unreadable-array-destructuring": "error",
1015
- "unicorn/no-unreadable-iife": "error",
1016
- "unicorn/no-useless-fallback-in-spread": "error",
1017
- "unicorn/no-useless-length-check": "error",
1018
- "unicorn/no-useless-promise-resolve-reject": "error",
1019
- "unicorn/no-useless-spread": "error",
1020
- "unicorn/no-useless-switch-case": "error",
1021
- "unicorn/no-useless-undefined": "error",
1022
- "unicorn/no-zero-fractions": "error",
1023
- "unicorn/numeric-separators-style": "error",
1024
- "unicorn/prefer-array-find": "error",
1025
- "unicorn/prefer-array-flat": "error",
1026
- "unicorn/prefer-array-flat-map": "error",
1027
- "unicorn/prefer-array-index-of": "error",
1028
- "unicorn/prefer-array-some": "error",
1029
- "unicorn/prefer-at": "error",
1030
- "unicorn/prefer-date-now": "error",
1031
- "unicorn/prefer-default-parameters": "error",
1032
737
  "unicorn/prefer-export-from": [
1033
738
  "error",
1034
739
  {
1035
740
  "ignoreUsedVariables": true
1036
741
  }
1037
742
  ],
1038
- "unicorn/prefer-global-this": "error",
1039
743
  "unicorn/prefer-import-meta-properties": "error",
1040
- "unicorn/prefer-includes": "error",
1041
- "unicorn/prefer-logical-operator-over-ternary": "error",
1042
- "unicorn/prefer-math-min-max": "error",
1043
- "unicorn/prefer-modern-dom-apis": "error",
1044
- "unicorn/prefer-modern-math-apis": "error",
1045
- "unicorn/prefer-native-coercion-functions": "error",
1046
- "unicorn/prefer-negative-index": "error",
1047
- "unicorn/prefer-node-protocol": "error",
1048
- "unicorn/prefer-number-properties": "error",
1049
- "unicorn/prefer-object-from-entries": "error",
1050
- "unicorn/prefer-optional-catch-binding": "error",
1051
- "unicorn/prefer-regexp-test": "error",
1052
- "unicorn/prefer-set-has": "error",
1053
- "unicorn/prefer-set-size": "error",
1054
- "unicorn/prefer-spread": "error",
1055
- "unicorn/prefer-string-replace-all": "error",
1056
- "unicorn/prefer-string-slice": "error",
1057
- "unicorn/prefer-string-starts-ends-with": "error",
1058
- "unicorn/prefer-string-trim-start-end": "error",
1059
- "unicorn/prefer-structured-clone": "error",
1060
744
  "unicorn/prefer-switch": [
1061
745
  "error",
1062
746
  {
1063
747
  "minimumCases": 3
1064
748
  }
1065
749
  ],
1066
- "unicorn/prefer-ternary": [
1067
- "error",
1068
- "only-single-line"
1069
- ],
1070
- "unicorn/prefer-top-level-await": "error",
1071
- "unicorn/prefer-type-error": "error",
1072
750
  "unicorn/prevent-abbreviations": "error",
1073
- "unicorn/relative-url-style": "error",
1074
- "unicorn/switch-case-braces": "error",
1075
- "unicorn/text-encoding-identifier-case": "error",
1076
- "unicorn/throw-new-error": "error",
1077
751
  "unused-imports/no-unused-imports": "error",
1078
- "use-isnan": "error",
1079
- "valid-typeof": "error",
1080
752
  "yoda": "error"
1081
753
  },
1082
754
  },
@@ -1139,25 +811,12 @@ export default [
1139
811
  "@typescript-eslint/strict-void-return": "off",
1140
812
  "@typescript-eslint/unbound-method": "off",
1141
813
  "@typescript-eslint/use-unknown-in-catch-callback-variable": "off",
1142
- "constructor-super": "error",
1143
814
  "getter-return": "error",
1144
- "no-class-assign": "error",
1145
- "no-const-assign": "error",
1146
815
  "no-dupe-args": "error",
1147
- "no-dupe-class-members": "error",
1148
- "no-dupe-keys": "error",
1149
- "no-func-assign": "error",
1150
- "no-import-assign": "error",
1151
- "no-new-native-nonconstructor": "error",
1152
816
  "no-new-symbol": "off",
1153
- "no-obj-calls": "error",
1154
817
  "no-redeclare": "error",
1155
- "no-setter-return": "error",
1156
- "no-this-before-super": "error",
1157
818
  "no-undef": "error",
1158
- "no-unreachable": "error",
1159
- "no-unsafe-negation": "error",
1160
- "no-with": "error"
819
+ "no-unreachable": "error"
1161
820
  },
1162
821
  },
1163
822
 
@@ -1170,11 +829,7 @@ export default [
1170
829
  "testing-library": testingLibraryPlugin,
1171
830
  },
1172
831
  rules: {
1173
- "@typescript-eslint/explicit-function-return-type": "off",
1174
832
  "@typescript-eslint/naming-convention": "off",
1175
- "@typescript-eslint/no-explicit-any": "off",
1176
- "@typescript-eslint/no-magic-numbers": "off",
1177
- "@typescript-eslint/no-non-null-assertion": "off",
1178
833
  "@typescript-eslint/no-unsafe-assignment": "off",
1179
834
  "@typescript-eslint/no-unsafe-member-access": "off",
1180
835
  "max-lines": "off",
@@ -1200,22 +855,15 @@ export default [
1200
855
  "testing-library/prefer-screen-queries": "error",
1201
856
  "testing-library/render-result-naming-convention": "error",
1202
857
  "unicorn/prevent-abbreviations": "off",
1203
- "vitest/expect-expect": "error",
1204
- "vitest/no-conditional-expect": "error",
1205
858
  "vitest/no-conditional-in-test": "error",
1206
- "vitest/no-disabled-tests": "warn",
1207
859
  "vitest/no-duplicate-hooks": "error",
1208
- "vitest/no-focused-tests": "error",
1209
860
  "vitest/no-identical-title": "error",
1210
- "vitest/no-standalone-expect": "error",
1211
861
  "vitest/prefer-hooks-on-top": "error",
1212
862
  "vitest/prefer-spy-on": "error",
1213
863
  "vitest/prefer-strict-equal": "error",
1214
864
  "vitest/prefer-to-be": "error",
1215
865
  "vitest/prefer-to-have-length": "error",
1216
- "vitest/require-to-throw-message": "error",
1217
866
  "vitest/require-top-level-describe": "error",
1218
- "vitest/valid-expect": "error",
1219
867
  "vitest/valid-title": "error"
1220
868
  },
1221
869
  },
@@ -1256,8 +904,6 @@ export default [
1256
904
  "playwright": playwrightPlugin,
1257
905
  },
1258
906
  rules: {
1259
- "@typescript-eslint/explicit-function-return-type": "off",
1260
- "@typescript-eslint/no-magic-numbers": "off",
1261
907
  "max-lines": "off",
1262
908
  "max-lines-per-function": "off",
1263
909
  "max-statements": "off",
@@ -1295,7 +941,6 @@ export default [
1295
941
  "storybook": storybookPlugin,
1296
942
  },
1297
943
  rules: {
1298
- "import/no-default-export": "off",
1299
944
  "max-lines": "off",
1300
945
  "max-lines-per-function": "off",
1301
946
  "storybook/await-interactions": "error",
@@ -1317,12 +962,8 @@ export default [
1317
962
  name: "eslint-config-setup/config-files",
1318
963
  files: ["**/*.config.{ts,mts,cts,js,mjs,cjs}","**/vite.config.*","**/vitest.config.*","**/next.config.*","**/tailwind.config.*","**/postcss.config.*"],
1319
964
  rules: {
1320
- "@typescript-eslint/explicit-function-return-type": "off",
1321
965
  "@typescript-eslint/naming-convention": "off",
1322
- "@typescript-eslint/no-magic-numbers": "off",
1323
- "@typescript-eslint/no-require-imports": "off",
1324
966
  "complexity": "off",
1325
- "import/no-default-export": "off",
1326
967
  "max-lines": "off",
1327
968
  "max-lines-per-function": "off",
1328
969
  "max-statements": "off",
@@ -1336,17 +977,7 @@ export default [
1336
977
  name: "eslint-config-setup/declarations",
1337
978
  files: ["**/*.d.ts"],
1338
979
  rules: {
1339
- "@typescript-eslint/consistent-type-definitions": "off",
1340
- "@typescript-eslint/explicit-function-return-type": "off",
1341
980
  "@typescript-eslint/naming-convention": "off",
1342
- "@typescript-eslint/no-empty-interface": "off",
1343
- "@typescript-eslint/no-empty-object-type": "off",
1344
- "@typescript-eslint/no-explicit-any": "off",
1345
- "@typescript-eslint/no-magic-numbers": "off",
1346
- "@typescript-eslint/no-namespace": "off",
1347
- "@typescript-eslint/no-unused-vars": "off",
1348
- "import/no-duplicates": "off",
1349
- "unicorn/filename-case": "off",
1350
981
  "unicorn/prevent-abbreviations": "off",
1351
982
  "unused-imports/no-unused-imports": "off"
1352
983
  },
@@ -1357,12 +988,10 @@ export default [
1357
988
  name: "eslint-config-setup/scripts",
1358
989
  files: ["**/scripts/**/*.{ts,mts,js,mjs}"],
1359
990
  rules: {
1360
- "@typescript-eslint/explicit-function-return-type": "off",
1361
991
  "max-lines": "off",
1362
992
  "max-lines-per-function": "off",
1363
993
  "no-console": "off",
1364
- "node/no-process-exit": "off",
1365
- "unicorn/no-process-exit": "off"
994
+ "node/no-process-exit": "off"
1366
995
  },
1367
996
  },
1368
997
 
@@ -1429,12 +1058,12 @@ export default [
1429
1058
  },
1430
1059
 
1431
1060
  // OxLint integration — disables rules already covered by OxLint
1432
- { name: "eslint-config-setup/oxlint", ...oxlintPlugin.configs["flat/recommended"] },
1433
- { name: "eslint-config-setup/oxlint-react", ...oxlintPlugin.configs["flat/react"] },
1434
- { name: "eslint-config-setup/oxlint-jsx-a11y", ...oxlintPlugin.configs["flat/jsx-a11y"] },
1435
- { name: "eslint-config-setup/oxlint-typescript", ...oxlintPlugin.configs["flat/typescript"] },
1436
- { name: "eslint-config-setup/oxlint-unicorn", ...oxlintPlugin.configs["flat/unicorn"] },
1437
- { name: "eslint-config-setup/oxlint-import", ...oxlintPlugin.configs["flat/import"] },
1438
- { name: "eslint-config-setup/oxlint-jsdoc", ...oxlintPlugin.configs["flat/jsdoc"] },
1061
+ ...[oxlintPlugin.configs["flat/recommended"]].flat().map((c) => ({ name: "eslint-config-setup/oxlint", ...c })),
1062
+ ...[oxlintPlugin.configs["flat/react"]].flat().map((c) => ({ name: "eslint-config-setup/oxlint-react", ...c })),
1063
+ ...[oxlintPlugin.configs["flat/jsx-a11y"]].flat().map((c) => ({ name: "eslint-config-setup/oxlint-jsx-a11y", ...c })),
1064
+ ...[oxlintPlugin.configs["flat/typescript"]].flat().map((c) => ({ name: "eslint-config-setup/oxlint-typescript", ...c })),
1065
+ ...[oxlintPlugin.configs["flat/unicorn"]].flat().map((c) => ({ name: "eslint-config-setup/oxlint-unicorn", ...c })),
1066
+ ...[oxlintPlugin.configs["flat/import"]].flat().map((c) => ({ name: "eslint-config-setup/oxlint-import", ...c })),
1067
+ ...[oxlintPlugin.configs["flat/jsdoc"]].flat().map((c) => ({ name: "eslint-config-setup/oxlint-jsdoc", ...c })),
1439
1068
 
1440
1069
  ]