diff --git a/packages/plugins/eslint-plugin-react-x/src/rules/no-use-context.ts b/packages/plugins/eslint-plugin-react-x/src/rules/no-use-context.ts index ff49e8634..c76cbd76f 100644 --- a/packages/plugins/eslint-plugin-react-x/src/rules/no-use-context.ts +++ b/packages/plugins/eslint-plugin-react-x/src/rules/no-use-context.ts @@ -6,6 +6,7 @@ import { compare } from "compare-versions"; import type { CamelCase } from "string-ts"; import { createRule } from "../utils"; +import { isMatching } from "ts-pattern"; export const RULE_NAME = "no-use-context"; @@ -67,13 +68,11 @@ export default createRule<[], MessageID>({ if (node.source.value !== settings.importSource) { return; } - let isUseImported = false; + const isUseImported = node.specifiers + .some(isMatching({ local: { type: T.Identifier, name: "use" } })); for (const specifier of node.specifiers) { if (specifier.type !== T.ImportSpecifier) continue; if (specifier.imported.type !== T.Identifier) continue; - if (specifier.imported.name === "use") { - isUseImported = true; - } if (specifier.imported.name === "useContext") { if (specifier.local.name !== "useContext") { useContextAlias.add(specifier.local.name);