oxlint-plugin-react-doctor 0.2.9 → 0.2.11
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 -11
- package/dist/index.js +2246 -629
- 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";
|
|
@@ -4141,6 +4403,23 @@ declare const REACT_DOCTOR_RULES: readonly [{
|
|
|
4141
4403
|
readonly recommendation?: string;
|
|
4142
4404
|
readonly create: (context: RuleContext) => RuleVisitors;
|
|
4143
4405
|
};
|
|
4406
|
+
}, {
|
|
4407
|
+
readonly key: "react-doctor/rn-list-missing-estimated-item-size";
|
|
4408
|
+
readonly id: "rn-list-missing-estimated-item-size";
|
|
4409
|
+
readonly source: "react-doctor";
|
|
4410
|
+
readonly originallyExternal: false;
|
|
4411
|
+
readonly rule: {
|
|
4412
|
+
readonly framework: "react-native";
|
|
4413
|
+
readonly category: "React Native";
|
|
4414
|
+
readonly tags: readonly string[];
|
|
4415
|
+
readonly id: string;
|
|
4416
|
+
readonly severity: RuleSeverity;
|
|
4417
|
+
readonly requires?: ReadonlyArray<string>;
|
|
4418
|
+
readonly disabledBy?: ReadonlyArray<string>;
|
|
4419
|
+
readonly defaultEnabled?: boolean;
|
|
4420
|
+
readonly recommendation?: string;
|
|
4421
|
+
readonly create: (context: RuleContext) => RuleVisitors;
|
|
4422
|
+
};
|
|
4144
4423
|
}, {
|
|
4145
4424
|
readonly key: "react-doctor/rn-list-recyclable-without-types";
|
|
4146
4425
|
readonly id: "rn-list-recyclable-without-types";
|
|
@@ -4311,6 +4590,23 @@ declare const REACT_DOCTOR_RULES: readonly [{
|
|
|
4311
4590
|
readonly recommendation?: string;
|
|
4312
4591
|
readonly create: (context: RuleContext) => RuleVisitors;
|
|
4313
4592
|
};
|
|
4593
|
+
}, {
|
|
4594
|
+
readonly key: "react-doctor/rn-no-renderitem-key";
|
|
4595
|
+
readonly id: "rn-no-renderitem-key";
|
|
4596
|
+
readonly source: "react-doctor";
|
|
4597
|
+
readonly originallyExternal: false;
|
|
4598
|
+
readonly rule: {
|
|
4599
|
+
readonly framework: "react-native";
|
|
4600
|
+
readonly category: "React Native";
|
|
4601
|
+
readonly tags: readonly string[];
|
|
4602
|
+
readonly id: string;
|
|
4603
|
+
readonly severity: RuleSeverity;
|
|
4604
|
+
readonly requires?: ReadonlyArray<string>;
|
|
4605
|
+
readonly disabledBy?: ReadonlyArray<string>;
|
|
4606
|
+
readonly defaultEnabled?: boolean;
|
|
4607
|
+
readonly recommendation?: string;
|
|
4608
|
+
readonly create: (context: RuleContext) => RuleVisitors;
|
|
4609
|
+
};
|
|
4314
4610
|
}, {
|
|
4315
4611
|
readonly key: "react-doctor/rn-no-scroll-state";
|
|
4316
4612
|
readonly id: "rn-no-scroll-state";
|
|
@@ -4414,8 +4710,8 @@ declare const REACT_DOCTOR_RULES: readonly [{
|
|
|
4414
4710
|
readonly create: (context: RuleContext) => RuleVisitors;
|
|
4415
4711
|
};
|
|
4416
4712
|
}, {
|
|
4417
|
-
readonly key: "react-doctor/rn-prefer-
|
|
4418
|
-
readonly id: "rn-prefer-
|
|
4713
|
+
readonly key: "react-doctor/rn-prefer-pressable-over-gesture-detector";
|
|
4714
|
+
readonly id: "rn-prefer-pressable-over-gesture-detector";
|
|
4419
4715
|
readonly source: "react-doctor";
|
|
4420
4716
|
readonly originallyExternal: false;
|
|
4421
4717
|
readonly rule: {
|
|
@@ -4431,8 +4727,8 @@ declare const REACT_DOCTOR_RULES: readonly [{
|
|
|
4431
4727
|
readonly create: (context: RuleContext) => RuleVisitors;
|
|
4432
4728
|
};
|
|
4433
4729
|
}, {
|
|
4434
|
-
readonly key: "react-doctor/rn-
|
|
4435
|
-
readonly id: "rn-
|
|
4730
|
+
readonly key: "react-doctor/rn-prefer-reanimated";
|
|
4731
|
+
readonly id: "rn-prefer-reanimated";
|
|
4436
4732
|
readonly source: "react-doctor";
|
|
4437
4733
|
readonly originallyExternal: false;
|
|
4438
4734
|
readonly rule: {
|
|
@@ -4448,8 +4744,8 @@ declare const REACT_DOCTOR_RULES: readonly [{
|
|
|
4448
4744
|
readonly create: (context: RuleContext) => RuleVisitors;
|
|
4449
4745
|
};
|
|
4450
4746
|
}, {
|
|
4451
|
-
readonly key: "react-doctor/rn-
|
|
4452
|
-
readonly id: "rn-
|
|
4747
|
+
readonly key: "react-doctor/rn-pressable-shared-value-mutation";
|
|
4748
|
+
readonly id: "rn-pressable-shared-value-mutation";
|
|
4453
4749
|
readonly source: "react-doctor";
|
|
4454
4750
|
readonly originallyExternal: false;
|
|
4455
4751
|
readonly rule: {
|
|
@@ -4465,7 +4761,41 @@ declare const REACT_DOCTOR_RULES: readonly [{
|
|
|
4465
4761
|
readonly create: (context: RuleContext) => RuleVisitors;
|
|
4466
4762
|
};
|
|
4467
4763
|
}, {
|
|
4468
|
-
readonly key: "react-doctor/rn-
|
|
4764
|
+
readonly key: "react-doctor/rn-scrollview-dynamic-padding";
|
|
4765
|
+
readonly id: "rn-scrollview-dynamic-padding";
|
|
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
|
+
};
|
|
4780
|
+
}, {
|
|
4781
|
+
readonly key: "react-doctor/rn-scrollview-flex-in-content-container";
|
|
4782
|
+
readonly id: "rn-scrollview-flex-in-content-container";
|
|
4783
|
+
readonly source: "react-doctor";
|
|
4784
|
+
readonly originallyExternal: false;
|
|
4785
|
+
readonly rule: {
|
|
4786
|
+
readonly framework: "react-native";
|
|
4787
|
+
readonly category: "React Native";
|
|
4788
|
+
readonly tags: readonly string[];
|
|
4789
|
+
readonly id: string;
|
|
4790
|
+
readonly severity: RuleSeverity;
|
|
4791
|
+
readonly requires?: ReadonlyArray<string>;
|
|
4792
|
+
readonly disabledBy?: ReadonlyArray<string>;
|
|
4793
|
+
readonly defaultEnabled?: boolean;
|
|
4794
|
+
readonly recommendation?: string;
|
|
4795
|
+
readonly create: (context: RuleContext) => RuleVisitors;
|
|
4796
|
+
};
|
|
4797
|
+
}, {
|
|
4798
|
+
readonly key: "react-doctor/rn-style-prefer-boxshadow";
|
|
4469
4799
|
readonly id: "rn-style-prefer-boxshadow";
|
|
4470
4800
|
readonly source: "react-doctor";
|
|
4471
4801
|
readonly originallyExternal: false;
|
|
@@ -5092,6 +5422,23 @@ declare const EXTERNAL_RULES: readonly [{
|
|
|
5092
5422
|
readonly severity: "error";
|
|
5093
5423
|
}];
|
|
5094
5424
|
declare const RULES: readonly [{
|
|
5425
|
+
readonly key: "react-doctor/activity-wraps-effect-heavy-subtree";
|
|
5426
|
+
readonly id: "activity-wraps-effect-heavy-subtree";
|
|
5427
|
+
readonly source: "react-doctor";
|
|
5428
|
+
readonly originallyExternal: false;
|
|
5429
|
+
readonly rule: {
|
|
5430
|
+
readonly framework: "global";
|
|
5431
|
+
readonly category: "State & Effects";
|
|
5432
|
+
readonly id: string;
|
|
5433
|
+
readonly severity: RuleSeverity;
|
|
5434
|
+
readonly requires?: ReadonlyArray<string>;
|
|
5435
|
+
readonly disabledBy?: ReadonlyArray<string>;
|
|
5436
|
+
readonly tags?: ReadonlyArray<string>;
|
|
5437
|
+
readonly defaultEnabled?: boolean;
|
|
5438
|
+
readonly recommendation?: string;
|
|
5439
|
+
readonly create: (context: RuleContext) => RuleVisitors;
|
|
5440
|
+
};
|
|
5441
|
+
}, {
|
|
5095
5442
|
readonly key: "react-doctor/advanced-event-handler-refs";
|
|
5096
5443
|
readonly id: "advanced-event-handler-refs";
|
|
5097
5444
|
readonly source: "react-doctor";
|
|
@@ -5686,6 +6033,23 @@ declare const RULES: readonly [{
|
|
|
5686
6033
|
readonly recommendation?: string;
|
|
5687
6034
|
readonly create: (context: RuleContext) => RuleVisitors;
|
|
5688
6035
|
};
|
|
6036
|
+
}, {
|
|
6037
|
+
readonly key: "react-doctor/hooks-no-nan-in-deps";
|
|
6038
|
+
readonly id: "hooks-no-nan-in-deps";
|
|
6039
|
+
readonly source: "react-doctor";
|
|
6040
|
+
readonly originallyExternal: false;
|
|
6041
|
+
readonly rule: {
|
|
6042
|
+
readonly framework: "global";
|
|
6043
|
+
readonly category: "State & Effects";
|
|
6044
|
+
readonly id: string;
|
|
6045
|
+
readonly severity: RuleSeverity;
|
|
6046
|
+
readonly requires?: ReadonlyArray<string>;
|
|
6047
|
+
readonly disabledBy?: ReadonlyArray<string>;
|
|
6048
|
+
readonly tags?: ReadonlyArray<string>;
|
|
6049
|
+
readonly defaultEnabled?: boolean;
|
|
6050
|
+
readonly recommendation?: string;
|
|
6051
|
+
readonly create: (context: RuleContext) => RuleVisitors;
|
|
6052
|
+
};
|
|
5689
6053
|
}, {
|
|
5690
6054
|
readonly key: "react-doctor/html-has-lang";
|
|
5691
6055
|
readonly id: "html-has-lang";
|
|
@@ -5703,6 +6067,57 @@ declare const RULES: readonly [{
|
|
|
5703
6067
|
readonly recommendation?: string;
|
|
5704
6068
|
readonly create: (context: RuleContext) => RuleVisitors;
|
|
5705
6069
|
};
|
|
6070
|
+
}, {
|
|
6071
|
+
readonly key: "react-doctor/html-no-invalid-paragraph-child";
|
|
6072
|
+
readonly id: "html-no-invalid-paragraph-child";
|
|
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-invalid-table-nesting";
|
|
6089
|
+
readonly id: "html-no-invalid-table-nesting";
|
|
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
|
+
};
|
|
6104
|
+
}, {
|
|
6105
|
+
readonly key: "react-doctor/html-no-nested-interactive";
|
|
6106
|
+
readonly id: "html-no-nested-interactive";
|
|
6107
|
+
readonly source: "react-doctor";
|
|
6108
|
+
readonly originallyExternal: false;
|
|
6109
|
+
readonly rule: {
|
|
6110
|
+
readonly framework: "global";
|
|
6111
|
+
readonly category: "Correctness";
|
|
6112
|
+
readonly id: string;
|
|
6113
|
+
readonly severity: RuleSeverity;
|
|
6114
|
+
readonly requires?: ReadonlyArray<string>;
|
|
6115
|
+
readonly disabledBy?: ReadonlyArray<string>;
|
|
6116
|
+
readonly tags?: ReadonlyArray<string>;
|
|
6117
|
+
readonly defaultEnabled?: boolean;
|
|
6118
|
+
readonly recommendation?: string;
|
|
6119
|
+
readonly create: (context: RuleContext) => RuleVisitors;
|
|
6120
|
+
};
|
|
5706
6121
|
}, {
|
|
5707
6122
|
readonly key: "react-doctor/iframe-has-title";
|
|
5708
6123
|
readonly id: "iframe-has-title";
|
|
@@ -5771,6 +6186,74 @@ declare const RULES: readonly [{
|
|
|
5771
6186
|
readonly recommendation?: string;
|
|
5772
6187
|
readonly create: (context: RuleContext) => RuleVisitors;
|
|
5773
6188
|
};
|
|
6189
|
+
}, {
|
|
6190
|
+
readonly key: "react-doctor/jotai-derived-atom-returns-fresh-object";
|
|
6191
|
+
readonly id: "jotai-derived-atom-returns-fresh-object";
|
|
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-select-atom-in-render-body";
|
|
6208
|
+
readonly id: "jotai-select-atom-in-render-body";
|
|
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/jotai-tq-use-raw-query-atom";
|
|
6225
|
+
readonly id: "jotai-tq-use-raw-query-atom";
|
|
6226
|
+
readonly source: "react-doctor";
|
|
6227
|
+
readonly originallyExternal: false;
|
|
6228
|
+
readonly rule: {
|
|
6229
|
+
readonly framework: "global";
|
|
6230
|
+
readonly category: "State & Effects";
|
|
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
|
+
};
|
|
6240
|
+
}, {
|
|
6241
|
+
readonly key: "react-doctor/js-async-reduce-without-awaited-acc";
|
|
6242
|
+
readonly id: "js-async-reduce-without-awaited-acc";
|
|
6243
|
+
readonly source: "react-doctor";
|
|
6244
|
+
readonly originallyExternal: false;
|
|
6245
|
+
readonly rule: {
|
|
6246
|
+
readonly framework: "global";
|
|
6247
|
+
readonly category: "Performance";
|
|
6248
|
+
readonly id: string;
|
|
6249
|
+
readonly severity: RuleSeverity;
|
|
6250
|
+
readonly requires?: ReadonlyArray<string>;
|
|
6251
|
+
readonly disabledBy?: ReadonlyArray<string>;
|
|
6252
|
+
readonly tags?: ReadonlyArray<string>;
|
|
6253
|
+
readonly defaultEnabled?: boolean;
|
|
6254
|
+
readonly recommendation?: string;
|
|
6255
|
+
readonly create: (context: RuleContext) => RuleVisitors;
|
|
6256
|
+
};
|
|
5774
6257
|
}, {
|
|
5775
6258
|
readonly key: "react-doctor/js-batch-dom-css";
|
|
5776
6259
|
readonly id: "js-batch-dom-css";
|
|
@@ -8440,6 +8923,91 @@ declare const RULES: readonly [{
|
|
|
8440
8923
|
readonly recommendation?: string;
|
|
8441
8924
|
readonly create: (context: RuleContext) => RuleVisitors;
|
|
8442
8925
|
};
|
|
8926
|
+
}, {
|
|
8927
|
+
readonly key: "react-doctor/preact-no-children-length";
|
|
8928
|
+
readonly id: "preact-no-children-length";
|
|
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-react-hooks-import";
|
|
8945
|
+
readonly id: "preact-no-react-hooks-import";
|
|
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-no-render-arguments";
|
|
8962
|
+
readonly id: "preact-no-render-arguments";
|
|
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-ondblclick";
|
|
8979
|
+
readonly id: "preact-prefer-ondblclick";
|
|
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
|
+
};
|
|
8994
|
+
}, {
|
|
8995
|
+
readonly key: "react-doctor/preact-prefer-oninput";
|
|
8996
|
+
readonly id: "preact-prefer-oninput";
|
|
8997
|
+
readonly source: "react-doctor";
|
|
8998
|
+
readonly originallyExternal: false;
|
|
8999
|
+
readonly rule: {
|
|
9000
|
+
readonly framework: "preact";
|
|
9001
|
+
readonly category: "Preact";
|
|
9002
|
+
readonly id: string;
|
|
9003
|
+
readonly severity: RuleSeverity;
|
|
9004
|
+
readonly requires?: ReadonlyArray<string>;
|
|
9005
|
+
readonly disabledBy?: ReadonlyArray<string>;
|
|
9006
|
+
readonly tags?: ReadonlyArray<string>;
|
|
9007
|
+
readonly defaultEnabled?: boolean;
|
|
9008
|
+
readonly recommendation?: string;
|
|
9009
|
+
readonly create: (context: RuleContext) => RuleVisitors;
|
|
9010
|
+
};
|
|
8443
9011
|
}, {
|
|
8444
9012
|
readonly key: "react-doctor/prefer-dynamic-import";
|
|
8445
9013
|
readonly id: "prefer-dynamic-import";
|
|
@@ -8491,6 +9059,23 @@ declare const RULES: readonly [{
|
|
|
8491
9059
|
readonly recommendation?: string;
|
|
8492
9060
|
readonly create: (context: RuleContext) => RuleVisitors;
|
|
8493
9061
|
};
|
|
9062
|
+
}, {
|
|
9063
|
+
readonly key: "react-doctor/prefer-html-dialog";
|
|
9064
|
+
readonly id: "prefer-html-dialog";
|
|
9065
|
+
readonly source: "react-doctor";
|
|
9066
|
+
readonly originallyExternal: false;
|
|
9067
|
+
readonly rule: {
|
|
9068
|
+
readonly framework: "global";
|
|
9069
|
+
readonly category: "Accessibility";
|
|
9070
|
+
readonly id: string;
|
|
9071
|
+
readonly severity: RuleSeverity;
|
|
9072
|
+
readonly requires?: ReadonlyArray<string>;
|
|
9073
|
+
readonly disabledBy?: ReadonlyArray<string>;
|
|
9074
|
+
readonly tags?: ReadonlyArray<string>;
|
|
9075
|
+
readonly defaultEnabled?: boolean;
|
|
9076
|
+
readonly recommendation?: string;
|
|
9077
|
+
readonly create: (context: RuleContext) => RuleVisitors;
|
|
9078
|
+
};
|
|
8494
9079
|
}, {
|
|
8495
9080
|
readonly key: "react-doctor/prefer-tag-over-role";
|
|
8496
9081
|
readonly id: "prefer-tag-over-role";
|
|
@@ -9103,6 +9688,23 @@ declare const RULES: readonly [{
|
|
|
9103
9688
|
readonly recommendation?: string;
|
|
9104
9689
|
readonly create: (context: RuleContext) => RuleVisitors;
|
|
9105
9690
|
};
|
|
9691
|
+
}, {
|
|
9692
|
+
readonly key: "react-doctor/rn-list-missing-estimated-item-size";
|
|
9693
|
+
readonly id: "rn-list-missing-estimated-item-size";
|
|
9694
|
+
readonly source: "react-doctor";
|
|
9695
|
+
readonly originallyExternal: false;
|
|
9696
|
+
readonly rule: {
|
|
9697
|
+
readonly framework: "react-native";
|
|
9698
|
+
readonly category: "React Native";
|
|
9699
|
+
readonly tags: readonly string[];
|
|
9700
|
+
readonly id: string;
|
|
9701
|
+
readonly severity: RuleSeverity;
|
|
9702
|
+
readonly requires?: ReadonlyArray<string>;
|
|
9703
|
+
readonly disabledBy?: ReadonlyArray<string>;
|
|
9704
|
+
readonly defaultEnabled?: boolean;
|
|
9705
|
+
readonly recommendation?: string;
|
|
9706
|
+
readonly create: (context: RuleContext) => RuleVisitors;
|
|
9707
|
+
};
|
|
9106
9708
|
}, {
|
|
9107
9709
|
readonly key: "react-doctor/rn-list-recyclable-without-types";
|
|
9108
9710
|
readonly id: "rn-list-recyclable-without-types";
|
|
@@ -9273,6 +9875,23 @@ declare const RULES: readonly [{
|
|
|
9273
9875
|
readonly recommendation?: string;
|
|
9274
9876
|
readonly create: (context: RuleContext) => RuleVisitors;
|
|
9275
9877
|
};
|
|
9878
|
+
}, {
|
|
9879
|
+
readonly key: "react-doctor/rn-no-renderitem-key";
|
|
9880
|
+
readonly id: "rn-no-renderitem-key";
|
|
9881
|
+
readonly source: "react-doctor";
|
|
9882
|
+
readonly originallyExternal: false;
|
|
9883
|
+
readonly rule: {
|
|
9884
|
+
readonly framework: "react-native";
|
|
9885
|
+
readonly category: "React Native";
|
|
9886
|
+
readonly tags: readonly string[];
|
|
9887
|
+
readonly id: string;
|
|
9888
|
+
readonly severity: RuleSeverity;
|
|
9889
|
+
readonly requires?: ReadonlyArray<string>;
|
|
9890
|
+
readonly disabledBy?: ReadonlyArray<string>;
|
|
9891
|
+
readonly defaultEnabled?: boolean;
|
|
9892
|
+
readonly recommendation?: string;
|
|
9893
|
+
readonly create: (context: RuleContext) => RuleVisitors;
|
|
9894
|
+
};
|
|
9276
9895
|
}, {
|
|
9277
9896
|
readonly key: "react-doctor/rn-no-scroll-state";
|
|
9278
9897
|
readonly id: "rn-no-scroll-state";
|
|
@@ -9375,6 +9994,23 @@ declare const RULES: readonly [{
|
|
|
9375
9994
|
readonly recommendation?: string;
|
|
9376
9995
|
readonly create: (context: RuleContext) => RuleVisitors;
|
|
9377
9996
|
};
|
|
9997
|
+
}, {
|
|
9998
|
+
readonly key: "react-doctor/rn-prefer-pressable-over-gesture-detector";
|
|
9999
|
+
readonly id: "rn-prefer-pressable-over-gesture-detector";
|
|
10000
|
+
readonly source: "react-doctor";
|
|
10001
|
+
readonly originallyExternal: false;
|
|
10002
|
+
readonly rule: {
|
|
10003
|
+
readonly framework: "react-native";
|
|
10004
|
+
readonly category: "React Native";
|
|
10005
|
+
readonly tags: readonly string[];
|
|
10006
|
+
readonly id: string;
|
|
10007
|
+
readonly severity: RuleSeverity;
|
|
10008
|
+
readonly requires?: ReadonlyArray<string>;
|
|
10009
|
+
readonly disabledBy?: ReadonlyArray<string>;
|
|
10010
|
+
readonly defaultEnabled?: boolean;
|
|
10011
|
+
readonly recommendation?: string;
|
|
10012
|
+
readonly create: (context: RuleContext) => RuleVisitors;
|
|
10013
|
+
};
|
|
9378
10014
|
}, {
|
|
9379
10015
|
readonly key: "react-doctor/rn-prefer-reanimated";
|
|
9380
10016
|
readonly id: "rn-prefer-reanimated";
|
|
@@ -9426,6 +10062,23 @@ declare const RULES: readonly [{
|
|
|
9426
10062
|
readonly recommendation?: string;
|
|
9427
10063
|
readonly create: (context: RuleContext) => RuleVisitors;
|
|
9428
10064
|
};
|
|
10065
|
+
}, {
|
|
10066
|
+
readonly key: "react-doctor/rn-scrollview-flex-in-content-container";
|
|
10067
|
+
readonly id: "rn-scrollview-flex-in-content-container";
|
|
10068
|
+
readonly source: "react-doctor";
|
|
10069
|
+
readonly originallyExternal: false;
|
|
10070
|
+
readonly rule: {
|
|
10071
|
+
readonly framework: "react-native";
|
|
10072
|
+
readonly category: "React Native";
|
|
10073
|
+
readonly tags: readonly string[];
|
|
10074
|
+
readonly id: string;
|
|
10075
|
+
readonly severity: RuleSeverity;
|
|
10076
|
+
readonly requires?: ReadonlyArray<string>;
|
|
10077
|
+
readonly disabledBy?: ReadonlyArray<string>;
|
|
10078
|
+
readonly defaultEnabled?: boolean;
|
|
10079
|
+
readonly recommendation?: string;
|
|
10080
|
+
readonly create: (context: RuleContext) => RuleVisitors;
|
|
10081
|
+
};
|
|
9429
10082
|
}, {
|
|
9430
10083
|
readonly key: "react-doctor/rn-style-prefer-boxshadow";
|
|
9431
10084
|
readonly id: "rn-style-prefer-boxshadow";
|
|
@@ -10057,6 +10710,7 @@ declare const NEXTJS_RULES: Record<string, OxlintRuleSeverity>;
|
|
|
10057
10710
|
declare const REACT_NATIVE_RULES: Record<string, OxlintRuleSeverity>;
|
|
10058
10711
|
declare const TANSTACK_START_RULES: Record<string, OxlintRuleSeverity>;
|
|
10059
10712
|
declare const TANSTACK_QUERY_RULES: Record<string, OxlintRuleSeverity>;
|
|
10713
|
+
declare const PREACT_RULES: Record<string, OxlintRuleSeverity>;
|
|
10060
10714
|
declare const ALL_REACT_DOCTOR_RULES: Record<string, OxlintRuleSeverity>;
|
|
10061
10715
|
declare const ALL_REACT_DOCTOR_RULE_KEYS: ReadonlySet<string>;
|
|
10062
10716
|
declare const FRAMEWORK_SPECIFIC_RULE_KEYS: ReadonlySet<string>;
|
|
@@ -10070,5 +10724,5 @@ declare const REACT_NATIVE_DEPENDENCY_NAMES: ReadonlySet<string>;
|
|
|
10070
10724
|
declare const REACT_NATIVE_DEPENDENCY_PREFIXES: ReadonlyArray<string>;
|
|
10071
10725
|
declare const isReactNativeDependencyName: (dependencyName: string) => boolean;
|
|
10072
10726
|
//#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 };
|
|
10727
|
+
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
10728
|
//# sourceMappingURL=index.d.ts.map
|