@eslint-react/core 5.15.0 → 5.16.1

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.d.ts CHANGED
@@ -330,6 +330,82 @@ type FunctionDisplayNameAssignment = TSESTree.AssignmentExpression & {
330
330
  };
331
331
  declare const SEL_FUNCTION_DISPLAY_NAME_ASSIGNMENT: string;
332
332
  //#endregion
333
+ //#region src/hook.d.ts
334
+ /**
335
+ * Represents a semantic hook node in the AST
336
+ */
337
+ interface HookSemanticNode extends SemanticNode {
338
+ /** The identifier of the hook */
339
+ id: FunctionID;
340
+ /** The AST node of the hook */
341
+ node: TSESTreeFunction;
342
+ /** The kind of hook */
343
+ kind: "hook";
344
+ /** List of expressions returned by the hook */
345
+ rets: TSESTree.ReturnStatement["argument"][];
346
+ /** The other hooks called by the hook */
347
+ hookCalls: HookCall[];
348
+ /** The directives used in the function (ex: "use strict", "use client", etc.) */
349
+ directives: TSESTreeDirective[];
350
+ }
351
+ type HookCall = TSESTree.CallExpression | TSESTree.TaggedTemplateExpression;
352
+ declare const REACT_BUILTIN_HOOK_NAMES: readonly ["use", "useActionState", "useCallback", "useContext", "useDebugValue", "useDeferredValue", "useEffect", "useFormStatus", "useId", "useImperativeHandle", "useInsertionEffect", "useLayoutEffect", "useMemo", "useOptimistic", "useReducer", "useRef", "useState", "useSyncExternalStore", "useTransition"];
353
+ /**
354
+ * Catch all identifiers that begin with "use" followed by an uppercase Latin
355
+ * character to exclude identifiers like "user".
356
+ * @param name The name of the identifier to check.
357
+ * @see https://github.com/facebook/react/blob/1d6c8168db1d82713202e842df3167787ffa00ed/packages/eslint-plugin-react-hooks/src/rules/RulesOfHooks.ts#L16
358
+ */
359
+ declare function isHookName(name: string): boolean;
360
+ /**
361
+ * Checks if the given node is a hook identifier
362
+ * @param id The AST node to check
363
+ * @returns `true` if the node is a hook identifier or member expression with hook name, `false` otherwise
364
+ */
365
+ declare function isHookId(id: TSESTree.Node): id is TSESTree.Identifier | TSESTree.MemberExpression;
366
+ /**
367
+ * Checks if the given expression is a hook tag (callee / tagged template tag).
368
+ * @param tag The expression node to check
369
+ * @returns `true` if the expression is a hook identifier or member expression with hook name, `false` otherwise
370
+ */
371
+ declare function isHookTag(tag: TSESTree.Node | null): boolean;
372
+ /**
373
+ * Determine if a function node is a React Hook based on its name.
374
+ * @param node The function node to check
375
+ * @returns True if the function is a React Hook, false otherwise
376
+ */
377
+ declare function isHookDefinition(node: TSESTreeFunction | null): boolean;
378
+ /**
379
+ * Check if the given node is a React Hook call by its name.
380
+ * @param node The node to check.
381
+ * @returns `true` if the node is a React Hook call, `false` otherwise.
382
+ */
383
+ declare function isHookCall(node: TSESTree.Node | null): node is TSESTree.CallExpression;
384
+ /**
385
+ * Detect useEffect calls and variations (useLayoutEffect, etc.) using a regex pattern
386
+ * @param node The AST node to check
387
+ * @param additionalEffectHooks Regex pattern matching custom hooks that should be treated as effect hooks
388
+ * @returns True if the node is a useEffect-like call
389
+ */
390
+ declare function isUseEffectLikeCall(node: TSESTree.Node | null, additionalEffectHooks?: RegExpLike): node is TSESTree.CallExpression;
391
+ /**
392
+ * Detect useState calls and variations using a regex pattern
393
+ * @param node The AST node to check
394
+ * @param additionalStateHooks Regex pattern matching custom hooks that should be treated as state hooks
395
+ * @returns True if the node is a useState-like call
396
+ */
397
+ declare function isUseStateLikeCall(node: TSESTree.Node | null, additionalStateHooks?: RegExpLike): node is TSESTree.CallExpression;
398
+ /**
399
+ * Determine if a node is the setup function passed to a useEffect-like hook
400
+ * @param node The AST node to check
401
+ */
402
+ declare function isUseEffectSetupCallback(node: TSESTree.Node | null): boolean;
403
+ /**
404
+ * Determine if a node is the cleanup function returned by a useEffect-like hook's setup function
405
+ * @param node The AST node to check
406
+ */
407
+ declare function isUseEffectCleanupCallback(node: TSESTree.Node | null): boolean;
408
+ //#endregion
333
409
  //#region src/function-component.d.ts
334
410
  /**
335
411
  * Represents a React Function Component
@@ -374,7 +450,7 @@ interface FunctionComponentSemanticNode extends SemanticNode {
374
450
  /**
375
451
  * List of hook calls within the component
376
452
  */
377
- hookCalls: TSESTree.CallExpression[];
453
+ hookCalls: HookCall[];
378
454
  /**
379
455
  * The display name of the component
380
456
  */
@@ -506,75 +582,6 @@ declare namespace getFunctionComponentCollector {
506
582
  */
507
583
  declare function getFunctionComponentCollector(context: RuleContext, options?: getFunctionComponentCollector.Options): getFunctionComponentCollector.ReturnType;
508
584
  //#endregion
509
- //#region src/hook.d.ts
510
- /**
511
- * Represents a semantic hook node in the AST
512
- */
513
- interface HookSemanticNode extends SemanticNode {
514
- /** The identifier of the hook */
515
- id: FunctionID;
516
- /** The AST node of the hook */
517
- node: TSESTreeFunction;
518
- /** The kind of hook */
519
- kind: "hook";
520
- /** List of expressions returned by the hook */
521
- rets: TSESTree.ReturnStatement["argument"][];
522
- /** The other hooks called by the hook */
523
- hookCalls: TSESTree.CallExpression[];
524
- /** The directives used in the function (ex: "use strict", "use client", etc.) */
525
- directives: TSESTreeDirective[];
526
- }
527
- declare const REACT_BUILTIN_HOOK_NAMES: readonly ["use", "useActionState", "useCallback", "useContext", "useDebugValue", "useDeferredValue", "useEffect", "useFormStatus", "useId", "useImperativeHandle", "useInsertionEffect", "useLayoutEffect", "useMemo", "useOptimistic", "useReducer", "useRef", "useState", "useSyncExternalStore", "useTransition"];
528
- /**
529
- * Catch all identifiers that begin with "use" followed by an uppercase Latin
530
- * character to exclude identifiers like "user".
531
- * @param name The name of the identifier to check.
532
- * @see https://github.com/facebook/react/blob/1d6c8168db1d82713202e842df3167787ffa00ed/packages/eslint-plugin-react-hooks/src/rules/RulesOfHooks.ts#L16
533
- */
534
- declare function isHookName(name: string): boolean;
535
- /**
536
- * Checks if the given node is a hook identifier
537
- * @param id The AST node to check
538
- * @returns `true` if the node is a hook identifier or member expression with hook name, `false` otherwise
539
- */
540
- declare function isHookId(id: TSESTree.Node): id is TSESTree.Identifier | TSESTree.MemberExpression;
541
- /**
542
- * Determine if a function node is a React Hook based on its name.
543
- * @param node The function node to check
544
- * @returns True if the function is a React Hook, false otherwise
545
- */
546
- declare function isHookDefinition(node: TSESTreeFunction | null): boolean;
547
- /**
548
- * Check if the given node is a React Hook call by its name.
549
- * @param node The node to check.
550
- * @returns `true` if the node is a React Hook call, `false` otherwise.
551
- */
552
- declare function isHookCall(node: TSESTree.Node | null): node is TSESTree.CallExpression;
553
- /**
554
- * Detect useEffect calls and variations (useLayoutEffect, etc.) using a regex pattern
555
- * @param node The AST node to check
556
- * @param additionalEffectHooks Regex pattern matching custom hooks that should be treated as effect hooks
557
- * @returns True if the node is a useEffect-like call
558
- */
559
- declare function isUseEffectLikeCall(node: TSESTree.Node | null, additionalEffectHooks?: RegExpLike): node is TSESTree.CallExpression;
560
- /**
561
- * Detect useState calls and variations using a regex pattern
562
- * @param node The AST node to check
563
- * @param additionalStateHooks Regex pattern matching custom hooks that should be treated as state hooks
564
- * @returns True if the node is a useState-like call
565
- */
566
- declare function isUseStateLikeCall(node: TSESTree.Node | null, additionalStateHooks?: RegExpLike): node is TSESTree.CallExpression;
567
- /**
568
- * Determine if a node is the setup function passed to a useEffect-like hook
569
- * @param node The AST node to check
570
- */
571
- declare function isUseEffectSetupCallback(node: TSESTree.Node | null): boolean;
572
- /**
573
- * Determine if a node is the cleanup function returned by a useEffect-like hook's setup function
574
- * @param node The AST node to check
575
- */
576
- declare function isUseEffectCleanupCallback(node: TSESTree.Node | null): boolean;
577
- //#endregion
578
585
  //#region src/hook-collector.d.ts
579
586
  declare namespace getHookCollector {
580
587
  type ReturnType = {
@@ -793,4 +800,4 @@ type TypeVariant = "any" | "bigint" | "boolean" | "enum" | "never" | "nullish" |
793
800
  */
794
801
  declare function getTypeVariants(types: ts.Type[]): Set<TypeVariant>;
795
802
  //#endregion
796
- export { ClassComponentSemanticNode, ClientFunctionSemanticNode, DEFAULT_COMPONENT_DETECTION_HINT, FunctionComponentDetectionHint, FunctionComponentFlag, FunctionComponentSemanticNode, FunctionDisplayNameAssignment, FunctionID, FunctionInitPath, FunctionKind, FunctionSemanticNode, HookSemanticNode, JsxConfig, REACT_BUILTIN_HOOK_NAMES, SEL_FUNCTION_DISPLAY_NAME_ASSIGNMENT, SemanticFunc, SemanticNode, ServerFunctionSemanticNode, TypeVariant, getClassComponentCollector, getClassId, getFullyQualifiedNameEx, getFunctionComponentCollector, getFunctionComponentFlagFromInitPath, getFunctionComponentId, getFunctionDirectives, getFunctionId, getFunctionInitPath, getHookCollector, getJsxConfig, getJsxConfigFromAnnotation, getJsxConfigFromCompilerOptions, getTypeVariants, isAPI, isAPICall, isAnyType, isAssignmentToThisState, isBigIntType, isBooleanLiteralType, isBooleanType, isCaptureOwnerStack, isCaptureOwnerStackCall, isChildrenCount, isChildrenCountCall, isChildrenForEach, isChildrenForEachCall, isChildrenMap, isChildrenMapCall, isChildrenOnly, isChildrenOnlyCall, isChildrenToArray, isChildrenToArrayCall, isClassComponent, isCloneElement, isCloneElementCall, isComponentDidCatch, isComponentDidMount, isComponentDidUpdate, isComponentWillMount, isComponentWillReceiveProps, isComponentWillUnmount, isComponentWillUpdate, isCreateContext, isCreateContextCall, isCreateElement, isCreateElementCall, isCreateRef, isCreateRefCall, isEnumType, isFalseLiteralType, isFalsyBigIntType, isFalsyNumberType, isFalsyStringType, isForwardRef, isForwardRefCall, isFunctionComponentDefinition, isFunctionComponentName, isFunctionComponentNameLoose, isFunctionComponentWrapperCall, isFunctionComponentWrapperCallback, isFunctionEmpty, isFunctionHasCallInInitPath, isFunctionHasDirective, isFunctionWithLooseComponentName, isGetChildContext, isGetDefaultProps, isGetDerivedStateFromError, isGetDerivedStateFromProps, isGetInitialState, isGetSnapshotBeforeUpdate, isHookCall, isHookDefinition, isHookId, isHookName, isJsxLike, isLazy, isLazyCall, isMemo, isMemoCall, isNeverType, isNullishType, isNumberType, isObjectType, isPureComponent, isRender, isRenderMethodCallback, isRenderMethodLike, isShouldComponentUpdate, isStringType, isThisSetStateCall, isTrueLiteralType, isTruthyBigIntType, isTruthyNumberType, isTruthyStringType, isUnknownType, isUnsafeComponentWillMount, isUnsafeComponentWillReceiveProps, isUnsafeComponentWillUpdate, isUse, isUseActionState, isUseActionStateCall, isUseCall, isUseCallback, isUseCallbackCall, isUseContext, isUseContextCall, isUseDebugValue, isUseDebugValueCall, isUseDeferredValue, isUseDeferredValueCall, isUseEffect, isUseEffectCall, isUseEffectCleanupCallback, isUseEffectLikeCall, isUseEffectSetupCallback, isUseFormStatus, isUseFormStatusCall, isUseId, isUseIdCall, isUseImperativeHandle, isUseImperativeHandleCall, isUseInsertionEffect, isUseInsertionEffectCall, isUseLayoutEffect, isUseLayoutEffectCall, isUseMemo, isUseMemoCall, isUseOptimistic, isUseOptimisticCall, isUseReducer, isUseReducerCall, isUseRef, isUseRefCall, isUseState, isUseStateCall, isUseStateLikeCall, isUseSyncExternalStore, isUseSyncExternalStoreCall, isUseTransition, isUseTransitionCall };
803
+ export { ClassComponentSemanticNode, ClientFunctionSemanticNode, DEFAULT_COMPONENT_DETECTION_HINT, FunctionComponentDetectionHint, FunctionComponentFlag, FunctionComponentSemanticNode, FunctionDisplayNameAssignment, FunctionID, FunctionInitPath, FunctionKind, FunctionSemanticNode, HookCall, HookSemanticNode, JsxConfig, REACT_BUILTIN_HOOK_NAMES, SEL_FUNCTION_DISPLAY_NAME_ASSIGNMENT, SemanticFunc, SemanticNode, ServerFunctionSemanticNode, TypeVariant, getClassComponentCollector, getClassId, getFullyQualifiedNameEx, getFunctionComponentCollector, getFunctionComponentFlagFromInitPath, getFunctionComponentId, getFunctionDirectives, getFunctionId, getFunctionInitPath, getHookCollector, getJsxConfig, getJsxConfigFromAnnotation, getJsxConfigFromCompilerOptions, getTypeVariants, isAPI, isAPICall, isAnyType, isAssignmentToThisState, isBigIntType, isBooleanLiteralType, isBooleanType, isCaptureOwnerStack, isCaptureOwnerStackCall, isChildrenCount, isChildrenCountCall, isChildrenForEach, isChildrenForEachCall, isChildrenMap, isChildrenMapCall, isChildrenOnly, isChildrenOnlyCall, isChildrenToArray, isChildrenToArrayCall, isClassComponent, isCloneElement, isCloneElementCall, isComponentDidCatch, isComponentDidMount, isComponentDidUpdate, isComponentWillMount, isComponentWillReceiveProps, isComponentWillUnmount, isComponentWillUpdate, isCreateContext, isCreateContextCall, isCreateElement, isCreateElementCall, isCreateRef, isCreateRefCall, isEnumType, isFalseLiteralType, isFalsyBigIntType, isFalsyNumberType, isFalsyStringType, isForwardRef, isForwardRefCall, isFunctionComponentDefinition, isFunctionComponentName, isFunctionComponentNameLoose, isFunctionComponentWrapperCall, isFunctionComponentWrapperCallback, isFunctionEmpty, isFunctionHasCallInInitPath, isFunctionHasDirective, isFunctionWithLooseComponentName, isGetChildContext, isGetDefaultProps, isGetDerivedStateFromError, isGetDerivedStateFromProps, isGetInitialState, isGetSnapshotBeforeUpdate, isHookCall, isHookDefinition, isHookId, isHookName, isHookTag, isJsxLike, isLazy, isLazyCall, isMemo, isMemoCall, isNeverType, isNullishType, isNumberType, isObjectType, isPureComponent, isRender, isRenderMethodCallback, isRenderMethodLike, isShouldComponentUpdate, isStringType, isThisSetStateCall, isTrueLiteralType, isTruthyBigIntType, isTruthyNumberType, isTruthyStringType, isUnknownType, isUnsafeComponentWillMount, isUnsafeComponentWillReceiveProps, isUnsafeComponentWillUpdate, isUse, isUseActionState, isUseActionStateCall, isUseCall, isUseCallback, isUseCallbackCall, isUseContext, isUseContextCall, isUseDebugValue, isUseDebugValueCall, isUseDeferredValue, isUseDeferredValueCall, isUseEffect, isUseEffectCall, isUseEffectCleanupCallback, isUseEffectLikeCall, isUseEffectSetupCallback, isUseFormStatus, isUseFormStatusCall, isUseId, isUseIdCall, isUseImperativeHandle, isUseImperativeHandleCall, isUseInsertionEffect, isUseInsertionEffectCall, isUseLayoutEffect, isUseLayoutEffectCall, isUseMemo, isUseMemoCall, isUseOptimistic, isUseOptimisticCall, isUseReducer, isUseReducerCall, isUseRef, isUseRefCall, isUseState, isUseStateCall, isUseStateLikeCall, isUseSyncExternalStore, isUseSyncExternalStoreCall, isUseTransition, isUseTransitionCall };
package/dist/index.js CHANGED
@@ -736,6 +736,15 @@ function isHookId(id) {
736
736
  }
737
737
  }
738
738
  /**
739
+ * Checks if the given expression is a hook tag (callee / tagged template tag).
740
+ * @param tag The expression node to check
741
+ * @returns `true` if the expression is a hook identifier or member expression with hook name, `false` otherwise
742
+ */
743
+ function isHookTag(tag) {
744
+ if (tag == null) return false;
745
+ return isHookId(Extract.unwrap(tag));
746
+ }
747
+ /**
739
748
  * Determine if a function node is a React Hook based on its name.
740
749
  * @param node The function node to check
741
750
  * @returns True if the function is a React Hook, false otherwise
@@ -963,6 +972,14 @@ function getFunctionComponentCollector(context, options = {}) {
963
972
  const { argument } = node;
964
973
  if (!components.has(entry.key) && !isJsxLike(context, argument, hint)) return;
965
974
  components.set(entry.key, entry);
975
+ },
976
+ TaggedTemplateExpression(node) {
977
+ if (!isHookTag(node.tag)) return;
978
+ const entry = getCurrentEntry();
979
+ if (entry == null) return;
980
+ entry.hookCalls.push(node);
981
+ if (!entry.isFunctionComponentDefinition) return;
982
+ components.set(entry.key, entry);
966
983
  }
967
984
  }
968
985
  };
@@ -1027,6 +1044,12 @@ function getHookCollector(context) {
1027
1044
  const entry = getCurrentEntry();
1028
1045
  if (entry == null) return;
1029
1046
  entry.rets.push(node.argument);
1047
+ },
1048
+ TaggedTemplateExpression(node) {
1049
+ if (!isHookTag(node.tag)) return;
1050
+ const entry = getCurrentEntry();
1051
+ if (entry == null) return;
1052
+ entry.hookCalls.push(node);
1030
1053
  }
1031
1054
  }
1032
1055
  };
@@ -1264,4 +1287,4 @@ function getTypeVariants(types) {
1264
1287
  }
1265
1288
 
1266
1289
  //#endregion
1267
- export { DEFAULT_COMPONENT_DETECTION_HINT, FunctionComponentDetectionHint, FunctionComponentFlag, REACT_BUILTIN_HOOK_NAMES, SEL_FUNCTION_DISPLAY_NAME_ASSIGNMENT, getClassComponentCollector, getClassId, getFullyQualifiedNameEx, getFunctionComponentCollector, getFunctionComponentFlagFromInitPath, getFunctionComponentId, getFunctionDirectives, getFunctionId, getFunctionInitPath, getHookCollector, getJsxConfig, getJsxConfigFromAnnotation, getJsxConfigFromCompilerOptions, getTypeVariants, isAPI, isAPICall, isAnyType, isAssignmentToThisState, isBigIntType, isBooleanLiteralType, isBooleanType, isCaptureOwnerStack, isCaptureOwnerStackCall, isChildrenCount, isChildrenCountCall, isChildrenForEach, isChildrenForEachCall, isChildrenMap, isChildrenMapCall, isChildrenOnly, isChildrenOnlyCall, isChildrenToArray, isChildrenToArrayCall, isClassComponent, isCloneElement, isCloneElementCall, isComponentDidCatch, isComponentDidMount, isComponentDidUpdate, isComponentWillMount, isComponentWillReceiveProps, isComponentWillUnmount, isComponentWillUpdate, isCreateContext, isCreateContextCall, isCreateElement, isCreateElementCall, isCreateRef, isCreateRefCall, isEnumType, isFalseLiteralType, isFalsyBigIntType, isFalsyNumberType, isFalsyStringType, isForwardRef, isForwardRefCall, isFunctionComponentDefinition, isFunctionComponentName, isFunctionComponentNameLoose, isFunctionComponentWrapperCall, isFunctionComponentWrapperCallback, isFunctionEmpty, isFunctionHasCallInInitPath, isFunctionHasDirective, isFunctionWithLooseComponentName, isGetChildContext, isGetDefaultProps, isGetDerivedStateFromError, isGetDerivedStateFromProps, isGetInitialState, isGetSnapshotBeforeUpdate, isHookCall, isHookDefinition, isHookId, isHookName, isJsxLike, isLazy, isLazyCall, isMemo, isMemoCall, isNeverType, isNullishType, isNumberType, isObjectType, isPureComponent, isRender, isRenderMethodCallback, isRenderMethodLike, isShouldComponentUpdate, isStringType, isThisSetStateCall, isTrueLiteralType, isTruthyBigIntType, isTruthyNumberType, isTruthyStringType, isUnknownType, isUnsafeComponentWillMount, isUnsafeComponentWillReceiveProps, isUnsafeComponentWillUpdate, isUse, isUseActionState, isUseActionStateCall, isUseCall, isUseCallback, isUseCallbackCall, isUseContext, isUseContextCall, isUseDebugValue, isUseDebugValueCall, isUseDeferredValue, isUseDeferredValueCall, isUseEffect, isUseEffectCall, isUseEffectCleanupCallback, isUseEffectLikeCall, isUseEffectSetupCallback, isUseFormStatus, isUseFormStatusCall, isUseId, isUseIdCall, isUseImperativeHandle, isUseImperativeHandleCall, isUseInsertionEffect, isUseInsertionEffectCall, isUseLayoutEffect, isUseLayoutEffectCall, isUseMemo, isUseMemoCall, isUseOptimistic, isUseOptimisticCall, isUseReducer, isUseReducerCall, isUseRef, isUseRefCall, isUseState, isUseStateCall, isUseStateLikeCall, isUseSyncExternalStore, isUseSyncExternalStoreCall, isUseTransition, isUseTransitionCall };
1290
+ export { DEFAULT_COMPONENT_DETECTION_HINT, FunctionComponentDetectionHint, FunctionComponentFlag, REACT_BUILTIN_HOOK_NAMES, SEL_FUNCTION_DISPLAY_NAME_ASSIGNMENT, getClassComponentCollector, getClassId, getFullyQualifiedNameEx, getFunctionComponentCollector, getFunctionComponentFlagFromInitPath, getFunctionComponentId, getFunctionDirectives, getFunctionId, getFunctionInitPath, getHookCollector, getJsxConfig, getJsxConfigFromAnnotation, getJsxConfigFromCompilerOptions, getTypeVariants, isAPI, isAPICall, isAnyType, isAssignmentToThisState, isBigIntType, isBooleanLiteralType, isBooleanType, isCaptureOwnerStack, isCaptureOwnerStackCall, isChildrenCount, isChildrenCountCall, isChildrenForEach, isChildrenForEachCall, isChildrenMap, isChildrenMapCall, isChildrenOnly, isChildrenOnlyCall, isChildrenToArray, isChildrenToArrayCall, isClassComponent, isCloneElement, isCloneElementCall, isComponentDidCatch, isComponentDidMount, isComponentDidUpdate, isComponentWillMount, isComponentWillReceiveProps, isComponentWillUnmount, isComponentWillUpdate, isCreateContext, isCreateContextCall, isCreateElement, isCreateElementCall, isCreateRef, isCreateRefCall, isEnumType, isFalseLiteralType, isFalsyBigIntType, isFalsyNumberType, isFalsyStringType, isForwardRef, isForwardRefCall, isFunctionComponentDefinition, isFunctionComponentName, isFunctionComponentNameLoose, isFunctionComponentWrapperCall, isFunctionComponentWrapperCallback, isFunctionEmpty, isFunctionHasCallInInitPath, isFunctionHasDirective, isFunctionWithLooseComponentName, isGetChildContext, isGetDefaultProps, isGetDerivedStateFromError, isGetDerivedStateFromProps, isGetInitialState, isGetSnapshotBeforeUpdate, isHookCall, isHookDefinition, isHookId, isHookName, isHookTag, isJsxLike, isLazy, isLazyCall, isMemo, isMemoCall, isNeverType, isNullishType, isNumberType, isObjectType, isPureComponent, isRender, isRenderMethodCallback, isRenderMethodLike, isShouldComponentUpdate, isStringType, isThisSetStateCall, isTrueLiteralType, isTruthyBigIntType, isTruthyNumberType, isTruthyStringType, isUnknownType, isUnsafeComponentWillMount, isUnsafeComponentWillReceiveProps, isUnsafeComponentWillUpdate, isUse, isUseActionState, isUseActionStateCall, isUseCall, isUseCallback, isUseCallbackCall, isUseContext, isUseContextCall, isUseDebugValue, isUseDebugValueCall, isUseDeferredValue, isUseDeferredValueCall, isUseEffect, isUseEffectCall, isUseEffectCleanupCallback, isUseEffectLikeCall, isUseEffectSetupCallback, isUseFormStatus, isUseFormStatusCall, isUseId, isUseIdCall, isUseImperativeHandle, isUseImperativeHandleCall, isUseInsertionEffect, isUseInsertionEffectCall, isUseLayoutEffect, isUseLayoutEffectCall, isUseMemo, isUseMemoCall, isUseOptimistic, isUseOptimisticCall, isUseReducer, isUseReducerCall, isUseRef, isUseRefCall, isUseState, isUseStateCall, isUseStateLikeCall, isUseSyncExternalStore, isUseSyncExternalStoreCall, isUseTransition, isUseTransitionCall };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@eslint-react/core",
3
- "version": "5.15.0",
3
+ "version": "5.16.1",
4
4
  "description": "ESLint React's ESLint utility module for static analysis of React core APIs and patterns.",
5
5
  "homepage": "https://github.com/Rel1cx/eslint-react",
6
6
  "bugs": {
@@ -33,11 +33,11 @@
33
33
  "@typescript-eslint/types": "^8.64.0",
34
34
  "@typescript-eslint/utils": "^8.64.0",
35
35
  "ts-pattern": "^5.9.0",
36
- "@eslint-react/ast": "5.15.0",
37
- "@eslint-react/eslint": "5.15.0",
38
- "@eslint-react/jsx": "5.15.0",
39
- "@eslint-react/var": "5.15.0",
40
- "@eslint-react/shared": "5.15.0"
36
+ "@eslint-react/ast": "5.16.1",
37
+ "@eslint-react/shared": "5.16.1",
38
+ "@eslint-react/eslint": "5.16.1",
39
+ "@eslint-react/jsx": "5.16.1",
40
+ "@eslint-react/var": "5.16.1"
41
41
  },
42
42
  "devDependencies": {
43
43
  "@typescript-eslint/parser": "^8.64.0",