Skip to content

Commit a6dedc1

Browse files
committed
refactor: update imports to use namespace import for @eslint-react/core
1 parent dd3e902 commit a6dedc1

File tree

59 files changed

+206
-235
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

59 files changed

+206
-235
lines changed

packages/plugins/eslint-plugin-react-debug/src/rules/class-component.ts

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
import type { RuleContext, RuleFeature } from "@eslint-react/kit";
22
import type { RuleListener } from "@typescript-eslint/utils/ts-eslint";
33
import type { CamelCase } from "string-ts";
4-
import { useComponentCollectorLegacy } from "@eslint-react/core";
4+
import * as ER from "@eslint-react/core";
55

66
import { createRule } from "../utils";
77

@@ -31,7 +31,7 @@ export default createRule<[], MessageID>({
3131
});
3232

3333
export function create(context: RuleContext<MessageID, []>): RuleListener {
34-
const { ctx, listeners } = useComponentCollectorLegacy();
34+
const { ctx, listeners } = ER.useComponentCollectorLegacy();
3535
return {
3636
...listeners,
3737
"Program:exit"(node) {

packages/plugins/eslint-plugin-react-debug/src/rules/function-component.ts

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
import type { RuleContext, RuleFeature } from "@eslint-react/kit";
22
import type { RuleListener } from "@typescript-eslint/utils/ts-eslint";
33
import type { CamelCase } from "string-ts";
4-
import { DEFAULT_COMPONENT_HINT, ComponentFlag, useComponentCollector } from "@eslint-react/core";
4+
import * as ER from "@eslint-react/core";
55

66
import { createRule } from "../utils";
77

@@ -32,12 +32,12 @@ export default createRule<[], MessageID>({
3232
});
3333

3434
export function create(context: RuleContext<MessageID, []>): RuleListener {
35-
const { ctx, listeners } = useComponentCollector(
35+
const { ctx, listeners } = ER.useComponentCollector(
3636
context,
3737
{
3838
collectDisplayName: true,
3939
collectHookCalls: true,
40-
hint: DEFAULT_COMPONENT_HINT,
40+
hint: ER.DEFAULT_COMPONENT_HINT,
4141
},
4242
);
4343
return {
@@ -51,9 +51,9 @@ export function create(context: RuleContext<MessageID, []>): RuleListener {
5151
data: {
5252
name,
5353
displayName: displayName != null ? context.sourceCode.getText(displayName) : "none",
54-
forwardRef: (flag & ComponentFlag.ForwardRef) > 0n,
54+
forwardRef: (flag & ER.ComponentFlag.ForwardRef) > 0n,
5555
hookCalls: hookCalls.length,
56-
memo: (flag & ComponentFlag.Memo) > 0n,
56+
memo: (flag & ER.ComponentFlag.Memo) > 0n,
5757
},
5858
});
5959
}

packages/plugins/eslint-plugin-react-debug/src/rules/hook.ts

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
import type { RuleContext, RuleFeature } from "@eslint-react/kit";
22
import type { RuleListener } from "@typescript-eslint/utils/ts-eslint";
33
import type { CamelCase } from "string-ts";
4-
import { useHookCollector } from "@eslint-react/core";
4+
import * as ER from "@eslint-react/core";
55

66
import { createRule } from "../utils";
77

@@ -31,7 +31,7 @@ export default createRule<[], MessageID>({
3131
});
3232

3333
export function create(context: RuleContext<MessageID, []>): RuleListener {
34-
const { ctx, listeners } = useHookCollector();
34+
const { ctx, listeners } = ER.useHookCollector();
3535

3636
return {
3737
...listeners,

packages/plugins/eslint-plugin-react-debug/src/rules/is-from-react.ts

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@ import type { Scope } from "@typescript-eslint/scope-manager";
33
import type { TSESTree } from "@typescript-eslint/utils";
44
import type { RuleListener } from "@typescript-eslint/utils/ts-eslint";
55
import type { CamelCase } from "string-ts";
6-
import { isInitializedFromReact } from "@eslint-react/core";
6+
import * as ER from "@eslint-react/core";
77
import { getSettingsFromContext } from "@eslint-react/shared";
88
import { AST_NODE_TYPES as T } from "@typescript-eslint/utils";
99

@@ -43,13 +43,13 @@ export function create(context: RuleContext<MessageID, []>): RuleListener {
4343
case node.parent.type === T.MemberExpression
4444
&& node.parent.property === node
4545
&& node.parent.object.type === T.Identifier:
46-
return isInitializedFromReact(node.parent.object.name, importSource, initialScope);
46+
return ER.isInitializedFromReact(node.parent.object.name, importSource, initialScope);
4747
case node.parent.type === T.JSXMemberExpression
4848
&& node.parent.property === node
4949
&& node.parent.object.type === T.JSXIdentifier:
50-
return isInitializedFromReact(node.parent.object.name, importSource, initialScope);
50+
return ER.isInitializedFromReact(node.parent.object.name, importSource, initialScope);
5151
default:
52-
return isInitializedFromReact(name, importSource, initialScope);
52+
return ER.isInitializedFromReact(name, importSource, initialScope);
5353
}
5454
}
5555

packages/plugins/eslint-plugin-react-hooks-extra/src/hooks/use-no-direct-set-state-in-use-effect.ts

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@ import type { RuleContext } from "@eslint-react/kit";
22
import type { ESLintUtils, TSESTree } from "@typescript-eslint/utils";
33
import type { Scope } from "@typescript-eslint/utils/ts-eslint";
44
import * as AST from "@eslint-react/ast";
5-
import { isReactHookCallWithNameAlias } from "@eslint-react/core";
5+
import * as ER from "@eslint-react/core";
66
import { _, getOrUpdate } from "@eslint-react/eff";
77
import { getSettingsFromContext } from "@eslint-react/shared";
88
import * as VAR from "@eslint-react/var";
@@ -47,10 +47,10 @@ export function useNoDirectSetStateInUseEffect<Ctx extends RuleContext>(
4747
const { onViolation, useEffectKind } = options;
4848
const settings = getSettingsFromContext(context);
4949
const additionalHooks = settings.additionalHooks;
50-
const isUseEffectLikeCall = isReactHookCallWithNameAlias(context, useEffectKind, additionalHooks[useEffectKind]);
51-
const isUseStateCall = isReactHookCallWithNameAlias(context, "useState", additionalHooks.useState);
52-
const isUseMemoCall = isReactHookCallWithNameAlias(context, "useMemo", additionalHooks.useMemo);
53-
const isUseCallbackCall = isReactHookCallWithNameAlias(context, "useCallback", additionalHooks.useCallback);
50+
const isUseEffectLikeCall = ER.isReactHookCallWithNameAlias(context, useEffectKind, additionalHooks[useEffectKind]);
51+
const isUseStateCall = ER.isReactHookCallWithNameAlias(context, "useState", additionalHooks.useState);
52+
const isUseMemoCall = ER.isReactHookCallWithNameAlias(context, "useMemo", additionalHooks.useMemo);
53+
const isUseCallbackCall = ER.isReactHookCallWithNameAlias(context, "useCallback", additionalHooks.useCallback);
5454
const isSetStateCall = isSetFunctionCall(context, settings);
5555
const isIdFromUseStateCall = isFromUseStateCall(context, settings);
5656

packages/plugins/eslint-plugin-react-hooks-extra/src/rules/no-unnecessary-use-callback.ts

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@ import type { RuleContext, RuleFeature } from "@eslint-react/kit";
22
import type { RuleListener } from "@typescript-eslint/utils/ts-eslint";
33
import type { CamelCase } from "string-ts";
44
import * as AST from "@eslint-react/ast";
5-
import { isReactHookCall, isReactHookCallWithNameLoose, isUseCallbackCall } from "@eslint-react/core";
5+
import * as ER from "@eslint-react/core";
66
import { _, identity } from "@eslint-react/eff";
77
import { getSettingsFromContext } from "@eslint-react/shared";
88
import * as VAR from "@eslint-react/var";
@@ -42,11 +42,11 @@ export function create(context: RuleContext<MessageID, []>): RuleListener {
4242
const alias = getSettingsFromContext(context).additionalHooks.useCallback ?? [];
4343
return {
4444
CallExpression(node) {
45-
if (!isReactHookCall(node)) {
45+
if (!ER.isReactHookCall(node)) {
4646
return;
4747
}
4848
const initialScope = context.sourceCode.getScope(node);
49-
if (!isUseCallbackCall(context, node) && !alias.some(isReactHookCallWithNameLoose(node))) {
49+
if (!ER.isUseCallbackCall(context, node) && !alias.some(ER.isReactHookCallWithNameLoose(node))) {
5050
return;
5151
}
5252
const scope = context.sourceCode.getScope(node);

packages/plugins/eslint-plugin-react-hooks-extra/src/rules/no-unnecessary-use-memo.ts

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@ import type { RuleContext, RuleFeature } from "@eslint-react/kit";
22
import type { RuleListener } from "@typescript-eslint/utils/ts-eslint";
33
import type { CamelCase } from "string-ts";
44
import * as AST from "@eslint-react/ast";
5-
import { isReactHookCall, isReactHookCallWithNameLoose, isUseMemoCall } from "@eslint-react/core";
5+
import * as ER from "@eslint-react/core";
66
import { _, identity } from "@eslint-react/eff";
77
import { getSettingsFromContext } from "@eslint-react/shared";
88
import * as VAR from "@eslint-react/var";
@@ -41,11 +41,11 @@ export function create(context: RuleContext<MessageID, []>): RuleListener {
4141
const alias = getSettingsFromContext(context).additionalHooks.useMemo ?? [];
4242
return {
4343
CallExpression(node) {
44-
if (!isReactHookCall(node)) {
44+
if (!ER.isReactHookCall(node)) {
4545
return;
4646
}
4747
const initialScope = context.sourceCode.getScope(node);
48-
if (!isUseMemoCall(context, node) && !alias.some(isReactHookCallWithNameLoose(node))) {
48+
if (!ER.isUseMemoCall(context, node) && !alias.some(ER.isReactHookCallWithNameLoose(node))) {
4949
return;
5050
}
5151
const scope = context.sourceCode.getScope(node);

packages/plugins/eslint-plugin-react-hooks-extra/src/rules/no-unnecessary-use-prefix.ts

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@ import type { TSESTree } from "@typescript-eslint/types";
33
import type { RuleListener } from "@typescript-eslint/utils/ts-eslint";
44
import type { CamelCase } from "string-ts";
55
import * as AST from "@eslint-react/ast";
6-
import { useHookCollector } from "@eslint-react/core";
6+
import * as ER from "@eslint-react/core";
77

88
import { createRule } from "../utils";
99

@@ -41,7 +41,7 @@ export default createRule<[], MessageID>({
4141
});
4242

4343
export function create(context: RuleContext<MessageID, []>): RuleListener {
44-
const { ctx, listeners } = useHookCollector();
44+
const { ctx, listeners } = ER.useHookCollector();
4545
return {
4646
...listeners,
4747
"Program:exit"(node) {

packages/plugins/eslint-plugin-react-hooks-extra/src/rules/prefer-use-state-lazy-initialization.ts

Lines changed: 6 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -3,13 +3,7 @@ import type { RuleListener } from "@typescript-eslint/utils/ts-eslint";
33
import type { CamelCase } from "string-ts";
44
// Ported from https://github.com/jsx-eslint/eslint-plugin-react/pull/3579/commits/ebb739a0fe99a2ee77055870bfda9f67a2691374
55
import * as AST from "@eslint-react/ast";
6-
import {
7-
isReactHookCall,
8-
isReactHookCallWithNameLoose,
9-
isReactHookNameLoose,
10-
isUseCall,
11-
isUseStateCall,
12-
} from "@eslint-react/core";
6+
import * as ER from "@eslint-react/core";
137
import { getSettingsFromContext } from "@eslint-react/shared";
148

159
import { createRule } from "../utils";
@@ -53,10 +47,10 @@ export function create(context: RuleContext<MessageID, []>): RuleListener {
5347
const alias = getSettingsFromContext(context).additionalHooks.useState ?? [];
5448
return {
5549
CallExpression(node) {
56-
if (!isReactHookCall(node)) {
50+
if (!ER.isReactHookCall(node)) {
5751
return;
5852
}
59-
if (!isUseStateCall(context, node) && !alias.some(isReactHookCallWithNameLoose(node))) {
53+
if (!ER.isUseStateCall(context, node) && !alias.some(ER.isReactHookCallWithNameLoose(node))) {
6054
return;
6155
}
6256
const [useStateInput] = node.arguments;
@@ -66,17 +60,17 @@ export function create(context: RuleContext<MessageID, []>): RuleListener {
6660
for (const expr of AST.getNestedNewExpressions(useStateInput)) {
6761
if (!("name" in expr.callee)) continue;
6862
if (ALLOW_LIST.includes(expr.callee.name)) continue;
69-
if (AST.findParentNode(expr, (n) => isUseCall(context, n)) != null) continue;
63+
if (AST.findParentNode(expr, (n) => ER.isUseCall(context, n)) != null) continue;
7064
context.report({
7165
messageId: "preferUseStateLazyInitialization",
7266
node: expr,
7367
});
7468
}
7569
for (const expr of AST.getNestedCallExpressions(useStateInput)) {
7670
if (!("name" in expr.callee)) continue;
77-
if (isReactHookNameLoose(expr.callee.name)) continue;
71+
if (ER.isReactHookNameLoose(expr.callee.name)) continue;
7872
if (ALLOW_LIST.includes(expr.callee.name)) continue;
79-
if (AST.findParentNode(expr, (n) => isUseCall(context, n)) != null) continue;
73+
if (AST.findParentNode(expr, (n) => ER.isUseCall(context, n)) != null) continue;
8074
context.report({
8175
messageId: "preferUseStateLazyInitialization",
8276
node: expr,

packages/plugins/eslint-plugin-react-hooks-extra/src/utils/is-from-hook-call.ts

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
import type { REACT_BUILD_IN_HOOKS, RuleContext } from "@eslint-react/kit";
22
import type { ESLintReactSettingsNormalized } from "@eslint-react/shared";
33
import type { TSESTree } from "@typescript-eslint/types";
4-
import { isReactHookCallWithNameAlias } from "@eslint-react/core";
4+
import * as ER from "@eslint-react/core";
55
import { constTrue } from "@eslint-react/eff";
66
import * as VAR from "@eslint-react/var";
77
import { AST_NODE_TYPES as T } from "@typescript-eslint/types";
@@ -19,7 +19,7 @@ export function isFromHookCall(
1919
const variableNode = VAR.getVariableInitNode(variable, 0);
2020
if (variableNode == null) return false;
2121
if (variableNode.type !== T.CallExpression) return false;
22-
if (!isReactHookCallWithNameAlias(context, name, hookAlias)(variableNode)) return false;
22+
if (!ER.isReactHookCallWithNameAlias(context, name, hookAlias)(variableNode)) return false;
2323
return predicate(topLevelId, variableNode);
2424
};
2525
}

0 commit comments

Comments
 (0)