@eslint-react/ast 5.26.8 → 5.27.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 +13 -7
- package/dist/index.js +19 -2
- package/package.json +1 -1
package/dist/index.d.ts
CHANGED
|
@@ -4,6 +4,8 @@ import { AST_NODE_TYPES, TSESTree } from "@typescript-eslint/types";
|
|
|
4
4
|
type TSESTreeFunction = TSESTree.ArrowFunctionExpression | TSESTree.FunctionDeclaration | TSESTree.FunctionExpression;
|
|
5
5
|
/** Union of class-like node types. */
|
|
6
6
|
type TSESTreeClass = TSESTree.ClassDeclaration | TSESTree.ClassExpression;
|
|
7
|
+
/** Union of function-like and class-like node types. */
|
|
8
|
+
type TSESTreeFunctionOrClass = TSESTreeFunction | TSESTreeClass;
|
|
7
9
|
/** Union of method and property definition node types. */
|
|
8
10
|
type TSESTreeMethodOrPropertyDefinition = TSESTree.PropertyDefinition | TSESTree.MethodDefinition;
|
|
9
11
|
/** Union of all JSX-related node types. */
|
|
@@ -19,10 +21,10 @@ type TSESTreeDirective = TSESTree.ExpressionStatement & {
|
|
|
19
21
|
};
|
|
20
22
|
/** Union of TypeScript type expression node types. */
|
|
21
23
|
type TSESTreeTypeExpression = TSESTree.TSAsExpression | TSESTree.TSTypeAssertion | TSESTree.TSNonNullExpression | TSESTree.TSSatisfiesExpression | TSESTree.TSInstantiationExpression;
|
|
22
|
-
/**
|
|
23
|
-
type
|
|
24
|
+
/** Union of expression node types that wrap another expression (TypeScript type expressions and chain expressions) — the nodes `Extract.unwrap` strips. */
|
|
25
|
+
type TSESTreeTypeOrChainExpression = TSESTreeTypeExpression | TSESTree.ChainExpression;
|
|
24
26
|
declare namespace check_d_exports {
|
|
25
|
-
export { is, isCallExpression, isClass, isConditional, isDirective, isExpression, isFunction, isIdentifier, isJSX, isJSXElement, isJSXElementOrFragment, isJSXExpressionContainer, isJSXFragment, isJSXSpreadAttribute, isJSXTagNameExpression, isMemberExpression, isObjectExpression, isOneOf, isProperty, isPropertyOrMethod, isReturnStatement, isTypeAssertionExpression, isTypeExpression };
|
|
27
|
+
export { is, isCallExpression, isClass, isConditional, isDirective, isExpression, isFunction, isFunctionOrClass, isIdentifier, isJSX, isJSXElement, isJSXElementOrFragment, isJSXExpressionContainer, isJSXFragment, isJSXSpreadAttribute, isJSXTagNameExpression, isMemberExpression, isObjectExpression, isOneOf, isProperty, isPropertyOrMethod, isReturnStatement, isTypeAssertionExpression, isTypeExpression, isTypeOrChainExpression };
|
|
26
28
|
}
|
|
27
29
|
/** Check if a node is of the given type. */
|
|
28
30
|
declare const is: <NodeType extends AST_NODE_TYPES>(nodeType: NodeType) => (node: TSESTree.Node | null | undefined) => node is Extract<TSESTree.Node, {
|
|
@@ -58,6 +60,8 @@ declare const isReturnStatement: (node: TSESTree.Node | null | undefined) => nod
|
|
|
58
60
|
declare const isClass: (node: TSESTree.Node | null | undefined) => node is TSESTree.ClassDeclarationWithName | TSESTree.ClassDeclarationWithOptionalName | TSESTree.ClassExpression;
|
|
59
61
|
/** Check if a node is a function declaration, function expression, or arrow function expression. */
|
|
60
62
|
declare const isFunction: (node: TSESTree.Node | null | undefined) => node is TSESTree.ArrowFunctionExpressionWithBlockBody | TSESTree.ArrowFunctionExpressionWithExpressionBody | TSESTree.FunctionDeclarationWithName | TSESTree.FunctionDeclarationWithOptionalName | TSESTree.FunctionExpression;
|
|
63
|
+
/** Check if a node is a function declaration, function expression, arrow function expression, class declaration, or class expression. */
|
|
64
|
+
declare const isFunctionOrClass: (node: TSESTree.Node | null | undefined) => node is TSESTree.ArrowFunctionExpressionWithBlockBody | TSESTree.ArrowFunctionExpressionWithExpressionBody | TSESTree.ClassDeclarationWithName | TSESTree.ClassDeclarationWithOptionalName | TSESTree.ClassExpression | TSESTree.FunctionDeclarationWithName | TSESTree.FunctionDeclarationWithOptionalName | TSESTree.FunctionExpression;
|
|
61
65
|
/** Check if a node is a property-like node (property definition, index signature, parameter property, or property signature). */
|
|
62
66
|
declare const isProperty: (node: TSESTree.Node | null | undefined) => node is TSESTree.PropertyDefinitionComputedName | TSESTree.PropertyDefinitionNonComputedName | TSESTree.TSIndexSignature | TSESTree.TSParameterProperty | TSESTree.TSPropertySignatureComputedName | TSESTree.TSPropertySignatureNonComputedName;
|
|
63
67
|
/** Check if a node is a property or method definition. */
|
|
@@ -80,6 +84,8 @@ declare const isJSX: (node: TSESTree.Node | null | undefined) => node is TSESTre
|
|
|
80
84
|
declare const isTypeExpression: (node: TSESTree.Node | null | undefined) => node is TSESTree.TSAsExpression | TSESTree.TSInstantiationExpression | TSESTree.TSNonNullExpression | TSESTree.TSSatisfiesExpression | TSESTree.TSTypeAssertion;
|
|
81
85
|
/** Check if a node is a TypeScript type assertion-like expression (as, assertion, non-null, or satisfies). */
|
|
82
86
|
declare const isTypeAssertionExpression: (node: TSESTree.Node | null | undefined) => node is TSESTree.TSAsExpression | TSESTree.TSNonNullExpression | TSESTree.TSSatisfiesExpression | TSESTree.TSTypeAssertion;
|
|
87
|
+
/** Check if a node is a TypeScript type expression or a chain expression (i.e. a transparent wrapper around an inner expression). */
|
|
88
|
+
declare const isTypeOrChainExpression: (node: TSESTree.Node | null | undefined) => node is TSESTree.ChainExpression | TSESTree.TSAsExpression | TSESTree.TSInstantiationExpression | TSESTree.TSNonNullExpression | TSESTree.TSSatisfiesExpression | TSESTree.TSTypeAssertion;
|
|
83
89
|
/** Check if a node is an expression node. */
|
|
84
90
|
declare const isExpression: (node: TSESTree.Node | null | undefined) => node is TSESTree.ArrayExpression | TSESTree.ArrayPattern | TSESTree.ArrowFunctionExpressionWithBlockBody | TSESTree.ArrowFunctionExpressionWithExpressionBody | TSESTree.AssignmentExpression | TSESTree.AwaitExpression | TSESTree.PrivateInExpression | TSESTree.SymmetricBinaryExpression | 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.SequenceExpression | TSESTree.Super | TSESTree.TaggedTemplateExpression | TSESTree.TemplateLiteral | TSESTree.ThisExpression | TSESTree.TSAsExpression | TSESTree.TSInstantiationExpression | TSESTree.TSNonNullExpression | TSESTree.TSSatisfiesExpression | TSESTree.TSTypeAssertion | TSESTree.UnaryExpressionBitwiseNot | TSESTree.UnaryExpressionDelete | TSESTree.UnaryExpressionMinus | TSESTree.UnaryExpressionNot | TSESTree.UnaryExpressionPlus | TSESTree.UnaryExpressionTypeof | TSESTree.UnaryExpressionVoid | TSESTree.UpdateExpression | TSESTree.YieldNoStarExpression | TSESTree.YieldStarExpression;
|
|
85
91
|
/** Check if a node is a conditional expression or a control flow statement. */
|
|
@@ -106,8 +112,8 @@ declare namespace extract_d_exports {
|
|
|
106
112
|
* @param node The node to unwrap.
|
|
107
113
|
* @returns The innermost non-type-expression node — a reference into the original tree, never a copy.
|
|
108
114
|
*/
|
|
109
|
-
declare function unwrap(node:
|
|
110
|
-
declare function unwrap<T extends TSESTree.Node>(node: T):
|
|
115
|
+
declare function unwrap(node: TSESTreeTypeOrChainExpression): Exclude<TSESTree.Expression, TSESTreeTypeOrChainExpression>;
|
|
116
|
+
declare function unwrap<T extends TSESTree.Node>(node: T): Exclude<T, TSESTreeTypeOrChainExpression>;
|
|
111
117
|
/**
|
|
112
118
|
* Find a property by name in a list of object literal properties, recursing into spread object expressions.
|
|
113
119
|
* @param properties The object literal properties to search.
|
|
@@ -127,7 +133,7 @@ declare function getCalleeName(node: TSESTree.CallExpression): string | null;
|
|
|
127
133
|
* @param node The expression to inspect.
|
|
128
134
|
* @returns The base node followed by each member property in access order.
|
|
129
135
|
*/
|
|
130
|
-
declare function getMemberChain(node: TSESTree.Expression | TSESTree.PrivateIdentifier): (TSESTree.AccessorProperty | TSESTree.ArrayExpression | TSESTree.ArrayPattern | TSESTree.ArrowFunctionExpression | TSESTree.AssignmentExpression | TSESTree.AssignmentPattern | TSESTree.AwaitExpression | TSESTree.BinaryExpression | TSESTree.BlockStatement | TSESTree.BreakStatement | TSESTree.CallExpression | TSESTree.CatchClause | TSESTree.
|
|
136
|
+
declare function getMemberChain(node: TSESTree.Expression | TSESTree.PrivateIdentifier): (TSESTree.AccessorProperty | TSESTree.ArrayExpression | TSESTree.ArrayPattern | TSESTree.ArrowFunctionExpression | TSESTree.AssignmentExpression | TSESTree.AssignmentPattern | TSESTree.AwaitExpression | TSESTree.BinaryExpression | TSESTree.BlockStatement | TSESTree.BreakStatement | TSESTree.CallExpression | TSESTree.CatchClause | TSESTree.ClassBody | TSESTree.ClassDeclaration | TSESTree.ClassExpression | TSESTree.ConditionalExpression | TSESTree.ContinueStatement | TSESTree.DebuggerStatement | TSESTree.Decorator | TSESTree.DoWhileStatement | TSESTree.EmptyStatement | TSESTree.ExportAllDeclaration | TSESTree.ExportDefaultDeclaration | TSESTree.ExportNamedDeclaration | TSESTree.ExportSpecifier | TSESTree.ExpressionStatement | TSESTree.ForInStatement | TSESTree.ForOfStatement | TSESTree.ForStatement | TSESTree.FunctionDeclaration | TSESTree.FunctionExpression | TSESTree.Identifier | TSESTree.IfStatement | TSESTree.ImportAttribute | TSESTree.ImportDeclaration | TSESTree.ImportDefaultSpecifier | TSESTree.ImportExpression | TSESTree.ImportNamespaceSpecifier | TSESTree.ImportSpecifier | TSESTree.JSXAttribute | TSESTree.JSXClosingElement | TSESTree.JSXClosingFragment | TSESTree.JSXElement | TSESTree.JSXEmptyExpression | TSESTree.JSXExpressionContainer | TSESTree.JSXFragment | TSESTree.JSXIdentifier | TSESTree.JSXMemberExpression | TSESTree.JSXNamespacedName | TSESTree.JSXOpeningElement | TSESTree.JSXOpeningFragment | TSESTree.JSXSpreadAttribute | TSESTree.JSXSpreadChild | TSESTree.JSXText | TSESTree.LabeledStatement | TSESTree.Literal | TSESTree.LogicalExpression | TSESTree.MemberExpression | TSESTree.MetaProperty | TSESTree.MethodDefinition | TSESTree.NewExpression | TSESTree.ObjectExpression | TSESTree.ObjectPattern | TSESTree.PrivateIdentifier | TSESTree.Program | TSESTree.Property | TSESTree.PropertyDefinition | TSESTree.RestElement | TSESTree.ReturnStatement | TSESTree.SequenceExpression | TSESTree.SpreadElement | TSESTree.StaticBlock | TSESTree.Super | TSESTree.SwitchCase | TSESTree.SwitchStatement | TSESTree.TaggedTemplateExpression | TSESTree.TemplateElement | TSESTree.TemplateLiteral | TSESTree.ThisExpression | TSESTree.ThrowStatement | TSESTree.TryStatement | TSESTree.TSAbstractAccessorProperty | TSESTree.TSAbstractKeyword | TSESTree.TSAbstractMethodDefinition | TSESTree.TSAbstractPropertyDefinition | TSESTree.TSAnyKeyword | TSESTree.TSArrayType | TSESTree.TSAsyncKeyword | TSESTree.TSBigIntKeyword | TSESTree.TSBooleanKeyword | TSESTree.TSCallSignatureDeclaration | TSESTree.TSClassImplements | TSESTree.TSConditionalType | TSESTree.TSConstructorType | TSESTree.TSConstructSignatureDeclaration | TSESTree.TSDeclareFunction | TSESTree.TSDeclareKeyword | TSESTree.TSEmptyBodyFunctionExpression | TSESTree.TSEnumBody | TSESTree.TSEnumDeclaration | TSESTree.TSEnumMember | TSESTree.TSExportAssignment | TSESTree.TSExportKeyword | TSESTree.TSExternalModuleReference | TSESTree.TSFunctionType | TSESTree.TSImportEqualsDeclaration | TSESTree.TSImportType | TSESTree.TSIndexedAccessType | TSESTree.TSIndexSignature | TSESTree.TSInferType | TSESTree.TSInterfaceBody | TSESTree.TSInterfaceDeclaration | TSESTree.TSInterfaceHeritage | TSESTree.TSIntersectionType | TSESTree.TSIntrinsicKeyword | TSESTree.TSLiteralType | TSESTree.TSMappedType | TSESTree.TSMethodSignature | TSESTree.TSModuleBlock | TSESTree.TSModuleDeclaration | TSESTree.TSNamedTupleMember | TSESTree.TSNamespaceExportDeclaration | TSESTree.TSNeverKeyword | TSESTree.TSNullKeyword | TSESTree.TSNumberKeyword | TSESTree.TSObjectKeyword | TSESTree.TSOptionalType | TSESTree.TSParameterProperty | TSESTree.TSPrivateKeyword | TSESTree.TSPropertySignature | TSESTree.TSProtectedKeyword | TSESTree.TSPublicKeyword | TSESTree.TSQualifiedName | TSESTree.TSReadonlyKeyword | TSESTree.TSRestType | TSESTree.TSStaticKeyword | TSESTree.TSStringKeyword | TSESTree.TSSymbolKeyword | TSESTree.TSTemplateLiteralType | TSESTree.TSThisType | TSESTree.TSTupleType | TSESTree.TSTypeAliasDeclaration | TSESTree.TSTypeAnnotation | TSESTree.TSTypeLiteral | TSESTree.TSTypeOperator | TSESTree.TSTypeParameter | TSESTree.TSTypeParameterDeclaration | TSESTree.TSTypeParameterInstantiation | TSESTree.TSTypePredicate | TSESTree.TSTypeQuery | TSESTree.TSTypeReference | TSESTree.TSUndefinedKeyword | TSESTree.TSUnionType | TSESTree.TSUnknownKeyword | TSESTree.TSVoidKeyword | TSESTree.UnaryExpression | TSESTree.UpdateExpression | TSESTree.VariableDeclaration | TSESTree.VariableDeclarator | TSESTree.WhileStatement | TSESTree.WithStatement | TSESTree.YieldExpression)[];
|
|
131
137
|
/**
|
|
132
138
|
* Collect every write target of an assignment or loop target, expanding
|
|
133
139
|
* destructuring patterns such as `[local, globalValue] = source` or
|
|
@@ -187,4 +193,4 @@ declare function findEnclosingTryBlock(node: TSESTree.Node): TSESTree.TryStateme
|
|
|
187
193
|
*/
|
|
188
194
|
declare function hasEnclosingTryBlock(node: TSESTree.Node): boolean;
|
|
189
195
|
//#endregion
|
|
190
|
-
export { check_d_exports as Check, compare_d_exports as Compare, extract_d_exports as Extract, type TSESTreeClass, type TSESTreeDirective, type TSESTreeFunction, type TSESTreeJSX, type TSESTreeJSXAttributeLike, type TSESTreeJSXElementLike, type TSESTreeMethodOrPropertyDefinition, type TSESTreeTypeExpression, type
|
|
196
|
+
export { check_d_exports as Check, compare_d_exports as Compare, extract_d_exports as Extract, type TSESTreeClass, type TSESTreeDirective, type TSESTreeFunction, type TSESTreeFunctionOrClass, type TSESTreeJSX, type TSESTreeJSXAttributeLike, type TSESTreeJSXElementLike, type TSESTreeMethodOrPropertyDefinition, type TSESTreeTypeExpression, type TSESTreeTypeOrChainExpression, traverse_d_exports as Traverse };
|
package/dist/index.js
CHANGED
|
@@ -10,6 +10,7 @@ var check_exports = /* @__PURE__ */ __exportAll({
|
|
|
10
10
|
isDirective: () => isDirective,
|
|
11
11
|
isExpression: () => isExpression,
|
|
12
12
|
isFunction: () => isFunction$1,
|
|
13
|
+
isFunctionOrClass: () => isFunctionOrClass,
|
|
13
14
|
isIdentifier: () => isIdentifier,
|
|
14
15
|
isJSX: () => isJSX,
|
|
15
16
|
isJSXElement: () => isJSXElement,
|
|
@@ -25,7 +26,8 @@ var check_exports = /* @__PURE__ */ __exportAll({
|
|
|
25
26
|
isPropertyOrMethod: () => isPropertyOrMethod,
|
|
26
27
|
isReturnStatement: () => isReturnStatement,
|
|
27
28
|
isTypeAssertionExpression: () => isTypeAssertionExpression,
|
|
28
|
-
isTypeExpression: () => isTypeExpression
|
|
29
|
+
isTypeExpression: () => isTypeExpression,
|
|
30
|
+
isTypeOrChainExpression: () => isTypeOrChainExpression
|
|
29
31
|
});
|
|
30
32
|
const is = ASTUtils.isNodeOfType;
|
|
31
33
|
const isOneOf = ASTUtils.isNodeOfTypes;
|
|
@@ -45,6 +47,13 @@ const isFunction$1 = isOneOf([
|
|
|
45
47
|
AST_NODE_TYPES.FunctionDeclaration,
|
|
46
48
|
AST_NODE_TYPES.FunctionExpression
|
|
47
49
|
]);
|
|
50
|
+
const isFunctionOrClass = isOneOf([
|
|
51
|
+
AST_NODE_TYPES.ArrowFunctionExpression,
|
|
52
|
+
AST_NODE_TYPES.FunctionDeclaration,
|
|
53
|
+
AST_NODE_TYPES.FunctionExpression,
|
|
54
|
+
AST_NODE_TYPES.ClassDeclaration,
|
|
55
|
+
AST_NODE_TYPES.ClassExpression
|
|
56
|
+
]);
|
|
48
57
|
const isProperty = isOneOf([
|
|
49
58
|
AST_NODE_TYPES.PropertyDefinition,
|
|
50
59
|
AST_NODE_TYPES.TSIndexSignature,
|
|
@@ -92,6 +101,14 @@ const isTypeAssertionExpression = isOneOf([
|
|
|
92
101
|
AST_NODE_TYPES.TSNonNullExpression,
|
|
93
102
|
AST_NODE_TYPES.TSSatisfiesExpression
|
|
94
103
|
]);
|
|
104
|
+
const isTypeOrChainExpression = isOneOf([
|
|
105
|
+
AST_NODE_TYPES.TSAsExpression,
|
|
106
|
+
AST_NODE_TYPES.TSTypeAssertion,
|
|
107
|
+
AST_NODE_TYPES.TSNonNullExpression,
|
|
108
|
+
AST_NODE_TYPES.TSSatisfiesExpression,
|
|
109
|
+
AST_NODE_TYPES.TSInstantiationExpression,
|
|
110
|
+
AST_NODE_TYPES.ChainExpression
|
|
111
|
+
]);
|
|
95
112
|
const isExpression = isOneOf([
|
|
96
113
|
AST_NODE_TYPES.ArrayExpression,
|
|
97
114
|
AST_NODE_TYPES.ArrayPattern,
|
|
@@ -247,7 +264,7 @@ var extract_exports = /* @__PURE__ */ __exportAll({
|
|
|
247
264
|
unwrap: () => unwrap
|
|
248
265
|
});
|
|
249
266
|
function unwrap(node) {
|
|
250
|
-
if (
|
|
267
|
+
if (isTypeOrChainExpression(node)) return unwrap(node.expression);
|
|
251
268
|
return node;
|
|
252
269
|
}
|
|
253
270
|
function findProperty(properties, name) {
|