@vue/compiler-vapor 3.6.0-alpha.2 → 3.6.0-alpha.4
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/compiler-vapor.cjs.js +536 -199
- package/dist/compiler-vapor.d.ts +35 -4
- package/dist/compiler-vapor.esm-browser.js +924 -11570
- package/package.json +4 -4
package/dist/compiler-vapor.d.ts
CHANGED
|
@@ -2,7 +2,8 @@ import { SimpleExpressionNode, RootNode, TemplateChildNode, DirectiveNode, Compo
|
|
|
2
2
|
export { parse } from '@vue/compiler-dom';
|
|
3
3
|
import * as packages_runtime_vapor_src from 'packages/runtime-vapor/src';
|
|
4
4
|
import * as packages_runtime_dom_src from 'packages/runtime-dom/src';
|
|
5
|
-
import { Prettify } from '@vue/shared';
|
|
5
|
+
import { Prettify, Namespace } from '@vue/shared';
|
|
6
|
+
import { ImportItem } from '@vue/compiler-core';
|
|
6
7
|
|
|
7
8
|
export interface IRProp extends Omit<DirectiveTransformResult, 'value'> {
|
|
8
9
|
values: SimpleExpressionNode[];
|
|
@@ -81,6 +82,7 @@ export declare enum IRNodeTypes {
|
|
|
81
82
|
}
|
|
82
83
|
export interface BaseIRNode {
|
|
83
84
|
type: IRNodeTypes;
|
|
85
|
+
key?: SimpleExpressionNode | undefined;
|
|
84
86
|
}
|
|
85
87
|
export type CoreHelper = keyof typeof packages_runtime_dom_src;
|
|
86
88
|
export type VaporHelper = keyof typeof packages_runtime_vapor_src;
|
|
@@ -92,12 +94,14 @@ export interface BlockIRNode extends BaseIRNode {
|
|
|
92
94
|
effect: IREffect[];
|
|
93
95
|
operation: OperationNode[];
|
|
94
96
|
returns: number[];
|
|
97
|
+
hasDeferredVShow: boolean;
|
|
95
98
|
}
|
|
96
99
|
export interface RootIRNode {
|
|
97
100
|
type: IRNodeTypes.ROOT;
|
|
98
101
|
node: RootNode;
|
|
99
102
|
source: string;
|
|
100
|
-
template: string
|
|
103
|
+
template: Map<string, Namespace>;
|
|
104
|
+
templateIndexMap: Map<string, number>;
|
|
101
105
|
rootTemplateIndex?: number;
|
|
102
106
|
component: Set<string>;
|
|
103
107
|
directive: Set<string>;
|
|
@@ -113,6 +117,8 @@ export interface IfIRNode extends BaseIRNode {
|
|
|
113
117
|
once?: boolean;
|
|
114
118
|
parent?: number;
|
|
115
119
|
anchor?: number;
|
|
120
|
+
append?: boolean;
|
|
121
|
+
last?: boolean;
|
|
116
122
|
}
|
|
117
123
|
export interface IRFor {
|
|
118
124
|
source: SimpleExpressionNode;
|
|
@@ -130,6 +136,8 @@ export interface ForIRNode extends BaseIRNode, IRFor {
|
|
|
130
136
|
onlyChild: boolean;
|
|
131
137
|
parent?: number;
|
|
132
138
|
anchor?: number;
|
|
139
|
+
append?: boolean;
|
|
140
|
+
last?: boolean;
|
|
133
141
|
}
|
|
134
142
|
export interface SetPropIRNode extends BaseIRNode {
|
|
135
143
|
type: IRNodeTypes.SET_PROP;
|
|
@@ -143,6 +151,7 @@ export interface SetDynamicPropsIRNode extends BaseIRNode {
|
|
|
143
151
|
element: number;
|
|
144
152
|
props: IRProps[];
|
|
145
153
|
root: boolean;
|
|
154
|
+
tag: string;
|
|
146
155
|
}
|
|
147
156
|
export interface SetDynamicEventsIRNode extends BaseIRNode {
|
|
148
157
|
type: IRNodeTypes.SET_DYNAMIC_EVENTS;
|
|
@@ -155,6 +164,7 @@ export interface SetTextIRNode extends BaseIRNode {
|
|
|
155
164
|
values: SimpleExpressionNode[];
|
|
156
165
|
generated?: boolean;
|
|
157
166
|
jsx?: boolean;
|
|
167
|
+
isComponent?: boolean;
|
|
158
168
|
}
|
|
159
169
|
export type KeyOverride = [find: string, replacement: string];
|
|
160
170
|
export interface SetEventIRNode extends BaseIRNode {
|
|
@@ -176,6 +186,7 @@ export interface SetHtmlIRNode extends BaseIRNode {
|
|
|
176
186
|
type: IRNodeTypes.SET_HTML;
|
|
177
187
|
element: number;
|
|
178
188
|
value: SimpleExpressionNode;
|
|
189
|
+
isComponent?: boolean;
|
|
179
190
|
}
|
|
180
191
|
export interface SetTemplateRefIRNode extends BaseIRNode {
|
|
181
192
|
type: IRNodeTypes.SET_TEMPLATE_REF;
|
|
@@ -203,6 +214,7 @@ export interface DirectiveIRNode extends BaseIRNode {
|
|
|
203
214
|
builtin?: boolean;
|
|
204
215
|
asset?: boolean;
|
|
205
216
|
modelType?: 'text' | 'dynamic' | 'radio' | 'checkbox' | 'select';
|
|
217
|
+
deferred?: boolean;
|
|
206
218
|
}
|
|
207
219
|
export interface CreateComponentIRNode extends BaseIRNode {
|
|
208
220
|
type: IRNodeTypes.CREATE_COMPONENT_NODE;
|
|
@@ -214,8 +226,11 @@ export interface CreateComponentIRNode extends BaseIRNode {
|
|
|
214
226
|
root: boolean;
|
|
215
227
|
once: boolean;
|
|
216
228
|
dynamic?: SimpleExpressionNode;
|
|
229
|
+
isCustomElement: boolean;
|
|
217
230
|
parent?: number;
|
|
218
231
|
anchor?: number;
|
|
232
|
+
append?: boolean;
|
|
233
|
+
last?: boolean;
|
|
219
234
|
}
|
|
220
235
|
export interface DeclareOldRefIRNode extends BaseIRNode {
|
|
221
236
|
type: IRNodeTypes.DECLARE_OLD_REF;
|
|
@@ -227,8 +242,11 @@ export interface SlotOutletIRNode extends BaseIRNode {
|
|
|
227
242
|
name: SimpleExpressionNode;
|
|
228
243
|
props: IRProps[];
|
|
229
244
|
fallback?: BlockIRNode;
|
|
245
|
+
noSlotted?: boolean;
|
|
230
246
|
parent?: number;
|
|
231
247
|
anchor?: number;
|
|
248
|
+
append?: boolean;
|
|
249
|
+
last?: boolean;
|
|
232
250
|
}
|
|
233
251
|
export interface GetTextChildIRNode extends BaseIRNode {
|
|
234
252
|
type: IRNodeTypes.GET_TEXT_CHILD;
|
|
@@ -258,7 +276,9 @@ export interface IRDynamicInfo {
|
|
|
258
276
|
children: IRDynamicInfo[];
|
|
259
277
|
template?: number;
|
|
260
278
|
hasDynamicChild?: boolean;
|
|
279
|
+
needsKey?: boolean;
|
|
261
280
|
operation?: OperationNode;
|
|
281
|
+
ifBranch?: boolean;
|
|
262
282
|
}
|
|
263
283
|
export interface IREffect {
|
|
264
284
|
expressions: SimpleExpressionNode[];
|
|
@@ -284,7 +304,7 @@ interface DirectiveTransformResult {
|
|
|
284
304
|
modifier?: '.' | '^';
|
|
285
305
|
runtimeCamelize?: boolean;
|
|
286
306
|
handler?: boolean;
|
|
287
|
-
handlerModifiers?:
|
|
307
|
+
handlerModifiers?: SetEventIRNode['modifiers'];
|
|
288
308
|
model?: boolean;
|
|
289
309
|
modelModifiers?: string[];
|
|
290
310
|
}
|
|
@@ -302,6 +322,7 @@ export declare class TransformContext<T extends AllNode = AllNode> {
|
|
|
302
322
|
template: string;
|
|
303
323
|
childrenTemplate: (string | null)[];
|
|
304
324
|
dynamic: IRDynamicInfo;
|
|
325
|
+
imports: ImportItem[];
|
|
305
326
|
inVOnce: boolean;
|
|
306
327
|
inVFor: number;
|
|
307
328
|
comment: CommentNode[];
|
|
@@ -309,9 +330,11 @@ export declare class TransformContext<T extends AllNode = AllNode> {
|
|
|
309
330
|
directive: Set<string>;
|
|
310
331
|
slots: IRSlots[];
|
|
311
332
|
private globalId;
|
|
333
|
+
private nextIdMap;
|
|
312
334
|
constructor(ir: RootIRNode, node: T, options?: TransformOptions);
|
|
313
335
|
enterBlock(ir: BlockIRNode, isVFor?: boolean): () => void;
|
|
314
336
|
increaseId: () => number;
|
|
337
|
+
private initNextIdMap;
|
|
315
338
|
reference(): number;
|
|
316
339
|
pushTemplate(content: string): number;
|
|
317
340
|
registerTemplate(): number;
|
|
@@ -326,7 +349,8 @@ export type CodegenOptions = Omit<CodegenOptions$1, 'optimizeImports'>;
|
|
|
326
349
|
export declare class CodegenContext {
|
|
327
350
|
ir: RootIRNode;
|
|
328
351
|
options: Required<CodegenOptions>;
|
|
329
|
-
|
|
352
|
+
bindingNames: Set<string>;
|
|
353
|
+
helpers: Map<string, string>;
|
|
330
354
|
helper: (name: CoreHelper | VaporHelper) => string;
|
|
331
355
|
delegates: Set<string>;
|
|
332
356
|
identifiers: Record<string, (string | SimpleExpressionNode)[]>;
|
|
@@ -336,6 +360,13 @@ export declare class CodegenContext {
|
|
|
336
360
|
enterBlock(block: BlockIRNode): () => BlockIRNode;
|
|
337
361
|
scopeLevel: number;
|
|
338
362
|
enterScope(): [level: number, exit: () => number];
|
|
363
|
+
private templateVars;
|
|
364
|
+
private nextIdMap;
|
|
365
|
+
private lastIdMap;
|
|
366
|
+
private lastTIndex;
|
|
367
|
+
private initNextIdMap;
|
|
368
|
+
tName(i: number): string;
|
|
369
|
+
pName(i: number): string;
|
|
339
370
|
constructor(ir: RootIRNode, options: CodegenOptions);
|
|
340
371
|
}
|
|
341
372
|
export interface VaporCodegenResult extends BaseCodegenResult {
|