mirror of https://github.com/sveltejs/svelte
parent
08faaeb601
commit
06410b83cd
@ -1,28 +1,13 @@
|
||||
import {
|
||||
Node,
|
||||
Identifier,
|
||||
ArrayExpression,
|
||||
ObjectExpression,
|
||||
ThisExpression,
|
||||
ObjectPattern,
|
||||
ArrayPattern,
|
||||
Literal,
|
||||
} from "estree";
|
||||
|
||||
type ObjectType =
|
||||
| Identifier
|
||||
| ThisExpression
|
||||
| ArrayExpression
|
||||
| ObjectExpression
|
||||
| ArrayPattern
|
||||
| ObjectPattern
|
||||
| Literal;
|
||||
|
||||
export default function get_object(node: Node): ObjectType {
|
||||
export default function get_object(node: Node): Identifier {
|
||||
while (true) {
|
||||
if (node.type === "MemberExpression") node = node.object;
|
||||
else if (node.type === "CallExpression") node = node.callee;
|
||||
else break;
|
||||
}
|
||||
return node as ObjectType;
|
||||
return node as Identifier;
|
||||
}
|
||||
|
||||
Loading…
Reference in new issue