@ibyar/expressions 0.8.6 → 1.1.0
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/README.md +48 -1
- package/api/abstract.d.ts +1 -0
- package/api/abstract.d.ts.map +1 -0
- package/api/abstract.js +12 -0
- package/api/abstract.js.map +1 -1
- package/api/class/class.d.ts +1 -0
- package/api/class/class.d.ts.map +1 -0
- package/api/class/class.js +603 -472
- package/api/class/class.js.map +1 -1
- package/api/class/decorator.d.ts +1 -0
- package/api/class/decorator.d.ts.map +1 -0
- package/api/class/decorator.js +53 -41
- package/api/class/decorator.js.map +1 -1
- package/api/computing/call.d.ts +1 -0
- package/api/computing/call.d.ts.map +1 -0
- package/api/computing/call.js +83 -69
- package/api/computing/call.js.map +1 -1
- package/api/computing/debugger.d.ts +1 -0
- package/api/computing/debugger.d.ts.map +1 -0
- package/api/computing/debugger.js +40 -28
- package/api/computing/debugger.js.map +1 -1
- package/api/computing/new.d.ts +1 -0
- package/api/computing/new.d.ts.map +1 -0
- package/api/computing/new.js +81 -68
- package/api/computing/new.js.map +1 -1
- package/api/computing/rest.d.ts +1 -0
- package/api/computing/rest.d.ts.map +1 -0
- package/api/computing/rest.js +54 -42
- package/api/computing/rest.js.map +1 -1
- package/api/computing/return.d.ts +1 -0
- package/api/computing/return.d.ts.map +1 -0
- package/api/computing/return.js +52 -40
- package/api/computing/return.js.map +1 -1
- package/api/computing/spread.d.ts +1 -0
- package/api/computing/spread.d.ts.map +1 -0
- package/api/computing/spread.js +70 -58
- package/api/computing/spread.js.map +1 -1
- package/api/computing/throw.d.ts +1 -0
- package/api/computing/throw.d.ts.map +1 -0
- package/api/computing/throw.js +216 -175
- package/api/computing/throw.js.map +1 -1
- package/api/computing/yield.d.ts +1 -0
- package/api/computing/yield.d.ts.map +1 -0
- package/api/computing/yield.js +60 -47
- package/api/computing/yield.js.map +1 -1
- package/api/definition/array.d.ts +1 -0
- package/api/definition/array.d.ts.map +1 -0
- package/api/definition/array.js +147 -122
- package/api/definition/array.js.map +1 -1
- package/api/definition/bind.d.ts +1 -0
- package/api/definition/bind.d.ts.map +1 -0
- package/api/definition/bind.js +85 -70
- package/api/definition/bind.js.map +1 -1
- package/api/definition/comment.d.ts +1 -0
- package/api/definition/comment.d.ts.map +1 -0
- package/api/definition/comment.js +44 -32
- package/api/definition/comment.js.map +1 -1
- package/api/definition/function.d.ts +1 -0
- package/api/definition/function.d.ts.map +1 -0
- package/api/definition/function.js +500 -443
- package/api/definition/function.js.map +1 -1
- package/api/definition/member.d.ts +1 -0
- package/api/definition/member.d.ts.map +1 -0
- package/api/definition/member.js +104 -89
- package/api/definition/member.js.map +1 -1
- package/api/definition/object.d.ts +1 -0
- package/api/definition/object.d.ts.map +1 -0
- package/api/definition/object.js +243 -200
- package/api/definition/object.js.map +1 -1
- package/api/definition/statement.d.ts +1 -0
- package/api/definition/statement.d.ts.map +1 -0
- package/api/definition/statement.js +56 -44
- package/api/definition/statement.js.map +1 -1
- package/api/definition/values.d.ts +1 -0
- package/api/definition/values.d.ts.map +1 -0
- package/api/definition/values.js +228 -160
- package/api/definition/values.js.map +1 -1
- package/api/deserialize/deserialize.d.ts +2 -1
- package/api/deserialize/deserialize.d.ts.map +1 -0
- package/api/deserialize/deserialize.js +5 -7
- package/api/deserialize/deserialize.js.map +1 -1
- package/api/deserialize/type-store.d.ts +1 -0
- package/api/deserialize/type-store.d.ts.map +1 -0
- package/api/expression.d.ts +1 -0
- package/api/expression.d.ts.map +1 -0
- package/api/index.d.ts +1 -0
- package/api/index.d.ts.map +1 -0
- package/api/module/common.d.ts +1 -0
- package/api/module/common.d.ts.map +1 -0
- package/api/module/common.js +63 -50
- package/api/module/common.js.map +1 -1
- package/api/module/export.d.ts +1 -0
- package/api/module/export.d.ts.map +1 -0
- package/api/module/export.js +343 -290
- package/api/module/export.js.map +1 -1
- package/api/module/import.d.ts +1 -0
- package/api/module/import.d.ts.map +1 -0
- package/api/module/import.js +318 -253
- package/api/module/import.js.map +1 -1
- package/api/operators/assignment.d.ts +1 -0
- package/api/operators/assignment.d.ts.map +1 -0
- package/api/operators/assignment.js +88 -75
- package/api/operators/assignment.js.map +1 -1
- package/api/operators/await.d.ts +1 -0
- package/api/operators/await.d.ts.map +1 -0
- package/api/operators/await.js +54 -42
- package/api/operators/await.js.map +1 -1
- package/api/operators/binary.d.ts +1 -0
- package/api/operators/binary.d.ts.map +1 -0
- package/api/operators/binary.js +78 -64
- package/api/operators/binary.js.map +1 -1
- package/api/operators/chaining.d.ts +1 -0
- package/api/operators/chaining.d.ts.map +1 -0
- package/api/operators/chaining.js +56 -44
- package/api/operators/chaining.js.map +1 -1
- package/api/operators/comma.d.ts +1 -0
- package/api/operators/comma.d.ts.map +1 -0
- package/api/operators/comma.js +53 -41
- package/api/operators/comma.js.map +1 -1
- package/api/operators/grouping.d.ts +1 -0
- package/api/operators/grouping.d.ts.map +1 -0
- package/api/operators/grouping.js +51 -39
- package/api/operators/grouping.js.map +1 -1
- package/api/operators/logical.d.ts +1 -0
- package/api/operators/logical.d.ts.map +1 -0
- package/api/operators/logical.js +51 -37
- package/api/operators/logical.js.map +1 -1
- package/api/operators/pipeline.d.ts +1 -0
- package/api/operators/pipeline.d.ts.map +1 -0
- package/api/operators/pipeline.js +95 -81
- package/api/operators/pipeline.js.map +1 -1
- package/api/operators/ternary.d.ts +1 -0
- package/api/operators/ternary.d.ts.map +1 -0
- package/api/operators/ternary.js +69 -55
- package/api/operators/ternary.js.map +1 -1
- package/api/operators/types.d.ts +1 -0
- package/api/operators/types.d.ts.map +1 -0
- package/api/operators/unary.d.ts +1 -0
- package/api/operators/unary.d.ts.map +1 -0
- package/api/operators/unary.js +97 -82
- package/api/operators/unary.js.map +1 -1
- package/api/operators/update.d.ts +1 -0
- package/api/operators/update.d.ts.map +1 -0
- package/api/operators/update.js +78 -62
- package/api/operators/update.js.map +1 -1
- package/api/program.d.ts +1 -0
- package/api/program.d.ts.map +1 -0
- package/api/program.js +53 -40
- package/api/program.js.map +1 -1
- package/api/statement/control/block.d.ts +1 -0
- package/api/statement/control/block.d.ts.map +1 -0
- package/api/statement/control/block.js +65 -53
- package/api/statement/control/block.js.map +1 -1
- package/api/statement/control/empty.d.ts +1 -1
- package/api/statement/control/empty.d.ts.map +1 -0
- package/api/statement/control/empty.js +43 -33
- package/api/statement/control/empty.js.map +1 -1
- package/api/statement/control/if.d.ts +1 -0
- package/api/statement/control/if.d.ts.map +1 -0
- package/api/statement/control/if.js +79 -65
- package/api/statement/control/if.js.map +1 -1
- package/api/statement/control/switch.d.ts +1 -0
- package/api/statement/control/switch.d.ts.map +1 -0
- package/api/statement/control/switch.js +180 -141
- package/api/statement/control/switch.js.map +1 -1
- package/api/statement/control/terminate.d.ts +1 -2
- package/api/statement/control/terminate.d.ts.map +1 -0
- package/api/statement/control/terminate.js +117 -78
- package/api/statement/control/terminate.js.map +1 -1
- package/api/statement/control/with.d.ts +1 -0
- package/api/statement/control/with.d.ts.map +1 -0
- package/api/statement/control/with.js +72 -59
- package/api/statement/control/with.js.map +1 -1
- package/api/statement/declarations/declares.d.ts +1 -0
- package/api/statement/declarations/declares.d.ts.map +1 -0
- package/api/statement/declarations/declares.js +148 -121
- package/api/statement/declarations/declares.js.map +1 -1
- package/api/statement/iterations/for.d.ts +1 -0
- package/api/statement/iterations/for.d.ts.map +1 -0
- package/api/statement/iterations/for.js +337 -277
- package/api/statement/iterations/for.js.map +1 -1
- package/api/statement/iterations/while.d.ts +1 -0
- package/api/statement/iterations/while.d.ts.map +1 -0
- package/api/statement/iterations/while.js +152 -125
- package/api/statement/iterations/while.js.map +1 -1
- package/api/utils.d.ts +1 -0
- package/api/utils.d.ts.map +1 -0
- package/index.d.ts +1 -0
- package/index.d.ts.map +1 -0
- package/package.json +5 -5
- package/scope/builder.d.ts +27 -0
- package/scope/builder.d.ts.map +1 -0
- package/scope/builder.js +73 -0
- package/scope/builder.js.map +1 -0
- package/scope/event.d.ts +1 -0
- package/scope/event.d.ts.map +1 -0
- package/scope/finalizer.d.ts +1 -0
- package/scope/finalizer.d.ts.map +1 -0
- package/scope/index.d.ts +1 -0
- package/scope/index.d.ts.map +1 -0
- package/scope/pool.d.ts +1 -0
- package/scope/pool.d.ts.map +1 -0
- package/scope/proxy.d.ts +1 -0
- package/scope/proxy.d.ts.map +1 -0
- package/scope/proxy.js +1 -0
- package/scope/proxy.js.map +1 -1
- package/scope/scope.d.ts +1 -0
- package/scope/scope.d.ts.map +1 -0
- package/scope/scope.js +17 -11
- package/scope/scope.js.map +1 -1
- package/scope/stack.d.ts +1 -0
- package/scope/stack.d.ts.map +1 -0
- package/scope/stack.js +22 -14
- package/scope/stack.js.map +1 -1
- package/v8/enums.d.ts +1 -0
- package/v8/enums.d.ts.map +1 -0
- package/v8/enums.js +11 -11
- package/v8/enums.js.map +1 -1
- package/v8/factory.d.ts +1 -0
- package/v8/factory.d.ts.map +1 -0
- package/v8/factory.js +3 -1
- package/v8/factory.js.map +1 -1
- package/v8/index.d.ts +1 -0
- package/v8/index.d.ts.map +1 -0
- package/v8/inline.d.ts +1 -0
- package/v8/inline.d.ts.map +1 -0
- package/v8/inline.js +9 -5
- package/v8/inline.js.map +1 -1
- package/v8/language.d.ts +1 -0
- package/v8/language.d.ts.map +1 -0
- package/v8/node.d.ts +1 -0
- package/v8/node.d.ts.map +1 -0
- package/v8/parser.d.ts +1 -0
- package/v8/parser.d.ts.map +1 -0
- package/v8/parser.js +5 -5
- package/v8/parser.js.map +1 -1
- package/v8/stream.d.ts +1 -0
- package/v8/stream.d.ts.map +1 -0
- package/v8/stream.js +17 -7
- package/v8/stream.js.map +1 -1
- package/v8/token.d.ts +1 -0
- package/v8/token.d.ts.map +1 -0
- package/v8/token.js +363 -358
- package/v8/token.js.map +1 -1
- package/visit/index.d.ts +1 -0
- package/visit/index.d.ts.map +1 -0
- package/visit/visitor.d.ts +1 -0
- package/visit/visitor.d.ts.map +1 -0
- package/v8/nodes.d.ts +0 -0
- package/v8/nodes.js +0 -2
- package/v8/nodes.js.map +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"values.js","sourceRoot":"","sources":["../../../../src/expressions/api/definition/values.ts"],"names":[],"mappings":"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","sourcesContent":["import type {\n\tDeclarationExpression, ExpressionNode, NodeDeserializer,\n\tCanFindScope, ExpressionEventPath, VisitNodeType, SourceLocation\n} from '../expression.js';\nimport type { Context, Scope } from '../../scope/scope.js';\nimport type { Stack } from '../../scope/stack.js';\nimport { Deserializer } from '../deserialize/deserialize.js';\nimport { AbstractExpressionNode } from '../abstract.js';\n\n/**\n * An identifier is a sequence of characters in the code that identifies a variable, function, or property.\n * In JavaScript, identifiers are case-sensitive and can contain Unicode letters, $, _, and digits (0-9),\n * but may not start with a digit.\n * An identifier differs from a string in that a string is data,\n * while an identifier is part of the code. In JavaScript,\n * there is no way to convert identifiers to strings,\n * but sometimes it is possible to parse strings into identifiers.\n */\n@Deserializer('Identifier')\nexport class Identifier extends AbstractExpressionNode implements DeclarationExpression, CanFindScope {\n\tstatic fromJSON(node: Identifier): Identifier {\n\t\treturn new Identifier(node.name, node.range, node.loc);\n\t}\n\tconstructor(protected name: string | number, range?: [number, number], loc?: SourceLocation) {\n\t\tsuper(range, loc);\n\t}\n\tgetName() {\n\t\treturn this.name;\n\t}\n\tset(stack: Stack, value: any) {\n\t\treturn stack.set(this.name, value) ? value : void 0;\n\t}\n\tget(stack: Stack, thisContext?: any) {\n\t\tif (thisContext) {\n\t\t\treturn thisContext[this.name];\n\t\t}\n\t\treturn stack.get(this.name);\n\t}\n\tfindScope<T extends object>(stack: Stack): Scope<T>;\n\tfindScope<T extends object>(stack: Stack, scope: Scope<any>): Scope<T>;\n\tfindScope<T extends object>(stack: Stack, scope?: Scope<any>): Scope<T> | undefined {\n\t\tif (scope) {\n\t\t\treturn scope.getInnerScope(this.name);\n\t\t}\n\t\tscope = stack.findScope(this.name);\n\t\treturn scope.getInnerScope(this.name);\n\t}\n\tdeclareVariable(stack: Stack, propertyValue: any): any {\n\t\treturn stack.declareVariable(this.name, propertyValue);\n\t}\n\tgetDeclarationName(): string {\n\t\treturn this.toString();\n\t}\n\tdependency(computed?: true): ExpressionNode[] {\n\t\treturn [this];\n\t}\n\tdependencyPath(computed?: true): ExpressionEventPath[] {\n\t\tconst path: ExpressionEventPath[] = [{ computed: false, path: this.toString() }];\n\t\treturn computed ? [{ computed, path: this.toString(), computedPath: [path] }] : path;\n\t}\n\ttoString(): string {\n\t\treturn String(this.name);\n\t}\n\ttoJson(): object {\n\t\treturn { name: this.name };\n\t}\n}\n\n@Deserializer('ThisExpression')\nexport class ThisExpression extends Identifier {\n\tstatic fromJSON(node: ThisExpression): ThisExpression {\n\t\treturn new ThisExpression(node.range, node.loc);\n\t}\n\tconstructor(\n\t\trange?: [number, number],\n\t\tloc?: SourceLocation) {\n\t\tsuper('this', range, loc);\n\t}\n\ttoJson(): object {\n\t\treturn {};\n\t}\n}\n\n@Deserializer('Literal')\nexport class Literal<T> extends AbstractExpressionNode implements CanFindScope {\n\tstatic fromJSON(node: Literal<any>):\n\t\tLiteral<string>\n\t\t| Literal<number>\n\t\t| Literal<boolean>\n\t\t| Literal<RegExp>\n\t\t| Literal<bigint>\n\t\t| Literal<null>\n\t\t| Literal<undefined> {\n\t\tif (node.bigint) {\n\t\t\treturn new Literal(BigInt(node.bigint), node.raw, undefined, node.bigint, node.range, node.loc);\n\t\t} else if (node.regex) {\n\t\t\treturn new Literal(RegExp(node.regex.pattern, node.regex.flags), node.raw, node.regex, undefined, node.range, node.loc);\n\t\t}\n\t\treturn new Literal(node.value, node.raw, undefined, undefined, node.range, node.loc);\n\t}\n\ttype: 'Literal';\n\tregex?: { pattern: string, flags: string };\n\tbigint?: string;\n\traw?: string\n\tconstructor(\n\t\tpublic value: T,\n\t\traw?: string,\n\t\tregex?: { pattern: string, flags: string },\n\t\tbigint?: string,\n\t\trange?: [number, number],\n\t\tloc?: SourceLocation) {\n\t\tsuper(range, loc);\n\t\traw && (this.raw = raw);\n\t\tregex && (this.regex = regex);\n\t\tbigint && (this.bigint = bigint);\n\t}\n\tgetValue() {\n\t\treturn this.value;\n\t}\n\tgetRegex() {\n\t\treturn this.regex;\n\t}\n\tgetBigint() {\n\t\treturn this.bigint;\n\t}\n\tgeRaw() {\n\t\treturn this.raw;\n\t}\n\tset() {\n\t\tthrow new Error(`${this.constructor.name}#set() has no implementation.`);\n\t}\n\tget(): T {\n\t\treturn this.value;\n\t}\n\tfindScope<V extends Context>(stack: Stack): Scope<V>;\n\tfindScope<V extends Context>(stack: Stack, scope: Scope<Record<PropertyKey, V>>): Scope<V>;\n\tfindScope<V extends Context>(stack: Stack, scope?: Scope<Record<PropertyKey, V>>): Scope<V> | undefined {\n\t\tif (scope) {\n\t\t\treturn scope.getInnerScope(this.value as any);\n\t\t}\n\t\tscope = stack.findScope(this.value as any);\n\t\treturn scope.getInnerScope(this.value as any);\n\t}\n\tdependency(computed: true): ExpressionNode[] {\n\t\treturn computed ? [this] : [];\n\t}\n\tdependencyPath(computed?: true): ExpressionEventPath[] {\n\t\treturn computed ? [{ computed: false, path: this.toString() }] : [];\n\t}\n\ttoString(): string {\n\t\treturn this.raw ?? String(this.value);\n\t}\n\ttoJson(): object {\n\t\tif (this.bigint) {\n\t\t\treturn {\n\t\t\t\tbigint: this.bigint,\n\t\t\t\traw: this.raw,\n\t\t\t};\n\t\t} else if (this.regex) {\n\t\t\treturn {\n\t\t\t\tregex: { pattern: this.regex?.pattern, flags: this.regex?.flags },\n\t\t\t\traw: this.raw,\n\t\t\t};\n\t\t}\n\t\treturn {\n\t\t\tvalue: this.value,\n\t\t\traw: this.raw,\n\t\t};\n\t}\n}\n\nclass TemplateArray extends Array<string> implements TemplateStringsArray {\n\traw: readonly string[];\n\tconstructor(strings: string[]) {\n\t\tsuper(...strings);\n\t\tthis.raw = strings;\n\t}\n}\n\nexport class TemplateLiteralExpressionNode extends AbstractExpressionNode {\n\tstatic visit(node: TemplateLiteralExpressionNode, visitNode: VisitNodeType): void {\n\t\tnode.tag && visitNode(node.tag);\n\t\tnode.expressions.forEach(visitNode);\n\t}\n\tconstructor(\n\t\tprotected quasis: string[],\n\t\tprotected expressions: ExpressionNode[],\n\t\tprotected tag?: ExpressionNode,\n\t\trange?: [number, number],\n\t\tloc?: SourceLocation) {\n\t\tsuper(range, loc);\n\t}\n\tgetTag() {\n\t\treturn this.tag;\n\t}\n\tgetExpressions() {\n\t\treturn this.expressions;\n\t}\n\tset(stack: Stack, value: any) {\n\t\tthrow new Error(`TemplateLiteralExpressionNode#set() has no implementation.`);\n\t}\n\tget(stack: Stack) {\n\t\tconst tagged: Function = this.tag?.get(stack) || String.raw;\n\t\tconst templateStringsArray = new TemplateArray(this.quasis);\n\t\ttemplateStringsArray.raw = templateStringsArray;\n\t\tconst values = this.expressions.map(expr => expr.get(stack));\n\t\treturn tagged(templateStringsArray, ...values);\n\t}\n\tdependency(computed?: true): ExpressionNode[] {\n\t\treturn this.expressions.flatMap(exp => exp.dependency(computed));\n\t}\n\tdependencyPath(computed?: true): ExpressionEventPath[] {\n\t\treturn this.expressions.flatMap(exp => exp.dependencyPath(computed));\n\t}\n\ttoString(): string {\n\t\tlet str = this.tag?.toString() || '';\n\t\tstr += '`';\n\t\tlet i = 0;\n\t\tfor (; i < this.quasis.length - 1; i++) {\n\t\t\tstr += this.quasis[i];\n\t\t\tstr += '${';\n\t\t\tstr += this.expressions[i].toString();\n\t\t\tstr += '}';\n\t\t}\n\t\tstr += this.quasis[i];\n\t\tstr += '`';\n\t\treturn str;\n\t}\n\ttoJson(): object {\n\t\treturn {\n\t\t\tquasis: this.quasis,\n\t\t\texpressions: this.expressions.map(expr => expr.toJSON()),\n\t\t\ttag: this.tag?.toJSON(),\n\t\t};\n\t}\n}\n\n@Deserializer('TemplateLiteral')\nexport class TemplateLiteral extends TemplateLiteralExpressionNode {\n\tstatic fromJSON(node: TemplateLiteral, deserializer: NodeDeserializer): TemplateLiteralExpressionNode {\n\t\treturn new TemplateLiteral(\n\t\t\tnode.quasis,\n\t\t\tnode.expressions.map(deserializer),\n\t\t\tnode.range,\n\t\t\tnode.loc\n\t\t);\n\t}\n\tdeclare protected tag: undefined;\n\tconstructor(\n\t\tquasis: string[],\n\t\texpressions: ExpressionNode[],\n\t\trange?: [number, number],\n\t\tloc?: SourceLocation) {\n\t\tsuper(quasis, expressions, undefined, range, loc);\n\t}\n\toverride getTag(): undefined {\n\t\treturn undefined;\n\t}\n}\n\n@Deserializer('TaggedTemplateExpression')\nexport class TaggedTemplateExpression extends TemplateLiteralExpressionNode {\n\tstatic fromJSON(node: TaggedTemplateExpression, deserializer: NodeDeserializer): TemplateLiteralExpressionNode {\n\t\treturn new TaggedTemplateExpression(\n\t\t\tdeserializer(node.tag),\n\t\t\tnode.quasis,\n\t\t\tnode.expressions.map(deserializer),\n\t\t\tnode.range,\n\t\t\tnode.loc\n\t\t);\n\t}\n\tdeclare protected tag: ExpressionNode;\n\tconstructor(\n\t\ttag: ExpressionNode,\n\t\tquasis: string[],\n\t\texpressions: ExpressionNode[],\n\t\trange?: [number, number],\n\t\tloc?: SourceLocation) {\n\t\tsuper(quasis, expressions, tag, range, loc);\n\t}\n\toverride getTag(): ExpressionNode {\n\t\treturn super.getTag()!;\n\t}\n}\n"]}
|
|
1
|
+
{"version":3,"file":"values.js","sourceRoot":"","sources":["../../../../src/expressions/api/definition/values.ts"],"names":[],"mappings":";AAMA,OAAO,EAAE,YAAY,EAAE,MAAM,+BAA+B,CAAC;AAC7D,OAAO,EAAE,sBAAsB,EAAE,MAAM,gBAAgB,CAAC;AAExD;;;;;;;;GAQG;IAEU,UAAU;4BADtB,YAAY,CAAC,YAAY,CAAC;;;;sBACK,sBAAsB;0BAA9B,SAAQ,WAAsB;;;;YAAtD,6KA+CC;;;YA/CY,uDAAU;;QAIA,IAAI;QAH1B,MAAM,CAAC,QAAQ,CAAC,IAAgB;YAC/B,OAAO,IAAI,UAAU,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,KAAK,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC;QACxD,CAAC;QACD,YAAsB,IAAqB,EAAE,KAAwB,EAAE,GAAoB;YAC1F,KAAK,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC;YADG,SAAI,GAAJ,IAAI,CAAiB;QAE3C,CAAC;QACD,OAAO;YACN,OAAO,IAAI,CAAC,IAAI,CAAC;QAClB,CAAC;QACD,GAAG,CAAC,KAAY,EAAE,KAAU;YAC3B,OAAO,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC;QACrD,CAAC;QACD,GAAG,CAAC,KAAY,EAAE,WAAiB;YAClC,IAAI,WAAW,EAAE;gBAChB,OAAO,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;aAC9B;YACD,OAAO,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAC7B,CAAC;QAGD,SAAS,CAAmB,KAAY,EAAE,KAAkB;YAC3D,IAAI,KAAK,EAAE;gBACV,OAAO,KAAK,CAAC,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;aACtC;YACD,KAAK,GAAG,KAAK,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YACnC,OAAO,KAAK,CAAC,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACvC,CAAC;QACD,eAAe,CAAC,KAAY,EAAE,aAAkB;YAC/C,OAAO,KAAK,CAAC,eAAe,CAAC,IAAI,CAAC,IAAI,EAAE,aAAa,CAAC,CAAC;QACxD,CAAC;QACD,kBAAkB;YACjB,OAAO,IAAI,CAAC,QAAQ,EAAE,CAAC;QACxB,CAAC;QACD,UAAU,CAAC,QAAe;YACzB,OAAO,CAAC,IAAI,CAAC,CAAC;QACf,CAAC;QACD,cAAc,CAAC,QAAe;YAC7B,MAAM,IAAI,GAA0B,CAAC,EAAE,QAAQ,EAAE,KAAK,EAAE,IAAI,EAAE,IAAI,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAC;YACjF,OAAO,QAAQ,CAAC,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,IAAI,CAAC,QAAQ,EAAE,EAAE,YAAY,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;QACtF,CAAC;QACD,QAAQ;YACP,OAAO,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAC1B,CAAC;QACD,MAAM;YACL,OAAO,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,CAAC;QAC5B,CAAC;;;;SA9CW,UAAU;IAkDV,cAAc;4BAD1B,YAAY,CAAC,gBAAgB,CAAC;;;;sBACK,UAAU;8BAAlB,SAAQ,WAAU;;;;YAA9C,6KAYC;;;YAZY,uDAAc;;QAC1B,MAAM,CAAC,QAAQ,CAAC,IAAoB;YACnC,OAAO,IAAI,cAAc,CAAC,IAAI,CAAC,KAAK,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC;QACjD,CAAC;QACD,YACC,KAAwB,EACxB,GAAoB;YACpB,KAAK,CAAC,MAAM,EAAE,KAAK,EAAE,GAAG,CAAC,CAAC;QAC3B,CAAC;QACD,MAAM;YACL,OAAO,EAAE,CAAC;QACX,CAAC;;;;SAXW,cAAc;IAed,OAAO;4BADnB,YAAY,CAAC,SAAS,CAAC;;;;sBACQ,sBAAsB;uBAA9B,SAAQ,WAAsB;;;;YAAtD,6KAqFC;;;YArFY,uDAAO;;QAqBX,KAAK;QApBb,MAAM,CAAC,QAAQ,CAAC,IAAkB;YAQjC,IAAI,IAAI,CAAC,MAAM,EAAE;gBAChB,OAAO,IAAI,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,IAAI,CAAC,GAAG,EAAE,SAAS,EAAE,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,KAAK,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC;aAChG;iBAAM,IAAI,IAAI,CAAC,KAAK,EAAE;gBACtB,OAAO,IAAI,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,EAAE,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,EAAE,IAAI,CAAC,GAAG,EAAE,IAAI,CAAC,KAAK,EAAE,SAAS,EAAE,IAAI,CAAC,KAAK,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC;aACxH;YACD,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC,KAAK,EAAE,IAAI,CAAC,GAAG,EAAE,SAAS,EAAE,SAAS,EAAE,IAAI,CAAC,KAAK,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC;QACtF,CAAC;QAED,KAAK,CAAsC;QAC3C,MAAM,CAAU;QAChB,GAAG,CAAS;QACZ,YACQ,KAAQ,EACf,GAAY,EACZ,KAA0C,EAC1C,MAAe,EACf,KAAwB,EACxB,GAAoB;YACpB,KAAK,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC;YANX,UAAK,GAAL,KAAK,CAAG;YAOf,GAAG,IAAI,CAAC,IAAI,CAAC,GAAG,GAAG,GAAG,CAAC,CAAC;YACxB,KAAK,IAAI,CAAC,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC,CAAC;YAC9B,MAAM,IAAI,CAAC,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC,CAAC;QAClC,CAAC;QACD,QAAQ;YACP,OAAO,IAAI,CAAC,KAAK,CAAC;QACnB,CAAC;QACD,QAAQ;YACP,OAAO,IAAI,CAAC,KAAK,CAAC;QACnB,CAAC;QACD,SAAS;YACR,OAAO,IAAI,CAAC,MAAM,CAAC;QACpB,CAAC;QACD,KAAK;YACJ,OAAO,IAAI,CAAC,GAAG,CAAC;QACjB,CAAC;QACD,GAAG;YACF,MAAM,IAAI,KAAK,CAAC,GAAG,IAAI,CAAC,WAAW,CAAC,IAAI,+BAA+B,CAAC,CAAC;QAC1E,CAAC;QACD,GAAG;YACF,OAAO,IAAI,CAAC,KAAK,CAAC;QACnB,CAAC;QAGD,SAAS,CAAoB,KAAY,EAAE,KAAqC;YAC/E,IAAI,KAAK,EAAE;gBACV,OAAO,KAAK,CAAC,aAAa,CAAC,IAAI,CAAC,KAAY,CAAC,CAAC;aAC9C;YACD,KAAK,GAAG,KAAK,CAAC,SAAS,CAAC,IAAI,CAAC,KAAY,CAAC,CAAC;YAC3C,OAAO,KAAK,CAAC,aAAa,CAAC,IAAI,CAAC,KAAY,CAAC,CAAC;QAC/C,CAAC;QACD,UAAU,CAAC,QAAc;YACxB,OAAO,QAAQ,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;QAC/B,CAAC;QACD,cAAc,CAAC,QAAe;YAC7B,OAAO,QAAQ,CAAC,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,KAAK,EAAE,IAAI,EAAE,IAAI,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;QACrE,CAAC;QACD,QAAQ;YACP,OAAO,IAAI,CAAC,GAAG,IAAI,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QACvC,CAAC;QACD,MAAM;YACL,IAAI,IAAI,CAAC,MAAM,EAAE;gBAChB,OAAO;oBACN,MAAM,EAAE,IAAI,CAAC,MAAM;oBACnB,GAAG,EAAE,IAAI,CAAC,GAAG;iBACb,CAAC;aACF;iBAAM,IAAI,IAAI,CAAC,KAAK,EAAE;gBACtB,OAAO;oBACN,KAAK,EAAE,EAAE,OAAO,EAAE,IAAI,CAAC,KAAK,EAAE,OAAO,EAAE,KAAK,EAAE,IAAI,CAAC,KAAK,EAAE,KAAK,EAAE;oBACjE,GAAG,EAAE,IAAI,CAAC,GAAG;iBACb,CAAC;aACF;YACD,OAAO;gBACN,KAAK,EAAE,IAAI,CAAC,KAAK;gBACjB,GAAG,EAAE,IAAI,CAAC,GAAG;aACb,CAAC;QACH,CAAC;;;;SApFW,OAAO;AAuFpB,MAAM,aAAc,SAAQ,KAAa;IACxC,GAAG,CAAoB;IACvB,YAAY,OAAiB;QAC5B,KAAK,CAAC,GAAG,OAAO,CAAC,CAAC;QAClB,IAAI,CAAC,GAAG,GAAG,OAAO,CAAC;IACpB,CAAC;CACD;AAED,MAAM,OAAO,6BAA8B,SAAQ,sBAAsB;IAM7D;IACA;IACA;IAPX,MAAM,CAAC,KAAK,CAAC,IAAmC,EAAE,SAAwB;QACzE,IAAI,CAAC,GAAG,IAAI,SAAS,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QAChC,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;IACrC,CAAC;IACD,YACW,MAAgB,EAChB,WAA6B,EAC7B,GAAoB,EAC9B,KAAwB,EACxB,GAAoB;QACpB,KAAK,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC;QALR,WAAM,GAAN,MAAM,CAAU;QAChB,gBAAW,GAAX,WAAW,CAAkB;QAC7B,QAAG,GAAH,GAAG,CAAiB;IAI/B,CAAC;IACD,MAAM;QACL,OAAO,IAAI,CAAC,GAAG,CAAC;IACjB,CAAC;IACD,cAAc;QACb,OAAO,IAAI,CAAC,WAAW,CAAC;IACzB,CAAC;IACD,GAAG,CAAC,KAAY,EAAE,KAAU;QAC3B,MAAM,IAAI,KAAK,CAAC,4DAA4D,CAAC,CAAC;IAC/E,CAAC;IACD,GAAG,CAAC,KAAY;QACf,MAAM,MAAM,GAAa,IAAI,CAAC,GAAG,EAAE,GAAG,CAAC,KAAK,CAAC,IAAI,MAAM,CAAC,GAAG,CAAC;QAC5D,MAAM,oBAAoB,GAAG,IAAI,aAAa,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QAC5D,oBAAoB,CAAC,GAAG,GAAG,oBAAoB,CAAC;QAChD,MAAM,MAAM,GAAG,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC;QAC7D,OAAO,MAAM,CAAC,oBAAoB,EAAE,GAAG,MAAM,CAAC,CAAC;IAChD,CAAC;IACD,UAAU,CAAC,QAAe;QACzB,OAAO,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC,CAAC;IAClE,CAAC;IACD,cAAc,CAAC,QAAe;QAC7B,OAAO,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,cAAc,CAAC,QAAQ,CAAC,CAAC,CAAC;IACtE,CAAC;IACD,QAAQ;QACP,IAAI,GAAG,GAAG,IAAI,CAAC,GAAG,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;QACrC,GAAG,IAAI,GAAG,CAAC;QACX,IAAI,CAAC,GAAG,CAAC,CAAC;QACV,OAAO,CAAC,GAAG,IAAI,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC,EAAE,EAAE;YACvC,GAAG,IAAI,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;YACtB,GAAG,IAAI,IAAI,CAAC;YACZ,GAAG,IAAI,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAC;YACtC,GAAG,IAAI,GAAG,CAAC;SACX;QACD,GAAG,IAAI,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;QACtB,GAAG,IAAI,GAAG,CAAC;QACX,OAAO,GAAG,CAAC;IACZ,CAAC;IACD,MAAM;QACL,OAAO;YACN,MAAM,EAAE,IAAI,CAAC,MAAM;YACnB,WAAW,EAAE,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC;YACxD,GAAG,EAAE,IAAI,CAAC,GAAG,EAAE,MAAM,EAAE;SACvB,CAAC;IACH,CAAC;CACD;IAGY,eAAe;4BAD3B,YAAY,CAAC,iBAAiB,CAAC;;;;sBACK,6BAA6B;+BAArC,SAAQ,WAA6B;;;;YAAlE,6KAoBC;;;YApBY,uDAAe;;QAC3B,MAAM,CAAC,QAAQ,CAAC,IAAqB,EAAE,YAA8B;YACpE,OAAO,IAAI,eAAe,CACzB,IAAI,CAAC,MAAM,EACX,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,YAAY,CAAC,EAClC,IAAI,CAAC,KAAK,EACV,IAAI,CAAC,GAAG,CACR,CAAC;QACH,CAAC;QAED,YACC,MAAgB,EAChB,WAA6B,EAC7B,KAAwB,EACxB,GAAoB;YACpB,KAAK,CAAC,MAAM,EAAE,WAAW,EAAE,SAAS,EAAE,KAAK,EAAE,GAAG,CAAC,CAAC;QACnD,CAAC;QACQ,MAAM;YACd,OAAO,SAAS,CAAC;QAClB,CAAC;;;;SAnBW,eAAe;IAuBf,wBAAwB;4BADpC,YAAY,CAAC,0BAA0B,CAAC;;;;sBACK,6BAA6B;wCAArC,SAAQ,WAA6B;;;;YAA3E,6KAsBC;;;YAtBY,uDAAwB;;QACpC,MAAM,CAAC,QAAQ,CAAC,IAA8B,EAAE,YAA8B;YAC7E,OAAO,IAAI,wBAAwB,CAClC,YAAY,CAAC,IAAI,CAAC,GAAG,CAAC,EACtB,IAAI,CAAC,MAAM,EACX,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,YAAY,CAAC,EAClC,IAAI,CAAC,KAAK,EACV,IAAI,CAAC,GAAG,CACR,CAAC;QACH,CAAC;QAED,YACC,GAAmB,EACnB,MAAgB,EAChB,WAA6B,EAC7B,KAAwB,EACxB,GAAoB;YACpB,KAAK,CAAC,MAAM,EAAE,WAAW,EAAE,GAAG,EAAE,KAAK,EAAE,GAAG,CAAC,CAAC;QAC7C,CAAC;QACQ,MAAM;YACd,OAAO,KAAK,CAAC,MAAM,EAAG,CAAC;QACxB,CAAC;;;;SArBW,wBAAwB","sourcesContent":["import type {\n\tDeclarationExpression, ExpressionNode, NodeDeserializer,\n\tCanFindScope, ExpressionEventPath, VisitNodeType, SourceLocation\n} from '../expression.js';\nimport type { Context, Scope } from '../../scope/scope.js';\nimport type { Stack } from '../../scope/stack.js';\nimport { Deserializer } from '../deserialize/deserialize.js';\nimport { AbstractExpressionNode } from '../abstract.js';\n\n/**\n * An identifier is a sequence of characters in the code that identifies a variable, function, or property.\n * In JavaScript, identifiers are case-sensitive and can contain Unicode letters, $, _, and digits (0-9),\n * but may not start with a digit.\n * An identifier differs from a string in that a string is data,\n * while an identifier is part of the code. In JavaScript,\n * there is no way to convert identifiers to strings,\n * but sometimes it is possible to parse strings into identifiers.\n */\n@Deserializer('Identifier')\nexport class Identifier extends AbstractExpressionNode implements DeclarationExpression, CanFindScope {\n\tstatic fromJSON(node: Identifier): Identifier {\n\t\treturn new Identifier(node.name, node.range, node.loc);\n\t}\n\tconstructor(protected name: string | number, range?: [number, number], loc?: SourceLocation) {\n\t\tsuper(range, loc);\n\t}\n\tgetName() {\n\t\treturn this.name;\n\t}\n\tset(stack: Stack, value: any) {\n\t\treturn stack.set(this.name, value) ? value : void 0;\n\t}\n\tget(stack: Stack, thisContext?: any) {\n\t\tif (thisContext) {\n\t\t\treturn thisContext[this.name];\n\t\t}\n\t\treturn stack.get(this.name);\n\t}\n\tfindScope<T extends object>(stack: Stack): Scope<T>;\n\tfindScope<T extends object>(stack: Stack, scope: Scope<any>): Scope<T>;\n\tfindScope<T extends object>(stack: Stack, scope?: Scope<any>): Scope<T> | undefined {\n\t\tif (scope) {\n\t\t\treturn scope.getInnerScope(this.name);\n\t\t}\n\t\tscope = stack.findScope(this.name);\n\t\treturn scope.getInnerScope(this.name);\n\t}\n\tdeclareVariable(stack: Stack, propertyValue: any): any {\n\t\treturn stack.declareVariable(this.name, propertyValue);\n\t}\n\tgetDeclarationName(): string {\n\t\treturn this.toString();\n\t}\n\tdependency(computed?: true): ExpressionNode[] {\n\t\treturn [this];\n\t}\n\tdependencyPath(computed?: true): ExpressionEventPath[] {\n\t\tconst path: ExpressionEventPath[] = [{ computed: false, path: this.toString() }];\n\t\treturn computed ? [{ computed, path: this.toString(), computedPath: [path] }] : path;\n\t}\n\ttoString(): string {\n\t\treturn String(this.name);\n\t}\n\ttoJson(): object {\n\t\treturn { name: this.name };\n\t}\n}\n\n@Deserializer('ThisExpression')\nexport class ThisExpression extends Identifier {\n\tstatic fromJSON(node: ThisExpression): ThisExpression {\n\t\treturn new ThisExpression(node.range, node.loc);\n\t}\n\tconstructor(\n\t\trange?: [number, number],\n\t\tloc?: SourceLocation) {\n\t\tsuper('this', range, loc);\n\t}\n\ttoJson(): object {\n\t\treturn {};\n\t}\n}\n\n@Deserializer('Literal')\nexport class Literal<T> extends AbstractExpressionNode implements CanFindScope {\n\tstatic fromJSON(node: Literal<any>):\n\t\tLiteral<string>\n\t\t| Literal<number>\n\t\t| Literal<boolean>\n\t\t| Literal<RegExp>\n\t\t| Literal<bigint>\n\t\t| Literal<null>\n\t\t| Literal<undefined> {\n\t\tif (node.bigint) {\n\t\t\treturn new Literal(BigInt(node.bigint), node.raw, undefined, node.bigint, node.range, node.loc);\n\t\t} else if (node.regex) {\n\t\t\treturn new Literal(RegExp(node.regex.pattern, node.regex.flags), node.raw, node.regex, undefined, node.range, node.loc);\n\t\t}\n\t\treturn new Literal(node.value, node.raw, undefined, undefined, node.range, node.loc);\n\t}\n\tdeclare type: 'Literal';\n\tregex?: { pattern: string, flags: string };\n\tbigint?: string;\n\traw?: string\n\tconstructor(\n\t\tpublic value: T,\n\t\traw?: string,\n\t\tregex?: { pattern: string, flags: string },\n\t\tbigint?: string,\n\t\trange?: [number, number],\n\t\tloc?: SourceLocation) {\n\t\tsuper(range, loc);\n\t\traw && (this.raw = raw);\n\t\tregex && (this.regex = regex);\n\t\tbigint && (this.bigint = bigint);\n\t}\n\tgetValue() {\n\t\treturn this.value;\n\t}\n\tgetRegex() {\n\t\treturn this.regex;\n\t}\n\tgetBigint() {\n\t\treturn this.bigint;\n\t}\n\tgeRaw() {\n\t\treturn this.raw;\n\t}\n\tset() {\n\t\tthrow new Error(`${this.constructor.name}#set() has no implementation.`);\n\t}\n\tget(): T {\n\t\treturn this.value;\n\t}\n\tfindScope<V extends Context>(stack: Stack): Scope<V>;\n\tfindScope<V extends Context>(stack: Stack, scope: Scope<Record<PropertyKey, V>>): Scope<V>;\n\tfindScope<V extends Context>(stack: Stack, scope?: Scope<Record<PropertyKey, V>>): Scope<V> | undefined {\n\t\tif (scope) {\n\t\t\treturn scope.getInnerScope(this.value as any);\n\t\t}\n\t\tscope = stack.findScope(this.value as any);\n\t\treturn scope.getInnerScope(this.value as any);\n\t}\n\tdependency(computed: true): ExpressionNode[] {\n\t\treturn computed ? [this] : [];\n\t}\n\tdependencyPath(computed?: true): ExpressionEventPath[] {\n\t\treturn computed ? [{ computed: false, path: this.toString() }] : [];\n\t}\n\ttoString(): string {\n\t\treturn this.raw ?? String(this.value);\n\t}\n\ttoJson(): object {\n\t\tif (this.bigint) {\n\t\t\treturn {\n\t\t\t\tbigint: this.bigint,\n\t\t\t\traw: this.raw,\n\t\t\t};\n\t\t} else if (this.regex) {\n\t\t\treturn {\n\t\t\t\tregex: { pattern: this.regex?.pattern, flags: this.regex?.flags },\n\t\t\t\traw: this.raw,\n\t\t\t};\n\t\t}\n\t\treturn {\n\t\t\tvalue: this.value,\n\t\t\traw: this.raw,\n\t\t};\n\t}\n}\n\nclass TemplateArray extends Array<string> implements TemplateStringsArray {\n\traw: readonly string[];\n\tconstructor(strings: string[]) {\n\t\tsuper(...strings);\n\t\tthis.raw = strings;\n\t}\n}\n\nexport class TemplateLiteralExpressionNode extends AbstractExpressionNode {\n\tstatic visit(node: TemplateLiteralExpressionNode, visitNode: VisitNodeType): void {\n\t\tnode.tag && visitNode(node.tag);\n\t\tnode.expressions.forEach(visitNode);\n\t}\n\tconstructor(\n\t\tprotected quasis: string[],\n\t\tprotected expressions: ExpressionNode[],\n\t\tprotected tag?: ExpressionNode,\n\t\trange?: [number, number],\n\t\tloc?: SourceLocation) {\n\t\tsuper(range, loc);\n\t}\n\tgetTag() {\n\t\treturn this.tag;\n\t}\n\tgetExpressions() {\n\t\treturn this.expressions;\n\t}\n\tset(stack: Stack, value: any) {\n\t\tthrow new Error(`TemplateLiteralExpressionNode#set() has no implementation.`);\n\t}\n\tget(stack: Stack) {\n\t\tconst tagged: Function = this.tag?.get(stack) || String.raw;\n\t\tconst templateStringsArray = new TemplateArray(this.quasis);\n\t\ttemplateStringsArray.raw = templateStringsArray;\n\t\tconst values = this.expressions.map(expr => expr.get(stack));\n\t\treturn tagged(templateStringsArray, ...values);\n\t}\n\tdependency(computed?: true): ExpressionNode[] {\n\t\treturn this.expressions.flatMap(exp => exp.dependency(computed));\n\t}\n\tdependencyPath(computed?: true): ExpressionEventPath[] {\n\t\treturn this.expressions.flatMap(exp => exp.dependencyPath(computed));\n\t}\n\ttoString(): string {\n\t\tlet str = this.tag?.toString() || '';\n\t\tstr += '`';\n\t\tlet i = 0;\n\t\tfor (; i < this.quasis.length - 1; i++) {\n\t\t\tstr += this.quasis[i];\n\t\t\tstr += '${';\n\t\t\tstr += this.expressions[i].toString();\n\t\t\tstr += '}';\n\t\t}\n\t\tstr += this.quasis[i];\n\t\tstr += '`';\n\t\treturn str;\n\t}\n\ttoJson(): object {\n\t\treturn {\n\t\t\tquasis: this.quasis,\n\t\t\texpressions: this.expressions.map(expr => expr.toJSON()),\n\t\t\ttag: this.tag?.toJSON(),\n\t\t};\n\t}\n}\n\n@Deserializer('TemplateLiteral')\nexport class TemplateLiteral extends TemplateLiteralExpressionNode {\n\tstatic fromJSON(node: TemplateLiteral, deserializer: NodeDeserializer): TemplateLiteralExpressionNode {\n\t\treturn new TemplateLiteral(\n\t\t\tnode.quasis,\n\t\t\tnode.expressions.map(deserializer),\n\t\t\tnode.range,\n\t\t\tnode.loc\n\t\t);\n\t}\n\tdeclare protected tag: undefined;\n\tconstructor(\n\t\tquasis: string[],\n\t\texpressions: ExpressionNode[],\n\t\trange?: [number, number],\n\t\tloc?: SourceLocation) {\n\t\tsuper(quasis, expressions, undefined, range, loc);\n\t}\n\toverride getTag(): undefined {\n\t\treturn undefined;\n\t}\n}\n\n@Deserializer('TaggedTemplateExpression')\nexport class TaggedTemplateExpression extends TemplateLiteralExpressionNode {\n\tstatic fromJSON(node: TaggedTemplateExpression, deserializer: NodeDeserializer): TemplateLiteralExpressionNode {\n\t\treturn new TaggedTemplateExpression(\n\t\t\tdeserializer(node.tag),\n\t\t\tnode.quasis,\n\t\t\tnode.expressions.map(deserializer),\n\t\t\tnode.range,\n\t\t\tnode.loc\n\t\t);\n\t}\n\tdeclare protected tag: ExpressionNode;\n\tconstructor(\n\t\ttag: ExpressionNode,\n\t\tquasis: string[],\n\t\texpressions: ExpressionNode[],\n\t\trange?: [number, number],\n\t\tloc?: SourceLocation) {\n\t\tsuper(quasis, expressions, tag, range, loc);\n\t}\n\toverride getTag(): ExpressionNode {\n\t\treturn super.getTag()!;\n\t}\n}\n"]}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import type { ExpressionNode, ExpressionNodConstructor } from '../expression.js';
|
|
2
|
-
export declare
|
|
2
|
+
export declare const Deserializer: (param: string) => (constructor: any, context: ClassDecoratorContext<new (...args: any) => any>) => any;
|
|
3
3
|
export declare function getDeserializerType(target: ExpressionNodConstructor<ExpressionNode>): string;
|
|
4
4
|
export declare function serializeNode(node: ExpressionNode): string;
|
|
5
5
|
/**
|
|
@@ -9,3 +9,4 @@ export declare function serializeNode(node: ExpressionNode): string;
|
|
|
9
9
|
*/
|
|
10
10
|
export declare function deserialize(node: ExpressionNode): ExpressionNode;
|
|
11
11
|
export declare function deserializeNode(node: string): ExpressionNode;
|
|
12
|
+
//# sourceMappingURL=deserialize.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"deserialize.d.ts","sourceRoot":"","sources":["../../../../src/expressions/api/deserialize/deserialize.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,wBAAwB,EAAE,MAAM,kBAAkB,CAAC;AAIjF,eAAO,MAAM,YAAY,yGAKxB,CAAC;AAEF,wBAAgB,mBAAmB,CAAC,MAAM,EAAE,wBAAwB,CAAC,cAAc,CAAC,UAEnF;AAED,wBAAgB,aAAa,CAAC,IAAI,EAAE,cAAc,UAEjD;AAGD;;;;GAIG;AACH,wBAAgB,WAAW,CAAC,IAAI,EAAE,cAAc,kBAO/C;AAED,wBAAgB,eAAe,CAAC,IAAI,EAAE,MAAM,kBAG3C"}
|
|
@@ -1,11 +1,9 @@
|
|
|
1
|
+
import { makeClassDecorator } from '@ibyar/decorators';
|
|
1
2
|
import { expressionTypes } from './type-store.js';
|
|
2
|
-
export
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
return target;
|
|
7
|
-
};
|
|
8
|
-
}
|
|
3
|
+
export const Deserializer = makeClassDecorator((type, target) => {
|
|
4
|
+
target.type = type;
|
|
5
|
+
expressionTypes.set(type, target);
|
|
6
|
+
});
|
|
9
7
|
export function getDeserializerType(target) {
|
|
10
8
|
return target.type;
|
|
11
9
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"deserialize.js","sourceRoot":"","sources":["../../../../src/expressions/api/deserialize/deserialize.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,eAAe,EAAE,MAAM,iBAAiB,CAAC;
|
|
1
|
+
{"version":3,"file":"deserialize.js","sourceRoot":"","sources":["../../../../src/expressions/api/deserialize/deserialize.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,kBAAkB,EAAE,MAAM,mBAAmB,CAAC;AACvD,OAAO,EAAE,eAAe,EAAE,MAAM,iBAAiB,CAAC;AAElD,MAAM,CAAC,MAAM,YAAY,GAAG,kBAAkB,CAC7C,CAAC,IAAI,EAAE,MAAM,EAAE,EAAE;IAChB,MAAM,CAAC,IAAI,GAAG,IAAI,CAAC;IACnB,eAAe,CAAC,GAAG,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;AACnC,CAAC,CACD,CAAC;AAEF,MAAM,UAAU,mBAAmB,CAAC,MAAgD;IACnF,OAAO,MAAM,CAAC,IAAI,CAAC;AACpB,CAAC;AAED,MAAM,UAAU,aAAa,CAAC,IAAoB;IACjD,OAAO,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC;AAC7B,CAAC;AAGD;;;;GAIG;AACH,MAAM,UAAU,WAAW,CAAC,IAAoB;IAC/C,MAAM,QAAQ,GAAG,eAAe,CAAC,GAAG,CAAO,IAAK,CAAC,IAAI,CAAC,EAAE,QAAQ,CAAC;IACjE,IAAI,QAAQ,EAAE;QACb,OAAO,QAAQ,CAAC,IAAI,EAAE,WAAW,CAAC,CAAC;KACnC;SAAM;QACN,MAAM,IAAI,KAAK,CAAC,4CAA4C,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;KACrF;AACF,CAAC;AAED,MAAM,UAAU,eAAe,CAAC,IAAY;IAC3C,MAAM,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;IAC7B,OAAO,WAAW,CAAC,GAAG,CAAC,CAAC;AACzB,CAAC","sourcesContent":["import type { ExpressionNode, ExpressionNodConstructor } from '../expression.js';\nimport { makeClassDecorator } from '@ibyar/decorators';\nimport { expressionTypes } from './type-store.js';\n\nexport const Deserializer = makeClassDecorator<string, ExpressionNodConstructor<ExpressionNode>>(\n\t(type, target) => {\n\t\ttarget.type = type;\n\t\texpressionTypes.set(type, target);\n\t}\n);\n\nexport function getDeserializerType(target: ExpressionNodConstructor<ExpressionNode>) {\n\treturn target.type;\n}\n\nexport function serializeNode(node: ExpressionNode) {\n\treturn JSON.stringify(node);\n}\n\n\n/**\n * convert from json expression `JSON.stringify(node)` or `serializeNode` to `ExpressionNode`\n * @param node as type `NodeJsonType`\n * @returns ExpressionNode\n */\nexport function deserialize(node: ExpressionNode) {\n\tconst fromJSON = expressionTypes.get((<any>node).type)?.fromJSON;\n\tif (fromJSON) {\n\t\treturn fromJSON(node, deserialize);\n\t} else {\n\t\tthrow new Error(`Couldn't find Expression class for name: ${JSON.stringify(node)}.`);\n\t}\n}\n\nexport function deserializeNode(node: string) {\n\tconst exp = JSON.parse(node);\n\treturn deserialize(exp);\n}\n"]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"type-store.d.ts","sourceRoot":"","sources":["../../../../src/expressions/api/deserialize/type-store.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,wBAAwB,EAAE,MAAM,kBAAkB,CAAC;AAGjF,eAAO,MAAM,eAAe,EAAE,GAAG,CAAC,MAAM,EAAE,wBAAwB,CAAC,cAAc,CAAC,CAAa,CAAC"}
|
package/api/expression.d.ts
CHANGED
|
@@ -207,3 +207,4 @@ export interface CanFindScope {
|
|
|
207
207
|
findScope<V extends Context>(stack: Stack, scope: Scope<Record<PropertyKey, V>>): Scope<V>;
|
|
208
208
|
findScope<V extends Context>(stack: Stack, scope?: Scope<Record<PropertyKey, V>>): Scope<V> | undefined;
|
|
209
209
|
}
|
|
210
|
+
//# sourceMappingURL=expression.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"expression.d.ts","sourceRoot":"","sources":["../../../src/expressions/api/expression.ts"],"names":[],"mappings":"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"}
|
package/api/index.d.ts
CHANGED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/expressions/api/index.ts"],"names":[],"mappings":"AAAA,cAAc,iBAAiB,CAAC;AAChC,cAAc,eAAe,CAAC;AAE9B,cAAc,8BAA8B,CAAC;AAE7C,cAAc,cAAc,CAAC;AAE7B,cAAc,wBAAwB,CAAC;AACvC,cAAc,uBAAuB,CAAC;AACtC,cAAc,yBAAyB,CAAC;AACxC,cAAc,0BAA0B,CAAC;AACzC,cAAc,wBAAwB,CAAC;AACvC,cAAc,sBAAsB,CAAC;AACrC,cAAc,wBAAwB,CAAC;AACvC,cAAc,2BAA2B,CAAC;AAE1C,cAAc,qBAAqB,CAAC;AACpC,cAAc,yBAAyB,CAAC;AACxC,cAAc,oBAAoB,CAAC;AACnC,cAAc,uBAAuB,CAAC;AACtC,cAAc,uBAAuB,CAAC;AACtC,cAAc,qBAAqB,CAAC;AACpC,cAAc,sBAAsB,CAAC;AACrC,cAAc,sBAAsB,CAAC;AAErC,cAAc,2BAA2B,CAAC;AAC1C,cAAc,sBAAsB,CAAC;AACrC,cAAc,uBAAuB,CAAC;AACtC,cAAc,yBAAyB,CAAC;AACxC,cAAc,sBAAsB,CAAC;AACrC,cAAc,yBAAyB,CAAC;AACxC,cAAc,wBAAwB,CAAC;AACvC,cAAc,yBAAyB,CAAC;AACxC,cAAc,wBAAwB,CAAC;AACvC,cAAc,sBAAsB,CAAC;AACrC,cAAc,sBAAsB,CAAC;AACrC,cAAc,uBAAuB,CAAC;AAEtC,cAAc,8BAA8B,CAAC;AAC7C,cAAc,8BAA8B,CAAC;AAC7C,cAAc,2BAA2B,CAAC;AAC1C,cAAc,+BAA+B,CAAC;AAC9C,cAAc,kCAAkC,CAAC;AACjD,cAAc,6BAA6B,CAAC;AAE5C,cAAc,sCAAsC,CAAC;AAErD,cAAc,+BAA+B,CAAC;AAC9C,cAAc,iCAAiC,CAAC"}
|
package/api/module/common.d.ts
CHANGED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"common.d.ts","sourceRoot":"","sources":["../../../../src/expressions/api/module/common.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACX,mBAAmB,EAAE,cAAc,EAAE,gBAAgB,EACrD,cAAc,EAAE,aAAa,EAC7B,MAAM,kBAAkB,CAAC;AAC1B,OAAO,EAAE,KAAK,EAAE,MAAM,sBAAsB,CAAC;AAC7C,OAAO,EAAE,sBAAsB,EAAE,MAAM,gBAAgB,CAAC;AACxD,OAAO,EAAE,UAAU,EAAE,OAAO,EAAE,MAAM,yBAAyB,CAAC;AAG9D,8BAAsB,eAAgB,SAAQ,sBAAsB;IACvD,SAAS,CAAC,KAAK,EAAE,UAAU;gBAAjB,KAAK,EAAE,UAAU,EAAE,KAAK,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC,EAAE,GAAG,CAAC,EAAE,cAAc;IAGvF,QAAQ;IAGR,YAAY;IAGZ,MAAM,IAAI,MAAM;CAKhB;AAID,qBACa,eAAgB,SAAQ,sBAAsB;IAezD,OAAO,CAAC,GAAG;IACX,OAAO,CAAC,KAAK;IAfd,MAAM,CAAC,QAAQ,CAAC,IAAI,EAAE,eAAe,EAAE,YAAY,EAAE,gBAAgB,GAAG,eAAe;IAQvF,MAAM,CAAC,KAAK,CAAC,IAAI,EAAE,eAAe,EAAE,SAAS,EAAE,aAAa,GAAG,IAAI;gBAM1D,GAAG,EAAE,UAAU,GAAG,OAAO,CAAC,MAAM,CAAC,EACjC,KAAK,EAAE,OAAO,CAAC,MAAM,CAAC,EAC9B,KAAK,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC,EACxB,GAAG,CAAC,EAAE,cAAc;IAGrB,MAAM;IAGN,QAAQ;IAGR,GAAG,CAAC,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,GAAG;IAG5B,GAAG,CAAC,KAAK,EAAE,KAAK,EAAE,WAAW,CAAC,EAAE,GAAG,GAAG;QAAE,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAAA;KAAE;IAK/D,UAAU,CAAC,QAAQ,CAAC,EAAE,IAAI,GAAG,cAAc,EAAE;IAG7C,cAAc,CAAC,QAAQ,CAAC,EAAE,IAAI,GAAG,mBAAmB,EAAE;IAGtD,QAAQ,IAAI,MAAM;IAGlB,MAAM,IAAI,MAAM;CAMhB"}
|
package/api/module/common.js
CHANGED
|
@@ -1,9 +1,8 @@
|
|
|
1
|
-
|
|
2
|
-
import { __decorate, __metadata } from "tslib";
|
|
1
|
+
import { __esDecorate, __runInitializers } from "tslib";
|
|
3
2
|
import { AbstractExpressionNode } from '../abstract.js';
|
|
4
|
-
import { Literal } from '../definition/values.js';
|
|
5
3
|
import { Deserializer } from '../deserialize/deserialize.js';
|
|
6
4
|
export class ModuleSpecifier extends AbstractExpressionNode {
|
|
5
|
+
local;
|
|
7
6
|
constructor(local, range, loc) {
|
|
8
7
|
super(range, loc);
|
|
9
8
|
this.local = local;
|
|
@@ -20,52 +19,66 @@ export class ModuleSpecifier extends AbstractExpressionNode {
|
|
|
20
19
|
};
|
|
21
20
|
}
|
|
22
21
|
}
|
|
23
|
-
let ImportAttribute =
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
}
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
22
|
+
let ImportAttribute = (() => {
|
|
23
|
+
let _classDecorators = [Deserializer('ImportAttribute')];
|
|
24
|
+
let _classDescriptor;
|
|
25
|
+
let _classExtraInitializers = [];
|
|
26
|
+
let _classThis;
|
|
27
|
+
let _classSuper = AbstractExpressionNode;
|
|
28
|
+
var ImportAttribute = class extends _classSuper {
|
|
29
|
+
static { _classThis = this; }
|
|
30
|
+
static {
|
|
31
|
+
const _metadata = typeof Symbol === "function" && Symbol.metadata ? Object.create(_classSuper[Symbol.metadata] ?? null) : void 0;
|
|
32
|
+
__esDecorate(null, _classDescriptor = { value: _classThis }, _classDecorators, { kind: "class", name: _classThis.name, metadata: _metadata }, null, _classExtraInitializers);
|
|
33
|
+
ImportAttribute = _classThis = _classDescriptor.value;
|
|
34
|
+
if (_metadata) Object.defineProperty(_classThis, Symbol.metadata, { enumerable: true, configurable: true, writable: true, value: _metadata });
|
|
35
|
+
__runInitializers(_classThis, _classExtraInitializers);
|
|
36
|
+
}
|
|
37
|
+
key;
|
|
38
|
+
value;
|
|
39
|
+
static fromJSON(node, deserializer) {
|
|
40
|
+
return new ImportAttribute(deserializer(node.key), deserializer(node.value), node.range, node.loc);
|
|
41
|
+
}
|
|
42
|
+
static visit(node, visitNode) {
|
|
43
|
+
visitNode(node.key);
|
|
44
|
+
visitNode(node.value);
|
|
45
|
+
}
|
|
46
|
+
constructor(key, value, range, loc) {
|
|
47
|
+
super(range, loc);
|
|
48
|
+
this.key = key;
|
|
49
|
+
this.value = value;
|
|
50
|
+
}
|
|
51
|
+
getKey() {
|
|
52
|
+
return this.key;
|
|
53
|
+
}
|
|
54
|
+
getValue() {
|
|
55
|
+
return this.value;
|
|
56
|
+
}
|
|
57
|
+
set(stack, value) {
|
|
58
|
+
throw new Error('Method not implemented.');
|
|
59
|
+
}
|
|
60
|
+
get(stack, thisContext) {
|
|
61
|
+
const key = this.key.get(stack);
|
|
62
|
+
const value = this.value.get();
|
|
63
|
+
return { [key]: value };
|
|
64
|
+
}
|
|
65
|
+
dependency(computed) {
|
|
66
|
+
return [];
|
|
67
|
+
}
|
|
68
|
+
dependencyPath(computed) {
|
|
69
|
+
return [];
|
|
70
|
+
}
|
|
71
|
+
toString() {
|
|
72
|
+
return `${this.key.toString()}: ${this.value.toString()}`;
|
|
73
|
+
}
|
|
74
|
+
toJson() {
|
|
75
|
+
return {
|
|
76
|
+
key: this.key.toJSON(),
|
|
77
|
+
value: this.value.toJSON(),
|
|
78
|
+
};
|
|
79
|
+
}
|
|
80
|
+
};
|
|
81
|
+
return ImportAttribute = _classThis;
|
|
82
|
+
})();
|
|
70
83
|
export { ImportAttribute };
|
|
71
84
|
//# sourceMappingURL=common.js.map
|
package/api/module/common.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"common.js","sourceRoot":"","sources":["../../../../src/expressions/api/module/common.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"common.js","sourceRoot":"","sources":["../../../../src/expressions/api/module/common.ts"],"names":[],"mappings":";AAKA,OAAO,EAAE,sBAAsB,EAAE,MAAM,gBAAgB,CAAC;AAExD,OAAO,EAAE,YAAY,EAAE,MAAM,+BAA+B,CAAC;AAE7D,MAAM,OAAgB,eAAgB,SAAQ,sBAAsB;IAC7C;IAAtB,YAAsB,KAAiB,EAAE,KAAwB,EAAE,GAAoB;QACtF,KAAK,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC;QADG,UAAK,GAAL,KAAK,CAAY;IAEvC,CAAC;IACD,QAAQ;QACP,OAAO,IAAI,CAAC,KAAK,CAAC;IACnB,CAAC;IACD,YAAY;QACX,OAAO,IAAI,CAAC,KAAK,CAAC,OAAO,EAAE,CAAC;IAC7B,CAAC;IACD,MAAM;QACL,OAAO;YACN,KAAK,EAAE,IAAI,CAAC,KAAK,CAAC,MAAM,EAAE;SAC1B,CAAC;IACH,CAAC;CACD;IAKY,eAAe;4BAD3B,YAAY,CAAC,iBAAiB,CAAC;;;;sBACK,sBAAsB;+BAA9B,SAAQ,WAAsB;;;;YAA3D,6KAkDC;;;YAlDY,uDAAe;;QAelB,GAAG;QACH,KAAK;QAfd,MAAM,CAAC,QAAQ,CAAC,IAAqB,EAAE,YAA8B;YACpE,OAAO,IAAI,eAAe,CACzB,YAAY,CAAC,IAAI,CAAC,GAAG,CAAe,EACpC,YAAY,CAAC,IAAI,CAAC,KAAK,CAAoB,EAC3C,IAAI,CAAC,KAAK,EACV,IAAI,CAAC,GAAG,CACR,CAAC;QACH,CAAC;QACD,MAAM,CAAC,KAAK,CAAC,IAAqB,EAAE,SAAwB;YAC3D,SAAS,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;YACpB,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QACvB,CAAC;QAED,YACS,GAAiC,EACjC,KAAsB,EAC9B,KAAwB,EACxB,GAAoB;YACpB,KAAK,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC;YAJV,QAAG,GAAH,GAAG,CAA8B;YACjC,UAAK,GAAL,KAAK,CAAiB;QAI/B,CAAC;QACD,MAAM;YACL,OAAO,IAAI,CAAC,GAAG,CAAC;QACjB,CAAC;QACD,QAAQ;YACP,OAAO,IAAI,CAAC,KAAK,CAAC;QACnB,CAAC;QACD,GAAG,CAAC,KAAY,EAAE,KAAU;YAC3B,MAAM,IAAI,KAAK,CAAC,yBAAyB,CAAC,CAAC;QAC5C,CAAC;QACD,GAAG,CAAC,KAAY,EAAE,WAAiB;YAClC,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;YAChC,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC;YAC/B,OAAO,EAAE,CAAC,GAAG,CAAC,EAAE,KAAK,EAAE,CAAC;QACzB,CAAC;QACD,UAAU,CAAC,QAAe;YACzB,OAAO,EAAE,CAAC;QACX,CAAC;QACD,cAAc,CAAC,QAAe;YAC7B,OAAO,EAAE,CAAC;QACX,CAAC;QACD,QAAQ;YACP,OAAO,GAAG,IAAI,CAAC,GAAG,CAAC,QAAQ,EAAE,KAAK,IAAI,CAAC,KAAK,CAAC,QAAQ,EAAE,EAAE,CAAC;QAC3D,CAAC;QACD,MAAM;YACL,OAAO;gBACN,GAAG,EAAE,IAAI,CAAC,GAAG,CAAC,MAAM,EAAE;gBACtB,KAAK,EAAE,IAAI,CAAC,KAAK,CAAC,MAAM,EAAE;aAC1B,CAAC;QACH,CAAC;;;;SAjDW,eAAe","sourcesContent":["import type {\n\tExpressionEventPath, ExpressionNode, NodeDeserializer,\n\tSourceLocation, VisitNodeType\n} from '../expression.js';\nimport { Stack } from '../../scope/stack.js';\nimport { AbstractExpressionNode } from '../abstract.js';\nimport { Identifier, Literal } from '../definition/values.js';\nimport { Deserializer } from '../deserialize/deserialize.js';\n\nexport abstract class ModuleSpecifier extends AbstractExpressionNode {\n\tconstructor(protected local: Identifier, range?: [number, number], loc?: SourceLocation) {\n\t\tsuper(range, loc);\n\t}\n\tgetLocal() {\n\t\treturn this.local;\n\t}\n\tgetLocalName() {\n\t\treturn this.local.getName();\n\t}\n\ttoJson(): object {\n\t\treturn {\n\t\t\tlocal: this.local.toJSON()\n\t\t};\n\t}\n}\n\n\n\n@Deserializer('ImportAttribute')\nexport class ImportAttribute extends AbstractExpressionNode {\n\tstatic fromJSON(node: ImportAttribute, deserializer: NodeDeserializer): ImportAttribute {\n\t\treturn new ImportAttribute(\n\t\t\tdeserializer(node.key) as Identifier,\n\t\t\tdeserializer(node.value) as Literal<string>,\n\t\t\tnode.range,\n\t\t\tnode.loc\n\t\t);\n\t}\n\tstatic visit(node: ImportAttribute, visitNode: VisitNodeType): void {\n\t\tvisitNode(node.key);\n\t\tvisitNode(node.value);\n\t}\n\n\tconstructor(\n\t\tprivate key: Identifier | Literal<string>,\n\t\tprivate value: Literal<string>,\n\t\trange?: [number, number],\n\t\tloc?: SourceLocation) {\n\t\tsuper(range, loc);\n\t}\n\tgetKey() {\n\t\treturn this.key;\n\t}\n\tgetValue() {\n\t\treturn this.value;\n\t}\n\tset(stack: Stack, value: any) {\n\t\tthrow new Error('Method not implemented.');\n\t}\n\tget(stack: Stack, thisContext?: any): { [key: string]: string } {\n\t\tconst key = this.key.get(stack);\n\t\tconst value = this.value.get();\n\t\treturn { [key]: value };\n\t}\n\tdependency(computed?: true): ExpressionNode[] {\n\t\treturn [];\n\t}\n\tdependencyPath(computed?: true): ExpressionEventPath[] {\n\t\treturn [];\n\t}\n\ttoString(): string {\n\t\treturn `${this.key.toString()}: ${this.value.toString()}`;\n\t}\n\ttoJson(): object {\n\t\treturn {\n\t\t\tkey: this.key.toJSON(),\n\t\t\tvalue: this.value.toJSON(),\n\t\t};\n\t}\n}\n"]}
|
package/api/module/export.d.ts
CHANGED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"export.d.ts","sourceRoot":"","sources":["../../../../src/expressions/api/module/export.ts"],"names":[],"mappings":"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"}
|