@vue/compat 3.6.0-rc.1 → 3.6.0-rc.11
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/vue-compat.d.ts +743 -678
- package/dist/vue.cjs.js +1328 -944
- package/dist/vue.cjs.prod.js +1116 -809
- package/dist/vue.esm-browser.js +1240 -895
- package/dist/vue.esm-browser.prod.js +7 -6
- package/dist/vue.esm-bundler.js +1314 -916
- package/dist/vue.global.js +1240 -895
- package/dist/vue.global.prod.js +7 -6
- package/dist/vue.runtime.esm-browser.js +1240 -895
- package/dist/vue.runtime.esm-browser.prod.js +7 -6
- package/dist/vue.runtime.esm-bundler.js +1314 -916
- package/dist/vue.runtime.global.js +1240 -895
- package/dist/vue.runtime.global.prod.js +7 -6
- package/package.json +3 -3
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* @vue/compat v3.6.0-rc.
|
|
2
|
+
* @vue/compat v3.6.0-rc.11
|
|
3
3
|
* (c) 2018-present Yuxi (Evan) You and Vue contributors
|
|
4
4
|
* @license MIT
|
|
5
5
|
**/
|
|
@@ -23,7 +23,7 @@ var __exportAll = (all, no_symbols) => {
|
|
|
23
23
|
* \/\*#\_\_PURE\_\_\*\/
|
|
24
24
|
* So that they can be tree-shaken if necessary.
|
|
25
25
|
*/
|
|
26
|
-
|
|
26
|
+
/*@__NO_SIDE_EFFECTS__*/
|
|
27
27
|
function makeMap(str) {
|
|
28
28
|
const map = Object.create(null);
|
|
29
29
|
for (const key of str.split(",")) map[key] = 1;
|
|
@@ -67,9 +67,9 @@ const toRawType = (value) => {
|
|
|
67
67
|
};
|
|
68
68
|
const isPlainObject = (val) => toTypeString(val) === "[object Object]";
|
|
69
69
|
const isIntegerKey = (key) => isString(key) && key !== "NaN" && key[0] !== "-" && "" + parseInt(key, 10) === key;
|
|
70
|
-
const isReservedProp =
|
|
71
|
-
const isBuiltInTag =
|
|
72
|
-
const isBuiltInDirective =
|
|
70
|
+
const isReservedProp = /*@__PURE__*/ makeMap(",key,ref,ref_for,ref_key,onVnodeBeforeMount,onVnodeMounted,onVnodeBeforeUpdate,onVnodeUpdated,onVnodeBeforeUnmount,onVnodeUnmounted");
|
|
71
|
+
const isBuiltInTag = /*#__PURE__*/ makeMap("slot,component");
|
|
72
|
+
const isBuiltInDirective = /*@__PURE__*/ makeMap("bind,cloak,else-if,else,for,html,if,model,on,once,pre,show,slot,text,memo");
|
|
73
73
|
const cacheStringFunction = (fn) => {
|
|
74
74
|
const cache = Object.create(null);
|
|
75
75
|
return ((str) => {
|
|
@@ -177,7 +177,7 @@ const slotFlagsText = {
|
|
|
177
177
|
[2]: "DYNAMIC",
|
|
178
178
|
[3]: "FORWARDED"
|
|
179
179
|
};
|
|
180
|
-
const isGloballyAllowed =
|
|
180
|
+
const isGloballyAllowed = /*@__PURE__*/ makeMap("Infinity,undefined,NaN,isFinite,isNaN,parseFloat,parseInt,decodeURI,decodeURIComponent,encodeURI,encodeURIComponent,Math,Number,Date,Array,Object,Boolean,String,RegExp,Map,Set,JSON,Intl,BigInt,console,Error,Symbol");
|
|
181
181
|
//#endregion
|
|
182
182
|
//#region packages/shared/src/codeframe.ts
|
|
183
183
|
const range = 2;
|
|
@@ -231,10 +231,10 @@ function normalizeStyle(value) {
|
|
|
231
231
|
}
|
|
232
232
|
const listDelimiterRE = /;(?![^(]*\))/g;
|
|
233
233
|
const propertyDelimiterRE = /:([^]+)/;
|
|
234
|
-
const styleCommentRE =
|
|
234
|
+
const styleCommentRE = /"(?:[^"\\]|\\[^])*"|'(?:[^'\\]|\\[^])*'|\\[^]|\/\*[^]*?\*\//g;
|
|
235
235
|
function parseStringStyle(cssText) {
|
|
236
236
|
const ret = {};
|
|
237
|
-
cssText.replace(styleCommentRE, "").split(listDelimiterRE).forEach((item) => {
|
|
237
|
+
cssText.replace(styleCommentRE, (match) => match.startsWith("/*") ? "" : match).split(listDelimiterRE).forEach((item) => {
|
|
238
238
|
if (item) {
|
|
239
239
|
const tmp = item.split(propertyDelimiterRE);
|
|
240
240
|
tmp.length > 1 && (ret[tmp[0].trim()] = tmp[1].trim());
|
|
@@ -284,22 +284,22 @@ const VOID_TAGS = "area,base,br,col,embed,hr,img,input,link,meta,param,source,tr
|
|
|
284
284
|
* Compiler only.
|
|
285
285
|
* Do NOT use in runtime code paths unless behind `!!(process.env.NODE_ENV !== 'production')` flag.
|
|
286
286
|
*/
|
|
287
|
-
const isHTMLTag =
|
|
287
|
+
const isHTMLTag = /*@__PURE__*/ makeMap(HTML_TAGS);
|
|
288
288
|
/**
|
|
289
289
|
* Compiler only.
|
|
290
290
|
* Do NOT use in runtime code paths unless behind `!!(process.env.NODE_ENV !== 'production')` flag.
|
|
291
291
|
*/
|
|
292
|
-
const isSVGTag =
|
|
292
|
+
const isSVGTag = /*@__PURE__*/ makeMap(SVG_TAGS);
|
|
293
293
|
/**
|
|
294
294
|
* Compiler only.
|
|
295
295
|
* Do NOT use in runtime code paths unless behind `!!(process.env.NODE_ENV !== 'production')` flag.
|
|
296
296
|
*/
|
|
297
|
-
const isMathMLTag =
|
|
297
|
+
const isMathMLTag = /*@__PURE__*/ makeMap(MATH_TAGS);
|
|
298
298
|
/**
|
|
299
299
|
* Compiler only.
|
|
300
300
|
* Do NOT use in runtime code paths unless behind `!!(process.env.NODE_ENV !== 'production')` flag.
|
|
301
301
|
*/
|
|
302
|
-
const isVoidTag =
|
|
302
|
+
const isVoidTag = /*@__PURE__*/ makeMap(VOID_TAGS);
|
|
303
303
|
//#endregion
|
|
304
304
|
//#region packages/shared/src/domAttrConfig.ts
|
|
305
305
|
/**
|
|
@@ -314,11 +314,11 @@ const isVoidTag = /* @__PURE__ */ makeMap(VOID_TAGS);
|
|
|
314
314
|
* - readonly -> readOnly
|
|
315
315
|
*/
|
|
316
316
|
const specialBooleanAttrs = `itemscope,allowfullscreen,formnovalidate,ismap,nomodule,novalidate,readonly`;
|
|
317
|
-
const isSpecialBooleanAttr =
|
|
317
|
+
const isSpecialBooleanAttr = /*@__PURE__*/ makeMap(specialBooleanAttrs);
|
|
318
318
|
/**
|
|
319
319
|
* The full list is needed during SSR to produce the correct initial markup.
|
|
320
320
|
*/
|
|
321
|
-
const isBooleanAttr =
|
|
321
|
+
const isBooleanAttr = /*@__PURE__*/ makeMap(specialBooleanAttrs + ",async,autofocus,autoplay,controls,default,defer,disabled,inert,loop,open,required,reversed,scoped,seamless,checked,muted,multiple,selected");
|
|
322
322
|
/**
|
|
323
323
|
* Boolean attributes should be included if the value is truthy or ''.
|
|
324
324
|
* e.g. `<select multiple>` compiles to `{ multiple: '' }`
|
|
@@ -332,11 +332,11 @@ function includeBooleanAttr(value) {
|
|
|
332
332
|
* Don't also forget to allow `data-*` and `aria-*`!
|
|
333
333
|
* Generated from https://developer.mozilla.org/en-US/docs/Web/HTML/Attributes
|
|
334
334
|
*/
|
|
335
|
-
const isKnownHtmlAttr =
|
|
335
|
+
const isKnownHtmlAttr = /*@__PURE__*/ makeMap("accept,accept-charset,accesskey,action,align,allow,alt,async,autocapitalize,autocomplete,autofocus,autoplay,background,bgcolor,border,buffered,capture,challenge,charset,checked,cite,class,code,codebase,color,cols,colspan,content,contenteditable,contextmenu,controls,coords,crossorigin,csp,data,datetime,decoding,default,defer,dir,dirname,disabled,download,draggable,dropzone,enctype,enterkeyhint,for,form,formaction,formenctype,formmethod,formnovalidate,formtarget,headers,height,hidden,high,href,hreflang,http-equiv,icon,id,importance,inert,integrity,ismap,itemprop,keytype,kind,label,lang,language,loading,list,loop,low,manifest,max,maxlength,minlength,media,min,multiple,muted,name,novalidate,open,optimum,pattern,ping,placeholder,poster,preload,radiogroup,readonly,referrerpolicy,rel,required,reversed,rows,rowspan,sandbox,scope,scoped,selected,shape,size,sizes,slot,span,spellcheck,src,srcdoc,srclang,srcset,start,step,style,summary,tabindex,target,title,translate,type,usemap,value,width,wrap");
|
|
336
336
|
/**
|
|
337
337
|
* Generated from https://developer.mozilla.org/en-US/docs/Web/SVG/Attribute
|
|
338
338
|
*/
|
|
339
|
-
const isKnownSvgAttr =
|
|
339
|
+
const isKnownSvgAttr = /*@__PURE__*/ makeMap("xmlns,accent-height,accumulate,additive,alignment-baseline,alphabetic,amplitude,arabic-form,ascent,attributeName,attributeType,azimuth,baseFrequency,baseline-shift,baseProfile,bbox,begin,bias,by,calcMode,cap-height,class,clip,clipPathUnits,clip-path,clip-rule,color,color-interpolation,color-interpolation-filters,color-profile,color-rendering,contentScriptType,contentStyleType,crossorigin,cursor,cx,cy,d,decelerate,descent,diffuseConstant,direction,display,divisor,dominant-baseline,dur,dx,dy,edgeMode,elevation,enable-background,end,exponent,fill,fill-opacity,fill-rule,filter,filterRes,filterUnits,flood-color,flood-opacity,font-family,font-size,font-size-adjust,font-stretch,font-style,font-variant,font-weight,format,from,fr,fx,fy,g1,g2,glyph-name,glyph-orientation-horizontal,glyph-orientation-vertical,glyphRef,gradientTransform,gradientUnits,hanging,height,href,hreflang,horiz-adv-x,horiz-origin-x,id,ideographic,image-rendering,in,in2,intercept,k,k1,k2,k3,k4,kernelMatrix,kernelUnitLength,kerning,keyPoints,keySplines,keyTimes,lang,lengthAdjust,letter-spacing,lighting-color,limitingConeAngle,local,marker-end,marker-mid,marker-start,markerHeight,markerUnits,markerWidth,mask,maskContentUnits,maskUnits,mathematical,max,media,method,min,mode,name,numOctaves,offset,opacity,operator,order,orient,orientation,origin,overflow,overline-position,overline-thickness,panose-1,paint-order,path,pathLength,patternContentUnits,patternTransform,patternUnits,ping,pointer-events,points,pointsAtX,pointsAtY,pointsAtZ,preserveAlpha,preserveAspectRatio,primitiveUnits,r,radius,referrerPolicy,refX,refY,rel,rendering-intent,repeatCount,repeatDur,requiredExtensions,requiredFeatures,restart,result,rotate,rx,ry,scale,seed,shape-rendering,slope,spacing,specularConstant,specularExponent,speed,spreadMethod,startOffset,stdDeviation,stemh,stemv,stitchTiles,stop-color,stop-opacity,strikethrough-position,strikethrough-thickness,string,stroke,stroke-dasharray,stroke-dashoffset,stroke-linecap,stroke-linejoin,stroke-miterlimit,stroke-opacity,stroke-width,style,surfaceScale,systemLanguage,tabindex,tableValues,target,targetX,targetY,text-anchor,text-decoration,text-rendering,textLength,to,transform,transform-origin,type,u1,u2,underline-position,underline-thickness,unicode,unicode-bidi,unicode-range,units-per-em,v-alphabetic,v-hanging,v-ideographic,v-mathematical,values,vector-effect,version,vert-adv-y,vert-origin-x,vert-origin-y,viewBox,viewTarget,visibility,width,widths,word-spacing,writing-mode,x,x-height,x1,x2,xChannelSelector,xlink:actuate,xlink:arcrole,xlink:href,xlink:role,xlink:show,xlink:title,xlink:type,xmlns:xlink,xml:base,xml:lang,xml:space,y,y1,y2,yChannelSelector,z,zoomAndPan");
|
|
340
340
|
/**
|
|
341
341
|
* Shared between server-renderer and runtime-core hydration logic
|
|
342
342
|
*/
|
|
@@ -362,13 +362,54 @@ function getEscapedCssVarName(key, doubleEscape) {
|
|
|
362
362
|
}
|
|
363
363
|
//#endregion
|
|
364
364
|
//#region packages/shared/src/looseEqual.ts
|
|
365
|
-
function looseCompareArrays(a, b) {
|
|
365
|
+
function looseCompareArrays(a, b, seen) {
|
|
366
366
|
if (a.length !== b.length) return false;
|
|
367
367
|
let equal = true;
|
|
368
|
-
for (let i = 0; equal && i < a.length; i++) equal = looseEqual(a[i], b[i]);
|
|
368
|
+
for (let i = 0; equal && i < a.length; i++) equal = looseEqual(a[i], b[i], seen);
|
|
369
369
|
return equal;
|
|
370
370
|
}
|
|
371
|
-
function
|
|
371
|
+
function looseCompareCollections(a, b, seen) {
|
|
372
|
+
if (a.size !== b.size) return false;
|
|
373
|
+
const candidates = Array.from(b);
|
|
374
|
+
const matched = new Uint8Array(candidates.length);
|
|
375
|
+
for (const item of a) {
|
|
376
|
+
let index = -1;
|
|
377
|
+
for (let i = 0; i < candidates.length; i++) if (!matched[i] && looseEqual(item, candidates[i], seen)) {
|
|
378
|
+
index = i;
|
|
379
|
+
break;
|
|
380
|
+
}
|
|
381
|
+
if (index < 0) return false;
|
|
382
|
+
matched[index] = 1;
|
|
383
|
+
}
|
|
384
|
+
return true;
|
|
385
|
+
}
|
|
386
|
+
function looseCompareObjects(a, b, seen) {
|
|
387
|
+
let aValidType = isMap(a);
|
|
388
|
+
let bValidType = isMap(b);
|
|
389
|
+
if (aValidType || bValidType) return aValidType && bValidType ? looseCompareCollections(a, b, seen) : false;
|
|
390
|
+
aValidType = isSet(a);
|
|
391
|
+
bValidType = isSet(b);
|
|
392
|
+
if (aValidType || bValidType) return aValidType && bValidType ? looseCompareCollections(a, b, seen) : false;
|
|
393
|
+
if (Object.keys(a).length !== Object.keys(b).length) return false;
|
|
394
|
+
for (const key in a) {
|
|
395
|
+
const aHasKey = a.hasOwnProperty(key);
|
|
396
|
+
const bHasKey = b.hasOwnProperty(key);
|
|
397
|
+
if (aHasKey && !bHasKey || !aHasKey && bHasKey || !looseEqual(a[key], b[key], seen)) return false;
|
|
398
|
+
}
|
|
399
|
+
return String(a) === String(b);
|
|
400
|
+
}
|
|
401
|
+
function looseCompareNested(a, b, seen, compare) {
|
|
402
|
+
if (!seen) seen = [/* @__PURE__ */ new Map(), /* @__PURE__ */ new Map()];
|
|
403
|
+
const [seenA, seenB] = seen;
|
|
404
|
+
if (seenA.has(a) || seenB.has(b)) return seenA.get(a) === b && seenB.get(b) === a;
|
|
405
|
+
seenA.set(a, b);
|
|
406
|
+
seenB.set(b, a);
|
|
407
|
+
const equal = compare(a, b, seen);
|
|
408
|
+
seenA.delete(a);
|
|
409
|
+
seenB.delete(b);
|
|
410
|
+
return equal;
|
|
411
|
+
}
|
|
412
|
+
function looseEqual(a, b, seen) {
|
|
372
413
|
if (a === b) return true;
|
|
373
414
|
let aValidType = isDate(a);
|
|
374
415
|
let bValidType = isDate(b);
|
|
@@ -378,17 +419,12 @@ function looseEqual(a, b) {
|
|
|
378
419
|
if (aValidType || bValidType) return a === b;
|
|
379
420
|
aValidType = isArray(a);
|
|
380
421
|
bValidType = isArray(b);
|
|
381
|
-
if (aValidType || bValidType) return aValidType && bValidType ?
|
|
422
|
+
if (aValidType || bValidType) return aValidType && bValidType ? looseCompareNested(a, b, seen, looseCompareArrays) : false;
|
|
382
423
|
aValidType = isObject(a);
|
|
383
424
|
bValidType = isObject(b);
|
|
384
425
|
if (aValidType || bValidType) {
|
|
385
426
|
if (!aValidType || !bValidType) return false;
|
|
386
|
-
|
|
387
|
-
for (const key in a) {
|
|
388
|
-
const aHasKey = a.hasOwnProperty(key);
|
|
389
|
-
const bHasKey = b.hasOwnProperty(key);
|
|
390
|
-
if (aHasKey && !bHasKey || !aHasKey && bHasKey || !looseEqual(a[key], b[key])) return false;
|
|
391
|
-
}
|
|
427
|
+
return looseCompareNested(a, b, seen, looseCompareObjects);
|
|
392
428
|
}
|
|
393
429
|
return String(a) === String(b);
|
|
394
430
|
}
|
|
@@ -523,6 +559,8 @@ function setupFlagsHandler(target) {
|
|
|
523
559
|
function warn$2(msg, ...args) {
|
|
524
560
|
console.warn(`[Vue warn] ${msg}`, ...args);
|
|
525
561
|
}
|
|
562
|
+
//#endregion
|
|
563
|
+
//#region packages/reactivity/src/system.ts
|
|
526
564
|
const notifyBuffer = [];
|
|
527
565
|
let batchDepth = 0;
|
|
528
566
|
let activeSub = void 0;
|
|
@@ -661,13 +699,23 @@ function endTracking(sub, prevSub) {
|
|
|
661
699
|
sub.flags &= -5;
|
|
662
700
|
}
|
|
663
701
|
function flush() {
|
|
702
|
+
let hasError = false;
|
|
703
|
+
let error;
|
|
664
704
|
while (notifyIndex < notifyBufferLength) {
|
|
665
705
|
const effect = notifyBuffer[notifyIndex];
|
|
666
706
|
notifyBuffer[notifyIndex++] = void 0;
|
|
667
|
-
|
|
707
|
+
try {
|
|
708
|
+
effect.notify();
|
|
709
|
+
} catch (err) {
|
|
710
|
+
if (!hasError) {
|
|
711
|
+
hasError = true;
|
|
712
|
+
error = err;
|
|
713
|
+
}
|
|
714
|
+
}
|
|
668
715
|
}
|
|
669
716
|
notifyIndex = 0;
|
|
670
717
|
notifyBufferLength = 0;
|
|
718
|
+
if (hasError) throw error;
|
|
671
719
|
}
|
|
672
720
|
function checkDirty(link, sub) {
|
|
673
721
|
let stack;
|
|
@@ -751,7 +799,7 @@ var Dep = class {
|
|
|
751
799
|
}
|
|
752
800
|
set subs(value) {
|
|
753
801
|
this._subs = value;
|
|
754
|
-
if (value === void 0) this.map.delete(this.key);
|
|
802
|
+
if (value === void 0 && this.map) this.map.delete(this.key);
|
|
755
803
|
}
|
|
756
804
|
};
|
|
757
805
|
const targetMap = /* @__PURE__ */ new WeakMap();
|
|
@@ -834,9 +882,7 @@ function trigger(target, type, key, newValue, oldValue, oldTarget) {
|
|
|
834
882
|
if (isMap(target)) run(depsMap.get(MAP_KEY_ITERATE_KEY));
|
|
835
883
|
}
|
|
836
884
|
break;
|
|
837
|
-
case "set":
|
|
838
|
-
if (isMap(target)) run(depsMap.get(ITERATE_KEY));
|
|
839
|
-
break;
|
|
885
|
+
case "set": if (isMap(target)) run(depsMap.get(ITERATE_KEY));
|
|
840
886
|
}
|
|
841
887
|
}
|
|
842
888
|
}
|
|
@@ -851,13 +897,17 @@ function getDepFromReactive(object, key) {
|
|
|
851
897
|
/**
|
|
852
898
|
* Track array iteration and return:
|
|
853
899
|
* - if input is reactive: a cloned raw array with reactive values
|
|
854
|
-
* - if input is
|
|
900
|
+
* - if input is readonly: a cloned raw array with readonly values, preserving
|
|
901
|
+
* reactivity
|
|
902
|
+
* - if input is raw or shallow: the original raw array
|
|
855
903
|
*/
|
|
856
904
|
function reactiveReadArray(array) {
|
|
857
905
|
const raw = /* @__PURE__ */ toRaw(array);
|
|
858
906
|
if (raw === array) return raw;
|
|
859
907
|
track(raw, "iterate", ARRAY_ITERATE_KEY);
|
|
860
|
-
|
|
908
|
+
if (/* @__PURE__ */ isShallow(array)) return raw;
|
|
909
|
+
if (!/* @__PURE__ */ isReadonly(array)) return raw.map(toReactive);
|
|
910
|
+
return /* @__PURE__ */ isReactive(array) ? raw.map((item) => toReadonly(toReactive(item))) : raw.map(toReadonly);
|
|
861
911
|
}
|
|
862
912
|
/**
|
|
863
913
|
* Track array iteration and return raw array
|
|
@@ -1033,8 +1083,8 @@ function noTracking(self, method, args = []) {
|
|
|
1033
1083
|
}
|
|
1034
1084
|
//#endregion
|
|
1035
1085
|
//#region packages/reactivity/src/baseHandlers.ts
|
|
1036
|
-
const isNonTrackableKeys =
|
|
1037
|
-
const builtInSymbols = new Set(
|
|
1086
|
+
const isNonTrackableKeys = /*@__PURE__*/ makeMap(`__proto__,__v_isRef,__isVue`);
|
|
1087
|
+
const builtInSymbols = new Set(/*@__PURE__*/ Object.getOwnPropertyNames(Symbol).filter((key) => key !== "arguments" && key !== "caller").map((key) => Symbol[key]).filter(isSymbol));
|
|
1038
1088
|
function hasOwnProperty(key) {
|
|
1039
1089
|
if (!isSymbol(key)) key = String(key);
|
|
1040
1090
|
const obj = /* @__PURE__ */ toRaw(this);
|
|
@@ -1089,12 +1139,14 @@ var MutableReactiveHandler = class extends BaseReactiveHandler {
|
|
|
1089
1139
|
oldValue = /* @__PURE__ */ toRaw(oldValue);
|
|
1090
1140
|
value = /* @__PURE__ */ toRaw(value);
|
|
1091
1141
|
}
|
|
1092
|
-
if (!isArrayWithIntegerKey && /* @__PURE__ */ isRef(oldValue) && !/* @__PURE__ */ isRef(value))
|
|
1093
|
-
if (
|
|
1094
|
-
|
|
1095
|
-
|
|
1096
|
-
|
|
1097
|
-
|
|
1142
|
+
if (!isArrayWithIntegerKey && /* @__PURE__ */ isRef(oldValue) && !/* @__PURE__ */ isRef(value)) {
|
|
1143
|
+
if (isOldValueReadonly) {
|
|
1144
|
+
if (!!(process.env.NODE_ENV !== "production")) warn$2(`Set operation on key "${String(key)}" failed: target is readonly.`, target[key]);
|
|
1145
|
+
return true;
|
|
1146
|
+
} else {
|
|
1147
|
+
oldValue.value = value;
|
|
1148
|
+
return true;
|
|
1149
|
+
}
|
|
1098
1150
|
}
|
|
1099
1151
|
}
|
|
1100
1152
|
const hadKey = isArrayWithIntegerKey ? Number(key) < target.length : hasOwn(target, key);
|
|
@@ -1135,10 +1187,10 @@ var ReadonlyReactiveHandler = class extends BaseReactiveHandler {
|
|
|
1135
1187
|
return true;
|
|
1136
1188
|
}
|
|
1137
1189
|
};
|
|
1138
|
-
const mutableHandlers =
|
|
1139
|
-
const readonlyHandlers =
|
|
1140
|
-
const shallowReactiveHandlers =
|
|
1141
|
-
const shallowReadonlyHandlers =
|
|
1190
|
+
const mutableHandlers = /*@__PURE__*/ new MutableReactiveHandler();
|
|
1191
|
+
const readonlyHandlers = /*@__PURE__*/ new ReadonlyReactiveHandler();
|
|
1192
|
+
const shallowReactiveHandlers = /*@__PURE__*/ new MutableReactiveHandler(true);
|
|
1193
|
+
const shallowReadonlyHandlers = /*@__PURE__*/ new ReadonlyReactiveHandler(true);
|
|
1142
1194
|
//#endregion
|
|
1143
1195
|
//#region packages/reactivity/src/collectionHandlers.ts
|
|
1144
1196
|
const toShallow = (value) => value;
|
|
@@ -1289,10 +1341,10 @@ function createInstrumentationGetter(isReadonly, shallow) {
|
|
|
1289
1341
|
return Reflect.get(hasOwn(instrumentations, key) && key in target ? instrumentations : target, key, receiver);
|
|
1290
1342
|
};
|
|
1291
1343
|
}
|
|
1292
|
-
const mutableCollectionHandlers = { get:
|
|
1293
|
-
const shallowCollectionHandlers = { get:
|
|
1294
|
-
const readonlyCollectionHandlers = { get:
|
|
1295
|
-
const shallowReadonlyCollectionHandlers = { get:
|
|
1344
|
+
const mutableCollectionHandlers = { get: /*@__PURE__*/ createInstrumentationGetter(false, false) };
|
|
1345
|
+
const shallowCollectionHandlers = { get: /*@__PURE__*/ createInstrumentationGetter(false, true) };
|
|
1346
|
+
const readonlyCollectionHandlers = { get: /*@__PURE__*/ createInstrumentationGetter(true, false) };
|
|
1347
|
+
const shallowReadonlyCollectionHandlers = { get: /*@__PURE__*/ createInstrumentationGetter(true, true) };
|
|
1296
1348
|
function checkIdentityKeys(target, has, key) {
|
|
1297
1349
|
const rawKey = /* @__PURE__ */ toRaw(key);
|
|
1298
1350
|
if (rawKey !== key && has.call(target, rawKey)) {
|
|
@@ -1317,7 +1369,7 @@ function targetTypeMap(rawType) {
|
|
|
1317
1369
|
default: return 0;
|
|
1318
1370
|
}
|
|
1319
1371
|
}
|
|
1320
|
-
|
|
1372
|
+
/*@__NO_SIDE_EFFECTS__*/
|
|
1321
1373
|
function reactive(target) {
|
|
1322
1374
|
if (/* @__PURE__ */ isReadonly(target)) return target;
|
|
1323
1375
|
return createReactiveObject(target, false, mutableHandlers, mutableCollectionHandlers, reactiveMap);
|
|
@@ -1352,7 +1404,7 @@ function reactive(target) {
|
|
|
1352
1404
|
* @param target - The source object.
|
|
1353
1405
|
* @see {@link https://vuejs.org/api/reactivity-advanced.html#shallowreactive}
|
|
1354
1406
|
*/
|
|
1355
|
-
|
|
1407
|
+
/*@__NO_SIDE_EFFECTS__*/
|
|
1356
1408
|
function shallowReactive(target) {
|
|
1357
1409
|
return createReactiveObject(target, false, shallowReactiveHandlers, shallowCollectionHandlers, shallowReactiveMap);
|
|
1358
1410
|
}
|
|
@@ -1385,7 +1437,7 @@ function shallowReactive(target) {
|
|
|
1385
1437
|
* @param target - The source object.
|
|
1386
1438
|
* @see {@link https://vuejs.org/api/reactivity-core.html#readonly}
|
|
1387
1439
|
*/
|
|
1388
|
-
|
|
1440
|
+
/*@__NO_SIDE_EFFECTS__*/
|
|
1389
1441
|
function readonly(target) {
|
|
1390
1442
|
return createReactiveObject(target, true, readonlyHandlers, readonlyCollectionHandlers, readonlyMap);
|
|
1391
1443
|
}
|
|
@@ -1419,7 +1471,7 @@ function readonly(target) {
|
|
|
1419
1471
|
* @param target - The source object.
|
|
1420
1472
|
* @see {@link https://vuejs.org/api/reactivity-advanced.html#shallowreadonly}
|
|
1421
1473
|
*/
|
|
1422
|
-
|
|
1474
|
+
/*@__NO_SIDE_EFFECTS__*/
|
|
1423
1475
|
function shallowReadonly(target) {
|
|
1424
1476
|
return createReactiveObject(target, true, shallowReadonlyHandlers, shallowReadonlyCollectionHandlers, shallowReadonlyMap);
|
|
1425
1477
|
}
|
|
@@ -1456,7 +1508,7 @@ function createReactiveObject(target, isReadonly, baseHandlers, collectionHandle
|
|
|
1456
1508
|
* @param value - The value to check.
|
|
1457
1509
|
* @see {@link https://vuejs.org/api/reactivity-utilities.html#isreactive}
|
|
1458
1510
|
*/
|
|
1459
|
-
|
|
1511
|
+
/*@__NO_SIDE_EFFECTS__*/
|
|
1460
1512
|
function isReactive(value) {
|
|
1461
1513
|
if (/* @__PURE__ */ isReadonly(value)) return /* @__PURE__ */ isReactive(value["__v_raw"]);
|
|
1462
1514
|
return !!(value && value["__v_isReactive"]);
|
|
@@ -1472,11 +1524,11 @@ function isReactive(value) {
|
|
|
1472
1524
|
* @param value - The value to check.
|
|
1473
1525
|
* @see {@link https://vuejs.org/api/reactivity-utilities.html#isreadonly}
|
|
1474
1526
|
*/
|
|
1475
|
-
|
|
1527
|
+
/*@__NO_SIDE_EFFECTS__*/
|
|
1476
1528
|
function isReadonly(value) {
|
|
1477
1529
|
return !!(value && value["__v_isReadonly"]);
|
|
1478
1530
|
}
|
|
1479
|
-
|
|
1531
|
+
/*@__NO_SIDE_EFFECTS__*/
|
|
1480
1532
|
function isShallow(value) {
|
|
1481
1533
|
return !!(value && value["__v_isShallow"]);
|
|
1482
1534
|
}
|
|
@@ -1487,7 +1539,7 @@ function isShallow(value) {
|
|
|
1487
1539
|
* @param value - The value to check.
|
|
1488
1540
|
* @see {@link https://vuejs.org/api/reactivity-utilities.html#isproxy}
|
|
1489
1541
|
*/
|
|
1490
|
-
|
|
1542
|
+
/*@__NO_SIDE_EFFECTS__*/
|
|
1491
1543
|
function isProxy(value) {
|
|
1492
1544
|
return value ? !!value["__v_raw"] : false;
|
|
1493
1545
|
}
|
|
@@ -1514,7 +1566,7 @@ function isProxy(value) {
|
|
|
1514
1566
|
* @param observed - The object for which the "raw" value is requested.
|
|
1515
1567
|
* @see {@link https://vuejs.org/api/reactivity-advanced.html#toraw}
|
|
1516
1568
|
*/
|
|
1517
|
-
|
|
1569
|
+
/*@__NO_SIDE_EFFECTS__*/
|
|
1518
1570
|
function toRaw(observed) {
|
|
1519
1571
|
const raw = observed && observed["__v_raw"];
|
|
1520
1572
|
return raw ? /* @__PURE__ */ toRaw(raw) : observed;
|
|
@@ -1563,15 +1615,15 @@ const toReactive = (value) => isObject(value) ? /* @__PURE__ */ reactive(value)
|
|
|
1563
1615
|
const toReadonly = (value) => isObject(value) ? /* @__PURE__ */ readonly(value) : value;
|
|
1564
1616
|
//#endregion
|
|
1565
1617
|
//#region packages/reactivity/src/ref.ts
|
|
1566
|
-
|
|
1618
|
+
/*@__NO_SIDE_EFFECTS__*/
|
|
1567
1619
|
function isRef(r) {
|
|
1568
1620
|
return r ? r["__v_isRef"] === true : false;
|
|
1569
1621
|
}
|
|
1570
|
-
|
|
1622
|
+
/*@__NO_SIDE_EFFECTS__*/
|
|
1571
1623
|
function ref(value) {
|
|
1572
1624
|
return createRef(value, toReactive);
|
|
1573
1625
|
}
|
|
1574
|
-
|
|
1626
|
+
/*@__NO_SIDE_EFFECTS__*/
|
|
1575
1627
|
function shallowRef(value) {
|
|
1576
1628
|
return createRef(value);
|
|
1577
1629
|
}
|
|
@@ -1774,7 +1826,7 @@ function customRef(factory) {
|
|
|
1774
1826
|
* @param object - Reactive object to be made into an object of linked refs.
|
|
1775
1827
|
* @see {@link https://vuejs.org/api/reactivity-utilities.html#torefs}
|
|
1776
1828
|
*/
|
|
1777
|
-
|
|
1829
|
+
/*@__NO_SIDE_EFFECTS__*/
|
|
1778
1830
|
function toRefs(object) {
|
|
1779
1831
|
const ret = isArray(object) ? new Array(object.length) : {};
|
|
1780
1832
|
for (const key in object) ret[key] = propertyToRef(object, key);
|
|
@@ -1825,7 +1877,7 @@ var GetterRefImpl = class {
|
|
|
1825
1877
|
return this._value = this._getter();
|
|
1826
1878
|
}
|
|
1827
1879
|
};
|
|
1828
|
-
|
|
1880
|
+
/*@__NO_SIDE_EFFECTS__*/
|
|
1829
1881
|
function toRef(source, key, defaultValue) {
|
|
1830
1882
|
if (/* @__PURE__ */ isRef(source)) return source;
|
|
1831
1883
|
else if (isFunction(source)) return new GetterRefImpl(source);
|
|
@@ -1891,10 +1943,12 @@ var ReactiveEffect = class {
|
|
|
1891
1943
|
get dirty() {
|
|
1892
1944
|
const flags = this.flags;
|
|
1893
1945
|
if (flags & 16) return true;
|
|
1894
|
-
if (flags & 32)
|
|
1895
|
-
this.
|
|
1896
|
-
|
|
1897
|
-
|
|
1946
|
+
if (flags & 32) {
|
|
1947
|
+
if (checkDirty(this.deps, this)) {
|
|
1948
|
+
this.flags = flags | 16;
|
|
1949
|
+
return true;
|
|
1950
|
+
} else this.flags = flags & -33;
|
|
1951
|
+
}
|
|
1898
1952
|
return false;
|
|
1899
1953
|
}
|
|
1900
1954
|
};
|
|
@@ -2073,10 +2127,12 @@ var ComputedRefImpl = class {
|
|
|
2073
2127
|
get _dirty() {
|
|
2074
2128
|
const flags = this.flags;
|
|
2075
2129
|
if (flags & 16) return true;
|
|
2076
|
-
if (flags & 32)
|
|
2077
|
-
this.
|
|
2078
|
-
|
|
2079
|
-
|
|
2130
|
+
if (flags & 32) {
|
|
2131
|
+
if (checkDirty(this.deps, this)) {
|
|
2132
|
+
this.flags = flags | 16;
|
|
2133
|
+
return true;
|
|
2134
|
+
} else this.flags = flags & -33;
|
|
2135
|
+
}
|
|
2080
2136
|
return false;
|
|
2081
2137
|
}
|
|
2082
2138
|
/**
|
|
@@ -2137,7 +2193,7 @@ var ComputedRefImpl = class {
|
|
|
2137
2193
|
}
|
|
2138
2194
|
};
|
|
2139
2195
|
if (!!(process.env.NODE_ENV !== "production")) setupOnTrigger(ComputedRefImpl);
|
|
2140
|
-
|
|
2196
|
+
/*@__NO_SIDE_EFFECTS__*/
|
|
2141
2197
|
function computed$1(getterOrOptions, debugOptions, isSSR = false) {
|
|
2142
2198
|
let getter;
|
|
2143
2199
|
let setter;
|
|
@@ -2215,25 +2271,26 @@ var WatcherEffect = class extends ReactiveEffect {
|
|
|
2215
2271
|
else if (isFunction(s)) return call ? call(s, 2) : s();
|
|
2216
2272
|
else process.env.NODE_ENV !== "production" && warnInvalidSource(s, onWarn);
|
|
2217
2273
|
});
|
|
2218
|
-
} else if (isFunction(source))
|
|
2219
|
-
|
|
2220
|
-
|
|
2221
|
-
|
|
2274
|
+
} else if (isFunction(source)) {
|
|
2275
|
+
if (cb) getter = call ? () => call(source, 2) : source;
|
|
2276
|
+
else getter = () => {
|
|
2277
|
+
if (this.cleanupsLength) {
|
|
2278
|
+
const prevSub = setActiveSub();
|
|
2279
|
+
try {
|
|
2280
|
+
cleanup(this);
|
|
2281
|
+
} finally {
|
|
2282
|
+
setActiveSub(prevSub);
|
|
2283
|
+
}
|
|
2284
|
+
}
|
|
2285
|
+
const currentEffect = activeWatcher;
|
|
2286
|
+
activeWatcher = this;
|
|
2222
2287
|
try {
|
|
2223
|
-
|
|
2288
|
+
return call ? call(source, 3, [this.boundCleanup]) : source(this.boundCleanup);
|
|
2224
2289
|
} finally {
|
|
2225
|
-
|
|
2290
|
+
activeWatcher = currentEffect;
|
|
2226
2291
|
}
|
|
2227
|
-
}
|
|
2228
|
-
|
|
2229
|
-
activeWatcher = this;
|
|
2230
|
-
try {
|
|
2231
|
-
return call ? call(source, 3, [this.boundCleanup]) : source(this.boundCleanup);
|
|
2232
|
-
} finally {
|
|
2233
|
-
activeWatcher = currentEffect;
|
|
2234
|
-
}
|
|
2235
|
-
};
|
|
2236
|
-
else {
|
|
2292
|
+
};
|
|
2293
|
+
} else {
|
|
2237
2294
|
getter = NOOP;
|
|
2238
2295
|
process.env.NODE_ENV !== "production" && warnInvalidSource(source, onWarn);
|
|
2239
2296
|
}
|
|
@@ -2560,7 +2617,9 @@ const SchedulerJobFlags = {
|
|
|
2560
2617
|
"ALLOW_RECURSE": 2,
|
|
2561
2618
|
"2": "ALLOW_RECURSE",
|
|
2562
2619
|
"DISPOSED": 4,
|
|
2563
|
-
"4": "DISPOSED"
|
|
2620
|
+
"4": "DISPOSED",
|
|
2621
|
+
"REQUEUE_ON_SUSPENSE_DISCARD": 8,
|
|
2622
|
+
"8": "REQUEUE_ON_SUSPENSE_DISCARD"
|
|
2564
2623
|
};
|
|
2565
2624
|
const jobs = [];
|
|
2566
2625
|
let postJobs = [];
|
|
@@ -2569,7 +2628,7 @@ let currentFlushPromise = null;
|
|
|
2569
2628
|
let jobsLength = 0;
|
|
2570
2629
|
let flushIndex = 0;
|
|
2571
2630
|
let postFlushIndex = 0;
|
|
2572
|
-
const resolvedPromise =
|
|
2631
|
+
const resolvedPromise = /*@__PURE__*/ Promise.resolve();
|
|
2573
2632
|
const RECURSION_LIMIT = 100;
|
|
2574
2633
|
function nextTick(fn) {
|
|
2575
2634
|
const p = currentFlushPromise || resolvedPromise;
|
|
@@ -2608,6 +2667,7 @@ const doFlushJobs = () => {
|
|
|
2608
2667
|
flushJobs();
|
|
2609
2668
|
} catch (e) {
|
|
2610
2669
|
currentFlushPromise = null;
|
|
2670
|
+
if (jobsLength || postJobs.length) queueFlush();
|
|
2611
2671
|
throw e;
|
|
2612
2672
|
}
|
|
2613
2673
|
};
|
|
@@ -2615,9 +2675,10 @@ function queueFlush() {
|
|
|
2615
2675
|
if (!currentFlushPromise) currentFlushPromise = resolvedPromise.then(doFlushJobs);
|
|
2616
2676
|
}
|
|
2617
2677
|
function queuePostFlushCb(jobs, id = Infinity) {
|
|
2618
|
-
if (!isArray(jobs))
|
|
2619
|
-
|
|
2620
|
-
|
|
2678
|
+
if (!isArray(jobs)) {
|
|
2679
|
+
if (activePostJobs && id === -1) activePostJobs.splice(postFlushIndex, 0, jobs);
|
|
2680
|
+
else queueJobWorker(jobs, id, postJobs, postJobs.length, 0);
|
|
2681
|
+
} else for (let i = 0; i < jobs.length; i++) queueJobWorker(jobs[i], id, postJobs, postJobs.length, 0);
|
|
2621
2682
|
queueFlush();
|
|
2622
2683
|
}
|
|
2623
2684
|
function flushPreFlushCbs(instance, seen) {
|
|
@@ -2631,32 +2692,39 @@ function flushPreFlushCbs(instance, seen) {
|
|
|
2631
2692
|
i--;
|
|
2632
2693
|
jobsLength--;
|
|
2633
2694
|
if (cb.flags & 2) cb.flags &= -2;
|
|
2634
|
-
|
|
2635
|
-
|
|
2695
|
+
try {
|
|
2696
|
+
cb();
|
|
2697
|
+
} finally {
|
|
2698
|
+
if (!(cb.flags & 2)) cb.flags &= -2;
|
|
2699
|
+
}
|
|
2636
2700
|
}
|
|
2637
2701
|
}
|
|
2638
2702
|
function flushPostFlushCbs(seen) {
|
|
2639
2703
|
if (postJobs.length) {
|
|
2640
2704
|
if (activePostJobs) {
|
|
2641
|
-
activePostJobs.push(
|
|
2705
|
+
for (let i = 0; i < postJobs.length; i++) activePostJobs.push(postJobs[i]);
|
|
2642
2706
|
postJobs.length = 0;
|
|
2643
2707
|
return;
|
|
2644
2708
|
}
|
|
2645
2709
|
activePostJobs = postJobs;
|
|
2646
2710
|
postJobs = [];
|
|
2647
2711
|
if (!!(process.env.NODE_ENV !== "production")) seen = seen || /* @__PURE__ */ new Map();
|
|
2648
|
-
|
|
2649
|
-
|
|
2650
|
-
|
|
2651
|
-
|
|
2652
|
-
|
|
2653
|
-
cb
|
|
2654
|
-
|
|
2655
|
-
|
|
2712
|
+
try {
|
|
2713
|
+
while (postFlushIndex < activePostJobs.length) {
|
|
2714
|
+
const cb = activePostJobs[postFlushIndex++];
|
|
2715
|
+
if (!!(process.env.NODE_ENV !== "production") && checkRecursiveUpdates(seen, cb)) continue;
|
|
2716
|
+
if (cb.flags & 2) cb.flags &= -2;
|
|
2717
|
+
if (!(cb.flags & 4)) try {
|
|
2718
|
+
cb();
|
|
2719
|
+
} finally {
|
|
2720
|
+
if (!(cb.flags & 2)) cb.flags &= -2;
|
|
2721
|
+
}
|
|
2656
2722
|
}
|
|
2723
|
+
} finally {
|
|
2724
|
+
while (postFlushIndex < activePostJobs.length) activePostJobs[postFlushIndex++].flags &= -2;
|
|
2725
|
+
activePostJobs = null;
|
|
2726
|
+
postFlushIndex = 0;
|
|
2657
2727
|
}
|
|
2658
|
-
activePostJobs = null;
|
|
2659
|
-
postFlushIndex = 0;
|
|
2660
2728
|
}
|
|
2661
2729
|
}
|
|
2662
2730
|
let isFlushing = false;
|
|
@@ -2666,9 +2734,12 @@ let isFlushing = false;
|
|
|
2666
2734
|
function flushOnAppMount(instance) {
|
|
2667
2735
|
if (!isFlushing) {
|
|
2668
2736
|
isFlushing = true;
|
|
2669
|
-
|
|
2670
|
-
|
|
2671
|
-
|
|
2737
|
+
try {
|
|
2738
|
+
flushPreFlushCbs(instance);
|
|
2739
|
+
flushPostFlushCbs();
|
|
2740
|
+
} finally {
|
|
2741
|
+
isFlushing = false;
|
|
2742
|
+
}
|
|
2672
2743
|
}
|
|
2673
2744
|
}
|
|
2674
2745
|
function flushJobs(seen) {
|
|
@@ -2698,8 +2769,8 @@ function flushJobs(seen) {
|
|
|
2698
2769
|
jobsLength = 0;
|
|
2699
2770
|
jobs.length = 0;
|
|
2700
2771
|
flushPostFlushCbs(seen);
|
|
2701
|
-
currentFlushPromise = null;
|
|
2702
2772
|
if (jobsLength || postJobs.length) flushJobs(seen);
|
|
2773
|
+
else currentFlushPromise = null;
|
|
2703
2774
|
}
|
|
2704
2775
|
}
|
|
2705
2776
|
function checkRecursiveUpdates(seen, fn) {
|
|
@@ -2730,6 +2801,19 @@ if (!!(process.env.NODE_ENV !== "production")) getGlobalThis().__VUE_HMR_RUNTIME
|
|
|
2730
2801
|
rerender: tryWrap(rerender),
|
|
2731
2802
|
reload: tryWrap(reload)
|
|
2732
2803
|
};
|
|
2804
|
+
function runWithHmrUpdating(fn) {
|
|
2805
|
+
isHmrUpdating = true;
|
|
2806
|
+
let done = false;
|
|
2807
|
+
try {
|
|
2808
|
+
fn();
|
|
2809
|
+
done = true;
|
|
2810
|
+
} finally {
|
|
2811
|
+
if (done) nextTick(() => {
|
|
2812
|
+
isHmrUpdating = false;
|
|
2813
|
+
});
|
|
2814
|
+
else isHmrUpdating = false;
|
|
2815
|
+
}
|
|
2816
|
+
}
|
|
2733
2817
|
const map = /* @__PURE__ */ new Map();
|
|
2734
2818
|
function registerHMR(instance) {
|
|
2735
2819
|
const id = instance.type.__hmrId;
|
|
@@ -2771,18 +2855,16 @@ function rerender(id, newRender) {
|
|
|
2771
2855
|
instance.render = newRender;
|
|
2772
2856
|
normalizeClassComponent(instance.type).render = newRender;
|
|
2773
2857
|
}
|
|
2774
|
-
|
|
2775
|
-
|
|
2776
|
-
|
|
2777
|
-
|
|
2778
|
-
|
|
2779
|
-
|
|
2780
|
-
|
|
2781
|
-
|
|
2858
|
+
runWithHmrUpdating(() => {
|
|
2859
|
+
if (instance.vapor) {
|
|
2860
|
+
if (!instance.isUnmounted) instance.hmrRerender();
|
|
2861
|
+
} else {
|
|
2862
|
+
const i = instance;
|
|
2863
|
+
if (!(i.effect.flags & 1024)) {
|
|
2864
|
+
i.renderCache = [];
|
|
2865
|
+
i.effect.run();
|
|
2866
|
+
}
|
|
2782
2867
|
}
|
|
2783
|
-
}
|
|
2784
|
-
nextTick(() => {
|
|
2785
|
-
isHmrUpdating = false;
|
|
2786
2868
|
});
|
|
2787
2869
|
});
|
|
2788
2870
|
}
|
|
@@ -2797,17 +2879,19 @@ function reload(id, newComp) {
|
|
|
2797
2879
|
for (const instance of instances) if (instance.root && instance.root.ce && instance !== instance.root) instance.root.ce._removeChildStyle(instance.type);
|
|
2798
2880
|
const dirtyInstances = new Set(instances);
|
|
2799
2881
|
const rerenderedParents = /* @__PURE__ */ new Set();
|
|
2800
|
-
|
|
2801
|
-
const
|
|
2802
|
-
|
|
2803
|
-
if (
|
|
2804
|
-
rerenderedParents.
|
|
2805
|
-
|
|
2806
|
-
|
|
2807
|
-
|
|
2808
|
-
|
|
2882
|
+
runWithHmrUpdating(() => {
|
|
2883
|
+
for (const instance of instances) {
|
|
2884
|
+
const parent = instance.parent;
|
|
2885
|
+
if (parent) {
|
|
2886
|
+
if (!hasDirtyAncestor(instance, dirtyInstances) && !rerenderedParents.has(parent)) {
|
|
2887
|
+
rerenderedParents.add(parent);
|
|
2888
|
+
parent.hmrRerender();
|
|
2889
|
+
}
|
|
2890
|
+
} else instance.hmrReload(newComp);
|
|
2891
|
+
}
|
|
2892
|
+
});
|
|
2809
2893
|
} else {
|
|
2810
|
-
const
|
|
2894
|
+
const parents = /* @__PURE__ */ new Set();
|
|
2811
2895
|
const dirtyInstanceSet = new Set(instances);
|
|
2812
2896
|
for (const instance of instances) {
|
|
2813
2897
|
const oldComp = normalizeClassComponent(instance.type);
|
|
@@ -2826,33 +2910,23 @@ function reload(id, newComp) {
|
|
|
2826
2910
|
instance.ceReload(newComp.styles);
|
|
2827
2911
|
dirtyInstances.delete(instance);
|
|
2828
2912
|
} else if (instance.parent) {
|
|
2829
|
-
|
|
2830
|
-
if (!hasDirtyAncestor(instance, dirtyInstanceSet)) {
|
|
2831
|
-
let updates = parentUpdates.get(parent);
|
|
2832
|
-
if (!updates) parentUpdates.set(parent, updates = []);
|
|
2833
|
-
updates.push([instance, dirtyInstances]);
|
|
2834
|
-
}
|
|
2913
|
+
if (!hasDirtyAncestor(instance, dirtyInstanceSet)) parents.add(instance.parent);
|
|
2835
2914
|
} else if (instance.appContext.reload) instance.appContext.reload();
|
|
2836
2915
|
else if (typeof window !== "undefined") window.location.reload();
|
|
2837
2916
|
else console.warn("[HMR] Root or manually mounted instance modified. Full reload required.");
|
|
2838
2917
|
if (instance.root.ce && instance !== instance.root) instance.root.ce._removeChildStyle(oldComp);
|
|
2839
2918
|
}
|
|
2840
|
-
|
|
2919
|
+
parents.forEach((parent) => {
|
|
2841
2920
|
queueJob(() => {
|
|
2842
|
-
|
|
2843
|
-
|
|
2844
|
-
|
|
2845
|
-
|
|
2846
|
-
|
|
2847
|
-
|
|
2848
|
-
|
|
2921
|
+
runWithHmrUpdating(() => {
|
|
2922
|
+
if (parent.vapor) parent.hmrRerender();
|
|
2923
|
+
else {
|
|
2924
|
+
const i = parent;
|
|
2925
|
+
if (!(i.effect.flags & 1024)) {
|
|
2926
|
+
i.renderCache = [];
|
|
2927
|
+
i.effect.run();
|
|
2928
|
+
}
|
|
2849
2929
|
}
|
|
2850
|
-
}
|
|
2851
|
-
nextTick(() => {
|
|
2852
|
-
isHmrUpdating = false;
|
|
2853
|
-
});
|
|
2854
|
-
updates.forEach(([instance, dirtyInstances]) => {
|
|
2855
|
-
dirtyInstances.delete(instance);
|
|
2856
2930
|
});
|
|
2857
2931
|
});
|
|
2858
2932
|
});
|
|
@@ -2922,20 +2996,20 @@ function devtoolsInitApp(app, version) {
|
|
|
2922
2996
|
function devtoolsUnmountApp(app) {
|
|
2923
2997
|
emit$2("app:unmount", app);
|
|
2924
2998
|
}
|
|
2925
|
-
const devtoolsComponentAdded =
|
|
2926
|
-
const devtoolsComponentUpdated =
|
|
2927
|
-
const _devtoolsComponentRemoved =
|
|
2999
|
+
const devtoolsComponentAdded = /*@__PURE__*/ createDevtoolsComponentHook("component:added");
|
|
3000
|
+
const devtoolsComponentUpdated = /*@__PURE__*/ createDevtoolsComponentHook("component:updated");
|
|
3001
|
+
const _devtoolsComponentRemoved = /*@__PURE__*/ createDevtoolsComponentHook("component:removed");
|
|
2928
3002
|
const devtoolsComponentRemoved = (component) => {
|
|
2929
3003
|
if (devtools$1 && typeof devtools$1.cleanupBuffer === "function" && !devtools$1.cleanupBuffer(component)) _devtoolsComponentRemoved(component);
|
|
2930
3004
|
};
|
|
2931
|
-
|
|
3005
|
+
/*@__NO_SIDE_EFFECTS__*/
|
|
2932
3006
|
function createDevtoolsComponentHook(hook) {
|
|
2933
3007
|
return (component) => {
|
|
2934
3008
|
emit$2(hook, component.appContext.app, component.uid, component.parent ? component.parent.uid : void 0, component);
|
|
2935
3009
|
};
|
|
2936
3010
|
}
|
|
2937
|
-
const devtoolsPerfStart =
|
|
2938
|
-
const devtoolsPerfEnd =
|
|
3011
|
+
const devtoolsPerfStart = /*@__PURE__*/ createDevtoolsPerformanceHook("perf:start");
|
|
3012
|
+
const devtoolsPerfEnd = /*@__PURE__*/ createDevtoolsPerformanceHook("perf:end");
|
|
2939
3013
|
function createDevtoolsPerformanceHook(hook) {
|
|
2940
3014
|
return (component, type, time) => {
|
|
2941
3015
|
emit$2(hook, component.appContext.app, component.uid, component, type, time);
|
|
@@ -3165,7 +3239,7 @@ function configureCompat$1(config) {
|
|
|
3165
3239
|
if (!!(process.env.NODE_ENV !== "production")) validateCompatConfig(config);
|
|
3166
3240
|
extend(globalCompatConfig, config);
|
|
3167
3241
|
}
|
|
3168
|
-
const seenConfigObjects =
|
|
3242
|
+
const seenConfigObjects = /*@__PURE__*/ new WeakSet();
|
|
3169
3243
|
const warnedInvalidKeys = {};
|
|
3170
3244
|
function validateCompatConfig(config, instance) {
|
|
3171
3245
|
if (seenConfigObjects.has(config)) return;
|
|
@@ -3217,7 +3291,7 @@ function checkCompatEnabled$1(key, instance, ...args) {
|
|
|
3217
3291
|
}
|
|
3218
3292
|
//#endregion
|
|
3219
3293
|
//#region packages/runtime-core/src/compat/instanceEventEmitter.ts
|
|
3220
|
-
const eventRegistryMap =
|
|
3294
|
+
const eventRegistryMap = /*@__PURE__*/ new WeakMap();
|
|
3221
3295
|
function getRegistry(instance) {
|
|
3222
3296
|
let events = eventRegistryMap.get(instance);
|
|
3223
3297
|
if (!events) eventRegistryMap.set(instance, events = Object.create(null));
|
|
@@ -3351,19 +3425,21 @@ const legacyDirectiveHookMap = {
|
|
|
3351
3425
|
};
|
|
3352
3426
|
function mapCompatDirectiveHook(name, dir, instance) {
|
|
3353
3427
|
const mappedName = legacyDirectiveHookMap[name];
|
|
3354
|
-
if (mappedName)
|
|
3355
|
-
|
|
3356
|
-
|
|
3357
|
-
|
|
3358
|
-
|
|
3359
|
-
|
|
3360
|
-
|
|
3361
|
-
|
|
3362
|
-
|
|
3363
|
-
|
|
3364
|
-
|
|
3365
|
-
|
|
3366
|
-
|
|
3428
|
+
if (mappedName) {
|
|
3429
|
+
if (isArray(mappedName)) {
|
|
3430
|
+
const hook = [];
|
|
3431
|
+
mappedName.forEach((mapped) => {
|
|
3432
|
+
const mappedHook = dir[mapped];
|
|
3433
|
+
if (mappedHook) {
|
|
3434
|
+
softAssertCompatEnabled("CUSTOM_DIR", instance, mapped, name);
|
|
3435
|
+
hook.push(mappedHook);
|
|
3436
|
+
}
|
|
3437
|
+
});
|
|
3438
|
+
return hook.length ? hook : void 0;
|
|
3439
|
+
} else {
|
|
3440
|
+
if (dir[mappedName]) softAssertCompatEnabled("CUSTOM_DIR", instance, mappedName, name);
|
|
3441
|
+
return dir[mappedName];
|
|
3442
|
+
}
|
|
3367
3443
|
}
|
|
3368
3444
|
}
|
|
3369
3445
|
//#endregion
|
|
@@ -3550,7 +3626,7 @@ function instanceWatch(source, value, options) {
|
|
|
3550
3626
|
}
|
|
3551
3627
|
const prev = setCurrentInstance(this);
|
|
3552
3628
|
const res = doWatch(getter, cb.bind(publicThis), options);
|
|
3553
|
-
|
|
3629
|
+
restoreCurrentInstance(prev);
|
|
3554
3630
|
return res;
|
|
3555
3631
|
}
|
|
3556
3632
|
function createPathGetter(ctx, path) {
|
|
@@ -3572,15 +3648,16 @@ const isTargetSVG = (target) => typeof SVGElement !== "undefined" && target inst
|
|
|
3572
3648
|
const isTargetMathML = (target) => typeof MathMLElement === "function" && target instanceof MathMLElement;
|
|
3573
3649
|
const resolveTarget = (props, select) => {
|
|
3574
3650
|
const targetSelector = props && props.to;
|
|
3575
|
-
if (isString(targetSelector))
|
|
3576
|
-
|
|
3577
|
-
|
|
3651
|
+
if (isString(targetSelector)) {
|
|
3652
|
+
if (!select) {
|
|
3653
|
+
process.env.NODE_ENV !== "production" && warn$1("Current renderer does not support string target for Teleports. (missing querySelector renderer option)");
|
|
3654
|
+
return null;
|
|
3655
|
+
} else {
|
|
3656
|
+
const target = select(targetSelector);
|
|
3657
|
+
if (!!(process.env.NODE_ENV !== "production") && !target && !isTeleportDisabled(props)) warn$1(`Failed to locate Teleport target with selector "${targetSelector}". Note the target element must exist before the component is mounted - i.e. the target cannot be rendered by the component itself, and ideally should be outside of the entire Vue component tree.`);
|
|
3658
|
+
return target;
|
|
3659
|
+
}
|
|
3578
3660
|
} else {
|
|
3579
|
-
const target = select(targetSelector);
|
|
3580
|
-
if (!!(process.env.NODE_ENV !== "production") && !target && !isTeleportDisabled(props)) warn$1(`Failed to locate Teleport target with selector "${targetSelector}". Note the target element must exist before the component is mounted - i.e. the target cannot be rendered by the component itself, and ideally should be outside of the entire Vue component tree.`);
|
|
3581
|
-
return target;
|
|
3582
|
-
}
|
|
3583
|
-
else {
|
|
3584
3661
|
if (!!(process.env.NODE_ENV !== "production") && !targetSelector && !isTeleportDisabled(props)) warn$1(`Invalid Teleport target: ${targetSelector}`);
|
|
3585
3662
|
return targetSelector;
|
|
3586
3663
|
}
|
|
@@ -3618,7 +3695,8 @@ const TeleportImpl = {
|
|
|
3618
3695
|
if (pendingMounts.get(vnode) !== mountJob) return;
|
|
3619
3696
|
pendingMounts.delete(vnode);
|
|
3620
3697
|
if (isTeleportDisabled(vnode.props)) {
|
|
3621
|
-
|
|
3698
|
+
const mountContainer = parentNode(vnode.el) || container;
|
|
3699
|
+
mount(vnode, mountContainer, vnode.anchor);
|
|
3622
3700
|
updateCssVars(vnode, true);
|
|
3623
3701
|
}
|
|
3624
3702
|
mountToTarget(vnode);
|
|
@@ -3727,15 +3805,17 @@ function hydrateTeleport(node, vnode, parentComponent, parentSuspense, slotScope
|
|
|
3727
3805
|
const disabled = isTeleportDisabled(vnode.props);
|
|
3728
3806
|
if (target) {
|
|
3729
3807
|
const targetNode = target._lpa || target.firstChild;
|
|
3730
|
-
if (vnode.shapeFlag & 16)
|
|
3731
|
-
|
|
3732
|
-
|
|
3733
|
-
|
|
3734
|
-
|
|
3735
|
-
|
|
3736
|
-
|
|
3737
|
-
|
|
3738
|
-
|
|
3808
|
+
if (vnode.shapeFlag & 16) {
|
|
3809
|
+
if (disabled) {
|
|
3810
|
+
hydrateDisabledTeleport(node, vnode);
|
|
3811
|
+
hydrateAnchor(target, targetNode);
|
|
3812
|
+
if (!vnode.targetAnchor) prepareAnchor(target, vnode, createText, insert, parentNode(node) === target ? node : null);
|
|
3813
|
+
} else {
|
|
3814
|
+
vnode.anchor = nextSibling(node);
|
|
3815
|
+
hydrateAnchor(target, targetNode);
|
|
3816
|
+
if (!vnode.targetAnchor) prepareAnchor(target, vnode, createText, insert);
|
|
3817
|
+
hydrateChildren(targetNode && nextSibling(targetNode), vnode, target, parentComponent, parentSuspense, slotScopeIds, optimized);
|
|
3818
|
+
}
|
|
3739
3819
|
}
|
|
3740
3820
|
updateCssVars(vnode, disabled);
|
|
3741
3821
|
} else if (disabled) {
|
|
@@ -3813,59 +3893,27 @@ const BaseTransitionPropsValidators = {
|
|
|
3813
3893
|
onAfterAppear: TransitionHookValidator,
|
|
3814
3894
|
onAppearCancelled: TransitionHookValidator
|
|
3815
3895
|
};
|
|
3816
|
-
|
|
3817
|
-
|
|
3818
|
-
|
|
3819
|
-
|
|
3896
|
+
function isEmptyTransitionChild(vnode, instance) {
|
|
3897
|
+
if (vnode.type === Comment) return true;
|
|
3898
|
+
if (vnode.type === VaporSlot || isVaporComponent(vnode.type)) return !getVaporInterface(instance, vnode).hasTransitionChild(vnode);
|
|
3899
|
+
return !!vnode.component && isEmptyTransitionChild(vnode.component.subTree, instance);
|
|
3900
|
+
}
|
|
3820
3901
|
const BaseTransitionImpl = {
|
|
3821
3902
|
name: `BaseTransition`,
|
|
3822
3903
|
props: BaseTransitionPropsValidators,
|
|
3823
3904
|
setup(props, { slots }) {
|
|
3824
3905
|
const instance = getCurrentInstance();
|
|
3825
3906
|
const state = useTransitionState();
|
|
3907
|
+
let resumeAfterLeave;
|
|
3826
3908
|
return () => {
|
|
3827
|
-
const
|
|
3828
|
-
const child = children && children.length ? findNonCommentChild(children) : instance.subTree ? createCommentVNode() : void 0;
|
|
3909
|
+
const child = resolveTransitionChild(slots.default && slots.default(), !!instance.subTree);
|
|
3829
3910
|
if (!child) return;
|
|
3830
3911
|
const rawProps = /* @__PURE__ */ toRaw(props);
|
|
3831
3912
|
const { mode } = rawProps;
|
|
3832
3913
|
checkTransitionMode(mode);
|
|
3833
|
-
|
|
3834
|
-
|
|
3835
|
-
|
|
3836
|
-
let enterHooks = resolveTransitionHooks(innerChild, rawProps, state, instance, (hooks) => enterHooks = hooks);
|
|
3837
|
-
if (innerChild.type !== Comment) setTransitionHooks(innerChild, enterHooks);
|
|
3838
|
-
let oldInnerChild = instance.subTree && getInnerChild$1(instance.subTree);
|
|
3839
|
-
if (oldInnerChild && oldInnerChild.type !== Comment && !isSameVNodeType(oldInnerChild, innerChild) && recursiveGetSubtree(instance).type !== Comment) {
|
|
3840
|
-
let leavingHooks = resolveTransitionHooks(oldInnerChild, rawProps, state, instance);
|
|
3841
|
-
setTransitionHooks(oldInnerChild, leavingHooks);
|
|
3842
|
-
if (mode === "out-in" && innerChild.type !== Comment) {
|
|
3843
|
-
state.isLeaving = true;
|
|
3844
|
-
leavingHooks.afterLeave = () => {
|
|
3845
|
-
state.isLeaving = false;
|
|
3846
|
-
if (!(instance.job.flags & 4)) instance.update();
|
|
3847
|
-
delete leavingHooks.afterLeave;
|
|
3848
|
-
oldInnerChild = void 0;
|
|
3849
|
-
};
|
|
3850
|
-
return emptyPlaceholder(child);
|
|
3851
|
-
} else if (mode === "in-out" && innerChild.type !== Comment) leavingHooks.delayLeave = (el, earlyRemove, delayedLeave) => {
|
|
3852
|
-
const leavingVNodesCache = getLeavingNodesForType(state, oldInnerChild);
|
|
3853
|
-
leavingVNodesCache[String(oldInnerChild.key)] = oldInnerChild;
|
|
3854
|
-
el[leaveCbKey] = () => {
|
|
3855
|
-
earlyRemove();
|
|
3856
|
-
el[leaveCbKey] = void 0;
|
|
3857
|
-
delete enterHooks.delayedLeave;
|
|
3858
|
-
oldInnerChild = void 0;
|
|
3859
|
-
};
|
|
3860
|
-
enterHooks.delayedLeave = () => {
|
|
3861
|
-
delayedLeave();
|
|
3862
|
-
delete enterHooks.delayedLeave;
|
|
3863
|
-
oldInnerChild = void 0;
|
|
3864
|
-
};
|
|
3865
|
-
};
|
|
3866
|
-
else oldInnerChild = void 0;
|
|
3867
|
-
} else if (oldInnerChild) oldInnerChild = void 0;
|
|
3868
|
-
return child;
|
|
3914
|
+
return prepareTransitionSwitch(instance.subTree, child, rawProps, state, instance, mode === "out-in" ? resumeAfterLeave || (resumeAfterLeave = () => {
|
|
3915
|
+
if (!(instance.job.flags & 4)) instance.update();
|
|
3916
|
+
}) : NOOP);
|
|
3869
3917
|
};
|
|
3870
3918
|
}
|
|
3871
3919
|
};
|
|
@@ -3899,7 +3947,7 @@ function getLeavingNodesForType(state, vnode) {
|
|
|
3899
3947
|
function resolveTransitionHooks(vnode, props, state, instance, postClone) {
|
|
3900
3948
|
const key = String(vnode.key);
|
|
3901
3949
|
const leavingVNodesCache = getLeavingNodesForType(state, vnode);
|
|
3902
|
-
|
|
3950
|
+
const hooks = baseResolveTransitionHooks({
|
|
3903
3951
|
isLeaving: () => leavingVNodesCache[key] === vnode,
|
|
3904
3952
|
setLeavingNodeCache: () => {
|
|
3905
3953
|
leavingVNodesCache[key] = vnode;
|
|
@@ -3917,6 +3965,13 @@ function resolveTransitionHooks(vnode, props, state, instance, postClone) {
|
|
|
3917
3965
|
return hooks;
|
|
3918
3966
|
}
|
|
3919
3967
|
}, props, state, instance);
|
|
3968
|
+
if (vnode.type === VaporSlot) extend(hooks, {
|
|
3969
|
+
__vapor: true,
|
|
3970
|
+
props,
|
|
3971
|
+
state,
|
|
3972
|
+
instance
|
|
3973
|
+
});
|
|
3974
|
+
return hooks;
|
|
3920
3975
|
}
|
|
3921
3976
|
function baseResolveTransitionHooks(context, props, state, instance) {
|
|
3922
3977
|
const { isLeaving, setLeavingNodeCache, unsetLeavingNodeCache, earlyRemove, cloneHooks } = context;
|
|
@@ -3936,8 +3991,10 @@ function baseResolveTransitionHooks(context, props, state, instance) {
|
|
|
3936
3991
|
persisted,
|
|
3937
3992
|
beforeEnter(el) {
|
|
3938
3993
|
let hook = onBeforeEnter;
|
|
3939
|
-
if (!state.isMounted)
|
|
3940
|
-
|
|
3994
|
+
if (!state.isMounted) {
|
|
3995
|
+
if (appear) hook = onBeforeAppear || onBeforeEnter;
|
|
3996
|
+
else return;
|
|
3997
|
+
}
|
|
3941
3998
|
if (el[leaveCbKey]) el[leaveCbKey](true);
|
|
3942
3999
|
earlyRemove();
|
|
3943
4000
|
callHook(hook, [el]);
|
|
@@ -3947,11 +4004,13 @@ function baseResolveTransitionHooks(context, props, state, instance) {
|
|
|
3947
4004
|
let hook = onEnter;
|
|
3948
4005
|
let afterHook = onAfterEnter;
|
|
3949
4006
|
let cancelHook = onEnterCancelled;
|
|
3950
|
-
if (!state.isMounted)
|
|
3951
|
-
|
|
3952
|
-
|
|
3953
|
-
|
|
3954
|
-
|
|
4007
|
+
if (!state.isMounted) {
|
|
4008
|
+
if (appear) {
|
|
4009
|
+
hook = onAppear || onEnter;
|
|
4010
|
+
afterHook = onAfterAppear || onAfterEnter;
|
|
4011
|
+
cancelHook = onAppearCancelled || onEnterCancelled;
|
|
4012
|
+
} else return;
|
|
4013
|
+
}
|
|
3955
4014
|
let called = false;
|
|
3956
4015
|
el[enterCbKey$1] = (cancelled) => {
|
|
3957
4016
|
if (called) return;
|
|
@@ -3985,7 +4044,7 @@ function baseResolveTransitionHooks(context, props, state, instance) {
|
|
|
3985
4044
|
else done();
|
|
3986
4045
|
},
|
|
3987
4046
|
clone(node) {
|
|
3988
|
-
return cloneHooks(node);
|
|
4047
|
+
return cloneHooks ? cloneHooks(node) : hooks;
|
|
3989
4048
|
}
|
|
3990
4049
|
};
|
|
3991
4050
|
return hooks;
|
|
@@ -4009,16 +4068,102 @@ function getInnerChild$1(vnode) {
|
|
|
4009
4068
|
if (shapeFlag & 32 && isFunction(children.default)) return children.default();
|
|
4010
4069
|
}
|
|
4011
4070
|
}
|
|
4071
|
+
function resolveTransitionChild(children, renderEmpty = false) {
|
|
4072
|
+
const branches = children && getTransitionRawChildren(children, true);
|
|
4073
|
+
return branches && branches.length ? findNonCommentChild(branches) : renderEmpty ? createCommentVNode() : void 0;
|
|
4074
|
+
}
|
|
4075
|
+
/**
|
|
4076
|
+
* @internal
|
|
4077
|
+
*/
|
|
4078
|
+
function prepareTransitionSwitch(previous, next, props, state, instance, resumeAfterLeave, delayedLeaveSource) {
|
|
4079
|
+
if (state.isLeaving) return emptyPlaceholder(next);
|
|
4080
|
+
const nextInner = getInnerChild$1(next);
|
|
4081
|
+
if (!nextInner) return emptyPlaceholder(next);
|
|
4082
|
+
let enterHooks = resolveTransitionHooks(nextInner, props, state, instance, (hooks) => {
|
|
4083
|
+
if (delayedLeaveSource) forwardDelayedLeave(hooks, delayedLeaveSource);
|
|
4084
|
+
enterHooks = hooks;
|
|
4085
|
+
});
|
|
4086
|
+
if (delayedLeaveSource) forwardDelayedLeave(enterHooks, delayedLeaveSource);
|
|
4087
|
+
if (nextInner.type !== Comment) setTransitionHooks(nextInner, enterHooks);
|
|
4088
|
+
const mode = props.mode;
|
|
4089
|
+
const previousInner = previous && getInnerChild$1(previous);
|
|
4090
|
+
if (previous && previousInner && !isSameVNodeType(previousInner, nextInner) && !isEmptyTransitionChild(previousInner, instance)) {
|
|
4091
|
+
const leavingHooks = prepareLeavingTransitionHooks(previousInner, props, state, instance);
|
|
4092
|
+
if (nextInner.type !== Comment && (mode === "out-in" || mode === "in-out") && applyTransitionModeSwitch(previousInner, leavingHooks, mode === "in-out" ? () => enterHooks : void 0, props, state, resumeAfterLeave)) return emptyPlaceholder(next);
|
|
4093
|
+
}
|
|
4094
|
+
return next;
|
|
4095
|
+
}
|
|
4096
|
+
function forwardDelayedLeave(hooks, source) {
|
|
4097
|
+
const delayedLeave = source && source.delayedLeave;
|
|
4098
|
+
if (!delayedLeave) return;
|
|
4099
|
+
hooks.delayedLeave = () => {
|
|
4100
|
+
if (source.delayedLeave === delayedLeave) delayedLeave();
|
|
4101
|
+
delete hooks.delayedLeave;
|
|
4102
|
+
};
|
|
4103
|
+
}
|
|
4104
|
+
/**
|
|
4105
|
+
* Prepares an outgoing VNode when the incoming branch belongs to another
|
|
4106
|
+
* renderer. Returns true when out-in must defer the incoming branch.
|
|
4107
|
+
*
|
|
4108
|
+
* @internal
|
|
4109
|
+
*/
|
|
4110
|
+
function prepareTransitionLeave(previous, enterHooks, props, state, instance, resumeAfterLeave) {
|
|
4111
|
+
const previousInner = getInnerChild$1(previous);
|
|
4112
|
+
if (!previousInner || isEmptyTransitionChild(previousInner, instance)) return false;
|
|
4113
|
+
return applyTransitionModeSwitch(previousInner, prepareLeavingTransitionHooks(previousInner, props, state, instance), enterHooks ? () => enterHooks : void 0, props, state, resumeAfterLeave);
|
|
4114
|
+
}
|
|
4115
|
+
function prepareLeavingTransitionHooks(previousInner, props, state, instance) {
|
|
4116
|
+
return setTransitionHooks(previousInner, resolveTransitionHooks(previousInner, props, state, instance));
|
|
4117
|
+
}
|
|
4118
|
+
function applyTransitionModeSwitch(leavingVNode, leavingHooks, getEnterHooks, props, state, resumeAfterLeave) {
|
|
4119
|
+
if (props.mode === "out-in") {
|
|
4120
|
+
state.isLeaving = true;
|
|
4121
|
+
leavingHooks.afterLeave = () => {
|
|
4122
|
+
state.isLeaving = false;
|
|
4123
|
+
resumeAfterLeave();
|
|
4124
|
+
delete leavingHooks.afterLeave;
|
|
4125
|
+
};
|
|
4126
|
+
return true;
|
|
4127
|
+
} else if (props.mode === "in-out" && getEnterHooks) {
|
|
4128
|
+
let delayedLeavingVNode = leavingVNode;
|
|
4129
|
+
leavingHooks.delayLeave = (el, earlyRemove, delayedLeave) => {
|
|
4130
|
+
const enterHooks = getEnterHooks();
|
|
4131
|
+
if (!enterHooks) {
|
|
4132
|
+
delayedLeave();
|
|
4133
|
+
return;
|
|
4134
|
+
}
|
|
4135
|
+
const vnode = delayedLeavingVNode;
|
|
4136
|
+
const leavingVNodesCache = getLeavingNodesForType(state, vnode);
|
|
4137
|
+
leavingVNodesCache[String(vnode.key)] = vnode;
|
|
4138
|
+
el[leaveCbKey] = () => {
|
|
4139
|
+
earlyRemove();
|
|
4140
|
+
el[leaveCbKey] = void 0;
|
|
4141
|
+
delete enterHooks.delayedLeave;
|
|
4142
|
+
delayedLeavingVNode = void 0;
|
|
4143
|
+
};
|
|
4144
|
+
enterHooks.delayedLeave = () => {
|
|
4145
|
+
delayedLeave();
|
|
4146
|
+
delete enterHooks.delayedLeave;
|
|
4147
|
+
delayedLeavingVNode = void 0;
|
|
4148
|
+
};
|
|
4149
|
+
};
|
|
4150
|
+
}
|
|
4151
|
+
return false;
|
|
4152
|
+
}
|
|
4012
4153
|
function setTransitionHooks(vnode, hooks) {
|
|
4013
|
-
if (vnode.shapeFlag & 6 && vnode.component)
|
|
4014
|
-
else {
|
|
4154
|
+
if (vnode.shapeFlag & 6 && vnode.component) {
|
|
4015
4155
|
vnode.transition = hooks;
|
|
4016
|
-
setTransitionHooks(vnode.component
|
|
4017
|
-
|
|
4018
|
-
|
|
4019
|
-
|
|
4020
|
-
|
|
4156
|
+
if (isVaporComponent(vnode.type)) getVaporInterface(vnode.component, vnode).setTransitionHooks(vnode.component, hooks);
|
|
4157
|
+
else {
|
|
4158
|
+
const subTree = vnode.component.subTree;
|
|
4159
|
+
return setTransitionHooks(isTeleport(subTree.type) ? getInnerChild$1(subTree) || subTree : subTree, hooks);
|
|
4160
|
+
}
|
|
4161
|
+
} else if (vnode.shapeFlag & 128) {
|
|
4162
|
+
const contentHooks = vnode.ssContent.transition = hooks.clone(vnode.ssContent);
|
|
4163
|
+
const fallbackHooks = vnode.ssFallback.transition = hooks.clone(vnode.ssFallback);
|
|
4164
|
+
return vnode.suspense && vnode.suspense.activeBranch === vnode.ssFallback ? fallbackHooks : contentHooks;
|
|
4021
4165
|
} else vnode.transition = hooks;
|
|
4166
|
+
return hooks;
|
|
4022
4167
|
}
|
|
4023
4168
|
function getTransitionRawChildren(children, keepComment = false, parentKey) {
|
|
4024
4169
|
let ret = [];
|
|
@@ -4042,9 +4187,9 @@ function checkTransitionMode(mode) {
|
|
|
4042
4187
|
}
|
|
4043
4188
|
//#endregion
|
|
4044
4189
|
//#region packages/runtime-core/src/apiDefineComponent.ts
|
|
4045
|
-
|
|
4190
|
+
/*@__NO_SIDE_EFFECTS__*/
|
|
4046
4191
|
function defineComponent(options, extraOptions) {
|
|
4047
|
-
return isFunction(options) ? extend({ name: options.name }, extraOptions, { setup: options }) : options;
|
|
4192
|
+
return isFunction(options) ? /*@__PURE__*/ (() => extend({ name: options.name }, extraOptions, { setup: options }))() : options;
|
|
4048
4193
|
}
|
|
4049
4194
|
//#endregion
|
|
4050
4195
|
//#region packages/runtime-core/src/helpers/useId.ts
|
|
@@ -4141,15 +4286,16 @@ function setRef(rawRef, oldRawRef, parentSuspense, vnode, isUnmount = false) {
|
|
|
4141
4286
|
if (rawRef.f) {
|
|
4142
4287
|
const existing = _isString ? canSetSetupRef(ref) ? setupState[ref] : refs[ref] : canSetRef(ref) || !rawRef.k ? ref.value : refs[rawRef.k];
|
|
4143
4288
|
if (isUnmount) isArray(existing) && remove(existing, refValue);
|
|
4144
|
-
else if (!isArray(existing))
|
|
4145
|
-
|
|
4146
|
-
|
|
4147
|
-
|
|
4148
|
-
|
|
4149
|
-
|
|
4150
|
-
|
|
4151
|
-
|
|
4152
|
-
|
|
4289
|
+
else if (!isArray(existing)) {
|
|
4290
|
+
if (_isString) {
|
|
4291
|
+
refs[ref] = [refValue];
|
|
4292
|
+
if (canSetSetupRef(ref)) setupState[ref] = refs[ref];
|
|
4293
|
+
} else {
|
|
4294
|
+
const newVal = [refValue];
|
|
4295
|
+
if (canSetRef(ref, rawRef.k)) ref.value = newVal;
|
|
4296
|
+
if (rawRef.k) refs[rawRef.k] = newVal;
|
|
4297
|
+
}
|
|
4298
|
+
} else if (!existing.includes(refValue)) existing.push(refValue);
|
|
4153
4299
|
} else if (_isString) {
|
|
4154
4300
|
refs[ref] = value;
|
|
4155
4301
|
if (canSetSetupRef(ref)) setupState[ref] = value;
|
|
@@ -4210,7 +4356,18 @@ const logMismatchError = () => {
|
|
|
4210
4356
|
hasLoggedMismatchError = true;
|
|
4211
4357
|
};
|
|
4212
4358
|
const isSVGContainer = (container) => container.namespaceURI.includes("svg") && container.tagName !== "foreignObject";
|
|
4213
|
-
const isMathMLContainer = (container) =>
|
|
4359
|
+
const isMathMLContainer = (container) => {
|
|
4360
|
+
if (!container.namespaceURI.includes("MathML")) return false;
|
|
4361
|
+
if (container.tagName !== "annotation-xml") return true;
|
|
4362
|
+
const encoding = container.getAttribute("encoding");
|
|
4363
|
+
return !encoding || !encoding.includes("html");
|
|
4364
|
+
};
|
|
4365
|
+
/**
|
|
4366
|
+
* Resolve the element namespace a container's children should be created in.
|
|
4367
|
+
* The live DOM is the source of truth, so this also covers containers that are
|
|
4368
|
+
* only known at runtime (interop boundaries, teleport targets).
|
|
4369
|
+
* @internal
|
|
4370
|
+
*/
|
|
4214
4371
|
const getContainerType = (container) => {
|
|
4215
4372
|
if (container.nodeType !== 1) return void 0;
|
|
4216
4373
|
if (isSVGContainer(container)) return "svg";
|
|
@@ -4236,7 +4393,7 @@ function createHydrationFunctions(rendererInternals) {
|
|
|
4236
4393
|
};
|
|
4237
4394
|
const hydrateNode = (node, vnode, parentComponent, parentSuspense, slotScopeIds, optimized = false) => {
|
|
4238
4395
|
optimized = optimized || !!vnode.dynamicChildren;
|
|
4239
|
-
const isFragmentStart = isComment(node) && node.data === "[";
|
|
4396
|
+
const isFragmentStart = isComment(node) && (node.data === "[" || node.data === "(");
|
|
4240
4397
|
const onMismatch = () => handleMismatch(node, vnode, parentComponent, parentSuspense, slotScopeIds, isFragmentStart);
|
|
4241
4398
|
const { type, ref, shapeFlag, patchFlag } = vnode;
|
|
4242
4399
|
let domType = node.nodeType;
|
|
@@ -4252,11 +4409,12 @@ function createHydrationFunctions(rendererInternals) {
|
|
|
4252
4409
|
let nextNode = null;
|
|
4253
4410
|
switch (type) {
|
|
4254
4411
|
case Text:
|
|
4255
|
-
if (domType !== 3)
|
|
4256
|
-
|
|
4257
|
-
|
|
4258
|
-
|
|
4259
|
-
|
|
4412
|
+
if (domType !== 3) {
|
|
4413
|
+
if (vnode.children === "") {
|
|
4414
|
+
insert(vnode.el = createText(""), parentNode(node), node);
|
|
4415
|
+
nextNode = node;
|
|
4416
|
+
} else nextNode = onMismatch();
|
|
4417
|
+
} else {
|
|
4260
4418
|
if (node.data !== vnode.children) {
|
|
4261
4419
|
(process.env.NODE_ENV !== "production" || __VUE_PROD_HYDRATION_MISMATCH_DETAILS__) && warn$1(`Hydration text mismatch in`, node.parentNode, `\n - rendered on server: ${JSON.stringify(node.data)}\n - expected on client: ${JSON.stringify(vnode.children)}`);
|
|
4262
4420
|
logMismatchError();
|
|
@@ -4293,45 +4451,35 @@ function createHydrationFunctions(rendererInternals) {
|
|
|
4293
4451
|
else nextNode = hydrateFragment(node, vnode, parentComponent, parentSuspense, slotScopeIds, optimized);
|
|
4294
4452
|
break;
|
|
4295
4453
|
case VaporSlot:
|
|
4296
|
-
nextNode = getVaporInterface(parentComponent, vnode).hydrateSlot(vnode, node, parentComponent, parentSuspense);
|
|
4454
|
+
nextNode = getVaporInterface(parentComponent, vnode).hydrateSlot(vnode, node, parentComponent, parentSuspense, slotScopeIds);
|
|
4297
4455
|
break;
|
|
4298
|
-
default: if (shapeFlag & 1)
|
|
4299
|
-
|
|
4300
|
-
|
|
4456
|
+
default: if (shapeFlag & 1) {
|
|
4457
|
+
if ((domType !== 1 || vnode.type.toLowerCase() !== node.tagName.toLowerCase()) && !isTemplateNode(node)) nextNode = onMismatch();
|
|
4458
|
+
else nextNode = hydrateElement(node, vnode, parentComponent, parentSuspense, slotScopeIds, optimized);
|
|
4459
|
+
} else if (shapeFlag & 6) {
|
|
4301
4460
|
vnode.slotScopeIds = slotScopeIds;
|
|
4302
4461
|
const container = parentNode(node);
|
|
4303
4462
|
if (isFragmentStart) nextNode = locateClosingAnchor(node);
|
|
4304
4463
|
else if (isComment(node) && node.data === "teleport start") nextNode = locateClosingAnchor(node, node.data, "teleport end");
|
|
4305
4464
|
else nextNode = nextSibling(node);
|
|
4306
|
-
if (vnode.type.__vapor)
|
|
4307
|
-
|
|
4308
|
-
getVaporInterface(parentComponent, vnode).hydrate(vnode, node, container, nextNode, parentComponent, parentSuspense, () => {
|
|
4309
|
-
if (vnode.dirs) {
|
|
4310
|
-
invokeDirectiveHook(vnode, null, parentComponent, "created");
|
|
4311
|
-
invokeDirectiveHook(vnode, null, parentComponent, "beforeMount");
|
|
4312
|
-
}
|
|
4313
|
-
}, () => {
|
|
4314
|
-
if (vnodeBeforeMountHook) invokeVNodeHook(vnodeBeforeMountHook, parentComponent, vnode);
|
|
4315
|
-
});
|
|
4316
|
-
if (vnode.dirs) queueEffectWithSuspense(() => invokeDirectiveHook(vnode, null, parentComponent, "mounted"), void 0, parentSuspense);
|
|
4317
|
-
const vnodeMountedHook = !isAsyncWrapper(vnode) && vnode.props && vnode.props.onVnodeMounted;
|
|
4318
|
-
if (vnodeMountedHook) queueEffectWithSuspense(() => invokeVNodeHook(vnodeMountedHook, parentComponent, vnode), void 0, parentSuspense);
|
|
4319
|
-
} else {
|
|
4465
|
+
if (vnode.type.__vapor) getVaporInterface(parentComponent, vnode).hydrate(vnode, node, container, nextNode, parentComponent, parentSuspense);
|
|
4466
|
+
else {
|
|
4320
4467
|
mountComponent(vnode, container, null, parentComponent, parentSuspense, getContainerType(container), optimized);
|
|
4321
4468
|
const component = vnode.component;
|
|
4322
|
-
if (isAsyncWrapper(vnode)
|
|
4469
|
+
if (!component.subTree && (isAsyncWrapper(vnode) || component.asyncDep)) {
|
|
4323
4470
|
let subTree;
|
|
4324
4471
|
if (isFragmentStart) {
|
|
4325
|
-
subTree = createVNode(
|
|
4472
|
+
subTree = createVNode(Static);
|
|
4326
4473
|
subTree.anchor = nextNode ? nextNode.previousSibling : container.lastChild;
|
|
4327
|
-
} else subTree = node.nodeType === 3 ? createTextVNode("") : createVNode("div");
|
|
4474
|
+
} else subTree = node.nodeType === 3 ? createTextVNode("") : createVNode(node.nodeType === 8 ? Comment : "div");
|
|
4328
4475
|
subTree.el = node;
|
|
4329
4476
|
component.subTree = subTree;
|
|
4330
4477
|
}
|
|
4331
4478
|
}
|
|
4332
|
-
} else if (shapeFlag & 64)
|
|
4333
|
-
|
|
4334
|
-
|
|
4479
|
+
} else if (shapeFlag & 64) {
|
|
4480
|
+
if (domType !== 8) nextNode = onMismatch();
|
|
4481
|
+
else nextNode = vnode.type.hydrate(node, vnode, parentComponent, parentSuspense, slotScopeIds, optimized, rendererInternals, hydrateChildren);
|
|
4482
|
+
} else if (shapeFlag & 128) nextNode = vnode.type.hydrate(node, vnode, parentComponent, parentSuspense, getContainerType(parentNode(node)), slotScopeIds, optimized, rendererInternals, hydrateNode);
|
|
4335
4483
|
else if (!!(process.env.NODE_ENV !== "production") || __VUE_PROD_HYDRATION_MISMATCH_DETAILS__) warn$1("Invalid HostVNode type:", type, `(${typeof type})`);
|
|
4336
4484
|
}
|
|
4337
4485
|
if (ref != null) setRef(ref, null, parentSuspense, vnode);
|
|
@@ -4385,7 +4533,10 @@ function createHydrationFunctions(rendererInternals) {
|
|
|
4385
4533
|
const namespace = el.namespaceURI.includes("svg") ? "svg" : el.namespaceURI.includes("MathML") ? "mathml" : void 0;
|
|
4386
4534
|
for (const key in props) {
|
|
4387
4535
|
if ((!!(process.env.NODE_ENV !== "production") || __VUE_PROD_HYDRATION_MISMATCH_DETAILS__) && !(dirs && dirs.some((d) => d.dir.created)) && propHasMismatch(el, key, props[key], vnode, parentComponent)) logMismatchError();
|
|
4388
|
-
if (forcePatch && (key.endsWith("value") || key === "indeterminate") || isOn(key) && !isReservedProp(key) || key[0] === "." || isCustomElement && !isReservedProp(key) || dynamicProps && dynamicProps.includes(key))
|
|
4536
|
+
if (forcePatch && (key.endsWith("value") || key === "indeterminate") || isOn(key) && !isReservedProp(key) || key[0] === "." || isCustomElement && !isReservedProp(key) || dynamicProps && dynamicProps.includes(key)) {
|
|
4537
|
+
if (isUnchangedResourceProp(el, key, props[key])) continue;
|
|
4538
|
+
patchProp(el, key, null, props[key], namespace, parentComponent);
|
|
4539
|
+
}
|
|
4389
4540
|
}
|
|
4390
4541
|
} else if (props.onClick) patchProp(el, "onClick", null, props.onClick, void 0, parentComponent);
|
|
4391
4542
|
else if (patchFlag & 4 && /* @__PURE__ */ isReactive(props.style)) for (const key in props.style) props.style[key];
|
|
@@ -4435,8 +4586,9 @@ function createHydrationFunctions(rendererInternals) {
|
|
|
4435
4586
|
const { slotScopeIds: fragmentSlotScopeIds } = vnode;
|
|
4436
4587
|
if (fragmentSlotScopeIds) slotScopeIds = slotScopeIds ? slotScopeIds.concat(fragmentSlotScopeIds) : fragmentSlotScopeIds;
|
|
4437
4588
|
const container = parentNode(node);
|
|
4438
|
-
const
|
|
4439
|
-
|
|
4589
|
+
const first = nextSibling(node);
|
|
4590
|
+
const next = vnode.vo && node.data === "(" ? getVaporInterface(parentComponent, vnode).hydrateSlotOutlet(vnode, node, parentComponent, parentSuspense, slotScopeIds) : hydrateChildren(first, vnode, container, parentComponent, parentSuspense, slotScopeIds, optimized);
|
|
4591
|
+
if (next && isComment(next) && next.data === (node.data === "(" ? ")" : "]")) return nextSibling(vnode.anchor = next);
|
|
4440
4592
|
else {
|
|
4441
4593
|
logMismatchError();
|
|
4442
4594
|
insert(vnode.anchor = createComment(`]`), container, next);
|
|
@@ -4445,7 +4597,7 @@ function createHydrationFunctions(rendererInternals) {
|
|
|
4445
4597
|
};
|
|
4446
4598
|
const handleMismatch = (node, vnode, parentComponent, parentSuspense, slotScopeIds, isFragment) => {
|
|
4447
4599
|
if (!isNodeMismatchAllowed(node, vnode)) {
|
|
4448
|
-
(process.env.NODE_ENV !== "production" || __VUE_PROD_HYDRATION_MISMATCH_DETAILS__) && warn$1(`Hydration node mismatch:\n- rendered on server:`, node, node.nodeType === 3 ? `(text)` : isComment(node) && node.data === "[" ? `(start of fragment)` : ``, `\n- expected on client:`, vnode.type);
|
|
4600
|
+
(process.env.NODE_ENV !== "production" || __VUE_PROD_HYDRATION_MISMATCH_DETAILS__) && warn$1(`Hydration node mismatch:\n- rendered on server:`, node, node.nodeType === 3 ? `(text)` : isComment(node) && (node.data === "[" || node.data === "(") ? `(start of fragment)` : ``, `\n- expected on client:`, vnode.type);
|
|
4449
4601
|
logMismatchError();
|
|
4450
4602
|
}
|
|
4451
4603
|
vnode.el = null;
|
|
@@ -4461,20 +4613,22 @@ function createHydrationFunctions(rendererInternals) {
|
|
|
4461
4613
|
const container = parentNode(node);
|
|
4462
4614
|
remove(node);
|
|
4463
4615
|
patch(null, vnode, container, next, parentComponent, parentSuspense, getContainerType(container), slotScopeIds);
|
|
4464
|
-
if (parentComponent) {
|
|
4616
|
+
if (parentComponent && parentComponent.vnode) {
|
|
4465
4617
|
parentComponent.vnode.el = vnode.el;
|
|
4466
4618
|
updateHOCHostEl(parentComponent, vnode.el);
|
|
4467
4619
|
}
|
|
4468
4620
|
return next;
|
|
4469
4621
|
};
|
|
4470
|
-
const locateClosingAnchor = (node, open = "[", close = "]") => {
|
|
4622
|
+
const locateClosingAnchor = (node, open = node && isComment(node) && node.data === "(" ? "(" : "[", close = open === "(" ? ")" : "]") => {
|
|
4471
4623
|
let match = 0;
|
|
4472
4624
|
while (node) {
|
|
4473
4625
|
node = nextSibling(node);
|
|
4474
4626
|
if (node && isComment(node)) {
|
|
4475
4627
|
if (node.data === open) match++;
|
|
4476
|
-
if (node.data === close)
|
|
4477
|
-
|
|
4628
|
+
if (node.data === close) {
|
|
4629
|
+
if (match === 0) return nextSibling(node);
|
|
4630
|
+
else match--;
|
|
4631
|
+
}
|
|
4478
4632
|
}
|
|
4479
4633
|
}
|
|
4480
4634
|
return node;
|
|
@@ -4484,7 +4638,7 @@ function createHydrationFunctions(rendererInternals) {
|
|
|
4484
4638
|
if (parentNode) parentNode.replaceChild(newNode, oldNode);
|
|
4485
4639
|
let parent = parentComponent;
|
|
4486
4640
|
while (parent) {
|
|
4487
|
-
if (parent.vnode.el === oldNode) parent.vnode.el = parent.subTree.el = newNode;
|
|
4641
|
+
if (parent.vnode && parent.vnode.el === oldNode) parent.vnode.el = parent.subTree.el = newNode;
|
|
4488
4642
|
parent = parent.parent;
|
|
4489
4643
|
}
|
|
4490
4644
|
};
|
|
@@ -4493,6 +4647,16 @@ function createHydrationFunctions(rendererInternals) {
|
|
|
4493
4647
|
const isTemplateNode = (node) => {
|
|
4494
4648
|
return node.nodeType === 1 && node.tagName === "TEMPLATE";
|
|
4495
4649
|
};
|
|
4650
|
+
const resourceProps = /*@__PURE__*/ new Set([
|
|
4651
|
+
"src",
|
|
4652
|
+
"srcset",
|
|
4653
|
+
"href",
|
|
4654
|
+
"poster"
|
|
4655
|
+
]);
|
|
4656
|
+
function isUnchangedResourceProp(el, key, clientValue) {
|
|
4657
|
+
if (!resourceProps.has(key)) return false;
|
|
4658
|
+
return el.getAttribute(key) === (clientValue == null ? null : `${clientValue}`);
|
|
4659
|
+
}
|
|
4496
4660
|
/**
|
|
4497
4661
|
* Dev only
|
|
4498
4662
|
*/
|
|
@@ -4536,7 +4700,10 @@ function propHasMismatch(el, key, clientValue, vnode, instance) {
|
|
|
4536
4700
|
function getAttributeMismatch(el, key, clientValue) {
|
|
4537
4701
|
let actual;
|
|
4538
4702
|
let expected;
|
|
4539
|
-
if (
|
|
4703
|
+
if (key === "hidden") {
|
|
4704
|
+
actual = normalizeHiddenValue(el.getAttribute(key));
|
|
4705
|
+
expected = normalizeHiddenValue(clientValue);
|
|
4706
|
+
} else if (isBooleanAttr(key)) {
|
|
4540
4707
|
actual = el.hasAttribute(key);
|
|
4541
4708
|
expected = includeBooleanAttr(clientValue);
|
|
4542
4709
|
} else if (clientValue == null) {
|
|
@@ -4564,6 +4731,11 @@ function warnPropMismatch(el, mismatchKey, mismatchType, actual, expected) {
|
|
|
4564
4731
|
}
|
|
4565
4732
|
return false;
|
|
4566
4733
|
}
|
|
4734
|
+
function normalizeHiddenValue(value) {
|
|
4735
|
+
if (!isRenderableAttrValue(value)) return false;
|
|
4736
|
+
if (isString(value)) return value.toLowerCase() === "until-found" ? "until-found" : "";
|
|
4737
|
+
return includeBooleanAttr(value) ? "" : false;
|
|
4738
|
+
}
|
|
4567
4739
|
function toClassSet(str) {
|
|
4568
4740
|
return new Set(str.trim().split(/\s+/));
|
|
4569
4741
|
}
|
|
@@ -4714,16 +4886,18 @@ const hydrateOnInteraction = (interactions = []) => (hydrate, forEach) => {
|
|
|
4714
4886
|
return teardown;
|
|
4715
4887
|
};
|
|
4716
4888
|
function forEachElement(node, cb) {
|
|
4717
|
-
if (isComment(node) && node.data === "[") {
|
|
4889
|
+
if (isComment(node) && (node.data === "[" || node.data === "(")) {
|
|
4890
|
+
const open = node.data;
|
|
4891
|
+
const close = open === "[" ? "]" : ")";
|
|
4718
4892
|
let depth = 1;
|
|
4719
4893
|
let next = node.nextSibling;
|
|
4720
4894
|
while (next) {
|
|
4721
4895
|
if (next.nodeType === 1) {
|
|
4722
4896
|
if (cb(next) === false) break;
|
|
4723
4897
|
} else if (isComment(next)) {
|
|
4724
|
-
if (next.data ===
|
|
4898
|
+
if (next.data === close) {
|
|
4725
4899
|
if (--depth === 0) break;
|
|
4726
|
-
} else if (next.data ===
|
|
4900
|
+
} else if (next.data === open) depth++;
|
|
4727
4901
|
}
|
|
4728
4902
|
next = next.nextSibling;
|
|
4729
4903
|
}
|
|
@@ -4732,14 +4906,14 @@ function forEachElement(node, cb) {
|
|
|
4732
4906
|
//#endregion
|
|
4733
4907
|
//#region packages/runtime-core/src/apiAsyncComponent.ts
|
|
4734
4908
|
const isAsyncWrapper = (i) => !!i.type.__asyncLoader;
|
|
4735
|
-
|
|
4909
|
+
/*@__NO_SIDE_EFFECTS__*/
|
|
4736
4910
|
function defineAsyncComponent(source) {
|
|
4737
4911
|
const { load, getResolvedComp, setPendingRequest, source: { loadingComponent, errorComponent, delay, hydrate: hydrateStrategy, timeout, suspensible = true } } = createAsyncComponentContext(source);
|
|
4738
4912
|
return /* @__PURE__ */ defineComponent({
|
|
4739
4913
|
name: "AsyncComponentWrapper",
|
|
4740
4914
|
__asyncLoader: load,
|
|
4741
4915
|
__asyncHydrate(el, instance, hydrate) {
|
|
4742
|
-
performAsyncHydrate(el, instance, hydrate, getResolvedComp, load, hydrateStrategy);
|
|
4916
|
+
performAsyncHydrate(el, instance, hydrate, getResolvedComp, load, hydrateStrategy, true);
|
|
4743
4917
|
},
|
|
4744
4918
|
get __asyncResolved() {
|
|
4745
4919
|
return getResolvedComp();
|
|
@@ -4858,10 +5032,10 @@ const useAsyncComponentState = (delay, timeout, onError, instance = currentInsta
|
|
|
4858
5032
|
* shared between core and vapor
|
|
4859
5033
|
* @internal
|
|
4860
5034
|
*/
|
|
4861
|
-
function performAsyncHydrate(el, instance, hydrate, getResolvedComp, load, hydrateStrategy) {
|
|
5035
|
+
function performAsyncHydrate(el, instance, hydrate, getResolvedComp, load, hydrateStrategy, skipIfUpdated) {
|
|
4862
5036
|
const wasConnected = el.isConnected;
|
|
4863
5037
|
let patched = false;
|
|
4864
|
-
(instance.bu || (instance.bu = [])).push(() => patched = true);
|
|
5038
|
+
if (skipIfUpdated) (instance.bu || (instance.bu = [])).push(() => patched = true);
|
|
4865
5039
|
const performHydrate = () => {
|
|
4866
5040
|
if (patched) {
|
|
4867
5041
|
if (!!(process.env.NODE_ENV !== "production")) {
|
|
@@ -4951,10 +5125,13 @@ const KeepAliveImpl = {
|
|
|
4951
5125
|
});
|
|
4952
5126
|
let pendingCacheKey = null;
|
|
4953
5127
|
const cacheSubtree = () => {
|
|
4954
|
-
if (pendingCacheKey != null)
|
|
4955
|
-
|
|
4956
|
-
|
|
4957
|
-
|
|
5128
|
+
if (pendingCacheKey != null) {
|
|
5129
|
+
if (isSuspense(keepAliveInstance.subTree.type)) queuePostRenderEffect(() => {
|
|
5130
|
+
const vnode = getInnerChild(keepAliveInstance.subTree);
|
|
5131
|
+
if (vnode.component) cache.set(pendingCacheKey, vnode);
|
|
5132
|
+
}, void 0, keepAliveInstance.subTree.suspense);
|
|
5133
|
+
else cache.set(pendingCacheKey, getInnerChild(keepAliveInstance.subTree));
|
|
5134
|
+
}
|
|
4958
5135
|
};
|
|
4959
5136
|
onMounted(cacheSubtree);
|
|
4960
5137
|
onUpdated(cacheSubtree);
|
|
@@ -5025,7 +5202,7 @@ const decorate$2 = (t) => {
|
|
|
5025
5202
|
t.__isBuiltIn = true;
|
|
5026
5203
|
return t;
|
|
5027
5204
|
};
|
|
5028
|
-
const KeepAlive =
|
|
5205
|
+
const KeepAlive = /*@__PURE__*/ decorate$2(KeepAliveImpl);
|
|
5029
5206
|
function matches(pattern, name) {
|
|
5030
5207
|
if (isArray(pattern)) return pattern.some((p) => matches(p, name));
|
|
5031
5208
|
else if (isString(pattern)) return pattern.split(",").includes(name);
|
|
@@ -5116,7 +5293,7 @@ function injectHook(type, hook, target = currentInstance, prepend = false) {
|
|
|
5116
5293
|
try {
|
|
5117
5294
|
return callWithAsyncErrorHandling(hook, target, type, args);
|
|
5118
5295
|
} finally {
|
|
5119
|
-
|
|
5296
|
+
restoreCurrentInstance(prev);
|
|
5120
5297
|
setActiveSub(prevSub);
|
|
5121
5298
|
}
|
|
5122
5299
|
});
|
|
@@ -5241,16 +5418,17 @@ function compatH(type, propsOrChildren, children) {
|
|
|
5241
5418
|
}
|
|
5242
5419
|
const l = arguments.length;
|
|
5243
5420
|
const is2ndArgArrayChildren = isArray(propsOrChildren);
|
|
5244
|
-
if (l === 2 || is2ndArgArrayChildren)
|
|
5245
|
-
if (
|
|
5246
|
-
|
|
5247
|
-
|
|
5248
|
-
|
|
5421
|
+
if (l === 2 || is2ndArgArrayChildren) {
|
|
5422
|
+
if (isObject(propsOrChildren) && !is2ndArgArrayChildren) {
|
|
5423
|
+
if (isVNode(propsOrChildren)) return convertLegacySlots(createVNode(type, null, [propsOrChildren]));
|
|
5424
|
+
return convertLegacySlots(convertLegacyDirectives(createVNode(type, convertLegacyProps(propsOrChildren, type)), propsOrChildren));
|
|
5425
|
+
} else return convertLegacySlots(createVNode(type, null, propsOrChildren));
|
|
5426
|
+
} else {
|
|
5249
5427
|
if (isVNode(children)) children = [children];
|
|
5250
5428
|
return convertLegacySlots(convertLegacyDirectives(createVNode(type, convertLegacyProps(propsOrChildren, type), children), propsOrChildren));
|
|
5251
5429
|
}
|
|
5252
5430
|
}
|
|
5253
|
-
const skipLegacyRootLevelProps =
|
|
5431
|
+
const skipLegacyRootLevelProps = /*@__PURE__*/ makeMap("staticStyle,staticClass,directives,model,hook");
|
|
5254
5432
|
function convertLegacyProps(legacyProps, type) {
|
|
5255
5433
|
if (!legacyProps) return null;
|
|
5256
5434
|
const converted = {};
|
|
@@ -5262,8 +5440,10 @@ function convertLegacyProps(legacyProps, type) {
|
|
|
5262
5440
|
if (key === "nativeOn") handlerKey += `Native`;
|
|
5263
5441
|
const existing = converted[handlerKey];
|
|
5264
5442
|
const incoming = listeners[event];
|
|
5265
|
-
if (existing !== incoming)
|
|
5266
|
-
|
|
5443
|
+
if (existing !== incoming) {
|
|
5444
|
+
if (existing) converted[handlerKey] = [].concat(existing, incoming);
|
|
5445
|
+
else converted[handlerKey] = incoming;
|
|
5446
|
+
}
|
|
5267
5447
|
}
|
|
5268
5448
|
} else if (!skipLegacyRootLevelProps(key)) converted[key] = legacyProps[key];
|
|
5269
5449
|
if (legacyProps.staticClass) converted.class = normalizeClass([legacyProps.staticClass, converted.class]);
|
|
@@ -5362,7 +5542,7 @@ function convertLegacyFunctionalComponent(comp) {
|
|
|
5362
5542
|
const legacyFn = comp.render;
|
|
5363
5543
|
const Func = (props, ctx) => {
|
|
5364
5544
|
const instance = getCurrentInstance();
|
|
5365
|
-
|
|
5545
|
+
const legacyCtx = {
|
|
5366
5546
|
props,
|
|
5367
5547
|
children: instance.vnode.children || [],
|
|
5368
5548
|
data: instance.vnode.props || {},
|
|
@@ -5382,7 +5562,8 @@ function convertLegacyFunctionalComponent(comp) {
|
|
|
5382
5562
|
}
|
|
5383
5563
|
return {};
|
|
5384
5564
|
}
|
|
5385
|
-
}
|
|
5565
|
+
};
|
|
5566
|
+
return legacyFn(compatH, legacyCtx);
|
|
5386
5567
|
};
|
|
5387
5568
|
Func.props = comp.props;
|
|
5388
5569
|
Func.displayName = comp.name;
|
|
@@ -5411,23 +5592,25 @@ function renderList(source, renderItem, cache, index) {
|
|
|
5411
5592
|
}
|
|
5412
5593
|
ret = new Array(source.length);
|
|
5413
5594
|
for (let i = 0, l = source.length; i < l; i++) ret[i] = renderItem(needsWrap ? isReadonlySource ? toReadonly(toReactive(source[i])) : toReactive(source[i]) : source[i], i, void 0, cached && cached[i]);
|
|
5414
|
-
} else if (typeof source === "number")
|
|
5415
|
-
|
|
5416
|
-
|
|
5417
|
-
|
|
5418
|
-
|
|
5419
|
-
|
|
5420
|
-
|
|
5421
|
-
else if (isObject(source)) if (source[Symbol.iterator]) ret = Array.from(source, (item, i) => renderItem(item, i, void 0, cached && cached[i]));
|
|
5422
|
-
else {
|
|
5423
|
-
const keys = Object.keys(source);
|
|
5424
|
-
ret = new Array(keys.length);
|
|
5425
|
-
for (let i = 0, l = keys.length; i < l; i++) {
|
|
5426
|
-
const key = keys[i];
|
|
5427
|
-
ret[i] = renderItem(source[key], key, i, cached && cached[i]);
|
|
5595
|
+
} else if (typeof source === "number") {
|
|
5596
|
+
if (!!(process.env.NODE_ENV !== "production") && (!Number.isInteger(source) || source < 0)) {
|
|
5597
|
+
warn$1(`The v-for range expects a positive integer value but got ${source}.`);
|
|
5598
|
+
ret = [];
|
|
5599
|
+
} else {
|
|
5600
|
+
ret = new Array(source);
|
|
5601
|
+
for (let i = 0; i < source; i++) ret[i] = renderItem(i + 1, i, void 0, cached && cached[i]);
|
|
5428
5602
|
}
|
|
5429
|
-
}
|
|
5430
|
-
|
|
5603
|
+
} else if (isObject(source)) {
|
|
5604
|
+
if (source[Symbol.iterator]) ret = Array.from(source, (item, i) => renderItem(item, i, void 0, cached && cached[i]));
|
|
5605
|
+
else {
|
|
5606
|
+
const keys = Object.keys(source);
|
|
5607
|
+
ret = new Array(keys.length);
|
|
5608
|
+
for (let i = 0, l = keys.length; i < l; i++) {
|
|
5609
|
+
const key = keys[i];
|
|
5610
|
+
ret[i] = renderItem(source[key], key, i, cached && cached[i]);
|
|
5611
|
+
}
|
|
5612
|
+
}
|
|
5613
|
+
} else ret = [];
|
|
5431
5614
|
if (cache) cache[index] = ret;
|
|
5432
5615
|
return ret;
|
|
5433
5616
|
}
|
|
@@ -5452,18 +5635,45 @@ function createSlots(slots, dynamicSlots) {
|
|
|
5452
5635
|
//#endregion
|
|
5453
5636
|
//#region packages/runtime-core/src/helpers/renderSlot.ts
|
|
5454
5637
|
/**
|
|
5638
|
+
* Links a slot function to its raw vapor slot: a raw vapor slot carries
|
|
5639
|
+
* itself, and the wrapper the interop slots proxy hands out carries the raw
|
|
5640
|
+
* slot it wraps — one lookup answers both "is this a vapor slot" and
|
|
5641
|
+
* "which one". Internal to vapor interop.
|
|
5642
|
+
*/
|
|
5643
|
+
const rawVaporSlotKey = Symbol(`rawVaporSlot`);
|
|
5644
|
+
/**
|
|
5645
|
+
* Invokes a VDOM slot fallback under the outlet owner that produced it, the
|
|
5646
|
+
* way `renderSlot` would have rendered it inline. Vapor interop invokes
|
|
5647
|
+
* fallbacks late, outside any render, so it passes the owner recorded on the
|
|
5648
|
+
* vapor slot vnode. Internal to vapor interop.
|
|
5649
|
+
*/
|
|
5650
|
+
function invokeSlotFallback(fallback, owner) {
|
|
5651
|
+
if (!owner) return fallback();
|
|
5652
|
+
const prev = setCurrentRenderingInstance(owner);
|
|
5653
|
+
const prevStackSize = blockStack.length;
|
|
5654
|
+
try {
|
|
5655
|
+
return fallback();
|
|
5656
|
+
} finally {
|
|
5657
|
+
for (let i = blockStack.length; i > prevStackSize; i--) closeBlock();
|
|
5658
|
+
setCurrentRenderingInstance(prev);
|
|
5659
|
+
}
|
|
5660
|
+
}
|
|
5661
|
+
/**
|
|
5455
5662
|
* Compiler runtime helper for rendering `<slot/>`
|
|
5456
5663
|
* @private
|
|
5457
5664
|
*/
|
|
5458
|
-
function renderSlot(slots, name, props
|
|
5665
|
+
function renderSlot(slots, name, props, fallback, noSlotted, branchKey) {
|
|
5666
|
+
if (props == null) props = {};
|
|
5459
5667
|
let slot = slots[name];
|
|
5460
|
-
|
|
5461
|
-
const vaporSlot = slot && (slot.__vs || (slot.__vapor ? slot : null));
|
|
5668
|
+
const vaporSlot = slot && slot[rawVaporSlotKey];
|
|
5462
5669
|
if (vaporSlot) {
|
|
5463
5670
|
const ret = (openBlock(), createBlock(VaporSlot, props));
|
|
5464
5671
|
ret.vs = {
|
|
5465
5672
|
slot: vaporSlot,
|
|
5466
|
-
fallback
|
|
5673
|
+
outlets: fallback ? [{
|
|
5674
|
+
fallback,
|
|
5675
|
+
owner: currentRenderingInstance
|
|
5676
|
+
}] : void 0
|
|
5467
5677
|
};
|
|
5468
5678
|
if (!noSlotted && ret.scopeId) ret.slotScopeIds = [ret.scopeId + "-s"];
|
|
5469
5679
|
return ret;
|
|
@@ -5484,9 +5694,15 @@ function renderSlot(slots, name, props = {}, fallback, noSlotted, branchKey) {
|
|
|
5484
5694
|
let rendered;
|
|
5485
5695
|
try {
|
|
5486
5696
|
const validSlotContent = slot && ensureValidVNode(slot(props));
|
|
5487
|
-
|
|
5697
|
+
let attached = false;
|
|
5698
|
+
if (fallback && validSlotContent && currentRenderingInstance) {
|
|
5699
|
+
const interop = currentRenderingInstance.appContext.vapor;
|
|
5700
|
+
if (interop) attached = interop.attachSlotOutlet(validSlotContent, fallback, currentRenderingInstance);
|
|
5701
|
+
}
|
|
5488
5702
|
const slotKey = props.key || branchKey || validSlotContent && validSlotContent.key;
|
|
5489
5703
|
rendered = createBlock(Fragment, { key: (slotKey && !isSymbol(slotKey) ? slotKey : `_${name}`) + (!validSlotContent && fallback ? "_fb" : "") }, validSlotContent || (fallback ? fallback() : []), validSlotContent && slots._ === 1 ? 64 : -2);
|
|
5704
|
+
if (!validSlotContent && fallback) rendered.shapeFlag |= 1024;
|
|
5705
|
+
if (attached) rendered.vo = true;
|
|
5490
5706
|
} catch (err) {
|
|
5491
5707
|
for (let i = blockStack.length; i > prevStackSize; i--) closeBlock();
|
|
5492
5708
|
throw err;
|
|
@@ -5504,10 +5720,6 @@ function ensureValidVNode(vnodes) {
|
|
|
5504
5720
|
return true;
|
|
5505
5721
|
}) ? vnodes : null;
|
|
5506
5722
|
}
|
|
5507
|
-
function ensureVaporSlotFallback(vnodes, fallback) {
|
|
5508
|
-
let vaporSlot;
|
|
5509
|
-
if (vnodes && vnodes.length === 1 && isVNode(vnodes[0]) && (vaporSlot = vnodes[0].vs)) vaporSlot.outletFallback = fallback;
|
|
5510
|
-
}
|
|
5511
5723
|
//#endregion
|
|
5512
5724
|
//#region packages/runtime-core/src/helpers/toHandlers.ts
|
|
5513
5725
|
/**
|
|
@@ -5566,12 +5778,14 @@ function legacyResolveScopedSlots(fns, raw, hasDynamicKeys) {
|
|
|
5566
5778
|
function mapKeyToName(slots) {
|
|
5567
5779
|
for (let i = 0; i < slots.length; i++) {
|
|
5568
5780
|
const fn = slots[i];
|
|
5569
|
-
if (fn)
|
|
5570
|
-
|
|
5781
|
+
if (fn) {
|
|
5782
|
+
if (isArray(fn)) mapKeyToName(fn);
|
|
5783
|
+
else fn.name = fn.key || "default";
|
|
5784
|
+
}
|
|
5571
5785
|
}
|
|
5572
5786
|
return slots;
|
|
5573
5787
|
}
|
|
5574
|
-
const staticCacheMap =
|
|
5788
|
+
const staticCacheMap = /*@__PURE__*/ new WeakMap();
|
|
5575
5789
|
function legacyRenderStatic(instance, index) {
|
|
5576
5790
|
let cache = staticCacheMap.get(instance);
|
|
5577
5791
|
if (!cache) staticCacheMap.set(instance, cache = []);
|
|
@@ -5704,11 +5918,38 @@ const getPublicInstance = (i) => {
|
|
|
5704
5918
|
if (isStatefulComponent(i)) return getComponentPublicInstance(i);
|
|
5705
5919
|
return getPublicInstance(i.parent);
|
|
5706
5920
|
};
|
|
5921
|
+
const resolveDevRootEl = (vnode) => {
|
|
5922
|
+
let found = false;
|
|
5923
|
+
while (true) {
|
|
5924
|
+
if (vnode.patchFlag > 0 && vnode.patchFlag & 2048) {
|
|
5925
|
+
const root = filterSingleRoot(vnode.children);
|
|
5926
|
+
if (!root) return;
|
|
5927
|
+
vnode = root;
|
|
5928
|
+
found = true;
|
|
5929
|
+
continue;
|
|
5930
|
+
}
|
|
5931
|
+
const component = vnode.component;
|
|
5932
|
+
if (component && component.subTree) {
|
|
5933
|
+
vnode = component.subTree;
|
|
5934
|
+
continue;
|
|
5935
|
+
}
|
|
5936
|
+
const suspense = vnode.suspense;
|
|
5937
|
+
if (suspense && suspense.activeBranch) {
|
|
5938
|
+
vnode = suspense.activeBranch;
|
|
5939
|
+
continue;
|
|
5940
|
+
}
|
|
5941
|
+
return found ? vnode.el : void 0;
|
|
5942
|
+
}
|
|
5943
|
+
};
|
|
5944
|
+
const getDevRootFragmentEl = (i) => {
|
|
5945
|
+
const el = i.subTree && resolveDevRootEl(i.subTree);
|
|
5946
|
+
return el === void 0 ? i.vnode.el : el;
|
|
5947
|
+
};
|
|
5707
5948
|
let publicPropertiesMap;
|
|
5708
5949
|
const getPublicPropertiesMap = () => {
|
|
5709
5950
|
if (!publicPropertiesMap) publicPropertiesMap = extend(Object.create(null), {
|
|
5710
5951
|
$: (i) => i,
|
|
5711
|
-
$el: (i) => i.vnode.el,
|
|
5952
|
+
$el: (i) => !!(process.env.NODE_ENV !== "production") ? getDevRootFragmentEl(i) : i.vnode.el,
|
|
5712
5953
|
$data: (i) => i.data,
|
|
5713
5954
|
$props: (i) => !!(process.env.NODE_ENV !== "production") ? /* @__PURE__ */ shallowReadonly(i.props) : i.props,
|
|
5714
5955
|
$attrs: (i) => !!(process.env.NODE_ENV !== "production") ? /* @__PURE__ */ shallowReadonly(i.attrs) : i.attrs,
|
|
@@ -5821,7 +6062,7 @@ if (!!(process.env.NODE_ENV !== "production") && true) PublicInstanceProxyHandle
|
|
|
5821
6062
|
warn$1("Avoid app logic that relies on enumerating keys on a component instance. The keys will be empty in production mode to avoid performance overhead.");
|
|
5822
6063
|
return Reflect.ownKeys(target);
|
|
5823
6064
|
};
|
|
5824
|
-
const RuntimeCompiledPublicInstanceProxyHandlers =
|
|
6065
|
+
const RuntimeCompiledPublicInstanceProxyHandlers = /*@__PURE__*/ extend({}, PublicInstanceProxyHandlers, {
|
|
5825
6066
|
get(target, key) {
|
|
5826
6067
|
if (key === Symbol.unscopables) return;
|
|
5827
6068
|
return PublicInstanceProxyHandlers.get(target, key, target);
|
|
@@ -6006,12 +6247,13 @@ function mergeDefaults(raw, defaults) {
|
|
|
6006
6247
|
for (const key in defaults) {
|
|
6007
6248
|
if (key.startsWith("__skip")) continue;
|
|
6008
6249
|
let opt = props[key];
|
|
6009
|
-
if (opt)
|
|
6010
|
-
|
|
6011
|
-
|
|
6012
|
-
|
|
6013
|
-
|
|
6014
|
-
|
|
6250
|
+
if (opt) {
|
|
6251
|
+
if (isArray(opt) || isFunction(opt)) opt = props[key] = {
|
|
6252
|
+
type: opt,
|
|
6253
|
+
default: defaults[key]
|
|
6254
|
+
};
|
|
6255
|
+
else opt.default = defaults[key];
|
|
6256
|
+
} else if (opt === null) opt = props[key] = { default: defaults[key] };
|
|
6015
6257
|
else if (!!(process.env.NODE_ENV !== "production")) warn$1(`props default key "${key}" has no corresponding declaration.`);
|
|
6016
6258
|
if (opt && defaults[`__skip_${key}`]) opt.skipFactory = true;
|
|
6017
6259
|
}
|
|
@@ -6061,37 +6303,32 @@ function createPropsRestProxy(props, excludedKeys) {
|
|
|
6061
6303
|
function withAsyncContext(getAwaitable) {
|
|
6062
6304
|
const ctx = getCurrentGenericInstance();
|
|
6063
6305
|
const inSSRSetup = isInSSRComponentSetup;
|
|
6064
|
-
const restoreAsyncContext = ctx && ctx.restoreAsyncContext ? ctx.restoreAsyncContext.bind(ctx) : void 0;
|
|
6065
6306
|
if (!!(process.env.NODE_ENV !== "production") && !ctx) warn$1("withAsyncContext called without active current instance. This is likely a bug.");
|
|
6066
6307
|
let awaitable = getAwaitable();
|
|
6067
6308
|
setCurrentInstance(null, void 0);
|
|
6068
6309
|
if (inSSRSetup) setInSSRSetupState(false);
|
|
6069
6310
|
const restore = () => {
|
|
6070
|
-
const
|
|
6311
|
+
const stoppedScope = ctx && !ctx.scope.active ? ctx.scope : void 0;
|
|
6071
6312
|
setCurrentInstance(ctx);
|
|
6072
6313
|
if (inSSRSetup) setInSSRSetupState(true);
|
|
6073
|
-
|
|
6074
|
-
return () => {
|
|
6075
|
-
if (reset) reset();
|
|
6076
|
-
if (resetStoppedScope) resetStoppedScope.reset();
|
|
6077
|
-
};
|
|
6314
|
+
return stoppedScope;
|
|
6078
6315
|
};
|
|
6079
6316
|
const cleanup = () => {
|
|
6080
6317
|
setCurrentInstance(null, void 0);
|
|
6081
6318
|
if (inSSRSetup) setInSSRSetupState(false);
|
|
6082
6319
|
};
|
|
6083
6320
|
if (isPromise(awaitable)) awaitable = awaitable.catch((e) => {
|
|
6084
|
-
const
|
|
6321
|
+
const stoppedScope = restore();
|
|
6085
6322
|
Promise.resolve().then(() => Promise.resolve().then(() => {
|
|
6086
|
-
if (
|
|
6323
|
+
if (stoppedScope) stoppedScope.reset();
|
|
6087
6324
|
cleanup();
|
|
6088
6325
|
}));
|
|
6089
6326
|
throw e;
|
|
6090
6327
|
});
|
|
6091
6328
|
return [awaitable, () => {
|
|
6092
|
-
const
|
|
6329
|
+
const stoppedScope = restore();
|
|
6093
6330
|
Promise.resolve().then(() => {
|
|
6094
|
-
if (
|
|
6331
|
+
if (stoppedScope) stoppedScope.reset();
|
|
6095
6332
|
cleanup();
|
|
6096
6333
|
});
|
|
6097
6334
|
}];
|
|
@@ -6155,11 +6392,12 @@ function applyOptions(instance) {
|
|
|
6155
6392
|
const opt = computedOptions[key];
|
|
6156
6393
|
const get = isFunction(opt) ? opt.bind(publicThis, publicThis) : isFunction(opt.get) ? opt.get.bind(publicThis, publicThis) : NOOP;
|
|
6157
6394
|
if (!!(process.env.NODE_ENV !== "production") && get === NOOP) warn$1(`Computed property "${key}" has no getter.`);
|
|
6395
|
+
const set = !isFunction(opt) && isFunction(opt.set) ? opt.set.bind(publicThis) : !!(process.env.NODE_ENV !== "production") ? () => {
|
|
6396
|
+
warn$1(`Write operation failed: computed property "${key}" is readonly.`);
|
|
6397
|
+
} : NOOP;
|
|
6158
6398
|
const c = computed({
|
|
6159
6399
|
get,
|
|
6160
|
-
set
|
|
6161
|
-
warn$1(`Write operation failed: computed property "${key}" is readonly.`);
|
|
6162
|
-
} : NOOP
|
|
6400
|
+
set
|
|
6163
6401
|
});
|
|
6164
6402
|
Object.defineProperty(ctx, key, {
|
|
6165
6403
|
enumerable: true,
|
|
@@ -6219,9 +6457,10 @@ function resolveInjections(injectOptions, ctx, checkDuplicateProperties = NOOP)
|
|
|
6219
6457
|
for (const key in injectOptions) {
|
|
6220
6458
|
const opt = injectOptions[key];
|
|
6221
6459
|
let injected;
|
|
6222
|
-
if (isObject(opt))
|
|
6223
|
-
|
|
6224
|
-
|
|
6460
|
+
if (isObject(opt)) {
|
|
6461
|
+
if ("default" in opt) injected = inject(opt.from || key, opt.default, true);
|
|
6462
|
+
else injected = inject(opt.from || key);
|
|
6463
|
+
} else injected = inject(opt);
|
|
6225
6464
|
if (/* @__PURE__ */ isRef(injected)) Object.defineProperty(ctx, key, {
|
|
6226
6465
|
enumerable: true,
|
|
6227
6466
|
configurable: true,
|
|
@@ -6241,7 +6480,8 @@ function createWatcher(raw, ctx, publicThis, key) {
|
|
|
6241
6480
|
{
|
|
6242
6481
|
const cur = getCurrentInstance();
|
|
6243
6482
|
const instance = cur && getCurrentScope() === cur.scope ? cur : null;
|
|
6244
|
-
|
|
6483
|
+
const newValue = getter();
|
|
6484
|
+
if (isArray(newValue) && isCompatEnabled$1("WATCH_ARRAY", instance)) options.deep = true;
|
|
6245
6485
|
const baseGetter = getter;
|
|
6246
6486
|
getter = () => {
|
|
6247
6487
|
const val = baseGetter();
|
|
@@ -6254,13 +6494,14 @@ function createWatcher(raw, ctx, publicThis, key) {
|
|
|
6254
6494
|
if (isFunction(handler)) watch(getter, handler, options);
|
|
6255
6495
|
else if (!!(process.env.NODE_ENV !== "production")) warn$1(`Invalid watch handler specified by key "${raw}"`, handler);
|
|
6256
6496
|
} else if (isFunction(raw)) watch(getter, raw.bind(publicThis), options);
|
|
6257
|
-
else if (isObject(raw))
|
|
6258
|
-
|
|
6259
|
-
|
|
6260
|
-
|
|
6261
|
-
|
|
6262
|
-
|
|
6263
|
-
|
|
6497
|
+
else if (isObject(raw)) {
|
|
6498
|
+
if (isArray(raw)) raw.forEach((r) => createWatcher(r, ctx, publicThis, key));
|
|
6499
|
+
else {
|
|
6500
|
+
const handler = isFunction(raw.handler) ? raw.handler.bind(publicThis) : ctx[raw.handler];
|
|
6501
|
+
if (isFunction(handler)) watch(getter, handler, extend(raw, options));
|
|
6502
|
+
else if (!!(process.env.NODE_ENV !== "production")) warn$1(`Invalid watch handler specified by key "${raw.handler}"`, handler);
|
|
6503
|
+
}
|
|
6504
|
+
} else if (!!(process.env.NODE_ENV !== "production")) warn$1(`Invalid watch option: "${key}"`, raw);
|
|
6264
6505
|
}
|
|
6265
6506
|
/**
|
|
6266
6507
|
* Resolve merged options and cache it on the component.
|
|
@@ -6274,12 +6515,13 @@ function resolveMergedOptions(instance) {
|
|
|
6274
6515
|
const cached = cache.get(base);
|
|
6275
6516
|
let resolved;
|
|
6276
6517
|
if (cached) resolved = cached;
|
|
6277
|
-
else if (!globalMixins.length && !mixins && !extendsOptions)
|
|
6278
|
-
|
|
6279
|
-
|
|
6280
|
-
|
|
6281
|
-
|
|
6282
|
-
|
|
6518
|
+
else if (!globalMixins.length && !mixins && !extendsOptions) {
|
|
6519
|
+
if (isCompatEnabled$1("PRIVATE_APIS", instance)) {
|
|
6520
|
+
resolved = extend({}, base);
|
|
6521
|
+
resolved.parent = instance.parent && instance.parent.proxy;
|
|
6522
|
+
resolved.propsData = instance.vnode.props;
|
|
6523
|
+
} else resolved = base;
|
|
6524
|
+
} else {
|
|
6283
6525
|
resolved = {};
|
|
6284
6526
|
if (globalMixins.length) globalMixins.forEach((m) => mergeOptions(resolved, m, optionMergeStrategies, true));
|
|
6285
6527
|
mergeOptions(resolved, base, optionMergeStrategies);
|
|
@@ -6352,7 +6594,7 @@ function mergeObjectOptions(to, from) {
|
|
|
6352
6594
|
}
|
|
6353
6595
|
function mergeEmitsOrPropsOptions(to, from) {
|
|
6354
6596
|
if (to) {
|
|
6355
|
-
if (isArray(to) && isArray(from)) return [
|
|
6597
|
+
if (isArray(to) && isArray(from)) return [.../* @__PURE__ */ new Set([...to, ...from])];
|
|
6356
6598
|
return extend(Object.create(null), normalizePropsOrEmits(to), normalizePropsOrEmits(from !== null && from !== void 0 ? from : {}));
|
|
6357
6599
|
} else return from;
|
|
6358
6600
|
}
|
|
@@ -6413,7 +6655,7 @@ function createCompatVue$1(createApp, createSingletonApp) {
|
|
|
6413
6655
|
if (options.el) return vm.$mount(options.el);
|
|
6414
6656
|
else return vm;
|
|
6415
6657
|
}
|
|
6416
|
-
Vue.version = `2.6.14-compat:3.6.0-rc.
|
|
6658
|
+
Vue.version = `2.6.14-compat:3.6.0-rc.11`;
|
|
6417
6659
|
Vue.config = singletonApp.config;
|
|
6418
6660
|
Vue.use = (plugin, ...options) => {
|
|
6419
6661
|
if (plugin && isFunction(plugin.install)) plugin.install(Vue, ...options);
|
|
@@ -6809,8 +7051,10 @@ function createAppAPI(mount, unmount, getPublicInstance, render) {
|
|
|
6809
7051
|
} else if (!!(process.env.NODE_ENV !== "production")) warn$1(`Cannot unmount an app that is not mounted.`);
|
|
6810
7052
|
},
|
|
6811
7053
|
provide(key, value) {
|
|
6812
|
-
if (!!(process.env.NODE_ENV !== "production") && key in context.provides)
|
|
6813
|
-
|
|
7054
|
+
if (!!(process.env.NODE_ENV !== "production") && key in context.provides) {
|
|
7055
|
+
if (hasOwn(context.provides, key)) warn$1(`App already provides property with key "${String(key)}". It will be overwritten with the new value.`);
|
|
7056
|
+
else warn$1(`App already provides property with key "${String(key)}" inherited from its parent element. It will be overwritten with the new value.`);
|
|
7057
|
+
}
|
|
6814
7058
|
context.provides[key] = value;
|
|
6815
7059
|
return app;
|
|
6816
7060
|
},
|
|
@@ -6892,13 +7136,17 @@ function useModel(props, name, options = EMPTY_OBJ) {
|
|
|
6892
7136
|
const modifiers = getModelModifiers(props, camelizedName, defaultPropGetter);
|
|
6893
7137
|
const res = customRef((track, trigger) => {
|
|
6894
7138
|
let localValue;
|
|
7139
|
+
let prevPropValue = EMPTY_OBJ;
|
|
6895
7140
|
let prevSetValue = EMPTY_OBJ;
|
|
6896
7141
|
let prevEmittedValue;
|
|
6897
7142
|
watchSyncEffect(() => {
|
|
6898
7143
|
const propValue = props[camelizedName];
|
|
6899
|
-
if (hasChanged(
|
|
6900
|
-
|
|
6901
|
-
|
|
7144
|
+
if (hasChanged(prevPropValue, propValue)) {
|
|
7145
|
+
prevPropValue = propValue;
|
|
7146
|
+
if (hasChanged(localValue, propValue)) {
|
|
7147
|
+
localValue = propValue;
|
|
7148
|
+
trigger();
|
|
7149
|
+
}
|
|
6902
7150
|
}
|
|
6903
7151
|
});
|
|
6904
7152
|
return {
|
|
@@ -6960,12 +7208,14 @@ function baseEmit(instance, props, getter, event, ...rawArgs) {
|
|
|
6960
7208
|
if (instance.isUnmounted) return;
|
|
6961
7209
|
if (!!(process.env.NODE_ENV !== "production")) {
|
|
6962
7210
|
const { emitsOptions, propsOptions } = instance;
|
|
6963
|
-
if (emitsOptions)
|
|
6964
|
-
if (!
|
|
6965
|
-
|
|
6966
|
-
|
|
6967
|
-
|
|
6968
|
-
if (
|
|
7211
|
+
if (emitsOptions) {
|
|
7212
|
+
if (!(event in emitsOptions) && !(event.startsWith("hook:") || event.startsWith(compatModelEventPrefix))) {
|
|
7213
|
+
if (!propsOptions || !propsOptions[0] || !(toHandlerKey(camelize(event)) in propsOptions[0])) warn$1(`Component emitted event "${event}" but it is neither declared in the emits option nor as an "${toHandlerKey(camelize(event))}" prop.`);
|
|
7214
|
+
} else {
|
|
7215
|
+
const validator = emitsOptions[event];
|
|
7216
|
+
if (isFunction(validator)) {
|
|
7217
|
+
if (!validator(...rawArgs)) warn$1(`Invalid event arguments: event validation failed for event "${event}".`);
|
|
7218
|
+
}
|
|
6969
7219
|
}
|
|
6970
7220
|
}
|
|
6971
7221
|
}
|
|
@@ -6975,7 +7225,7 @@ function baseEmit(instance, props, getter, event, ...rawArgs) {
|
|
|
6975
7225
|
const modifiers = isCompatModelListener ? props.modelModifiers : isModelListener && getModelModifiers(props, event.slice(7), getter);
|
|
6976
7226
|
if (modifiers) {
|
|
6977
7227
|
if (modifiers.trim) args = rawArgs.map((a) => isString(a) ? a.trim() : a);
|
|
6978
|
-
if (modifiers.number) args =
|
|
7228
|
+
if (modifiers.number) args = args.map(looseToNumber);
|
|
6979
7229
|
}
|
|
6980
7230
|
if (!!(process.env.NODE_ENV !== "production") || __VUE_PROD_DEVTOOLS__) devtoolsComponentEmit(instance, event, args);
|
|
6981
7231
|
if (!!(process.env.NODE_ENV !== "production")) {
|
|
@@ -7121,8 +7371,9 @@ function renderComponentRoot(instance) {
|
|
|
7121
7371
|
root.dirs = root.dirs ? root.dirs.concat(vnode.dirs) : vnode.dirs;
|
|
7122
7372
|
}
|
|
7123
7373
|
if (vnode.transition) {
|
|
7124
|
-
|
|
7125
|
-
|
|
7374
|
+
const child = isTeleport(root.type) ? getInnerChild$1(root) || root : root;
|
|
7375
|
+
if (!!(process.env.NODE_ENV !== "production") && !isElementRoot(child)) warn$1("Component inside <Transition> renders non-element root node that cannot be animated.");
|
|
7376
|
+
setTransitionHooks(child, vnode.transition);
|
|
7126
7377
|
}
|
|
7127
7378
|
if (!!(process.env.NODE_ENV !== "production") && setRoot) setRoot(root);
|
|
7128
7379
|
else result = root;
|
|
@@ -7173,18 +7424,21 @@ function filterSingleRoot(children, recurse = true) {
|
|
|
7173
7424
|
for (let i = 0; i < children.length; i++) {
|
|
7174
7425
|
const child = children[i];
|
|
7175
7426
|
if (isVNode(child)) {
|
|
7176
|
-
if (child.type !== Comment || child.children === "v-if")
|
|
7177
|
-
|
|
7178
|
-
|
|
7179
|
-
|
|
7427
|
+
if (child.type !== Comment || child.children === "v-if") {
|
|
7428
|
+
if (singleRoot) return;
|
|
7429
|
+
else {
|
|
7430
|
+
singleRoot = child;
|
|
7431
|
+
if (!!(process.env.NODE_ENV !== "production") && recurse && singleRoot.patchFlag > 0 && singleRoot.patchFlag & 2048) return filterSingleRoot(singleRoot.children);
|
|
7432
|
+
}
|
|
7180
7433
|
}
|
|
7181
7434
|
} else return;
|
|
7182
7435
|
}
|
|
7183
7436
|
return singleRoot;
|
|
7184
7437
|
}
|
|
7438
|
+
const isFunctionalFallthroughKey = (key) => key === "class" || key === "style" || isOn(key);
|
|
7185
7439
|
const getFunctionalFallthrough = (attrs) => {
|
|
7186
7440
|
let res;
|
|
7187
|
-
for (const key in attrs) if (
|
|
7441
|
+
for (const key in attrs) if (isFunctionalFallthroughKey(key)) (res || (res = {}))[key] = attrs[key];
|
|
7188
7442
|
return res;
|
|
7189
7443
|
};
|
|
7190
7444
|
const filterModelListeners = (attrs, props) => {
|
|
@@ -7320,16 +7574,17 @@ function updateProps(instance, rawProps, rawPrevProps, optimized) {
|
|
|
7320
7574
|
let key = propsToUpdate[i];
|
|
7321
7575
|
if (isEmitListener(instance.emitsOptions, key)) continue;
|
|
7322
7576
|
const value = rawProps[key];
|
|
7323
|
-
if (options)
|
|
7324
|
-
if (
|
|
7325
|
-
attrs[key]
|
|
7326
|
-
|
|
7577
|
+
if (options) {
|
|
7578
|
+
if (hasOwn(attrs, key)) {
|
|
7579
|
+
if (value !== attrs[key]) {
|
|
7580
|
+
attrs[key] = value;
|
|
7581
|
+
hasAttrsChanged = true;
|
|
7582
|
+
}
|
|
7583
|
+
} else {
|
|
7584
|
+
const camelizedKey = camelize(key);
|
|
7585
|
+
props[camelizedKey] = resolvePropValue(options, camelizedKey, value, instance, baseResolveDefault);
|
|
7327
7586
|
}
|
|
7328
7587
|
} else {
|
|
7329
|
-
const camelizedKey = camelize(key);
|
|
7330
|
-
props[camelizedKey] = resolvePropValue(options, camelizedKey, value, instance, baseResolveDefault);
|
|
7331
|
-
}
|
|
7332
|
-
else {
|
|
7333
7588
|
if (isOn(key) && key.endsWith("Native")) key = key.slice(0, -6);
|
|
7334
7589
|
else if (shouldSkipAttr(key, instance)) continue;
|
|
7335
7590
|
if (value !== attrs[key]) {
|
|
@@ -7342,9 +7597,11 @@ function updateProps(instance, rawProps, rawPrevProps, optimized) {
|
|
|
7342
7597
|
} else {
|
|
7343
7598
|
if (setFullProps(instance, rawProps, props, attrs)) hasAttrsChanged = true;
|
|
7344
7599
|
let kebabKey;
|
|
7345
|
-
for (const key in rawCurrentProps) if (!rawProps || !hasOwn(rawProps, key) && ((kebabKey = hyphenate(key)) === key || !hasOwn(rawProps, kebabKey)))
|
|
7346
|
-
if (
|
|
7347
|
-
|
|
7600
|
+
for (const key in rawCurrentProps) if (!rawProps || !hasOwn(rawProps, key) && ((kebabKey = hyphenate(key)) === key || !hasOwn(rawProps, kebabKey))) {
|
|
7601
|
+
if (options) {
|
|
7602
|
+
if (rawPrevProps && (rawPrevProps[key] !== void 0 || rawPrevProps[kebabKey] !== void 0)) props[key] = resolvePropValue(options, key, void 0, instance, baseResolveDefault, true);
|
|
7603
|
+
} else delete props[key];
|
|
7604
|
+
}
|
|
7348
7605
|
if (attrs !== rawCurrentProps) {
|
|
7349
7606
|
for (const key in attrs) if (!rawProps || !hasOwn(rawProps, key) && !hasOwn(rawProps, key + "Native")) {
|
|
7350
7607
|
delete attrs[key];
|
|
@@ -7365,9 +7622,10 @@ function setFullProps(instance, rawProps, props, attrs) {
|
|
|
7365
7622
|
if (key === "inline-template") continue;
|
|
7366
7623
|
const value = rawProps[key];
|
|
7367
7624
|
let camelKey;
|
|
7368
|
-
if (options && hasOwn(options, camelKey = camelize(key)))
|
|
7369
|
-
|
|
7370
|
-
|
|
7625
|
+
if (options && hasOwn(options, camelKey = camelize(key))) {
|
|
7626
|
+
if (!needCastKeys || !needCastKeys.includes(camelKey)) props[camelKey] = value;
|
|
7627
|
+
else (rawCastValues || (rawCastValues = {}))[camelKey] = value;
|
|
7628
|
+
} else if (!isEmitListener(instance.emitsOptions, key)) {
|
|
7371
7629
|
if (isOn(key) && key.endsWith("Native")) key = key.slice(0, -6);
|
|
7372
7630
|
else if (shouldSkipAttr(key, instance)) continue;
|
|
7373
7631
|
if (!(key in attrs) || value !== attrs[key]) {
|
|
@@ -7416,7 +7674,7 @@ function baseResolveDefault(factory, instance, key) {
|
|
|
7416
7674
|
const prev = setCurrentInstance(instance);
|
|
7417
7675
|
const props = /* @__PURE__ */ toRaw(instance.props);
|
|
7418
7676
|
value = factory.call(isCompatEnabled$1("PROPS_DEFAULT_THIS", instance) ? createPropsDefaultThis(instance, props, key) : null, props);
|
|
7419
|
-
|
|
7677
|
+
restoreCurrentInstance(prev);
|
|
7420
7678
|
return value;
|
|
7421
7679
|
}
|
|
7422
7680
|
const mixinPropsCache = /* @__PURE__ */ new WeakMap();
|
|
@@ -7533,7 +7791,7 @@ function validateProp(key, value, propOptions, resolvedProps, isAbsent) {
|
|
|
7533
7791
|
}
|
|
7534
7792
|
if (validator && !validator(value, !!(process.env.NODE_ENV !== "production") ? /* @__PURE__ */ shallowReadonly(resolvedProps) : resolvedProps)) warn$1("Invalid prop: custom validator check failed for prop \"" + key + "\".");
|
|
7535
7793
|
}
|
|
7536
|
-
const isSimpleType =
|
|
7794
|
+
const isSimpleType = /*@__PURE__*/ makeMap("String,Number,Boolean,Function,Symbol,BigInt");
|
|
7537
7795
|
/**
|
|
7538
7796
|
* dev only
|
|
7539
7797
|
*/
|
|
@@ -7646,12 +7904,13 @@ const updateSlots = (instance, children, optimized) => {
|
|
|
7646
7904
|
let deletionComparisonTarget = EMPTY_OBJ;
|
|
7647
7905
|
if (vnode.shapeFlag & 32) {
|
|
7648
7906
|
const type = children._;
|
|
7649
|
-
if (type)
|
|
7650
|
-
|
|
7651
|
-
|
|
7652
|
-
|
|
7653
|
-
|
|
7654
|
-
|
|
7907
|
+
if (type) {
|
|
7908
|
+
if (!!(process.env.NODE_ENV !== "production") && isHmrUpdating) {
|
|
7909
|
+
assignSlots(slots, children, optimized);
|
|
7910
|
+
trigger(instance, "set", "$slots");
|
|
7911
|
+
} else if (optimized && type === 1) needDeletionCheck = false;
|
|
7912
|
+
else assignSlots(slots, children, optimized);
|
|
7913
|
+
} else {
|
|
7655
7914
|
needDeletionCheck = !children.$stable;
|
|
7656
7915
|
normalizeObjectSlots(children, slots, instance);
|
|
7657
7916
|
}
|
|
@@ -7669,7 +7928,7 @@ const updateSlots = (instance, children, optimized) => {
|
|
|
7669
7928
|
let supported;
|
|
7670
7929
|
let perf;
|
|
7671
7930
|
let cachedNow$1 = 0;
|
|
7672
|
-
const p$1 =
|
|
7931
|
+
const p$1 = /*@__PURE__*/ Promise.resolve();
|
|
7673
7932
|
const getNow$1 = () => cachedNow$1 || (p$1.then(() => cachedNow$1 = 0), cachedNow$1 = isSupported() ? perf.now() : Date.now());
|
|
7674
7933
|
/**
|
|
7675
7934
|
* @internal
|
|
@@ -7780,6 +8039,10 @@ function baseCreateRenderer(options, createHydrationFns) {
|
|
|
7780
8039
|
optimized = false;
|
|
7781
8040
|
n2.dynamicChildren = null;
|
|
7782
8041
|
}
|
|
8042
|
+
if (n2.dynamicChildren && n1 && n1.dynamicChildren && n1.dynamicChildren.hasOnce) {
|
|
8043
|
+
if (n2.dynamicChildren === EMPTY_ARR) n2.dynamicChildren = [];
|
|
8044
|
+
n2.dynamicChildren.hasOnce = true;
|
|
8045
|
+
}
|
|
7783
8046
|
const { type, ref, shapeFlag } = n2;
|
|
7784
8047
|
switch (type) {
|
|
7785
8048
|
case Text:
|
|
@@ -7796,7 +8059,7 @@ function baseCreateRenderer(options, createHydrationFns) {
|
|
|
7796
8059
|
processFragment(n1, n2, container, anchor, parentComponent, parentSuspense, namespace, slotScopeIds, optimized);
|
|
7797
8060
|
break;
|
|
7798
8061
|
case VaporSlot:
|
|
7799
|
-
getVaporInterface(parentComponent, n2).slot(n1, n2, container, anchor, parentComponent, parentSuspense);
|
|
8062
|
+
getVaporInterface(parentComponent, n2).slot(n1, n2, container, anchor, parentComponent, parentSuspense, slotScopeIds);
|
|
7800
8063
|
break;
|
|
7801
8064
|
default: if (shapeFlag & 1) processElement(n1, n2, container, anchor, parentComponent, parentSuspense, namespace, slotScopeIds, optimized);
|
|
7802
8065
|
else if (shapeFlag & 6) processComponent(n1, n2, container, anchor, parentComponent, parentSuspense, namespace, slotScopeIds, optimized);
|
|
@@ -7917,7 +8180,10 @@ function baseCreateRenderer(options, createHydrationFns) {
|
|
|
7917
8180
|
for (let i = 0; i < inheritedScopeIds.length; i++) hostSetScopeId(el, inheritedScopeIds[i]);
|
|
7918
8181
|
};
|
|
7919
8182
|
const mountChildren = (children, container, anchor, parentComponent, parentSuspense, namespace, slotScopeIds, optimized, start = 0) => {
|
|
7920
|
-
for (let i = start; i < children.length; i++)
|
|
8183
|
+
for (let i = start; i < children.length; i++) {
|
|
8184
|
+
const child = children[i] = optimized ? cloneIfMounted(children[i]) : normalizeVNode(children[i]);
|
|
8185
|
+
patch(null, child, container, anchor, parentComponent, parentSuspense, namespace, slotScopeIds, optimized);
|
|
8186
|
+
}
|
|
7921
8187
|
};
|
|
7922
8188
|
const patchElement = (n1, n2, parentComponent, parentSuspense, namespace, slotScopeIds, optimized) => {
|
|
7923
8189
|
const el = n2.el = n1.el;
|
|
@@ -7929,6 +8195,7 @@ function baseCreateRenderer(options, createHydrationFns) {
|
|
|
7929
8195
|
let vnodeHook;
|
|
7930
8196
|
parentComponent && toggleRecurse(parentComponent, false);
|
|
7931
8197
|
if (vnodeHook = newProps.onVnodeBeforeUpdate) invokeVNodeHook(vnodeHook, parentComponent, n2, n1);
|
|
8198
|
+
if (n2.ibu) n2.ibu();
|
|
7932
8199
|
if (dirs) invokeDirectiveHook(n2, n1, parentComponent, "beforeUpdate");
|
|
7933
8200
|
parentComponent && toggleRecurse(parentComponent, true);
|
|
7934
8201
|
if (!!(process.env.NODE_ENV !== "production") && isHmrUpdating || dynamicChildren && (!n1.dynamicChildren || n1.dynamicChildren.length !== dynamicChildren.length)) {
|
|
@@ -7962,8 +8229,9 @@ function baseCreateRenderer(options, createHydrationFns) {
|
|
|
7962
8229
|
if (n1.children !== n2.children) hostSetElementText(el, n2.children);
|
|
7963
8230
|
}
|
|
7964
8231
|
} else if (!optimized && dynamicChildren == null) patchProps(el, oldProps, newProps, parentComponent, namespace);
|
|
7965
|
-
if ((vnodeHook = newProps.onVnodeUpdated) || dirs) queuePostRenderEffect(() => {
|
|
8232
|
+
if ((vnodeHook = newProps.onVnodeUpdated) || dirs || n2.iu) queuePostRenderEffect(() => {
|
|
7966
8233
|
vnodeHook && invokeVNodeHook(vnodeHook, parentComponent, n2, n1);
|
|
8234
|
+
n2.iu && n2.iu();
|
|
7967
8235
|
dirs && invokeDirectiveHook(n2, n1, parentComponent, "updated");
|
|
7968
8236
|
}, void 0, parentSuspense);
|
|
7969
8237
|
};
|
|
@@ -7971,7 +8239,8 @@ function baseCreateRenderer(options, createHydrationFns) {
|
|
|
7971
8239
|
for (let i = 0; i < newChildren.length; i++) {
|
|
7972
8240
|
const oldVNode = oldChildren[i];
|
|
7973
8241
|
const newVNode = newChildren[i];
|
|
7974
|
-
|
|
8242
|
+
const container = oldVNode.el && (oldVNode.type === Fragment || !isSameVNodeType(oldVNode, newVNode) || oldVNode.shapeFlag & 198) ? hostParentNode(oldVNode.el) : fallbackContainer;
|
|
8243
|
+
patch(oldVNode, newVNode, container, null, parentComponent, parentSuspense, namespace, slotScopeIds, true);
|
|
7975
8244
|
}
|
|
7976
8245
|
};
|
|
7977
8246
|
const patchProps = (el, oldProps, newProps, parentComponent, namespace) => {
|
|
@@ -8010,41 +8279,15 @@ function baseCreateRenderer(options, createHydrationFns) {
|
|
|
8010
8279
|
};
|
|
8011
8280
|
const processComponent = (n1, n2, container, anchor, parentComponent, parentSuspense, namespace, slotScopeIds, optimized) => {
|
|
8012
8281
|
n2.slotScopeIds = slotScopeIds;
|
|
8013
|
-
if (n2.type.__vapor)
|
|
8014
|
-
|
|
8015
|
-
|
|
8016
|
-
|
|
8017
|
-
|
|
8018
|
-
|
|
8019
|
-
|
|
8020
|
-
|
|
8021
|
-
|
|
8022
|
-
if (vnodeBeforeMountHook) invokeVNodeHook(vnodeBeforeMountHook, parentComponent, n2);
|
|
8023
|
-
});
|
|
8024
|
-
if (n2.dirs) queuePostRenderEffect(() => invokeDirectiveHook(n2, null, parentComponent, "mounted"), void 0, parentSuspense);
|
|
8025
|
-
const vnodeMountedHook = !isAsyncWrapper(n2) && n2.props && n2.props.onVnodeMounted;
|
|
8026
|
-
if (vnodeMountedHook) {
|
|
8027
|
-
const scopedVNode = n2;
|
|
8028
|
-
queuePostRenderEffect(() => invokeVNodeHook(vnodeMountedHook, parentComponent, scopedVNode), void 0, parentSuspense);
|
|
8029
|
-
}
|
|
8030
|
-
}
|
|
8031
|
-
else {
|
|
8032
|
-
const shouldUpdate = shouldUpdateComponent(n1, n2, optimized);
|
|
8033
|
-
getVaporInterface(parentComponent, n2).update(n1, n2, shouldUpdate, () => {
|
|
8034
|
-
if (n2.dirs) invokeDirectiveHook(n2, n1, parentComponent, "beforeUpdate");
|
|
8035
|
-
}, () => {
|
|
8036
|
-
const vnodeBeforeUpdateHook = n2.props && n2.props.onVnodeBeforeUpdate;
|
|
8037
|
-
if (vnodeBeforeUpdateHook) invokeVNodeHook(vnodeBeforeUpdateHook, parentComponent, n2, n1);
|
|
8038
|
-
});
|
|
8039
|
-
const vnodeUpdatedHook = n2.props && n2.props.onVnodeUpdated;
|
|
8040
|
-
if (shouldUpdate && (vnodeUpdatedHook || n2.dirs)) queuePostRenderEffect(() => {
|
|
8041
|
-
n2.dirs && invokeDirectiveHook(n2, n1, parentComponent, "updated");
|
|
8042
|
-
vnodeUpdatedHook && invokeVNodeHook(vnodeUpdatedHook, parentComponent, n2, n1);
|
|
8043
|
-
}, void 0, parentSuspense);
|
|
8044
|
-
}
|
|
8045
|
-
else if (n1 == null) if (n2.shapeFlag & 512) parentComponent.ctx.activate(n2, container, anchor, namespace, optimized);
|
|
8046
|
-
else mountComponent(n2, container, anchor, parentComponent, parentSuspense, namespace, optimized);
|
|
8047
|
-
else updateComponent(n1, n2, optimized);
|
|
8282
|
+
if (n2.type.__vapor) {
|
|
8283
|
+
if (n1 == null) {
|
|
8284
|
+
if (n2.shapeFlag & 512) getVaporInterface(parentComponent, n2).activate(n2, container, anchor, parentComponent, parentSuspense);
|
|
8285
|
+
else getVaporInterface(parentComponent, n2).mount(n2, container, anchor, parentComponent, parentSuspense);
|
|
8286
|
+
} else getVaporInterface(parentComponent, n2).update(n1, n2, shouldUpdateComponent(n1, n2, optimized));
|
|
8287
|
+
} else if (n1 == null) {
|
|
8288
|
+
if (n2.shapeFlag & 512) parentComponent.ctx.activate(n2, container, anchor, namespace, optimized);
|
|
8289
|
+
else mountComponent(n2, container, anchor, parentComponent, parentSuspense, namespace, optimized);
|
|
8290
|
+
} else updateComponent(n1, n2, optimized);
|
|
8048
8291
|
};
|
|
8049
8292
|
const mountComponent = (initialVNode, container, anchor, parentComponent, parentSuspense, namespace, optimized) => {
|
|
8050
8293
|
const compatMountInstance = initialVNode.isCompatRoot && initialVNode.component;
|
|
@@ -8092,16 +8335,18 @@ function baseCreateRenderer(options, createHydrationFns) {
|
|
|
8092
8335
|
};
|
|
8093
8336
|
const updateComponent = (n1, n2, optimized) => {
|
|
8094
8337
|
const instance = n2.component = n1.component;
|
|
8095
|
-
if (shouldUpdateComponent(n1, n2, optimized))
|
|
8096
|
-
if (
|
|
8097
|
-
|
|
8098
|
-
|
|
8099
|
-
|
|
8338
|
+
if (shouldUpdateComponent(n1, n2, optimized)) {
|
|
8339
|
+
if (instance.asyncDep && !instance.asyncResolved) {
|
|
8340
|
+
if (!!(process.env.NODE_ENV !== "production")) pushWarningContext(n2);
|
|
8341
|
+
n2.el = n1.el;
|
|
8342
|
+
updateComponentPreRender(instance, n2, optimized);
|
|
8343
|
+
if (!!(process.env.NODE_ENV !== "production")) popWarningContext();
|
|
8344
|
+
return;
|
|
8345
|
+
} else {
|
|
8346
|
+
instance.next = n2;
|
|
8347
|
+
instance.effect.run();
|
|
8348
|
+
}
|
|
8100
8349
|
} else {
|
|
8101
|
-
instance.next = n2;
|
|
8102
|
-
instance.effect.run();
|
|
8103
|
-
}
|
|
8104
|
-
else {
|
|
8105
8350
|
n2.el = n1.el;
|
|
8106
8351
|
instance.vnode = n2;
|
|
8107
8352
|
}
|
|
@@ -8206,6 +8451,7 @@ function baseCreateRenderer(options, createHydrationFns) {
|
|
|
8206
8451
|
} else next = vnode;
|
|
8207
8452
|
if (bu) invokeArrayFns(bu);
|
|
8208
8453
|
if (vnodeHook = next.props && next.props.onVnodeBeforeUpdate) invokeVNodeHook(vnodeHook, parent, next, vnode);
|
|
8454
|
+
if (next.ibu) next.ibu();
|
|
8209
8455
|
if (isCompatEnabled$1("INSTANCE_EVENT_HOOKS", instance)) instance.emit("hook:beforeUpdate");
|
|
8210
8456
|
toggleRecurse(instance, true);
|
|
8211
8457
|
if (!!(process.env.NODE_ENV !== "production")) startMeasure(instance, `render`);
|
|
@@ -8219,7 +8465,10 @@ function baseCreateRenderer(options, createHydrationFns) {
|
|
|
8219
8465
|
next.el = nextTree.el;
|
|
8220
8466
|
if (originNext === null) updateHOCHostEl(instance, nextTree.el);
|
|
8221
8467
|
if (u) queuePostRenderEffect(u, void 0, parentSuspense);
|
|
8222
|
-
if (vnodeHook = next.props && next.props.onVnodeUpdated) queuePostRenderEffect(() =>
|
|
8468
|
+
if ((vnodeHook = next.props && next.props.onVnodeUpdated) || next.iu) queuePostRenderEffect(() => {
|
|
8469
|
+
vnodeHook && invokeVNodeHook(vnodeHook, parent, next, vnode);
|
|
8470
|
+
next.iu && next.iu();
|
|
8471
|
+
}, void 0, parentSuspense);
|
|
8223
8472
|
if (isCompatEnabled$1("INSTANCE_EVENT_HOOKS", instance)) queuePostRenderEffect(() => instance.emit("hook:updated"), void 0, parentSuspense);
|
|
8224
8473
|
if (!!(process.env.NODE_ENV !== "production") || __VUE_PROD_DEVTOOLS__) devtoolsComponentUpdated(instance);
|
|
8225
8474
|
if (!!(process.env.NODE_ENV !== "production")) popWarningContext();
|
|
@@ -8260,9 +8509,10 @@ function baseCreateRenderer(options, createHydrationFns) {
|
|
|
8260
8509
|
if (shapeFlag & 8) {
|
|
8261
8510
|
if (prevShapeFlag & 16) unmountChildren(c1, parentComponent, parentSuspense);
|
|
8262
8511
|
if (c2 !== c1) hostSetElementText(container, c2);
|
|
8263
|
-
} else if (prevShapeFlag & 16)
|
|
8264
|
-
|
|
8265
|
-
|
|
8512
|
+
} else if (prevShapeFlag & 16) {
|
|
8513
|
+
if (shapeFlag & 16) patchKeyedChildren(c1, c2, container, anchor, parentComponent, parentSuspense, namespace, slotScopeIds, optimized);
|
|
8514
|
+
else unmountChildren(c1, parentComponent, parentSuspense, true);
|
|
8515
|
+
} else {
|
|
8266
8516
|
if (prevShapeFlag & 8) hostSetElementText(container, "");
|
|
8267
8517
|
if (shapeFlag & 16) mountChildren(c2, container, anchor, parentComponent, parentSuspense, namespace, slotScopeIds, optimized);
|
|
8268
8518
|
}
|
|
@@ -8361,15 +8611,17 @@ function baseCreateRenderer(options, createHydrationFns) {
|
|
|
8361
8611
|
const anchorVNode = c2[nextIndex + 1];
|
|
8362
8612
|
const anchor = nextIndex + 1 < l2 ? anchorVNode.el || resolveAsyncComponentPlaceholder(anchorVNode) : parentAnchor;
|
|
8363
8613
|
if (newIndexToOldIndexMap[i] === 0) patch(null, nextChild, container, anchor, parentComponent, parentSuspense, namespace, slotScopeIds, optimized);
|
|
8364
|
-
else if (moved)
|
|
8365
|
-
|
|
8614
|
+
else if (moved) {
|
|
8615
|
+
if (j < 0 || i !== increasingNewIndexSequence[j]) move(nextChild, container, anchor, 2, parentComponent);
|
|
8616
|
+
else j--;
|
|
8617
|
+
}
|
|
8366
8618
|
}
|
|
8367
8619
|
}
|
|
8368
8620
|
};
|
|
8369
8621
|
const move = (vnode, container, anchor, moveType, parentComponent, parentSuspense = null) => {
|
|
8370
8622
|
const { el, type, transition, children, shapeFlag } = vnode;
|
|
8371
8623
|
if (isVaporComponent(type) || type === VaporSlot) {
|
|
8372
|
-
getVaporInterface(parentComponent, vnode).move(vnode, container, anchor, moveType);
|
|
8624
|
+
getVaporInterface(parentComponent, vnode).move(vnode, container, anchor, moveType, parentSuspense);
|
|
8373
8625
|
return;
|
|
8374
8626
|
}
|
|
8375
8627
|
if (shapeFlag & 6) {
|
|
@@ -8394,54 +8646,37 @@ function baseCreateRenderer(options, createHydrationFns) {
|
|
|
8394
8646
|
moveStaticNode(vnode, container, anchor);
|
|
8395
8647
|
return;
|
|
8396
8648
|
}
|
|
8397
|
-
if (moveType !== 2 && shapeFlag & 1 && transition)
|
|
8398
|
-
|
|
8399
|
-
|
|
8400
|
-
const remove = () => {
|
|
8649
|
+
if (moveType !== 2 && shapeFlag & 1 && transition) {
|
|
8650
|
+
if (moveType === 0) performTransitionEnter(el, transition, () => hostInsert(el, container, anchor), parentSuspense, true);
|
|
8651
|
+
else performTransitionLeave(el, transition, () => {
|
|
8401
8652
|
if (vnode.ctx.isUnmounted) hostRemove(el);
|
|
8402
8653
|
else hostInsert(el, container, anchor);
|
|
8403
|
-
};
|
|
8404
|
-
|
|
8405
|
-
const wasLeaving = el._isLeaving || !!el[leaveCbKey];
|
|
8406
|
-
if (el._isLeaving) el[leaveCbKey](true);
|
|
8407
|
-
if (transition.persisted && !wasLeaving) remove();
|
|
8408
|
-
else leave(el, () => {
|
|
8409
|
-
remove();
|
|
8410
|
-
afterLeave && afterLeave();
|
|
8411
|
-
});
|
|
8412
|
-
};
|
|
8413
|
-
if (delayLeave) delayLeave(el, remove, performLeave);
|
|
8414
|
-
else performLeave();
|
|
8415
|
-
}
|
|
8416
|
-
else hostInsert(el, container, anchor);
|
|
8654
|
+
}, true, true);
|
|
8655
|
+
} else hostInsert(el, container, anchor);
|
|
8417
8656
|
};
|
|
8418
8657
|
const unmount = (vnode, parentComponent, parentSuspense, doRemove = false, optimized = false) => {
|
|
8419
8658
|
const { type, props, ref, children, dynamicChildren, shapeFlag, patchFlag, dirs, cacheIndex, memo } = vnode;
|
|
8420
|
-
if (patchFlag === -2) optimized = false;
|
|
8659
|
+
if (patchFlag === -2 || dynamicChildren && dynamicChildren.hasOnce) optimized = false;
|
|
8421
8660
|
if (ref != null) {
|
|
8422
8661
|
const prevSub = setActiveSub();
|
|
8423
8662
|
setRef(ref, null, parentSuspense, vnode, true);
|
|
8424
8663
|
setActiveSub(prevSub);
|
|
8425
8664
|
}
|
|
8426
|
-
if (cacheIndex != null) parentComponent.renderCache[cacheIndex] = void 0;
|
|
8665
|
+
if (cacheIndex != null && (!vnode.ctx || vnode.ctx === parentComponent)) parentComponent.renderCache[cacheIndex] = void 0;
|
|
8427
8666
|
if (shapeFlag & 256) {
|
|
8428
|
-
if (isVaporComponent(vnode.type)) getVaporInterface(parentComponent, vnode).deactivate(vnode, parentComponent.ctx.getStorageContainer());
|
|
8667
|
+
if (isVaporComponent(vnode.type)) getVaporInterface(parentComponent, vnode).deactivate(vnode, parentComponent.ctx.getStorageContainer(), parentSuspense);
|
|
8429
8668
|
else parentComponent.ctx.deactivate(vnode);
|
|
8430
8669
|
return;
|
|
8431
8670
|
}
|
|
8671
|
+
if (shapeFlag & 6 && isVaporComponent(type)) {
|
|
8672
|
+
getVaporInterface(parentComponent, vnode).unmount(vnode, doRemove, parentSuspense);
|
|
8673
|
+
return;
|
|
8674
|
+
}
|
|
8432
8675
|
const shouldInvokeDirs = shapeFlag & 1 && dirs;
|
|
8433
8676
|
const shouldInvokeVnodeHook = !isAsyncWrapper(vnode);
|
|
8434
8677
|
let vnodeHook;
|
|
8435
8678
|
if (shouldInvokeVnodeHook && (vnodeHook = props && props.onVnodeBeforeUnmount)) invokeVNodeHook(vnodeHook, parentComponent, vnode);
|
|
8436
|
-
if (shapeFlag & 6)
|
|
8437
|
-
if (dirs) invokeDirectiveHook(vnode, null, parentComponent, "beforeUnmount");
|
|
8438
|
-
getVaporInterface(parentComponent, vnode).unmount(vnode, doRemove);
|
|
8439
|
-
if (shouldInvokeVnodeHook && (vnodeHook = props && props.onVnodeUnmounted) || dirs) queuePostRenderEffect(() => {
|
|
8440
|
-
dirs && invokeDirectiveHook(vnode, null, parentComponent, "unmounted");
|
|
8441
|
-
vnodeHook && invokeVNodeHook(vnodeHook, parentComponent, vnode);
|
|
8442
|
-
}, void 0, parentSuspense);
|
|
8443
|
-
return;
|
|
8444
|
-
} else unmountComponent(vnode.component, parentSuspense, doRemove);
|
|
8679
|
+
if (shapeFlag & 6) unmountComponent(vnode.component, parentSuspense, doRemove);
|
|
8445
8680
|
else {
|
|
8446
8681
|
if (shapeFlag & 128) {
|
|
8447
8682
|
vnode.suspense.unmount(parentSuspense, doRemove);
|
|
@@ -8452,7 +8687,7 @@ function baseCreateRenderer(options, createHydrationFns) {
|
|
|
8452
8687
|
else if (dynamicChildren && !dynamicChildren.hasOnce && (type !== Fragment || patchFlag > 0 && patchFlag & 64)) unmountChildren(dynamicChildren, parentComponent, parentSuspense, false, true);
|
|
8453
8688
|
else if (type === Fragment && patchFlag & 384 || !optimized && shapeFlag & 16) unmountChildren(children, parentComponent, parentSuspense);
|
|
8454
8689
|
if (type === VaporSlot) {
|
|
8455
|
-
getVaporInterface(parentComponent, vnode).unmount(vnode, doRemove);
|
|
8690
|
+
getVaporInterface(parentComponent, vnode).unmount(vnode, doRemove, parentSuspense);
|
|
8456
8691
|
return;
|
|
8457
8692
|
}
|
|
8458
8693
|
if (doRemove) remove(vnode);
|
|
@@ -8476,6 +8711,7 @@ function baseCreateRenderer(options, createHydrationFns) {
|
|
|
8476
8711
|
}
|
|
8477
8712
|
if (type === Static) {
|
|
8478
8713
|
removeStaticNode(vnode);
|
|
8714
|
+
if (transition && !transition.persisted && transition.afterLeave) transition.afterLeave();
|
|
8479
8715
|
return;
|
|
8480
8716
|
}
|
|
8481
8717
|
if (transition) performTransitionLeave(el, transition, () => hostRemove(el), !!(vnode.shapeFlag & 1));
|
|
@@ -8501,7 +8737,10 @@ function baseCreateRenderer(options, createHydrationFns) {
|
|
|
8501
8737
|
if (effect) {
|
|
8502
8738
|
effect.stop();
|
|
8503
8739
|
unmount(subTree, instance, parentSuspense, doRemove);
|
|
8504
|
-
} else if (
|
|
8740
|
+
} else if (instance.vnode.el && subTree) {
|
|
8741
|
+
subTree.transition = instance.vnode.transition;
|
|
8742
|
+
unmount(subTree, instance, parentSuspense, doRemove);
|
|
8743
|
+
}
|
|
8505
8744
|
if (um) queuePostRenderEffect(um, void 0, parentSuspense);
|
|
8506
8745
|
if (isCompatEnabled$1("INSTANCE_EVENT_HOOKS", instance)) queuePostRenderEffect(() => instance.emit("hook:destroyed"), void 0, parentSuspense);
|
|
8507
8746
|
queuePostRenderEffect(() => instance.isUnmounted = true, void 0, parentSuspense);
|
|
@@ -8576,12 +8815,14 @@ function resolveChildrenNamespace({ type, props }, currentNamespace) {
|
|
|
8576
8815
|
return currentNamespace === "svg" && type === "foreignObject" || currentNamespace === "mathml" && type === "annotation-xml" && props && props.encoding && props.encoding.includes("html") ? void 0 : currentNamespace;
|
|
8577
8816
|
}
|
|
8578
8817
|
function toggleRecurse({ effect, job, vapor }, allowed) {
|
|
8579
|
-
if (!vapor)
|
|
8580
|
-
|
|
8581
|
-
|
|
8582
|
-
|
|
8583
|
-
|
|
8584
|
-
|
|
8818
|
+
if (!vapor) {
|
|
8819
|
+
if (allowed) {
|
|
8820
|
+
effect.flags |= 128;
|
|
8821
|
+
job.flags |= 2;
|
|
8822
|
+
} else {
|
|
8823
|
+
effect.flags &= -129;
|
|
8824
|
+
job.flags &= -3;
|
|
8825
|
+
}
|
|
8585
8826
|
}
|
|
8586
8827
|
}
|
|
8587
8828
|
function needTransition(parentSuspense, transition) {
|
|
@@ -8621,8 +8862,10 @@ function traverseStaticChildren(n1, n2, shallow = false) {
|
|
|
8621
8862
|
}
|
|
8622
8863
|
function locateNonHydratedAsyncRoot(instance) {
|
|
8623
8864
|
const subComponent = instance.subTree && instance.subTree.component;
|
|
8624
|
-
if (subComponent)
|
|
8625
|
-
|
|
8865
|
+
if (subComponent) {
|
|
8866
|
+
if (subComponent.asyncDep && !subComponent.asyncResolved) return subComponent;
|
|
8867
|
+
else return locateNonHydratedAsyncRoot(subComponent);
|
|
8868
|
+
}
|
|
8626
8869
|
}
|
|
8627
8870
|
function invalidateMount(hooks) {
|
|
8628
8871
|
if (hooks) for (let i = 0; i < hooks.length; i++) hooks[i].flags |= 4;
|
|
@@ -8641,13 +8884,15 @@ function performTransitionEnter(el, transition, insert, parentSuspense, force =
|
|
|
8641
8884
|
function performTransitionLeave(el, transition, remove, isElement = true, force = false) {
|
|
8642
8885
|
const performRemove = () => {
|
|
8643
8886
|
remove();
|
|
8644
|
-
if (transition && !transition.persisted && transition.afterLeave) transition.afterLeave();
|
|
8887
|
+
if (transition && (force || !transition.persisted) && transition.afterLeave) transition.afterLeave();
|
|
8645
8888
|
};
|
|
8646
8889
|
if (force || isElement && transition && !transition.persisted) {
|
|
8647
8890
|
const { leave, delayLeave } = transition;
|
|
8648
8891
|
const performLeave = () => {
|
|
8892
|
+
const wasLeaving = el._isLeaving || !!el[leaveCbKey];
|
|
8649
8893
|
if (el._isLeaving && force) el[leaveCbKey](true);
|
|
8650
|
-
|
|
8894
|
+
if (force && transition.persisted && !wasLeaving) remove();
|
|
8895
|
+
else leave(el, performRemove);
|
|
8651
8896
|
};
|
|
8652
8897
|
if (delayLeave) delayLeave(el, performRemove, performLeave);
|
|
8653
8898
|
else performLeave();
|
|
@@ -8666,7 +8911,7 @@ function isVaporComponent(type) {
|
|
|
8666
8911
|
/**
|
|
8667
8912
|
* shared between vdom and vapor
|
|
8668
8913
|
*/
|
|
8669
|
-
function getInheritedScopeIds(vnode, parentComponent) {
|
|
8914
|
+
function getInheritedScopeIds(vnode, parentComponent, includeVaporRootIds = true) {
|
|
8670
8915
|
const inheritedScopeIds = [];
|
|
8671
8916
|
let currentParent = parentComponent;
|
|
8672
8917
|
let currentVNode = vnode;
|
|
@@ -8682,6 +8927,8 @@ function getInheritedScopeIds(vnode, parentComponent) {
|
|
|
8682
8927
|
currentParent = currentParent.parent;
|
|
8683
8928
|
} else break;
|
|
8684
8929
|
}
|
|
8930
|
+
const vaporScopeIds = includeVaporRootIds && currentVNode.vaporScopeIds;
|
|
8931
|
+
if (vaporScopeIds) inheritedScopeIds.push(...vaporScopeIds);
|
|
8685
8932
|
return inheritedScopeIds;
|
|
8686
8933
|
}
|
|
8687
8934
|
function resolveAsyncComponentPlaceholder(anchorVnode) {
|
|
@@ -8700,7 +8947,7 @@ const Suspense = {
|
|
|
8700
8947
|
process(n1, n2, container, anchor, parentComponent, parentSuspense, namespace, slotScopeIds, optimized, rendererInternals) {
|
|
8701
8948
|
if (n1 == null) mountSuspense(n2, container, anchor, parentComponent, parentSuspense, namespace, slotScopeIds, optimized, rendererInternals);
|
|
8702
8949
|
else {
|
|
8703
|
-
if (parentSuspense && parentSuspense.deps > 0 && !n1.suspense.isInFallback) {
|
|
8950
|
+
if (parentSuspense && parentSuspense.deps > 0 && !n1.suspense.isInFallback && !parentSuspense.isHydrating) {
|
|
8704
8951
|
n2.suspense = n1.suspense;
|
|
8705
8952
|
n2.suspense.vnode = n2;
|
|
8706
8953
|
n2.el = n1.el;
|
|
@@ -8738,10 +8985,12 @@ function patchSuspense(n1, n2, container, anchor, parentComponent, namespace, sl
|
|
|
8738
8985
|
if (pendingBranch) {
|
|
8739
8986
|
suspense.pendingBranch = newBranch;
|
|
8740
8987
|
if (isSameVNodeType(pendingBranch, newBranch)) {
|
|
8741
|
-
|
|
8988
|
+
suspense.deps++;
|
|
8989
|
+
patch(pendingBranch, newBranch, isHydrating ? container : suspense.hiddenContainer, null, parentComponent, suspense, namespace, slotScopeIds, optimized);
|
|
8990
|
+
suspense.deps--;
|
|
8742
8991
|
if (suspense.deps <= 0) suspense.resolve();
|
|
8743
8992
|
else if (isInFallback) {
|
|
8744
|
-
if (!isHydrating) {
|
|
8993
|
+
if (!isHydrating && !suspense.isFallbackMountPending) {
|
|
8745
8994
|
patch(activeBranch, newFallback, container, anchor, parentComponent, null, namespace, slotScopeIds, optimized);
|
|
8746
8995
|
setActiveBranch(suspense, newFallback);
|
|
8747
8996
|
}
|
|
@@ -8753,12 +9002,16 @@ function patchSuspense(n1, n2, container, anchor, parentComponent, namespace, sl
|
|
|
8753
9002
|
suspense.activeBranch = pendingBranch;
|
|
8754
9003
|
} else unmount(pendingBranch, parentComponent, suspense);
|
|
8755
9004
|
suspense.deps = 0;
|
|
9005
|
+
for (let i = 0; i < suspense.effects.length; i++) {
|
|
9006
|
+
const effect = suspense.effects[i];
|
|
9007
|
+
if (effect.flags & 8) queuePostFlushCb(effect);
|
|
9008
|
+
}
|
|
8756
9009
|
suspense.effects.length = 0;
|
|
8757
9010
|
suspense.hiddenContainer = createElement("div");
|
|
8758
9011
|
if (isInFallback) {
|
|
8759
9012
|
patch(null, newBranch, suspense.hiddenContainer, null, parentComponent, suspense, namespace, slotScopeIds, optimized);
|
|
8760
9013
|
if (suspense.deps <= 0) suspense.resolve();
|
|
8761
|
-
else {
|
|
9014
|
+
else if (!suspense.isFallbackMountPending) {
|
|
8762
9015
|
patch(activeBranch, newFallback, container, anchor, parentComponent, null, namespace, slotScopeIds, optimized);
|
|
8763
9016
|
setActiveBranch(suspense, newFallback);
|
|
8764
9017
|
}
|
|
@@ -8862,7 +9115,7 @@ function createSuspenseBoundary(vnode, parentSuspense, parentComponent, containe
|
|
|
8862
9115
|
let hasUnresolvedAncestor = false;
|
|
8863
9116
|
while (parent) {
|
|
8864
9117
|
if (parent.pendingBranch) {
|
|
8865
|
-
parent.effects.push(
|
|
9118
|
+
for (let i = 0; i < effects.length; i++) parent.effects.push(effects[i]);
|
|
8866
9119
|
hasUnresolvedAncestor = true;
|
|
8867
9120
|
break;
|
|
8868
9121
|
}
|
|
@@ -8872,6 +9125,7 @@ function createSuspenseBoundary(vnode, parentSuspense, parentComponent, containe
|
|
|
8872
9125
|
suspense.effects = [];
|
|
8873
9126
|
if (isSuspensible) {
|
|
8874
9127
|
if (parentSuspense && parentSuspense.pendingBranch && parentSuspenseId === parentSuspense.pendingId) {
|
|
9128
|
+
parentSuspenseId = void 0;
|
|
8875
9129
|
parentSuspense.deps--;
|
|
8876
9130
|
if (parentSuspense.deps === 0 && !sync) parentSuspense.resolve();
|
|
8877
9131
|
}
|
|
@@ -8886,8 +9140,9 @@ function createSuspenseBoundary(vnode, parentSuspense, parentComponent, containe
|
|
|
8886
9140
|
const mountFallback = () => {
|
|
8887
9141
|
suspense.isFallbackMountPending = false;
|
|
8888
9142
|
if (!suspense.isInFallback) return;
|
|
8889
|
-
|
|
8890
|
-
|
|
9143
|
+
const latestFallback = suspense.vnode.ssFallback;
|
|
9144
|
+
patch(null, latestFallback, container, anchor, parentComponent, null, namespace, slotScopeIds, optimized);
|
|
9145
|
+
setActiveBranch(suspense, latestFallback);
|
|
8891
9146
|
};
|
|
8892
9147
|
const delayEnter = fallbackVNode.transition && fallbackVNode.transition.mode === "out-in";
|
|
8893
9148
|
if (delayEnter) {
|
|
@@ -8908,11 +9163,16 @@ function createSuspenseBoundary(vnode, parentSuspense, parentComponent, containe
|
|
|
8908
9163
|
registerDep(instance, onResolve) {
|
|
8909
9164
|
const isInPendingSuspense = !!suspense.pendingBranch;
|
|
8910
9165
|
if (isInPendingSuspense) suspense.deps++;
|
|
9166
|
+
const hydratedEl = instance.vnode && instance.vnode.el;
|
|
8911
9167
|
instance.asyncDep.catch((err) => {
|
|
8912
9168
|
handleError(err, instance, 0);
|
|
8913
9169
|
}).then((asyncSetupResult) => {
|
|
8914
9170
|
if (instance.isUnmounted || suspense.isUnmounted || suspense.pendingId !== instance.suspenseId) return;
|
|
8915
9171
|
setCurrentInstance(null, void 0);
|
|
9172
|
+
if (hydratedEl && !instance.scope.active) {
|
|
9173
|
+
if (isInPendingSuspense && --suspense.deps === 0) suspense.resolve();
|
|
9174
|
+
return;
|
|
9175
|
+
}
|
|
8916
9176
|
instance.asyncResolved = true;
|
|
8917
9177
|
onResolve(asyncSetupResult);
|
|
8918
9178
|
if (isInPendingSuspense && --suspense.deps === 0) suspense.resolve();
|
|
@@ -8963,9 +9223,10 @@ function normalizeSuspenseSlot(s) {
|
|
|
8963
9223
|
return s;
|
|
8964
9224
|
}
|
|
8965
9225
|
function queueEffectWithSuspense(fn, id, suspense) {
|
|
8966
|
-
if (suspense && suspense.pendingBranch)
|
|
8967
|
-
|
|
8968
|
-
|
|
9226
|
+
if (suspense && suspense.pendingBranch) {
|
|
9227
|
+
if (isArray(fn)) suspense.effects.push(...fn);
|
|
9228
|
+
else suspense.effects.push(fn);
|
|
9229
|
+
} else queuePostFlushCb(fn, id);
|
|
8969
9230
|
}
|
|
8970
9231
|
function setActiveBranch(suspense, branch) {
|
|
8971
9232
|
suspense.activeBranch = branch;
|
|
@@ -9172,11 +9433,26 @@ function createBaseVNode(type, props = null, children = null, patchFlag = 0, dyn
|
|
|
9172
9433
|
if (shapeFlag & 128) type.normalize(vnode);
|
|
9173
9434
|
} else if (children) vnode.shapeFlag |= isString(children) ? 8 : 16;
|
|
9174
9435
|
if (!!(process.env.NODE_ENV !== "production") && vnode.key !== vnode.key) warn$1(`VNode created with invalid key (NaN). VNode type:`, vnode.type);
|
|
9436
|
+
if (!!(process.env.NODE_ENV !== "production") && props && vnode.shapeFlag & 1) {
|
|
9437
|
+
const overwritingProp = props.innerHTML != null ? "innerHTML" : props.textContent != null ? "textContent" : null;
|
|
9438
|
+
if (overwritingProp && hasContentChildren(vnode.children)) warn$1(`The \`${overwritingProp}\` prop on <${vnode.type}> will override its children. Remove either the \`${overwritingProp}\` prop or the children.`);
|
|
9439
|
+
}
|
|
9175
9440
|
if (isBlockTreeEnabled > 0 && !isBlockNode && currentBlock && (vnode.patchFlag > 0 || shapeFlag & 6) && vnode.patchFlag !== 32) currentBlock.push(vnode);
|
|
9176
9441
|
convertLegacyVModelProps(vnode);
|
|
9177
9442
|
defineLegacyVNodeProperties(vnode);
|
|
9178
9443
|
return vnode;
|
|
9179
9444
|
}
|
|
9445
|
+
/**
|
|
9446
|
+
* dev only
|
|
9447
|
+
* Whether children would actually render something. Empty text and empty
|
|
9448
|
+
* arrays are ignored, mirroring the compiler's `node.children.length` check
|
|
9449
|
+
* for `v-html` / `v-text`.
|
|
9450
|
+
*/
|
|
9451
|
+
function hasContentChildren(children) {
|
|
9452
|
+
if (isString(children)) return children !== "";
|
|
9453
|
+
if (isArray(children)) return children.length > 0;
|
|
9454
|
+
return false;
|
|
9455
|
+
}
|
|
9180
9456
|
const createVNode = !!(process.env.NODE_ENV !== "production") ? createVNodeWithArgsTransform : _createVNode;
|
|
9181
9457
|
function _createVNode(type, props = null, children = null, patchFlag = 0, dynamicProps = null, isBlockNode = false) {
|
|
9182
9458
|
if (!type || type === NULL_DYNAMIC_COMPONENT) {
|
|
@@ -9186,8 +9462,10 @@ function _createVNode(type, props = null, children = null, patchFlag = 0, dynami
|
|
|
9186
9462
|
if (isVNode(type)) {
|
|
9187
9463
|
const cloned = cloneVNode(type, props, true);
|
|
9188
9464
|
if (children) normalizeChildren(cloned, children);
|
|
9189
|
-
if (isBlockTreeEnabled > 0 && !isBlockNode && currentBlock)
|
|
9190
|
-
|
|
9465
|
+
if (isBlockTreeEnabled > 0 && !isBlockNode && currentBlock) {
|
|
9466
|
+
if (cloned.shapeFlag & 6) currentBlock[currentBlock.indexOf(type)] = cloned;
|
|
9467
|
+
else currentBlock.push(cloned);
|
|
9468
|
+
}
|
|
9191
9469
|
cloned.patchFlag = -2;
|
|
9192
9470
|
return cloned;
|
|
9193
9471
|
}
|
|
@@ -9248,7 +9526,10 @@ function cloneVNode(vnode, extraProps, mergeRef = false, cloneTransition = false
|
|
|
9248
9526
|
ce: vnode.ce,
|
|
9249
9527
|
vi: vnode.vi,
|
|
9250
9528
|
vs: cloneVaporSlotMeta(vnode),
|
|
9251
|
-
vb: vnode.vb
|
|
9529
|
+
vb: vnode.vb,
|
|
9530
|
+
ibu: vnode.ibu,
|
|
9531
|
+
iu: vnode.iu,
|
|
9532
|
+
cacheIndex: vnode.cacheIndex
|
|
9252
9533
|
};
|
|
9253
9534
|
if (transition && cloneTransition) setTransitionHooks(cloned, transition.clone(cloned));
|
|
9254
9535
|
defineLegacyVNodeProperties(cloned);
|
|
@@ -9259,8 +9540,7 @@ function cloneVaporSlotMeta(vnode) {
|
|
|
9259
9540
|
if (!vaporSlot) return vaporSlot;
|
|
9260
9541
|
const cloned = {
|
|
9261
9542
|
slot: vaporSlot.slot,
|
|
9262
|
-
|
|
9263
|
-
outletFallback: vaporSlot.outletFallback
|
|
9543
|
+
outlets: vaporSlot.outlets
|
|
9264
9544
|
};
|
|
9265
9545
|
if (vnode.el) {
|
|
9266
9546
|
cloned.state = vaporSlot.state;
|
|
@@ -9312,25 +9592,28 @@ function normalizeChildren(vnode, children) {
|
|
|
9312
9592
|
const { shapeFlag } = vnode;
|
|
9313
9593
|
if (children == null) children = null;
|
|
9314
9594
|
else if (isArray(children)) type = 16;
|
|
9315
|
-
else if (typeof children === "object")
|
|
9316
|
-
|
|
9317
|
-
|
|
9318
|
-
|
|
9319
|
-
|
|
9320
|
-
|
|
9321
|
-
|
|
9322
|
-
|
|
9323
|
-
|
|
9324
|
-
|
|
9325
|
-
|
|
9326
|
-
|
|
9327
|
-
|
|
9328
|
-
|
|
9329
|
-
|
|
9330
|
-
|
|
9595
|
+
else if (typeof children === "object") {
|
|
9596
|
+
if (shapeFlag & 65) {
|
|
9597
|
+
const slot = children.default;
|
|
9598
|
+
if (slot) {
|
|
9599
|
+
slot._c && (slot._d = false);
|
|
9600
|
+
normalizeChildren(vnode, slot());
|
|
9601
|
+
slot._c && (slot._d = true);
|
|
9602
|
+
}
|
|
9603
|
+
return;
|
|
9604
|
+
} else {
|
|
9605
|
+
type = 32;
|
|
9606
|
+
const slotFlag = children._;
|
|
9607
|
+
if (!slotFlag && !isInternalObject(children)) children._ctx = currentRenderingInstance;
|
|
9608
|
+
else if (slotFlag === 3 && currentRenderingInstance) {
|
|
9609
|
+
if (currentRenderingInstance.slots._ === 1) children._ = 1;
|
|
9610
|
+
else {
|
|
9611
|
+
children._ = 2;
|
|
9612
|
+
vnode.patchFlag |= 1024;
|
|
9613
|
+
}
|
|
9614
|
+
}
|
|
9331
9615
|
}
|
|
9332
|
-
}
|
|
9333
|
-
else if (isFunction(children)) {
|
|
9616
|
+
} else if (isFunction(children)) {
|
|
9334
9617
|
if (shapeFlag & 65) {
|
|
9335
9618
|
normalizeChildren(vnode, { default: children });
|
|
9336
9619
|
return;
|
|
@@ -9407,6 +9690,16 @@ const setCurrentInstance = (instance, scope = instance !== null ? instance.scope
|
|
|
9407
9690
|
simpleSetCurrentInstance(instance);
|
|
9408
9691
|
}
|
|
9409
9692
|
};
|
|
9693
|
+
/**
|
|
9694
|
+
* Restores a snapshot returned by {@link setCurrentInstance}. Unlike calling
|
|
9695
|
+
* `setCurrentInstance(...prev)`, an `undefined` saved scope is restored
|
|
9696
|
+
* verbatim instead of re-triggering the `instance.scope` default.
|
|
9697
|
+
* @internal
|
|
9698
|
+
*/
|
|
9699
|
+
const restoreCurrentInstance = (prev) => {
|
|
9700
|
+
setCurrentScope(prev[1]);
|
|
9701
|
+
simpleSetCurrentInstance(prev[0]);
|
|
9702
|
+
};
|
|
9410
9703
|
const internalOptions = [
|
|
9411
9704
|
"ce",
|
|
9412
9705
|
"type",
|
|
@@ -9438,7 +9731,7 @@ const useInstanceOption = (key, silent = false) => {
|
|
|
9438
9731
|
};
|
|
9439
9732
|
//#endregion
|
|
9440
9733
|
//#region packages/runtime-core/src/component.ts
|
|
9441
|
-
const emptyAppContext =
|
|
9734
|
+
const emptyAppContext = /*@__PURE__*/ createAppContext();
|
|
9442
9735
|
let uid = 0;
|
|
9443
9736
|
/**
|
|
9444
9737
|
* @internal for vapor
|
|
@@ -9567,7 +9860,7 @@ function setupStatefulComponent(instance, isSSR) {
|
|
|
9567
9860
|
const setupResult = callWithErrorHandling(setup, instance, 0, [!!(process.env.NODE_ENV !== "production") ? /* @__PURE__ */ shallowReadonly(instance.props) : instance.props, setupContext]);
|
|
9568
9861
|
const isAsyncSetup = isPromise(setupResult);
|
|
9569
9862
|
setActiveSub(prevSub);
|
|
9570
|
-
|
|
9863
|
+
restoreCurrentInstance(prev);
|
|
9571
9864
|
if ((isAsyncSetup || instance.sp) && !isAsyncWrapper(instance)) markAsyncBoundary(instance);
|
|
9572
9865
|
if (isAsyncSetup) {
|
|
9573
9866
|
const unsetCurrentInstance = () => {
|
|
@@ -9575,7 +9868,12 @@ function setupStatefulComponent(instance, isSSR) {
|
|
|
9575
9868
|
};
|
|
9576
9869
|
setupResult.then(unsetCurrentInstance, unsetCurrentInstance);
|
|
9577
9870
|
if (isSSR) return setupResult.then((resolvedResult) => {
|
|
9578
|
-
|
|
9871
|
+
setInSSRSetupState(true);
|
|
9872
|
+
try {
|
|
9873
|
+
handleSetupResult(instance, resolvedResult, isSSR);
|
|
9874
|
+
} finally {
|
|
9875
|
+
setInSSRSetupState(false);
|
|
9876
|
+
}
|
|
9579
9877
|
}).catch((e) => {
|
|
9580
9878
|
handleError(e, instance, 0);
|
|
9581
9879
|
});
|
|
@@ -9587,9 +9885,10 @@ function setupStatefulComponent(instance, isSSR) {
|
|
|
9587
9885
|
} else finishComponentSetup(instance, isSSR);
|
|
9588
9886
|
}
|
|
9589
9887
|
function handleSetupResult(instance, setupResult, isSSR) {
|
|
9590
|
-
if (isFunction(setupResult))
|
|
9591
|
-
|
|
9592
|
-
|
|
9888
|
+
if (isFunction(setupResult)) {
|
|
9889
|
+
if (instance.type.__ssrInlineRender) instance.ssrRender = setupResult;
|
|
9890
|
+
else instance.render = setupResult;
|
|
9891
|
+
} else if (isObject(setupResult)) {
|
|
9593
9892
|
if (!!(process.env.NODE_ENV !== "production") && isVNode(setupResult)) warn$1("setup() should not return VNodes directly - return a render function instead.");
|
|
9594
9893
|
if (!!(process.env.NODE_ENV !== "production") || __VUE_PROD_DEVTOOLS__) instance.devtoolsRawSetupState = setupResult;
|
|
9595
9894
|
instance.setupState = proxyRefs(setupResult);
|
|
@@ -9641,13 +9940,15 @@ function finishComponentSetup(instance, isSSR, skipOptions) {
|
|
|
9641
9940
|
applyOptions(instance);
|
|
9642
9941
|
} finally {
|
|
9643
9942
|
setActiveSub(prevSub);
|
|
9644
|
-
|
|
9943
|
+
restoreCurrentInstance(prevInstance);
|
|
9645
9944
|
}
|
|
9646
9945
|
}
|
|
9647
|
-
if (!!(process.env.NODE_ENV !== "production") && !Component.render && instance.render === NOOP && !isSSR)
|
|
9946
|
+
if (!!(process.env.NODE_ENV !== "production") && !Component.render && instance.render === NOOP && !isSSR) {
|
|
9947
|
+
if (!compile$1 && Component.template)
|
|
9648
9948
|
/* v8 ignore start */
|
|
9649
|
-
|
|
9650
|
-
|
|
9949
|
+
warn$1("Component provided template option but runtime compilation is not supported in this build of Vue. Configure your bundler to alias \"vue\" to \"vue/dist/vue.esm-bundler.js\".");
|
|
9950
|
+
else warn$1(`Component is missing template or render function: `, Component);
|
|
9951
|
+
}
|
|
9651
9952
|
}
|
|
9652
9953
|
const attrsProxyHandlers = !!(process.env.NODE_ENV !== "production") ? {
|
|
9653
9954
|
get(target, key) {
|
|
@@ -9720,14 +10021,13 @@ function getComponentPublicInstance(instance) {
|
|
|
9720
10021
|
if (instance.exposed) return instance.exposeProxy || (instance.exposeProxy = new Proxy(proxyRefs(markRaw(instance.exposed)), {
|
|
9721
10022
|
get(target, key) {
|
|
9722
10023
|
if (key in target) return target[key];
|
|
9723
|
-
else {
|
|
10024
|
+
else if (!instance.vapor) {
|
|
9724
10025
|
const publicPropertiesMap = getPublicPropertiesMap();
|
|
9725
10026
|
if (key in publicPropertiesMap) return publicPropertiesMap[key](instance);
|
|
9726
10027
|
}
|
|
9727
10028
|
},
|
|
9728
10029
|
has(target, key) {
|
|
9729
|
-
|
|
9730
|
-
return key in target || key in publicPropertiesMap;
|
|
10030
|
+
return key in target || !instance.vapor && key in getPublicPropertiesMap();
|
|
9731
10031
|
}
|
|
9732
10032
|
}));
|
|
9733
10033
|
else return instance.proxy;
|
|
@@ -9765,11 +10065,12 @@ function h(type, propsOrChildren, children) {
|
|
|
9765
10065
|
try {
|
|
9766
10066
|
setBlockTracking(-1);
|
|
9767
10067
|
const l = arguments.length;
|
|
9768
|
-
if (l === 2)
|
|
9769
|
-
if (
|
|
9770
|
-
|
|
9771
|
-
|
|
9772
|
-
|
|
10068
|
+
if (l === 2) {
|
|
10069
|
+
if (isObject(propsOrChildren) && !isArray(propsOrChildren)) {
|
|
10070
|
+
if (isVNode(propsOrChildren)) return createVNode(type, null, [propsOrChildren]);
|
|
10071
|
+
return createVNode(type, propsOrChildren);
|
|
10072
|
+
} else return createVNode(type, null, propsOrChildren);
|
|
10073
|
+
} else {
|
|
9773
10074
|
if (l > 3) children = Array.prototype.slice.call(arguments, 2);
|
|
9774
10075
|
else if (l === 3 && isVNode(children)) children = [children];
|
|
9775
10076
|
return createVNode(type, propsOrChildren, children);
|
|
@@ -9961,7 +10262,7 @@ function isMemoSame(cached, memo) {
|
|
|
9961
10262
|
}
|
|
9962
10263
|
//#endregion
|
|
9963
10264
|
//#region packages/runtime-core/src/index.ts
|
|
9964
|
-
const version = "3.6.0-rc.
|
|
10265
|
+
const version = "3.6.0-rc.11";
|
|
9965
10266
|
const warn = !!(process.env.NODE_ENV !== "production") ? warn$1 : NOOP;
|
|
9966
10267
|
/**
|
|
9967
10268
|
* Runtime error messages. Only exposed in dev or esm builds.
|
|
@@ -9984,7 +10285,10 @@ const ssrUtils = {
|
|
|
9984
10285
|
getComponentPublicInstance,
|
|
9985
10286
|
ensureValidVNode,
|
|
9986
10287
|
pushWarningContext,
|
|
9987
|
-
popWarningContext
|
|
10288
|
+
popWarningContext,
|
|
10289
|
+
VaporSlot,
|
|
10290
|
+
rawVaporSlotKey,
|
|
10291
|
+
invokeSlotFallback
|
|
9988
10292
|
};
|
|
9989
10293
|
/**
|
|
9990
10294
|
* @internal only exposed in compat builds
|
|
@@ -10006,7 +10310,7 @@ const DeprecationTypes = DeprecationTypes$1;
|
|
|
10006
10310
|
let policy = void 0;
|
|
10007
10311
|
const tt = typeof window !== "undefined" && window.trustedTypes;
|
|
10008
10312
|
if (tt) try {
|
|
10009
|
-
policy =
|
|
10313
|
+
policy = /*@__PURE__*/ tt.createPolicy("vue", { createHTML: (val) => val });
|
|
10010
10314
|
} catch (e) {
|
|
10011
10315
|
process.env.NODE_ENV !== "production" && warn(`Error creating trusted types policy: ${e}`);
|
|
10012
10316
|
}
|
|
@@ -10014,7 +10318,7 @@ const unsafeToTrustedHTML = policy ? (val) => policy.createHTML(val) : (val) =>
|
|
|
10014
10318
|
const svgNS = "http://www.w3.org/2000/svg";
|
|
10015
10319
|
const mathmlNS = "http://www.w3.org/1998/Math/MathML";
|
|
10016
10320
|
const doc = typeof document !== "undefined" ? document : null;
|
|
10017
|
-
const templateContainer = doc &&
|
|
10321
|
+
const templateContainer = doc && /*@__PURE__*/ doc.createElement("template");
|
|
10018
10322
|
const nodeOps = {
|
|
10019
10323
|
insert: (child, parent, anchor) => {
|
|
10020
10324
|
parent.insertBefore(child, anchor || null);
|
|
@@ -10088,7 +10392,7 @@ const DOMTransitionPropsValidators = {
|
|
|
10088
10392
|
leaveActiveClass: String,
|
|
10089
10393
|
leaveToClass: String
|
|
10090
10394
|
};
|
|
10091
|
-
const TransitionPropsValidators =
|
|
10395
|
+
const TransitionPropsValidators = /*@__PURE__*/ extend({}, BaseTransitionPropsValidators, DOMTransitionPropsValidators);
|
|
10092
10396
|
/**
|
|
10093
10397
|
* Wrap logic that attaches extra properties to Transition in a function
|
|
10094
10398
|
* so that it can be annotated as pure
|
|
@@ -10103,7 +10407,7 @@ const decorate$1 = (t) => {
|
|
|
10103
10407
|
* DOM Transition is a higher-order-component based on the platform-agnostic
|
|
10104
10408
|
* base Transition component, with DOM-specific logic.
|
|
10105
10409
|
*/
|
|
10106
|
-
const Transition =
|
|
10410
|
+
const Transition = /*@__PURE__*/ decorate$1((props, { slots }) => h(BaseTransition, resolveTransitionProps(props), slots));
|
|
10107
10411
|
/**
|
|
10108
10412
|
* #3227 Incoming hooks may be merged into arrays when wrapping Transition
|
|
10109
10413
|
* with custom HOCs.
|
|
@@ -10343,14 +10647,15 @@ const vShow = {
|
|
|
10343
10647
|
},
|
|
10344
10648
|
updated(el, { value, oldValue }, { transition }) {
|
|
10345
10649
|
if (!value === !oldValue) return;
|
|
10346
|
-
if (transition)
|
|
10347
|
-
|
|
10348
|
-
|
|
10349
|
-
|
|
10350
|
-
|
|
10351
|
-
|
|
10352
|
-
|
|
10353
|
-
|
|
10650
|
+
if (transition) {
|
|
10651
|
+
if (value) {
|
|
10652
|
+
transition.beforeEnter(el);
|
|
10653
|
+
setDisplay(el, true);
|
|
10654
|
+
transition.enter(el);
|
|
10655
|
+
} else transition.leave(el, () => {
|
|
10656
|
+
setDisplay(el, false);
|
|
10657
|
+
});
|
|
10658
|
+
} else setDisplay(el, value);
|
|
10354
10659
|
},
|
|
10355
10660
|
beforeUnmount(el, { value }) {
|
|
10356
10661
|
setDisplay(el, value);
|
|
@@ -10374,50 +10679,20 @@ const CSS_VAR_TEXT = Symbol(!!(process.env.NODE_ENV !== "production") ? "CSS_VAR
|
|
|
10374
10679
|
*/
|
|
10375
10680
|
function useCssVars(getter) {
|
|
10376
10681
|
const instance = getCurrentInstance();
|
|
10377
|
-
const getVars = () => getter(instance.proxy);
|
|
10378
|
-
const setVars = (vars) => {
|
|
10379
|
-
if (instance.ce) setVarsOnNode(instance.ce, vars);
|
|
10380
|
-
else setVarsOnVNode(instance.subTree, vars);
|
|
10381
|
-
};
|
|
10382
|
-
baseUseCssVars(instance, () => instance.subTree.el.parentNode, getVars, setVars);
|
|
10383
|
-
}
|
|
10384
|
-
function setVarsOnVNode(vnode, vars) {
|
|
10385
|
-
if (vnode.shapeFlag & 128) {
|
|
10386
|
-
const suspense = vnode.suspense;
|
|
10387
|
-
vnode = suspense.activeBranch;
|
|
10388
|
-
if (suspense.pendingBranch && !suspense.isHydrating) suspense.effects.push(() => {
|
|
10389
|
-
setVarsOnVNode(suspense.activeBranch, vars);
|
|
10390
|
-
});
|
|
10391
|
-
}
|
|
10392
|
-
while (vnode.component) vnode = vnode.component.subTree;
|
|
10393
|
-
if (vnode.shapeFlag & 1 && vnode.el) setVarsOnNode(vnode.el, vars);
|
|
10394
|
-
else if (vnode.type === Fragment) vnode.children.forEach((c) => setVarsOnVNode(c, vars));
|
|
10395
|
-
else if (vnode.type === Static) {
|
|
10396
|
-
let { el, anchor } = vnode;
|
|
10397
|
-
while (el) {
|
|
10398
|
-
setVarsOnNode(el, vars);
|
|
10399
|
-
if (el === anchor) break;
|
|
10400
|
-
el = el.nextSibling;
|
|
10401
|
-
}
|
|
10402
|
-
}
|
|
10403
|
-
}
|
|
10404
|
-
/**
|
|
10405
|
-
* @internal
|
|
10406
|
-
* shared between vdom and vapor
|
|
10407
|
-
*/
|
|
10408
|
-
function baseUseCssVars(instance, getParentNode, getVars, setVars) {
|
|
10409
10682
|
/* v8 ignore start */
|
|
10410
10683
|
if (!instance) {
|
|
10411
10684
|
process.env.NODE_ENV !== "production" && warn(`useCssVars is called without current active component instance.`);
|
|
10412
10685
|
return;
|
|
10413
10686
|
}
|
|
10414
10687
|
/* v8 ignore stop */
|
|
10688
|
+
const getVars = () => getter(instance.proxy);
|
|
10415
10689
|
if (!!(process.env.NODE_ENV !== "production")) instance.getCssVars = getVars;
|
|
10416
10690
|
const updateTeleports = instance.ut = (vars = getVars()) => {
|
|
10417
10691
|
Array.from(document.querySelectorAll(`[data-v-owner="${instance.uid}"]`)).forEach((node) => setVarsOnNode(node, vars));
|
|
10418
10692
|
};
|
|
10419
10693
|
const applyCssVars = (vars = getVars()) => {
|
|
10420
|
-
|
|
10694
|
+
if (instance.ce) setVarsOnNode(instance.ce, vars);
|
|
10695
|
+
else setVarsOnVNode(instance.subTree, vars);
|
|
10421
10696
|
updateTeleports(vars);
|
|
10422
10697
|
};
|
|
10423
10698
|
onBeforeUpdate(() => {
|
|
@@ -10430,10 +10705,38 @@ function baseUseCssVars(instance, getParentNode, getVars, setVars) {
|
|
|
10430
10705
|
applyCssVars(vars);
|
|
10431
10706
|
}, NOOP, { flush: "post" });
|
|
10432
10707
|
const ob = new MutationObserver(() => applyCssVars());
|
|
10433
|
-
ob.observe(
|
|
10708
|
+
ob.observe(instance.subTree.el.parentNode, { childList: true });
|
|
10434
10709
|
onUnmounted(() => ob.disconnect());
|
|
10435
10710
|
});
|
|
10436
10711
|
}
|
|
10712
|
+
function setVarsOnVNode(vnode, vars) {
|
|
10713
|
+
if (vnode.shapeFlag & 128) {
|
|
10714
|
+
const suspense = vnode.suspense;
|
|
10715
|
+
vnode = suspense.activeBranch;
|
|
10716
|
+
if (suspense.pendingBranch && !suspense.isHydrating) suspense.effects.push(() => {
|
|
10717
|
+
setVarsOnVNode(suspense.activeBranch, vars);
|
|
10718
|
+
});
|
|
10719
|
+
}
|
|
10720
|
+
while (vnode.component) {
|
|
10721
|
+
const component = vnode.component;
|
|
10722
|
+
if (component.vapor) {
|
|
10723
|
+
component.appContext.vapor.applyCssVars(vnode, vars);
|
|
10724
|
+
return;
|
|
10725
|
+
}
|
|
10726
|
+
vnode = vnode.component.subTree;
|
|
10727
|
+
}
|
|
10728
|
+
if (vnode.shapeFlag & 1 && vnode.el) setVarsOnNode(vnode.el, vars);
|
|
10729
|
+
else if (vnode.vb) vnode.ctx.appContext.vapor.applyCssVars(vnode, vars);
|
|
10730
|
+
else if (vnode.type === Fragment) vnode.children.forEach((c) => setVarsOnVNode(c, vars));
|
|
10731
|
+
else if (vnode.type === Static) {
|
|
10732
|
+
let { el, anchor } = vnode;
|
|
10733
|
+
while (el) {
|
|
10734
|
+
setVarsOnNode(el, vars);
|
|
10735
|
+
if (el === anchor) break;
|
|
10736
|
+
el = el.nextSibling;
|
|
10737
|
+
}
|
|
10738
|
+
}
|
|
10739
|
+
}
|
|
10437
10740
|
/**
|
|
10438
10741
|
* @internal
|
|
10439
10742
|
* shared between vdom and vapor
|
|
@@ -10458,11 +10761,13 @@ function patchStyle(el, prev, next) {
|
|
|
10458
10761
|
const isCssString = isString(next);
|
|
10459
10762
|
let hasControlledDisplay = false;
|
|
10460
10763
|
if (next && !isCssString) {
|
|
10461
|
-
if (prev)
|
|
10462
|
-
|
|
10463
|
-
|
|
10464
|
-
|
|
10465
|
-
|
|
10764
|
+
if (prev) {
|
|
10765
|
+
if (!isString(prev)) {
|
|
10766
|
+
for (const key in prev) if (next[key] == null) setStyle(style, key, "");
|
|
10767
|
+
} else for (const prevStyle of prev.split(";")) {
|
|
10768
|
+
const key = prevStyle.slice(0, prevStyle.indexOf(":")).trim();
|
|
10769
|
+
if (next[key] == null) setStyle(style, key, "");
|
|
10770
|
+
}
|
|
10466
10771
|
}
|
|
10467
10772
|
for (const key in next) {
|
|
10468
10773
|
if (key === "display") hasControlledDisplay = true;
|
|
@@ -10478,7 +10783,11 @@ function patchStyle(el, prev, next) {
|
|
|
10478
10783
|
style.cssText = next;
|
|
10479
10784
|
hasControlledDisplay = displayRE.test(next);
|
|
10480
10785
|
}
|
|
10481
|
-
} else if (prev)
|
|
10786
|
+
} else if (prev) {
|
|
10787
|
+
const cssVarText = style[CSS_VAR_TEXT];
|
|
10788
|
+
if (cssVarText) style.cssText = cssVarText;
|
|
10789
|
+
else el.removeAttribute("style");
|
|
10790
|
+
}
|
|
10482
10791
|
if (vShowOriginalDisplay in el) {
|
|
10483
10792
|
el[vShowOriginalDisplay] = hasControlledDisplay ? style.display : "";
|
|
10484
10793
|
if (el[vShowHidden]) style.display = "none";
|
|
@@ -10493,8 +10802,10 @@ function setStyle(style, name, rawVal) {
|
|
|
10493
10802
|
if (!!(process.env.NODE_ENV !== "production")) {
|
|
10494
10803
|
if (semicolonRE.test(val)) warn(`Unexpected semicolon at the end of '${name}' style value: '${val}'`);
|
|
10495
10804
|
}
|
|
10496
|
-
if (name.startsWith("--"))
|
|
10497
|
-
|
|
10805
|
+
if (name.startsWith("--")) {
|
|
10806
|
+
if (importantRE.test(val)) style.setProperty(name, val.replace(importantRE, ""), "important");
|
|
10807
|
+
else style.setProperty(name, val);
|
|
10808
|
+
} else {
|
|
10498
10809
|
const prefixed = autoPrefix(style, name);
|
|
10499
10810
|
if (importantRE.test(val)) style.setProperty(hyphenate(prefixed), val.replace(importantRE, ""), "important");
|
|
10500
10811
|
else style[prefixed] = val;
|
|
@@ -10531,15 +10842,16 @@ function shouldPreserveTextareaResizeStyle(el, key, prev, next) {
|
|
|
10531
10842
|
//#region packages/runtime-dom/src/modules/attrs.ts
|
|
10532
10843
|
const xlinkNS = "http://www.w3.org/1999/xlink";
|
|
10533
10844
|
function patchAttr(el, key, value, isSVG, instance, isBoolean = isSpecialBooleanAttr(key)) {
|
|
10534
|
-
if (isSVG && key.startsWith("xlink:"))
|
|
10535
|
-
|
|
10536
|
-
|
|
10845
|
+
if (isSVG && key.startsWith("xlink:")) {
|
|
10846
|
+
if (value == null) el.removeAttributeNS(xlinkNS, key.slice(6, key.length));
|
|
10847
|
+
else el.setAttributeNS(xlinkNS, key, value);
|
|
10848
|
+
} else {
|
|
10537
10849
|
if (compatCoerceAttr(el, key, value, instance)) return;
|
|
10538
10850
|
if (value == null || isBoolean && !includeBooleanAttr(value)) el.removeAttribute(key);
|
|
10539
10851
|
else el.setAttribute(key, isBoolean ? "" : isSymbol(value) ? String(value) : value);
|
|
10540
10852
|
}
|
|
10541
10853
|
}
|
|
10542
|
-
const isEnumeratedAttr =
|
|
10854
|
+
const isEnumeratedAttr = /*@__PURE__*/ makeMap("contenteditable,draggable,spellcheck");
|
|
10543
10855
|
function compatCoerceAttr(el, key, value, instance = null) {
|
|
10544
10856
|
if (isEnumeratedAttr(key)) {
|
|
10545
10857
|
const v2CoercedValue = value === void 0 ? null : value === null || value === false || value === "false" ? "false" : "true";
|
|
@@ -10631,7 +10943,7 @@ function parseEventName(name) {
|
|
|
10631
10943
|
return [name[2] === ":" ? name.slice(3) : hyphenate(name.slice(2)), options];
|
|
10632
10944
|
}
|
|
10633
10945
|
let cachedNow = 0;
|
|
10634
|
-
const p =
|
|
10946
|
+
const p = /*@__PURE__*/ Promise.resolve();
|
|
10635
10947
|
const getNow = () => cachedNow || (p.then(() => cachedNow = 0), cachedNow = Date.now());
|
|
10636
10948
|
function createInvoker(initialValue, instance) {
|
|
10637
10949
|
const invoker = (e) => {
|
|
@@ -10699,7 +11011,7 @@ function shouldSetAsPropForVueCE(el, key) {
|
|
|
10699
11011
|
//#endregion
|
|
10700
11012
|
//#region packages/runtime-dom/src/apiCustomElement.ts
|
|
10701
11013
|
const REMOVAL = {};
|
|
10702
|
-
|
|
11014
|
+
/*@__NO_SIDE_EFFECTS__*/
|
|
10703
11015
|
function defineCustomElement(options, extraOptions, _createApp) {
|
|
10704
11016
|
let Comp = /* @__PURE__ */ defineComponent(options, extraOptions);
|
|
10705
11017
|
if (isPlainObject(Comp)) Comp = extend({}, Comp, extraOptions);
|
|
@@ -10748,12 +11060,14 @@ var VueElementBase = class VueElementBase extends BaseClass {
|
|
|
10748
11060
|
this._parent = parent;
|
|
10749
11061
|
break;
|
|
10750
11062
|
}
|
|
10751
|
-
if (!this._instance)
|
|
10752
|
-
|
|
10753
|
-
this._pendingResolve =
|
|
10754
|
-
|
|
10755
|
-
|
|
10756
|
-
|
|
11063
|
+
if (!this._instance) {
|
|
11064
|
+
if (this._resolved) this._mountComponent(this._def);
|
|
11065
|
+
else if (parent && parent._pendingResolve) this._pendingResolve = parent._pendingResolve.then(() => {
|
|
11066
|
+
this._pendingResolve = void 0;
|
|
11067
|
+
if (this.isConnected) return this._resolveDef();
|
|
11068
|
+
});
|
|
11069
|
+
else this._resolveDef();
|
|
11070
|
+
}
|
|
10757
11071
|
}
|
|
10758
11072
|
disconnectedCallback() {
|
|
10759
11073
|
this._connected = false;
|
|
@@ -10787,7 +11101,7 @@ var VueElementBase = class VueElementBase extends BaseClass {
|
|
|
10787
11101
|
* resolve inner component definition (handle possible async component)
|
|
10788
11102
|
*/
|
|
10789
11103
|
_resolveDef() {
|
|
10790
|
-
if (this._pendingResolve) return;
|
|
11104
|
+
if (this._pendingResolve) return this._pendingResolve;
|
|
10791
11105
|
for (let i = 0; i < this.attributes.length; i++) this._setAttr(this.attributes[i].name);
|
|
10792
11106
|
this._ob = new MutationObserver(this._processMutations.bind(this));
|
|
10793
11107
|
this._ob.observe(this, { attributes: true });
|
|
@@ -10817,6 +11131,7 @@ var VueElementBase = class VueElementBase extends BaseClass {
|
|
|
10817
11131
|
this._def = def;
|
|
10818
11132
|
resolve(def);
|
|
10819
11133
|
});
|
|
11134
|
+
return this._pendingResolve;
|
|
10820
11135
|
} else resolve(this._def);
|
|
10821
11136
|
}
|
|
10822
11137
|
_mountComponent(def) {
|
|
@@ -10855,14 +11170,17 @@ var VueElementBase = class VueElementBase extends BaseClass {
|
|
|
10855
11170
|
const { props } = def;
|
|
10856
11171
|
const declaredPropKeys = isArray(props) ? props : Object.keys(props || {});
|
|
10857
11172
|
for (const key of Object.keys(this)) if (key[0] !== "_" && declaredPropKeys.includes(key)) this._setProp(key, this[key]);
|
|
10858
|
-
for (const key of declaredPropKeys.map(camelize))
|
|
10859
|
-
|
|
10860
|
-
|
|
10861
|
-
|
|
10862
|
-
|
|
10863
|
-
|
|
10864
|
-
|
|
10865
|
-
|
|
11173
|
+
for (const key of declaredPropKeys.map(camelize)) {
|
|
11174
|
+
if (!!(process.env.NODE_ENV !== "production") && key in Object.getPrototypeOf(this)) warn(`Custom element prop "${key}" conflicts with an existing property on the element and will overwrite it.`);
|
|
11175
|
+
Object.defineProperty(this, key, {
|
|
11176
|
+
get() {
|
|
11177
|
+
return this._getProp(key);
|
|
11178
|
+
},
|
|
11179
|
+
set(val) {
|
|
11180
|
+
this._setProp(key, val, true, !this._patching);
|
|
11181
|
+
}
|
|
11182
|
+
});
|
|
11183
|
+
}
|
|
10866
11184
|
}
|
|
10867
11185
|
_setAttr(key) {
|
|
10868
11186
|
if (key.startsWith("data-v-")) return;
|
|
@@ -10923,14 +11241,16 @@ var VueElementBase = class VueElementBase extends BaseClass {
|
|
|
10923
11241
|
if (!parentComp) this._styleAnchors.set(this._def, s);
|
|
10924
11242
|
if (owner) this._styleAnchors.set(owner, s);
|
|
10925
11243
|
}
|
|
10926
|
-
if (!!(process.env.NODE_ENV !== "production"))
|
|
10927
|
-
if (owner
|
|
10928
|
-
if (
|
|
10929
|
-
|
|
10930
|
-
|
|
10931
|
-
|
|
10932
|
-
|
|
10933
|
-
|
|
11244
|
+
if (!!(process.env.NODE_ENV !== "production")) {
|
|
11245
|
+
if (owner) {
|
|
11246
|
+
if (owner.__hmrId) {
|
|
11247
|
+
if (!this._childStyles) this._childStyles = /* @__PURE__ */ new Map();
|
|
11248
|
+
let entry = this._childStyles.get(owner.__hmrId);
|
|
11249
|
+
if (!entry) this._childStyles.set(owner.__hmrId, entry = []);
|
|
11250
|
+
entry.push(s);
|
|
11251
|
+
}
|
|
11252
|
+
} else (this._styles || (this._styles = [])).push(s);
|
|
11253
|
+
}
|
|
10934
11254
|
}
|
|
10935
11255
|
}
|
|
10936
11256
|
_getStyleAnchor(comp) {
|
|
@@ -10965,13 +11285,11 @@ var VueElementBase = class VueElementBase extends BaseClass {
|
|
|
10965
11285
|
_renderSlots() {
|
|
10966
11286
|
const outlets = this._getSlots();
|
|
10967
11287
|
const scopeId = this._instance.type.__scopeId;
|
|
10968
|
-
const slotReplacements = /* @__PURE__ */ new Map();
|
|
10969
11288
|
for (let i = 0; i < outlets.length; i++) {
|
|
10970
11289
|
const o = outlets[i];
|
|
10971
11290
|
const slotName = o.getAttribute("name") || "default";
|
|
10972
11291
|
const content = this._slots[slotName];
|
|
10973
11292
|
const parent = o.parentNode;
|
|
10974
|
-
const replacementNodes = [];
|
|
10975
11293
|
if (content) for (const n of content) {
|
|
10976
11294
|
if (scopeId && n.nodeType === 1) {
|
|
10977
11295
|
const id = scopeId + "-s";
|
|
@@ -10981,20 +11299,10 @@ var VueElementBase = class VueElementBase extends BaseClass {
|
|
|
10981
11299
|
while (child = walker.nextNode()) child.setAttribute(id, "");
|
|
10982
11300
|
}
|
|
10983
11301
|
parent.insertBefore(n, o);
|
|
10984
|
-
replacementNodes.push(n);
|
|
10985
|
-
}
|
|
10986
|
-
else while (o.firstChild) {
|
|
10987
|
-
const child = o.firstChild;
|
|
10988
|
-
parent.insertBefore(child, o);
|
|
10989
|
-
replacementNodes.push(child);
|
|
10990
11302
|
}
|
|
11303
|
+
else while (o.firstChild) parent.insertBefore(o.firstChild, o);
|
|
10991
11304
|
parent.removeChild(o);
|
|
10992
|
-
slotReplacements.set(o, {
|
|
10993
|
-
nodes: replacementNodes,
|
|
10994
|
-
usedFallback: !content
|
|
10995
|
-
});
|
|
10996
11305
|
}
|
|
10997
|
-
this._updateSlotNodes(slotReplacements);
|
|
10998
11306
|
}
|
|
10999
11307
|
/**
|
|
11000
11308
|
* @internal
|
|
@@ -11033,7 +11341,7 @@ var VueElementBase = class VueElementBase extends BaseClass {
|
|
|
11033
11341
|
* @internal
|
|
11034
11342
|
*/
|
|
11035
11343
|
_hasShadowRoot() {
|
|
11036
|
-
return this.
|
|
11344
|
+
return this._root !== this;
|
|
11037
11345
|
}
|
|
11038
11346
|
/**
|
|
11039
11347
|
* @internal
|
|
@@ -11080,10 +11388,6 @@ var VueElement = class extends VueElementBase {
|
|
|
11080
11388
|
if (this._instance && this._instance.ce) this._instance.ce = void 0;
|
|
11081
11389
|
this._app = this._instance = null;
|
|
11082
11390
|
}
|
|
11083
|
-
/**
|
|
11084
|
-
* Only called when shadowRoot is false
|
|
11085
|
-
*/
|
|
11086
|
-
_updateSlotNodes(replacements) {}
|
|
11087
11391
|
_createVNode() {
|
|
11088
11392
|
const baseProps = {};
|
|
11089
11393
|
if (!this.shadowRoot) baseProps.onVnodeMounted = baseProps.onVnodeUpdated = this._renderSlots.bind(this);
|
|
@@ -11099,8 +11403,10 @@ function useHost(caller) {
|
|
|
11099
11403
|
const { hasInstance, value } = useInstanceOption("ce", true);
|
|
11100
11404
|
const el = value;
|
|
11101
11405
|
if (el) return el;
|
|
11102
|
-
else if (!!(process.env.NODE_ENV !== "production"))
|
|
11103
|
-
|
|
11406
|
+
else if (!!(process.env.NODE_ENV !== "production")) {
|
|
11407
|
+
if (!hasInstance) warn(`${caller || "useHost"} called without an active component instance.`);
|
|
11408
|
+
else warn(`${caller || "useHost"} can only be used in components defined via defineCustomElement.`);
|
|
11409
|
+
}
|
|
11104
11410
|
return null;
|
|
11105
11411
|
}
|
|
11106
11412
|
/**
|
|
@@ -11150,7 +11456,7 @@ const decorate = (t) => {
|
|
|
11150
11456
|
};
|
|
11151
11457
|
const TransitionGroup = /* @__PURE__ */ decorate({
|
|
11152
11458
|
name: "TransitionGroup",
|
|
11153
|
-
props:
|
|
11459
|
+
props: /*@__PURE__*/ extend({}, TransitionPropsValidators, {
|
|
11154
11460
|
tag: String,
|
|
11155
11461
|
moveClass: String
|
|
11156
11462
|
}),
|
|
@@ -11282,13 +11588,22 @@ function onCompositionEnd(e) {
|
|
|
11282
11588
|
}
|
|
11283
11589
|
}
|
|
11284
11590
|
const assignKey = Symbol("_assign");
|
|
11591
|
+
const initialValueKey = Symbol("_initialValue");
|
|
11285
11592
|
const vModelText = {
|
|
11286
11593
|
created(el, { modifiers: { lazy, trim, number } }, vnode) {
|
|
11594
|
+
if (el.parentNode) {
|
|
11595
|
+
if (el.type === "text") el[initialValueKey] = el.defaultValue.replace(/[\r\n]/g, "");
|
|
11596
|
+
else if (el.type === "textarea") el[initialValueKey] = el.defaultValue.replace(/\r\n?/g, "\n");
|
|
11597
|
+
}
|
|
11287
11598
|
el[assignKey] = getModelAssigner(vnode);
|
|
11288
11599
|
vModelTextInit(el, trim, number || !!(vnode.props && vnode.props.type === "number"), lazy);
|
|
11289
11600
|
},
|
|
11290
|
-
mounted(el, { value }) {
|
|
11291
|
-
|
|
11601
|
+
mounted(el, { value, modifiers: { trim, number } }) {
|
|
11602
|
+
const newValue = value == null ? "" : value;
|
|
11603
|
+
const initialValue = el[initialValueKey];
|
|
11604
|
+
delete el[initialValueKey];
|
|
11605
|
+
if (initialValue !== void 0 && (el.type === "text" || el.type === "textarea") && el.value !== initialValue) el[assignKey](castValue(el.value, trim, number));
|
|
11606
|
+
else el.value = newValue;
|
|
11292
11607
|
},
|
|
11293
11608
|
beforeUpdate(el, { value, oldValue, modifiers: { lazy, trim, number } }, vnode) {
|
|
11294
11609
|
el[assignKey] = getModelAssigner(vnode);
|
|
@@ -11423,19 +11738,39 @@ const vModelSelectInit = (el, value, number, set) => {
|
|
|
11423
11738
|
el._modelValue = value;
|
|
11424
11739
|
addEventListener(el, "change", () => {
|
|
11425
11740
|
const selectedVal = Array.prototype.filter.call(el.options, (o) => o.selected).map((o) => number ? looseToNumber(getValue(o)) : getValue(o));
|
|
11426
|
-
|
|
11427
|
-
el.
|
|
11428
|
-
|
|
11429
|
-
|
|
11430
|
-
|
|
11741
|
+
const multiple = el.multiple;
|
|
11742
|
+
const assignedValue = multiple ? isSet(el._modelValue) ? new Set(selectedVal) : selectedVal : selectedVal[0];
|
|
11743
|
+
const pending = el._pendingValue = [multiple, multiple ? isArray(assignedValue) ? selectedVal.slice() : selectedVal : assignedValue];
|
|
11744
|
+
try {
|
|
11745
|
+
(set || el[assignKey])(assignedValue);
|
|
11746
|
+
} finally {
|
|
11747
|
+
nextTick(() => {
|
|
11748
|
+
if (el._pendingValue === pending) el._pendingValue = void 0;
|
|
11749
|
+
});
|
|
11750
|
+
}
|
|
11431
11751
|
});
|
|
11432
11752
|
};
|
|
11753
|
+
function isSameSelectValue(value, assignedValue, multiple) {
|
|
11754
|
+
if (!multiple) return looseEqual(value, assignedValue);
|
|
11755
|
+
if (isArray(value)) return looseEqual(value, assignedValue);
|
|
11756
|
+
if (isSet(value)) {
|
|
11757
|
+
if (value.size !== assignedValue.length) return false;
|
|
11758
|
+
for (const item of assignedValue) if (!value.has(item)) return false;
|
|
11759
|
+
return true;
|
|
11760
|
+
}
|
|
11761
|
+
return false;
|
|
11762
|
+
}
|
|
11433
11763
|
/**
|
|
11434
11764
|
* @internal
|
|
11435
11765
|
*/
|
|
11436
11766
|
const vModelSetSelected = (el, value) => {
|
|
11437
11767
|
el._modelValue = value;
|
|
11438
|
-
|
|
11768
|
+
const pending = el._pendingValue;
|
|
11769
|
+
el._pendingValue = void 0;
|
|
11770
|
+
if (pending && pending[0] === el.multiple && isSameSelectValue(value, pending[1], pending[0])) return;
|
|
11771
|
+
setSelected(el, value);
|
|
11772
|
+
};
|
|
11773
|
+
function setSelected(el, value) {
|
|
11439
11774
|
const isMultiple = el.multiple;
|
|
11440
11775
|
const isArrayValue = isArray(value);
|
|
11441
11776
|
if (isMultiple && !isArrayValue && !isSet(value)) {
|
|
@@ -11445,18 +11780,19 @@ const vModelSetSelected = (el, value) => {
|
|
|
11445
11780
|
for (let i = 0, l = el.options.length; i < l; i++) {
|
|
11446
11781
|
const option = el.options[i];
|
|
11447
11782
|
const optionValue = getValue(option);
|
|
11448
|
-
if (isMultiple)
|
|
11449
|
-
|
|
11450
|
-
|
|
11451
|
-
|
|
11452
|
-
|
|
11453
|
-
|
|
11783
|
+
if (isMultiple) {
|
|
11784
|
+
if (isArrayValue) {
|
|
11785
|
+
const optionType = typeof optionValue;
|
|
11786
|
+
if (optionType === "string" || optionType === "number") option.selected = value.some((v) => String(v) === String(optionValue));
|
|
11787
|
+
else option.selected = looseIndexOf(value, optionValue) > -1;
|
|
11788
|
+
} else option.selected = value.has(optionValue);
|
|
11789
|
+
} else if (looseEqual(getValue(option), value)) {
|
|
11454
11790
|
if (el.selectedIndex !== i) el.selectedIndex = i;
|
|
11455
11791
|
return;
|
|
11456
11792
|
}
|
|
11457
11793
|
}
|
|
11458
11794
|
if (!isMultiple && el.selectedIndex !== -1) el.selectedIndex = -1;
|
|
11459
|
-
}
|
|
11795
|
+
}
|
|
11460
11796
|
/**
|
|
11461
11797
|
* @internal retrieve raw value set via :value bindings
|
|
11462
11798
|
*/
|
|
@@ -11626,7 +11962,6 @@ var src_exports = /* @__PURE__ */ __exportAll({
|
|
|
11626
11962
|
baseEmit: () => baseEmit,
|
|
11627
11963
|
baseNormalizePropsOptions: () => baseNormalizePropsOptions,
|
|
11628
11964
|
baseResolveTransitionHooks: () => baseResolveTransitionHooks,
|
|
11629
|
-
baseUseCssVars: () => baseUseCssVars,
|
|
11630
11965
|
callPendingCbs: () => callPendingCbs,
|
|
11631
11966
|
callWithAsyncErrorHandling: () => callWithAsyncErrorHandling,
|
|
11632
11967
|
callWithErrorHandling: () => callWithErrorHandling,
|
|
@@ -11656,6 +11991,7 @@ var src_exports = /* @__PURE__ */ __exportAll({
|
|
|
11656
11991
|
currentInstance: () => currentInstance,
|
|
11657
11992
|
customRef: () => customRef,
|
|
11658
11993
|
deactivate: () => deactivate,
|
|
11994
|
+
defaultPropGetter: () => defaultPropGetter,
|
|
11659
11995
|
defineAsyncComponent: () => defineAsyncComponent,
|
|
11660
11996
|
defineComponent: () => defineComponent,
|
|
11661
11997
|
defineCustomElement: () => defineCustomElement,
|
|
@@ -11674,12 +12010,14 @@ var src_exports = /* @__PURE__ */ __exportAll({
|
|
|
11674
12010
|
ensureHydrationRenderer: () => ensureHydrationRenderer,
|
|
11675
12011
|
ensureRenderer: () => ensureRenderer,
|
|
11676
12012
|
ensureValidVNode: () => ensureValidVNode,
|
|
11677
|
-
ensureVaporSlotFallback: () => ensureVaporSlotFallback,
|
|
11678
12013
|
expose: () => expose,
|
|
12014
|
+
filterModelListeners: () => filterModelListeners,
|
|
12015
|
+
filterSingleRoot: () => filterSingleRoot,
|
|
11679
12016
|
flushOnAppMount: () => flushOnAppMount,
|
|
11680
12017
|
forceReflow: () => forceReflow,
|
|
11681
12018
|
getAttributeMismatch: () => getAttributeMismatch,
|
|
11682
12019
|
getComponentName: () => getComponentName,
|
|
12020
|
+
getContainerType: () => getContainerType,
|
|
11683
12021
|
getCurrentInstance: () => getCurrentInstance,
|
|
11684
12022
|
getCurrentScope: () => getCurrentScope,
|
|
11685
12023
|
getCurrentWatcher: () => getCurrentWatcher,
|
|
@@ -11703,9 +12041,13 @@ var src_exports = /* @__PURE__ */ __exportAll({
|
|
|
11703
12041
|
inject: () => inject,
|
|
11704
12042
|
invalidateMount: () => invalidateMount,
|
|
11705
12043
|
invokeDirectiveHook: () => invokeDirectiveHook,
|
|
12044
|
+
invokeSlotFallback: () => invokeSlotFallback,
|
|
12045
|
+
invokeVNodeHook: () => invokeVNodeHook,
|
|
11706
12046
|
isAsyncWrapper: () => isAsyncWrapper,
|
|
11707
12047
|
isEmitListener: () => isEmitListener,
|
|
12048
|
+
isFunctionalFallthroughKey: () => isFunctionalFallthroughKey,
|
|
11708
12049
|
isHydrating: () => isHydrating,
|
|
12050
|
+
isHydratingEnabled: () => isHydratingEnabled,
|
|
11709
12051
|
isKeepAlive: () => isKeepAlive,
|
|
11710
12052
|
isMapEqual: () => isMapEqual,
|
|
11711
12053
|
isMemoSame: () => isMemoSame,
|
|
@@ -11721,6 +12063,7 @@ var src_exports = /* @__PURE__ */ __exportAll({
|
|
|
11721
12063
|
isTeleportDisabled: () => isTeleportDisabled,
|
|
11722
12064
|
isTemplateNode: () => isTemplateNode,
|
|
11723
12065
|
isTemplateRefKey: () => isTemplateRefKey,
|
|
12066
|
+
isUnchangedResourceProp: () => isUnchangedResourceProp,
|
|
11724
12067
|
isVNode: () => isVNode,
|
|
11725
12068
|
isValidHtmlOrSvgAttribute: () => isValidHtmlOrSvgAttribute,
|
|
11726
12069
|
knownTemplateRefs: () => knownTemplateRefs,
|
|
@@ -11757,6 +12100,7 @@ var src_exports = /* @__PURE__ */ __exportAll({
|
|
|
11757
12100
|
onWatcherCleanup: () => onWatcherCleanup,
|
|
11758
12101
|
openBlock: () => openBlock,
|
|
11759
12102
|
parseEventName: () => parseEventName,
|
|
12103
|
+
patchClass: () => patchClass,
|
|
11760
12104
|
patchProp: () => patchProp,
|
|
11761
12105
|
patchStyle: () => patchStyle,
|
|
11762
12106
|
performAsyncHydrate: () => performAsyncHydrate,
|
|
@@ -11764,12 +12108,16 @@ var src_exports = /* @__PURE__ */ __exportAll({
|
|
|
11764
12108
|
performTransitionLeave: () => performTransitionLeave,
|
|
11765
12109
|
popScopeId: () => popScopeId,
|
|
11766
12110
|
popWarningContext: () => popWarningContext,
|
|
12111
|
+
prepareTransitionLeave: () => prepareTransitionLeave,
|
|
12112
|
+
prepareTransitionSwitch: () => prepareTransitionSwitch,
|
|
11767
12113
|
provide: () => provide,
|
|
11768
12114
|
proxyRefs: () => proxyRefs,
|
|
11769
12115
|
pushScopeId: () => pushScopeId,
|
|
11770
12116
|
pushWarningContext: () => pushWarningContext,
|
|
11771
12117
|
queueJob: () => queueJob,
|
|
11772
12118
|
queuePostFlushCb: () => queuePostFlushCb,
|
|
12119
|
+
queuePostRenderEffect: () => queuePostRenderEffect,
|
|
12120
|
+
rawVaporSlotKey: () => rawVaporSlotKey,
|
|
11773
12121
|
reactive: () => reactive,
|
|
11774
12122
|
readonly: () => readonly,
|
|
11775
12123
|
ref: () => ref,
|
|
@@ -11780,13 +12128,16 @@ var src_exports = /* @__PURE__ */ __exportAll({
|
|
|
11780
12128
|
renderSlot: () => renderSlot,
|
|
11781
12129
|
resetShapeFlag: () => resetShapeFlag,
|
|
11782
12130
|
resolveComponent: () => resolveComponent,
|
|
12131
|
+
resolveCssVars: () => resolveCssVars,
|
|
11783
12132
|
resolveDirective: () => resolveDirective,
|
|
11784
12133
|
resolveDynamicComponent: () => resolveDynamicComponent,
|
|
11785
12134
|
resolveFilter: () => resolveFilter,
|
|
11786
12135
|
resolvePropValue: () => resolvePropValue,
|
|
11787
12136
|
resolveTeleportTarget: () => resolveTarget,
|
|
12137
|
+
resolveTransitionChild: () => resolveTransitionChild,
|
|
11788
12138
|
resolveTransitionHooks: () => resolveTransitionHooks,
|
|
11789
12139
|
resolveTransitionProps: () => resolveTransitionProps,
|
|
12140
|
+
restoreCurrentInstance: () => restoreCurrentInstance,
|
|
11790
12141
|
setBlockTracking: () => setBlockTracking,
|
|
11791
12142
|
setCurrentInstance: () => setCurrentInstance,
|
|
11792
12143
|
setCurrentRenderingInstance: () => setCurrentRenderingInstance,
|
|
@@ -11869,7 +12220,7 @@ var src_exports = /* @__PURE__ */ __exportAll({
|
|
|
11869
12220
|
withScopeId: () => withScopeId,
|
|
11870
12221
|
xlinkNS: () => xlinkNS
|
|
11871
12222
|
});
|
|
11872
|
-
const rendererOptions =
|
|
12223
|
+
const rendererOptions = /*@__PURE__*/ extend({ patchProp }, nodeOps);
|
|
11873
12224
|
let renderer;
|
|
11874
12225
|
let enabledHydration = false;
|
|
11875
12226
|
function ensureRenderer() {
|
|
@@ -12430,13 +12781,14 @@ var Tokenizer = class {
|
|
|
12430
12781
|
}
|
|
12431
12782
|
}
|
|
12432
12783
|
stateInterpolationOpen(c) {
|
|
12433
|
-
if (c === this.delimiterOpen[this.delimiterIndex])
|
|
12434
|
-
|
|
12435
|
-
|
|
12436
|
-
|
|
12437
|
-
|
|
12438
|
-
|
|
12439
|
-
|
|
12784
|
+
if (c === this.delimiterOpen[this.delimiterIndex]) {
|
|
12785
|
+
if (this.delimiterIndex === this.delimiterOpen.length - 1) {
|
|
12786
|
+
const start = this.index + 1 - this.delimiterOpen.length;
|
|
12787
|
+
if (start > this.sectionStart) this.cbs.ontext(this.sectionStart, start);
|
|
12788
|
+
this.state = 3;
|
|
12789
|
+
this.sectionStart = start;
|
|
12790
|
+
} else this.delimiterIndex++;
|
|
12791
|
+
} else if (this.inRCDATA) {
|
|
12440
12792
|
this.state = 32;
|
|
12441
12793
|
this.stateInRCDATA(c);
|
|
12442
12794
|
} else {
|
|
@@ -12452,13 +12804,14 @@ var Tokenizer = class {
|
|
|
12452
12804
|
}
|
|
12453
12805
|
}
|
|
12454
12806
|
stateInterpolationClose(c) {
|
|
12455
|
-
if (c === this.delimiterClose[this.delimiterIndex])
|
|
12456
|
-
|
|
12457
|
-
|
|
12458
|
-
|
|
12459
|
-
|
|
12460
|
-
|
|
12461
|
-
|
|
12807
|
+
if (c === this.delimiterClose[this.delimiterIndex]) {
|
|
12808
|
+
if (this.delimiterIndex === this.delimiterClose.length - 1) {
|
|
12809
|
+
this.cbs.oninterpolation(this.sectionStart, this.index + 1);
|
|
12810
|
+
if (this.inRCDATA) this.state = 32;
|
|
12811
|
+
else this.state = 1;
|
|
12812
|
+
this.sectionStart = this.index + 1;
|
|
12813
|
+
} else this.delimiterIndex++;
|
|
12814
|
+
} else {
|
|
12462
12815
|
this.state = 3;
|
|
12463
12816
|
this.stateInterpolation(c);
|
|
12464
12817
|
}
|
|
@@ -12573,9 +12926,10 @@ var Tokenizer = class {
|
|
|
12573
12926
|
this.sectionStart = this.index;
|
|
12574
12927
|
if (this.mode === 0) this.state = 6;
|
|
12575
12928
|
else if (this.inSFCRoot) this.state = 34;
|
|
12576
|
-
else if (!this.inXML)
|
|
12577
|
-
|
|
12578
|
-
|
|
12929
|
+
else if (!this.inXML) {
|
|
12930
|
+
if (c === 116) this.state = 30;
|
|
12931
|
+
else this.state = c === 115 ? 29 : 6;
|
|
12932
|
+
} else this.state = 6;
|
|
12579
12933
|
} else if (c === 47) this.state = 8;
|
|
12580
12934
|
else {
|
|
12581
12935
|
this.state = 1;
|
|
@@ -12928,9 +13282,7 @@ var Tokenizer = class {
|
|
|
12928
13282
|
case 24:
|
|
12929
13283
|
this.stateInProcessingInstruction(c);
|
|
12930
13284
|
break;
|
|
12931
|
-
case 33:
|
|
12932
|
-
this.stateInEntity();
|
|
12933
|
-
break;
|
|
13285
|
+
case 33: this.stateInEntity();
|
|
12934
13286
|
}
|
|
12935
13287
|
this.index++;
|
|
12936
13288
|
}
|
|
@@ -12959,9 +13311,10 @@ var Tokenizer = class {
|
|
|
12959
13311
|
handleTrailingData() {
|
|
12960
13312
|
const endIndex = this.buffer.length;
|
|
12961
13313
|
if (this.sectionStart >= endIndex) return;
|
|
12962
|
-
if (this.state === 28)
|
|
12963
|
-
|
|
12964
|
-
|
|
13314
|
+
if (this.state === 28) {
|
|
13315
|
+
if (this.currentSequence === Sequences.CdataEnd) this.cbs.oncdata(this.sectionStart, endIndex);
|
|
13316
|
+
else this.cbs.oncomment(this.sectionStart, endIndex);
|
|
13317
|
+
} else if (this.state === 6 || this.state === 11 || this.state === 18 || this.state === 17 || this.state === 12 || this.state === 13 || this.state === 14 || this.state === 15 || this.state === 16 || this.state === 20 || this.state === 19 || this.state === 21 || this.state === 9) {} else this.cbs.ontext(this.sectionStart, endIndex);
|
|
12965
13318
|
}
|
|
12966
13319
|
emitCodePoint(cp, consumed) {}
|
|
12967
13320
|
};
|
|
@@ -13163,12 +13516,10 @@ const isMemberExpressionBrowser = (exp) => {
|
|
|
13163
13516
|
if (!--currentOpenParensCount) state = stateStack.pop();
|
|
13164
13517
|
}
|
|
13165
13518
|
break;
|
|
13166
|
-
case 3:
|
|
13167
|
-
|
|
13168
|
-
|
|
13169
|
-
|
|
13170
|
-
}
|
|
13171
|
-
break;
|
|
13519
|
+
case 3: if (char === currentStringType) {
|
|
13520
|
+
state = stateStack.pop();
|
|
13521
|
+
currentStringType = null;
|
|
13522
|
+
}
|
|
13172
13523
|
}
|
|
13173
13524
|
}
|
|
13174
13525
|
return !currentOpenBracketCount && !currentOpenParensCount;
|
|
@@ -13218,7 +13569,7 @@ function isTemplateNode$1(node) {
|
|
|
13218
13569
|
function isSlotOutlet(node) {
|
|
13219
13570
|
return node.type === 1 && node.tagType === 2;
|
|
13220
13571
|
}
|
|
13221
|
-
const propsHelperSet = new Set([NORMALIZE_PROPS, GUARD_REACTIVE_PROPS]);
|
|
13572
|
+
const propsHelperSet = /* @__PURE__ */ new Set([NORMALIZE_PROPS, GUARD_REACTIVE_PROPS]);
|
|
13222
13573
|
function getUnnormalizedProps(props, callPath = []) {
|
|
13223
13574
|
if (props && !isString(props) && props.type === 14) {
|
|
13224
13575
|
const callee = props.callee;
|
|
@@ -13261,9 +13612,10 @@ function injectProp(node, prop, context) {
|
|
|
13261
13612
|
propsWithInjection = createCallExpression(context.helper(MERGE_PROPS), [createObjectExpression([prop]), props]);
|
|
13262
13613
|
if (parentCall && parentCall.callee === GUARD_REACTIVE_PROPS) parentCall = callPath[callPath.length - 2];
|
|
13263
13614
|
}
|
|
13264
|
-
if (node.type === 13)
|
|
13265
|
-
|
|
13266
|
-
|
|
13615
|
+
if (node.type === 13) {
|
|
13616
|
+
if (parentCall) parentCall.arguments[0] = propsWithInjection;
|
|
13617
|
+
else node.props = propsWithInjection;
|
|
13618
|
+
} else if (parentCall) parentCall.arguments[0] = propsWithInjection;
|
|
13267
13619
|
else node.arguments[2] = propsWithInjection;
|
|
13268
13620
|
}
|
|
13269
13621
|
function injectSlotKey(node, prop) {
|
|
@@ -13538,10 +13890,7 @@ const tokenizer = new Tokenizer(stack, {
|
|
|
13538
13890
|
case 18:
|
|
13539
13891
|
case 19:
|
|
13540
13892
|
case 20:
|
|
13541
|
-
case 21:
|
|
13542
|
-
emitError(9, end);
|
|
13543
|
-
break;
|
|
13544
|
-
default: break;
|
|
13893
|
+
case 21: emitError(9, end);
|
|
13545
13894
|
}
|
|
13546
13895
|
for (let index = 0; index < stack.length; index++) {
|
|
13547
13896
|
onCloseTag(stack[index], end - 1);
|
|
@@ -13691,7 +14040,7 @@ function backTrack(index, c) {
|
|
|
13691
14040
|
while (currentInput.charCodeAt(i) !== c && i >= 0) i--;
|
|
13692
14041
|
return i;
|
|
13693
14042
|
}
|
|
13694
|
-
const specialTemplateDir = new Set([
|
|
14043
|
+
const specialTemplateDir = /* @__PURE__ */ new Set([
|
|
13695
14044
|
"if",
|
|
13696
14045
|
"else",
|
|
13697
14046
|
"else-if",
|
|
@@ -13727,16 +14076,18 @@ function condenseWhitespace(nodes) {
|
|
|
13727
14076
|
let removedWhitespace = false;
|
|
13728
14077
|
for (let i = 0; i < nodes.length; i++) {
|
|
13729
14078
|
const node = nodes[i];
|
|
13730
|
-
if (node.type === 2)
|
|
13731
|
-
if (
|
|
13732
|
-
|
|
13733
|
-
|
|
13734
|
-
|
|
13735
|
-
|
|
13736
|
-
|
|
13737
|
-
|
|
13738
|
-
|
|
13739
|
-
|
|
14079
|
+
if (node.type === 2) {
|
|
14080
|
+
if (!inPre) {
|
|
14081
|
+
if (isAllWhitespace(node.content)) {
|
|
14082
|
+
const prev = nodes[i - 1] && nodes[i - 1].type;
|
|
14083
|
+
const next = nodes[i + 1] && nodes[i + 1].type;
|
|
14084
|
+
if (!prev || !next || shouldCondense && (prev === 3 && (next === 3 || next === 1) || prev === 1 && (next === 3 || next === 1 && hasNewlineChar(node.content)))) {
|
|
14085
|
+
removedWhitespace = true;
|
|
14086
|
+
nodes[i] = null;
|
|
14087
|
+
} else node.content = " ";
|
|
14088
|
+
} else if (shouldCondense) node.content = condense(node.content);
|
|
14089
|
+
} else node.content = node.content.replace(windowsNewlineRE, "\n");
|
|
14090
|
+
}
|
|
13740
14091
|
}
|
|
13741
14092
|
return removedWhitespace ? nodes.filter(Boolean) : nodes;
|
|
13742
14093
|
}
|
|
@@ -14001,7 +14352,7 @@ function getConstantType(node, context) {
|
|
|
14001
14352
|
return 0;
|
|
14002
14353
|
}
|
|
14003
14354
|
}
|
|
14004
|
-
const allowHoistedHelperSet = new Set([
|
|
14355
|
+
const allowHoistedHelperSet = /* @__PURE__ */ new Set([
|
|
14005
14356
|
NORMALIZE_CLASS,
|
|
14006
14357
|
NORMALIZE_STYLE,
|
|
14007
14358
|
NORMALIZE_PROPS,
|
|
@@ -14045,7 +14396,7 @@ function getSelfName(filename) {
|
|
|
14045
14396
|
const nameMatch = filename.replace(/\?.*$/, "").match(/([^/\\]+)\.\w+$/);
|
|
14046
14397
|
return nameMatch ? capitalize(camelize(nameMatch[1])) : null;
|
|
14047
14398
|
}
|
|
14048
|
-
function createTransformContext(root, { filename = "", prefixIdentifiers = false, hoistStatic = false, hmr = false, cacheHandlers = false, nodeTransforms = [], directiveTransforms = {}, transformHoist = null, isBuiltInComponent = NOOP, isCustomElement = NOOP, expressionPlugins = [], scopeId = null, slotted = true, ssr = false, inSSR = false, ssrCssVars = ``, bindingMetadata = EMPTY_OBJ, inline = false, isTS = false,
|
|
14399
|
+
function createTransformContext(root, { filename = "", prefixIdentifiers = false, hoistStatic = false, hmr = false, cacheHandlers = false, nodeTransforms = [], directiveTransforms = {}, transformHoist = null, isBuiltInComponent = NOOP, isCustomElement = NOOP, expressionPlugins = [], scopeId = null, slotted = true, ssr = false, inSSR = false, ssrCssVars = ``, bindingMetadata = EMPTY_OBJ, inline = false, isTS = false, onError = defaultOnError, onWarn = defaultOnWarn, compatConfig }) {
|
|
14049
14400
|
const context = {
|
|
14050
14401
|
filename,
|
|
14051
14402
|
selfName: getSelfName(filename),
|
|
@@ -14067,7 +14418,6 @@ function createTransformContext(root, { filename = "", prefixIdentifiers = false
|
|
|
14067
14418
|
bindingMetadata,
|
|
14068
14419
|
inline,
|
|
14069
14420
|
isTS,
|
|
14070
|
-
eventDelegation,
|
|
14071
14421
|
onError,
|
|
14072
14422
|
onWarn,
|
|
14073
14423
|
compatConfig,
|
|
@@ -14163,7 +14513,7 @@ function transform(root, options) {
|
|
|
14163
14513
|
traverseNode(root, context);
|
|
14164
14514
|
if (options.hoistStatic) cacheStatic(root, context);
|
|
14165
14515
|
if (!options.ssr) createRootCodegen(root, context);
|
|
14166
|
-
root.helpers = new Set([...context.helpers.keys()]);
|
|
14516
|
+
root.helpers = /* @__PURE__ */ new Set([...context.helpers.keys()]);
|
|
14167
14517
|
root.components = [...context.components];
|
|
14168
14518
|
root.directives = [...context.directives];
|
|
14169
14519
|
root.imports = context.imports;
|
|
@@ -14210,8 +14560,10 @@ function traverseNode(node, context) {
|
|
|
14210
14560
|
const exitFns = [];
|
|
14211
14561
|
for (let i = 0; i < nodeTransforms.length; i++) {
|
|
14212
14562
|
const onExit = nodeTransforms[i](node, context);
|
|
14213
|
-
if (onExit)
|
|
14214
|
-
|
|
14563
|
+
if (onExit) {
|
|
14564
|
+
if (isArray(onExit)) exitFns.push(...onExit);
|
|
14565
|
+
else exitFns.push(onExit);
|
|
14566
|
+
}
|
|
14215
14567
|
if (!context.currentNode) return;
|
|
14216
14568
|
else node = context.currentNode;
|
|
14217
14569
|
}
|
|
@@ -14228,9 +14580,7 @@ function traverseNode(node, context) {
|
|
|
14228
14580
|
case 10:
|
|
14229
14581
|
case 11:
|
|
14230
14582
|
case 1:
|
|
14231
|
-
case 0:
|
|
14232
|
-
traverseChildren(node, context);
|
|
14233
|
-
break;
|
|
14583
|
+
case 0: traverseChildren(node, context);
|
|
14234
14584
|
}
|
|
14235
14585
|
context.currentNode = node;
|
|
14236
14586
|
let i = exitFns.length;
|
|
@@ -14426,10 +14776,12 @@ function genNodeList(nodes, context, multilines = false, comma = true) {
|
|
|
14426
14776
|
if (isString(node)) push(node, -3);
|
|
14427
14777
|
else if (isArray(node)) genNodeListAsArray(node, context);
|
|
14428
14778
|
else genNode(node, context);
|
|
14429
|
-
if (i < nodes.length - 1)
|
|
14430
|
-
|
|
14431
|
-
|
|
14432
|
-
|
|
14779
|
+
if (i < nodes.length - 1) {
|
|
14780
|
+
if (multilines) {
|
|
14781
|
+
comma && push(",");
|
|
14782
|
+
newline();
|
|
14783
|
+
} else comma && push(", ");
|
|
14784
|
+
}
|
|
14433
14785
|
}
|
|
14434
14786
|
}
|
|
14435
14787
|
function genNode(node, context) {
|
|
@@ -14542,9 +14894,12 @@ function genVNodeCall(node, context) {
|
|
|
14542
14894
|
const { push, helper, pure } = context;
|
|
14543
14895
|
const { tag, props, children, patchFlag, dynamicProps, directives, isBlock, disableTracking, isComponent } = node;
|
|
14544
14896
|
let patchFlagString;
|
|
14545
|
-
if (patchFlag)
|
|
14546
|
-
|
|
14547
|
-
|
|
14897
|
+
if (patchFlag) {
|
|
14898
|
+
if (!!(process.env.NODE_ENV !== "production")) {
|
|
14899
|
+
if (patchFlag < 0) patchFlagString = patchFlag + ` /* ${PatchFlagNames[patchFlag]} */`;
|
|
14900
|
+
else patchFlagString = patchFlag + ` /* ${Object.keys(PatchFlagNames).map(Number).filter((n) => n > 0 && patchFlag & n).map((n) => PatchFlagNames[n]).join(`, `)} */`;
|
|
14901
|
+
} else patchFlagString = String(patchFlag);
|
|
14902
|
+
}
|
|
14548
14903
|
if (directives) push(helper(WITH_DIRECTIVES) + `(`);
|
|
14549
14904
|
if (isBlock) push(`(${helper(OPEN_BLOCK)}(${disableTracking ? `true` : ``}), `);
|
|
14550
14905
|
if (pure) push(PURE_ANNOTATION);
|
|
@@ -14813,16 +15168,17 @@ function createChildrenCodegenNode(branch, keyIndex, context) {
|
|
|
14813
15168
|
const keyProperty = createObjectProperty(`key`, createSimpleExpression(`${keyIndex}`, false, locStub, 2));
|
|
14814
15169
|
const { children } = branch;
|
|
14815
15170
|
const firstChild = children[0];
|
|
14816
|
-
if (children.length !== 1 || firstChild.type !== 1)
|
|
14817
|
-
|
|
14818
|
-
|
|
14819
|
-
|
|
15171
|
+
if (children.length !== 1 || firstChild.type !== 1) {
|
|
15172
|
+
if (children.length === 1 && firstChild.type === 11) {
|
|
15173
|
+
const vnodeCall = firstChild.codegenNode;
|
|
15174
|
+
injectProp(vnodeCall, keyProperty, context);
|
|
15175
|
+
return vnodeCall;
|
|
15176
|
+
} else {
|
|
15177
|
+
let patchFlag = 64;
|
|
15178
|
+
if (!!(process.env.NODE_ENV !== "production") && !branch.isTemplateIf && children.filter((c) => c.type !== 3).length === 1) patchFlag |= 2048;
|
|
15179
|
+
return createVNodeCall(context, helper(FRAGMENT), createObjectExpression([keyProperty]), children, patchFlag, void 0, void 0, true, false, false, branch.loc);
|
|
15180
|
+
}
|
|
14820
15181
|
} else {
|
|
14821
|
-
let patchFlag = 64;
|
|
14822
|
-
if (!!(process.env.NODE_ENV !== "production") && !branch.isTemplateIf && children.filter((c) => c.type !== 3).length === 1) patchFlag |= 2048;
|
|
14823
|
-
return createVNodeCall(context, helper(FRAGMENT), createObjectExpression([keyProperty]), children, patchFlag, void 0, void 0, true, false, false, branch.loc);
|
|
14824
|
-
}
|
|
14825
|
-
else {
|
|
14826
15182
|
const ret = firstChild.codegenNode;
|
|
14827
15183
|
const vnodeCall = getMemoedVNodeCall(ret);
|
|
14828
15184
|
if (vnodeCall.type === 13) convertToBlock(vnodeCall, context);
|
|
@@ -14843,9 +15199,10 @@ function isSameKey(a, b) {
|
|
|
14843
15199
|
return true;
|
|
14844
15200
|
}
|
|
14845
15201
|
function getParentCondition(node) {
|
|
14846
|
-
while (true) if (node.type === 19)
|
|
14847
|
-
|
|
14848
|
-
|
|
15202
|
+
while (true) if (node.type === 19) {
|
|
15203
|
+
if (node.alternate.type === 19) node = node.alternate;
|
|
15204
|
+
else return node;
|
|
15205
|
+
} else if (node.type === 20) node = node.value;
|
|
14849
15206
|
}
|
|
14850
15207
|
//#endregion
|
|
14851
15208
|
//#region packages/compiler-core/src/transforms/vFor.ts
|
|
@@ -14883,15 +15240,24 @@ const transformFor = createStructuralDirectiveTransform("for", (node, dir, conte
|
|
|
14883
15240
|
else {
|
|
14884
15241
|
childBlock = children[0].codegenNode;
|
|
14885
15242
|
if (isTemplate && keyProperty) injectProp(childBlock, keyProperty, context);
|
|
14886
|
-
|
|
14887
|
-
|
|
14888
|
-
|
|
14889
|
-
|
|
14890
|
-
|
|
15243
|
+
const shouldUseBlock = !isStableFragment || childBlock.isBlockRequired === true;
|
|
15244
|
+
if (childBlock.isBlock !== shouldUseBlock) {
|
|
15245
|
+
if (childBlock.isBlock) {
|
|
15246
|
+
removeHelper(OPEN_BLOCK);
|
|
15247
|
+
removeHelper(getVNodeBlockHelper(context.inSSR, childBlock.isComponent));
|
|
15248
|
+
} else removeHelper(getVNodeHelper(context.inSSR, childBlock.isComponent));
|
|
15249
|
+
}
|
|
15250
|
+
childBlock.isBlock = shouldUseBlock;
|
|
14891
15251
|
if (childBlock.isBlock) {
|
|
14892
15252
|
helper(OPEN_BLOCK);
|
|
14893
15253
|
helper(getVNodeBlockHelper(context.inSSR, childBlock.isComponent));
|
|
14894
|
-
} else
|
|
15254
|
+
} else {
|
|
15255
|
+
helper(getVNodeHelper(context.inSSR, childBlock.isComponent));
|
|
15256
|
+
if (childBlock.needsPatch) {
|
|
15257
|
+
var _childBlock$patchFlag;
|
|
15258
|
+
childBlock.patchFlag = ((_childBlock$patchFlag = childBlock.patchFlag) !== null && _childBlock$patchFlag !== void 0 ? _childBlock$patchFlag : 0) | 512;
|
|
15259
|
+
}
|
|
15260
|
+
}
|
|
14895
15261
|
}
|
|
14896
15262
|
if (memo) {
|
|
14897
15263
|
const loop = createFunctionExpression(createForLoopParams(forNode.parseResult, [createSimpleExpression(`_cached`)]));
|
|
@@ -15065,8 +15431,10 @@ function buildSlots(node, context, buildSlotFn = buildClientSlotFn) {
|
|
|
15065
15431
|
return createObjectProperty(`default`, fn);
|
|
15066
15432
|
};
|
|
15067
15433
|
if (!hasTemplateSlots) slotsProperties.push(buildDefaultSlotProperty(void 0, children));
|
|
15068
|
-
else if (implicitDefaultChildren.length && !implicitDefaultChildren.every(isWhitespaceText))
|
|
15069
|
-
|
|
15434
|
+
else if (implicitDefaultChildren.length && !implicitDefaultChildren.every(isWhitespaceText)) {
|
|
15435
|
+
if (hasNamedDefaultSlot) context.onError(createCompilerError(39, implicitDefaultChildren[0].loc));
|
|
15436
|
+
else slotsProperties.push(buildDefaultSlotProperty(void 0, implicitDefaultChildren));
|
|
15437
|
+
}
|
|
15070
15438
|
}
|
|
15071
15439
|
const slotFlag = hasDynamicSlots ? 2 : hasForwardedSlots(node.children) ? 3 : 1;
|
|
15072
15440
|
let slots = createObjectExpression(slotsProperties.concat(createObjectProperty(`_`, createSimpleExpression(slotFlag + (!!(process.env.NODE_ENV !== "production") ? ` /* ${slotFlagsText[slotFlag]} */` : ``), false))), loc);
|
|
@@ -15092,10 +15460,7 @@ function hasForwardedSlots(children) {
|
|
|
15092
15460
|
if (hasForwardedSlots(child.branches)) return true;
|
|
15093
15461
|
break;
|
|
15094
15462
|
case 10:
|
|
15095
|
-
case 11:
|
|
15096
|
-
if (hasForwardedSlots(child.children)) return true;
|
|
15097
|
-
break;
|
|
15098
|
-
default: break;
|
|
15463
|
+
case 11: if (hasForwardedSlots(child.children)) return true;
|
|
15099
15464
|
}
|
|
15100
15465
|
}
|
|
15101
15466
|
return false;
|
|
@@ -15117,12 +15482,16 @@ const transformElement = (node, context) => {
|
|
|
15117
15482
|
let vnodeDynamicProps;
|
|
15118
15483
|
let dynamicPropNames;
|
|
15119
15484
|
let vnodeDirectives;
|
|
15485
|
+
let needsPatch = false;
|
|
15486
|
+
let isBlockRequired = false;
|
|
15120
15487
|
let shouldUseBlock = isDynamicComponent || vnodeTag === TELEPORT || vnodeTag === SUSPENSE || !isComponent && (tag === "svg" || tag === "foreignObject" || tag === "math");
|
|
15121
15488
|
if (props.length > 0) {
|
|
15122
15489
|
const propsBuildResult = buildProps(node, context, void 0, isComponent, isDynamicComponent);
|
|
15123
15490
|
vnodeProps = propsBuildResult.props;
|
|
15124
15491
|
patchFlag = propsBuildResult.patchFlag;
|
|
15125
15492
|
dynamicPropNames = propsBuildResult.dynamicPropNames;
|
|
15493
|
+
needsPatch = propsBuildResult.needsPatch;
|
|
15494
|
+
isBlockRequired = propsBuildResult.isBlockRequired;
|
|
15126
15495
|
const directives = propsBuildResult.directives;
|
|
15127
15496
|
vnodeDirectives = directives && directives.length ? createArrayExpression(directives.map((dir) => buildDirectiveArgs(dir, context))) : void 0;
|
|
15128
15497
|
if (propsBuildResult.shouldUseBlock) shouldUseBlock = true;
|
|
@@ -15151,7 +15520,10 @@ const transformElement = (node, context) => {
|
|
|
15151
15520
|
} else vnodeChildren = node.children;
|
|
15152
15521
|
}
|
|
15153
15522
|
if (dynamicPropNames && dynamicPropNames.length) vnodeDynamicProps = stringifyDynamicPropNames(dynamicPropNames);
|
|
15154
|
-
node.codegenNode = createVNodeCall(context, vnodeTag, vnodeProps, vnodeChildren, patchFlag === 0 ? void 0 : patchFlag, vnodeDynamicProps, vnodeDirectives, !!shouldUseBlock, false, isComponent, node.loc);
|
|
15523
|
+
const vnodeCall = node.codegenNode = createVNodeCall(context, vnodeTag, vnodeProps, vnodeChildren, patchFlag === 0 ? void 0 : patchFlag, vnodeDynamicProps, vnodeDirectives, !!shouldUseBlock, false, isComponent, node.loc);
|
|
15524
|
+
needsPatch = needsPatch && (patchFlag === 0 || patchFlag === 32);
|
|
15525
|
+
if (needsPatch) vnodeCall.needsPatch = true;
|
|
15526
|
+
if (isBlockRequired) vnodeCall.isBlockRequired = true;
|
|
15155
15527
|
};
|
|
15156
15528
|
};
|
|
15157
15529
|
function resolveComponentType(node, context, ssr = false) {
|
|
@@ -15185,6 +15557,7 @@ function buildProps(node, context, props = node.props, isComponent, isDynamicCom
|
|
|
15185
15557
|
const runtimeDirectives = [];
|
|
15186
15558
|
const hasChildren = children.length > 0;
|
|
15187
15559
|
let shouldUseBlock = false;
|
|
15560
|
+
let isBlockRequired = false;
|
|
15188
15561
|
let patchFlag = 0;
|
|
15189
15562
|
let hasRef = false;
|
|
15190
15563
|
let hasClassBinding = false;
|
|
@@ -15209,12 +15582,12 @@ function buildProps(node, context, props = node.props, isComponent, isDynamicCom
|
|
|
15209
15582
|
const isEventHandler = isOn(name);
|
|
15210
15583
|
if (isEventHandler && (!isComponent || isDynamicComponent) && name.toLowerCase() !== "onclick" && name !== "onUpdate:modelValue" && !isReservedProp(name)) hasHydrationEventBinding = true;
|
|
15211
15584
|
if (isEventHandler && isReservedProp(name)) hasVnodeHook = true;
|
|
15585
|
+
if (name === "ref") hasRef = true;
|
|
15212
15586
|
if (isEventHandler && value.type === 14) value = value.arguments[0];
|
|
15213
15587
|
if (value.type === 20 || (value.type === 4 || value.type === 8) && getConstantType(value, context) > 0) return;
|
|
15214
|
-
if (name === "
|
|
15215
|
-
else if (name === "class") hasClassBinding = true;
|
|
15588
|
+
if (name === "class") hasClassBinding = true;
|
|
15216
15589
|
else if (name === "style") hasStyleBinding = true;
|
|
15217
|
-
else if (name !== "key" && !dynamicPropNames.includes(name)) dynamicPropNames.push(name);
|
|
15590
|
+
else if (name !== "ref" && name !== "key" && !dynamicPropNames.includes(name)) dynamicPropNames.push(name);
|
|
15218
15591
|
if (isComponent && (name === "class" || name === "style") && !dynamicPropNames.includes(name)) dynamicPropNames.push(name);
|
|
15219
15592
|
} else hasDynamicKeys = true;
|
|
15220
15593
|
};
|
|
@@ -15240,35 +15613,40 @@ function buildProps(node, context, props = node.props, isComponent, isDynamicCom
|
|
|
15240
15613
|
if (name === "once" || name === "memo") continue;
|
|
15241
15614
|
if (name === "is" || isVBind && isStaticArgOf(arg, "is") && (isComponentTag(tag) || isCompatEnabled("COMPILER_IS_ON_ELEMENT", context))) continue;
|
|
15242
15615
|
if (isVOn && ssr) continue;
|
|
15243
|
-
if (isVBind && isStaticArgOf(arg, "key")
|
|
15616
|
+
if (isVBind && isStaticArgOf(arg, "key")) shouldUseBlock = true;
|
|
15617
|
+
if (isVOn && hasChildren && arg && isStaticExp(arg) && camelize(arg.content) === "vue:beforeUpdate") {
|
|
15618
|
+
shouldUseBlock = true;
|
|
15619
|
+
isBlockRequired = true;
|
|
15620
|
+
}
|
|
15244
15621
|
if (isVBind && isStaticArgOf(arg, "ref")) pushRefVForMarker();
|
|
15245
15622
|
if (!arg && (isVBind || isVOn)) {
|
|
15246
15623
|
hasDynamicKeys = true;
|
|
15247
|
-
if (exp)
|
|
15248
|
-
|
|
15249
|
-
|
|
15250
|
-
if (
|
|
15251
|
-
if (
|
|
15252
|
-
if (
|
|
15253
|
-
|
|
15254
|
-
|
|
15255
|
-
|
|
15256
|
-
|
|
15257
|
-
|
|
15258
|
-
|
|
15259
|
-
|
|
15260
|
-
|
|
15261
|
-
|
|
15262
|
-
|
|
15263
|
-
|
|
15264
|
-
|
|
15265
|
-
|
|
15266
|
-
|
|
15267
|
-
|
|
15268
|
-
|
|
15269
|
-
|
|
15270
|
-
|
|
15271
|
-
|
|
15624
|
+
if (exp) {
|
|
15625
|
+
if (isVBind) {
|
|
15626
|
+
pushMergeArg();
|
|
15627
|
+
if (!!(process.env.NODE_ENV !== "production")) {
|
|
15628
|
+
if (mergeArgs.some((arg) => {
|
|
15629
|
+
if (arg.type === 15) return arg.properties.some(({ key }) => {
|
|
15630
|
+
if (key.type !== 4 || !key.isStatic) return true;
|
|
15631
|
+
return key.content !== "class" && key.content !== "style" && !isOn(key.content);
|
|
15632
|
+
});
|
|
15633
|
+
else return true;
|
|
15634
|
+
})) checkCompatEnabled("COMPILER_V_BIND_OBJECT_ORDER", context, loc);
|
|
15635
|
+
}
|
|
15636
|
+
if (isCompatEnabled("COMPILER_V_BIND_OBJECT_ORDER", context)) {
|
|
15637
|
+
mergeArgs.unshift(exp);
|
|
15638
|
+
continue;
|
|
15639
|
+
}
|
|
15640
|
+
pushRefVForMarker();
|
|
15641
|
+
pushMergeArg();
|
|
15642
|
+
mergeArgs.push(exp);
|
|
15643
|
+
} else pushMergeArg({
|
|
15644
|
+
type: 14,
|
|
15645
|
+
loc,
|
|
15646
|
+
callee: context.helper(TO_HANDLERS),
|
|
15647
|
+
arguments: isComponent ? [exp] : [exp, `true`]
|
|
15648
|
+
});
|
|
15649
|
+
} else context.onError(createCompilerError(isVBind ? 34 : 35, loc));
|
|
15272
15650
|
continue;
|
|
15273
15651
|
}
|
|
15274
15652
|
if (isVBind && modifiers.some((mod) => mod.content === "prop")) patchFlag |= 32;
|
|
@@ -15284,7 +15662,10 @@ function buildProps(node, context, props = node.props, isComponent, isDynamicCom
|
|
|
15284
15662
|
}
|
|
15285
15663
|
} else if (!isBuiltInDirective(name)) {
|
|
15286
15664
|
runtimeDirectives.push(prop);
|
|
15287
|
-
if (hasChildren)
|
|
15665
|
+
if (hasChildren) {
|
|
15666
|
+
shouldUseBlock = true;
|
|
15667
|
+
isBlockRequired = true;
|
|
15668
|
+
}
|
|
15288
15669
|
}
|
|
15289
15670
|
}
|
|
15290
15671
|
}
|
|
@@ -15301,7 +15682,8 @@ function buildProps(node, context, props = node.props, isComponent, isDynamicCom
|
|
|
15301
15682
|
if (dynamicPropNames.length) patchFlag |= 8;
|
|
15302
15683
|
if (hasHydrationEventBinding) patchFlag |= 32;
|
|
15303
15684
|
}
|
|
15304
|
-
|
|
15685
|
+
const needsPatch = (patchFlag === 0 || patchFlag === 32) && (hasRef || hasVnodeHook || runtimeDirectives.length > 0);
|
|
15686
|
+
if (!shouldUseBlock && needsPatch) patchFlag |= 512;
|
|
15305
15687
|
if (!context.inSSR && propsExpression) switch (propsExpression.type) {
|
|
15306
15688
|
case 15:
|
|
15307
15689
|
let classKeyIndex = -1;
|
|
@@ -15322,16 +15704,16 @@ function buildProps(node, context, props = node.props, isComponent, isDynamicCom
|
|
|
15322
15704
|
} else propsExpression = createCallExpression(context.helper(NORMALIZE_PROPS), [propsExpression]);
|
|
15323
15705
|
break;
|
|
15324
15706
|
case 14: break;
|
|
15325
|
-
default:
|
|
15326
|
-
propsExpression = createCallExpression(context.helper(NORMALIZE_PROPS), [createCallExpression(context.helper(GUARD_REACTIVE_PROPS), [propsExpression])]);
|
|
15327
|
-
break;
|
|
15707
|
+
default: propsExpression = createCallExpression(context.helper(NORMALIZE_PROPS), [createCallExpression(context.helper(GUARD_REACTIVE_PROPS), [propsExpression])]);
|
|
15328
15708
|
}
|
|
15329
15709
|
return {
|
|
15330
15710
|
props: propsExpression,
|
|
15331
15711
|
directives: runtimeDirectives,
|
|
15332
15712
|
patchFlag,
|
|
15333
15713
|
dynamicPropNames,
|
|
15334
|
-
shouldUseBlock
|
|
15714
|
+
shouldUseBlock,
|
|
15715
|
+
needsPatch,
|
|
15716
|
+
isBlockRequired
|
|
15335
15717
|
};
|
|
15336
15718
|
}
|
|
15337
15719
|
function dedupeProperties(properties) {
|
|
@@ -15428,10 +15810,12 @@ function processSlotOutlet(node, context) {
|
|
|
15428
15810
|
for (let i = 0; i < node.props.length; i++) {
|
|
15429
15811
|
const p = node.props[i];
|
|
15430
15812
|
if (p.type === 6) {
|
|
15431
|
-
if (p.value)
|
|
15432
|
-
|
|
15433
|
-
|
|
15434
|
-
|
|
15813
|
+
if (p.value) {
|
|
15814
|
+
if (p.name === "name") slotName = JSON.stringify(p.value.content);
|
|
15815
|
+
else {
|
|
15816
|
+
p.name = camelize(p.name);
|
|
15817
|
+
nonNameProps.push(p);
|
|
15818
|
+
}
|
|
15435
15819
|
}
|
|
15436
15820
|
} else if (p.name === "bind" && isStaticArgOf(p.arg, "name")) {
|
|
15437
15821
|
if (p.exp) slotName = p.exp;
|
|
@@ -15457,17 +15841,18 @@ const transformOn$1 = (dir, node, context, augmentor) => {
|
|
|
15457
15841
|
const { loc, modifiers, arg } = dir;
|
|
15458
15842
|
if (!dir.exp && !modifiers.length) context.onError(createCompilerError(35, loc));
|
|
15459
15843
|
let eventName;
|
|
15460
|
-
if (arg.type === 4)
|
|
15461
|
-
|
|
15462
|
-
|
|
15463
|
-
|
|
15464
|
-
|
|
15465
|
-
|
|
15466
|
-
|
|
15467
|
-
|
|
15468
|
-
|
|
15469
|
-
|
|
15470
|
-
|
|
15844
|
+
if (arg.type === 4) {
|
|
15845
|
+
if (arg.isStatic) {
|
|
15846
|
+
let rawName = arg.content;
|
|
15847
|
+
if (!!(process.env.NODE_ENV !== "production") && rawName.startsWith("vnode")) context.onError(createCompilerError(52, arg.loc));
|
|
15848
|
+
if (rawName.startsWith("vue:")) rawName = `vnode-${rawName.slice(4)}`;
|
|
15849
|
+
eventName = createSimpleExpression(node.tagType !== 0 || rawName.startsWith("vnode") || !/[A-Z]/.test(rawName) ? toHandlerKey(camelize(rawName)) : `on:${rawName}`, true, arg.loc);
|
|
15850
|
+
} else eventName = createCompoundExpression([
|
|
15851
|
+
`${context.helperString(TO_HANDLER_KEY)}(`,
|
|
15852
|
+
arg,
|
|
15853
|
+
`)`
|
|
15854
|
+
]);
|
|
15855
|
+
} else {
|
|
15471
15856
|
eventName = arg;
|
|
15472
15857
|
eventName.children.unshift(`${context.helperString(TO_HANDLER_KEY)}(`);
|
|
15473
15858
|
eventName.children.push(`)`);
|
|
@@ -15503,11 +15888,14 @@ const transformBind = (dir, _node, context) => {
|
|
|
15503
15888
|
arg.children.unshift(`(`);
|
|
15504
15889
|
arg.children.push(`) || ""`);
|
|
15505
15890
|
} else if (!arg.isStatic) arg.content = arg.content ? `${arg.content} || ""` : `""`;
|
|
15506
|
-
if (modifiers.some((mod) => mod.content === "camel"))
|
|
15507
|
-
|
|
15508
|
-
|
|
15509
|
-
|
|
15510
|
-
|
|
15891
|
+
if (modifiers.some((mod) => mod.content === "camel")) {
|
|
15892
|
+
if (arg.type === 4) {
|
|
15893
|
+
if (arg.isStatic) arg.content = camelize(arg.content);
|
|
15894
|
+
else arg.content = `${context.helperString(CAMELIZE)}(${arg.content})`;
|
|
15895
|
+
} else {
|
|
15896
|
+
arg.children.unshift(`${context.helperString(CAMELIZE)}(`);
|
|
15897
|
+
arg.children.push(`)`);
|
|
15898
|
+
}
|
|
15511
15899
|
}
|
|
15512
15900
|
if (!context.inSSR) {
|
|
15513
15901
|
if (modifiers.some((mod) => mod.content === "prop")) injectPrefix(arg, ".");
|
|
@@ -15516,9 +15904,10 @@ const transformBind = (dir, _node, context) => {
|
|
|
15516
15904
|
return { props: [createObjectProperty(arg, exp)] };
|
|
15517
15905
|
};
|
|
15518
15906
|
const injectPrefix = (arg, prefix) => {
|
|
15519
|
-
if (arg.type === 4)
|
|
15520
|
-
|
|
15521
|
-
|
|
15907
|
+
if (arg.type === 4) {
|
|
15908
|
+
if (arg.isStatic) arg.content = prefix + arg.content;
|
|
15909
|
+
else arg.content = `\`${prefix}\${${arg.content}}\``;
|
|
15910
|
+
} else {
|
|
15522
15911
|
arg.children.unshift(`'${prefix}' + (`);
|
|
15523
15912
|
arg.children.push(`)`);
|
|
15524
15913
|
}
|
|
@@ -15665,11 +16054,12 @@ function parseFilter(node, context) {
|
|
|
15665
16054
|
if (c === 96 && prev !== 92) inTemplateString = false;
|
|
15666
16055
|
} else if (inRegex) {
|
|
15667
16056
|
if (c === 47 && prev !== 92) inRegex = false;
|
|
15668
|
-
} else if (c === 124 && exp.charCodeAt(i + 1) !== 124 && exp.charCodeAt(i - 1) !== 124 && !curly && !square && !paren)
|
|
15669
|
-
|
|
15670
|
-
|
|
15671
|
-
|
|
15672
|
-
|
|
16057
|
+
} else if (c === 124 && exp.charCodeAt(i + 1) !== 124 && exp.charCodeAt(i - 1) !== 124 && !curly && !square && !paren) {
|
|
16058
|
+
if (expression === void 0) {
|
|
16059
|
+
lastFilterIndex = i + 1;
|
|
16060
|
+
expression = exp.slice(0, i).trim();
|
|
16061
|
+
} else pushFilter();
|
|
16062
|
+
} else {
|
|
15673
16063
|
switch (c) {
|
|
15674
16064
|
case 34:
|
|
15675
16065
|
inDouble = true;
|
|
@@ -15695,9 +16085,7 @@ function parseFilter(node, context) {
|
|
|
15695
16085
|
case 123:
|
|
15696
16086
|
curly++;
|
|
15697
16087
|
break;
|
|
15698
|
-
case 125:
|
|
15699
|
-
curly--;
|
|
15700
|
-
break;
|
|
16088
|
+
case 125: curly--;
|
|
15701
16089
|
}
|
|
15702
16090
|
if (c === 47) {
|
|
15703
16091
|
let j = i - 1;
|
|
@@ -15973,9 +16361,7 @@ const transformModel = (dir, node, context) => {
|
|
|
15973
16361
|
isInvalidType = true;
|
|
15974
16362
|
context.onError(createDOMCompilerError(60, dir.loc));
|
|
15975
16363
|
break;
|
|
15976
|
-
default:
|
|
15977
|
-
process.env.NODE_ENV !== "production" && checkDuplicatedValue();
|
|
15978
|
-
break;
|
|
16364
|
+
default: process.env.NODE_ENV !== "production" && checkDuplicatedValue();
|
|
15979
16365
|
}
|
|
15980
16366
|
} else if (hasDynamicKeyVBind(node)) directiveToUse = V_MODEL_DYNAMIC;
|
|
15981
16367
|
else process.env.NODE_ENV !== "production" && checkDuplicatedValue();
|
|
@@ -15988,27 +16374,37 @@ const transformModel = (dir, node, context) => {
|
|
|
15988
16374
|
};
|
|
15989
16375
|
//#endregion
|
|
15990
16376
|
//#region packages/compiler-dom/src/transforms/vOn.ts
|
|
15991
|
-
const isEventOptionModifier =
|
|
15992
|
-
const isNonKeyModifier =
|
|
15993
|
-
const maybeKeyModifier =
|
|
15994
|
-
const isKeyboardEvent =
|
|
16377
|
+
const isEventOptionModifier = /*@__PURE__*/ makeMap(`passive,once,capture`);
|
|
16378
|
+
const isNonKeyModifier = /*@__PURE__*/ makeMap("stop,prevent,self,ctrl,shift,alt,meta,exact,middle");
|
|
16379
|
+
const maybeKeyModifier = /*@__PURE__*/ makeMap("left,right");
|
|
16380
|
+
const isKeyboardEvent = /*@__PURE__*/ makeMap(`onkeyup,onkeydown,onkeypress`);
|
|
15995
16381
|
const resolveModifiers = (key, modifiers, context, loc) => {
|
|
15996
16382
|
const keyModifiers = [];
|
|
15997
16383
|
const nonKeyModifiers = [];
|
|
15998
16384
|
const eventOptionModifiers = [];
|
|
15999
16385
|
for (let i = 0; i < modifiers.length; i++) {
|
|
16000
16386
|
const modifier = modifiers[i].content;
|
|
16387
|
+
if (modifier === "delegate") {
|
|
16388
|
+
if (context) {
|
|
16389
|
+
const error = /* @__PURE__ */ new SyntaxError(`.delegate modifier is only supported in Vapor components.`);
|
|
16390
|
+
error.loc = modifiers[i].loc;
|
|
16391
|
+
context.onWarn(error);
|
|
16392
|
+
}
|
|
16393
|
+
continue;
|
|
16394
|
+
}
|
|
16001
16395
|
if (modifier === "native" && context && checkCompatEnabled("COMPILER_V_ON_NATIVE", context, loc)) eventOptionModifiers.push(modifier);
|
|
16002
16396
|
else if (isEventOptionModifier(modifier)) eventOptionModifiers.push(modifier);
|
|
16003
16397
|
else {
|
|
16004
16398
|
const keyString = isString(key) ? key : isStaticExp(key) ? key.content : null;
|
|
16005
|
-
if (maybeKeyModifier(modifier))
|
|
16006
|
-
|
|
16007
|
-
|
|
16008
|
-
|
|
16009
|
-
|
|
16010
|
-
|
|
16011
|
-
|
|
16399
|
+
if (maybeKeyModifier(modifier)) {
|
|
16400
|
+
if (keyString) {
|
|
16401
|
+
if (isKeyboardEvent(keyString.toLowerCase())) keyModifiers.push(modifier);
|
|
16402
|
+
else nonKeyModifiers.push(modifier);
|
|
16403
|
+
} else {
|
|
16404
|
+
keyModifiers.push(modifier);
|
|
16405
|
+
nonKeyModifiers.push(modifier);
|
|
16406
|
+
}
|
|
16407
|
+
} else if (isNonKeyModifier(modifier)) nonKeyModifiers.push(modifier);
|
|
16012
16408
|
else keyModifiers.push(modifier);
|
|
16013
16409
|
}
|
|
16014
16410
|
}
|
|
@@ -16123,7 +16519,7 @@ function isValidHTMLNesting(parent, child) {
|
|
|
16123
16519
|
}
|
|
16124
16520
|
return true;
|
|
16125
16521
|
}
|
|
16126
|
-
const headings = new Set([
|
|
16522
|
+
const headings = /* @__PURE__ */ new Set([
|
|
16127
16523
|
"h1",
|
|
16128
16524
|
"h2",
|
|
16129
16525
|
"h3",
|
|
@@ -16135,7 +16531,7 @@ const emptySet = /* @__PURE__ */ new Set([]);
|
|
|
16135
16531
|
/**
|
|
16136
16532
|
* maps element to set of elements that can be it's children, no other */
|
|
16137
16533
|
const onlyValidChildren = {
|
|
16138
|
-
head: new Set([
|
|
16534
|
+
head: /* @__PURE__ */ new Set([
|
|
16139
16535
|
"base",
|
|
16140
16536
|
"basefront",
|
|
16141
16537
|
"bgsound",
|
|
@@ -16148,24 +16544,24 @@ const onlyValidChildren = {
|
|
|
16148
16544
|
"script",
|
|
16149
16545
|
"template"
|
|
16150
16546
|
]),
|
|
16151
|
-
optgroup: new Set(["option"]),
|
|
16152
|
-
select: new Set([
|
|
16547
|
+
optgroup: /* @__PURE__ */ new Set(["option"]),
|
|
16548
|
+
select: /* @__PURE__ */ new Set([
|
|
16153
16549
|
"optgroup",
|
|
16154
16550
|
"option",
|
|
16155
16551
|
"hr"
|
|
16156
16552
|
]),
|
|
16157
|
-
table: new Set([
|
|
16553
|
+
table: /* @__PURE__ */ new Set([
|
|
16158
16554
|
"caption",
|
|
16159
16555
|
"colgroup",
|
|
16160
16556
|
"tbody",
|
|
16161
16557
|
"tfoot",
|
|
16162
16558
|
"thead"
|
|
16163
16559
|
]),
|
|
16164
|
-
tr: new Set(["td", "th"]),
|
|
16165
|
-
colgroup: new Set(["col"]),
|
|
16166
|
-
tbody: new Set(["tr"]),
|
|
16167
|
-
thead: new Set(["tr"]),
|
|
16168
|
-
tfoot: new Set(["tr"]),
|
|
16560
|
+
tr: /* @__PURE__ */ new Set(["td", "th"]),
|
|
16561
|
+
colgroup: /* @__PURE__ */ new Set(["col"]),
|
|
16562
|
+
tbody: /* @__PURE__ */ new Set(["tr"]),
|
|
16563
|
+
thead: /* @__PURE__ */ new Set(["tr"]),
|
|
16564
|
+
tfoot: /* @__PURE__ */ new Set(["tr"]),
|
|
16169
16565
|
script: emptySet,
|
|
16170
16566
|
iframe: emptySet,
|
|
16171
16567
|
option: emptySet,
|
|
@@ -16176,30 +16572,30 @@ const onlyValidChildren = {
|
|
|
16176
16572
|
/** maps elements to set of elements which can be it's parent, no other */
|
|
16177
16573
|
const onlyValidParents = {
|
|
16178
16574
|
html: emptySet,
|
|
16179
|
-
body: new Set(["html"]),
|
|
16180
|
-
head: new Set(["html"]),
|
|
16181
|
-
td: new Set(["tr"]),
|
|
16182
|
-
colgroup: new Set(["table"]),
|
|
16183
|
-
caption: new Set(["table"]),
|
|
16184
|
-
tbody: new Set(["table"]),
|
|
16185
|
-
tfoot: new Set(["table"]),
|
|
16186
|
-
col: new Set(["colgroup"]),
|
|
16187
|
-
th: new Set(["tr"]),
|
|
16188
|
-
thead: new Set(["table"]),
|
|
16189
|
-
tr: new Set([
|
|
16575
|
+
body: /* @__PURE__ */ new Set(["html"]),
|
|
16576
|
+
head: /* @__PURE__ */ new Set(["html"]),
|
|
16577
|
+
td: /* @__PURE__ */ new Set(["tr"]),
|
|
16578
|
+
colgroup: /* @__PURE__ */ new Set(["table"]),
|
|
16579
|
+
caption: /* @__PURE__ */ new Set(["table"]),
|
|
16580
|
+
tbody: /* @__PURE__ */ new Set(["table"]),
|
|
16581
|
+
tfoot: /* @__PURE__ */ new Set(["table"]),
|
|
16582
|
+
col: /* @__PURE__ */ new Set(["colgroup"]),
|
|
16583
|
+
th: /* @__PURE__ */ new Set(["tr"]),
|
|
16584
|
+
thead: /* @__PURE__ */ new Set(["table"]),
|
|
16585
|
+
tr: /* @__PURE__ */ new Set([
|
|
16190
16586
|
"tbody",
|
|
16191
16587
|
"thead",
|
|
16192
16588
|
"tfoot"
|
|
16193
16589
|
]),
|
|
16194
|
-
dd: new Set(["dl", "div"]),
|
|
16195
|
-
dt: new Set(["dl", "div"]),
|
|
16196
|
-
figcaption: new Set(["figure"]),
|
|
16197
|
-
summary: new Set(["details"]),
|
|
16198
|
-
area: new Set(["map"])
|
|
16590
|
+
dd: /* @__PURE__ */ new Set(["dl", "div"]),
|
|
16591
|
+
dt: /* @__PURE__ */ new Set(["dl", "div"]),
|
|
16592
|
+
figcaption: /* @__PURE__ */ new Set(["figure"]),
|
|
16593
|
+
summary: /* @__PURE__ */ new Set(["details"]),
|
|
16594
|
+
area: /* @__PURE__ */ new Set(["map"])
|
|
16199
16595
|
};
|
|
16200
16596
|
/** maps element to set of elements that can not be it's children, others can */
|
|
16201
16597
|
const knownInvalidChildren = {
|
|
16202
|
-
p: new Set([
|
|
16598
|
+
p: /* @__PURE__ */ new Set([
|
|
16203
16599
|
"address",
|
|
16204
16600
|
"article",
|
|
16205
16601
|
"aside",
|
|
@@ -16234,7 +16630,7 @@ const knownInvalidChildren = {
|
|
|
16234
16630
|
"table",
|
|
16235
16631
|
"ul"
|
|
16236
16632
|
]),
|
|
16237
|
-
svg: new Set([
|
|
16633
|
+
svg: /* @__PURE__ */ new Set([
|
|
16238
16634
|
"b",
|
|
16239
16635
|
"blockquote",
|
|
16240
16636
|
"br",
|
|
@@ -16275,12 +16671,12 @@ const knownInvalidChildren = {
|
|
|
16275
16671
|
};
|
|
16276
16672
|
/** maps element to set of elements that can not be it's parent, others can */
|
|
16277
16673
|
const knownInvalidParents = {
|
|
16278
|
-
a: new Set(["a"]),
|
|
16279
|
-
button: new Set(["button"]),
|
|
16280
|
-
dd: new Set(["dd", "dt"]),
|
|
16281
|
-
dt: new Set(["dd", "dt"]),
|
|
16282
|
-
form: new Set(["form"]),
|
|
16283
|
-
li: new Set(["li"]),
|
|
16674
|
+
a: /* @__PURE__ */ new Set(["a"]),
|
|
16675
|
+
button: /* @__PURE__ */ new Set(["button"]),
|
|
16676
|
+
dd: /* @__PURE__ */ new Set(["dd", "dt"]),
|
|
16677
|
+
dt: /* @__PURE__ */ new Set(["dd", "dt"]),
|
|
16678
|
+
form: /* @__PURE__ */ new Set(["form"]),
|
|
16679
|
+
li: /* @__PURE__ */ new Set(["li"]),
|
|
16284
16680
|
h1: headings,
|
|
16285
16681
|
h2: headings,
|
|
16286
16682
|
h3: headings,
|
|
@@ -16323,10 +16719,12 @@ function compile(src, options = {}) {
|
|
|
16323
16719
|
//#region packages/vue-compat/src/index.ts
|
|
16324
16720
|
const compileCache = Object.create(null);
|
|
16325
16721
|
function compileToFunction(template, options) {
|
|
16326
|
-
if (!isString(template))
|
|
16327
|
-
|
|
16328
|
-
|
|
16329
|
-
|
|
16722
|
+
if (!isString(template)) {
|
|
16723
|
+
if (template.nodeType) template = template.innerHTML;
|
|
16724
|
+
else {
|
|
16725
|
+
process.env.NODE_ENV !== "production" && warn(`invalid template option: `, template);
|
|
16726
|
+
return NOOP;
|
|
16727
|
+
}
|
|
16330
16728
|
}
|
|
16331
16729
|
const key = genCacheKey(template, options);
|
|
16332
16730
|
const cached = compileCache[key];
|
|
@@ -16360,4 +16758,4 @@ Vue.compile = compileToFunction;
|
|
|
16360
16758
|
var esm_index_default = Vue;
|
|
16361
16759
|
const configureCompat = Vue.configureCompat;
|
|
16362
16760
|
//#endregion
|
|
16363
|
-
export { BaseTransition, BaseTransitionPropsValidators, Comment, DeprecationTypes, EffectScope, ErrorCodes, ErrorTypeStrings, Fragment, KeepAlive, MismatchTypes, MoveType, NULL_DYNAMIC_COMPONENT, ReactiveEffect, SchedulerJobFlags, Static, Suspense, Teleport, Text, TrackOpTypes, Transition, TransitionGroup, TransitionPropsValidators, TriggerOpTypes, VaporSlot, VueElement, VueElementBase, activate, assertNumber, baseApplyTranslation, baseEmit, baseNormalizePropsOptions, baseResolveTransitionHooks,
|
|
16761
|
+
export { BaseTransition, BaseTransitionPropsValidators, Comment, DeprecationTypes, EffectScope, ErrorCodes, ErrorTypeStrings, Fragment, KeepAlive, MismatchTypes, MoveType, NULL_DYNAMIC_COMPONENT, ReactiveEffect, SchedulerJobFlags, Static, Suspense, Teleport, Text, TrackOpTypes, Transition, TransitionGroup, TransitionPropsValidators, TriggerOpTypes, VaporSlot, VueElement, VueElementBase, activate, assertNumber, baseApplyTranslation, baseEmit, baseNormalizePropsOptions, baseResolveTransitionHooks, callPendingCbs, callWithAsyncErrorHandling, callWithErrorHandling, camelize, capitalize, checkTransitionMode, cloneVNode, compatUtils, computed, configureCompat, createApp, createAppAPI, createAsyncComponentContext, createBlock, createCanSetSetupRefChecker, createCommentVNode, createElementBlock, createBaseVNode as createElementVNode, createHydrationRenderer, createInternalObject, createPropsRestProxy, createRenderer, createSSRApp, createSlots, createStaticVNode, createTextVNode, createVNode, currentInstance, customRef, deactivate, esm_index_default as default, defaultPropGetter, defineAsyncComponent, defineComponent, defineCustomElement, defineEmits, defineExpose, defineModel, defineOptions, defineProps, defineSSRCustomElement, defineSlots, devtools, devtoolsComponentAdded, effect, effectScope, endMeasure, ensureHydrationRenderer, ensureRenderer, ensureValidVNode, expose, filterModelListeners, filterSingleRoot, flushOnAppMount, forceReflow, getAttributeMismatch, getComponentName, getContainerType, getCurrentInstance, getCurrentScope, getCurrentWatcher, getFunctionalFallthrough, getInheritedScopeIds, getTransitionRawChildren, guardReactiveProps, h, handleError, handleMovedChildren, hasCSSTransform, hasInjectionContext, hydrate, hydrateOnIdle, hydrateOnInteraction, hydrateOnMediaQuery, hydrateOnVisible, initCustomFormatter, initDirectivesForSSR, initFeatureFlags, inject, invalidateMount, invokeDirectiveHook, invokeSlotFallback, invokeVNodeHook, isAsyncWrapper, isEmitListener, isFunctionalFallthroughKey, isHydrating, isHydratingEnabled, isKeepAlive, isMapEqual, isMemoSame, isMismatchAllowed, isProxy, isReactive, isReadonly, isRef, isRuntimeOnly, isSetEqual, isShallow, isTeleportDeferred, isTeleportDisabled, isTemplateNode, isTemplateRefKey, isUnchangedResourceProp, isVNode, isValidHtmlOrSvgAttribute, knownTemplateRefs, leaveCbKey, logMismatchError, markAsyncBoundary, markRaw, matches, mergeDefaults, mergeModels, mergeProps, nextTick, nextUid, nodeOps, normalizeClass, normalizeContainer, normalizeProps, normalizeRef, normalizeStyle, normalizeVNode, onActivated, onBeforeMount, onBeforeUnmount, onBeforeUpdate, onDeactivated, onErrorCaptured, onMounted, onRenderTracked, onRenderTriggered, onScopeDispose, onServerPrefetch, onUnmounted, onUpdated, onWatcherCleanup, openBlock, parseEventName, patchClass, patchProp, patchStyle, performAsyncHydrate, performTransitionEnter, performTransitionLeave, popScopeId, popWarningContext, prepareTransitionLeave, prepareTransitionSwitch, provide, proxyRefs, pushScopeId, pushWarningContext, queueJob, queuePostFlushCb, queuePostRenderEffect, rawVaporSlotKey, reactive, readonly, ref, registerHMR, registerRuntimeCompiler, render, renderList, renderSlot, resetShapeFlag, resolveComponent, resolveCssVars, resolveDirective, resolveDynamicComponent, resolveFilter, resolvePropValue, resolveTarget as resolveTeleportTarget, resolveTransitionChild, resolveTransitionHooks, resolveTransitionProps, restoreCurrentInstance, setBlockTracking, setCurrentInstance, setCurrentRenderingInstance, setDevtoolsHook, setIsHydratingEnabled, setRef, setTransitionHooks, setVarsOnNode, shallowReactive, shallowReadonly, shallowRef, shouldSetAsProp, shouldSetAsPropForVueCE, shouldUpdateComponent, simpleSetCurrentInstance, ssrContextKey, ssrUtils, startMeasure, stop, svgNS, toClassSet, toDisplayString, toHandlerKey, toHandlers, toRaw, toRef, toRefs, toStyleMap, toValue, transformVNodeArgs, triggerRef, unref, unregisterHMR, unsafeToTrustedHTML, useAsyncComponentState, useAttrs, useCssModule, useCssVars, useHost, useId, useInstanceOption, useModel, useSSRContext, useShadowRoot, useSlots, useTemplateRef, useTransitionState, vModelCheckbox, vModelCheckboxInit, vModelCheckboxUpdate, vModelDynamic, getValue as vModelGetValue, vModelRadio, vModelSelect, vModelSelectInit, vModelSetSelected, vModelText, vModelTextInit, vModelTextUpdate, vShow, vShowHidden, vShowOriginalDisplay, validateComponentName, validateProps, version, warn, warnExtraneousAttributes, warnPropMismatch, watch, watchEffect, watchPostEffect, watchSyncEffect, withAsyncContext, withCtx, withDefaults, withDirectives, withKeys, withMemo, withModifiers, withScopeId, xlinkNS };
|