eslint-plugin-react-x 5.10.0 → 5.10.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (2) hide show
  1. package/dist/index.js +12 -22
  2. package/package.json +14 -14
package/dist/index.js CHANGED
@@ -89,15 +89,16 @@ var disable_conflict_eslint_plugin_react_hooks_exports = /* @__PURE__ */ __expor
89
89
  rules: () => rules$8
90
90
  });
91
91
  const conflictingRules = [
92
- "react-hooks/exhaustive-deps",
93
- "react-hooks/rules-of-hooks",
94
92
  "react-hooks/error-boundaries",
93
+ "react-hooks/exhaustive-deps",
95
94
  "react-hooks/globals",
96
95
  "react-hooks/immutability",
97
96
  "react-hooks/purity",
98
97
  "react-hooks/refs",
98
+ "react-hooks/rules-of-hooks",
99
99
  "react-hooks/set-state-in-effect",
100
100
  "react-hooks/set-state-in-render",
101
+ "react-hooks/static-components",
101
102
  "react-hooks/unsupported-syntax",
102
103
  "react-hooks/use-memo"
103
104
  ];
@@ -143,7 +144,7 @@ const rules$6 = {
143
144
  //#endregion
144
145
  //#region package.json
145
146
  var name$6 = "eslint-plugin-react-x";
146
- var version = "5.10.0";
147
+ var version = "5.10.2";
147
148
 
148
149
  //#endregion
149
150
  //#region src/utils/create-rule.ts
@@ -7338,12 +7339,14 @@ function create$3(context) {
7338
7339
  //#endregion
7339
7340
  //#region src/rules/unsupported-syntax/lib.ts
7340
7341
  function isEvalCall(node) {
7341
- return Check.isIdentifier("eval")(Extract.unwrap(node.callee));
7342
- }
7343
- function isIifeCall(node) {
7344
- let parent = node.parent;
7345
- while (Check.isTypeExpression(parent) || parent.type === AST_NODE_TYPES.ChainExpression) parent = parent.parent;
7346
- return parent.type === AST_NODE_TYPES.CallExpression && Extract.unwrap(parent.callee) === node;
7342
+ const callee = Extract.unwrap(node.callee);
7343
+ switch (callee.type) {
7344
+ case AST_NODE_TYPES.Identifier: return callee.name === "eval";
7345
+ case AST_NODE_TYPES.MemberExpression:
7346
+ if (!Check.isIdentifier("globalThis")(Extract.unwrap(callee.object))) return false;
7347
+ return Extract.getPropertyName(callee.property, (n) => callee.computed ? null : n.name) === "eval";
7348
+ default: return false;
7349
+ }
7347
7350
  }
7348
7351
 
7349
7352
  //#endregion
@@ -7355,7 +7358,6 @@ var unsupported_syntax_default = createRule({
7355
7358
  docs: { description: "Validates against syntax that React Compiler does not support." },
7356
7359
  messages: {
7357
7360
  eval: "Do not use 'eval' inside components or hooks. 'eval' cannot be statically analyzed and is not supported by React Compiler.",
7358
- iife: "Do not use immediately-invoked function expressions in JSX. IIFEs will not be optimized by React Compiler.",
7359
7361
  with: "Do not use 'with' statements inside components or hooks. 'with' changes scope dynamically and is not supported by React Compiler."
7360
7362
  },
7361
7363
  schema: []
@@ -7379,18 +7381,6 @@ function create$2(context) {
7379
7381
  node
7380
7382
  });
7381
7383
  },
7382
- "JSXElement :function"(node) {
7383
- if (isIifeCall(node)) context.report({
7384
- messageId: "iife",
7385
- node: node.parent
7386
- });
7387
- },
7388
- "JSXFragment :function"(node) {
7389
- if (isIifeCall(node)) context.report({
7390
- messageId: "iife",
7391
- node: node.parent
7392
- });
7393
- },
7394
7384
  "Program:exit"(node) {
7395
7385
  const components = fc.api.getAllComponents(node);
7396
7386
  const hooks = hc.api.getAllHooks(node);
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "eslint-plugin-react-x",
3
- "version": "5.10.0",
3
+ "version": "5.10.2",
4
4
  "description": "A set of composable ESLint rules for libraries and frameworks that use React as a UI runtime.",
5
5
  "keywords": [
6
6
  "react",
@@ -36,21 +36,21 @@
36
36
  "dist"
37
37
  ],
38
38
  "dependencies": {
39
- "@typescript-eslint/scope-manager": "^8.62.0",
40
- "@typescript-eslint/type-utils": "^8.62.0",
41
- "@typescript-eslint/types": "^8.62.0",
42
- "@typescript-eslint/typescript-estree": "^8.62.0",
43
- "@typescript-eslint/utils": "^8.62.0",
39
+ "@typescript-eslint/scope-manager": "^8.62.1",
40
+ "@typescript-eslint/type-utils": "^8.62.1",
41
+ "@typescript-eslint/types": "^8.62.1",
42
+ "@typescript-eslint/typescript-estree": "^8.62.1",
43
+ "@typescript-eslint/utils": "^8.62.1",
44
44
  "compare-versions": "^6.1.1",
45
45
  "string-ts": "^2.3.1",
46
46
  "ts-api-utils": "^2.5.0",
47
47
  "ts-pattern": "^5.9.0",
48
- "@eslint-react/ast": "5.10.0",
49
- "@eslint-react/jsx": "5.10.0",
50
- "@eslint-react/eslint": "5.10.0",
51
- "@eslint-react/shared": "5.10.0",
52
- "@eslint-react/core": "5.10.0",
53
- "@eslint-react/var": "5.10.0"
48
+ "@eslint-react/ast": "5.10.2",
49
+ "@eslint-react/core": "5.10.2",
50
+ "@eslint-react/var": "5.10.2",
51
+ "@eslint-react/jsx": "5.10.2",
52
+ "@eslint-react/shared": "5.10.2",
53
+ "@eslint-react/eslint": "5.10.2"
54
54
  },
55
55
  "devDependencies": {
56
56
  "@types/react": "^19.2.17",
@@ -63,8 +63,8 @@
63
63
  "tsl": "^1.0.30",
64
64
  "tsl-dx": "^0.13.2",
65
65
  "typescript": "6.0.3",
66
- "@local/eff": "0.0.0",
67
- "@local/configs": "0.0.0"
66
+ "@local/configs": "0.0.0",
67
+ "@local/eff": "0.0.0"
68
68
  },
69
69
  "peerDependencies": {
70
70
  "eslint": "*",