@eslint-react/core 1.24.0-next.1 → 1.24.0-next.12

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 CHANGED
@@ -2,10 +2,13 @@
2
2
 
3
3
  var AST8 = require('@eslint-react/ast');
4
4
  var eff = require('@eslint-react/eff');
5
- var JSX4 = require('@eslint-react/jsx');
5
+ var JSX3 = require('@eslint-react/jsx');
6
6
  var types = require('@typescript-eslint/types');
7
- var VAR = require('@eslint-react/var');
8
7
  var shared = require('@eslint-react/shared');
8
+ var VAR = require('@eslint-react/var');
9
+ var birecord = require('birecord');
10
+
11
+ function _interopDefault (e) { return e && e.__esModule ? e : { default: e }; }
9
12
 
10
13
  function _interopNamespace(e) {
11
14
  if (e && e.__esModule) return e;
@@ -26,29 +29,11 @@ function _interopNamespace(e) {
26
29
  }
27
30
 
28
31
  var AST8__namespace = /*#__PURE__*/_interopNamespace(AST8);
29
- var JSX4__namespace = /*#__PURE__*/_interopNamespace(JSX4);
32
+ var JSX3__namespace = /*#__PURE__*/_interopNamespace(JSX3);
30
33
  var VAR__namespace = /*#__PURE__*/_interopNamespace(VAR);
34
+ var birecord__default = /*#__PURE__*/_interopDefault(birecord);
31
35
 
32
36
  // src/component/component-collector.ts
33
- function getElementNameAndRepresentName(node, context, polymorphicPropName, additionalComponents = []) {
34
- const name = JSX4__namespace.getElementName(node);
35
- if (name === name.toLowerCase()) return [name, name];
36
- const component = additionalComponents.findLast((c) => c.name === name || c.re.test(name));
37
- if (component != null) return [name, component.as];
38
- if (polymorphicPropName == null) return [name, name];
39
- const initialScope = context.sourceCode.getScope(node);
40
- const polymorphicProp = JSX4__namespace.findPropInAttributes(
41
- polymorphicPropName,
42
- initialScope,
43
- node.attributes
44
- );
45
- if (polymorphicProp == null) return [name, name];
46
- const polymorphicName = VAR__namespace.toResolved(JSX4__namespace.getPropValue(polymorphicProp, initialScope)).value;
47
- if (typeof polymorphicName === "string") {
48
- return [name, polymorphicName];
49
- }
50
- return [name, name];
51
- }
52
37
 
53
38
  // src/utils/get-id.ts
54
39
  var id = 0n;
@@ -164,9 +149,9 @@ var isMemoCall = isReactAPICallWithName("memo");
164
149
 
165
150
  // src/element/hierarchy.ts
166
151
  function isInsideCreateElementProps(node, context) {
167
- const call = AST8__namespace.findParentNodeGuard(node, isCreateElementCall(context));
152
+ const call = AST8__namespace.findParentNode(node, isCreateElementCall(context));
168
153
  if (call == null) return false;
169
- const prop = AST8__namespace.findParentNodeGuard(node, AST8__namespace.is(types.AST_NODE_TYPES.ObjectExpression));
154
+ const prop = AST8__namespace.findParentNode(node, AST8__namespace.is(types.AST_NODE_TYPES.ObjectExpression));
170
155
  if (prop == null) return false;
171
156
  return prop === call.arguments[1];
172
157
  }
@@ -276,7 +261,7 @@ var isUseTransitionCall = eff.flip(isReactHookCallWithName)("useTransition");
276
261
 
277
262
  // src/hook/hierarchy.ts
278
263
  function isInsideReactHook(node) {
279
- return isReactHook(AST8__namespace.findParentNodeGuard(node, AST8__namespace.isFunction));
264
+ return isReactHook(AST8__namespace.findParentNode(node, AST8__namespace.isFunction));
280
265
  }
281
266
  function useHookCollector() {
282
267
  const hooks = /* @__PURE__ */ new Map();
@@ -288,8 +273,8 @@ function useHookCollector() {
288
273
  const key = getId();
289
274
  fEntries.push({ key, node });
290
275
  hooks.set(key, {
291
- _: key,
292
276
  id: id2,
277
+ key,
293
278
  kind: "function",
294
279
  name,
295
280
  node,
@@ -328,19 +313,13 @@ function useHookCollector() {
328
313
  if (hook == null) {
329
314
  return;
330
315
  }
331
- hooks.set(hook._, {
332
- ...hook,
333
- hookCalls: [
334
- ...hook.hookCalls,
335
- node
336
- ]
337
- });
316
+ hook.hookCalls.push(node);
338
317
  }
339
318
  };
340
319
  return { ctx, listeners };
341
320
  }
342
321
  var ERComponentHint = {
343
- ...JSX4__namespace.JSXValueHint,
322
+ ...JSX3__namespace.JSXValueHint,
344
323
  // 1n << 0n - 1n << 63n are reserved for JSXValueHint
345
324
  // Skip function component created by React.memo
346
325
  SkipMemo: 1n << 64n,
@@ -395,14 +374,6 @@ function getFunctionComponentIdentifier(node, context) {
395
374
  }
396
375
  return eff._;
397
376
  }
398
- var RE_COMPONENT_NAME = /^_?[A-Z]/u;
399
- function getComponentNameFromIdentifier(node) {
400
- if (node == null) return eff._;
401
- return Array.isArray(node) ? node.map((n) => n.name).join(".") : node.name;
402
- }
403
- function isComponentName(name) {
404
- return RE_COMPONENT_NAME.test(name);
405
- }
406
377
  function isClassComponent(node) {
407
378
  if ("superClass" in node && node.superClass != null) {
408
379
  const re = /^(?:Pure)?Component$/u;
@@ -428,9 +399,30 @@ function isPureComponent(node) {
428
399
  return false;
429
400
  }
430
401
 
431
- // src/component/component-render-method.ts
402
+ // src/component/component-lifecycle.ts
403
+ function isComponentDidMount(node) {
404
+ return AST8__namespace.isMethodOrProperty(node) && node.key.type === types.AST_NODE_TYPES.Identifier && node.key.name === "componentDidMount";
405
+ }
406
+ function isComponentWillUnmount(node) {
407
+ return AST8__namespace.isMethodOrProperty(node) && node.key.type === types.AST_NODE_TYPES.Identifier && node.key.name === "componentWillUnmount";
408
+ }
409
+ function isComponentDidCatch(node) {
410
+ return AST8__namespace.isMethodOrProperty(node) && !node.static && node.key.type === types.AST_NODE_TYPES.Identifier && node.key.name === "componentDidCatch";
411
+ }
412
+ function isGetDerivedStateFromError(node) {
413
+ return AST8__namespace.isMethodOrProperty(node) && node.static && node.key.type === types.AST_NODE_TYPES.Identifier && node.key.name === "getDerivedStateFromError";
414
+ }
415
+ function isGetDerivedStateFromProps(node) {
416
+ return AST8__namespace.isMethodOrProperty(node) && node.static && node.key.type === types.AST_NODE_TYPES.Identifier && node.key.name === "getDerivedStateFromProps";
417
+ }
418
+ function isFunctionOfComponentDidMount(node) {
419
+ return AST8__namespace.isFunction(node) && isComponentDidMount(node.parent) && node.parent.value === node;
420
+ }
421
+ function isFunctionOfComponentWillUnmount(node) {
422
+ return AST8__namespace.isFunction(node) && isComponentWillUnmount(node.parent) && node.parent.value === node;
423
+ }
432
424
  function isRenderMethodLike(node) {
433
- return (node.type === types.AST_NODE_TYPES.MethodDefinition || node.type === types.AST_NODE_TYPES.PropertyDefinition) && node.key.type === types.AST_NODE_TYPES.Identifier && node.key.name === "render" && node.parent.parent.type === types.AST_NODE_TYPES.ClassDeclaration;
425
+ return AST8__namespace.isMethodOrProperty(node) && node.key.type === types.AST_NODE_TYPES.Identifier && node.key.name === "render" && node.parent.parent.type === types.AST_NODE_TYPES.ClassDeclaration;
434
426
  }
435
427
  function isFunctionOfRenderMethod(node) {
436
428
  if (!isRenderMethodLike(node.parent)) {
@@ -441,8 +433,14 @@ function isFunctionOfRenderMethod(node) {
441
433
  function isInsideRenderMethod(node) {
442
434
  return AST8__namespace.findParentNode(node, (node2) => isRenderMethodLike(node2) && isClassComponent(node2.parent.parent)) != null;
443
435
  }
444
-
445
- // src/component/misc.ts
436
+ var RE_COMPONENT_NAME = /^_?[A-Z]/u;
437
+ function getComponentNameFromIdentifier(node) {
438
+ if (node == null) return eff._;
439
+ return Array.isArray(node) ? node.map((n) => n.name).join(".") : node.name;
440
+ }
441
+ function isComponentName(name) {
442
+ return RE_COMPONENT_NAME.test(name);
443
+ }
446
444
  function hasNoneOrValidComponentName(node, context) {
447
445
  const id2 = getFunctionComponentIdentifier(node, context);
448
446
  if (id2 == null) return true;
@@ -481,15 +479,17 @@ function hasValidHierarchy(node, context, hint) {
481
479
  }
482
480
  function getComponentFlag(initPath) {
483
481
  let flag = ERFunctionComponentFlag.None;
484
- if (initPath != null && AST8__namespace.hasCallInFunctionInitPath("memo")(initPath)) {
482
+ if (initPath != null && AST8__namespace.hasCallInFunctionInitPath("memo", initPath)) {
485
483
  flag |= ERFunctionComponentFlag.Memo;
486
484
  }
487
- if (initPath != null && AST8__namespace.hasCallInFunctionInitPath("forwardRef")(initPath)) {
485
+ if (initPath != null && AST8__namespace.hasCallInFunctionInitPath("forwardRef", initPath)) {
488
486
  flag |= ERFunctionComponentFlag.ForwardRef;
489
487
  }
490
488
  return flag;
491
489
  }
492
- function useComponentCollector(context, hint = DEFAULT_COMPONENT_HINT) {
490
+ var displayNameAssignmentSelector = "AssignmentExpression[type][operator='='][left.type='MemberExpression'][left.property.name='displayName']";
491
+ function useComponentCollector(context, hint = DEFAULT_COMPONENT_HINT, options = {}) {
492
+ const { collectDisplayName = false, collectHookCalls = false } = options;
493
493
  const jsxCtx = { getScope: (node) => context.sourceCode.getScope(node) };
494
494
  const components = /* @__PURE__ */ new Map();
495
495
  const functionEntries = [];
@@ -505,7 +505,7 @@ function useComponentCollector(context, hint = DEFAULT_COMPONENT_HINT) {
505
505
  return functionEntries.pop();
506
506
  }
507
507
  const shouldDrop = AST8__namespace.getNestedReturnStatements(entry.node.body).slice().reverse().some((r) => {
508
- return context.sourceCode.getScope(r).block === entry.node && r.argument != null && !JSX4__namespace.isJSXValue(r.argument, jsxCtx, hint);
508
+ return context.sourceCode.getScope(r).block === entry.node && r.argument != null && !JSX3__namespace.isJSXValue(r.argument, jsxCtx, hint);
509
509
  });
510
510
  if (shouldDrop) {
511
511
  components.delete(entry.key);
@@ -531,7 +531,7 @@ function useComponentCollector(context, hint = DEFAULT_COMPONENT_HINT) {
531
531
  return;
532
532
  }
533
533
  const { body } = entry.node;
534
- const isComponent = hasNoneOrValidComponentName(entry.node, context) && JSX4__namespace.isJSXValue(body, jsxCtx, hint) && hasValidHierarchy(entry.node, context, hint);
534
+ const isComponent = hasNoneOrValidComponentName(entry.node, context) && JSX3__namespace.isJSXValue(body, jsxCtx, hint) && hasValidHierarchy(entry.node, context, hint);
535
535
  if (!isComponent) {
536
536
  return;
537
537
  }
@@ -540,8 +540,8 @@ function useComponentCollector(context, hint = DEFAULT_COMPONENT_HINT) {
540
540
  const name = getComponentNameFromIdentifier(id2);
541
541
  const key = getId();
542
542
  components.set(key, {
543
- _: key,
544
543
  id: id2,
544
+ key,
545
545
  kind: "function",
546
546
  name,
547
547
  node: entry.node,
@@ -552,35 +552,35 @@ function useComponentCollector(context, hint = DEFAULT_COMPONENT_HINT) {
552
552
  initPath
553
553
  });
554
554
  },
555
- "AssignmentExpression[type][operator='='][left.type='MemberExpression'][left.property.name='displayName']"(node) {
556
- const { left, right } = node;
557
- const componentName = left.object.type === types.AST_NODE_TYPES.Identifier ? left.object.name : eff._;
558
- const component = [...components.values()].findLast(({ name }) => name != null && name === componentName);
559
- if (component == null) {
560
- return;
555
+ ...collectDisplayName ? {
556
+ [displayNameAssignmentSelector](node) {
557
+ const { left, right } = node;
558
+ const componentName = left.object.type === types.AST_NODE_TYPES.Identifier ? left.object.name : eff._;
559
+ const component = [...components.values()].findLast(({ name }) => name != null && name === componentName);
560
+ if (component == null) {
561
+ return;
562
+ }
563
+ component.displayName = right;
561
564
  }
562
- components.set(component._, {
563
- ...component,
564
- displayName: right
565
- });
566
- },
567
- "CallExpression[type]:exit"(node) {
568
- if (!isReactHookCall(node)) {
569
- return;
565
+ } : {},
566
+ ...collectHookCalls ? {
567
+ "CallExpression[type]:exit"(node) {
568
+ if (!isReactHookCall(node)) {
569
+ return;
570
+ }
571
+ const entry = getCurrentEntry();
572
+ if (entry == null) {
573
+ return;
574
+ }
575
+ entry.hookCalls.push(node);
570
576
  }
571
- const entry = getCurrentEntry();
572
- if (entry == null) {
573
- return;
574
- }
575
- functionEntries.pop();
576
- functionEntries.push({ ...entry, hookCalls: [...entry.hookCalls, node] });
577
- },
577
+ } : {},
578
578
  "ReturnStatement[type]"(node) {
579
579
  const entry = getCurrentEntry();
580
580
  if (entry == null) {
581
581
  return;
582
582
  }
583
- const isComponent = hasNoneOrValidComponentName(entry.node, context) && JSX4__namespace.isJSXValue(node.argument, jsxCtx, hint) && hasValidHierarchy(entry.node, context, hint);
583
+ const isComponent = hasNoneOrValidComponentName(entry.node, context) && JSX3__namespace.isJSXValue(node.argument, jsxCtx, hint) && hasValidHierarchy(entry.node, context, hint);
584
584
  if (!isComponent) {
585
585
  return;
586
586
  }
@@ -590,8 +590,8 @@ function useComponentCollector(context, hint = DEFAULT_COMPONENT_HINT) {
590
590
  const id2 = getFunctionComponentIdentifier(entry.node, context);
591
591
  const name = getComponentNameFromIdentifier(id2);
592
592
  components.set(entry.key, {
593
- _: entry.key,
594
593
  id: id2,
594
+ key: entry.key,
595
595
  kind: "function",
596
596
  name,
597
597
  node: entry.node,
@@ -623,8 +623,8 @@ function useComponentCollectorLegacy() {
623
623
  components.set(
624
624
  key,
625
625
  {
626
- _: key,
627
626
  id: id2,
627
+ key,
628
628
  kind: "class",
629
629
  name: id2?.name,
630
630
  node,
@@ -643,60 +643,22 @@ function useComponentCollectorLegacy() {
643
643
  };
644
644
  return { ctx, listeners };
645
645
  }
646
- function isSetupFunction(node) {
647
- if (node == null) return eff._;
648
- return node.parent?.type === types.AST_NODE_TYPES.CallExpression && node.parent.callee !== node && node.parent.callee.type === types.AST_NODE_TYPES.Identifier && node.parent.arguments.at(0) === node && isUseEffectCallLoose(node.parent);
649
- }
650
- function isCleanupFunction(node) {
651
- const nearReturn = AST8__namespace.findParentNodeGuard(node, AST8__namespace.is(types.AST_NODE_TYPES.ReturnStatement));
652
- const nearFunction = AST8__namespace.findParentNodeGuard(node, AST8__namespace.isFunction);
653
- const nearFunctionOfReturn = AST8__namespace.findParentNodeGuard(nearReturn, AST8__namespace.isFunction);
654
- return nearFunction === nearFunctionOfReturn && isSetupFunction(nearFunction);
655
- }
656
- function isComponentDidMount(node) {
657
- return AST8__namespace.isOneOf([types.AST_NODE_TYPES.MethodDefinition, types.AST_NODE_TYPES.PropertyDefinition])(node) && node.key.type === types.AST_NODE_TYPES.Identifier && node.key.name === "componentDidMount";
658
- }
659
- function isComponentWillUnmount(node) {
660
- return AST8__namespace.isOneOf([types.AST_NODE_TYPES.MethodDefinition, types.AST_NODE_TYPES.PropertyDefinition])(node) && node.key.type === types.AST_NODE_TYPES.Identifier && node.key.name === "componentWillUnmount";
661
- }
662
- function isComponentDidMountFunction(node) {
663
- return AST8__namespace.isFunction(node) && isComponentDidMount(node.parent) && node.parent.value === node;
664
- }
665
- function isComponentWillUnmountFunction(node) {
666
- return AST8__namespace.isFunction(node) && isComponentWillUnmount(node.parent) && node.parent.value === node;
667
- }
668
- var ERPhaseRelevance = eff.birecord({
646
+ var ERPhaseRelevance = birecord__default.default({
669
647
  mount: "unmount",
670
648
  setup: "cleanup"
671
649
  });
672
650
  var isInversePhase = eff.dual(2, (a, b) => ERPhaseRelevance.get(a) === b);
673
- function isDirectValueOfRenderPropertyLoose(node) {
674
- const matching = (node2) => {
675
- return node2.type === types.AST_NODE_TYPES.Property && node2.key.type === types.AST_NODE_TYPES.Identifier && node2.key.name.startsWith("render");
676
- };
677
- return matching(node) || node.parent != null && matching(node.parent);
678
- }
679
- function isDeclaredInRenderPropLoose(node) {
680
- if (isDirectValueOfRenderPropertyLoose(node)) {
681
- return true;
682
- }
683
- const parent = AST8__namespace.findParentNodeGuard(node, AST8__namespace.is(types.AST_NODE_TYPES.JSXExpressionContainer))?.parent;
684
- if (parent?.type !== types.AST_NODE_TYPES.JSXAttribute) {
685
- return false;
686
- }
687
- return parent.name.type === types.AST_NODE_TYPES.JSXIdentifier && parent.name.name.startsWith("render");
688
- }
689
651
  function isRenderFunctionLoose(node, context) {
690
652
  const { body, parent } = node;
691
653
  if (AST8__namespace.getFunctionIdentifier(node)?.name.startsWith("render")) {
692
654
  return parent.type === types.AST_NODE_TYPES.JSXExpressionContainer && parent.parent.type === types.AST_NODE_TYPES.JSXAttribute && parent.parent.name.type === types.AST_NODE_TYPES.JSXIdentifier && parent.parent.name.name.startsWith("render");
693
655
  }
694
- return JSX4__namespace.isJSXValue(
656
+ return JSX3__namespace.isJSXValue(
695
657
  body,
696
658
  {
697
659
  getScope: (node2) => context.sourceCode.getScope(node2)
698
660
  },
699
- JSX4__namespace.JSXValueHint.SkipNullLiteral | JSX4__namespace.JSXValueHint.SkipUndefined | JSX4__namespace.JSXValueHint.StrictLogical | JSX4__namespace.JSXValueHint.StrictConditional
661
+ JSX3__namespace.JSXValueHint.SkipNullLiteral | JSX3__namespace.JSXValueHint.SkipUndefined | JSX3__namespace.JSXValueHint.StrictLogical | JSX3__namespace.JSXValueHint.StrictConditional
700
662
  );
701
663
  }
702
664
  function isRenderPropLoose(node, context) {
@@ -705,10 +667,36 @@ function isRenderPropLoose(node, context) {
705
667
  }
706
668
  return node.name.name.startsWith("render") && node.value?.type === types.AST_NODE_TYPES.JSXExpressionContainer && AST8__namespace.isFunction(node.value.expression) && isRenderFunctionLoose(node.value.expression, context);
707
669
  }
670
+ function isDirectValueOfRenderPropertyLoose(node) {
671
+ const matching = (node2) => {
672
+ return node2.type === types.AST_NODE_TYPES.Property && node2.key.type === types.AST_NODE_TYPES.Identifier && node2.key.name.startsWith("render");
673
+ };
674
+ return matching(node) || node.parent != null && matching(node.parent);
675
+ }
676
+ function isDeclaredInRenderPropLoose(node) {
677
+ if (isDirectValueOfRenderPropertyLoose(node)) {
678
+ return true;
679
+ }
680
+ const parent = AST8__namespace.findParentNode(node, AST8__namespace.is(types.AST_NODE_TYPES.JSXExpressionContainer))?.parent;
681
+ if (parent?.type !== types.AST_NODE_TYPES.JSXAttribute) {
682
+ return false;
683
+ }
684
+ return parent.name.type === types.AST_NODE_TYPES.JSXIdentifier && parent.name.name.startsWith("render");
685
+ }
708
686
  function isThisSetState(node) {
709
687
  const { callee } = node;
710
688
  return callee.type === types.AST_NODE_TYPES.MemberExpression && AST8__namespace.isThisExpression(callee.object) && callee.property.type === types.AST_NODE_TYPES.Identifier && callee.property.name === "setState";
711
689
  }
690
+ function isFunctionOfUseEffectSetup(node) {
691
+ if (node == null) return eff._;
692
+ return node.parent?.type === types.AST_NODE_TYPES.CallExpression && node.parent.callee !== node && node.parent.callee.type === types.AST_NODE_TYPES.Identifier && node.parent.arguments.at(0) === node && isUseEffectCallLoose(node.parent);
693
+ }
694
+ function isFunctionOfUseEffectCleanup(node) {
695
+ const nearReturn = AST8__namespace.findParentNode(node, AST8__namespace.is(types.AST_NODE_TYPES.ReturnStatement));
696
+ const nearFunction = AST8__namespace.findParentNode(node, AST8__namespace.isFunction);
697
+ const nearFunctionOfReturn = AST8__namespace.findParentNode(nearReturn, AST8__namespace.isFunction);
698
+ return nearFunction === nearFunctionOfReturn && isFunctionOfUseEffectSetup(nearFunction);
699
+ }
712
700
 
713
701
  exports.DEFAULT_COMPONENT_HINT = DEFAULT_COMPONENT_HINT;
714
702
  exports.ERClassComponentFlag = ERClassComponentFlag;
@@ -718,7 +706,6 @@ exports.ERPhaseRelevance = ERPhaseRelevance;
718
706
  exports.RE_COMPONENT_NAME = RE_COMPONENT_NAME;
719
707
  exports.RE_HOOK_NAME = RE_HOOK_NAME;
720
708
  exports.getComponentNameFromIdentifier = getComponentNameFromIdentifier;
721
- exports.getElementNameAndRepresentName = getElementNameAndRepresentName;
722
709
  exports.getFunctionComponentIdentifier = getFunctionComponentIdentifier;
723
710
  exports.getId = getId;
724
711
  exports.hasNoneOrValidComponentName = hasNoneOrValidComponentName;
@@ -736,14 +723,12 @@ exports.isChildrenOnlyCall = isChildrenOnlyCall;
736
723
  exports.isChildrenToArray = isChildrenToArray;
737
724
  exports.isChildrenToArrayCall = isChildrenToArrayCall;
738
725
  exports.isClassComponent = isClassComponent;
739
- exports.isCleanupFunction = isCleanupFunction;
740
726
  exports.isCloneElement = isCloneElement;
741
727
  exports.isCloneElementCall = isCloneElementCall;
728
+ exports.isComponentDidCatch = isComponentDidCatch;
742
729
  exports.isComponentDidMount = isComponentDidMount;
743
- exports.isComponentDidMountFunction = isComponentDidMountFunction;
744
730
  exports.isComponentName = isComponentName;
745
731
  exports.isComponentWillUnmount = isComponentWillUnmount;
746
- exports.isComponentWillUnmountFunction = isComponentWillUnmountFunction;
747
732
  exports.isCreateContext = isCreateContext;
748
733
  exports.isCreateContextCall = isCreateContextCall;
749
734
  exports.isCreateElement = isCreateElement;
@@ -756,7 +741,13 @@ exports.isForwardRef = isForwardRef;
756
741
  exports.isForwardRefCall = isForwardRefCall;
757
742
  exports.isFromReact = isFromReact;
758
743
  exports.isFromReactMember = isFromReactMember;
744
+ exports.isFunctionOfComponentDidMount = isFunctionOfComponentDidMount;
745
+ exports.isFunctionOfComponentWillUnmount = isFunctionOfComponentWillUnmount;
759
746
  exports.isFunctionOfRenderMethod = isFunctionOfRenderMethod;
747
+ exports.isFunctionOfUseEffectCleanup = isFunctionOfUseEffectCleanup;
748
+ exports.isFunctionOfUseEffectSetup = isFunctionOfUseEffectSetup;
749
+ exports.isGetDerivedStateFromError = isGetDerivedStateFromError;
750
+ exports.isGetDerivedStateFromProps = isGetDerivedStateFromProps;
760
751
  exports.isInitializedFromReact = isInitializedFromReact;
761
752
  exports.isInsideCreateElementProps = isInsideCreateElementProps;
762
753
  exports.isInsideReactHook = isInsideReactHook;
@@ -776,7 +767,6 @@ exports.isReactHookName = isReactHookName;
776
767
  exports.isRenderFunctionLoose = isRenderFunctionLoose;
777
768
  exports.isRenderMethodLike = isRenderMethodLike;
778
769
  exports.isRenderPropLoose = isRenderPropLoose;
779
- exports.isSetupFunction = isSetupFunction;
780
770
  exports.isThisSetState = isThisSetState;
781
771
  exports.isUseCallbackCall = isUseCallbackCall;
782
772
  exports.isUseContextCall = isUseContextCall;