@eslint-react/core 2.0.0-next.180 → 2.0.0-next.182

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
@@ -3,11 +3,9 @@ import * as AST from "@eslint-react/ast";
3
3
  import { unit } from "@eslint-react/eff";
4
4
  import { RuleContext } from "@eslint-react/kit";
5
5
  import * as birecord0 from "birecord";
6
- import { isFalseLiteralType, isTrueLiteralType } from "ts-api-utils";
7
- import * as typescript0 from "typescript";
8
- import ts from "typescript";
9
6
  import { ESLintUtils, TSESTree as TSESTree$1 } from "@typescript-eslint/utils";
10
7
  import { Scope } from "@typescript-eslint/scope-manager";
8
+ import * as typescript0 from "typescript";
11
9
 
12
10
  //#region src/component/component-children.d.ts
13
11
  /**
@@ -471,7 +469,7 @@ declare function resolveAttributeValue(context: RuleContext, attribute: AST.TSES
471
469
  readonly toStatic: () => string | number | bigint | boolean | RegExp | null;
472
470
  } | {
473
471
  readonly kind: "expression";
474
- readonly node: TSESTree.Expression | TSESTree.JSXEmptyExpression;
472
+ readonly node: TSESTree.JSXEmptyExpression | TSESTree.Expression;
475
473
  readonly toStatic: () => unknown;
476
474
  } | {
477
475
  readonly kind: "element";
@@ -479,7 +477,7 @@ declare function resolveAttributeValue(context: RuleContext, attribute: AST.TSES
479
477
  readonly toStatic: () => undefined;
480
478
  } | {
481
479
  readonly kind: "spreadChild";
482
- readonly node: TSESTree.Expression | TSESTree.JSXEmptyExpression;
480
+ readonly node: TSESTree.JSXEmptyExpression | TSESTree.Expression;
483
481
  readonly toStatic: () => undefined;
484
482
  } | {
485
483
  readonly kind: "spreadProps";
@@ -654,118 +652,6 @@ declare function findParentAttribute(node: TSESTree.Node, test?: (node: TSESTree
654
652
  */
655
653
  declare function stringifyJsx(node: TSESTree$1.JSXIdentifier | TSESTree$1.JSXNamespacedName | TSESTree$1.JSXMemberExpression | TSESTree$1.JSXOpeningElement | TSESTree$1.JSXClosingElement | TSESTree$1.JSXOpeningFragment | TSESTree$1.JSXClosingFragment | TSESTree$1.JSXText): string;
656
654
  //#endregion
657
- //#region src/type/type-is.d.ts
658
- /** @internal */
659
- declare const isAnyType: (type: ts.Type) => boolean;
660
- /** @internal */
661
- declare const isBigIntType: (type: ts.Type) => boolean;
662
- /** @internal */
663
- declare const isBooleanType: (type: ts.Type) => boolean;
664
- /** @internal */
665
- declare const isEnumType: (type: ts.Type) => boolean;
666
- /** @internal */
667
- declare const isFalsyBigIntType: (type: ts.Type) => type is ts.LiteralType & {
668
- freshType: ts.FreshableType;
669
- regularType: ts.FreshableType;
670
- flags: ts.TypeFlags;
671
- symbol: ts.Symbol;
672
- pattern?: ts.DestructuringPattern;
673
- aliasSymbol?: ts.Symbol;
674
- aliasTypeArguments?: readonly ts.Type[];
675
- getFlags: () => ts.TypeFlags;
676
- getSymbol: () => ts.Symbol | undefined;
677
- getProperties: () => ts.Symbol[];
678
- getProperty: (propertyName: string) => ts.Symbol | undefined;
679
- getApparentProperties: () => ts.Symbol[];
680
- getCallSignatures: () => readonly ts.Signature[];
681
- getConstructSignatures: () => readonly ts.Signature[];
682
- getStringIndexType: () => ts.Type | undefined;
683
- getNumberIndexType: () => ts.Type | undefined;
684
- getBaseTypes: () => ts.BaseType[] | undefined;
685
- getNonNullableType: () => ts.Type;
686
- getConstraint: () => ts.Type | undefined;
687
- getDefault: () => ts.Type | undefined;
688
- isUnion: () => this is ts.UnionType;
689
- isIntersection: () => this is ts.IntersectionType;
690
- isUnionOrIntersection: () => this is ts.UnionOrIntersectionType;
691
- isLiteral: () => this is ts.LiteralType;
692
- isStringLiteral: () => this is ts.StringLiteralType;
693
- isNumberLiteral: () => this is ts.NumberLiteralType;
694
- isTypeParameter: () => this is ts.TypeParameter;
695
- isClassOrInterface: () => this is ts.InterfaceType;
696
- isClass: () => this is ts.InterfaceType;
697
- isIndexType: () => this is ts.IndexType;
698
- value: {
699
- negative: boolean;
700
- base10Value: "0";
701
- };
702
- };
703
- /** @internal */
704
- declare const isFalsyNumberType: (type: ts.Type) => boolean;
705
- /** @internal */
706
- declare const isFalsyStringType: (type: ts.Type) => boolean;
707
- /** @internal */
708
- declare const isNeverType: (type: ts.Type) => boolean;
709
- /** @internal */
710
- declare const isNullishType: (type: ts.Type) => boolean;
711
- /** @internal */
712
- declare const isNumberType: (type: ts.Type) => boolean;
713
- /** @internal */
714
- declare const isObjectType: (type: ts.Type) => boolean;
715
- /** @internal */
716
- declare const isStringType: (type: ts.Type) => boolean;
717
- /** @internal */
718
- declare const isTruthyBigIntType: (type: ts.Type) => type is ts.LiteralType & {
719
- freshType: ts.FreshableType;
720
- regularType: ts.FreshableType;
721
- flags: ts.TypeFlags;
722
- symbol: ts.Symbol;
723
- pattern?: ts.DestructuringPattern;
724
- aliasSymbol?: ts.Symbol;
725
- aliasTypeArguments?: readonly ts.Type[];
726
- getFlags: () => ts.TypeFlags;
727
- getSymbol: () => ts.Symbol | undefined;
728
- getProperties: () => ts.Symbol[];
729
- getProperty: (propertyName: string) => ts.Symbol | undefined;
730
- getApparentProperties: () => ts.Symbol[];
731
- getCallSignatures: () => readonly ts.Signature[];
732
- getConstructSignatures: () => readonly ts.Signature[];
733
- getStringIndexType: () => ts.Type | undefined;
734
- getNumberIndexType: () => ts.Type | undefined;
735
- getBaseTypes: () => ts.BaseType[] | undefined;
736
- getNonNullableType: () => ts.Type;
737
- getConstraint: () => ts.Type | undefined;
738
- getDefault: () => ts.Type | undefined;
739
- isUnion: () => this is ts.UnionType;
740
- isIntersection: () => this is ts.IntersectionType;
741
- isUnionOrIntersection: () => this is ts.UnionOrIntersectionType;
742
- isLiteral: () => this is ts.LiteralType;
743
- isStringLiteral: () => this is ts.StringLiteralType;
744
- isNumberLiteral: () => this is ts.NumberLiteralType;
745
- isTypeParameter: () => this is ts.TypeParameter;
746
- isClassOrInterface: () => this is ts.InterfaceType;
747
- isClass: () => this is ts.InterfaceType;
748
- isIndexType: () => this is ts.IndexType;
749
- value: ts.PseudoBigInt;
750
- };
751
- /** @internal */
752
- declare const isTruthyNumberType: (type: ts.Type) => boolean;
753
- /** @internal */
754
- declare const isTruthyStringType: (type: ts.Type) => boolean;
755
- /** @internal */
756
- declare const isUnknownType: (type: ts.Type) => boolean;
757
- //#endregion
758
- //#region src/type/type-variant.d.ts
759
- type TypeVariant = "any" | "bigint" | "boolean" | "enum" | "never" | "nullish" | "number" | "object" | "string" | "unknown" | "falsy bigint" | "falsy boolean" | "falsy number" | "falsy string" | "truthy bigint" | "truthy boolean" | "truthy number" | "truthy string";
760
- /**
761
- * Ported from https://github.com/typescript-eslint/typescript-eslint/blob/eb736bbfc22554694400e6a4f97051d845d32e0b/packages/eslint-plugin/src/rules/strict-boolean-expressions.ts#L826 with some enhancements
762
- * Get the variants of an array of types.
763
- * @param types The types to get the variants of
764
- * @returns The variants of the types
765
- * @internal
766
- */
767
- declare function getTypeVariants(types: ts.Type[]): Set<TypeVariant>;
768
- //#endregion
769
655
  //#region src/utils/get-instance-id.d.ts
770
656
  /**
771
657
  * Gets the identifier node of an instance based on AST node relationships.
@@ -774,7 +660,7 @@ declare function getTypeVariants(types: ts.Type[]): Set<TypeVariant>;
774
660
  * @param prev The previous AST node in the traversal (used for context)
775
661
  * @internal
776
662
  */
777
- declare function getInstanceId(node: TSESTree.Node, prev?: TSESTree.Node): TSESTree.ArrayExpression | TSESTree.ArrayPattern | TSESTree.ArrowFunctionExpression | TSESTree.AssignmentExpression | TSESTree.AwaitExpression | TSESTree.BinaryExpression | TSESTree.CallExpression | TSESTree.ChainExpression | TSESTree.ClassExpression | TSESTree.ConditionalExpression | TSESTree.FunctionExpression | TSESTree.Identifier | TSESTree.ImportExpression | TSESTree.JSXElement | TSESTree.JSXFragment | TSESTree.BigIntLiteral | TSESTree.BooleanLiteral | TSESTree.NullLiteral | TSESTree.NumberLiteral | TSESTree.RegExpLiteral | TSESTree.StringLiteral | TSESTree.TemplateLiteral | TSESTree.LogicalExpression | TSESTree.MemberExpressionComputedName | TSESTree.MemberExpressionNonComputedName | TSESTree.MetaProperty | TSESTree.NewExpression | TSESTree.ObjectExpression | TSESTree.ObjectPattern | TSESTree.SequenceExpression | TSESTree.Super | TSESTree.TaggedTemplateExpression | TSESTree.ThisExpression | TSESTree.TSAsExpression | TSESTree.TSInstantiationExpression | TSESTree.TSNonNullExpression | TSESTree.TSSatisfiesExpression | TSESTree.TSTypeAssertion | TSESTree.UnaryExpression | TSESTree.UpdateExpression | TSESTree.YieldExpression | TSESTree.PrivateIdentifier | undefined;
663
+ declare function getInstanceId(node: TSESTree.Node, prev?: TSESTree.Node): TSESTree.ArrayExpression | TSESTree.ArrayPattern | TSESTree.ArrowFunctionExpression | TSESTree.AssignmentExpression | TSESTree.AwaitExpression | TSESTree.BinaryExpression | TSESTree.CallExpression | TSESTree.ChainExpression | TSESTree.ClassExpression | TSESTree.ConditionalExpression | TSESTree.FunctionExpression | TSESTree.Identifier | TSESTree.ImportExpression | TSESTree.JSXElement | TSESTree.JSXFragment | TSESTree.BigIntLiteral | TSESTree.BooleanLiteral | TSESTree.NullLiteral | TSESTree.NumberLiteral | TSESTree.RegExpLiteral | TSESTree.StringLiteral | TSESTree.LogicalExpression | TSESTree.MemberExpressionComputedName | TSESTree.MemberExpressionNonComputedName | TSESTree.MetaProperty | TSESTree.NewExpression | TSESTree.ObjectExpression | TSESTree.ObjectPattern | TSESTree.PrivateIdentifier | TSESTree.SequenceExpression | TSESTree.Super | TSESTree.TaggedTemplateExpression | TSESTree.TemplateLiteral | TSESTree.ThisExpression | TSESTree.TSAsExpression | TSESTree.TSInstantiationExpression | TSESTree.TSNonNullExpression | TSESTree.TSSatisfiesExpression | TSESTree.TSTypeAssertion | TSESTree.UnaryExpression | TSESTree.UpdateExpression | TSESTree.YieldExpression | undefined;
778
664
  //#endregion
779
665
  //#region src/utils/is-from-react.d.ts
780
666
  /**
@@ -833,4 +719,4 @@ declare const isForwardRefCall: isReactAPICall.ReturnType;
833
719
  declare const isMemoCall: isReactAPICall.ReturnType;
834
720
  declare const isLazyCall: isReactAPICall.ReturnType;
835
721
  //#endregion
836
- export { AttributeValue, ClassComponent, Component, ComponentDetectionHint, ComponentEffectPhaseKind, ComponentFlag, ComponentKind, ComponentLifecyclePhaseKind, ComponentPhaseKind, ComponentPhaseRelevance, ComponentStateKind, DEFAULT_COMPONENT_DETECTION_HINT, DEFAULT_JSX_DETECTION_HINT, EffectKind, FunctionComponent, Hook, JSXDetectionHint, JsxConfig, JsxEmit, REACT_BUILTIN_HOOK_NAMES, SemanticEntry, SemanticNode, TypeVariant, findParentAttribute, getAttribute, getAttributeName, getComponentFlagFromInitPath, getComponentNameFromId, getElementType, getFunctionComponentId, getInstanceId, getJsxConfigFromAnnotation, getJsxConfigFromContext, getTypeVariants, hasAnyAttribute, hasAttribute, hasEveryAttribute, hasNoneOrLooseComponentName, isAnyType, isAssignmentToThisState, isBigIntType, isBooleanType, isCaptureOwnerStack, isCaptureOwnerStackCall, isChildrenCount, isChildrenCountCall, isChildrenForEach, isChildrenForEachCall, isChildrenMap, isChildrenMapCall, isChildrenOfCreateElement, isChildrenOnly, isChildrenOnlyCall, isChildrenToArray, isChildrenToArrayCall, isClassComponent, isCloneElement, isCloneElementCall, isComponentDefinition, isComponentDidCatch, isComponentDidMount, isComponentDidUpdate, isComponentName, isComponentNameLoose, isComponentWillMount, isComponentWillReceiveProps, isComponentWillUnmount, isComponentWillUpdate, isComponentWrapperCall, isComponentWrapperCallLoose, isCreateContext, isCreateContextCall, isCreateElement, isCreateElementCall, isCreateRef, isCreateRefCall, isDeclaredInRenderPropLoose, isDirectValueOfRenderPropertyLoose, isEnumType, isFalseLiteralType, isFalsyBigIntType, isFalsyNumberType, isFalsyStringType, isForwardRef, isForwardRefCall, isFragmentElement, isFunctionOfRenderMethod, isGetChildContext, isGetDefaultProps, isGetDerivedStateFromError, isGetDerivedStateFromProps, isGetInitialState, isGetSnapshotBeforeUpdate, isHostElement, isInitializedFromReact, isInstanceIdEqual, isInversePhase, isJsxLike, isJsxText, isLazy, isLazyCall, isMemo, isMemoCall, isNeverType, isNullishType, isNumberType, isObjectType, isPureComponent, isReactAPI, isReactAPICall, isReactHook, isReactHookCall, isReactHookCallWithName, isReactHookCallWithNameAlias, isReactHookId, isReactHookName, isRender, isRenderFunctionLoose, isRenderMethodLike, isRenderPropLoose, isShouldComponentUpdate, isStringType, isThisSetState, isTrueLiteralType, isTruthyBigIntType, isTruthyNumberType, isTruthyStringType, isUnknownType, isUnsafeComponentWillMount, isUnsafeComponentWillReceiveProps, isUnsafeComponentWillUpdate, isUseActionStateCall, isUseCall, isUseCallbackCall, isUseContextCall, isUseDebugValueCall, isUseDeferredValueCall, isUseEffectCall, isUseEffectLikeCall, isUseFormStatusCall, isUseIdCall, isUseImperativeHandleCall, isUseInsertionEffectCall, isUseLayoutEffectCall, isUseMemoCall, isUseOptimisticCall, isUseReducerCall, isUseRefCall, isUseStateCall, isUseSyncExternalStoreCall, isUseTransitionCall, resolveAttributeValue, stringifyJsx, useComponentCollector, useComponentCollectorLegacy, useHookCollector };
722
+ export { AttributeValue, ClassComponent, Component, ComponentDetectionHint, ComponentEffectPhaseKind, ComponentFlag, ComponentKind, ComponentLifecyclePhaseKind, ComponentPhaseKind, ComponentPhaseRelevance, ComponentStateKind, DEFAULT_COMPONENT_DETECTION_HINT, DEFAULT_JSX_DETECTION_HINT, EffectKind, FunctionComponent, Hook, JSXDetectionHint, JsxConfig, JsxEmit, REACT_BUILTIN_HOOK_NAMES, SemanticEntry, SemanticNode, findParentAttribute, getAttribute, getAttributeName, getComponentFlagFromInitPath, getComponentNameFromId, getElementType, getFunctionComponentId, getInstanceId, getJsxConfigFromAnnotation, getJsxConfigFromContext, hasAnyAttribute, hasAttribute, hasEveryAttribute, hasNoneOrLooseComponentName, isAssignmentToThisState, isCaptureOwnerStack, isCaptureOwnerStackCall, isChildrenCount, isChildrenCountCall, isChildrenForEach, isChildrenForEachCall, isChildrenMap, isChildrenMapCall, isChildrenOfCreateElement, isChildrenOnly, isChildrenOnlyCall, isChildrenToArray, isChildrenToArrayCall, isClassComponent, isCloneElement, isCloneElementCall, isComponentDefinition, isComponentDidCatch, isComponentDidMount, isComponentDidUpdate, isComponentName, isComponentNameLoose, isComponentWillMount, isComponentWillReceiveProps, isComponentWillUnmount, isComponentWillUpdate, isComponentWrapperCall, isComponentWrapperCallLoose, isCreateContext, isCreateContextCall, isCreateElement, isCreateElementCall, isCreateRef, isCreateRefCall, isDeclaredInRenderPropLoose, isDirectValueOfRenderPropertyLoose, isForwardRef, isForwardRefCall, isFragmentElement, isFunctionOfRenderMethod, isGetChildContext, isGetDefaultProps, isGetDerivedStateFromError, isGetDerivedStateFromProps, isGetInitialState, isGetSnapshotBeforeUpdate, isHostElement, isInitializedFromReact, isInstanceIdEqual, isInversePhase, isJsxLike, isJsxText, isLazy, isLazyCall, isMemo, isMemoCall, isPureComponent, isReactAPI, isReactAPICall, isReactHook, isReactHookCall, isReactHookCallWithName, isReactHookCallWithNameAlias, isReactHookId, isReactHookName, isRender, isRenderFunctionLoose, isRenderMethodLike, isRenderPropLoose, isShouldComponentUpdate, isThisSetState, isUnsafeComponentWillMount, isUnsafeComponentWillReceiveProps, isUnsafeComponentWillUpdate, isUseActionStateCall, isUseCall, isUseCallbackCall, isUseContextCall, isUseDebugValueCall, isUseDeferredValueCall, isUseEffectCall, isUseEffectLikeCall, isUseFormStatusCall, isUseIdCall, isUseImperativeHandleCall, isUseInsertionEffectCall, isUseLayoutEffectCall, isUseMemoCall, isUseOptimisticCall, isUseReducerCall, isUseRefCall, isUseStateCall, isUseSyncExternalStoreCall, isUseTransitionCall, resolveAttributeValue, stringifyJsx, useComponentCollector, useComponentCollectorLegacy, useHookCollector };
package/dist/index.js CHANGED
@@ -7,8 +7,6 @@ import * as VAR from "@eslint-react/var";
7
7
  import { getStaticValue } from "@typescript-eslint/utils/ast-utils";
8
8
  import { P, isMatching, match } from "ts-pattern";
9
9
  import birecord from "birecord";
10
- import { isFalseLiteralType, isTrueLiteralType, isTypeFlagSet } from "ts-api-utils";
11
- import ts from "typescript";
12
10
 
13
11
  //#region src/utils/is-react-api.ts
14
12
  function isReactAPI(api) {
@@ -1182,83 +1180,4 @@ function isAssignmentToThisState(node) {
1182
1180
  }
1183
1181
 
1184
1182
  //#endregion
1185
- //#region src/type/type-is.ts
1186
- /** @internal */
1187
- const isAnyType = (type) => isTypeFlagSet(type, ts.TypeFlags.TypeParameter | ts.TypeFlags.Any);
1188
- /** @internal */
1189
- const isBigIntType = (type) => isTypeFlagSet(type, ts.TypeFlags.BigIntLike);
1190
- /** @internal */
1191
- const isBooleanType = (type) => isTypeFlagSet(type, ts.TypeFlags.BooleanLike);
1192
- /** @internal */
1193
- const isEnumType = (type) => isTypeFlagSet(type, ts.TypeFlags.EnumLike);
1194
- /** @internal */
1195
- const isFalsyBigIntType = (type) => type.isLiteral() && isMatching({ value: { base10Value: "0" } }, type);
1196
- /** @internal */
1197
- const isFalsyNumberType = (type) => type.isNumberLiteral() && type.value === 0;
1198
- /** @internal */
1199
- const isFalsyStringType = (type) => type.isStringLiteral() && type.value === "";
1200
- /** @internal */
1201
- const isNeverType = (type) => isTypeFlagSet(type, ts.TypeFlags.Never);
1202
- /** @internal */
1203
- const isNullishType = (type) => isTypeFlagSet(type, ts.TypeFlags.Null | ts.TypeFlags.Undefined | ts.TypeFlags.VoidLike);
1204
- /** @internal */
1205
- const isNumberType = (type) => isTypeFlagSet(type, ts.TypeFlags.NumberLike);
1206
- /** @internal */
1207
- const isObjectType = (type) => !isTypeFlagSet(type, ts.TypeFlags.Null | ts.TypeFlags.Undefined | ts.TypeFlags.VoidLike | ts.TypeFlags.BooleanLike | ts.TypeFlags.StringLike | ts.TypeFlags.NumberLike | ts.TypeFlags.BigIntLike | ts.TypeFlags.TypeParameter | ts.TypeFlags.Any | ts.TypeFlags.Unknown | ts.TypeFlags.Never);
1208
- /** @internal */
1209
- const isStringType = (type) => isTypeFlagSet(type, ts.TypeFlags.StringLike);
1210
- /** @internal */
1211
- const isTruthyBigIntType = (type) => type.isLiteral() && isMatching({ value: { base10Value: P.not("0") } }, type);
1212
- /** @internal */
1213
- const isTruthyNumberType = (type) => type.isNumberLiteral() && type.value !== 0;
1214
- /** @internal */
1215
- const isTruthyStringType = (type) => type.isStringLiteral() && type.value !== "";
1216
- /** @internal */
1217
- const isUnknownType = (type) => isTypeFlagSet(type, ts.TypeFlags.Unknown);
1218
-
1219
- //#endregion
1220
- //#region src/type/type-variant.ts
1221
- /**
1222
- * Ported from https://github.com/typescript-eslint/typescript-eslint/blob/eb736bbfc22554694400e6a4f97051d845d32e0b/packages/eslint-plugin/src/rules/strict-boolean-expressions.ts#L826 with some enhancements
1223
- * Get the variants of an array of types.
1224
- * @param types The types to get the variants of
1225
- * @returns The variants of the types
1226
- * @internal
1227
- */
1228
- function getTypeVariants(types) {
1229
- const variants = /* @__PURE__ */ new Set();
1230
- if (types.some(isUnknownType)) {
1231
- variants.add("unknown");
1232
- return variants;
1233
- }
1234
- if (types.some(isNullishType)) variants.add("nullish");
1235
- const booleans = types.filter(isBooleanType);
1236
- const boolean0 = booleans[0];
1237
- if (booleans.length === 1 && boolean0 != null) {
1238
- if (isFalseLiteralType(boolean0)) variants.add("falsy boolean");
1239
- else if (isTrueLiteralType(boolean0)) variants.add("truthy boolean");
1240
- } else if (booleans.length === 2) variants.add("boolean");
1241
- const strings = types.filter(isStringType);
1242
- if (strings.length > 0) {
1243
- const evaluated = match(strings).when((types$1) => types$1.every(isTruthyStringType), () => "truthy string").when((types$1) => types$1.every(isFalsyStringType), () => "falsy string").otherwise(() => "string");
1244
- variants.add(evaluated);
1245
- }
1246
- const bigints = types.filter(isBigIntType);
1247
- if (bigints.length > 0) {
1248
- const evaluated = match(bigints).when((types$1) => types$1.every(isTruthyBigIntType), () => "truthy bigint").when((types$1) => types$1.every(isFalsyBigIntType), () => "falsy bigint").otherwise(() => "bigint");
1249
- variants.add(evaluated);
1250
- }
1251
- const numbers = types.filter(isNumberType);
1252
- if (numbers.length > 0) {
1253
- const evaluated = match(numbers).when((types$1) => types$1.every(isTruthyNumberType), () => "truthy number").when((types$1) => types$1.every(isFalsyNumberType), () => "falsy number").otherwise(() => "number");
1254
- variants.add(evaluated);
1255
- }
1256
- if (types.some(isEnumType)) variants.add("enum");
1257
- if (types.some(isObjectType)) variants.add("object");
1258
- if (types.some(isAnyType)) variants.add("any");
1259
- if (types.some(isNeverType)) variants.add("never");
1260
- return variants;
1261
- }
1262
-
1263
- //#endregion
1264
- export { ComponentDetectionHint, ComponentFlag, ComponentPhaseRelevance, DEFAULT_COMPONENT_DETECTION_HINT, DEFAULT_JSX_DETECTION_HINT, JSXDetectionHint, JsxEmit, REACT_BUILTIN_HOOK_NAMES, findParentAttribute, getAttribute, getAttributeName, getComponentFlagFromInitPath, getComponentNameFromId, getElementType, getFunctionComponentId, getInstanceId, getJsxConfigFromAnnotation, getJsxConfigFromContext, getTypeVariants, hasAnyAttribute, hasAttribute, hasEveryAttribute, hasNoneOrLooseComponentName, isAnyType, isAssignmentToThisState, isBigIntType, isBooleanType, isCaptureOwnerStack, isCaptureOwnerStackCall, isChildrenCount, isChildrenCountCall, isChildrenForEach, isChildrenForEachCall, isChildrenMap, isChildrenMapCall, isChildrenOfCreateElement, isChildrenOnly, isChildrenOnlyCall, isChildrenToArray, isChildrenToArrayCall, isClassComponent, isCloneElement, isCloneElementCall, isComponentDefinition, isComponentDidCatch, isComponentDidMount, isComponentDidUpdate, isComponentName, isComponentNameLoose, isComponentWillMount, isComponentWillReceiveProps, isComponentWillUnmount, isComponentWillUpdate, isComponentWrapperCall, isComponentWrapperCallLoose, isCreateContext, isCreateContextCall, isCreateElement, isCreateElementCall, isCreateRef, isCreateRefCall, isDeclaredInRenderPropLoose, isDirectValueOfRenderPropertyLoose, isEnumType, isFalseLiteralType, isFalsyBigIntType, isFalsyNumberType, isFalsyStringType, isForwardRef, isForwardRefCall, isFragmentElement, isFunctionOfRenderMethod, isGetChildContext, isGetDefaultProps, isGetDerivedStateFromError, isGetDerivedStateFromProps, isGetInitialState, isGetSnapshotBeforeUpdate, isHostElement, isInitializedFromReact, isInstanceIdEqual, isInversePhase, isJsxLike, isJsxText, isLazy, isLazyCall, isMemo, isMemoCall, isNeverType, isNullishType, isNumberType, isObjectType, isPureComponent, isReactAPI, isReactAPICall, isReactHook, isReactHookCall, isReactHookCallWithName, isReactHookCallWithNameAlias, isReactHookId, isReactHookName, isRender, isRenderFunctionLoose, isRenderMethodLike, isRenderPropLoose, isShouldComponentUpdate, isStringType, isThisSetState, isTrueLiteralType, isTruthyBigIntType, isTruthyNumberType, isTruthyStringType, isUnknownType, isUnsafeComponentWillMount, isUnsafeComponentWillReceiveProps, isUnsafeComponentWillUpdate, isUseActionStateCall, isUseCall, isUseCallbackCall, isUseContextCall, isUseDebugValueCall, isUseDeferredValueCall, isUseEffectCall, isUseEffectLikeCall, isUseFormStatusCall, isUseIdCall, isUseImperativeHandleCall, isUseInsertionEffectCall, isUseLayoutEffectCall, isUseMemoCall, isUseOptimisticCall, isUseReducerCall, isUseRefCall, isUseStateCall, isUseSyncExternalStoreCall, isUseTransitionCall, resolveAttributeValue, stringifyJsx, useComponentCollector, useComponentCollectorLegacy, useHookCollector };
1183
+ export { ComponentDetectionHint, ComponentFlag, ComponentPhaseRelevance, DEFAULT_COMPONENT_DETECTION_HINT, DEFAULT_JSX_DETECTION_HINT, JSXDetectionHint, JsxEmit, REACT_BUILTIN_HOOK_NAMES, findParentAttribute, getAttribute, getAttributeName, getComponentFlagFromInitPath, getComponentNameFromId, getElementType, getFunctionComponentId, getInstanceId, getJsxConfigFromAnnotation, getJsxConfigFromContext, hasAnyAttribute, hasAttribute, hasEveryAttribute, hasNoneOrLooseComponentName, isAssignmentToThisState, isCaptureOwnerStack, isCaptureOwnerStackCall, isChildrenCount, isChildrenCountCall, isChildrenForEach, isChildrenForEachCall, isChildrenMap, isChildrenMapCall, isChildrenOfCreateElement, isChildrenOnly, isChildrenOnlyCall, isChildrenToArray, isChildrenToArrayCall, isClassComponent, isCloneElement, isCloneElementCall, isComponentDefinition, isComponentDidCatch, isComponentDidMount, isComponentDidUpdate, isComponentName, isComponentNameLoose, isComponentWillMount, isComponentWillReceiveProps, isComponentWillUnmount, isComponentWillUpdate, isComponentWrapperCall, isComponentWrapperCallLoose, isCreateContext, isCreateContextCall, isCreateElement, isCreateElementCall, isCreateRef, isCreateRefCall, isDeclaredInRenderPropLoose, isDirectValueOfRenderPropertyLoose, isForwardRef, isForwardRefCall, isFragmentElement, isFunctionOfRenderMethod, isGetChildContext, isGetDefaultProps, isGetDerivedStateFromError, isGetDerivedStateFromProps, isGetInitialState, isGetSnapshotBeforeUpdate, isHostElement, isInitializedFromReact, isInstanceIdEqual, isInversePhase, isJsxLike, isJsxText, isLazy, isLazyCall, isMemo, isMemoCall, isPureComponent, isReactAPI, isReactAPICall, isReactHook, isReactHookCall, isReactHookCallWithName, isReactHookCallWithNameAlias, isReactHookId, isReactHookName, isRender, isRenderFunctionLoose, isRenderMethodLike, isRenderPropLoose, isShouldComponentUpdate, isThisSetState, isUnsafeComponentWillMount, isUnsafeComponentWillReceiveProps, isUnsafeComponentWillUpdate, isUseActionStateCall, isUseCall, isUseCallbackCall, isUseContextCall, isUseDebugValueCall, isUseDeferredValueCall, isUseEffectCall, isUseEffectLikeCall, isUseFormStatusCall, isUseIdCall, isUseImperativeHandleCall, isUseInsertionEffectCall, isUseLayoutEffectCall, isUseMemoCall, isUseOptimisticCall, isUseReducerCall, isUseRefCall, isUseStateCall, isUseSyncExternalStoreCall, isUseTransitionCall, resolveAttributeValue, stringifyJsx, useComponentCollector, useComponentCollectorLegacy, useHookCollector };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@eslint-react/core",
3
- "version": "2.0.0-next.180",
3
+ "version": "2.0.0-next.182",
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": {
@@ -34,14 +34,14 @@
34
34
  "birecord": "^0.1.1",
35
35
  "ts-api-utils": "^2.1.0",
36
36
  "ts-pattern": "^5.8.0",
37
- "@eslint-react/ast": "2.0.0-next.180",
38
- "@eslint-react/kit": "2.0.0-next.180",
39
- "@eslint-react/shared": "2.0.0-next.180",
40
- "@eslint-react/eff": "2.0.0-next.180",
41
- "@eslint-react/var": "2.0.0-next.180"
37
+ "@eslint-react/ast": "2.0.0-next.182",
38
+ "@eslint-react/kit": "2.0.0-next.182",
39
+ "@eslint-react/shared": "2.0.0-next.182",
40
+ "@eslint-react/var": "2.0.0-next.182",
41
+ "@eslint-react/eff": "2.0.0-next.182"
42
42
  },
43
43
  "devDependencies": {
44
- "tsdown": "^0.15.0",
44
+ "tsdown": "^0.15.1",
45
45
  "@local/configs": "0.0.0"
46
46
  },
47
47
  "engines": {