oxlint-plugin-react-doctor 0.2.9 → 0.2.11-dev.f036b0f
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/index.d.ts +665 -45
- package/dist/index.js +2302 -790
- package/package.json +1 -1
package/dist/index.d.ts
CHANGED
|
@@ -82,10 +82,17 @@ interface ScopeAnalysis {
|
|
|
82
82
|
//#region src/plugin/utils/rule-context.d.ts
|
|
83
83
|
interface BaseRuleContext {
|
|
84
84
|
report: (descriptor: ReportDescriptor) => void;
|
|
85
|
-
|
|
85
|
+
readonly filename?: string;
|
|
86
|
+
/**
|
|
87
|
+
* @deprecated Rules use `context.filename`. Read only as a fallback by
|
|
88
|
+
* `wrapWithSemanticContext`; ESLint implements it as a `this`-bound class
|
|
89
|
+
* method, so it must be called on the host context, never a detached
|
|
90
|
+
* reference.
|
|
91
|
+
*/
|
|
92
|
+
getFilename?: () => string | undefined;
|
|
86
93
|
readonly settings?: Readonly<Record<string, unknown>>;
|
|
87
94
|
}
|
|
88
|
-
interface RuleContext extends BaseRuleContext {
|
|
95
|
+
interface RuleContext extends Omit<BaseRuleContext, "getFilename"> {
|
|
89
96
|
readonly scopes: ScopeAnalysis;
|
|
90
97
|
readonly cfg: ControlFlowAnalysis;
|
|
91
98
|
}
|
|
@@ -97,7 +104,7 @@ interface RuleVisitors {
|
|
|
97
104
|
//#endregion
|
|
98
105
|
//#region src/plugin/utils/rule.d.ts
|
|
99
106
|
type RuleSeverity = "error" | "warn";
|
|
100
|
-
type RuleFramework = "global" | "nextjs" | "react-native" | "tanstack-start" | "tanstack-query";
|
|
107
|
+
type RuleFramework = "global" | "nextjs" | "react-native" | "tanstack-start" | "tanstack-query" | "preact";
|
|
101
108
|
interface Rule {
|
|
102
109
|
id: string;
|
|
103
110
|
severity: RuleSeverity;
|
|
@@ -130,6 +137,23 @@ type OxlintRuleSeverity = RuleSeverity | "off";
|
|
|
130
137
|
//#endregion
|
|
131
138
|
//#region src/rules.d.ts
|
|
132
139
|
declare const REACT_DOCTOR_RULES: readonly [{
|
|
140
|
+
readonly key: "react-doctor/activity-wraps-effect-heavy-subtree";
|
|
141
|
+
readonly id: "activity-wraps-effect-heavy-subtree";
|
|
142
|
+
readonly source: "react-doctor";
|
|
143
|
+
readonly originallyExternal: false;
|
|
144
|
+
readonly rule: {
|
|
145
|
+
readonly framework: "global";
|
|
146
|
+
readonly category: "State & Effects";
|
|
147
|
+
readonly id: string;
|
|
148
|
+
readonly severity: RuleSeverity;
|
|
149
|
+
readonly requires?: ReadonlyArray<string>;
|
|
150
|
+
readonly disabledBy?: ReadonlyArray<string>;
|
|
151
|
+
readonly tags?: ReadonlyArray<string>;
|
|
152
|
+
readonly defaultEnabled?: boolean;
|
|
153
|
+
readonly recommendation?: string;
|
|
154
|
+
readonly create: (context: RuleContext) => RuleVisitors;
|
|
155
|
+
};
|
|
156
|
+
}, {
|
|
133
157
|
readonly key: "react-doctor/advanced-event-handler-refs";
|
|
134
158
|
readonly id: "advanced-event-handler-refs";
|
|
135
159
|
readonly source: "react-doctor";
|
|
@@ -724,6 +748,23 @@ declare const REACT_DOCTOR_RULES: readonly [{
|
|
|
724
748
|
readonly recommendation?: string;
|
|
725
749
|
readonly create: (context: RuleContext) => RuleVisitors;
|
|
726
750
|
};
|
|
751
|
+
}, {
|
|
752
|
+
readonly key: "react-doctor/hooks-no-nan-in-deps";
|
|
753
|
+
readonly id: "hooks-no-nan-in-deps";
|
|
754
|
+
readonly source: "react-doctor";
|
|
755
|
+
readonly originallyExternal: false;
|
|
756
|
+
readonly rule: {
|
|
757
|
+
readonly framework: "global";
|
|
758
|
+
readonly category: "State & Effects";
|
|
759
|
+
readonly id: string;
|
|
760
|
+
readonly severity: RuleSeverity;
|
|
761
|
+
readonly requires?: ReadonlyArray<string>;
|
|
762
|
+
readonly disabledBy?: ReadonlyArray<string>;
|
|
763
|
+
readonly tags?: ReadonlyArray<string>;
|
|
764
|
+
readonly defaultEnabled?: boolean;
|
|
765
|
+
readonly recommendation?: string;
|
|
766
|
+
readonly create: (context: RuleContext) => RuleVisitors;
|
|
767
|
+
};
|
|
727
768
|
}, {
|
|
728
769
|
readonly key: "react-doctor/html-has-lang";
|
|
729
770
|
readonly id: "html-has-lang";
|
|
@@ -741,6 +782,57 @@ declare const REACT_DOCTOR_RULES: readonly [{
|
|
|
741
782
|
readonly recommendation?: string;
|
|
742
783
|
readonly create: (context: RuleContext) => RuleVisitors;
|
|
743
784
|
};
|
|
785
|
+
}, {
|
|
786
|
+
readonly key: "react-doctor/html-no-invalid-paragraph-child";
|
|
787
|
+
readonly id: "html-no-invalid-paragraph-child";
|
|
788
|
+
readonly source: "react-doctor";
|
|
789
|
+
readonly originallyExternal: false;
|
|
790
|
+
readonly rule: {
|
|
791
|
+
readonly framework: "global";
|
|
792
|
+
readonly category: "Correctness";
|
|
793
|
+
readonly id: string;
|
|
794
|
+
readonly severity: RuleSeverity;
|
|
795
|
+
readonly requires?: ReadonlyArray<string>;
|
|
796
|
+
readonly disabledBy?: ReadonlyArray<string>;
|
|
797
|
+
readonly tags?: ReadonlyArray<string>;
|
|
798
|
+
readonly defaultEnabled?: boolean;
|
|
799
|
+
readonly recommendation?: string;
|
|
800
|
+
readonly create: (context: RuleContext) => RuleVisitors;
|
|
801
|
+
};
|
|
802
|
+
}, {
|
|
803
|
+
readonly key: "react-doctor/html-no-invalid-table-nesting";
|
|
804
|
+
readonly id: "html-no-invalid-table-nesting";
|
|
805
|
+
readonly source: "react-doctor";
|
|
806
|
+
readonly originallyExternal: false;
|
|
807
|
+
readonly rule: {
|
|
808
|
+
readonly framework: "global";
|
|
809
|
+
readonly category: "Correctness";
|
|
810
|
+
readonly id: string;
|
|
811
|
+
readonly severity: RuleSeverity;
|
|
812
|
+
readonly requires?: ReadonlyArray<string>;
|
|
813
|
+
readonly disabledBy?: ReadonlyArray<string>;
|
|
814
|
+
readonly tags?: ReadonlyArray<string>;
|
|
815
|
+
readonly defaultEnabled?: boolean;
|
|
816
|
+
readonly recommendation?: string;
|
|
817
|
+
readonly create: (context: RuleContext) => RuleVisitors;
|
|
818
|
+
};
|
|
819
|
+
}, {
|
|
820
|
+
readonly key: "react-doctor/html-no-nested-interactive";
|
|
821
|
+
readonly id: "html-no-nested-interactive";
|
|
822
|
+
readonly source: "react-doctor";
|
|
823
|
+
readonly originallyExternal: false;
|
|
824
|
+
readonly rule: {
|
|
825
|
+
readonly framework: "global";
|
|
826
|
+
readonly category: "Correctness";
|
|
827
|
+
readonly id: string;
|
|
828
|
+
readonly severity: RuleSeverity;
|
|
829
|
+
readonly requires?: ReadonlyArray<string>;
|
|
830
|
+
readonly disabledBy?: ReadonlyArray<string>;
|
|
831
|
+
readonly tags?: ReadonlyArray<string>;
|
|
832
|
+
readonly defaultEnabled?: boolean;
|
|
833
|
+
readonly recommendation?: string;
|
|
834
|
+
readonly create: (context: RuleContext) => RuleVisitors;
|
|
835
|
+
};
|
|
744
836
|
}, {
|
|
745
837
|
readonly key: "react-doctor/iframe-has-title";
|
|
746
838
|
readonly id: "iframe-has-title";
|
|
@@ -809,6 +901,74 @@ declare const REACT_DOCTOR_RULES: readonly [{
|
|
|
809
901
|
readonly recommendation?: string;
|
|
810
902
|
readonly create: (context: RuleContext) => RuleVisitors;
|
|
811
903
|
};
|
|
904
|
+
}, {
|
|
905
|
+
readonly key: "react-doctor/jotai-derived-atom-returns-fresh-object";
|
|
906
|
+
readonly id: "jotai-derived-atom-returns-fresh-object";
|
|
907
|
+
readonly source: "react-doctor";
|
|
908
|
+
readonly originallyExternal: false;
|
|
909
|
+
readonly rule: {
|
|
910
|
+
readonly framework: "global";
|
|
911
|
+
readonly category: "State & Effects";
|
|
912
|
+
readonly id: string;
|
|
913
|
+
readonly severity: RuleSeverity;
|
|
914
|
+
readonly requires?: ReadonlyArray<string>;
|
|
915
|
+
readonly disabledBy?: ReadonlyArray<string>;
|
|
916
|
+
readonly tags?: ReadonlyArray<string>;
|
|
917
|
+
readonly defaultEnabled?: boolean;
|
|
918
|
+
readonly recommendation?: string;
|
|
919
|
+
readonly create: (context: RuleContext) => RuleVisitors;
|
|
920
|
+
};
|
|
921
|
+
}, {
|
|
922
|
+
readonly key: "react-doctor/jotai-select-atom-in-render-body";
|
|
923
|
+
readonly id: "jotai-select-atom-in-render-body";
|
|
924
|
+
readonly source: "react-doctor";
|
|
925
|
+
readonly originallyExternal: false;
|
|
926
|
+
readonly rule: {
|
|
927
|
+
readonly framework: "global";
|
|
928
|
+
readonly category: "State & Effects";
|
|
929
|
+
readonly id: string;
|
|
930
|
+
readonly severity: RuleSeverity;
|
|
931
|
+
readonly requires?: ReadonlyArray<string>;
|
|
932
|
+
readonly disabledBy?: ReadonlyArray<string>;
|
|
933
|
+
readonly tags?: ReadonlyArray<string>;
|
|
934
|
+
readonly defaultEnabled?: boolean;
|
|
935
|
+
readonly recommendation?: string;
|
|
936
|
+
readonly create: (context: RuleContext) => RuleVisitors;
|
|
937
|
+
};
|
|
938
|
+
}, {
|
|
939
|
+
readonly key: "react-doctor/jotai-tq-use-raw-query-atom";
|
|
940
|
+
readonly id: "jotai-tq-use-raw-query-atom";
|
|
941
|
+
readonly source: "react-doctor";
|
|
942
|
+
readonly originallyExternal: false;
|
|
943
|
+
readonly rule: {
|
|
944
|
+
readonly framework: "global";
|
|
945
|
+
readonly category: "State & Effects";
|
|
946
|
+
readonly id: string;
|
|
947
|
+
readonly severity: RuleSeverity;
|
|
948
|
+
readonly requires?: ReadonlyArray<string>;
|
|
949
|
+
readonly disabledBy?: ReadonlyArray<string>;
|
|
950
|
+
readonly tags?: ReadonlyArray<string>;
|
|
951
|
+
readonly defaultEnabled?: boolean;
|
|
952
|
+
readonly recommendation?: string;
|
|
953
|
+
readonly create: (context: RuleContext) => RuleVisitors;
|
|
954
|
+
};
|
|
955
|
+
}, {
|
|
956
|
+
readonly key: "react-doctor/js-async-reduce-without-awaited-acc";
|
|
957
|
+
readonly id: "js-async-reduce-without-awaited-acc";
|
|
958
|
+
readonly source: "react-doctor";
|
|
959
|
+
readonly originallyExternal: false;
|
|
960
|
+
readonly rule: {
|
|
961
|
+
readonly framework: "global";
|
|
962
|
+
readonly category: "Performance";
|
|
963
|
+
readonly id: string;
|
|
964
|
+
readonly severity: RuleSeverity;
|
|
965
|
+
readonly requires?: ReadonlyArray<string>;
|
|
966
|
+
readonly disabledBy?: ReadonlyArray<string>;
|
|
967
|
+
readonly tags?: ReadonlyArray<string>;
|
|
968
|
+
readonly defaultEnabled?: boolean;
|
|
969
|
+
readonly recommendation?: string;
|
|
970
|
+
readonly create: (context: RuleContext) => RuleVisitors;
|
|
971
|
+
};
|
|
812
972
|
}, {
|
|
813
973
|
readonly key: "react-doctor/js-batch-dom-css";
|
|
814
974
|
readonly id: "js-batch-dom-css";
|
|
@@ -3478,6 +3638,91 @@ declare const REACT_DOCTOR_RULES: readonly [{
|
|
|
3478
3638
|
readonly recommendation?: string;
|
|
3479
3639
|
readonly create: (context: RuleContext) => RuleVisitors;
|
|
3480
3640
|
};
|
|
3641
|
+
}, {
|
|
3642
|
+
readonly key: "react-doctor/preact-no-children-length";
|
|
3643
|
+
readonly id: "preact-no-children-length";
|
|
3644
|
+
readonly source: "react-doctor";
|
|
3645
|
+
readonly originallyExternal: false;
|
|
3646
|
+
readonly rule: {
|
|
3647
|
+
readonly framework: "preact";
|
|
3648
|
+
readonly category: "Preact";
|
|
3649
|
+
readonly id: string;
|
|
3650
|
+
readonly severity: RuleSeverity;
|
|
3651
|
+
readonly requires?: ReadonlyArray<string>;
|
|
3652
|
+
readonly disabledBy?: ReadonlyArray<string>;
|
|
3653
|
+
readonly tags?: ReadonlyArray<string>;
|
|
3654
|
+
readonly defaultEnabled?: boolean;
|
|
3655
|
+
readonly recommendation?: string;
|
|
3656
|
+
readonly create: (context: RuleContext) => RuleVisitors;
|
|
3657
|
+
};
|
|
3658
|
+
}, {
|
|
3659
|
+
readonly key: "react-doctor/preact-no-react-hooks-import";
|
|
3660
|
+
readonly id: "preact-no-react-hooks-import";
|
|
3661
|
+
readonly source: "react-doctor";
|
|
3662
|
+
readonly originallyExternal: false;
|
|
3663
|
+
readonly rule: {
|
|
3664
|
+
readonly framework: "preact";
|
|
3665
|
+
readonly category: "Preact";
|
|
3666
|
+
readonly id: string;
|
|
3667
|
+
readonly severity: RuleSeverity;
|
|
3668
|
+
readonly requires?: ReadonlyArray<string>;
|
|
3669
|
+
readonly disabledBy?: ReadonlyArray<string>;
|
|
3670
|
+
readonly tags?: ReadonlyArray<string>;
|
|
3671
|
+
readonly defaultEnabled?: boolean;
|
|
3672
|
+
readonly recommendation?: string;
|
|
3673
|
+
readonly create: (context: RuleContext) => RuleVisitors;
|
|
3674
|
+
};
|
|
3675
|
+
}, {
|
|
3676
|
+
readonly key: "react-doctor/preact-no-render-arguments";
|
|
3677
|
+
readonly id: "preact-no-render-arguments";
|
|
3678
|
+
readonly source: "react-doctor";
|
|
3679
|
+
readonly originallyExternal: false;
|
|
3680
|
+
readonly rule: {
|
|
3681
|
+
readonly framework: "preact";
|
|
3682
|
+
readonly category: "Preact";
|
|
3683
|
+
readonly id: string;
|
|
3684
|
+
readonly severity: RuleSeverity;
|
|
3685
|
+
readonly requires?: ReadonlyArray<string>;
|
|
3686
|
+
readonly disabledBy?: ReadonlyArray<string>;
|
|
3687
|
+
readonly tags?: ReadonlyArray<string>;
|
|
3688
|
+
readonly defaultEnabled?: boolean;
|
|
3689
|
+
readonly recommendation?: string;
|
|
3690
|
+
readonly create: (context: RuleContext) => RuleVisitors;
|
|
3691
|
+
};
|
|
3692
|
+
}, {
|
|
3693
|
+
readonly key: "react-doctor/preact-prefer-ondblclick";
|
|
3694
|
+
readonly id: "preact-prefer-ondblclick";
|
|
3695
|
+
readonly source: "react-doctor";
|
|
3696
|
+
readonly originallyExternal: false;
|
|
3697
|
+
readonly rule: {
|
|
3698
|
+
readonly framework: "preact";
|
|
3699
|
+
readonly category: "Preact";
|
|
3700
|
+
readonly id: string;
|
|
3701
|
+
readonly severity: RuleSeverity;
|
|
3702
|
+
readonly requires?: ReadonlyArray<string>;
|
|
3703
|
+
readonly disabledBy?: ReadonlyArray<string>;
|
|
3704
|
+
readonly tags?: ReadonlyArray<string>;
|
|
3705
|
+
readonly defaultEnabled?: boolean;
|
|
3706
|
+
readonly recommendation?: string;
|
|
3707
|
+
readonly create: (context: RuleContext) => RuleVisitors;
|
|
3708
|
+
};
|
|
3709
|
+
}, {
|
|
3710
|
+
readonly key: "react-doctor/preact-prefer-oninput";
|
|
3711
|
+
readonly id: "preact-prefer-oninput";
|
|
3712
|
+
readonly source: "react-doctor";
|
|
3713
|
+
readonly originallyExternal: false;
|
|
3714
|
+
readonly rule: {
|
|
3715
|
+
readonly framework: "preact";
|
|
3716
|
+
readonly category: "Preact";
|
|
3717
|
+
readonly id: string;
|
|
3718
|
+
readonly severity: RuleSeverity;
|
|
3719
|
+
readonly requires?: ReadonlyArray<string>;
|
|
3720
|
+
readonly disabledBy?: ReadonlyArray<string>;
|
|
3721
|
+
readonly tags?: ReadonlyArray<string>;
|
|
3722
|
+
readonly defaultEnabled?: boolean;
|
|
3723
|
+
readonly recommendation?: string;
|
|
3724
|
+
readonly create: (context: RuleContext) => RuleVisitors;
|
|
3725
|
+
};
|
|
3481
3726
|
}, {
|
|
3482
3727
|
readonly key: "react-doctor/prefer-dynamic-import";
|
|
3483
3728
|
readonly id: "prefer-dynamic-import";
|
|
@@ -3529,6 +3774,23 @@ declare const REACT_DOCTOR_RULES: readonly [{
|
|
|
3529
3774
|
readonly recommendation?: string;
|
|
3530
3775
|
readonly create: (context: RuleContext) => RuleVisitors;
|
|
3531
3776
|
};
|
|
3777
|
+
}, {
|
|
3778
|
+
readonly key: "react-doctor/prefer-html-dialog";
|
|
3779
|
+
readonly id: "prefer-html-dialog";
|
|
3780
|
+
readonly source: "react-doctor";
|
|
3781
|
+
readonly originallyExternal: false;
|
|
3782
|
+
readonly rule: {
|
|
3783
|
+
readonly framework: "global";
|
|
3784
|
+
readonly category: "Accessibility";
|
|
3785
|
+
readonly id: string;
|
|
3786
|
+
readonly severity: RuleSeverity;
|
|
3787
|
+
readonly requires?: ReadonlyArray<string>;
|
|
3788
|
+
readonly disabledBy?: ReadonlyArray<string>;
|
|
3789
|
+
readonly tags?: ReadonlyArray<string>;
|
|
3790
|
+
readonly defaultEnabled?: boolean;
|
|
3791
|
+
readonly recommendation?: string;
|
|
3792
|
+
readonly create: (context: RuleContext) => RuleVisitors;
|
|
3793
|
+
};
|
|
3532
3794
|
}, {
|
|
3533
3795
|
readonly key: "react-doctor/prefer-tag-over-role";
|
|
3534
3796
|
readonly id: "prefer-tag-over-role";
|
|
@@ -3699,23 +3961,6 @@ declare const REACT_DOCTOR_RULES: readonly [{
|
|
|
3699
3961
|
readonly recommendation?: string;
|
|
3700
3962
|
readonly create: (context: RuleContext) => RuleVisitors;
|
|
3701
3963
|
};
|
|
3702
|
-
}, {
|
|
3703
|
-
readonly key: "react-doctor/react-compiler-destructure-method";
|
|
3704
|
-
readonly id: "react-compiler-destructure-method";
|
|
3705
|
-
readonly source: "react-doctor";
|
|
3706
|
-
readonly originallyExternal: false;
|
|
3707
|
-
readonly rule: {
|
|
3708
|
-
readonly framework: "global";
|
|
3709
|
-
readonly category: "Architecture";
|
|
3710
|
-
readonly id: string;
|
|
3711
|
-
readonly severity: RuleSeverity;
|
|
3712
|
-
readonly requires?: ReadonlyArray<string>;
|
|
3713
|
-
readonly disabledBy?: ReadonlyArray<string>;
|
|
3714
|
-
readonly tags?: ReadonlyArray<string>;
|
|
3715
|
-
readonly defaultEnabled?: boolean;
|
|
3716
|
-
readonly recommendation?: string;
|
|
3717
|
-
readonly create: (context: RuleContext) => RuleVisitors;
|
|
3718
|
-
};
|
|
3719
3964
|
}, {
|
|
3720
3965
|
readonly key: "react-doctor/react-compiler-no-manual-memoization";
|
|
3721
3966
|
readonly id: "react-compiler-no-manual-memoization";
|
|
@@ -4141,6 +4386,23 @@ declare const REACT_DOCTOR_RULES: readonly [{
|
|
|
4141
4386
|
readonly recommendation?: string;
|
|
4142
4387
|
readonly create: (context: RuleContext) => RuleVisitors;
|
|
4143
4388
|
};
|
|
4389
|
+
}, {
|
|
4390
|
+
readonly key: "react-doctor/rn-list-missing-estimated-item-size";
|
|
4391
|
+
readonly id: "rn-list-missing-estimated-item-size";
|
|
4392
|
+
readonly source: "react-doctor";
|
|
4393
|
+
readonly originallyExternal: false;
|
|
4394
|
+
readonly rule: {
|
|
4395
|
+
readonly framework: "react-native";
|
|
4396
|
+
readonly category: "React Native";
|
|
4397
|
+
readonly tags: readonly string[];
|
|
4398
|
+
readonly id: string;
|
|
4399
|
+
readonly severity: RuleSeverity;
|
|
4400
|
+
readonly requires?: ReadonlyArray<string>;
|
|
4401
|
+
readonly disabledBy?: ReadonlyArray<string>;
|
|
4402
|
+
readonly defaultEnabled?: boolean;
|
|
4403
|
+
readonly recommendation?: string;
|
|
4404
|
+
readonly create: (context: RuleContext) => RuleVisitors;
|
|
4405
|
+
};
|
|
4144
4406
|
}, {
|
|
4145
4407
|
readonly key: "react-doctor/rn-list-recyclable-without-types";
|
|
4146
4408
|
readonly id: "rn-list-recyclable-without-types";
|
|
@@ -4312,8 +4574,8 @@ declare const REACT_DOCTOR_RULES: readonly [{
|
|
|
4312
4574
|
readonly create: (context: RuleContext) => RuleVisitors;
|
|
4313
4575
|
};
|
|
4314
4576
|
}, {
|
|
4315
|
-
readonly key: "react-doctor/rn-no-
|
|
4316
|
-
readonly id: "rn-no-
|
|
4577
|
+
readonly key: "react-doctor/rn-no-renderitem-key";
|
|
4578
|
+
readonly id: "rn-no-renderitem-key";
|
|
4317
4579
|
readonly source: "react-doctor";
|
|
4318
4580
|
readonly originallyExternal: false;
|
|
4319
4581
|
readonly rule: {
|
|
@@ -4329,8 +4591,8 @@ declare const REACT_DOCTOR_RULES: readonly [{
|
|
|
4329
4591
|
readonly create: (context: RuleContext) => RuleVisitors;
|
|
4330
4592
|
};
|
|
4331
4593
|
}, {
|
|
4332
|
-
readonly key: "react-doctor/rn-no-
|
|
4333
|
-
readonly id: "rn-no-
|
|
4594
|
+
readonly key: "react-doctor/rn-no-scroll-state";
|
|
4595
|
+
readonly id: "rn-no-scroll-state";
|
|
4334
4596
|
readonly source: "react-doctor";
|
|
4335
4597
|
readonly originallyExternal: false;
|
|
4336
4598
|
readonly rule: {
|
|
@@ -4346,8 +4608,8 @@ declare const REACT_DOCTOR_RULES: readonly [{
|
|
|
4346
4608
|
readonly create: (context: RuleContext) => RuleVisitors;
|
|
4347
4609
|
};
|
|
4348
4610
|
}, {
|
|
4349
|
-
readonly key: "react-doctor/rn-no-
|
|
4350
|
-
readonly id: "rn-no-
|
|
4611
|
+
readonly key: "react-doctor/rn-no-scrollview-mapped-list";
|
|
4612
|
+
readonly id: "rn-no-scrollview-mapped-list";
|
|
4351
4613
|
readonly source: "react-doctor";
|
|
4352
4614
|
readonly originallyExternal: false;
|
|
4353
4615
|
readonly rule: {
|
|
@@ -4363,7 +4625,24 @@ declare const REACT_DOCTOR_RULES: readonly [{
|
|
|
4363
4625
|
readonly create: (context: RuleContext) => RuleVisitors;
|
|
4364
4626
|
};
|
|
4365
4627
|
}, {
|
|
4366
|
-
readonly key: "react-doctor/rn-
|
|
4628
|
+
readonly key: "react-doctor/rn-no-single-element-style-array";
|
|
4629
|
+
readonly id: "rn-no-single-element-style-array";
|
|
4630
|
+
readonly source: "react-doctor";
|
|
4631
|
+
readonly originallyExternal: false;
|
|
4632
|
+
readonly rule: {
|
|
4633
|
+
readonly framework: "react-native";
|
|
4634
|
+
readonly category: "React Native";
|
|
4635
|
+
readonly tags: readonly string[];
|
|
4636
|
+
readonly id: string;
|
|
4637
|
+
readonly severity: RuleSeverity;
|
|
4638
|
+
readonly requires?: ReadonlyArray<string>;
|
|
4639
|
+
readonly disabledBy?: ReadonlyArray<string>;
|
|
4640
|
+
readonly defaultEnabled?: boolean;
|
|
4641
|
+
readonly recommendation?: string;
|
|
4642
|
+
readonly create: (context: RuleContext) => RuleVisitors;
|
|
4643
|
+
};
|
|
4644
|
+
}, {
|
|
4645
|
+
readonly key: "react-doctor/rn-prefer-content-inset-adjustment";
|
|
4367
4646
|
readonly id: "rn-prefer-content-inset-adjustment";
|
|
4368
4647
|
readonly source: "react-doctor";
|
|
4369
4648
|
readonly originallyExternal: false;
|
|
@@ -4413,6 +4692,23 @@ declare const REACT_DOCTOR_RULES: readonly [{
|
|
|
4413
4692
|
readonly recommendation?: string;
|
|
4414
4693
|
readonly create: (context: RuleContext) => RuleVisitors;
|
|
4415
4694
|
};
|
|
4695
|
+
}, {
|
|
4696
|
+
readonly key: "react-doctor/rn-prefer-pressable-over-gesture-detector";
|
|
4697
|
+
readonly id: "rn-prefer-pressable-over-gesture-detector";
|
|
4698
|
+
readonly source: "react-doctor";
|
|
4699
|
+
readonly originallyExternal: false;
|
|
4700
|
+
readonly rule: {
|
|
4701
|
+
readonly framework: "react-native";
|
|
4702
|
+
readonly category: "React Native";
|
|
4703
|
+
readonly tags: readonly string[];
|
|
4704
|
+
readonly id: string;
|
|
4705
|
+
readonly severity: RuleSeverity;
|
|
4706
|
+
readonly requires?: ReadonlyArray<string>;
|
|
4707
|
+
readonly disabledBy?: ReadonlyArray<string>;
|
|
4708
|
+
readonly defaultEnabled?: boolean;
|
|
4709
|
+
readonly recommendation?: string;
|
|
4710
|
+
readonly create: (context: RuleContext) => RuleVisitors;
|
|
4711
|
+
};
|
|
4416
4712
|
}, {
|
|
4417
4713
|
readonly key: "react-doctor/rn-prefer-reanimated";
|
|
4418
4714
|
readonly id: "rn-prefer-reanimated";
|
|
@@ -4464,6 +4760,23 @@ declare const REACT_DOCTOR_RULES: readonly [{
|
|
|
4464
4760
|
readonly recommendation?: string;
|
|
4465
4761
|
readonly create: (context: RuleContext) => RuleVisitors;
|
|
4466
4762
|
};
|
|
4763
|
+
}, {
|
|
4764
|
+
readonly key: "react-doctor/rn-scrollview-flex-in-content-container";
|
|
4765
|
+
readonly id: "rn-scrollview-flex-in-content-container";
|
|
4766
|
+
readonly source: "react-doctor";
|
|
4767
|
+
readonly originallyExternal: false;
|
|
4768
|
+
readonly rule: {
|
|
4769
|
+
readonly framework: "react-native";
|
|
4770
|
+
readonly category: "React Native";
|
|
4771
|
+
readonly tags: readonly string[];
|
|
4772
|
+
readonly id: string;
|
|
4773
|
+
readonly severity: RuleSeverity;
|
|
4774
|
+
readonly requires?: ReadonlyArray<string>;
|
|
4775
|
+
readonly disabledBy?: ReadonlyArray<string>;
|
|
4776
|
+
readonly defaultEnabled?: boolean;
|
|
4777
|
+
readonly recommendation?: string;
|
|
4778
|
+
readonly create: (context: RuleContext) => RuleVisitors;
|
|
4779
|
+
};
|
|
4467
4780
|
}, {
|
|
4468
4781
|
readonly key: "react-doctor/rn-style-prefer-boxshadow";
|
|
4469
4782
|
readonly id: "rn-style-prefer-boxshadow";
|
|
@@ -5092,6 +5405,23 @@ declare const EXTERNAL_RULES: readonly [{
|
|
|
5092
5405
|
readonly severity: "error";
|
|
5093
5406
|
}];
|
|
5094
5407
|
declare const RULES: readonly [{
|
|
5408
|
+
readonly key: "react-doctor/activity-wraps-effect-heavy-subtree";
|
|
5409
|
+
readonly id: "activity-wraps-effect-heavy-subtree";
|
|
5410
|
+
readonly source: "react-doctor";
|
|
5411
|
+
readonly originallyExternal: false;
|
|
5412
|
+
readonly rule: {
|
|
5413
|
+
readonly framework: "global";
|
|
5414
|
+
readonly category: "State & Effects";
|
|
5415
|
+
readonly id: string;
|
|
5416
|
+
readonly severity: RuleSeverity;
|
|
5417
|
+
readonly requires?: ReadonlyArray<string>;
|
|
5418
|
+
readonly disabledBy?: ReadonlyArray<string>;
|
|
5419
|
+
readonly tags?: ReadonlyArray<string>;
|
|
5420
|
+
readonly defaultEnabled?: boolean;
|
|
5421
|
+
readonly recommendation?: string;
|
|
5422
|
+
readonly create: (context: RuleContext) => RuleVisitors;
|
|
5423
|
+
};
|
|
5424
|
+
}, {
|
|
5095
5425
|
readonly key: "react-doctor/advanced-event-handler-refs";
|
|
5096
5426
|
readonly id: "advanced-event-handler-refs";
|
|
5097
5427
|
readonly source: "react-doctor";
|
|
@@ -5686,6 +6016,23 @@ declare const RULES: readonly [{
|
|
|
5686
6016
|
readonly recommendation?: string;
|
|
5687
6017
|
readonly create: (context: RuleContext) => RuleVisitors;
|
|
5688
6018
|
};
|
|
6019
|
+
}, {
|
|
6020
|
+
readonly key: "react-doctor/hooks-no-nan-in-deps";
|
|
6021
|
+
readonly id: "hooks-no-nan-in-deps";
|
|
6022
|
+
readonly source: "react-doctor";
|
|
6023
|
+
readonly originallyExternal: false;
|
|
6024
|
+
readonly rule: {
|
|
6025
|
+
readonly framework: "global";
|
|
6026
|
+
readonly category: "State & Effects";
|
|
6027
|
+
readonly id: string;
|
|
6028
|
+
readonly severity: RuleSeverity;
|
|
6029
|
+
readonly requires?: ReadonlyArray<string>;
|
|
6030
|
+
readonly disabledBy?: ReadonlyArray<string>;
|
|
6031
|
+
readonly tags?: ReadonlyArray<string>;
|
|
6032
|
+
readonly defaultEnabled?: boolean;
|
|
6033
|
+
readonly recommendation?: string;
|
|
6034
|
+
readonly create: (context: RuleContext) => RuleVisitors;
|
|
6035
|
+
};
|
|
5689
6036
|
}, {
|
|
5690
6037
|
readonly key: "react-doctor/html-has-lang";
|
|
5691
6038
|
readonly id: "html-has-lang";
|
|
@@ -5703,6 +6050,57 @@ declare const RULES: readonly [{
|
|
|
5703
6050
|
readonly recommendation?: string;
|
|
5704
6051
|
readonly create: (context: RuleContext) => RuleVisitors;
|
|
5705
6052
|
};
|
|
6053
|
+
}, {
|
|
6054
|
+
readonly key: "react-doctor/html-no-invalid-paragraph-child";
|
|
6055
|
+
readonly id: "html-no-invalid-paragraph-child";
|
|
6056
|
+
readonly source: "react-doctor";
|
|
6057
|
+
readonly originallyExternal: false;
|
|
6058
|
+
readonly rule: {
|
|
6059
|
+
readonly framework: "global";
|
|
6060
|
+
readonly category: "Correctness";
|
|
6061
|
+
readonly id: string;
|
|
6062
|
+
readonly severity: RuleSeverity;
|
|
6063
|
+
readonly requires?: ReadonlyArray<string>;
|
|
6064
|
+
readonly disabledBy?: ReadonlyArray<string>;
|
|
6065
|
+
readonly tags?: ReadonlyArray<string>;
|
|
6066
|
+
readonly defaultEnabled?: boolean;
|
|
6067
|
+
readonly recommendation?: string;
|
|
6068
|
+
readonly create: (context: RuleContext) => RuleVisitors;
|
|
6069
|
+
};
|
|
6070
|
+
}, {
|
|
6071
|
+
readonly key: "react-doctor/html-no-invalid-table-nesting";
|
|
6072
|
+
readonly id: "html-no-invalid-table-nesting";
|
|
6073
|
+
readonly source: "react-doctor";
|
|
6074
|
+
readonly originallyExternal: false;
|
|
6075
|
+
readonly rule: {
|
|
6076
|
+
readonly framework: "global";
|
|
6077
|
+
readonly category: "Correctness";
|
|
6078
|
+
readonly id: string;
|
|
6079
|
+
readonly severity: RuleSeverity;
|
|
6080
|
+
readonly requires?: ReadonlyArray<string>;
|
|
6081
|
+
readonly disabledBy?: ReadonlyArray<string>;
|
|
6082
|
+
readonly tags?: ReadonlyArray<string>;
|
|
6083
|
+
readonly defaultEnabled?: boolean;
|
|
6084
|
+
readonly recommendation?: string;
|
|
6085
|
+
readonly create: (context: RuleContext) => RuleVisitors;
|
|
6086
|
+
};
|
|
6087
|
+
}, {
|
|
6088
|
+
readonly key: "react-doctor/html-no-nested-interactive";
|
|
6089
|
+
readonly id: "html-no-nested-interactive";
|
|
6090
|
+
readonly source: "react-doctor";
|
|
6091
|
+
readonly originallyExternal: false;
|
|
6092
|
+
readonly rule: {
|
|
6093
|
+
readonly framework: "global";
|
|
6094
|
+
readonly category: "Correctness";
|
|
6095
|
+
readonly id: string;
|
|
6096
|
+
readonly severity: RuleSeverity;
|
|
6097
|
+
readonly requires?: ReadonlyArray<string>;
|
|
6098
|
+
readonly disabledBy?: ReadonlyArray<string>;
|
|
6099
|
+
readonly tags?: ReadonlyArray<string>;
|
|
6100
|
+
readonly defaultEnabled?: boolean;
|
|
6101
|
+
readonly recommendation?: string;
|
|
6102
|
+
readonly create: (context: RuleContext) => RuleVisitors;
|
|
6103
|
+
};
|
|
5706
6104
|
}, {
|
|
5707
6105
|
readonly key: "react-doctor/iframe-has-title";
|
|
5708
6106
|
readonly id: "iframe-has-title";
|
|
@@ -5771,6 +6169,74 @@ declare const RULES: readonly [{
|
|
|
5771
6169
|
readonly recommendation?: string;
|
|
5772
6170
|
readonly create: (context: RuleContext) => RuleVisitors;
|
|
5773
6171
|
};
|
|
6172
|
+
}, {
|
|
6173
|
+
readonly key: "react-doctor/jotai-derived-atom-returns-fresh-object";
|
|
6174
|
+
readonly id: "jotai-derived-atom-returns-fresh-object";
|
|
6175
|
+
readonly source: "react-doctor";
|
|
6176
|
+
readonly originallyExternal: false;
|
|
6177
|
+
readonly rule: {
|
|
6178
|
+
readonly framework: "global";
|
|
6179
|
+
readonly category: "State & Effects";
|
|
6180
|
+
readonly id: string;
|
|
6181
|
+
readonly severity: RuleSeverity;
|
|
6182
|
+
readonly requires?: ReadonlyArray<string>;
|
|
6183
|
+
readonly disabledBy?: ReadonlyArray<string>;
|
|
6184
|
+
readonly tags?: ReadonlyArray<string>;
|
|
6185
|
+
readonly defaultEnabled?: boolean;
|
|
6186
|
+
readonly recommendation?: string;
|
|
6187
|
+
readonly create: (context: RuleContext) => RuleVisitors;
|
|
6188
|
+
};
|
|
6189
|
+
}, {
|
|
6190
|
+
readonly key: "react-doctor/jotai-select-atom-in-render-body";
|
|
6191
|
+
readonly id: "jotai-select-atom-in-render-body";
|
|
6192
|
+
readonly source: "react-doctor";
|
|
6193
|
+
readonly originallyExternal: false;
|
|
6194
|
+
readonly rule: {
|
|
6195
|
+
readonly framework: "global";
|
|
6196
|
+
readonly category: "State & Effects";
|
|
6197
|
+
readonly id: string;
|
|
6198
|
+
readonly severity: RuleSeverity;
|
|
6199
|
+
readonly requires?: ReadonlyArray<string>;
|
|
6200
|
+
readonly disabledBy?: ReadonlyArray<string>;
|
|
6201
|
+
readonly tags?: ReadonlyArray<string>;
|
|
6202
|
+
readonly defaultEnabled?: boolean;
|
|
6203
|
+
readonly recommendation?: string;
|
|
6204
|
+
readonly create: (context: RuleContext) => RuleVisitors;
|
|
6205
|
+
};
|
|
6206
|
+
}, {
|
|
6207
|
+
readonly key: "react-doctor/jotai-tq-use-raw-query-atom";
|
|
6208
|
+
readonly id: "jotai-tq-use-raw-query-atom";
|
|
6209
|
+
readonly source: "react-doctor";
|
|
6210
|
+
readonly originallyExternal: false;
|
|
6211
|
+
readonly rule: {
|
|
6212
|
+
readonly framework: "global";
|
|
6213
|
+
readonly category: "State & Effects";
|
|
6214
|
+
readonly id: string;
|
|
6215
|
+
readonly severity: RuleSeverity;
|
|
6216
|
+
readonly requires?: ReadonlyArray<string>;
|
|
6217
|
+
readonly disabledBy?: ReadonlyArray<string>;
|
|
6218
|
+
readonly tags?: ReadonlyArray<string>;
|
|
6219
|
+
readonly defaultEnabled?: boolean;
|
|
6220
|
+
readonly recommendation?: string;
|
|
6221
|
+
readonly create: (context: RuleContext) => RuleVisitors;
|
|
6222
|
+
};
|
|
6223
|
+
}, {
|
|
6224
|
+
readonly key: "react-doctor/js-async-reduce-without-awaited-acc";
|
|
6225
|
+
readonly id: "js-async-reduce-without-awaited-acc";
|
|
6226
|
+
readonly source: "react-doctor";
|
|
6227
|
+
readonly originallyExternal: false;
|
|
6228
|
+
readonly rule: {
|
|
6229
|
+
readonly framework: "global";
|
|
6230
|
+
readonly category: "Performance";
|
|
6231
|
+
readonly id: string;
|
|
6232
|
+
readonly severity: RuleSeverity;
|
|
6233
|
+
readonly requires?: ReadonlyArray<string>;
|
|
6234
|
+
readonly disabledBy?: ReadonlyArray<string>;
|
|
6235
|
+
readonly tags?: ReadonlyArray<string>;
|
|
6236
|
+
readonly defaultEnabled?: boolean;
|
|
6237
|
+
readonly recommendation?: string;
|
|
6238
|
+
readonly create: (context: RuleContext) => RuleVisitors;
|
|
6239
|
+
};
|
|
5774
6240
|
}, {
|
|
5775
6241
|
readonly key: "react-doctor/js-batch-dom-css";
|
|
5776
6242
|
readonly id: "js-batch-dom-css";
|
|
@@ -8440,6 +8906,91 @@ declare const RULES: readonly [{
|
|
|
8440
8906
|
readonly recommendation?: string;
|
|
8441
8907
|
readonly create: (context: RuleContext) => RuleVisitors;
|
|
8442
8908
|
};
|
|
8909
|
+
}, {
|
|
8910
|
+
readonly key: "react-doctor/preact-no-children-length";
|
|
8911
|
+
readonly id: "preact-no-children-length";
|
|
8912
|
+
readonly source: "react-doctor";
|
|
8913
|
+
readonly originallyExternal: false;
|
|
8914
|
+
readonly rule: {
|
|
8915
|
+
readonly framework: "preact";
|
|
8916
|
+
readonly category: "Preact";
|
|
8917
|
+
readonly id: string;
|
|
8918
|
+
readonly severity: RuleSeverity;
|
|
8919
|
+
readonly requires?: ReadonlyArray<string>;
|
|
8920
|
+
readonly disabledBy?: ReadonlyArray<string>;
|
|
8921
|
+
readonly tags?: ReadonlyArray<string>;
|
|
8922
|
+
readonly defaultEnabled?: boolean;
|
|
8923
|
+
readonly recommendation?: string;
|
|
8924
|
+
readonly create: (context: RuleContext) => RuleVisitors;
|
|
8925
|
+
};
|
|
8926
|
+
}, {
|
|
8927
|
+
readonly key: "react-doctor/preact-no-react-hooks-import";
|
|
8928
|
+
readonly id: "preact-no-react-hooks-import";
|
|
8929
|
+
readonly source: "react-doctor";
|
|
8930
|
+
readonly originallyExternal: false;
|
|
8931
|
+
readonly rule: {
|
|
8932
|
+
readonly framework: "preact";
|
|
8933
|
+
readonly category: "Preact";
|
|
8934
|
+
readonly id: string;
|
|
8935
|
+
readonly severity: RuleSeverity;
|
|
8936
|
+
readonly requires?: ReadonlyArray<string>;
|
|
8937
|
+
readonly disabledBy?: ReadonlyArray<string>;
|
|
8938
|
+
readonly tags?: ReadonlyArray<string>;
|
|
8939
|
+
readonly defaultEnabled?: boolean;
|
|
8940
|
+
readonly recommendation?: string;
|
|
8941
|
+
readonly create: (context: RuleContext) => RuleVisitors;
|
|
8942
|
+
};
|
|
8943
|
+
}, {
|
|
8944
|
+
readonly key: "react-doctor/preact-no-render-arguments";
|
|
8945
|
+
readonly id: "preact-no-render-arguments";
|
|
8946
|
+
readonly source: "react-doctor";
|
|
8947
|
+
readonly originallyExternal: false;
|
|
8948
|
+
readonly rule: {
|
|
8949
|
+
readonly framework: "preact";
|
|
8950
|
+
readonly category: "Preact";
|
|
8951
|
+
readonly id: string;
|
|
8952
|
+
readonly severity: RuleSeverity;
|
|
8953
|
+
readonly requires?: ReadonlyArray<string>;
|
|
8954
|
+
readonly disabledBy?: ReadonlyArray<string>;
|
|
8955
|
+
readonly tags?: ReadonlyArray<string>;
|
|
8956
|
+
readonly defaultEnabled?: boolean;
|
|
8957
|
+
readonly recommendation?: string;
|
|
8958
|
+
readonly create: (context: RuleContext) => RuleVisitors;
|
|
8959
|
+
};
|
|
8960
|
+
}, {
|
|
8961
|
+
readonly key: "react-doctor/preact-prefer-ondblclick";
|
|
8962
|
+
readonly id: "preact-prefer-ondblclick";
|
|
8963
|
+
readonly source: "react-doctor";
|
|
8964
|
+
readonly originallyExternal: false;
|
|
8965
|
+
readonly rule: {
|
|
8966
|
+
readonly framework: "preact";
|
|
8967
|
+
readonly category: "Preact";
|
|
8968
|
+
readonly id: string;
|
|
8969
|
+
readonly severity: RuleSeverity;
|
|
8970
|
+
readonly requires?: ReadonlyArray<string>;
|
|
8971
|
+
readonly disabledBy?: ReadonlyArray<string>;
|
|
8972
|
+
readonly tags?: ReadonlyArray<string>;
|
|
8973
|
+
readonly defaultEnabled?: boolean;
|
|
8974
|
+
readonly recommendation?: string;
|
|
8975
|
+
readonly create: (context: RuleContext) => RuleVisitors;
|
|
8976
|
+
};
|
|
8977
|
+
}, {
|
|
8978
|
+
readonly key: "react-doctor/preact-prefer-oninput";
|
|
8979
|
+
readonly id: "preact-prefer-oninput";
|
|
8980
|
+
readonly source: "react-doctor";
|
|
8981
|
+
readonly originallyExternal: false;
|
|
8982
|
+
readonly rule: {
|
|
8983
|
+
readonly framework: "preact";
|
|
8984
|
+
readonly category: "Preact";
|
|
8985
|
+
readonly id: string;
|
|
8986
|
+
readonly severity: RuleSeverity;
|
|
8987
|
+
readonly requires?: ReadonlyArray<string>;
|
|
8988
|
+
readonly disabledBy?: ReadonlyArray<string>;
|
|
8989
|
+
readonly tags?: ReadonlyArray<string>;
|
|
8990
|
+
readonly defaultEnabled?: boolean;
|
|
8991
|
+
readonly recommendation?: string;
|
|
8992
|
+
readonly create: (context: RuleContext) => RuleVisitors;
|
|
8993
|
+
};
|
|
8443
8994
|
}, {
|
|
8444
8995
|
readonly key: "react-doctor/prefer-dynamic-import";
|
|
8445
8996
|
readonly id: "prefer-dynamic-import";
|
|
@@ -8491,6 +9042,23 @@ declare const RULES: readonly [{
|
|
|
8491
9042
|
readonly recommendation?: string;
|
|
8492
9043
|
readonly create: (context: RuleContext) => RuleVisitors;
|
|
8493
9044
|
};
|
|
9045
|
+
}, {
|
|
9046
|
+
readonly key: "react-doctor/prefer-html-dialog";
|
|
9047
|
+
readonly id: "prefer-html-dialog";
|
|
9048
|
+
readonly source: "react-doctor";
|
|
9049
|
+
readonly originallyExternal: false;
|
|
9050
|
+
readonly rule: {
|
|
9051
|
+
readonly framework: "global";
|
|
9052
|
+
readonly category: "Accessibility";
|
|
9053
|
+
readonly id: string;
|
|
9054
|
+
readonly severity: RuleSeverity;
|
|
9055
|
+
readonly requires?: ReadonlyArray<string>;
|
|
9056
|
+
readonly disabledBy?: ReadonlyArray<string>;
|
|
9057
|
+
readonly tags?: ReadonlyArray<string>;
|
|
9058
|
+
readonly defaultEnabled?: boolean;
|
|
9059
|
+
readonly recommendation?: string;
|
|
9060
|
+
readonly create: (context: RuleContext) => RuleVisitors;
|
|
9061
|
+
};
|
|
8494
9062
|
}, {
|
|
8495
9063
|
readonly key: "react-doctor/prefer-tag-over-role";
|
|
8496
9064
|
readonly id: "prefer-tag-over-role";
|
|
@@ -8661,23 +9229,6 @@ declare const RULES: readonly [{
|
|
|
8661
9229
|
readonly recommendation?: string;
|
|
8662
9230
|
readonly create: (context: RuleContext) => RuleVisitors;
|
|
8663
9231
|
};
|
|
8664
|
-
}, {
|
|
8665
|
-
readonly key: "react-doctor/react-compiler-destructure-method";
|
|
8666
|
-
readonly id: "react-compiler-destructure-method";
|
|
8667
|
-
readonly source: "react-doctor";
|
|
8668
|
-
readonly originallyExternal: false;
|
|
8669
|
-
readonly rule: {
|
|
8670
|
-
readonly framework: "global";
|
|
8671
|
-
readonly category: "Architecture";
|
|
8672
|
-
readonly id: string;
|
|
8673
|
-
readonly severity: RuleSeverity;
|
|
8674
|
-
readonly requires?: ReadonlyArray<string>;
|
|
8675
|
-
readonly disabledBy?: ReadonlyArray<string>;
|
|
8676
|
-
readonly tags?: ReadonlyArray<string>;
|
|
8677
|
-
readonly defaultEnabled?: boolean;
|
|
8678
|
-
readonly recommendation?: string;
|
|
8679
|
-
readonly create: (context: RuleContext) => RuleVisitors;
|
|
8680
|
-
};
|
|
8681
9232
|
}, {
|
|
8682
9233
|
readonly key: "react-doctor/react-compiler-no-manual-memoization";
|
|
8683
9234
|
readonly id: "react-compiler-no-manual-memoization";
|
|
@@ -9103,6 +9654,23 @@ declare const RULES: readonly [{
|
|
|
9103
9654
|
readonly recommendation?: string;
|
|
9104
9655
|
readonly create: (context: RuleContext) => RuleVisitors;
|
|
9105
9656
|
};
|
|
9657
|
+
}, {
|
|
9658
|
+
readonly key: "react-doctor/rn-list-missing-estimated-item-size";
|
|
9659
|
+
readonly id: "rn-list-missing-estimated-item-size";
|
|
9660
|
+
readonly source: "react-doctor";
|
|
9661
|
+
readonly originallyExternal: false;
|
|
9662
|
+
readonly rule: {
|
|
9663
|
+
readonly framework: "react-native";
|
|
9664
|
+
readonly category: "React Native";
|
|
9665
|
+
readonly tags: readonly string[];
|
|
9666
|
+
readonly id: string;
|
|
9667
|
+
readonly severity: RuleSeverity;
|
|
9668
|
+
readonly requires?: ReadonlyArray<string>;
|
|
9669
|
+
readonly disabledBy?: ReadonlyArray<string>;
|
|
9670
|
+
readonly defaultEnabled?: boolean;
|
|
9671
|
+
readonly recommendation?: string;
|
|
9672
|
+
readonly create: (context: RuleContext) => RuleVisitors;
|
|
9673
|
+
};
|
|
9106
9674
|
}, {
|
|
9107
9675
|
readonly key: "react-doctor/rn-list-recyclable-without-types";
|
|
9108
9676
|
readonly id: "rn-list-recyclable-without-types";
|
|
@@ -9273,6 +9841,23 @@ declare const RULES: readonly [{
|
|
|
9273
9841
|
readonly recommendation?: string;
|
|
9274
9842
|
readonly create: (context: RuleContext) => RuleVisitors;
|
|
9275
9843
|
};
|
|
9844
|
+
}, {
|
|
9845
|
+
readonly key: "react-doctor/rn-no-renderitem-key";
|
|
9846
|
+
readonly id: "rn-no-renderitem-key";
|
|
9847
|
+
readonly source: "react-doctor";
|
|
9848
|
+
readonly originallyExternal: false;
|
|
9849
|
+
readonly rule: {
|
|
9850
|
+
readonly framework: "react-native";
|
|
9851
|
+
readonly category: "React Native";
|
|
9852
|
+
readonly tags: readonly string[];
|
|
9853
|
+
readonly id: string;
|
|
9854
|
+
readonly severity: RuleSeverity;
|
|
9855
|
+
readonly requires?: ReadonlyArray<string>;
|
|
9856
|
+
readonly disabledBy?: ReadonlyArray<string>;
|
|
9857
|
+
readonly defaultEnabled?: boolean;
|
|
9858
|
+
readonly recommendation?: string;
|
|
9859
|
+
readonly create: (context: RuleContext) => RuleVisitors;
|
|
9860
|
+
};
|
|
9276
9861
|
}, {
|
|
9277
9862
|
readonly key: "react-doctor/rn-no-scroll-state";
|
|
9278
9863
|
readonly id: "rn-no-scroll-state";
|
|
@@ -9375,6 +9960,23 @@ declare const RULES: readonly [{
|
|
|
9375
9960
|
readonly recommendation?: string;
|
|
9376
9961
|
readonly create: (context: RuleContext) => RuleVisitors;
|
|
9377
9962
|
};
|
|
9963
|
+
}, {
|
|
9964
|
+
readonly key: "react-doctor/rn-prefer-pressable-over-gesture-detector";
|
|
9965
|
+
readonly id: "rn-prefer-pressable-over-gesture-detector";
|
|
9966
|
+
readonly source: "react-doctor";
|
|
9967
|
+
readonly originallyExternal: false;
|
|
9968
|
+
readonly rule: {
|
|
9969
|
+
readonly framework: "react-native";
|
|
9970
|
+
readonly category: "React Native";
|
|
9971
|
+
readonly tags: readonly string[];
|
|
9972
|
+
readonly id: string;
|
|
9973
|
+
readonly severity: RuleSeverity;
|
|
9974
|
+
readonly requires?: ReadonlyArray<string>;
|
|
9975
|
+
readonly disabledBy?: ReadonlyArray<string>;
|
|
9976
|
+
readonly defaultEnabled?: boolean;
|
|
9977
|
+
readonly recommendation?: string;
|
|
9978
|
+
readonly create: (context: RuleContext) => RuleVisitors;
|
|
9979
|
+
};
|
|
9378
9980
|
}, {
|
|
9379
9981
|
readonly key: "react-doctor/rn-prefer-reanimated";
|
|
9380
9982
|
readonly id: "rn-prefer-reanimated";
|
|
@@ -9426,6 +10028,23 @@ declare const RULES: readonly [{
|
|
|
9426
10028
|
readonly recommendation?: string;
|
|
9427
10029
|
readonly create: (context: RuleContext) => RuleVisitors;
|
|
9428
10030
|
};
|
|
10031
|
+
}, {
|
|
10032
|
+
readonly key: "react-doctor/rn-scrollview-flex-in-content-container";
|
|
10033
|
+
readonly id: "rn-scrollview-flex-in-content-container";
|
|
10034
|
+
readonly source: "react-doctor";
|
|
10035
|
+
readonly originallyExternal: false;
|
|
10036
|
+
readonly rule: {
|
|
10037
|
+
readonly framework: "react-native";
|
|
10038
|
+
readonly category: "React Native";
|
|
10039
|
+
readonly tags: readonly string[];
|
|
10040
|
+
readonly id: string;
|
|
10041
|
+
readonly severity: RuleSeverity;
|
|
10042
|
+
readonly requires?: ReadonlyArray<string>;
|
|
10043
|
+
readonly disabledBy?: ReadonlyArray<string>;
|
|
10044
|
+
readonly defaultEnabled?: boolean;
|
|
10045
|
+
readonly recommendation?: string;
|
|
10046
|
+
readonly create: (context: RuleContext) => RuleVisitors;
|
|
10047
|
+
};
|
|
9429
10048
|
}, {
|
|
9430
10049
|
readonly key: "react-doctor/rn-style-prefer-boxshadow";
|
|
9431
10050
|
readonly id: "rn-style-prefer-boxshadow";
|
|
@@ -10057,6 +10676,7 @@ declare const NEXTJS_RULES: Record<string, OxlintRuleSeverity>;
|
|
|
10057
10676
|
declare const REACT_NATIVE_RULES: Record<string, OxlintRuleSeverity>;
|
|
10058
10677
|
declare const TANSTACK_START_RULES: Record<string, OxlintRuleSeverity>;
|
|
10059
10678
|
declare const TANSTACK_QUERY_RULES: Record<string, OxlintRuleSeverity>;
|
|
10679
|
+
declare const PREACT_RULES: Record<string, OxlintRuleSeverity>;
|
|
10060
10680
|
declare const ALL_REACT_DOCTOR_RULES: Record<string, OxlintRuleSeverity>;
|
|
10061
10681
|
declare const ALL_REACT_DOCTOR_RULE_KEYS: ReadonlySet<string>;
|
|
10062
10682
|
declare const FRAMEWORK_SPECIFIC_RULE_KEYS: ReadonlySet<string>;
|
|
@@ -10070,5 +10690,5 @@ declare const REACT_NATIVE_DEPENDENCY_NAMES: ReadonlySet<string>;
|
|
|
10070
10690
|
declare const REACT_NATIVE_DEPENDENCY_PREFIXES: ReadonlyArray<string>;
|
|
10071
10691
|
declare const isReactNativeDependencyName: (dependencyName: string) => boolean;
|
|
10072
10692
|
//#endregion
|
|
10073
|
-
export { ALL_REACT_DOCTOR_RULES, ALL_REACT_DOCTOR_RULE_KEYS, EXTERNAL_RULES, type EsTreeNode, FRAMEWORK_SPECIFIC_RULE_KEYS, MOTION_LIBRARY_PACKAGES, NEXTJS_RULES, type OxlintRuleSeverity, REACT_COMPILER_RULES, REACT_DOCTOR_RULES, REACT_NATIVE_DEPENDENCY_NAMES, REACT_NATIVE_DEPENDENCY_PREFIXES, REACT_NATIVE_RULES, RECOMMENDED_RULES, RULES, type Rule, type RuleFramework, type RulePlugin, type RuleSeverity, type RuleVisitors, TANSTACK_QUERY_RULES, TANSTACK_START_RULES, plugin as default, isReactNativeDependencyName };
|
|
10693
|
+
export { ALL_REACT_DOCTOR_RULES, ALL_REACT_DOCTOR_RULE_KEYS, EXTERNAL_RULES, type EsTreeNode, FRAMEWORK_SPECIFIC_RULE_KEYS, MOTION_LIBRARY_PACKAGES, NEXTJS_RULES, type OxlintRuleSeverity, PREACT_RULES, REACT_COMPILER_RULES, REACT_DOCTOR_RULES, REACT_NATIVE_DEPENDENCY_NAMES, REACT_NATIVE_DEPENDENCY_PREFIXES, REACT_NATIVE_RULES, RECOMMENDED_RULES, RULES, type Rule, type RuleFramework, type RulePlugin, type RuleSeverity, type RuleVisitors, TANSTACK_QUERY_RULES, TANSTACK_START_RULES, plugin as default, isReactNativeDependencyName };
|
|
10074
10694
|
//# sourceMappingURL=index.d.ts.map
|