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.
@@ -16,7 +16,6 @@ import perfectionistPlugin from "eslint-plugin-perfectionist"
16
16
  import playwrightPlugin from "eslint-plugin-playwright"
17
17
  import reactEffectPlugin from "eslint-plugin-react-you-might-not-need-an-effect"
18
18
  import reactHooksPlugin from "eslint-plugin-react-hooks"
19
- import reactRefreshPlugin from "eslint-plugin-react-refresh"
20
19
  import regexpPlugin from "eslint-plugin-regexp"
21
20
  import securityPlugin from "eslint-plugin-security"
22
21
  import sonarjsPlugin from "eslint-plugin-sonarjs"
@@ -48,7 +47,6 @@ export default [
48
47
  "react": eslintReactPlugin,
49
48
  "react-dom": eslintReactPlugin.configs.dom.plugins["@eslint-react/dom"],
50
49
  "react-hooks": reactHooksPlugin,
51
- "react-refresh": reactRefreshPlugin,
52
50
  "react-web-api": eslintReactPlugin.configs["web-api"].plugins["@eslint-react/web-api"],
53
51
  "react-you-might-not-need-an-effect": reactEffectPlugin,
54
52
  "regexp": regexpPlugin,
@@ -86,51 +84,14 @@ export default [
86
84
  }
87
85
  ],
88
86
  "@stylistic/jsx-self-closing-comp": "error",
89
- "@typescript-eslint/adjacent-overload-signatures": "error",
90
- "@typescript-eslint/array-type": [
91
- "error",
92
- {
93
- "default": "array-simple"
94
- }
95
- ],
96
87
  "@typescript-eslint/await-thenable": "error",
97
- "@typescript-eslint/ban-ts-comment": [
98
- "error",
99
- {
100
- "minimumDescriptionLength": 10
101
- }
102
- ],
103
- "@typescript-eslint/ban-tslint-comment": "error",
104
- "@typescript-eslint/class-literal-property-style": "error",
105
- "@typescript-eslint/consistent-generic-constructors": "error",
106
- "@typescript-eslint/consistent-indexed-object-style": "error",
107
- "@typescript-eslint/consistent-type-assertions": "error",
108
- "@typescript-eslint/consistent-type-definitions": [
109
- "error",
110
- "type"
111
- ],
112
88
  "@typescript-eslint/consistent-type-exports": [
113
89
  "error",
114
90
  {
115
91
  "fixMixedExportsWithInlineTypeSpecifier": true
116
92
  }
117
93
  ],
118
- "@typescript-eslint/consistent-type-imports": [
119
- "error",
120
- {
121
- "fixStyle": "inline-type-imports"
122
- }
123
- ],
124
94
  "@typescript-eslint/dot-notation": "error",
125
- "@typescript-eslint/explicit-function-return-type": [
126
- "error",
127
- {
128
- "allowExpressions": true,
129
- "allowTypedFunctionExpressions": true,
130
- "allowHigherOrderFunctions": true,
131
- "allowIIFEs": true
132
- }
133
- ],
134
95
  "@typescript-eslint/explicit-member-accessibility": "error",
135
96
  "@typescript-eslint/member-ordering": [
136
97
  "warn",
@@ -313,25 +274,11 @@ export default [
313
274
  ]
314
275
  }
315
276
  ],
316
- "@typescript-eslint/no-array-constructor": "error",
317
277
  "@typescript-eslint/no-array-delete": "error",
318
278
  "@typescript-eslint/no-base-to-string": "error",
319
- "@typescript-eslint/no-confusing-non-null-assertion": "error",
320
279
  "@typescript-eslint/no-confusing-void-expression": "error",
321
280
  "@typescript-eslint/no-deprecated": "warn",
322
- "@typescript-eslint/no-duplicate-enum-values": "error",
323
281
  "@typescript-eslint/no-duplicate-type-constituents": "error",
324
- "@typescript-eslint/no-dynamic-delete": "error",
325
- "@typescript-eslint/no-empty-function": "error",
326
- "@typescript-eslint/no-empty-object-type": "error",
327
- "@typescript-eslint/no-explicit-any": [
328
- "error",
329
- {
330
- "fixToUnknown": true
331
- }
332
- ],
333
- "@typescript-eslint/no-extra-non-null-assertion": "error",
334
- "@typescript-eslint/no-extraneous-class": "error",
335
282
  "@typescript-eslint/no-floating-promises": [
336
283
  "error",
337
284
  {
@@ -341,102 +288,32 @@ export default [
341
288
  ],
342
289
  "@typescript-eslint/no-for-in-array": "error",
343
290
  "@typescript-eslint/no-implied-eval": "error",
344
- "@typescript-eslint/no-import-type-side-effects": "error",
345
- "@typescript-eslint/no-inferrable-types": "error",
346
- "@typescript-eslint/no-invalid-void-type": "error",
347
- "@typescript-eslint/no-magic-numbers": [
348
- "error",
349
- {
350
- "ignore": [
351
- -1,
352
- 0,
353
- 1,
354
- 2
355
- ],
356
- "ignoreArrayIndexes": true,
357
- "ignoreDefaultValues": true,
358
- "enforceConst": true,
359
- "ignoreClassFieldInitialValues": true,
360
- "ignoreEnums": true,
361
- "ignoreNumericLiteralTypes": true,
362
- "ignoreReadonlyClassProperties": true,
363
- "ignoreTypeIndexes": true
364
- }
365
- ],
366
291
  "@typescript-eslint/no-meaningless-void-operator": "error",
367
- "@typescript-eslint/no-misused-new": "error",
368
292
  "@typescript-eslint/no-misused-promises": "error",
369
293
  "@typescript-eslint/no-misused-spread": "error",
370
294
  "@typescript-eslint/no-mixed-enums": "error",
371
- "@typescript-eslint/no-namespace": "error",
372
- "@typescript-eslint/no-non-null-asserted-nullish-coalescing": "error",
373
- "@typescript-eslint/no-non-null-asserted-optional-chain": "error",
374
- "@typescript-eslint/no-non-null-assertion": "error",
375
295
  "@typescript-eslint/no-redundant-type-constituents": "error",
376
- "@typescript-eslint/no-require-imports": "error",
377
- "@typescript-eslint/no-shadow": [
378
- "error",
379
- {
380
- "hoist": "all",
381
- "allow": [
382
- "resolve",
383
- "reject",
384
- "done",
385
- "next",
386
- "error"
387
- ],
388
- "ignoreTypeValueShadow": true,
389
- "ignoreFunctionTypeParameterNameValueShadow": true
390
- }
391
- ],
392
- "@typescript-eslint/no-this-alias": "error",
393
296
  "@typescript-eslint/no-unnecessary-boolean-literal-compare": "error",
394
297
  "@typescript-eslint/no-unnecessary-condition": "error",
395
- "@typescript-eslint/no-unnecessary-parameter-property-assignment": "error",
396
298
  "@typescript-eslint/no-unnecessary-qualifier": "error",
397
299
  "@typescript-eslint/no-unnecessary-template-expression": "error",
398
300
  "@typescript-eslint/no-unnecessary-type-arguments": "error",
399
301
  "@typescript-eslint/no-unnecessary-type-assertion": "error",
400
- "@typescript-eslint/no-unnecessary-type-constraint": "error",
401
302
  "@typescript-eslint/no-unnecessary-type-conversion": "error",
402
303
  "@typescript-eslint/no-unnecessary-type-parameters": "error",
403
304
  "@typescript-eslint/no-unsafe-argument": "error",
404
305
  "@typescript-eslint/no-unsafe-assignment": "error",
405
306
  "@typescript-eslint/no-unsafe-call": "error",
406
- "@typescript-eslint/no-unsafe-declaration-merging": "error",
407
307
  "@typescript-eslint/no-unsafe-enum-comparison": "error",
408
- "@typescript-eslint/no-unsafe-function-type": "error",
409
308
  "@typescript-eslint/no-unsafe-member-access": "error",
410
309
  "@typescript-eslint/no-unsafe-return": "error",
411
310
  "@typescript-eslint/no-unsafe-type-assertion": "error",
412
311
  "@typescript-eslint/no-unsafe-unary-minus": "error",
413
- "@typescript-eslint/no-unused-expressions": "error",
414
- "@typescript-eslint/no-unused-vars": [
415
- "error",
416
- {
417
- "args": "all",
418
- "argsIgnorePattern": "^_",
419
- "caughtErrors": "all",
420
- "caughtErrorsIgnorePattern": "^_",
421
- "destructuredArrayIgnorePattern": "^_",
422
- "varsIgnorePattern": "^_",
423
- "ignoreRestSiblings": true
424
- }
425
- ],
426
- "@typescript-eslint/no-useless-constructor": "error",
427
312
  "@typescript-eslint/no-useless-default-assignment": "error",
428
- "@typescript-eslint/no-useless-empty-export": "error",
429
- "@typescript-eslint/no-wrapper-object-types": "error",
430
313
  "@typescript-eslint/non-nullable-type-assertion-style": "error",
431
314
  "@typescript-eslint/only-throw-error": "error",
432
- "@typescript-eslint/prefer-as-const": "error",
433
- "@typescript-eslint/prefer-enum-initializers": "error",
434
315
  "@typescript-eslint/prefer-find": "error",
435
- "@typescript-eslint/prefer-for-of": "error",
436
- "@typescript-eslint/prefer-function-type": "error",
437
316
  "@typescript-eslint/prefer-includes": "error",
438
- "@typescript-eslint/prefer-literal-enum-member": "error",
439
- "@typescript-eslint/prefer-namespace-keyword": "error",
440
317
  "@typescript-eslint/prefer-nullish-coalescing": "error",
441
318
  "@typescript-eslint/prefer-optional-chain": "error",
442
319
  "@typescript-eslint/prefer-promise-reject-errors": "error",
@@ -489,9 +366,7 @@ export default [
489
366
  "requireDefaultForNonUnion": true
490
367
  }
491
368
  ],
492
- "@typescript-eslint/triple-slash-reference": "error",
493
369
  "@typescript-eslint/unbound-method": "error",
494
- "@typescript-eslint/unified-signatures": "error",
495
370
  "@typescript-eslint/use-unknown-in-catch-callback-variable": "error",
496
371
  "accessor-pairs": [
497
372
  "error",
@@ -514,98 +389,34 @@ export default [
514
389
  "de-morgan/no-negated-disjunction": "error",
515
390
  "default-case-last": "error",
516
391
  "eqeqeq": "error",
517
- "for-direction": "error",
518
392
  "grouped-accessor-pairs": [
519
393
  "error",
520
394
  "getBeforeSet"
521
395
  ],
522
396
  "guard-for-in": "error",
523
- "import/first": "error",
524
397
  "import/newline-after-import": "error",
525
- "import/no-absolute-path": "error",
526
- "import/no-cycle": [
527
- "error",
528
- {
529
- "maxDepth": 3
530
- }
531
- ],
532
- "import/no-duplicates": [
533
- "error",
534
- {
535
- "prefer-inline": true
536
- }
537
- ],
538
- "import/no-empty-named-blocks": "error",
539
- "import/no-mutable-exports": "error",
540
- "import/no-named-as-default": "error",
541
- "import/no-named-as-default-member": "error",
542
- "import/no-self-import": "error",
543
398
  "import/no-useless-path-segments": "error",
544
- "jsdoc/check-access": "error",
545
399
  "jsdoc/check-alignment": "error",
546
400
  "jsdoc/check-param-names": "error",
547
- "jsdoc/check-property-names": "error",
548
- "jsdoc/check-tag-names": "error",
549
401
  "jsdoc/check-types": "error",
550
402
  "jsdoc/check-values": "error",
551
- "jsdoc/empty-tags": "error",
552
403
  "jsdoc/escape-inline-tags": "error",
553
- "jsdoc/implements-on-classes": "error",
554
404
  "jsdoc/informative-docs": "error",
555
405
  "jsdoc/multiline-blocks": "error",
556
- "jsdoc/no-defaults": "error",
557
406
  "jsdoc/no-multi-asterisks": "error",
558
407
  "jsdoc/no-types": "error",
559
408
  "jsdoc/no-undefined-types": "error",
560
409
  "jsdoc/reject-any-type": "error",
561
410
  "jsdoc/reject-function-type": "error",
562
411
  "jsdoc/require-next-type": "error",
563
- "jsdoc/require-param": "error",
564
- "jsdoc/require-param-description": "warn",
565
- "jsdoc/require-param-name": "error",
566
- "jsdoc/require-property": "error",
567
- "jsdoc/require-property-description": "error",
568
- "jsdoc/require-property-name": "error",
569
- "jsdoc/require-returns": "error",
570
412
  "jsdoc/require-returns-check": "error",
571
- "jsdoc/require-returns-description": "warn",
572
413
  "jsdoc/require-throws-type": "error",
573
414
  "jsdoc/require-yields-check": "error",
574
415
  "jsdoc/require-yields-type": "error",
575
416
  "jsdoc/ts-no-empty-object-type": "error",
576
417
  "jsdoc/valid-types": "error",
577
- "jsx-a11y/alt-text": "error",
578
- "jsx-a11y/anchor-has-content": "error",
579
- "jsx-a11y/anchor-is-valid": "error",
580
- "jsx-a11y/aria-activedescendant-has-tabindex": "error",
581
- "jsx-a11y/aria-props": "error",
582
- "jsx-a11y/aria-proptypes": "error",
583
- "jsx-a11y/aria-role": "error",
584
- "jsx-a11y/aria-unsupported-elements": "error",
585
- "jsx-a11y/autocomplete-valid": "error",
586
- "jsx-a11y/click-events-have-key-events": "error",
587
- "jsx-a11y/heading-has-content": "error",
588
- "jsx-a11y/html-has-lang": "error",
589
- "jsx-a11y/img-redundant-alt": "error",
590
418
  "jsx-a11y/interactive-supports-focus": "error",
591
- "jsx-a11y/label-has-associated-control": "error",
592
- "jsx-a11y/lang": "error",
593
- "jsx-a11y/mouse-events-have-key-events": "error",
594
- "jsx-a11y/no-access-key": "error",
595
- "jsx-a11y/no-autofocus": [
596
- "error",
597
- {
598
- "ignoreNonDOM": true
599
- }
600
- ],
601
- "jsx-a11y/no-distracting-elements": "error",
602
419
  "jsx-a11y/no-noninteractive-element-interactions": "error",
603
- "jsx-a11y/no-redundant-roles": "error",
604
- "jsx-a11y/no-static-element-interactions": "error",
605
- "jsx-a11y/role-has-required-aria-props": "error",
606
- "jsx-a11y/role-supports-aria-props": "error",
607
- "jsx-a11y/scope": "error",
608
- "jsx-a11y/tabindex-no-positive": "error",
609
420
  "logical-assignment-operators": [
610
421
  "error",
611
422
  "always",
@@ -646,20 +457,9 @@ export default [
646
457
  15
647
458
  ],
648
459
  "no-alert": "error",
649
- "no-async-promise-executor": "error",
650
460
  "no-await-in-loop": "error",
651
- "no-caller": "error",
652
461
  "no-case-declarations": "error",
653
- "no-compare-neg-zero": "error",
654
- "no-cond-assign": "error",
655
- "no-constant-binary-expression": "error",
656
- "no-constant-condition": "error",
657
462
  "no-constructor-return": "error",
658
- "no-control-regex": "error",
659
- "no-debugger": "error",
660
- "no-delete-var": "error",
661
- "no-dupe-else-if": "error",
662
- "no-duplicate-case": "error",
663
463
  "no-else-return": [
664
464
  "error",
665
465
  {
@@ -667,23 +467,13 @@ export default [
667
467
  }
668
468
  ],
669
469
  "no-empty": "error",
670
- "no-empty-pattern": "error",
671
- "no-empty-static-block": "error",
672
- "no-eval": "error",
673
- "no-ex-assign": "error",
674
470
  "no-extend-native": "error",
675
471
  "no-extra-bind": "error",
676
- "no-extra-boolean-cast": "error",
677
472
  "no-fallthrough": "error",
678
- "no-global-assign": "error",
679
473
  "no-implicit-coercion": "error",
680
- "no-irregular-whitespace": "error",
681
- "no-iterator": "error",
682
474
  "no-labels": "error",
683
475
  "no-lone-blocks": "error",
684
476
  "no-lonely-if": "error",
685
- "no-loss-of-precision": "error",
686
- "no-misleading-character-class": "error",
687
477
  "no-multi-assign": "error",
688
478
  "no-multi-str": "error",
689
479
  "no-negated-condition": "error",
@@ -691,7 +481,6 @@ export default [
691
481
  "no-new": "error",
692
482
  "no-new-func": "error",
693
483
  "no-new-wrappers": "error",
694
- "no-nonoctal-decimal-escape": "error",
695
484
  "no-object-constructor": "error",
696
485
  "no-octal": "error",
697
486
  "no-octal-escape": "error",
@@ -710,27 +499,16 @@ export default [
710
499
  "always"
711
500
  ],
712
501
  "no-script-url": "error",
713
- "no-self-assign": "error",
714
502
  "no-self-compare": "error",
715
503
  "no-sequences": "error",
716
- "no-shadow-restricted-names": "error",
717
- "no-sparse-arrays": "error",
718
504
  "no-template-curly-in-string": "error",
719
- "no-unassigned-vars": "error",
720
505
  "no-unmodified-loop-condition": "error",
721
506
  "no-unneeded-ternary": "error",
722
507
  "no-unreachable-loop": "error",
723
- "no-unsafe-finally": "error",
724
- "no-unsafe-optional-chaining": "error",
725
- "no-unused-labels": "error",
726
- "no-unused-private-class-members": "error",
727
508
  "no-useless-assignment": "error",
728
509
  "no-useless-call": "error",
729
- "no-useless-catch": "error",
730
510
  "no-useless-computed-key": "error",
731
511
  "no-useless-concat": "error",
732
- "no-useless-escape": "error",
733
- "no-useless-rename": "error",
734
512
  "no-useless-return": "error",
735
513
  "no-var": "error",
736
514
  "no-warning-comments": "warn",
@@ -824,14 +602,7 @@ export default [
824
602
  "react-dom/no-unknown-property": "error",
825
603
  "react-dom/no-unsafe-target-blank": "error",
826
604
  "react-dom/no-void-elements-with-children": "error",
827
- "react-hooks/exhaustive-deps": "error",
828
605
  "react-hooks/rules-of-hooks": "error",
829
- "react-refresh/only-export-components": [
830
- "warn",
831
- {
832
- "allowConstantExport": true
833
- }
834
- ],
835
606
  "react-web-api/no-leaked-event-listener": "error",
836
607
  "react-web-api/no-leaked-interval": "error",
837
608
  "react-web-api/no-leaked-resize-observer": "error",
@@ -845,13 +616,9 @@ export default [
845
616
  "react-you-might-not-need-an-effect/no-pass-data-to-parent": "error",
846
617
  "react-you-might-not-need-an-effect/no-pass-live-state-to-parent": "error",
847
618
  "react-you-might-not-need-an-effect/no-reset-all-state-on-prop-change": "error",
848
- "react/jsx-no-comment-textnodes": "error",
849
619
  "react/jsx-shorthand-boolean": "error",
850
620
  "react/no-access-state-in-setstate": "error",
851
- "react/no-array-index-key": "error",
852
- "react/no-children-prop": "error",
853
621
  "react/no-context-provider": "error",
854
- "react/no-direct-mutation-state": "error",
855
622
  "react/no-duplicate-key": "error",
856
623
  "react/no-forward-ref": "error",
857
624
  "react/no-leaked-conditional-rendering": "error",
@@ -935,7 +702,6 @@ export default [
935
702
  "regexp/use-ignore-case": "error",
936
703
  "require-atomic-updates": "error",
937
704
  "require-unicode-regexp": "error",
938
- "require-yield": "error",
939
705
  "security/detect-bidi-characters": "error",
940
706
  "security/detect-buffer-noassert": "error",
941
707
  "security/detect-child-process": "error",
@@ -990,118 +756,24 @@ export default [
990
756
  "sonarjs/public-static-readonly": "error",
991
757
  "sonarjs/reduce-initial-value": "error",
992
758
  "symbol-description": "error",
993
- "unicorn/better-regex": "error",
994
- "unicorn/catch-error-name": [
995
- "error",
996
- {
997
- "name": "error"
998
- }
999
- ],
1000
- "unicorn/consistent-date-clone": "error",
1001
- "unicorn/consistent-empty-array-spread": "error",
1002
- "unicorn/consistent-existence-index-check": "error",
1003
- "unicorn/consistent-function-scoping": "error",
1004
759
  "unicorn/custom-error-definition": "error",
1005
- "unicorn/error-message": "error",
1006
- "unicorn/explicit-length-check": "error",
1007
- "unicorn/filename-case": [
1008
- "error",
1009
- {
1010
- "cases": {
1011
- "camelCase": true,
1012
- "pascalCase": true
1013
- }
1014
- }
1015
- ],
1016
- "unicorn/new-for-builtins": "error",
1017
- "unicorn/no-abusive-eslint-disable": "error",
1018
- "unicorn/no-accessor-recursion": "error",
1019
- "unicorn/no-anonymous-default-export": "error",
1020
- "unicorn/no-array-callback-reference": "error",
1021
- "unicorn/no-array-for-each": "error",
1022
- "unicorn/no-array-method-this-argument": "error",
1023
760
  "unicorn/no-array-push-push": "error",
1024
- "unicorn/no-array-reduce": "error",
1025
- "unicorn/no-await-expression-member": "error",
1026
- "unicorn/no-await-in-promise-methods": "error",
1027
761
  "unicorn/no-for-loop": "error",
1028
- "unicorn/no-instanceof-builtins": "error",
1029
- "unicorn/no-invalid-fetch-options": "error",
1030
- "unicorn/no-invalid-remove-event-listener": "error",
1031
- "unicorn/no-negation-in-equality-check": "error",
1032
- "unicorn/no-new-array": "error",
1033
- "unicorn/no-new-buffer": "error",
1034
- "unicorn/no-thenable": "error",
1035
- "unicorn/no-this-assignment": "error",
1036
- "unicorn/no-typeof-undefined": "error",
1037
- "unicorn/no-unnecessary-await": "error",
1038
- "unicorn/no-unnecessary-slice-end": "error",
1039
- "unicorn/no-unreadable-array-destructuring": "error",
1040
- "unicorn/no-unreadable-iife": "error",
1041
- "unicorn/no-useless-fallback-in-spread": "error",
1042
- "unicorn/no-useless-length-check": "error",
1043
- "unicorn/no-useless-promise-resolve-reject": "error",
1044
- "unicorn/no-useless-spread": "error",
1045
- "unicorn/no-useless-switch-case": "error",
1046
- "unicorn/no-useless-undefined": "error",
1047
- "unicorn/no-zero-fractions": "error",
1048
- "unicorn/numeric-separators-style": "error",
1049
- "unicorn/prefer-array-find": "error",
1050
- "unicorn/prefer-array-flat": "error",
1051
- "unicorn/prefer-array-flat-map": "error",
1052
- "unicorn/prefer-array-index-of": "error",
1053
- "unicorn/prefer-array-some": "error",
1054
- "unicorn/prefer-at": "error",
1055
- "unicorn/prefer-date-now": "error",
1056
- "unicorn/prefer-default-parameters": "error",
1057
762
  "unicorn/prefer-export-from": [
1058
763
  "error",
1059
764
  {
1060
765
  "ignoreUsedVariables": true
1061
766
  }
1062
767
  ],
1063
- "unicorn/prefer-global-this": "error",
1064
768
  "unicorn/prefer-import-meta-properties": "error",
1065
- "unicorn/prefer-includes": "error",
1066
- "unicorn/prefer-logical-operator-over-ternary": "error",
1067
- "unicorn/prefer-math-min-max": "error",
1068
- "unicorn/prefer-modern-dom-apis": "error",
1069
- "unicorn/prefer-modern-math-apis": "error",
1070
- "unicorn/prefer-native-coercion-functions": "error",
1071
- "unicorn/prefer-negative-index": "error",
1072
- "unicorn/prefer-node-protocol": "error",
1073
- "unicorn/prefer-number-properties": "error",
1074
- "unicorn/prefer-object-from-entries": "error",
1075
- "unicorn/prefer-optional-catch-binding": "error",
1076
- "unicorn/prefer-regexp-test": "error",
1077
- "unicorn/prefer-set-has": "error",
1078
- "unicorn/prefer-set-size": "error",
1079
- "unicorn/prefer-spread": "error",
1080
- "unicorn/prefer-string-replace-all": "error",
1081
- "unicorn/prefer-string-slice": "error",
1082
- "unicorn/prefer-string-starts-ends-with": "error",
1083
- "unicorn/prefer-string-trim-start-end": "error",
1084
- "unicorn/prefer-structured-clone": "error",
1085
769
  "unicorn/prefer-switch": [
1086
770
  "error",
1087
771
  {
1088
772
  "minimumCases": 3
1089
773
  }
1090
774
  ],
1091
- "unicorn/prefer-ternary": [
1092
- "error",
1093
- "only-single-line"
1094
- ],
1095
- "unicorn/prefer-top-level-await": "error",
1096
- "unicorn/prefer-type-error": "error",
1097
775
  "unicorn/prevent-abbreviations": "error",
1098
- "unicorn/relative-url-style": "error",
1099
- "unicorn/switch-case-braces": "error",
1100
- "unicorn/text-encoding-identifier-case": "error",
1101
- "unicorn/throw-new-error": "error",
1102
776
  "unused-imports/no-unused-imports": "error",
1103
- "use-isnan": "error",
1104
- "valid-typeof": "error",
1105
777
  "yoda": "error"
1106
778
  },
1107
779
  },
@@ -1164,25 +836,12 @@ export default [
1164
836
  "@typescript-eslint/strict-void-return": "off",
1165
837
  "@typescript-eslint/unbound-method": "off",
1166
838
  "@typescript-eslint/use-unknown-in-catch-callback-variable": "off",
1167
- "constructor-super": "error",
1168
839
  "getter-return": "error",
1169
- "no-class-assign": "error",
1170
- "no-const-assign": "error",
1171
840
  "no-dupe-args": "error",
1172
- "no-dupe-class-members": "error",
1173
- "no-dupe-keys": "error",
1174
- "no-func-assign": "error",
1175
- "no-import-assign": "error",
1176
- "no-new-native-nonconstructor": "error",
1177
841
  "no-new-symbol": "off",
1178
- "no-obj-calls": "error",
1179
842
  "no-redeclare": "error",
1180
- "no-setter-return": "error",
1181
- "no-this-before-super": "error",
1182
843
  "no-undef": "error",
1183
- "no-unreachable": "error",
1184
- "no-unsafe-negation": "error",
1185
- "no-with": "error"
844
+ "no-unreachable": "error"
1186
845
  },
1187
846
  },
1188
847
 
@@ -1195,11 +854,7 @@ export default [
1195
854
  "testing-library": testingLibraryPlugin,
1196
855
  },
1197
856
  rules: {
1198
- "@typescript-eslint/explicit-function-return-type": "off",
1199
857
  "@typescript-eslint/naming-convention": "off",
1200
- "@typescript-eslint/no-explicit-any": "off",
1201
- "@typescript-eslint/no-magic-numbers": "off",
1202
- "@typescript-eslint/no-non-null-assertion": "off",
1203
858
  "@typescript-eslint/no-unsafe-assignment": "off",
1204
859
  "@typescript-eslint/no-unsafe-member-access": "off",
1205
860
  "max-lines": "off",
@@ -1225,22 +880,15 @@ export default [
1225
880
  "testing-library/prefer-screen-queries": "error",
1226
881
  "testing-library/render-result-naming-convention": "error",
1227
882
  "unicorn/prevent-abbreviations": "off",
1228
- "vitest/expect-expect": "error",
1229
- "vitest/no-conditional-expect": "error",
1230
883
  "vitest/no-conditional-in-test": "error",
1231
- "vitest/no-disabled-tests": "warn",
1232
884
  "vitest/no-duplicate-hooks": "error",
1233
- "vitest/no-focused-tests": "error",
1234
885
  "vitest/no-identical-title": "error",
1235
- "vitest/no-standalone-expect": "error",
1236
886
  "vitest/prefer-hooks-on-top": "error",
1237
887
  "vitest/prefer-spy-on": "error",
1238
888
  "vitest/prefer-strict-equal": "error",
1239
889
  "vitest/prefer-to-be": "error",
1240
890
  "vitest/prefer-to-have-length": "error",
1241
- "vitest/require-to-throw-message": "error",
1242
891
  "vitest/require-top-level-describe": "error",
1243
- "vitest/valid-expect": "error",
1244
892
  "vitest/valid-title": "error"
1245
893
  },
1246
894
  },
@@ -1281,8 +929,6 @@ export default [
1281
929
  "playwright": playwrightPlugin,
1282
930
  },
1283
931
  rules: {
1284
- "@typescript-eslint/explicit-function-return-type": "off",
1285
- "@typescript-eslint/no-magic-numbers": "off",
1286
932
  "max-lines": "off",
1287
933
  "max-lines-per-function": "off",
1288
934
  "max-statements": "off",
@@ -1320,7 +966,6 @@ export default [
1320
966
  "storybook": storybookPlugin,
1321
967
  },
1322
968
  rules: {
1323
- "import/no-default-export": "off",
1324
969
  "max-lines": "off",
1325
970
  "max-lines-per-function": "off",
1326
971
  "storybook/await-interactions": "error",
@@ -1342,12 +987,8 @@ export default [
1342
987
  name: "eslint-config-setup/config-files",
1343
988
  files: ["**/*.config.{ts,mts,cts,js,mjs,cjs}","**/vite.config.*","**/vitest.config.*","**/next.config.*","**/tailwind.config.*","**/postcss.config.*"],
1344
989
  rules: {
1345
- "@typescript-eslint/explicit-function-return-type": "off",
1346
990
  "@typescript-eslint/naming-convention": "off",
1347
- "@typescript-eslint/no-magic-numbers": "off",
1348
- "@typescript-eslint/no-require-imports": "off",
1349
991
  "complexity": "off",
1350
- "import/no-default-export": "off",
1351
992
  "max-lines": "off",
1352
993
  "max-lines-per-function": "off",
1353
994
  "max-statements": "off",
@@ -1361,17 +1002,7 @@ export default [
1361
1002
  name: "eslint-config-setup/declarations",
1362
1003
  files: ["**/*.d.ts"],
1363
1004
  rules: {
1364
- "@typescript-eslint/consistent-type-definitions": "off",
1365
- "@typescript-eslint/explicit-function-return-type": "off",
1366
1005
  "@typescript-eslint/naming-convention": "off",
1367
- "@typescript-eslint/no-empty-interface": "off",
1368
- "@typescript-eslint/no-empty-object-type": "off",
1369
- "@typescript-eslint/no-explicit-any": "off",
1370
- "@typescript-eslint/no-magic-numbers": "off",
1371
- "@typescript-eslint/no-namespace": "off",
1372
- "@typescript-eslint/no-unused-vars": "off",
1373
- "import/no-duplicates": "off",
1374
- "unicorn/filename-case": "off",
1375
1006
  "unicorn/prevent-abbreviations": "off",
1376
1007
  "unused-imports/no-unused-imports": "off"
1377
1008
  },
@@ -1382,12 +1013,10 @@ export default [
1382
1013
  name: "eslint-config-setup/scripts",
1383
1014
  files: ["**/scripts/**/*.{ts,mts,js,mjs}"],
1384
1015
  rules: {
1385
- "@typescript-eslint/explicit-function-return-type": "off",
1386
1016
  "max-lines": "off",
1387
1017
  "max-lines-per-function": "off",
1388
1018
  "no-console": "off",
1389
- "node/no-process-exit": "off",
1390
- "unicorn/no-process-exit": "off"
1019
+ "node/no-process-exit": "off"
1391
1020
  },
1392
1021
  },
1393
1022
 
@@ -1454,13 +1083,13 @@ export default [
1454
1083
  },
1455
1084
 
1456
1085
  // OxLint integration — disables rules already covered by OxLint
1457
- { name: "eslint-config-setup/oxlint", ...oxlintPlugin.configs["flat/recommended"] },
1458
- { name: "eslint-config-setup/oxlint-react", ...oxlintPlugin.configs["flat/react"] },
1459
- { name: "eslint-config-setup/oxlint-jsx-a11y", ...oxlintPlugin.configs["flat/jsx-a11y"] },
1460
- { name: "eslint-config-setup/oxlint-node", ...oxlintPlugin.configs["flat/node"] },
1461
- { name: "eslint-config-setup/oxlint-typescript", ...oxlintPlugin.configs["flat/typescript"] },
1462
- { name: "eslint-config-setup/oxlint-unicorn", ...oxlintPlugin.configs["flat/unicorn"] },
1463
- { name: "eslint-config-setup/oxlint-import", ...oxlintPlugin.configs["flat/import"] },
1464
- { name: "eslint-config-setup/oxlint-jsdoc", ...oxlintPlugin.configs["flat/jsdoc"] },
1086
+ ...[oxlintPlugin.configs["flat/recommended"]].flat().map((c) => ({ name: "eslint-config-setup/oxlint", ...c })),
1087
+ ...[oxlintPlugin.configs["flat/react"]].flat().map((c) => ({ name: "eslint-config-setup/oxlint-react", ...c })),
1088
+ ...[oxlintPlugin.configs["flat/jsx-a11y"]].flat().map((c) => ({ name: "eslint-config-setup/oxlint-jsx-a11y", ...c })),
1089
+ ...[oxlintPlugin.configs["flat/node"]].flat().map((c) => ({ name: "eslint-config-setup/oxlint-node", ...c })),
1090
+ ...[oxlintPlugin.configs["flat/typescript"]].flat().map((c) => ({ name: "eslint-config-setup/oxlint-typescript", ...c })),
1091
+ ...[oxlintPlugin.configs["flat/unicorn"]].flat().map((c) => ({ name: "eslint-config-setup/oxlint-unicorn", ...c })),
1092
+ ...[oxlintPlugin.configs["flat/import"]].flat().map((c) => ({ name: "eslint-config-setup/oxlint-import", ...c })),
1093
+ ...[oxlintPlugin.configs["flat/jsdoc"]].flat().map((c) => ({ name: "eslint-config-setup/oxlint-jsdoc", ...c })),
1465
1094
 
1466
1095
  ]