oxlint-plugin-react-doctor 0.5.6 → 0.5.7-dev.242bf69

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.
Files changed (3) hide show
  1. package/dist/index.d.ts +420 -1
  2. package/dist/index.js +846 -291
  3. package/package.json +2 -2
package/dist/index.d.ts CHANGED
@@ -36,7 +36,6 @@ interface ControlFlowAnalysis {
36
36
  readonly cfgFor: (functionLike: EsTreeNode) => FunctionCfg | null;
37
37
  readonly enclosingFunction: (node: EsTreeNode) => EsTreeNode | null;
38
38
  readonly isUnconditionalFromEntry: (node: EsTreeNode) => boolean;
39
- readonly dominatesExit: (node: EsTreeNode) => boolean;
40
39
  }
41
40
  //#endregion
42
41
  //#region src/plugin/semantic/scope-analysis.d.ts
@@ -558,6 +557,27 @@ declare const REACT_DOCTOR_RULES: readonly [{
558
557
  readonly recommendation?: string;
559
558
  readonly create: (context: RuleContext) => RuleVisitors;
560
559
  };
560
+ }, {
561
+ readonly key: "react-doctor/auth-token-in-web-storage";
562
+ readonly id: "auth-token-in-web-storage";
563
+ readonly source: "react-doctor";
564
+ readonly originallyExternal: false;
565
+ readonly rule: {
566
+ readonly framework: "global";
567
+ readonly category: "Security";
568
+ readonly id: string;
569
+ readonly title?: string;
570
+ readonly severity: RuleSeverity;
571
+ readonly requires?: ReadonlyArray<string>;
572
+ readonly disabledBy?: ReadonlyArray<string>;
573
+ readonly tags?: ReadonlyArray<string>;
574
+ readonly defaultEnabled?: boolean;
575
+ readonly lifecycle?: "retired";
576
+ readonly scan?: FileScan;
577
+ readonly committedFilesOnly?: boolean;
578
+ readonly recommendation?: string;
579
+ readonly create: (context: RuleContext) => RuleVisitors;
580
+ };
561
581
  }, {
562
582
  readonly key: "react-doctor/autocomplete-valid";
563
583
  readonly id: "autocomplete-valid";
@@ -936,6 +956,27 @@ declare const REACT_DOCTOR_RULES: readonly [{
936
956
  readonly recommendation?: string;
937
957
  readonly create: (context: RuleContext) => RuleVisitors;
938
958
  };
959
+ }, {
960
+ readonly key: "react-doctor/dialog-has-accessible-name";
961
+ readonly id: "dialog-has-accessible-name";
962
+ readonly source: "react-doctor";
963
+ readonly originallyExternal: false;
964
+ readonly rule: {
965
+ readonly framework: "global";
966
+ readonly category: "Accessibility";
967
+ readonly requires: readonly string[];
968
+ readonly id: string;
969
+ readonly title?: string;
970
+ readonly severity: RuleSeverity;
971
+ readonly disabledBy?: ReadonlyArray<string>;
972
+ readonly tags?: ReadonlyArray<string>;
973
+ readonly defaultEnabled?: boolean;
974
+ readonly lifecycle?: "retired";
975
+ readonly scan?: FileScan;
976
+ readonly committedFilesOnly?: boolean;
977
+ readonly recommendation?: string;
978
+ readonly create: (context: RuleContext) => RuleVisitors;
979
+ };
939
980
  }, {
940
981
  readonly key: "react-doctor/display-name";
941
982
  readonly id: "display-name";
@@ -3036,6 +3077,27 @@ declare const REACT_DOCTOR_RULES: readonly [{
3036
3077
  readonly recommendation?: string;
3037
3078
  readonly create: (context: RuleContext) => RuleVisitors;
3038
3079
  };
3080
+ }, {
3081
+ readonly key: "react-doctor/no-async-effect-callback";
3082
+ readonly id: "no-async-effect-callback";
3083
+ readonly source: "react-doctor";
3084
+ readonly originallyExternal: false;
3085
+ readonly rule: {
3086
+ readonly framework: "global";
3087
+ readonly category: "Bugs";
3088
+ readonly requires: readonly string[];
3089
+ readonly id: string;
3090
+ readonly title?: string;
3091
+ readonly severity: RuleSeverity;
3092
+ readonly disabledBy?: ReadonlyArray<string>;
3093
+ readonly tags?: ReadonlyArray<string>;
3094
+ readonly defaultEnabled?: boolean;
3095
+ readonly lifecycle?: "retired";
3096
+ readonly scan?: FileScan;
3097
+ readonly committedFilesOnly?: boolean;
3098
+ readonly recommendation?: string;
3099
+ readonly create: (context: RuleContext) => RuleVisitors;
3100
+ };
3039
3101
  }, {
3040
3102
  readonly key: "react-doctor/no-autofocus";
3041
3103
  readonly id: "no-autofocus";
@@ -3078,6 +3140,27 @@ declare const REACT_DOCTOR_RULES: readonly [{
3078
3140
  readonly recommendation?: string;
3079
3141
  readonly create: (context: RuleContext) => RuleVisitors;
3080
3142
  };
3143
+ }, {
3144
+ readonly key: "react-doctor/no-call-component-as-function";
3145
+ readonly id: "no-call-component-as-function";
3146
+ readonly source: "react-doctor";
3147
+ readonly originallyExternal: false;
3148
+ readonly rule: {
3149
+ readonly framework: "global";
3150
+ readonly category: "Bugs";
3151
+ readonly requires: readonly string[];
3152
+ readonly id: string;
3153
+ readonly title?: string;
3154
+ readonly severity: RuleSeverity;
3155
+ readonly disabledBy?: ReadonlyArray<string>;
3156
+ readonly tags?: ReadonlyArray<string>;
3157
+ readonly defaultEnabled?: boolean;
3158
+ readonly lifecycle?: "retired";
3159
+ readonly scan?: FileScan;
3160
+ readonly committedFilesOnly?: boolean;
3161
+ readonly recommendation?: string;
3162
+ readonly create: (context: RuleContext) => RuleVisitors;
3163
+ };
3081
3164
  }, {
3082
3165
  readonly key: "react-doctor/no-cascading-set-state";
3083
3166
  readonly id: "no-cascading-set-state";
@@ -3183,6 +3266,27 @@ declare const REACT_DOCTOR_RULES: readonly [{
3183
3266
  readonly recommendation?: string;
3184
3267
  readonly create: (context: RuleContext) => RuleVisitors;
3185
3268
  };
3269
+ }, {
3270
+ readonly key: "react-doctor/no-create-ref-in-function-component";
3271
+ readonly id: "no-create-ref-in-function-component";
3272
+ readonly source: "react-doctor";
3273
+ readonly originallyExternal: false;
3274
+ readonly rule: {
3275
+ readonly framework: "global";
3276
+ readonly category: "Bugs";
3277
+ readonly requires: readonly string[];
3278
+ readonly id: string;
3279
+ readonly title?: string;
3280
+ readonly severity: RuleSeverity;
3281
+ readonly disabledBy?: ReadonlyArray<string>;
3282
+ readonly tags?: ReadonlyArray<string>;
3283
+ readonly defaultEnabled?: boolean;
3284
+ readonly lifecycle?: "retired";
3285
+ readonly scan?: FileScan;
3286
+ readonly committedFilesOnly?: boolean;
3287
+ readonly recommendation?: string;
3288
+ readonly create: (context: RuleContext) => RuleVisitors;
3289
+ };
3186
3290
  }, {
3187
3291
  readonly key: "react-doctor/no-create-store-in-render";
3188
3292
  readonly id: "no-create-store-in-render";
@@ -3498,6 +3602,27 @@ declare const REACT_DOCTOR_RULES: readonly [{
3498
3602
  readonly recommendation?: string;
3499
3603
  readonly create: (context: RuleContext) => RuleVisitors;
3500
3604
  };
3605
+ }, {
3606
+ readonly key: "react-doctor/no-document-write";
3607
+ readonly id: "no-document-write";
3608
+ readonly source: "react-doctor";
3609
+ readonly originallyExternal: false;
3610
+ readonly rule: {
3611
+ readonly framework: "global";
3612
+ readonly category: "Performance";
3613
+ readonly id: string;
3614
+ readonly title?: string;
3615
+ readonly severity: RuleSeverity;
3616
+ readonly requires?: ReadonlyArray<string>;
3617
+ readonly disabledBy?: ReadonlyArray<string>;
3618
+ readonly tags?: ReadonlyArray<string>;
3619
+ readonly defaultEnabled?: boolean;
3620
+ readonly lifecycle?: "retired";
3621
+ readonly scan?: FileScan;
3622
+ readonly committedFilesOnly?: boolean;
3623
+ readonly recommendation?: string;
3624
+ readonly create: (context: RuleContext) => RuleVisitors;
3625
+ };
3501
3626
  }, {
3502
3627
  readonly key: "react-doctor/no-dynamic-import-path";
3503
3628
  readonly id: "no-dynamic-import-path";
@@ -3855,6 +3980,27 @@ declare const REACT_DOCTOR_RULES: readonly [{
3855
3980
  readonly recommendation?: string;
3856
3981
  readonly create: (context: RuleContext) => RuleVisitors;
3857
3982
  };
3983
+ }, {
3984
+ readonly key: "react-doctor/no-img-lazy-with-high-fetchpriority";
3985
+ readonly id: "no-img-lazy-with-high-fetchpriority";
3986
+ readonly source: "react-doctor";
3987
+ readonly originallyExternal: false;
3988
+ readonly rule: {
3989
+ readonly framework: "global";
3990
+ readonly category: "Performance";
3991
+ readonly requires: readonly string[];
3992
+ readonly id: string;
3993
+ readonly title?: string;
3994
+ readonly severity: RuleSeverity;
3995
+ readonly disabledBy?: ReadonlyArray<string>;
3996
+ readonly tags?: ReadonlyArray<string>;
3997
+ readonly defaultEnabled?: boolean;
3998
+ readonly lifecycle?: "retired";
3999
+ readonly scan?: FileScan;
4000
+ readonly committedFilesOnly?: boolean;
4001
+ readonly recommendation?: string;
4002
+ readonly create: (context: RuleContext) => RuleVisitors;
4003
+ };
3858
4004
  }, {
3859
4005
  readonly key: "react-doctor/no-initialize-state";
3860
4006
  readonly id: "no-initialize-state";
@@ -3981,6 +4127,27 @@ declare const REACT_DOCTOR_RULES: readonly [{
3981
4127
  readonly recommendation?: string;
3982
4128
  readonly create: (context: RuleContext) => RuleVisitors;
3983
4129
  };
4130
+ }, {
4131
+ readonly key: "react-doctor/no-json-parse-stringify-clone";
4132
+ readonly id: "no-json-parse-stringify-clone";
4133
+ readonly source: "react-doctor";
4134
+ readonly originallyExternal: false;
4135
+ readonly rule: {
4136
+ readonly framework: "global";
4137
+ readonly category: "Performance";
4138
+ readonly id: string;
4139
+ readonly title?: string;
4140
+ readonly severity: RuleSeverity;
4141
+ readonly requires?: ReadonlyArray<string>;
4142
+ readonly disabledBy?: ReadonlyArray<string>;
4143
+ readonly tags?: ReadonlyArray<string>;
4144
+ readonly defaultEnabled?: boolean;
4145
+ readonly lifecycle?: "retired";
4146
+ readonly scan?: FileScan;
4147
+ readonly committedFilesOnly?: boolean;
4148
+ readonly recommendation?: string;
4149
+ readonly create: (context: RuleContext) => RuleVisitors;
4150
+ };
3984
4151
  }, {
3985
4152
  readonly key: "react-doctor/no-jsx-element-type";
3986
4153
  readonly id: "no-jsx-element-type";
@@ -4926,6 +5093,27 @@ declare const REACT_DOCTOR_RULES: readonly [{
4926
5093
  readonly recommendation?: string;
4927
5094
  readonly create: (context: RuleContext) => RuleVisitors;
4928
5095
  };
5096
+ }, {
5097
+ readonly key: "react-doctor/no-string-false-on-boolean-attribute";
5098
+ readonly id: "no-string-false-on-boolean-attribute";
5099
+ readonly source: "react-doctor";
5100
+ readonly originallyExternal: false;
5101
+ readonly rule: {
5102
+ readonly framework: "global";
5103
+ readonly category: "Bugs";
5104
+ readonly requires: readonly string[];
5105
+ readonly id: string;
5106
+ readonly title?: string;
5107
+ readonly severity: RuleSeverity;
5108
+ readonly disabledBy?: ReadonlyArray<string>;
5109
+ readonly tags?: ReadonlyArray<string>;
5110
+ readonly defaultEnabled?: boolean;
5111
+ readonly lifecycle?: "retired";
5112
+ readonly scan?: FileScan;
5113
+ readonly committedFilesOnly?: boolean;
5114
+ readonly recommendation?: string;
5115
+ readonly create: (context: RuleContext) => RuleVisitors;
5116
+ };
4929
5117
  }, {
4930
5118
  readonly key: "react-doctor/no-string-refs";
4931
5119
  readonly id: "no-string-refs";
@@ -4947,6 +5135,27 @@ declare const REACT_DOCTOR_RULES: readonly [{
4947
5135
  readonly recommendation?: string;
4948
5136
  readonly create: (context: RuleContext) => RuleVisitors;
4949
5137
  };
5138
+ }, {
5139
+ readonly key: "react-doctor/no-sync-xhr";
5140
+ readonly id: "no-sync-xhr";
5141
+ readonly source: "react-doctor";
5142
+ readonly originallyExternal: false;
5143
+ readonly rule: {
5144
+ readonly framework: "global";
5145
+ readonly category: "Performance";
5146
+ readonly id: string;
5147
+ readonly title?: string;
5148
+ readonly severity: RuleSeverity;
5149
+ readonly requires?: ReadonlyArray<string>;
5150
+ readonly disabledBy?: ReadonlyArray<string>;
5151
+ readonly tags?: ReadonlyArray<string>;
5152
+ readonly defaultEnabled?: boolean;
5153
+ readonly lifecycle?: "retired";
5154
+ readonly scan?: FileScan;
5155
+ readonly committedFilesOnly?: boolean;
5156
+ readonly recommendation?: string;
5157
+ readonly create: (context: RuleContext) => RuleVisitors;
5158
+ };
4950
5159
  }, {
4951
5160
  readonly key: "react-doctor/no-this-in-sfc";
4952
5161
  readonly id: "no-this-in-sfc";
@@ -8583,6 +8792,27 @@ declare const RULES: readonly [{
8583
8792
  readonly recommendation?: string;
8584
8793
  readonly create: (context: RuleContext) => RuleVisitors;
8585
8794
  };
8795
+ }, {
8796
+ readonly key: "react-doctor/auth-token-in-web-storage";
8797
+ readonly id: "auth-token-in-web-storage";
8798
+ readonly source: "react-doctor";
8799
+ readonly originallyExternal: false;
8800
+ readonly rule: {
8801
+ readonly framework: "global";
8802
+ readonly category: "Security";
8803
+ readonly id: string;
8804
+ readonly title?: string;
8805
+ readonly severity: RuleSeverity;
8806
+ readonly requires?: ReadonlyArray<string>;
8807
+ readonly disabledBy?: ReadonlyArray<string>;
8808
+ readonly tags?: ReadonlyArray<string>;
8809
+ readonly defaultEnabled?: boolean;
8810
+ readonly lifecycle?: "retired";
8811
+ readonly scan?: FileScan;
8812
+ readonly committedFilesOnly?: boolean;
8813
+ readonly recommendation?: string;
8814
+ readonly create: (context: RuleContext) => RuleVisitors;
8815
+ };
8586
8816
  }, {
8587
8817
  readonly key: "react-doctor/autocomplete-valid";
8588
8818
  readonly id: "autocomplete-valid";
@@ -8961,6 +9191,27 @@ declare const RULES: readonly [{
8961
9191
  readonly recommendation?: string;
8962
9192
  readonly create: (context: RuleContext) => RuleVisitors;
8963
9193
  };
9194
+ }, {
9195
+ readonly key: "react-doctor/dialog-has-accessible-name";
9196
+ readonly id: "dialog-has-accessible-name";
9197
+ readonly source: "react-doctor";
9198
+ readonly originallyExternal: false;
9199
+ readonly rule: {
9200
+ readonly framework: "global";
9201
+ readonly category: "Accessibility";
9202
+ readonly requires: readonly string[];
9203
+ readonly id: string;
9204
+ readonly title?: string;
9205
+ readonly severity: RuleSeverity;
9206
+ readonly disabledBy?: ReadonlyArray<string>;
9207
+ readonly tags?: ReadonlyArray<string>;
9208
+ readonly defaultEnabled?: boolean;
9209
+ readonly lifecycle?: "retired";
9210
+ readonly scan?: FileScan;
9211
+ readonly committedFilesOnly?: boolean;
9212
+ readonly recommendation?: string;
9213
+ readonly create: (context: RuleContext) => RuleVisitors;
9214
+ };
8964
9215
  }, {
8965
9216
  readonly key: "react-doctor/display-name";
8966
9217
  readonly id: "display-name";
@@ -11061,6 +11312,27 @@ declare const RULES: readonly [{
11061
11312
  readonly recommendation?: string;
11062
11313
  readonly create: (context: RuleContext) => RuleVisitors;
11063
11314
  };
11315
+ }, {
11316
+ readonly key: "react-doctor/no-async-effect-callback";
11317
+ readonly id: "no-async-effect-callback";
11318
+ readonly source: "react-doctor";
11319
+ readonly originallyExternal: false;
11320
+ readonly rule: {
11321
+ readonly framework: "global";
11322
+ readonly category: "Bugs";
11323
+ readonly requires: readonly string[];
11324
+ readonly id: string;
11325
+ readonly title?: string;
11326
+ readonly severity: RuleSeverity;
11327
+ readonly disabledBy?: ReadonlyArray<string>;
11328
+ readonly tags?: ReadonlyArray<string>;
11329
+ readonly defaultEnabled?: boolean;
11330
+ readonly lifecycle?: "retired";
11331
+ readonly scan?: FileScan;
11332
+ readonly committedFilesOnly?: boolean;
11333
+ readonly recommendation?: string;
11334
+ readonly create: (context: RuleContext) => RuleVisitors;
11335
+ };
11064
11336
  }, {
11065
11337
  readonly key: "react-doctor/no-autofocus";
11066
11338
  readonly id: "no-autofocus";
@@ -11103,6 +11375,27 @@ declare const RULES: readonly [{
11103
11375
  readonly recommendation?: string;
11104
11376
  readonly create: (context: RuleContext) => RuleVisitors;
11105
11377
  };
11378
+ }, {
11379
+ readonly key: "react-doctor/no-call-component-as-function";
11380
+ readonly id: "no-call-component-as-function";
11381
+ readonly source: "react-doctor";
11382
+ readonly originallyExternal: false;
11383
+ readonly rule: {
11384
+ readonly framework: "global";
11385
+ readonly category: "Bugs";
11386
+ readonly requires: readonly string[];
11387
+ readonly id: string;
11388
+ readonly title?: string;
11389
+ readonly severity: RuleSeverity;
11390
+ readonly disabledBy?: ReadonlyArray<string>;
11391
+ readonly tags?: ReadonlyArray<string>;
11392
+ readonly defaultEnabled?: boolean;
11393
+ readonly lifecycle?: "retired";
11394
+ readonly scan?: FileScan;
11395
+ readonly committedFilesOnly?: boolean;
11396
+ readonly recommendation?: string;
11397
+ readonly create: (context: RuleContext) => RuleVisitors;
11398
+ };
11106
11399
  }, {
11107
11400
  readonly key: "react-doctor/no-cascading-set-state";
11108
11401
  readonly id: "no-cascading-set-state";
@@ -11208,6 +11501,27 @@ declare const RULES: readonly [{
11208
11501
  readonly recommendation?: string;
11209
11502
  readonly create: (context: RuleContext) => RuleVisitors;
11210
11503
  };
11504
+ }, {
11505
+ readonly key: "react-doctor/no-create-ref-in-function-component";
11506
+ readonly id: "no-create-ref-in-function-component";
11507
+ readonly source: "react-doctor";
11508
+ readonly originallyExternal: false;
11509
+ readonly rule: {
11510
+ readonly framework: "global";
11511
+ readonly category: "Bugs";
11512
+ readonly requires: readonly string[];
11513
+ readonly id: string;
11514
+ readonly title?: string;
11515
+ readonly severity: RuleSeverity;
11516
+ readonly disabledBy?: ReadonlyArray<string>;
11517
+ readonly tags?: ReadonlyArray<string>;
11518
+ readonly defaultEnabled?: boolean;
11519
+ readonly lifecycle?: "retired";
11520
+ readonly scan?: FileScan;
11521
+ readonly committedFilesOnly?: boolean;
11522
+ readonly recommendation?: string;
11523
+ readonly create: (context: RuleContext) => RuleVisitors;
11524
+ };
11211
11525
  }, {
11212
11526
  readonly key: "react-doctor/no-create-store-in-render";
11213
11527
  readonly id: "no-create-store-in-render";
@@ -11523,6 +11837,27 @@ declare const RULES: readonly [{
11523
11837
  readonly recommendation?: string;
11524
11838
  readonly create: (context: RuleContext) => RuleVisitors;
11525
11839
  };
11840
+ }, {
11841
+ readonly key: "react-doctor/no-document-write";
11842
+ readonly id: "no-document-write";
11843
+ readonly source: "react-doctor";
11844
+ readonly originallyExternal: false;
11845
+ readonly rule: {
11846
+ readonly framework: "global";
11847
+ readonly category: "Performance";
11848
+ readonly id: string;
11849
+ readonly title?: string;
11850
+ readonly severity: RuleSeverity;
11851
+ readonly requires?: ReadonlyArray<string>;
11852
+ readonly disabledBy?: ReadonlyArray<string>;
11853
+ readonly tags?: ReadonlyArray<string>;
11854
+ readonly defaultEnabled?: boolean;
11855
+ readonly lifecycle?: "retired";
11856
+ readonly scan?: FileScan;
11857
+ readonly committedFilesOnly?: boolean;
11858
+ readonly recommendation?: string;
11859
+ readonly create: (context: RuleContext) => RuleVisitors;
11860
+ };
11526
11861
  }, {
11527
11862
  readonly key: "react-doctor/no-dynamic-import-path";
11528
11863
  readonly id: "no-dynamic-import-path";
@@ -11880,6 +12215,27 @@ declare const RULES: readonly [{
11880
12215
  readonly recommendation?: string;
11881
12216
  readonly create: (context: RuleContext) => RuleVisitors;
11882
12217
  };
12218
+ }, {
12219
+ readonly key: "react-doctor/no-img-lazy-with-high-fetchpriority";
12220
+ readonly id: "no-img-lazy-with-high-fetchpriority";
12221
+ readonly source: "react-doctor";
12222
+ readonly originallyExternal: false;
12223
+ readonly rule: {
12224
+ readonly framework: "global";
12225
+ readonly category: "Performance";
12226
+ readonly requires: readonly string[];
12227
+ readonly id: string;
12228
+ readonly title?: string;
12229
+ readonly severity: RuleSeverity;
12230
+ readonly disabledBy?: ReadonlyArray<string>;
12231
+ readonly tags?: ReadonlyArray<string>;
12232
+ readonly defaultEnabled?: boolean;
12233
+ readonly lifecycle?: "retired";
12234
+ readonly scan?: FileScan;
12235
+ readonly committedFilesOnly?: boolean;
12236
+ readonly recommendation?: string;
12237
+ readonly create: (context: RuleContext) => RuleVisitors;
12238
+ };
11883
12239
  }, {
11884
12240
  readonly key: "react-doctor/no-initialize-state";
11885
12241
  readonly id: "no-initialize-state";
@@ -12006,6 +12362,27 @@ declare const RULES: readonly [{
12006
12362
  readonly recommendation?: string;
12007
12363
  readonly create: (context: RuleContext) => RuleVisitors;
12008
12364
  };
12365
+ }, {
12366
+ readonly key: "react-doctor/no-json-parse-stringify-clone";
12367
+ readonly id: "no-json-parse-stringify-clone";
12368
+ readonly source: "react-doctor";
12369
+ readonly originallyExternal: false;
12370
+ readonly rule: {
12371
+ readonly framework: "global";
12372
+ readonly category: "Performance";
12373
+ readonly id: string;
12374
+ readonly title?: string;
12375
+ readonly severity: RuleSeverity;
12376
+ readonly requires?: ReadonlyArray<string>;
12377
+ readonly disabledBy?: ReadonlyArray<string>;
12378
+ readonly tags?: ReadonlyArray<string>;
12379
+ readonly defaultEnabled?: boolean;
12380
+ readonly lifecycle?: "retired";
12381
+ readonly scan?: FileScan;
12382
+ readonly committedFilesOnly?: boolean;
12383
+ readonly recommendation?: string;
12384
+ readonly create: (context: RuleContext) => RuleVisitors;
12385
+ };
12009
12386
  }, {
12010
12387
  readonly key: "react-doctor/no-jsx-element-type";
12011
12388
  readonly id: "no-jsx-element-type";
@@ -12951,6 +13328,27 @@ declare const RULES: readonly [{
12951
13328
  readonly recommendation?: string;
12952
13329
  readonly create: (context: RuleContext) => RuleVisitors;
12953
13330
  };
13331
+ }, {
13332
+ readonly key: "react-doctor/no-string-false-on-boolean-attribute";
13333
+ readonly id: "no-string-false-on-boolean-attribute";
13334
+ readonly source: "react-doctor";
13335
+ readonly originallyExternal: false;
13336
+ readonly rule: {
13337
+ readonly framework: "global";
13338
+ readonly category: "Bugs";
13339
+ readonly requires: readonly string[];
13340
+ readonly id: string;
13341
+ readonly title?: string;
13342
+ readonly severity: RuleSeverity;
13343
+ readonly disabledBy?: ReadonlyArray<string>;
13344
+ readonly tags?: ReadonlyArray<string>;
13345
+ readonly defaultEnabled?: boolean;
13346
+ readonly lifecycle?: "retired";
13347
+ readonly scan?: FileScan;
13348
+ readonly committedFilesOnly?: boolean;
13349
+ readonly recommendation?: string;
13350
+ readonly create: (context: RuleContext) => RuleVisitors;
13351
+ };
12954
13352
  }, {
12955
13353
  readonly key: "react-doctor/no-string-refs";
12956
13354
  readonly id: "no-string-refs";
@@ -12972,6 +13370,27 @@ declare const RULES: readonly [{
12972
13370
  readonly recommendation?: string;
12973
13371
  readonly create: (context: RuleContext) => RuleVisitors;
12974
13372
  };
13373
+ }, {
13374
+ readonly key: "react-doctor/no-sync-xhr";
13375
+ readonly id: "no-sync-xhr";
13376
+ readonly source: "react-doctor";
13377
+ readonly originallyExternal: false;
13378
+ readonly rule: {
13379
+ readonly framework: "global";
13380
+ readonly category: "Performance";
13381
+ readonly id: string;
13382
+ readonly title?: string;
13383
+ readonly severity: RuleSeverity;
13384
+ readonly requires?: ReadonlyArray<string>;
13385
+ readonly disabledBy?: ReadonlyArray<string>;
13386
+ readonly tags?: ReadonlyArray<string>;
13387
+ readonly defaultEnabled?: boolean;
13388
+ readonly lifecycle?: "retired";
13389
+ readonly scan?: FileScan;
13390
+ readonly committedFilesOnly?: boolean;
13391
+ readonly recommendation?: string;
13392
+ readonly create: (context: RuleContext) => RuleVisitors;
13393
+ };
12975
13394
  }, {
12976
13395
  readonly key: "react-doctor/no-this-in-sfc";
12977
13396
  readonly id: "no-this-in-sfc";