eslint-plugin-react-x 5.5.3-next.2 → 5.5.4-next.0
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.js +9 -3
- package/package.json +8 -8
package/dist/index.js
CHANGED
|
@@ -142,7 +142,7 @@ const rules$6 = {
|
|
|
142
142
|
//#endregion
|
|
143
143
|
//#region package.json
|
|
144
144
|
var name$6 = "eslint-plugin-react-x";
|
|
145
|
-
var version = "5.5.
|
|
145
|
+
var version = "5.5.4-next.0";
|
|
146
146
|
|
|
147
147
|
//#endregion
|
|
148
148
|
//#region src/utils/create-rule.ts
|
|
@@ -168,6 +168,12 @@ var error_boundaries_default = createRule({
|
|
|
168
168
|
create: create$49,
|
|
169
169
|
defaultOptions: []
|
|
170
170
|
});
|
|
171
|
+
function getEnclosingTryBlock(node) {
|
|
172
|
+
const tryStmt = Traverse.findParent(node, is(AST_NODE_TYPES.TryStatement));
|
|
173
|
+
if (tryStmt == null) return null;
|
|
174
|
+
if (Traverse.findParent(node, (n) => n === tryStmt.block) != null) return tryStmt;
|
|
175
|
+
return getEnclosingTryBlock(tryStmt);
|
|
176
|
+
}
|
|
171
177
|
function create$49(context) {
|
|
172
178
|
if (!context.sourceCode.text.includes("try")) return {};
|
|
173
179
|
const hint = JsxDetectionHint.DoNotIncludeJsxWithNullValue | JsxDetectionHint.DoNotIncludeJsxWithNumberValue | JsxDetectionHint.DoNotIncludeJsxWithBigIntValue | JsxDetectionHint.DoNotIncludeJsxWithStringValue | JsxDetectionHint.DoNotIncludeJsxWithBooleanValue | JsxDetectionHint.DoNotIncludeJsxWithUndefinedValue | JsxDetectionHint.DoNotIncludeJsxWithEmptyArrayValue;
|
|
@@ -185,7 +191,7 @@ function create$49(context) {
|
|
|
185
191
|
const hooks = hc.api.getAllHooks(node);
|
|
186
192
|
const funcs = [...comps, ...hooks];
|
|
187
193
|
for (const call of useCalls) {
|
|
188
|
-
const stmt =
|
|
194
|
+
const stmt = getEnclosingTryBlock(call);
|
|
189
195
|
const func = Traverse.findParent(stmt, (n) => funcs.some((f) => f.node === n));
|
|
190
196
|
if (stmt != null && func != null && !reported.has(stmt)) {
|
|
191
197
|
context.report({
|
|
@@ -198,7 +204,7 @@ function create$49(context) {
|
|
|
198
204
|
for (const { rets } of funcs) for (const ret of rets) {
|
|
199
205
|
if (ret == null) continue;
|
|
200
206
|
if (!isJsxLike(context, ret, hint)) continue;
|
|
201
|
-
const stmt =
|
|
207
|
+
const stmt = getEnclosingTryBlock(ret);
|
|
202
208
|
if (stmt != null && !reported.has(stmt)) {
|
|
203
209
|
context.report({
|
|
204
210
|
messageId: "tryCatchWithJsx",
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "eslint-plugin-react-x",
|
|
3
|
-
"version": "5.5.
|
|
3
|
+
"version": "5.5.4-next.0",
|
|
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",
|
|
@@ -45,12 +45,12 @@
|
|
|
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.5.
|
|
49
|
-
"@eslint-react/
|
|
50
|
-
"@eslint-react/
|
|
51
|
-
"@eslint-react/
|
|
52
|
-
"@eslint-react/shared": "5.5.
|
|
53
|
-
"@eslint-react/var": "5.5.
|
|
48
|
+
"@eslint-react/ast": "5.5.4-next.0",
|
|
49
|
+
"@eslint-react/eslint": "5.5.4-next.0",
|
|
50
|
+
"@eslint-react/jsx": "5.5.4-next.0",
|
|
51
|
+
"@eslint-react/core": "5.5.4-next.0",
|
|
52
|
+
"@eslint-react/shared": "5.5.4-next.0",
|
|
53
|
+
"@eslint-react/var": "5.5.4-next.0"
|
|
54
54
|
},
|
|
55
55
|
"devDependencies": {
|
|
56
56
|
"@types/react": "^19.2.14",
|
|
@@ -61,7 +61,7 @@
|
|
|
61
61
|
"react-dom": "^19.2.5",
|
|
62
62
|
"tsdown": "^0.21.10",
|
|
63
63
|
"tsl": "^1.0.30",
|
|
64
|
-
"tsl-dx": "^0.12.
|
|
64
|
+
"tsl-dx": "^0.12.1",
|
|
65
65
|
"typescript": "^6.0.3",
|
|
66
66
|
"@local/configs": "0.0.0",
|
|
67
67
|
"@local/eff": "3.0.0-beta.72"
|