eslint-plugin-react-x 2.7.3-next.2 → 2.7.3-next.4

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 (2) hide show
  1. package/dist/index.js +36 -35
  2. package/package.json +12 -12
package/dist/index.js CHANGED
@@ -68,7 +68,7 @@ const rules$7 = {
68
68
  //#endregion
69
69
  //#region package.json
70
70
  var name$6 = "eslint-plugin-react-x";
71
- var version = "2.7.3-next.2";
71
+ var version = "2.7.3-next.4";
72
72
 
73
73
  //#endregion
74
74
  //#region src/utils/create-rule.ts
@@ -937,8 +937,8 @@ var no_class_component_default = createRule({
937
937
  });
938
938
  function create$45(context) {
939
939
  if (!context.sourceCode.text.includes("Component")) return {};
940
- const { ctx, visitors } = useComponentCollectorLegacy(context);
941
- return defineRuleListener(visitors, { "Program:exit"(program) {
940
+ const { ctx, visitor } = useComponentCollectorLegacy(context);
941
+ return defineRuleListener(visitor, { "Program:exit"(program) {
942
942
  for (const { name: name$9 = "anonymous", node: component } of ctx.getAllComponents(program)) {
943
943
  if (component.body.body.some((m) => isComponentDidCatch(m) || isGetDerivedStateFromError(m))) continue;
944
944
  context.report({
@@ -990,8 +990,8 @@ var no_component_will_mount_default = createRule({
990
990
  });
991
991
  function create$43(context) {
992
992
  if (!context.sourceCode.text.includes("componentWillMount")) return {};
993
- const { ctx, visitors } = useComponentCollectorLegacy(context);
994
- return defineRuleListener(visitors, { "Program:exit"(program) {
993
+ const { ctx, visitor } = useComponentCollectorLegacy(context);
994
+ return defineRuleListener(visitor, { "Program:exit"(program) {
995
995
  for (const { node: component } of ctx.getAllComponents(program)) {
996
996
  const { body } = component.body;
997
997
  for (const member of body) if (isComponentWillMount(member)) context.report({
@@ -1023,8 +1023,8 @@ var no_component_will_receive_props_default = createRule({
1023
1023
  });
1024
1024
  function create$42(context) {
1025
1025
  if (!context.sourceCode.text.includes("componentWillReceiveProps")) return {};
1026
- const { ctx, visitors } = useComponentCollectorLegacy(context);
1027
- return defineRuleListener(visitors, { "Program:exit"(program) {
1026
+ const { ctx, visitor } = useComponentCollectorLegacy(context);
1027
+ return defineRuleListener(visitor, { "Program:exit"(program) {
1028
1028
  for (const { node: component } of ctx.getAllComponents(program)) {
1029
1029
  const { body } = component.body;
1030
1030
  for (const member of body) if (isComponentWillReceiveProps(member)) context.report({
@@ -1056,8 +1056,8 @@ var no_component_will_update_default = createRule({
1056
1056
  });
1057
1057
  function create$41(context) {
1058
1058
  if (!context.sourceCode.text.includes("componentWillUpdate")) return {};
1059
- const { ctx, visitors } = useComponentCollectorLegacy(context);
1060
- return defineRuleListener(visitors, { "Program:exit"(program) {
1059
+ const { ctx, visitor } = useComponentCollectorLegacy(context);
1060
+ return defineRuleListener(visitor, { "Program:exit"(program) {
1061
1061
  for (const { node: component } of ctx.getAllComponents(program)) {
1062
1062
  const { body } = component.body;
1063
1063
  for (const member of body) if (isComponentWillUpdate(member)) context.report({
@@ -1418,6 +1418,7 @@ function create$33(context) {
1418
1418
  "boolean",
1419
1419
  "nullish",
1420
1420
  "object",
1421
+ "enum",
1421
1422
  "falsy boolean",
1422
1423
  "truthy bigint",
1423
1424
  "truthy boolean",
@@ -1480,12 +1481,12 @@ var no_missing_component_display_name_default = createRule({
1480
1481
  });
1481
1482
  function create$32(context) {
1482
1483
  if (!context.sourceCode.text.includes("memo") && !context.sourceCode.text.includes("forwardRef")) return {};
1483
- const { ctx, visitors } = useComponentCollector(context, {
1484
+ const { ctx, visitor } = useComponentCollector(context, {
1484
1485
  collectDisplayName: true,
1485
1486
  collectHookCalls: false,
1486
1487
  hint: DEFAULT_COMPONENT_DETECTION_HINT
1487
1488
  });
1488
- return defineRuleListener(visitors, { "Program:exit"(program) {
1489
+ return defineRuleListener(visitor, { "Program:exit"(program) {
1489
1490
  for (const { node, displayName, flag } of ctx.getAllComponents(program)) {
1490
1491
  const id = AST.getFunctionId(node);
1491
1492
  const isMemoOrForwardRef = (flag & (ComponentFlag.ForwardRef | ComponentFlag.Memo)) > 0n;
@@ -1706,7 +1707,7 @@ var no_nested_component_definitions_default = createRule({
1706
1707
  function create$28(context) {
1707
1708
  const fCollector = useComponentCollector(context, { hint: ComponentDetectionHint.SkipArrayMapCallback | ComponentDetectionHint.SkipNullLiteral | ComponentDetectionHint.SkipUndefined | ComponentDetectionHint.SkipBooleanLiteral | ComponentDetectionHint.SkipStringLiteral | ComponentDetectionHint.SkipNumberLiteral | ComponentDetectionHint.StrictLogical | ComponentDetectionHint.StrictConditional });
1708
1709
  const cCollector = useComponentCollectorLegacy(context);
1709
- return defineRuleListener(fCollector.visitors, cCollector.visitors, { "Program:exit"(program) {
1710
+ return defineRuleListener(fCollector.visitor, cCollector.visitor, { "Program:exit"(program) {
1710
1711
  const fComponents = [...fCollector.ctx.getAllComponents(program)];
1711
1712
  const cComponents = [...cCollector.ctx.getAllComponents(program)];
1712
1713
  const isFunctionComponent = (node) => {
@@ -1824,7 +1825,7 @@ function create$27(context) {
1824
1825
  const collector = useComponentCollector(context, { hint });
1825
1826
  const collectorLegacy = useComponentCollectorLegacy(context);
1826
1827
  const lazyComponentDeclarations = /* @__PURE__ */ new Set();
1827
- return defineRuleListener(collector.visitors, collectorLegacy.visitors, {
1828
+ return defineRuleListener(collector.visitor, collectorLegacy.visitor, {
1828
1829
  ImportExpression(node) {
1829
1830
  const lazyCall = AST.findParentNode(node, (n) => isLazyCall(context, n));
1830
1831
  if (lazyCall != null) lazyComponentDeclarations.add(lazyCall);
@@ -1905,8 +1906,8 @@ var no_redundant_should_component_update_default = createRule({
1905
1906
  });
1906
1907
  function create$25(context) {
1907
1908
  if (!context.sourceCode.text.includes("shouldComponentUpdate")) return {};
1908
- const { ctx, visitors } = useComponentCollectorLegacy(context);
1909
- return defineRuleListener(visitors, { "Program:exit"(program) {
1909
+ const { ctx, visitor } = useComponentCollectorLegacy(context);
1910
+ return defineRuleListener(visitor, { "Program:exit"(program) {
1910
1911
  for (const { name: name$9 = "PureComponent", node: component, flag } of ctx.getAllComponents(program)) {
1911
1912
  if ((flag & ComponentFlag.PureComponent) === 0n) continue;
1912
1913
  const { body } = component.body;
@@ -2087,9 +2088,9 @@ function create$20(context) {
2087
2088
  ...getJsxConfigFromContext(context),
2088
2089
  ...getJsxConfigFromAnnotation(context)
2089
2090
  };
2090
- const { ctx, visitors } = useComponentCollector(context);
2091
+ const { ctx, visitor } = useComponentCollector(context);
2091
2092
  const constantKeys = /* @__PURE__ */ new Set();
2092
- return defineRuleListener(visitors, {
2093
+ return defineRuleListener(visitor, {
2093
2094
  JSXAttribute(node) {
2094
2095
  if (node.name.name !== "key") return;
2095
2096
  const jsxElement = node.parent.parent;
@@ -2323,8 +2324,8 @@ var no_unnecessary_use_prefix_default = createRule({
2323
2324
  defaultOptions: []
2324
2325
  });
2325
2326
  function create$17(context) {
2326
- const { ctx, visitors } = useHookCollector(context);
2327
- return defineRuleListener(visitors, { "Program:exit"(program) {
2327
+ const { ctx, visitor } = useHookCollector(context);
2328
+ return defineRuleListener(visitor, { "Program:exit"(program) {
2328
2329
  for (const { id, name: name$9, node, hookCalls } of ctx.getAllHooks(program)) {
2329
2330
  if (hookCalls.length > 0) continue;
2330
2331
  if (AST.isFunctionEmpty(node)) continue;
@@ -2394,8 +2395,8 @@ var no_unsafe_component_will_mount_default = createRule({
2394
2395
  });
2395
2396
  function create$15(context) {
2396
2397
  if (!context.sourceCode.text.includes("UNSAFE_componentWillMount")) return {};
2397
- const { ctx, visitors } = useComponentCollectorLegacy(context);
2398
- return defineRuleListener(visitors, { "Program:exit"(program) {
2398
+ const { ctx, visitor } = useComponentCollectorLegacy(context);
2399
+ return defineRuleListener(visitor, { "Program:exit"(program) {
2399
2400
  for (const { node: component } of ctx.getAllComponents(program)) {
2400
2401
  const { body } = component.body;
2401
2402
  for (const member of body) if (isUnsafeComponentWillMount(member)) context.report({
@@ -2422,8 +2423,8 @@ var no_unsafe_component_will_receive_props_default = createRule({
2422
2423
  });
2423
2424
  function create$14(context) {
2424
2425
  if (!context.sourceCode.text.includes("UNSAFE_componentWillReceiveProps")) return {};
2425
- const { ctx, visitors } = useComponentCollectorLegacy(context);
2426
- return defineRuleListener(visitors, { "Program:exit"(program) {
2426
+ const { ctx, visitor } = useComponentCollectorLegacy(context);
2427
+ return defineRuleListener(visitor, { "Program:exit"(program) {
2427
2428
  for (const { node: component } of ctx.getAllComponents(program)) {
2428
2429
  const { body } = component.body;
2429
2430
  for (const member of body) if (isUnsafeComponentWillReceiveProps(member)) context.report({
@@ -2450,8 +2451,8 @@ var no_unsafe_component_will_update_default = createRule({
2450
2451
  });
2451
2452
  function create$13(context) {
2452
2453
  if (!context.sourceCode.text.includes("UNSAFE_componentWillUpdate")) return {};
2453
- const { ctx, visitors } = useComponentCollectorLegacy(context);
2454
- return defineRuleListener(visitors, { "Program:exit"(program) {
2454
+ const { ctx, visitor } = useComponentCollectorLegacy(context);
2455
+ return defineRuleListener(visitor, { "Program:exit"(program) {
2455
2456
  for (const { node: component } of ctx.getAllComponents(program)) {
2456
2457
  const { body } = component.body;
2457
2458
  for (const member of body) if (isUnsafeComponentWillUpdate(member)) context.report({
@@ -2479,9 +2480,9 @@ var no_unstable_context_value_default = createRule({
2479
2480
  function create$12(context) {
2480
2481
  const { version: version$1 } = getSettingsFromContext(context);
2481
2482
  const isReact18OrBelow = compare(version$1, "19.0.0", "<");
2482
- const { ctx, visitors } = useComponentCollector(context);
2483
+ const { ctx, visitor } = useComponentCollector(context);
2483
2484
  const constructions = /* @__PURE__ */ new WeakMap();
2484
- return defineRuleListener(visitors, {
2485
+ return defineRuleListener(visitor, {
2485
2486
  JSXOpeningElement(node) {
2486
2487
  const selfName = getJsxElementType(context, node.parent).split(".").at(-1);
2487
2488
  if (selfName == null) return;
@@ -2552,11 +2553,11 @@ function extractIdentifier(node) {
2552
2553
  return null;
2553
2554
  }
2554
2555
  function create$11(context, [options]) {
2555
- const { ctx, visitors } = useComponentCollector(context);
2556
+ const { ctx, visitor } = useComponentCollector(context);
2556
2557
  const declarators = /* @__PURE__ */ new WeakMap();
2557
2558
  const { safeDefaultProps = [] } = options;
2558
2559
  const safePatterns = safeDefaultProps.map((s) => toRegExp(s));
2559
- return defineRuleListener(visitors, {
2560
+ return defineRuleListener(visitor, {
2560
2561
  [AST.SEL_OBJECT_DESTRUCTURING_VARIABLE_DECLARATOR](node) {
2561
2562
  const functionEntry = ctx.getCurrentEntry();
2562
2563
  if (functionEntry == null) return;
@@ -2725,8 +2726,8 @@ var no_unused_props_default = createRule({
2725
2726
  });
2726
2727
  function create$9(context) {
2727
2728
  const services = ESLintUtils.getParserServices(context, false);
2728
- const { ctx, visitors } = useComponentCollector(context);
2729
- return defineRuleListener(visitors, { "Program:exit"(program) {
2729
+ const { ctx, visitor } = useComponentCollector(context);
2730
+ return defineRuleListener(visitor, { "Program:exit"(program) {
2730
2731
  const checker = services.program.getTypeChecker();
2731
2732
  const totalDeclaredProps = /* @__PURE__ */ new Set();
2732
2733
  const totalUsedProps = /* @__PURE__ */ new Set();
@@ -3206,8 +3207,8 @@ var prefer_destructuring_assignment_default = createRule({
3206
3207
  defaultOptions: []
3207
3208
  });
3208
3209
  function create$4(context) {
3209
- const { ctx, visitors } = useComponentCollector(context);
3210
- return defineRuleListener(visitors, { "Program:exit"(program) {
3210
+ const { ctx, visitor } = useComponentCollector(context);
3211
+ return defineRuleListener(visitor, { "Program:exit"(program) {
3211
3212
  for (const component of ctx.getAllComponents(program)) {
3212
3213
  if (component.name == null && component.isExportDefaultDeclaration) continue;
3213
3214
  const [props] = component.node.params;
@@ -3281,8 +3282,8 @@ var prefer_read_only_props_default = createRule({
3281
3282
  function create$2(context) {
3282
3283
  const services = ESLintUtils.getParserServices(context, false);
3283
3284
  const checker = services.program.getTypeChecker();
3284
- const { ctx, visitors } = useComponentCollector(context);
3285
- return defineRuleListener(visitors, { "Program:exit"(program) {
3285
+ const { ctx, visitor } = useComponentCollector(context);
3286
+ return defineRuleListener(visitor, { "Program:exit"(program) {
3286
3287
  for (const component of ctx.getAllComponents(program)) {
3287
3288
  const [props] = component.node.params;
3288
3289
  if (component.id == null || component.name == null) continue;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "eslint-plugin-react-x",
3
- "version": "2.7.3-next.2",
3
+ "version": "2.7.3-next.4",
4
4
  "description": "A set of composable ESLint rules for for libraries and frameworks that use React as a UI runtime.",
5
5
  "keywords": [
6
6
  "react",
@@ -37,25 +37,25 @@
37
37
  "./package.json"
38
38
  ],
39
39
  "dependencies": {
40
- "@typescript-eslint/scope-manager": "^8.53.0",
41
- "@typescript-eslint/type-utils": "^8.53.0",
42
- "@typescript-eslint/types": "^8.53.0",
43
- "@typescript-eslint/utils": "^8.53.0",
40
+ "@typescript-eslint/scope-manager": "^8.53.1",
41
+ "@typescript-eslint/type-utils": "^8.53.1",
42
+ "@typescript-eslint/types": "^8.53.1",
43
+ "@typescript-eslint/utils": "^8.53.1",
44
44
  "compare-versions": "^6.1.1",
45
45
  "is-immutable-type": "^5.0.1",
46
46
  "string-ts": "^2.3.1",
47
47
  "ts-api-utils": "^2.4.0",
48
48
  "ts-pattern": "^5.9.0",
49
- "@eslint-react/core": "2.7.3-next.2",
50
- "@eslint-react/ast": "2.7.3-next.2",
51
- "@eslint-react/eff": "2.7.3-next.2",
52
- "@eslint-react/shared": "2.7.3-next.2",
53
- "@eslint-react/var": "2.7.3-next.2"
49
+ "@eslint-react/ast": "2.7.3-next.4",
50
+ "@eslint-react/core": "2.7.3-next.4",
51
+ "@eslint-react/eff": "2.7.3-next.4",
52
+ "@eslint-react/shared": "2.7.3-next.4",
53
+ "@eslint-react/var": "2.7.3-next.4"
54
54
  },
55
55
  "devDependencies": {
56
- "@types/react": "^19.2.8",
56
+ "@types/react": "^19.2.9",
57
57
  "@types/react-dom": "^19.2.3",
58
- "tsdown": "^0.20.0-beta.3",
58
+ "tsdown": "^0.20.0-beta.4",
59
59
  "@local/configs": "0.0.0"
60
60
  },
61
61
  "peerDependencies": {