@vue/compat 3.6.0-rc.5 → 3.6.0-rc.6

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.cjs.js CHANGED
@@ -1,5 +1,5 @@
1
1
  /**
2
- * @vue/compat v3.6.0-rc.5
2
+ * @vue/compat v3.6.0-rc.6
3
3
  * (c) 2018-present Yuxi (Evan) You and Vue contributors
4
4
  * @license MIT
5
5
  **/
@@ -26,7 +26,7 @@ let source_map_js = require("source-map-js");
26
26
  * \/\*#\_\_PURE\_\_\*\/
27
27
  * So that they can be tree-shaken if necessary.
28
28
  */
29
- /* @__NO_SIDE_EFFECTS__ */
29
+ /*@__NO_SIDE_EFFECTS__*/
30
30
  function makeMap(str) {
31
31
  const map = Object.create(null);
32
32
  for (const key of str.split(",")) map[key] = 1;
@@ -70,9 +70,9 @@ const toRawType = (value) => {
70
70
  };
71
71
  const isPlainObject = (val) => toTypeString(val) === "[object Object]";
72
72
  const isIntegerKey = (key) => isString(key) && key !== "NaN" && key[0] !== "-" && "" + parseInt(key, 10) === key;
73
- const isReservedProp = /* @__PURE__ */ makeMap(",key,ref,ref_for,ref_key,onVnodeBeforeMount,onVnodeMounted,onVnodeBeforeUpdate,onVnodeUpdated,onVnodeBeforeUnmount,onVnodeUnmounted");
74
- const isBuiltInTag = /* @__PURE__ */ makeMap("slot,component");
75
- const isBuiltInDirective = /* @__PURE__ */ makeMap("bind,cloak,else-if,else,for,html,if,model,on,once,pre,show,slot,text,memo");
73
+ const isReservedProp = /*@__PURE__*/ makeMap(",key,ref,ref_for,ref_key,onVnodeBeforeMount,onVnodeMounted,onVnodeBeforeUpdate,onVnodeUpdated,onVnodeBeforeUnmount,onVnodeUnmounted");
74
+ const isBuiltInTag = /*#__PURE__*/ makeMap("slot,component");
75
+ const isBuiltInDirective = /*@__PURE__*/ makeMap("bind,cloak,else-if,else,for,html,if,model,on,once,pre,show,slot,text,memo");
76
76
  const cacheStringFunction = (fn) => {
77
77
  const cache = Object.create(null);
78
78
  return ((str) => {
@@ -184,7 +184,7 @@ const slotFlagsText = {
184
184
  [2]: "DYNAMIC",
185
185
  [3]: "FORWARDED"
186
186
  };
187
- 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");
187
+ 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");
188
188
  //#endregion
189
189
  //#region packages/shared/src/codeframe.ts
190
190
  const range = 2;
@@ -291,22 +291,22 @@ const VOID_TAGS = "area,base,br,col,embed,hr,img,input,link,meta,param,source,tr
291
291
  * Compiler only.
292
292
  * Do NOT use in runtime code paths unless behind `__DEV__` flag.
293
293
  */
294
- const isHTMLTag = /* @__PURE__ */ makeMap(HTML_TAGS);
294
+ const isHTMLTag = /*@__PURE__*/ makeMap(HTML_TAGS);
295
295
  /**
296
296
  * Compiler only.
297
297
  * Do NOT use in runtime code paths unless behind `__DEV__` flag.
298
298
  */
299
- const isSVGTag = /* @__PURE__ */ makeMap(SVG_TAGS);
299
+ const isSVGTag = /*@__PURE__*/ makeMap(SVG_TAGS);
300
300
  /**
301
301
  * Compiler only.
302
302
  * Do NOT use in runtime code paths unless behind `__DEV__` flag.
303
303
  */
304
- const isMathMLTag = /* @__PURE__ */ makeMap(MATH_TAGS);
304
+ const isMathMLTag = /*@__PURE__*/ makeMap(MATH_TAGS);
305
305
  /**
306
306
  * Compiler only.
307
307
  * Do NOT use in runtime code paths unless behind `__DEV__` flag.
308
308
  */
309
- const isVoidTag = /* @__PURE__ */ makeMap(VOID_TAGS);
309
+ const isVoidTag = /*@__PURE__*/ makeMap(VOID_TAGS);
310
310
  //#endregion
311
311
  //#region packages/shared/src/domAttrConfig.ts
312
312
  /**
@@ -321,11 +321,11 @@ const isVoidTag = /* @__PURE__ */ makeMap(VOID_TAGS);
321
321
  * - readonly -> readOnly
322
322
  */
323
323
  const specialBooleanAttrs = `itemscope,allowfullscreen,formnovalidate,ismap,nomodule,novalidate,readonly`;
324
- const isSpecialBooleanAttr = /* @__PURE__ */ makeMap(specialBooleanAttrs);
324
+ const isSpecialBooleanAttr = /*@__PURE__*/ makeMap(specialBooleanAttrs);
325
325
  /**
326
326
  * The full list is needed during SSR to produce the correct initial markup.
327
327
  */
328
- const isBooleanAttr = /* @__PURE__ */ makeMap(specialBooleanAttrs + ",async,autofocus,autoplay,controls,default,defer,disabled,inert,loop,open,required,reversed,scoped,seamless,checked,muted,multiple,selected");
328
+ const isBooleanAttr = /*@__PURE__*/ makeMap(specialBooleanAttrs + ",async,autofocus,autoplay,controls,default,defer,disabled,inert,loop,open,required,reversed,scoped,seamless,checked,muted,multiple,selected");
329
329
  /**
330
330
  * Boolean attributes should be included if the value is truthy or ''.
331
331
  * e.g. `<select multiple>` compiles to `{ multiple: '' }`
@@ -339,15 +339,15 @@ function includeBooleanAttr(value) {
339
339
  * Don't also forget to allow `data-*` and `aria-*`!
340
340
  * Generated from https://developer.mozilla.org/en-US/docs/Web/HTML/Attributes
341
341
  */
342
- 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");
342
+ 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");
343
343
  /**
344
344
  * Generated from https://developer.mozilla.org/en-US/docs/Web/SVG/Attribute
345
345
  */
346
- 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");
346
+ 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");
347
347
  /**
348
348
  * Generated from https://developer.mozilla.org/en-US/docs/Web/MathML/Attribute
349
349
  */
350
- const isKnownMathMLAttr = /* @__PURE__ */ makeMap("accent,accentunder,actiontype,align,alignmentscope,altimg,altimg-height,altimg-valign,altimg-width,alttext,bevelled,close,columnsalign,columnlines,columnspan,denomalign,depth,dir,display,displaystyle,encoding,equalcolumns,equalrows,fence,fontstyle,fontweight,form,frame,framespacing,groupalign,height,href,id,indentalign,indentalignfirst,indentalignlast,indentshift,indentshiftfirst,indentshiftlast,indextype,justify,largetop,largeop,lquote,lspace,mathbackground,mathcolor,mathsize,mathvariant,maxsize,minlabelspacing,mode,other,overflow,position,rowalign,rowlines,rowspan,rquote,rspace,scriptlevel,scriptminsize,scriptsizemultiplier,selection,separator,separators,shift,side,src,stackalign,stretchy,subscriptshift,superscriptshift,symmetric,voffset,width,widths,xlink:href,xlink:show,xlink:type,xmlns");
350
+ const isKnownMathMLAttr = /*@__PURE__*/ makeMap("accent,accentunder,actiontype,align,alignmentscope,altimg,altimg-height,altimg-valign,altimg-width,alttext,bevelled,close,columnsalign,columnlines,columnspan,denomalign,depth,dir,display,displaystyle,encoding,equalcolumns,equalrows,fence,fontstyle,fontweight,form,frame,framespacing,groupalign,height,href,id,indentalign,indentalignfirst,indentalignlast,indentshift,indentshiftfirst,indentshiftlast,indextype,justify,largetop,largeop,lquote,lspace,mathbackground,mathcolor,mathsize,mathvariant,maxsize,minlabelspacing,mode,other,overflow,position,rowalign,rowlines,rowspan,rquote,rspace,scriptlevel,scriptminsize,scriptsizemultiplier,selection,separator,separators,shift,side,src,stackalign,stretchy,subscriptshift,superscriptshift,symmetric,voffset,width,widths,xlink:href,xlink:show,xlink:type,xmlns");
351
351
  /**
352
352
  * Shared between server-renderer and runtime-core hydration logic
353
353
  */
@@ -413,6 +413,21 @@ function looseCompareArrays(a, b) {
413
413
  for (let i = 0; equal && i < a.length; i++) equal = looseEqual(a[i], b[i]);
414
414
  return equal;
415
415
  }
416
+ function looseCompareCollections(a, b) {
417
+ if (a.size !== b.size) return false;
418
+ const candidates = Array.from(b);
419
+ const matched = new Uint8Array(candidates.length);
420
+ for (const item of a) {
421
+ let index = -1;
422
+ for (let i = 0; i < candidates.length; i++) if (!matched[i] && looseEqual(item, candidates[i])) {
423
+ index = i;
424
+ break;
425
+ }
426
+ if (index < 0) return false;
427
+ matched[index] = 1;
428
+ }
429
+ return true;
430
+ }
416
431
  function looseEqual(a, b) {
417
432
  if (a === b) return true;
418
433
  let aValidType = isDate(a);
@@ -428,6 +443,12 @@ function looseEqual(a, b) {
428
443
  bValidType = isObject(b);
429
444
  if (aValidType || bValidType) {
430
445
  if (!aValidType || !bValidType) return false;
446
+ aValidType = isMap(a);
447
+ bValidType = isMap(b);
448
+ if (aValidType || bValidType) return aValidType && bValidType ? looseCompareCollections(a, b) : false;
449
+ aValidType = isSet(a);
450
+ bValidType = isSet(b);
451
+ if (aValidType || bValidType) return aValidType && bValidType ? looseCompareCollections(a, b) : false;
431
452
  if (Object.keys(a).length !== Object.keys(b).length) return false;
432
453
  for (const key in a) {
433
454
  const aHasKey = a.hasOwnProperty(key);
@@ -874,9 +895,7 @@ function trigger(target, type, key, newValue, oldValue, oldTarget) {
874
895
  if (isMap(target)) run(depsMap.get(MAP_KEY_ITERATE_KEY));
875
896
  }
876
897
  break;
877
- case "set":
878
- if (isMap(target)) run(depsMap.get(ITERATE_KEY));
879
- break;
898
+ case "set": if (isMap(target)) run(depsMap.get(ITERATE_KEY));
880
899
  }
881
900
  }
882
901
  }
@@ -1073,8 +1092,8 @@ function noTracking(self, method, args = []) {
1073
1092
  }
1074
1093
  //#endregion
1075
1094
  //#region packages/reactivity/src/baseHandlers.ts
1076
- const isNonTrackableKeys = /* @__PURE__ */ makeMap(`__proto__,__v_isRef,__isVue`);
1077
- const builtInSymbols = new Set(/* @__PURE__ */ Object.getOwnPropertyNames(Symbol).filter((key) => key !== "arguments" && key !== "caller").map((key) => Symbol[key]).filter(isSymbol));
1095
+ const isNonTrackableKeys = /*@__PURE__*/ makeMap(`__proto__,__v_isRef,__isVue`);
1096
+ const builtInSymbols = new Set(/*@__PURE__*/ Object.getOwnPropertyNames(Symbol).filter((key) => key !== "arguments" && key !== "caller").map((key) => Symbol[key]).filter(isSymbol));
1078
1097
  function hasOwnProperty(key) {
1079
1098
  if (!isSymbol(key)) key = String(key);
1080
1099
  const obj = /* @__PURE__ */ toRaw(this);
@@ -1129,12 +1148,14 @@ var MutableReactiveHandler = class extends BaseReactiveHandler {
1129
1148
  oldValue = /* @__PURE__ */ toRaw(oldValue);
1130
1149
  value = /* @__PURE__ */ toRaw(value);
1131
1150
  }
1132
- if (!isArrayWithIntegerKey && /* @__PURE__ */ isRef(oldValue) && !/* @__PURE__ */ isRef(value)) if (isOldValueReadonly) {
1133
- warn$2(`Set operation on key "${String(key)}" failed: target is readonly.`, target[key]);
1134
- return true;
1135
- } else {
1136
- oldValue.value = value;
1137
- return true;
1151
+ if (!isArrayWithIntegerKey && /* @__PURE__ */ isRef(oldValue) && !/* @__PURE__ */ isRef(value)) {
1152
+ if (isOldValueReadonly) {
1153
+ warn$2(`Set operation on key "${String(key)}" failed: target is readonly.`, target[key]);
1154
+ return true;
1155
+ } else {
1156
+ oldValue.value = value;
1157
+ return true;
1158
+ }
1138
1159
  }
1139
1160
  }
1140
1161
  const hadKey = isArrayWithIntegerKey ? Number(key) < target.length : hasOwn(target, key);
@@ -1175,10 +1196,10 @@ var ReadonlyReactiveHandler = class extends BaseReactiveHandler {
1175
1196
  return true;
1176
1197
  }
1177
1198
  };
1178
- const mutableHandlers = /* @__PURE__ */ new MutableReactiveHandler();
1179
- const readonlyHandlers = /* @__PURE__ */ new ReadonlyReactiveHandler();
1180
- const shallowReactiveHandlers = /* @__PURE__ */ new MutableReactiveHandler(true);
1181
- const shallowReadonlyHandlers = /* @__PURE__ */ new ReadonlyReactiveHandler(true);
1199
+ const mutableHandlers = /*@__PURE__*/ new MutableReactiveHandler();
1200
+ const readonlyHandlers = /*@__PURE__*/ new ReadonlyReactiveHandler();
1201
+ const shallowReactiveHandlers = /*@__PURE__*/ new MutableReactiveHandler(true);
1202
+ const shallowReadonlyHandlers = /*@__PURE__*/ new ReadonlyReactiveHandler(true);
1182
1203
  //#endregion
1183
1204
  //#region packages/reactivity/src/collectionHandlers.ts
1184
1205
  const toShallow = (value) => value;
@@ -1329,10 +1350,10 @@ function createInstrumentationGetter(isReadonly, shallow) {
1329
1350
  return Reflect.get(hasOwn(instrumentations, key) && key in target ? instrumentations : target, key, receiver);
1330
1351
  };
1331
1352
  }
1332
- const mutableCollectionHandlers = { get: /* @__PURE__ */ createInstrumentationGetter(false, false) };
1333
- const shallowCollectionHandlers = { get: /* @__PURE__ */ createInstrumentationGetter(false, true) };
1334
- const readonlyCollectionHandlers = { get: /* @__PURE__ */ createInstrumentationGetter(true, false) };
1335
- const shallowReadonlyCollectionHandlers = { get: /* @__PURE__ */ createInstrumentationGetter(true, true) };
1353
+ const mutableCollectionHandlers = { get: /*@__PURE__*/ createInstrumentationGetter(false, false) };
1354
+ const shallowCollectionHandlers = { get: /*@__PURE__*/ createInstrumentationGetter(false, true) };
1355
+ const readonlyCollectionHandlers = { get: /*@__PURE__*/ createInstrumentationGetter(true, false) };
1356
+ const shallowReadonlyCollectionHandlers = { get: /*@__PURE__*/ createInstrumentationGetter(true, true) };
1336
1357
  function checkIdentityKeys(target, has, key) {
1337
1358
  const rawKey = /* @__PURE__ */ toRaw(key);
1338
1359
  if (rawKey !== key && has.call(target, rawKey)) {
@@ -1357,7 +1378,7 @@ function targetTypeMap(rawType) {
1357
1378
  default: return 0;
1358
1379
  }
1359
1380
  }
1360
- /* @__NO_SIDE_EFFECTS__ */
1381
+ /*@__NO_SIDE_EFFECTS__*/
1361
1382
  function reactive(target) {
1362
1383
  if (/* @__PURE__ */ isReadonly(target)) return target;
1363
1384
  return createReactiveObject(target, false, mutableHandlers, mutableCollectionHandlers, reactiveMap);
@@ -1392,7 +1413,7 @@ function reactive(target) {
1392
1413
  * @param target - The source object.
1393
1414
  * @see {@link https://vuejs.org/api/reactivity-advanced.html#shallowreactive}
1394
1415
  */
1395
- /* @__NO_SIDE_EFFECTS__ */
1416
+ /*@__NO_SIDE_EFFECTS__*/
1396
1417
  function shallowReactive(target) {
1397
1418
  return createReactiveObject(target, false, shallowReactiveHandlers, shallowCollectionHandlers, shallowReactiveMap);
1398
1419
  }
@@ -1425,7 +1446,7 @@ function shallowReactive(target) {
1425
1446
  * @param target - The source object.
1426
1447
  * @see {@link https://vuejs.org/api/reactivity-core.html#readonly}
1427
1448
  */
1428
- /* @__NO_SIDE_EFFECTS__ */
1449
+ /*@__NO_SIDE_EFFECTS__*/
1429
1450
  function readonly(target) {
1430
1451
  return createReactiveObject(target, true, readonlyHandlers, readonlyCollectionHandlers, readonlyMap);
1431
1452
  }
@@ -1459,7 +1480,7 @@ function readonly(target) {
1459
1480
  * @param target - The source object.
1460
1481
  * @see {@link https://vuejs.org/api/reactivity-advanced.html#shallowreadonly}
1461
1482
  */
1462
- /* @__NO_SIDE_EFFECTS__ */
1483
+ /*@__NO_SIDE_EFFECTS__*/
1463
1484
  function shallowReadonly(target) {
1464
1485
  return createReactiveObject(target, true, shallowReadonlyHandlers, shallowReadonlyCollectionHandlers, shallowReadonlyMap);
1465
1486
  }
@@ -1496,7 +1517,7 @@ function createReactiveObject(target, isReadonly, baseHandlers, collectionHandle
1496
1517
  * @param value - The value to check.
1497
1518
  * @see {@link https://vuejs.org/api/reactivity-utilities.html#isreactive}
1498
1519
  */
1499
- /* @__NO_SIDE_EFFECTS__ */
1520
+ /*@__NO_SIDE_EFFECTS__*/
1500
1521
  function isReactive(value) {
1501
1522
  if (/* @__PURE__ */ isReadonly(value)) return /* @__PURE__ */ isReactive(value["__v_raw"]);
1502
1523
  return !!(value && value["__v_isReactive"]);
@@ -1512,11 +1533,11 @@ function isReactive(value) {
1512
1533
  * @param value - The value to check.
1513
1534
  * @see {@link https://vuejs.org/api/reactivity-utilities.html#isreadonly}
1514
1535
  */
1515
- /* @__NO_SIDE_EFFECTS__ */
1536
+ /*@__NO_SIDE_EFFECTS__*/
1516
1537
  function isReadonly(value) {
1517
1538
  return !!(value && value["__v_isReadonly"]);
1518
1539
  }
1519
- /* @__NO_SIDE_EFFECTS__ */
1540
+ /*@__NO_SIDE_EFFECTS__*/
1520
1541
  function isShallow(value) {
1521
1542
  return !!(value && value["__v_isShallow"]);
1522
1543
  }
@@ -1527,7 +1548,7 @@ function isShallow(value) {
1527
1548
  * @param value - The value to check.
1528
1549
  * @see {@link https://vuejs.org/api/reactivity-utilities.html#isproxy}
1529
1550
  */
1530
- /* @__NO_SIDE_EFFECTS__ */
1551
+ /*@__NO_SIDE_EFFECTS__*/
1531
1552
  function isProxy(value) {
1532
1553
  return value ? !!value["__v_raw"] : false;
1533
1554
  }
@@ -1554,7 +1575,7 @@ function isProxy(value) {
1554
1575
  * @param observed - The object for which the "raw" value is requested.
1555
1576
  * @see {@link https://vuejs.org/api/reactivity-advanced.html#toraw}
1556
1577
  */
1557
- /* @__NO_SIDE_EFFECTS__ */
1578
+ /*@__NO_SIDE_EFFECTS__*/
1558
1579
  function toRaw(observed) {
1559
1580
  const raw = observed && observed["__v_raw"];
1560
1581
  return raw ? /* @__PURE__ */ toRaw(raw) : observed;
@@ -1603,15 +1624,15 @@ const toReactive = (value) => isObject(value) ? /* @__PURE__ */ reactive(value)
1603
1624
  const toReadonly = (value) => isObject(value) ? /* @__PURE__ */ readonly(value) : value;
1604
1625
  //#endregion
1605
1626
  //#region packages/reactivity/src/ref.ts
1606
- /* @__NO_SIDE_EFFECTS__ */
1627
+ /*@__NO_SIDE_EFFECTS__*/
1607
1628
  function isRef(r) {
1608
1629
  return r ? r["__v_isRef"] === true : false;
1609
1630
  }
1610
- /* @__NO_SIDE_EFFECTS__ */
1631
+ /*@__NO_SIDE_EFFECTS__*/
1611
1632
  function ref(value) {
1612
1633
  return createRef(value, toReactive);
1613
1634
  }
1614
- /* @__NO_SIDE_EFFECTS__ */
1635
+ /*@__NO_SIDE_EFFECTS__*/
1615
1636
  function shallowRef(value) {
1616
1637
  return createRef(value);
1617
1638
  }
@@ -1814,7 +1835,7 @@ function customRef(factory) {
1814
1835
  * @param object - Reactive object to be made into an object of linked refs.
1815
1836
  * @see {@link https://vuejs.org/api/reactivity-utilities.html#torefs}
1816
1837
  */
1817
- /* @__NO_SIDE_EFFECTS__ */
1838
+ /*@__NO_SIDE_EFFECTS__*/
1818
1839
  function toRefs(object) {
1819
1840
  const ret = isArray(object) ? new Array(object.length) : {};
1820
1841
  for (const key in object) ret[key] = propertyToRef(object, key);
@@ -1865,7 +1886,7 @@ var GetterRefImpl = class {
1865
1886
  return this._value = this._getter();
1866
1887
  }
1867
1888
  };
1868
- /* @__NO_SIDE_EFFECTS__ */
1889
+ /*@__NO_SIDE_EFFECTS__*/
1869
1890
  function toRef(source, key, defaultValue) {
1870
1891
  if (/* @__PURE__ */ isRef(source)) return source;
1871
1892
  else if (isFunction(source)) return new GetterRefImpl(source);
@@ -1931,10 +1952,12 @@ var ReactiveEffect = class {
1931
1952
  get dirty() {
1932
1953
  const flags = this.flags;
1933
1954
  if (flags & 16) return true;
1934
- if (flags & 32) if (checkDirty(this.deps, this)) {
1935
- this.flags = flags | 16;
1936
- return true;
1937
- } else this.flags = flags & -33;
1955
+ if (flags & 32) {
1956
+ if (checkDirty(this.deps, this)) {
1957
+ this.flags = flags | 16;
1958
+ return true;
1959
+ } else this.flags = flags & -33;
1960
+ }
1938
1961
  return false;
1939
1962
  }
1940
1963
  };
@@ -2113,10 +2136,12 @@ var ComputedRefImpl = class {
2113
2136
  get _dirty() {
2114
2137
  const flags = this.flags;
2115
2138
  if (flags & 16) return true;
2116
- if (flags & 32) if (checkDirty(this.deps, this)) {
2117
- this.flags = flags | 16;
2118
- return true;
2119
- } else this.flags = flags & -33;
2139
+ if (flags & 32) {
2140
+ if (checkDirty(this.deps, this)) {
2141
+ this.flags = flags | 16;
2142
+ return true;
2143
+ } else this.flags = flags & -33;
2144
+ }
2120
2145
  return false;
2121
2146
  }
2122
2147
  /**
@@ -2177,7 +2202,7 @@ var ComputedRefImpl = class {
2177
2202
  }
2178
2203
  };
2179
2204
  setupOnTrigger(ComputedRefImpl);
2180
- /* @__NO_SIDE_EFFECTS__ */
2205
+ /*@__NO_SIDE_EFFECTS__*/
2181
2206
  function computed$1(getterOrOptions, debugOptions, isSSR = false) {
2182
2207
  let getter;
2183
2208
  let setter;
@@ -2255,25 +2280,26 @@ var WatcherEffect = class extends ReactiveEffect {
2255
2280
  else if (isFunction(s)) return call ? call(s, 2) : s();
2256
2281
  else warnInvalidSource(s, onWarn);
2257
2282
  });
2258
- } else if (isFunction(source)) if (cb) getter = call ? () => call(source, 2) : source;
2259
- else getter = () => {
2260
- if (this.cleanupsLength) {
2261
- const prevSub = setActiveSub();
2283
+ } else if (isFunction(source)) {
2284
+ if (cb) getter = call ? () => call(source, 2) : source;
2285
+ else getter = () => {
2286
+ if (this.cleanupsLength) {
2287
+ const prevSub = setActiveSub();
2288
+ try {
2289
+ cleanup(this);
2290
+ } finally {
2291
+ setActiveSub(prevSub);
2292
+ }
2293
+ }
2294
+ const currentEffect = activeWatcher;
2295
+ activeWatcher = this;
2262
2296
  try {
2263
- cleanup(this);
2297
+ return call ? call(source, 3, [this.boundCleanup]) : source(this.boundCleanup);
2264
2298
  } finally {
2265
- setActiveSub(prevSub);
2299
+ activeWatcher = currentEffect;
2266
2300
  }
2267
- }
2268
- const currentEffect = activeWatcher;
2269
- activeWatcher = this;
2270
- try {
2271
- return call ? call(source, 3, [this.boundCleanup]) : source(this.boundCleanup);
2272
- } finally {
2273
- activeWatcher = currentEffect;
2274
- }
2275
- };
2276
- else {
2301
+ };
2302
+ } else {
2277
2303
  getter = NOOP;
2278
2304
  warnInvalidSource(source, onWarn);
2279
2305
  }
@@ -2597,7 +2623,7 @@ let currentFlushPromise = null;
2597
2623
  let jobsLength = 0;
2598
2624
  let flushIndex = 0;
2599
2625
  let postFlushIndex = 0;
2600
- const resolvedPromise = /* @__PURE__ */ Promise.resolve();
2626
+ const resolvedPromise = /*@__PURE__*/ Promise.resolve();
2601
2627
  const RECURSION_LIMIT = 100;
2602
2628
  function nextTick(fn) {
2603
2629
  const p = currentFlushPromise || resolvedPromise;
@@ -2636,6 +2662,7 @@ const doFlushJobs = () => {
2636
2662
  flushJobs();
2637
2663
  } catch (e) {
2638
2664
  currentFlushPromise = null;
2665
+ if (jobsLength || postJobs.length) queueFlush();
2639
2666
  throw e;
2640
2667
  }
2641
2668
  };
@@ -2643,9 +2670,10 @@ function queueFlush() {
2643
2670
  if (!currentFlushPromise) currentFlushPromise = resolvedPromise.then(doFlushJobs);
2644
2671
  }
2645
2672
  function queuePostFlushCb(jobs, id = Infinity) {
2646
- if (!isArray(jobs)) if (activePostJobs && id === -1) activePostJobs.splice(postFlushIndex, 0, jobs);
2647
- else queueJobWorker(jobs, id, postJobs, postJobs.length, 0);
2648
- else for (let i = 0; i < jobs.length; i++) queueJobWorker(jobs[i], id, postJobs, postJobs.length, 0);
2673
+ if (!isArray(jobs)) {
2674
+ if (activePostJobs && id === -1) activePostJobs.splice(postFlushIndex, 0, jobs);
2675
+ else queueJobWorker(jobs, id, postJobs, postJobs.length, 0);
2676
+ } else for (let i = 0; i < jobs.length; i++) queueJobWorker(jobs[i], id, postJobs, postJobs.length, 0);
2649
2677
  queueFlush();
2650
2678
  }
2651
2679
  function flushPreFlushCbs(instance, seen) {
@@ -2659,8 +2687,11 @@ function flushPreFlushCbs(instance, seen) {
2659
2687
  i--;
2660
2688
  jobsLength--;
2661
2689
  if (cb.flags & 2) cb.flags &= -2;
2662
- cb();
2663
- if (!(cb.flags & 2)) cb.flags &= -2;
2690
+ try {
2691
+ cb();
2692
+ } finally {
2693
+ if (!(cb.flags & 2)) cb.flags &= -2;
2694
+ }
2664
2695
  }
2665
2696
  }
2666
2697
  function flushPostFlushCbs(seen) {
@@ -2673,18 +2704,22 @@ function flushPostFlushCbs(seen) {
2673
2704
  activePostJobs = postJobs;
2674
2705
  postJobs = [];
2675
2706
  seen = seen || /* @__PURE__ */ new Map();
2676
- while (postFlushIndex < activePostJobs.length) {
2677
- const cb = activePostJobs[postFlushIndex++];
2678
- if (checkRecursiveUpdates(seen, cb)) continue;
2679
- if (cb.flags & 2) cb.flags &= -2;
2680
- if (!(cb.flags & 4)) try {
2681
- cb();
2682
- } finally {
2683
- cb.flags &= -2;
2707
+ try {
2708
+ while (postFlushIndex < activePostJobs.length) {
2709
+ const cb = activePostJobs[postFlushIndex++];
2710
+ if (checkRecursiveUpdates(seen, cb)) continue;
2711
+ if (cb.flags & 2) cb.flags &= -2;
2712
+ if (!(cb.flags & 4)) try {
2713
+ cb();
2714
+ } finally {
2715
+ if (!(cb.flags & 2)) cb.flags &= -2;
2716
+ }
2684
2717
  }
2718
+ } finally {
2719
+ while (postFlushIndex < activePostJobs.length) activePostJobs[postFlushIndex++].flags &= -2;
2720
+ activePostJobs = null;
2721
+ postFlushIndex = 0;
2685
2722
  }
2686
- activePostJobs = null;
2687
- postFlushIndex = 0;
2688
2723
  }
2689
2724
  }
2690
2725
  let isFlushing = false;
@@ -2694,9 +2729,12 @@ let isFlushing = false;
2694
2729
  function flushOnAppMount(instance) {
2695
2730
  if (!isFlushing) {
2696
2731
  isFlushing = true;
2697
- flushPreFlushCbs(instance);
2698
- flushPostFlushCbs();
2699
- isFlushing = false;
2732
+ try {
2733
+ flushPreFlushCbs(instance);
2734
+ flushPostFlushCbs();
2735
+ } finally {
2736
+ isFlushing = false;
2737
+ }
2700
2738
  }
2701
2739
  }
2702
2740
  function flushJobs(seen) {
@@ -2726,8 +2764,8 @@ function flushJobs(seen) {
2726
2764
  jobsLength = 0;
2727
2765
  jobs.length = 0;
2728
2766
  flushPostFlushCbs(seen);
2729
- currentFlushPromise = null;
2730
2767
  if (jobsLength || postJobs.length) flushJobs(seen);
2768
+ else currentFlushPromise = null;
2731
2769
  }
2732
2770
  }
2733
2771
  function checkRecursiveUpdates(seen, fn) {
@@ -2758,6 +2796,19 @@ getGlobalThis().__VUE_HMR_RUNTIME__ = {
2758
2796
  rerender: tryWrap(rerender),
2759
2797
  reload: tryWrap(reload)
2760
2798
  };
2799
+ function runWithHmrUpdating(fn) {
2800
+ isHmrUpdating = true;
2801
+ let done = false;
2802
+ try {
2803
+ fn();
2804
+ done = true;
2805
+ } finally {
2806
+ if (done) nextTick(() => {
2807
+ isHmrUpdating = false;
2808
+ });
2809
+ else isHmrUpdating = false;
2810
+ }
2811
+ }
2761
2812
  const map = /* @__PURE__ */ new Map();
2762
2813
  function registerHMR(instance) {
2763
2814
  const id = instance.type.__hmrId;
@@ -2799,18 +2850,16 @@ function rerender(id, newRender) {
2799
2850
  instance.render = newRender;
2800
2851
  normalizeClassComponent(instance.type).render = newRender;
2801
2852
  }
2802
- isHmrUpdating = true;
2803
- if (instance.vapor) {
2804
- if (!instance.isUnmounted) instance.hmrRerender();
2805
- } else {
2806
- const i = instance;
2807
- if (!(i.effect.flags & 1024)) {
2808
- i.renderCache = [];
2809
- i.effect.run();
2853
+ runWithHmrUpdating(() => {
2854
+ if (instance.vapor) {
2855
+ if (!instance.isUnmounted) instance.hmrRerender();
2856
+ } else {
2857
+ const i = instance;
2858
+ if (!(i.effect.flags & 1024)) {
2859
+ i.renderCache = [];
2860
+ i.effect.run();
2861
+ }
2810
2862
  }
2811
- }
2812
- nextTick(() => {
2813
- isHmrUpdating = false;
2814
2863
  });
2815
2864
  });
2816
2865
  }
@@ -2825,15 +2874,17 @@ function reload(id, newComp) {
2825
2874
  for (const instance of instances) if (instance.root && instance.root.ce && instance !== instance.root) instance.root.ce._removeChildStyle(instance.type);
2826
2875
  const dirtyInstances = new Set(instances);
2827
2876
  const rerenderedParents = /* @__PURE__ */ new Set();
2828
- for (const instance of instances) {
2829
- const parent = instance.parent;
2830
- if (parent) {
2831
- if (!hasDirtyAncestor(instance, dirtyInstances) && !rerenderedParents.has(parent)) {
2832
- rerenderedParents.add(parent);
2833
- parent.hmrRerender();
2834
- }
2835
- } else instance.hmrReload(newComp);
2836
- }
2877
+ runWithHmrUpdating(() => {
2878
+ for (const instance of instances) {
2879
+ const parent = instance.parent;
2880
+ if (parent) {
2881
+ if (!hasDirtyAncestor(instance, dirtyInstances) && !rerenderedParents.has(parent)) {
2882
+ rerenderedParents.add(parent);
2883
+ parent.hmrRerender();
2884
+ }
2885
+ } else instance.hmrReload(newComp);
2886
+ }
2887
+ });
2837
2888
  } else {
2838
2889
  const parentUpdates = /* @__PURE__ */ new Map();
2839
2890
  const dirtyInstanceSet = new Set(instances);
@@ -2867,21 +2918,22 @@ function reload(id, newComp) {
2867
2918
  }
2868
2919
  parentUpdates.forEach((updates, parent) => {
2869
2920
  queueJob(() => {
2870
- isHmrUpdating = true;
2871
- if (parent.vapor) parent.hmrRerender();
2872
- else {
2873
- const i = parent;
2874
- if (!(i.effect.flags & 1024)) {
2875
- i.renderCache = [];
2876
- i.effect.run();
2877
- }
2921
+ try {
2922
+ runWithHmrUpdating(() => {
2923
+ if (parent.vapor) parent.hmrRerender();
2924
+ else {
2925
+ const i = parent;
2926
+ if (!(i.effect.flags & 1024)) {
2927
+ i.renderCache = [];
2928
+ i.effect.run();
2929
+ }
2930
+ }
2931
+ });
2932
+ } finally {
2933
+ updates.forEach(([instance, dirtyInstances]) => {
2934
+ dirtyInstances.delete(instance);
2935
+ });
2878
2936
  }
2879
- nextTick(() => {
2880
- isHmrUpdating = false;
2881
- });
2882
- updates.forEach(([instance, dirtyInstances]) => {
2883
- dirtyInstances.delete(instance);
2884
- });
2885
2937
  });
2886
2938
  });
2887
2939
  }
@@ -2950,20 +3002,20 @@ function devtoolsInitApp(app, version) {
2950
3002
  function devtoolsUnmountApp(app) {
2951
3003
  emit$2("app:unmount", app);
2952
3004
  }
2953
- const devtoolsComponentAdded = /* @__PURE__ */ createDevtoolsComponentHook("component:added");
2954
- const devtoolsComponentUpdated = /* @__PURE__ */ createDevtoolsComponentHook("component:updated");
2955
- const _devtoolsComponentRemoved = /* @__PURE__ */ createDevtoolsComponentHook("component:removed");
3005
+ const devtoolsComponentAdded = /*@__PURE__*/ createDevtoolsComponentHook("component:added");
3006
+ const devtoolsComponentUpdated = /*@__PURE__*/ createDevtoolsComponentHook("component:updated");
3007
+ const _devtoolsComponentRemoved = /*@__PURE__*/ createDevtoolsComponentHook("component:removed");
2956
3008
  const devtoolsComponentRemoved = (component) => {
2957
3009
  if (devtools$1 && typeof devtools$1.cleanupBuffer === "function" && !devtools$1.cleanupBuffer(component)) _devtoolsComponentRemoved(component);
2958
3010
  };
2959
- /* @__NO_SIDE_EFFECTS__ */
3011
+ /*@__NO_SIDE_EFFECTS__*/
2960
3012
  function createDevtoolsComponentHook(hook) {
2961
3013
  return (component) => {
2962
3014
  emit$2(hook, component.appContext.app, component.uid, component.parent ? component.parent.uid : void 0, component);
2963
3015
  };
2964
3016
  }
2965
- const devtoolsPerfStart = /* @__PURE__ */ createDevtoolsPerformanceHook("perf:start");
2966
- const devtoolsPerfEnd = /* @__PURE__ */ createDevtoolsPerformanceHook("perf:end");
3017
+ const devtoolsPerfStart = /*@__PURE__*/ createDevtoolsPerformanceHook("perf:start");
3018
+ const devtoolsPerfEnd = /*@__PURE__*/ createDevtoolsPerformanceHook("perf:end");
2967
3019
  function createDevtoolsPerformanceHook(hook) {
2968
3020
  return (component, type, time) => {
2969
3021
  emit$2(hook, component.appContext.app, component.uid, component, type, time);
@@ -3192,7 +3244,7 @@ function configureCompat(config) {
3192
3244
  validateCompatConfig(config);
3193
3245
  extend(globalCompatConfig, config);
3194
3246
  }
3195
- const seenConfigObjects = /* @__PURE__ */ new WeakSet();
3247
+ const seenConfigObjects = /*@__PURE__*/ new WeakSet();
3196
3248
  const warnedInvalidKeys = {};
3197
3249
  function validateCompatConfig(config, instance) {
3198
3250
  if (seenConfigObjects.has(config)) return;
@@ -3244,7 +3296,7 @@ function checkCompatEnabled$1(key, instance, ...args) {
3244
3296
  }
3245
3297
  //#endregion
3246
3298
  //#region packages/runtime-core/src/compat/instanceEventEmitter.ts
3247
- const eventRegistryMap = /* @__PURE__ */ new WeakMap();
3299
+ const eventRegistryMap = /*@__PURE__*/ new WeakMap();
3248
3300
  function getRegistry(instance) {
3249
3301
  let events = eventRegistryMap.get(instance);
3250
3302
  if (!events) eventRegistryMap.set(instance, events = Object.create(null));
@@ -3378,19 +3430,21 @@ const legacyDirectiveHookMap = {
3378
3430
  };
3379
3431
  function mapCompatDirectiveHook(name, dir, instance) {
3380
3432
  const mappedName = legacyDirectiveHookMap[name];
3381
- if (mappedName) if (isArray(mappedName)) {
3382
- const hook = [];
3383
- mappedName.forEach((mapped) => {
3384
- const mappedHook = dir[mapped];
3385
- if (mappedHook) {
3386
- softAssertCompatEnabled("CUSTOM_DIR", instance, mapped, name);
3387
- hook.push(mappedHook);
3388
- }
3389
- });
3390
- return hook.length ? hook : void 0;
3391
- } else {
3392
- if (dir[mappedName]) softAssertCompatEnabled("CUSTOM_DIR", instance, mappedName, name);
3393
- return dir[mappedName];
3433
+ if (mappedName) {
3434
+ if (isArray(mappedName)) {
3435
+ const hook = [];
3436
+ mappedName.forEach((mapped) => {
3437
+ const mappedHook = dir[mapped];
3438
+ if (mappedHook) {
3439
+ softAssertCompatEnabled("CUSTOM_DIR", instance, mapped, name);
3440
+ hook.push(mappedHook);
3441
+ }
3442
+ });
3443
+ return hook.length ? hook : void 0;
3444
+ } else {
3445
+ if (dir[mappedName]) softAssertCompatEnabled("CUSTOM_DIR", instance, mappedName, name);
3446
+ return dir[mappedName];
3447
+ }
3394
3448
  }
3395
3449
  }
3396
3450
  //#endregion
@@ -3597,15 +3651,16 @@ const isTargetSVG = (target) => typeof SVGElement !== "undefined" && target inst
3597
3651
  const isTargetMathML = (target) => typeof MathMLElement === "function" && target instanceof MathMLElement;
3598
3652
  const resolveTarget = (props, select) => {
3599
3653
  const targetSelector = props && props.to;
3600
- if (isString(targetSelector)) if (!select) {
3601
- warn$1("Current renderer does not support string target for Teleports. (missing querySelector renderer option)");
3602
- return null;
3654
+ if (isString(targetSelector)) {
3655
+ if (!select) {
3656
+ warn$1("Current renderer does not support string target for Teleports. (missing querySelector renderer option)");
3657
+ return null;
3658
+ } else {
3659
+ const target = select(targetSelector);
3660
+ if (!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.`);
3661
+ return target;
3662
+ }
3603
3663
  } else {
3604
- const target = select(targetSelector);
3605
- if (!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.`);
3606
- return target;
3607
- }
3608
- else {
3609
3664
  if (!targetSelector && !isTeleportDisabled(props)) warn$1(`Invalid Teleport target: ${targetSelector}`);
3610
3665
  return targetSelector;
3611
3666
  }
@@ -3643,7 +3698,8 @@ const TeleportImpl = {
3643
3698
  if (pendingMounts.get(vnode) !== mountJob) return;
3644
3699
  pendingMounts.delete(vnode);
3645
3700
  if (isTeleportDisabled(vnode.props)) {
3646
- mount(vnode, parentNode(vnode.el) || container, vnode.anchor);
3701
+ const mountContainer = parentNode(vnode.el) || container;
3702
+ mount(vnode, mountContainer, vnode.anchor);
3647
3703
  updateCssVars(vnode, true);
3648
3704
  }
3649
3705
  mountToTarget(vnode);
@@ -3752,15 +3808,17 @@ function hydrateTeleport(node, vnode, parentComponent, parentSuspense, slotScope
3752
3808
  const disabled = isTeleportDisabled(vnode.props);
3753
3809
  if (target) {
3754
3810
  const targetNode = target._lpa || target.firstChild;
3755
- if (vnode.shapeFlag & 16) if (disabled) {
3756
- hydrateDisabledTeleport(node, vnode);
3757
- hydrateAnchor(target, targetNode);
3758
- if (!vnode.targetAnchor) prepareAnchor(target, vnode, createText, insert, parentNode(node) === target ? node : null);
3759
- } else {
3760
- vnode.anchor = nextSibling(node);
3761
- hydrateAnchor(target, targetNode);
3762
- if (!vnode.targetAnchor) prepareAnchor(target, vnode, createText, insert);
3763
- hydrateChildren(targetNode && nextSibling(targetNode), vnode, target, parentComponent, parentSuspense, slotScopeIds, optimized);
3811
+ if (vnode.shapeFlag & 16) {
3812
+ if (disabled) {
3813
+ hydrateDisabledTeleport(node, vnode);
3814
+ hydrateAnchor(target, targetNode);
3815
+ if (!vnode.targetAnchor) prepareAnchor(target, vnode, createText, insert, parentNode(node) === target ? node : null);
3816
+ } else {
3817
+ vnode.anchor = nextSibling(node);
3818
+ hydrateAnchor(target, targetNode);
3819
+ if (!vnode.targetAnchor) prepareAnchor(target, vnode, createText, insert);
3820
+ hydrateChildren(targetNode && nextSibling(targetNode), vnode, target, parentComponent, parentSuspense, slotScopeIds, optimized);
3821
+ }
3764
3822
  }
3765
3823
  updateCssVars(vnode, disabled);
3766
3824
  } else if (disabled) {
@@ -3927,8 +3985,10 @@ function baseResolveTransitionHooks(context, props, state, instance) {
3927
3985
  persisted,
3928
3986
  beforeEnter(el) {
3929
3987
  let hook = onBeforeEnter;
3930
- if (!state.isMounted) if (appear) hook = onBeforeAppear || onBeforeEnter;
3931
- else return;
3988
+ if (!state.isMounted) {
3989
+ if (appear) hook = onBeforeAppear || onBeforeEnter;
3990
+ else return;
3991
+ }
3932
3992
  if (el[leaveCbKey]) el[leaveCbKey](true);
3933
3993
  earlyRemove();
3934
3994
  callHook(hook, [el]);
@@ -3938,11 +3998,13 @@ function baseResolveTransitionHooks(context, props, state, instance) {
3938
3998
  let hook = onEnter;
3939
3999
  let afterHook = onAfterEnter;
3940
4000
  let cancelHook = onEnterCancelled;
3941
- if (!state.isMounted) if (appear) {
3942
- hook = onAppear || onEnter;
3943
- afterHook = onAfterAppear || onAfterEnter;
3944
- cancelHook = onAppearCancelled || onEnterCancelled;
3945
- } else return;
4001
+ if (!state.isMounted) {
4002
+ if (appear) {
4003
+ hook = onAppear || onEnter;
4004
+ afterHook = onAfterAppear || onAfterEnter;
4005
+ cancelHook = onAppearCancelled || onEnterCancelled;
4006
+ } else return;
4007
+ }
3946
4008
  let called = false;
3947
4009
  el[enterCbKey$1] = (cancelled) => {
3948
4010
  if (called) return;
@@ -4108,9 +4170,9 @@ function checkTransitionMode(mode) {
4108
4170
  }
4109
4171
  //#endregion
4110
4172
  //#region packages/runtime-core/src/apiDefineComponent.ts
4111
- /* @__NO_SIDE_EFFECTS__ */
4173
+ /*@__NO_SIDE_EFFECTS__*/
4112
4174
  function defineComponent(options, extraOptions) {
4113
- return isFunction(options) ? extend({ name: options.name }, extraOptions, { setup: options }) : options;
4175
+ return isFunction(options) ? /*@__PURE__*/ (() => extend({ name: options.name }, extraOptions, { setup: options }))() : options;
4114
4176
  }
4115
4177
  //#endregion
4116
4178
  //#region packages/runtime-core/src/helpers/useId.ts
@@ -4207,15 +4269,16 @@ function setRef(rawRef, oldRawRef, parentSuspense, vnode, isUnmount = false) {
4207
4269
  if (rawRef.f) {
4208
4270
  const existing = _isString ? canSetSetupRef(ref) ? setupState[ref] : refs[ref] : canSetRef(ref) || !rawRef.k ? ref.value : refs[rawRef.k];
4209
4271
  if (isUnmount) isArray(existing) && remove(existing, refValue);
4210
- else if (!isArray(existing)) if (_isString) {
4211
- refs[ref] = [refValue];
4212
- if (canSetSetupRef(ref)) setupState[ref] = refs[ref];
4213
- } else {
4214
- const newVal = [refValue];
4215
- if (canSetRef(ref, rawRef.k)) ref.value = newVal;
4216
- if (rawRef.k) refs[rawRef.k] = newVal;
4217
- }
4218
- else if (!existing.includes(refValue)) existing.push(refValue);
4272
+ else if (!isArray(existing)) {
4273
+ if (_isString) {
4274
+ refs[ref] = [refValue];
4275
+ if (canSetSetupRef(ref)) setupState[ref] = refs[ref];
4276
+ } else {
4277
+ const newVal = [refValue];
4278
+ if (canSetRef(ref, rawRef.k)) ref.value = newVal;
4279
+ if (rawRef.k) refs[rawRef.k] = newVal;
4280
+ }
4281
+ } else if (!existing.includes(refValue)) existing.push(refValue);
4219
4282
  } else if (_isString) {
4220
4283
  refs[ref] = value;
4221
4284
  if (canSetSetupRef(ref)) setupState[ref] = value;
@@ -4316,11 +4379,12 @@ function createHydrationFunctions(rendererInternals) {
4316
4379
  let nextNode = null;
4317
4380
  switch (type) {
4318
4381
  case Text:
4319
- if (domType !== 3) if (vnode.children === "") {
4320
- insert(vnode.el = createText(""), parentNode(node), node);
4321
- nextNode = node;
4322
- } else nextNode = onMismatch();
4323
- else {
4382
+ if (domType !== 3) {
4383
+ if (vnode.children === "") {
4384
+ insert(vnode.el = createText(""), parentNode(node), node);
4385
+ nextNode = node;
4386
+ } else nextNode = onMismatch();
4387
+ } else {
4324
4388
  if (node.data !== vnode.children) {
4325
4389
  warn$1(`Hydration text mismatch in`, node.parentNode, `\n - rendered on server: ${JSON.stringify(node.data)}\n - expected on client: ${JSON.stringify(vnode.children)}`);
4326
4390
  logMismatchError();
@@ -4359,9 +4423,10 @@ function createHydrationFunctions(rendererInternals) {
4359
4423
  case VaporSlot:
4360
4424
  nextNode = getVaporInterface(parentComponent, vnode).hydrateSlot(vnode, node, parentComponent, parentSuspense, slotScopeIds);
4361
4425
  break;
4362
- default: if (shapeFlag & 1) if ((domType !== 1 || vnode.type.toLowerCase() !== node.tagName.toLowerCase()) && !isTemplateNode$1(node)) nextNode = onMismatch();
4363
- else nextNode = hydrateElement(node, vnode, parentComponent, parentSuspense, slotScopeIds, optimized);
4364
- else if (shapeFlag & 6) {
4426
+ default: if (shapeFlag & 1) {
4427
+ if ((domType !== 1 || vnode.type.toLowerCase() !== node.tagName.toLowerCase()) && !isTemplateNode$1(node)) nextNode = onMismatch();
4428
+ else nextNode = hydrateElement(node, vnode, parentComponent, parentSuspense, slotScopeIds, optimized);
4429
+ } else if (shapeFlag & 6) {
4365
4430
  vnode.slotScopeIds = slotScopeIds;
4366
4431
  const container = parentNode(node);
4367
4432
  if (isFragmentStart) nextNode = locateClosingAnchor(node);
@@ -4383,19 +4448,20 @@ function createHydrationFunctions(rendererInternals) {
4383
4448
  } else {
4384
4449
  mountComponent(vnode, container, null, parentComponent, parentSuspense, getContainerType(container), optimized);
4385
4450
  const component = vnode.component;
4386
- if (isAsyncWrapper(vnode) && !vnode.type.__asyncResolved || component.asyncDep && !component.asyncResolved) {
4451
+ if (!component.subTree && (isAsyncWrapper(vnode) || component.asyncDep && !component.asyncResolved)) {
4387
4452
  let subTree;
4388
4453
  if (isFragmentStart) {
4389
- subTree = createVNode(Fragment);
4454
+ subTree = createVNode(Static);
4390
4455
  subTree.anchor = nextNode ? nextNode.previousSibling : container.lastChild;
4391
4456
  } else subTree = node.nodeType === 3 ? createTextVNode("") : createVNode("div");
4392
4457
  subTree.el = node;
4393
4458
  component.subTree = subTree;
4394
4459
  }
4395
4460
  }
4396
- } else if (shapeFlag & 64) if (domType !== 8) nextNode = onMismatch();
4397
- else nextNode = vnode.type.hydrate(node, vnode, parentComponent, parentSuspense, slotScopeIds, optimized, rendererInternals, hydrateChildren);
4398
- else if (shapeFlag & 128) nextNode = vnode.type.hydrate(node, vnode, parentComponent, parentSuspense, getContainerType(parentNode(node)), slotScopeIds, optimized, rendererInternals, hydrateNode);
4461
+ } else if (shapeFlag & 64) {
4462
+ if (domType !== 8) nextNode = onMismatch();
4463
+ else nextNode = vnode.type.hydrate(node, vnode, parentComponent, parentSuspense, slotScopeIds, optimized, rendererInternals, hydrateChildren);
4464
+ } else if (shapeFlag & 128) nextNode = vnode.type.hydrate(node, vnode, parentComponent, parentSuspense, getContainerType(parentNode(node)), slotScopeIds, optimized, rendererInternals, hydrateNode);
4399
4465
  else warn$1("Invalid HostVNode type:", type, `(${typeof type})`);
4400
4466
  }
4401
4467
  if (ref != null) setRef(ref, null, parentSuspense, vnode);
@@ -4536,8 +4602,10 @@ function createHydrationFunctions(rendererInternals) {
4536
4602
  node = nextSibling(node);
4537
4603
  if (node && isComment(node)) {
4538
4604
  if (node.data === open) match++;
4539
- if (node.data === close) if (match === 0) return nextSibling(node);
4540
- else match--;
4605
+ if (node.data === close) {
4606
+ if (match === 0) return nextSibling(node);
4607
+ else match--;
4608
+ }
4541
4609
  }
4542
4610
  }
4543
4611
  return node;
@@ -4559,7 +4627,7 @@ const isTemplateNode$1 = (node) => {
4559
4627
  /**
4560
4628
  * Dev only
4561
4629
  */
4562
- const resourceProps = /* @__PURE__ */ new Set([
4630
+ const resourceProps = /*@__PURE__*/ new Set([
4563
4631
  "src",
4564
4632
  "srcset",
4565
4633
  "href",
@@ -4801,7 +4869,7 @@ function forEachElement(node, cb) {
4801
4869
  //#endregion
4802
4870
  //#region packages/runtime-core/src/apiAsyncComponent.ts
4803
4871
  const isAsyncWrapper = (i) => !!i.type.__asyncLoader;
4804
- /* @__NO_SIDE_EFFECTS__ */
4872
+ /*@__NO_SIDE_EFFECTS__*/
4805
4873
  function defineAsyncComponent(source) {
4806
4874
  const { load, getResolvedComp, setPendingRequest, source: { loadingComponent, errorComponent, delay, hydrate: hydrateStrategy, timeout, suspensible = true } } = createAsyncComponentContext(source);
4807
4875
  return /* @__PURE__ */ defineComponent({
@@ -5020,10 +5088,13 @@ const KeepAliveImpl = {
5020
5088
  });
5021
5089
  let pendingCacheKey = null;
5022
5090
  const cacheSubtree = () => {
5023
- if (pendingCacheKey != null) if (isSuspense(keepAliveInstance.subTree.type)) queuePostRenderEffect(() => {
5024
- cache.set(pendingCacheKey, getInnerChild(keepAliveInstance.subTree));
5025
- }, void 0, keepAliveInstance.subTree.suspense);
5026
- else cache.set(pendingCacheKey, getInnerChild(keepAliveInstance.subTree));
5091
+ if (pendingCacheKey != null) {
5092
+ if (isSuspense(keepAliveInstance.subTree.type)) queuePostRenderEffect(() => {
5093
+ const vnode = getInnerChild(keepAliveInstance.subTree);
5094
+ if (vnode.component) cache.set(pendingCacheKey, vnode);
5095
+ }, void 0, keepAliveInstance.subTree.suspense);
5096
+ else cache.set(pendingCacheKey, getInnerChild(keepAliveInstance.subTree));
5097
+ }
5027
5098
  };
5028
5099
  onMounted(cacheSubtree);
5029
5100
  onUpdated(cacheSubtree);
@@ -5094,7 +5165,7 @@ const decorate$2 = (t) => {
5094
5165
  t.__isBuiltIn = true;
5095
5166
  return t;
5096
5167
  };
5097
- const KeepAlive = /* @__PURE__ */ decorate$2(KeepAliveImpl);
5168
+ const KeepAlive = /*@__PURE__*/ decorate$2(KeepAliveImpl);
5098
5169
  function matches(pattern, name) {
5099
5170
  if (isArray(pattern)) return pattern.some((p) => matches(p, name));
5100
5171
  else if (isString(pattern)) return pattern.split(",").includes(name);
@@ -5310,16 +5381,17 @@ function compatH(type, propsOrChildren, children) {
5310
5381
  }
5311
5382
  const l = arguments.length;
5312
5383
  const is2ndArgArrayChildren = isArray(propsOrChildren);
5313
- if (l === 2 || is2ndArgArrayChildren) if (isObject(propsOrChildren) && !is2ndArgArrayChildren) {
5314
- if (isVNode(propsOrChildren)) return convertLegacySlots(createVNode(type, null, [propsOrChildren]));
5315
- return convertLegacySlots(convertLegacyDirectives(createVNode(type, convertLegacyProps(propsOrChildren, type)), propsOrChildren));
5316
- } else return convertLegacySlots(createVNode(type, null, propsOrChildren));
5317
- else {
5384
+ if (l === 2 || is2ndArgArrayChildren) {
5385
+ if (isObject(propsOrChildren) && !is2ndArgArrayChildren) {
5386
+ if (isVNode(propsOrChildren)) return convertLegacySlots(createVNode(type, null, [propsOrChildren]));
5387
+ return convertLegacySlots(convertLegacyDirectives(createVNode(type, convertLegacyProps(propsOrChildren, type)), propsOrChildren));
5388
+ } else return convertLegacySlots(createVNode(type, null, propsOrChildren));
5389
+ } else {
5318
5390
  if (isVNode(children)) children = [children];
5319
5391
  return convertLegacySlots(convertLegacyDirectives(createVNode(type, convertLegacyProps(propsOrChildren, type), children), propsOrChildren));
5320
5392
  }
5321
5393
  }
5322
- const skipLegacyRootLevelProps = /* @__PURE__ */ makeMap("staticStyle,staticClass,directives,model,hook");
5394
+ const skipLegacyRootLevelProps = /*@__PURE__*/ makeMap("staticStyle,staticClass,directives,model,hook");
5323
5395
  function convertLegacyProps(legacyProps, type) {
5324
5396
  if (!legacyProps) return null;
5325
5397
  const converted = {};
@@ -5331,8 +5403,10 @@ function convertLegacyProps(legacyProps, type) {
5331
5403
  if (key === "nativeOn") handlerKey += `Native`;
5332
5404
  const existing = converted[handlerKey];
5333
5405
  const incoming = listeners[event];
5334
- if (existing !== incoming) if (existing) converted[handlerKey] = [].concat(existing, incoming);
5335
- else converted[handlerKey] = incoming;
5406
+ if (existing !== incoming) {
5407
+ if (existing) converted[handlerKey] = [].concat(existing, incoming);
5408
+ else converted[handlerKey] = incoming;
5409
+ }
5336
5410
  }
5337
5411
  } else if (!skipLegacyRootLevelProps(key)) converted[key] = legacyProps[key];
5338
5412
  if (legacyProps.staticClass) converted.class = normalizeClass([legacyProps.staticClass, converted.class]);
@@ -5431,7 +5505,7 @@ function convertLegacyFunctionalComponent(comp) {
5431
5505
  const legacyFn = comp.render;
5432
5506
  const Func = (props, ctx) => {
5433
5507
  const instance = getCurrentInstance();
5434
- return legacyFn(compatH, {
5508
+ const legacyCtx = {
5435
5509
  props,
5436
5510
  children: instance.vnode.children || [],
5437
5511
  data: instance.vnode.props || {},
@@ -5451,7 +5525,8 @@ function convertLegacyFunctionalComponent(comp) {
5451
5525
  }
5452
5526
  return {};
5453
5527
  }
5454
- });
5528
+ };
5529
+ return legacyFn(compatH, legacyCtx);
5455
5530
  };
5456
5531
  Func.props = comp.props;
5457
5532
  Func.displayName = comp.name;
@@ -5480,23 +5555,25 @@ function renderList(source, renderItem, cache, index) {
5480
5555
  }
5481
5556
  ret = new Array(source.length);
5482
5557
  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]);
5483
- } else if (typeof source === "number") if (!Number.isInteger(source) || source < 0) {
5484
- warn$1(`The v-for range expects a positive integer value but got ${source}.`);
5485
- ret = [];
5486
- } else {
5487
- ret = new Array(source);
5488
- for (let i = 0; i < source; i++) ret[i] = renderItem(i + 1, i, void 0, cached && cached[i]);
5489
- }
5490
- else if (isObject(source)) if (source[Symbol.iterator]) ret = Array.from(source, (item, i) => renderItem(item, i, void 0, cached && cached[i]));
5491
- else {
5492
- const keys = Object.keys(source);
5493
- ret = new Array(keys.length);
5494
- for (let i = 0, l = keys.length; i < l; i++) {
5495
- const key = keys[i];
5496
- ret[i] = renderItem(source[key], key, i, cached && cached[i]);
5558
+ } else if (typeof source === "number") {
5559
+ if (!Number.isInteger(source) || source < 0) {
5560
+ warn$1(`The v-for range expects a positive integer value but got ${source}.`);
5561
+ ret = [];
5562
+ } else {
5563
+ ret = new Array(source);
5564
+ for (let i = 0; i < source; i++) ret[i] = renderItem(i + 1, i, void 0, cached && cached[i]);
5497
5565
  }
5498
- }
5499
- else ret = [];
5566
+ } else if (isObject(source)) {
5567
+ if (source[Symbol.iterator]) ret = Array.from(source, (item, i) => renderItem(item, i, void 0, cached && cached[i]));
5568
+ else {
5569
+ const keys = Object.keys(source);
5570
+ ret = new Array(keys.length);
5571
+ for (let i = 0, l = keys.length; i < l; i++) {
5572
+ const key = keys[i];
5573
+ ret[i] = renderItem(source[key], key, i, cached && cached[i]);
5574
+ }
5575
+ }
5576
+ } else ret = [];
5500
5577
  if (cache) cache[index] = ret;
5501
5578
  return ret;
5502
5579
  }
@@ -5521,14 +5598,27 @@ function createSlots(slots, dynamicSlots) {
5521
5598
  //#endregion
5522
5599
  //#region packages/runtime-core/src/helpers/renderSlot.ts
5523
5600
  /**
5601
+ * Links a slot function to its raw vapor slot: a raw vapor slot carries
5602
+ * itself, and the wrapper the interop slots proxy hands out carries the raw
5603
+ * slot it wraps — one lookup answers both "is this a vapor slot" and
5604
+ * "which one". Internal to vapor interop.
5605
+ */
5606
+ const rawVaporSlotKey = Symbol(`rawVaporSlot`);
5607
+ /**
5608
+ * Marks a compiler-generated slot fallback as VDOM-rendered so the vapor
5609
+ * interop fallback chain renders it through the VDOM renderer. Internal to
5610
+ * vapor interop.
5611
+ */
5612
+ const vdomSlotFallbackKey = Symbol(`vdomSlotFallback`);
5613
+ /**
5524
5614
  * Compiler runtime helper for rendering `<slot/>`
5525
5615
  * @private
5526
5616
  */
5527
5617
  function renderSlot(slots, name, props, fallback, noSlotted, branchKey) {
5528
5618
  if (props == null) props = {};
5529
5619
  let slot = slots[name];
5530
- if (fallback) fallback.__vdom = true;
5531
- const vaporSlot = slot && (slot.__vs || (slot.__vapor ? slot : null));
5620
+ if (fallback) fallback[vdomSlotFallbackKey] = true;
5621
+ const vaporSlot = slot && slot[rawVaporSlotKey];
5532
5622
  if (vaporSlot) {
5533
5623
  const ret = (openBlock(), createBlock(VaporSlot, props));
5534
5624
  ret.vs = {
@@ -5636,12 +5726,14 @@ function legacyResolveScopedSlots(fns, raw, hasDynamicKeys) {
5636
5726
  function mapKeyToName(slots) {
5637
5727
  for (let i = 0; i < slots.length; i++) {
5638
5728
  const fn = slots[i];
5639
- if (fn) if (isArray(fn)) mapKeyToName(fn);
5640
- else fn.name = fn.key || "default";
5729
+ if (fn) {
5730
+ if (isArray(fn)) mapKeyToName(fn);
5731
+ else fn.name = fn.key || "default";
5732
+ }
5641
5733
  }
5642
5734
  return slots;
5643
5735
  }
5644
- const staticCacheMap = /* @__PURE__ */ new WeakMap();
5736
+ const staticCacheMap = /*@__PURE__*/ new WeakMap();
5645
5737
  function legacyRenderStatic(instance, index) {
5646
5738
  let cache = staticCacheMap.get(instance);
5647
5739
  if (!cache) staticCacheMap.set(instance, cache = []);
@@ -5774,11 +5866,38 @@ const getPublicInstance = (i) => {
5774
5866
  if (isStatefulComponent(i)) return getComponentPublicInstance(i);
5775
5867
  return getPublicInstance(i.parent);
5776
5868
  };
5869
+ const resolveDevRootEl = (vnode) => {
5870
+ let found = false;
5871
+ while (true) {
5872
+ if (vnode.patchFlag > 0 && vnode.patchFlag & 2048) {
5873
+ const root = filterSingleRoot(vnode.children);
5874
+ if (!root) return;
5875
+ vnode = root;
5876
+ found = true;
5877
+ continue;
5878
+ }
5879
+ const component = vnode.component;
5880
+ if (component && component.subTree) {
5881
+ vnode = component.subTree;
5882
+ continue;
5883
+ }
5884
+ const suspense = vnode.suspense;
5885
+ if (suspense && suspense.activeBranch) {
5886
+ vnode = suspense.activeBranch;
5887
+ continue;
5888
+ }
5889
+ return found ? vnode.el : void 0;
5890
+ }
5891
+ };
5892
+ const getDevRootFragmentEl = (i) => {
5893
+ const el = i.subTree && resolveDevRootEl(i.subTree);
5894
+ return el === void 0 ? i.vnode.el : el;
5895
+ };
5777
5896
  let publicPropertiesMap;
5778
5897
  const getPublicPropertiesMap = () => {
5779
5898
  if (!publicPropertiesMap) publicPropertiesMap = extend(Object.create(null), {
5780
5899
  $: (i) => i,
5781
- $el: (i) => i.vnode.el,
5900
+ $el: (i) => getDevRootFragmentEl(i),
5782
5901
  $data: (i) => i.data,
5783
5902
  $props: (i) => /* @__PURE__ */ shallowReadonly(i.props),
5784
5903
  $attrs: (i) => /* @__PURE__ */ shallowReadonly(i.attrs),
@@ -5891,7 +6010,7 @@ PublicInstanceProxyHandlers.ownKeys = (target) => {
5891
6010
  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.");
5892
6011
  return Reflect.ownKeys(target);
5893
6012
  };
5894
- const RuntimeCompiledPublicInstanceProxyHandlers = /* @__PURE__ */ extend({}, PublicInstanceProxyHandlers, {
6013
+ const RuntimeCompiledPublicInstanceProxyHandlers = /*@__PURE__*/ extend({}, PublicInstanceProxyHandlers, {
5895
6014
  get(target, key) {
5896
6015
  if (key === Symbol.unscopables) return;
5897
6016
  return PublicInstanceProxyHandlers.get(target, key, target);
@@ -6076,12 +6195,13 @@ function mergeDefaults(raw, defaults) {
6076
6195
  for (const key in defaults) {
6077
6196
  if (key.startsWith("__skip")) continue;
6078
6197
  let opt = props[key];
6079
- if (opt) if (isArray(opt) || isFunction(opt)) opt = props[key] = {
6080
- type: opt,
6081
- default: defaults[key]
6082
- };
6083
- else opt.default = defaults[key];
6084
- else if (opt === null) opt = props[key] = { default: defaults[key] };
6198
+ if (opt) {
6199
+ if (isArray(opt) || isFunction(opt)) opt = props[key] = {
6200
+ type: opt,
6201
+ default: defaults[key]
6202
+ };
6203
+ else opt.default = defaults[key];
6204
+ } else if (opt === null) opt = props[key] = { default: defaults[key] };
6085
6205
  else warn$1(`props default key "${key}" has no corresponding declaration.`);
6086
6206
  if (opt && defaults[`__skip_${key}`]) opt.skipFactory = true;
6087
6207
  }
@@ -6224,11 +6344,12 @@ function applyOptions(instance) {
6224
6344
  const opt = computedOptions[key];
6225
6345
  const get = isFunction(opt) ? opt.bind(publicThis, publicThis) : isFunction(opt.get) ? opt.get.bind(publicThis, publicThis) : NOOP;
6226
6346
  if (get === NOOP) warn$1(`Computed property "${key}" has no getter.`);
6347
+ const set = !isFunction(opt) && isFunction(opt.set) ? opt.set.bind(publicThis) : () => {
6348
+ warn$1(`Write operation failed: computed property "${key}" is readonly.`);
6349
+ };
6227
6350
  const c = computed({
6228
6351
  get,
6229
- set: !isFunction(opt) && isFunction(opt.set) ? opt.set.bind(publicThis) : () => {
6230
- warn$1(`Write operation failed: computed property "${key}" is readonly.`);
6231
- }
6352
+ set
6232
6353
  });
6233
6354
  Object.defineProperty(ctx, key, {
6234
6355
  enumerable: true,
@@ -6288,9 +6409,10 @@ function resolveInjections(injectOptions, ctx, checkDuplicateProperties = NOOP)
6288
6409
  for (const key in injectOptions) {
6289
6410
  const opt = injectOptions[key];
6290
6411
  let injected;
6291
- if (isObject(opt)) if ("default" in opt) injected = inject(opt.from || key, opt.default, true);
6292
- else injected = inject(opt.from || key);
6293
- else injected = inject(opt);
6412
+ if (isObject(opt)) {
6413
+ if ("default" in opt) injected = inject(opt.from || key, opt.default, true);
6414
+ else injected = inject(opt.from || key);
6415
+ } else injected = inject(opt);
6294
6416
  if (/* @__PURE__ */ isRef(injected)) Object.defineProperty(ctx, key, {
6295
6417
  enumerable: true,
6296
6418
  configurable: true,
@@ -6310,7 +6432,8 @@ function createWatcher(raw, ctx, publicThis, key) {
6310
6432
  {
6311
6433
  const cur = getCurrentInstance();
6312
6434
  const instance = cur && getCurrentScope() === cur.scope ? cur : null;
6313
- if (isArray(getter()) && isCompatEnabled$1("WATCH_ARRAY", instance)) options.deep = true;
6435
+ const newValue = getter();
6436
+ if (isArray(newValue) && isCompatEnabled$1("WATCH_ARRAY", instance)) options.deep = true;
6314
6437
  const baseGetter = getter;
6315
6438
  getter = () => {
6316
6439
  const val = baseGetter();
@@ -6323,13 +6446,14 @@ function createWatcher(raw, ctx, publicThis, key) {
6323
6446
  if (isFunction(handler)) watch(getter, handler, options);
6324
6447
  else warn$1(`Invalid watch handler specified by key "${raw}"`, handler);
6325
6448
  } else if (isFunction(raw)) watch(getter, raw.bind(publicThis), options);
6326
- else if (isObject(raw)) if (isArray(raw)) raw.forEach((r) => createWatcher(r, ctx, publicThis, key));
6327
- else {
6328
- const handler = isFunction(raw.handler) ? raw.handler.bind(publicThis) : ctx[raw.handler];
6329
- if (isFunction(handler)) watch(getter, handler, extend(raw, options));
6330
- else warn$1(`Invalid watch handler specified by key "${raw.handler}"`, handler);
6331
- }
6332
- else warn$1(`Invalid watch option: "${key}"`, raw);
6449
+ else if (isObject(raw)) {
6450
+ if (isArray(raw)) raw.forEach((r) => createWatcher(r, ctx, publicThis, key));
6451
+ else {
6452
+ const handler = isFunction(raw.handler) ? raw.handler.bind(publicThis) : ctx[raw.handler];
6453
+ if (isFunction(handler)) watch(getter, handler, extend(raw, options));
6454
+ else warn$1(`Invalid watch handler specified by key "${raw.handler}"`, handler);
6455
+ }
6456
+ } else warn$1(`Invalid watch option: "${key}"`, raw);
6333
6457
  }
6334
6458
  /**
6335
6459
  * Resolve merged options and cache it on the component.
@@ -6343,12 +6467,13 @@ function resolveMergedOptions(instance) {
6343
6467
  const cached = cache.get(base);
6344
6468
  let resolved;
6345
6469
  if (cached) resolved = cached;
6346
- else if (!globalMixins.length && !mixins && !extendsOptions) if (isCompatEnabled$1("PRIVATE_APIS", instance)) {
6347
- resolved = extend({}, base);
6348
- resolved.parent = instance.parent && instance.parent.proxy;
6349
- resolved.propsData = instance.vnode.props;
6350
- } else resolved = base;
6351
- else {
6470
+ else if (!globalMixins.length && !mixins && !extendsOptions) {
6471
+ if (isCompatEnabled$1("PRIVATE_APIS", instance)) {
6472
+ resolved = extend({}, base);
6473
+ resolved.parent = instance.parent && instance.parent.proxy;
6474
+ resolved.propsData = instance.vnode.props;
6475
+ } else resolved = base;
6476
+ } else {
6352
6477
  resolved = {};
6353
6478
  if (globalMixins.length) globalMixins.forEach((m) => mergeOptions(resolved, m, optionMergeStrategies, true));
6354
6479
  mergeOptions(resolved, base, optionMergeStrategies);
@@ -6421,7 +6546,7 @@ function mergeObjectOptions(to, from) {
6421
6546
  }
6422
6547
  function mergeEmitsOrPropsOptions(to, from) {
6423
6548
  if (to) {
6424
- if (isArray(to) && isArray(from)) return [...new Set([...to, ...from])];
6549
+ if (isArray(to) && isArray(from)) return [.../* @__PURE__ */ new Set([...to, ...from])];
6425
6550
  return extend(Object.create(null), normalizePropsOrEmits(to), normalizePropsOrEmits(from !== null && from !== void 0 ? from : {}));
6426
6551
  } else return from;
6427
6552
  }
@@ -6482,7 +6607,7 @@ function createCompatVue$1(createApp, createSingletonApp) {
6482
6607
  if (options.el) return vm.$mount(options.el);
6483
6608
  else return vm;
6484
6609
  }
6485
- Vue.version = `2.6.14-compat:3.6.0-rc.5`;
6610
+ Vue.version = `2.6.14-compat:3.6.0-rc.6`;
6486
6611
  Vue.config = singletonApp.config;
6487
6612
  Vue.use = (plugin, ...options) => {
6488
6613
  if (plugin && isFunction(plugin.install)) plugin.install(Vue, ...options);
@@ -6872,8 +6997,10 @@ function createAppAPI(mount, unmount, getPublicInstance, render) {
6872
6997
  } else warn$1(`Cannot unmount an app that is not mounted.`);
6873
6998
  },
6874
6999
  provide(key, value) {
6875
- if (key in context.provides) if (hasOwn(context.provides, key)) warn$1(`App already provides property with key "${String(key)}". It will be overwritten with the new value.`);
6876
- else warn$1(`App already provides property with key "${String(key)}" inherited from its parent element. It will be overwritten with the new value.`);
7000
+ if (key in context.provides) {
7001
+ if (hasOwn(context.provides, key)) warn$1(`App already provides property with key "${String(key)}". It will be overwritten with the new value.`);
7002
+ else warn$1(`App already provides property with key "${String(key)}" inherited from its parent element. It will be overwritten with the new value.`);
7003
+ }
6877
7004
  context.provides[key] = value;
6878
7005
  return app;
6879
7006
  },
@@ -7023,12 +7150,14 @@ function baseEmit(instance, props, getter, event, ...rawArgs) {
7023
7150
  if (instance.isUnmounted) return;
7024
7151
  {
7025
7152
  const { emitsOptions, propsOptions } = instance;
7026
- if (emitsOptions) if (!(event in emitsOptions) && !(event.startsWith("hook:") || event.startsWith(compatModelEventPrefix))) {
7027
- 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.`);
7028
- } else {
7029
- const validator = emitsOptions[event];
7030
- if (isFunction(validator)) {
7031
- if (!validator(...rawArgs)) warn$1(`Invalid event arguments: event validation failed for event "${event}".`);
7153
+ if (emitsOptions) {
7154
+ if (!(event in emitsOptions) && !(event.startsWith("hook:") || event.startsWith(compatModelEventPrefix))) {
7155
+ 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.`);
7156
+ } else {
7157
+ const validator = emitsOptions[event];
7158
+ if (isFunction(validator)) {
7159
+ if (!validator(...rawArgs)) warn$1(`Invalid event arguments: event validation failed for event "${event}".`);
7160
+ }
7032
7161
  }
7033
7162
  }
7034
7163
  }
@@ -7038,7 +7167,7 @@ function baseEmit(instance, props, getter, event, ...rawArgs) {
7038
7167
  const modifiers = isCompatModelListener ? props.modelModifiers : isModelListener && getModelModifiers(props, event.slice(7), getter);
7039
7168
  if (modifiers) {
7040
7169
  if (modifiers.trim) args = rawArgs.map((a) => isString(a) ? a.trim() : a);
7041
- if (modifiers.number) args = rawArgs.map(looseToNumber);
7170
+ if (modifiers.number) args = args.map(looseToNumber);
7042
7171
  }
7043
7172
  devtoolsComponentEmit(instance, event, args);
7044
7173
  {
@@ -7233,10 +7362,12 @@ function filterSingleRoot(children, recurse = true) {
7233
7362
  for (let i = 0; i < children.length; i++) {
7234
7363
  const child = children[i];
7235
7364
  if (isVNode(child)) {
7236
- if (child.type !== Comment || child.children === "v-if") if (singleRoot) return;
7237
- else {
7238
- singleRoot = child;
7239
- if (recurse && singleRoot.patchFlag > 0 && singleRoot.patchFlag & 2048) return filterSingleRoot(singleRoot.children);
7365
+ if (child.type !== Comment || child.children === "v-if") {
7366
+ if (singleRoot) return;
7367
+ else {
7368
+ singleRoot = child;
7369
+ if (recurse && singleRoot.patchFlag > 0 && singleRoot.patchFlag & 2048) return filterSingleRoot(singleRoot.children);
7370
+ }
7240
7371
  }
7241
7372
  } else return;
7242
7373
  }
@@ -7381,16 +7512,17 @@ function updateProps(instance, rawProps, rawPrevProps, optimized) {
7381
7512
  let key = propsToUpdate[i];
7382
7513
  if (isEmitListener(instance.emitsOptions, key)) continue;
7383
7514
  const value = rawProps[key];
7384
- if (options) if (hasOwn(attrs, key)) {
7385
- if (value !== attrs[key]) {
7386
- attrs[key] = value;
7387
- hasAttrsChanged = true;
7515
+ if (options) {
7516
+ if (hasOwn(attrs, key)) {
7517
+ if (value !== attrs[key]) {
7518
+ attrs[key] = value;
7519
+ hasAttrsChanged = true;
7520
+ }
7521
+ } else {
7522
+ const camelizedKey = camelize(key);
7523
+ props[camelizedKey] = resolvePropValue(options, camelizedKey, value, instance, baseResolveDefault);
7388
7524
  }
7389
7525
  } else {
7390
- const camelizedKey = camelize(key);
7391
- props[camelizedKey] = resolvePropValue(options, camelizedKey, value, instance, baseResolveDefault);
7392
- }
7393
- else {
7394
7526
  if (isOn(key) && key.endsWith("Native")) key = key.slice(0, -6);
7395
7527
  else if (shouldSkipAttr(key, instance)) continue;
7396
7528
  if (value !== attrs[key]) {
@@ -7403,9 +7535,11 @@ function updateProps(instance, rawProps, rawPrevProps, optimized) {
7403
7535
  } else {
7404
7536
  if (setFullProps(instance, rawProps, props, attrs)) hasAttrsChanged = true;
7405
7537
  let kebabKey;
7406
- for (const key in rawCurrentProps) if (!rawProps || !hasOwn(rawProps, key) && ((kebabKey = hyphenate(key)) === key || !hasOwn(rawProps, kebabKey))) if (options) {
7407
- if (rawPrevProps && (rawPrevProps[key] !== void 0 || rawPrevProps[kebabKey] !== void 0)) props[key] = resolvePropValue(options, key, void 0, instance, baseResolveDefault, true);
7408
- } else delete props[key];
7538
+ for (const key in rawCurrentProps) if (!rawProps || !hasOwn(rawProps, key) && ((kebabKey = hyphenate(key)) === key || !hasOwn(rawProps, kebabKey))) {
7539
+ if (options) {
7540
+ if (rawPrevProps && (rawPrevProps[key] !== void 0 || rawPrevProps[kebabKey] !== void 0)) props[key] = resolvePropValue(options, key, void 0, instance, baseResolveDefault, true);
7541
+ } else delete props[key];
7542
+ }
7409
7543
  if (attrs !== rawCurrentProps) {
7410
7544
  for (const key in attrs) if (!rawProps || !hasOwn(rawProps, key) && !hasOwn(rawProps, key + "Native")) {
7411
7545
  delete attrs[key];
@@ -7426,9 +7560,10 @@ function setFullProps(instance, rawProps, props, attrs) {
7426
7560
  if (key === "inline-template") continue;
7427
7561
  const value = rawProps[key];
7428
7562
  let camelKey;
7429
- if (options && hasOwn(options, camelKey = camelize(key))) if (!needCastKeys || !needCastKeys.includes(camelKey)) props[camelKey] = value;
7430
- else (rawCastValues || (rawCastValues = {}))[camelKey] = value;
7431
- else if (!isEmitListener(instance.emitsOptions, key)) {
7563
+ if (options && hasOwn(options, camelKey = camelize(key))) {
7564
+ if (!needCastKeys || !needCastKeys.includes(camelKey)) props[camelKey] = value;
7565
+ else (rawCastValues || (rawCastValues = {}))[camelKey] = value;
7566
+ } else if (!isEmitListener(instance.emitsOptions, key)) {
7432
7567
  if (isOn(key) && key.endsWith("Native")) key = key.slice(0, -6);
7433
7568
  else if (shouldSkipAttr(key, instance)) continue;
7434
7569
  if (!(key in attrs) || value !== attrs[key]) {
@@ -7594,7 +7729,7 @@ function validateProp(key, value, propOptions, resolvedProps, isAbsent) {
7594
7729
  }
7595
7730
  if (validator && !validator(value, /* @__PURE__ */ shallowReadonly(resolvedProps))) warn$1("Invalid prop: custom validator check failed for prop \"" + key + "\".");
7596
7731
  }
7597
- const isSimpleType = /* @__PURE__ */ makeMap("String,Number,Boolean,Function,Symbol,BigInt");
7732
+ const isSimpleType = /*@__PURE__*/ makeMap("String,Number,Boolean,Function,Symbol,BigInt");
7598
7733
  /**
7599
7734
  * dev only
7600
7735
  */
@@ -7707,12 +7842,13 @@ const updateSlots = (instance, children, optimized) => {
7707
7842
  let deletionComparisonTarget = EMPTY_OBJ;
7708
7843
  if (vnode.shapeFlag & 32) {
7709
7844
  const type = children._;
7710
- if (type) if (isHmrUpdating) {
7711
- assignSlots(slots, children, optimized);
7712
- trigger(instance, "set", "$slots");
7713
- } else if (optimized && type === 1) needDeletionCheck = false;
7714
- else assignSlots(slots, children, optimized);
7715
- else {
7845
+ if (type) {
7846
+ if (isHmrUpdating) {
7847
+ assignSlots(slots, children, optimized);
7848
+ trigger(instance, "set", "$slots");
7849
+ } else if (optimized && type === 1) needDeletionCheck = false;
7850
+ else assignSlots(slots, children, optimized);
7851
+ } else {
7716
7852
  needDeletionCheck = !children.$stable;
7717
7853
  normalizeObjectSlots(children, slots, instance);
7718
7854
  }
@@ -7730,7 +7866,7 @@ const updateSlots = (instance, children, optimized) => {
7730
7866
  let supported;
7731
7867
  let perf;
7732
7868
  let cachedNow$1 = 0;
7733
- const p$1 = /* @__PURE__ */ Promise.resolve();
7869
+ const p$1 = /*@__PURE__*/ Promise.resolve();
7734
7870
  const getNow$1 = () => cachedNow$1 || (p$1.then(() => cachedNow$1 = 0), cachedNow$1 = isSupported() ? perf.now() : Date.now());
7735
7871
  /**
7736
7872
  * @internal
@@ -7946,7 +8082,10 @@ function baseCreateRenderer(options, createHydrationFns) {
7946
8082
  for (let i = 0; i < inheritedScopeIds.length; i++) hostSetScopeId(el, inheritedScopeIds[i]);
7947
8083
  };
7948
8084
  const mountChildren = (children, container, anchor, parentComponent, parentSuspense, namespace, slotScopeIds, optimized, start = 0) => {
7949
- for (let i = start; i < children.length; i++) patch(null, children[i] = optimized ? cloneIfMounted(children[i]) : normalizeVNode(children[i]), container, anchor, parentComponent, parentSuspense, namespace, slotScopeIds, optimized);
8085
+ for (let i = start; i < children.length; i++) {
8086
+ const child = children[i] = optimized ? cloneIfMounted(children[i]) : normalizeVNode(children[i]);
8087
+ patch(null, child, container, anchor, parentComponent, parentSuspense, namespace, slotScopeIds, optimized);
8088
+ }
7950
8089
  };
7951
8090
  const patchElement = (n1, n2, parentComponent, parentSuspense, namespace, slotScopeIds, optimized) => {
7952
8091
  const el = n2.el = n1.el;
@@ -7958,6 +8097,7 @@ function baseCreateRenderer(options, createHydrationFns) {
7958
8097
  let vnodeHook;
7959
8098
  parentComponent && toggleRecurse(parentComponent, false);
7960
8099
  if (vnodeHook = newProps.onVnodeBeforeUpdate) invokeVNodeHook(vnodeHook, parentComponent, n2, n1);
8100
+ if (n2.ibu) n2.ibu();
7961
8101
  if (dirs) invokeDirectiveHook(n2, n1, parentComponent, "beforeUpdate");
7962
8102
  parentComponent && toggleRecurse(parentComponent, true);
7963
8103
  if (isHmrUpdating || dynamicChildren && (!n1.dynamicChildren || n1.dynamicChildren.length !== dynamicChildren.length)) {
@@ -7991,8 +8131,9 @@ function baseCreateRenderer(options, createHydrationFns) {
7991
8131
  if (n1.children !== n2.children) hostSetElementText(el, n2.children);
7992
8132
  }
7993
8133
  } else if (!optimized && dynamicChildren == null) patchProps(el, oldProps, newProps, parentComponent, namespace);
7994
- if ((vnodeHook = newProps.onVnodeUpdated) || dirs) queuePostRenderEffect(() => {
8134
+ if ((vnodeHook = newProps.onVnodeUpdated) || dirs || n2.iu) queuePostRenderEffect(() => {
7995
8135
  vnodeHook && invokeVNodeHook(vnodeHook, parentComponent, n2, n1);
8136
+ n2.iu && n2.iu();
7996
8137
  dirs && invokeDirectiveHook(n2, n1, parentComponent, "updated");
7997
8138
  }, void 0, parentSuspense);
7998
8139
  };
@@ -8000,7 +8141,8 @@ function baseCreateRenderer(options, createHydrationFns) {
8000
8141
  for (let i = 0; i < newChildren.length; i++) {
8001
8142
  const oldVNode = oldChildren[i];
8002
8143
  const newVNode = newChildren[i];
8003
- patch(oldVNode, newVNode, oldVNode.el && (oldVNode.type === Fragment || !isSameVNodeType(oldVNode, newVNode) || oldVNode.shapeFlag & 198) ? hostParentNode(oldVNode.el) : fallbackContainer, null, parentComponent, parentSuspense, namespace, slotScopeIds, true);
8144
+ const container = oldVNode.el && (oldVNode.type === Fragment || !isSameVNodeType(oldVNode, newVNode) || oldVNode.shapeFlag & 198) ? hostParentNode(oldVNode.el) : fallbackContainer;
8145
+ patch(oldVNode, newVNode, container, null, parentComponent, parentSuspense, namespace, slotScopeIds, true);
8004
8146
  }
8005
8147
  };
8006
8148
  const patchProps = (el, oldProps, newProps, parentComponent, namespace) => {
@@ -8038,41 +8180,46 @@ function baseCreateRenderer(options, createHydrationFns) {
8038
8180
  };
8039
8181
  const processComponent = (n1, n2, container, anchor, parentComponent, parentSuspense, namespace, slotScopeIds, optimized) => {
8040
8182
  n2.slotScopeIds = slotScopeIds;
8041
- if (n2.type.__vapor) if (n1 == null) if (n2.shapeFlag & 512) getVaporInterface(parentComponent, n2).activate(n2, container, anchor, parentComponent, parentSuspense);
8042
- else {
8043
- const vnodeBeforeMountHook = !isAsyncWrapper(n2) && n2.props && n2.props.onVnodeBeforeMount;
8044
- getVaporInterface(parentComponent, n2).mount(n2, container, anchor, parentComponent, parentSuspense, () => {
8045
- if (n2.dirs) {
8046
- invokeDirectiveHook(n2, null, parentComponent, "created");
8047
- invokeDirectiveHook(n2, null, parentComponent, "beforeMount");
8183
+ if (n2.type.__vapor) {
8184
+ if (n1 == null) {
8185
+ if (n2.shapeFlag & 512) getVaporInterface(parentComponent, n2).activate(n2, container, anchor, parentComponent, parentSuspense);
8186
+ else {
8187
+ const vnodeBeforeMountHook = !isAsyncWrapper(n2) && n2.props && n2.props.onVnodeBeforeMount;
8188
+ getVaporInterface(parentComponent, n2).mount(n2, container, anchor, parentComponent, parentSuspense, () => {
8189
+ if (n2.dirs) {
8190
+ invokeDirectiveHook(n2, null, parentComponent, "created");
8191
+ invokeDirectiveHook(n2, null, parentComponent, "beforeMount");
8192
+ }
8193
+ }, () => {
8194
+ if (vnodeBeforeMountHook) invokeVNodeHook(vnodeBeforeMountHook, parentComponent, n2);
8195
+ });
8196
+ if (n2.dirs) queuePostRenderEffect(() => invokeDirectiveHook(n2, null, parentComponent, "mounted"), void 0, parentSuspense);
8197
+ const vnodeMountedHook = !isAsyncWrapper(n2) && n2.props && n2.props.onVnodeMounted;
8198
+ if (vnodeMountedHook) {
8199
+ const scopedVNode = n2;
8200
+ queuePostRenderEffect(() => invokeVNodeHook(vnodeMountedHook, parentComponent, scopedVNode), void 0, parentSuspense);
8201
+ }
8048
8202
  }
8049
- }, () => {
8050
- if (vnodeBeforeMountHook) invokeVNodeHook(vnodeBeforeMountHook, parentComponent, n2);
8051
- });
8052
- if (n2.dirs) queuePostRenderEffect(() => invokeDirectiveHook(n2, null, parentComponent, "mounted"), void 0, parentSuspense);
8053
- const vnodeMountedHook = !isAsyncWrapper(n2) && n2.props && n2.props.onVnodeMounted;
8054
- if (vnodeMountedHook) {
8055
- const scopedVNode = n2;
8056
- queuePostRenderEffect(() => invokeVNodeHook(vnodeMountedHook, parentComponent, scopedVNode), void 0, parentSuspense);
8203
+ } else {
8204
+ const shouldUpdate = shouldUpdateComponent(n1, n2, optimized);
8205
+ getVaporInterface(parentComponent, n2).update(n1, n2, shouldUpdate, () => {
8206
+ if (n2.dirs) invokeDirectiveHook(n2, n1, parentComponent, "beforeUpdate");
8207
+ }, () => {
8208
+ const vnodeBeforeUpdateHook = n2.props && n2.props.onVnodeBeforeUpdate;
8209
+ if (vnodeBeforeUpdateHook) invokeVNodeHook(vnodeBeforeUpdateHook, parentComponent, n2, n1);
8210
+ if (n2.ibu) n2.ibu();
8211
+ });
8212
+ const vnodeUpdatedHook = n2.props && n2.props.onVnodeUpdated;
8213
+ if (shouldUpdate && (vnodeUpdatedHook || n2.dirs || n2.iu)) queuePostRenderEffect(() => {
8214
+ n2.dirs && invokeDirectiveHook(n2, n1, parentComponent, "updated");
8215
+ vnodeUpdatedHook && invokeVNodeHook(vnodeUpdatedHook, parentComponent, n2, n1);
8216
+ n2.iu && n2.iu();
8217
+ }, void 0, parentSuspense);
8057
8218
  }
8058
- }
8059
- else {
8060
- const shouldUpdate = shouldUpdateComponent(n1, n2, optimized);
8061
- getVaporInterface(parentComponent, n2).update(n1, n2, shouldUpdate, () => {
8062
- if (n2.dirs) invokeDirectiveHook(n2, n1, parentComponent, "beforeUpdate");
8063
- }, () => {
8064
- const vnodeBeforeUpdateHook = n2.props && n2.props.onVnodeBeforeUpdate;
8065
- if (vnodeBeforeUpdateHook) invokeVNodeHook(vnodeBeforeUpdateHook, parentComponent, n2, n1);
8066
- });
8067
- const vnodeUpdatedHook = n2.props && n2.props.onVnodeUpdated;
8068
- if (shouldUpdate && (vnodeUpdatedHook || n2.dirs)) queuePostRenderEffect(() => {
8069
- n2.dirs && invokeDirectiveHook(n2, n1, parentComponent, "updated");
8070
- vnodeUpdatedHook && invokeVNodeHook(vnodeUpdatedHook, parentComponent, n2, n1);
8071
- }, void 0, parentSuspense);
8072
- }
8073
- else if (n1 == null) if (n2.shapeFlag & 512) parentComponent.ctx.activate(n2, container, anchor, namespace, optimized);
8074
- else mountComponent(n2, container, anchor, parentComponent, parentSuspense, namespace, optimized);
8075
- else updateComponent(n1, n2, optimized);
8219
+ } else if (n1 == null) {
8220
+ if (n2.shapeFlag & 512) parentComponent.ctx.activate(n2, container, anchor, namespace, optimized);
8221
+ else mountComponent(n2, container, anchor, parentComponent, parentSuspense, namespace, optimized);
8222
+ } else updateComponent(n1, n2, optimized);
8076
8223
  };
8077
8224
  const mountComponent = (initialVNode, container, anchor, parentComponent, parentSuspense, namespace, optimized) => {
8078
8225
  const compatMountInstance = initialVNode.isCompatRoot && initialVNode.component;
@@ -8116,16 +8263,17 @@ function baseCreateRenderer(options, createHydrationFns) {
8116
8263
  };
8117
8264
  const updateComponent = (n1, n2, optimized) => {
8118
8265
  const instance = n2.component = n1.component;
8119
- if (shouldUpdateComponent(n1, n2, optimized)) if (instance.asyncDep && !instance.asyncResolved) {
8120
- pushWarningContext(n2);
8121
- updateComponentPreRender(instance, n2, optimized);
8122
- popWarningContext();
8123
- return;
8266
+ if (shouldUpdateComponent(n1, n2, optimized)) {
8267
+ if (instance.asyncDep && !instance.asyncResolved) {
8268
+ pushWarningContext(n2);
8269
+ updateComponentPreRender(instance, n2, optimized);
8270
+ popWarningContext();
8271
+ return;
8272
+ } else {
8273
+ instance.next = n2;
8274
+ instance.effect.run();
8275
+ }
8124
8276
  } else {
8125
- instance.next = n2;
8126
- instance.effect.run();
8127
- }
8128
- else {
8129
8277
  n2.el = n1.el;
8130
8278
  instance.vnode = n2;
8131
8279
  }
@@ -8228,6 +8376,7 @@ function baseCreateRenderer(options, createHydrationFns) {
8228
8376
  } else next = vnode;
8229
8377
  if (bu) invokeArrayFns(bu);
8230
8378
  if (vnodeHook = next.props && next.props.onVnodeBeforeUpdate) invokeVNodeHook(vnodeHook, parent, next, vnode);
8379
+ if (next.ibu) next.ibu();
8231
8380
  if (isCompatEnabled$1("INSTANCE_EVENT_HOOKS", instance)) instance.emit("hook:beforeUpdate");
8232
8381
  toggleRecurse(instance, true);
8233
8382
  startMeasure(instance, `render`);
@@ -8241,7 +8390,10 @@ function baseCreateRenderer(options, createHydrationFns) {
8241
8390
  next.el = nextTree.el;
8242
8391
  if (originNext === null) updateHOCHostEl(instance, nextTree.el);
8243
8392
  if (u) queuePostRenderEffect(u, void 0, parentSuspense);
8244
- if (vnodeHook = next.props && next.props.onVnodeUpdated) queuePostRenderEffect(() => invokeVNodeHook(vnodeHook, parent, next, vnode), void 0, parentSuspense);
8393
+ if ((vnodeHook = next.props && next.props.onVnodeUpdated) || next.iu) queuePostRenderEffect(() => {
8394
+ vnodeHook && invokeVNodeHook(vnodeHook, parent, next, vnode);
8395
+ next.iu && next.iu();
8396
+ }, void 0, parentSuspense);
8245
8397
  if (isCompatEnabled$1("INSTANCE_EVENT_HOOKS", instance)) queuePostRenderEffect(() => instance.emit("hook:updated"), void 0, parentSuspense);
8246
8398
  devtoolsComponentUpdated(instance);
8247
8399
  popWarningContext();
@@ -8282,9 +8434,10 @@ function baseCreateRenderer(options, createHydrationFns) {
8282
8434
  if (shapeFlag & 8) {
8283
8435
  if (prevShapeFlag & 16) unmountChildren(c1, parentComponent, parentSuspense);
8284
8436
  if (c2 !== c1) hostSetElementText(container, c2);
8285
- } else if (prevShapeFlag & 16) if (shapeFlag & 16) patchKeyedChildren(c1, c2, container, anchor, parentComponent, parentSuspense, namespace, slotScopeIds, optimized);
8286
- else unmountChildren(c1, parentComponent, parentSuspense, true);
8287
- else {
8437
+ } else if (prevShapeFlag & 16) {
8438
+ if (shapeFlag & 16) patchKeyedChildren(c1, c2, container, anchor, parentComponent, parentSuspense, namespace, slotScopeIds, optimized);
8439
+ else unmountChildren(c1, parentComponent, parentSuspense, true);
8440
+ } else {
8288
8441
  if (prevShapeFlag & 8) hostSetElementText(container, "");
8289
8442
  if (shapeFlag & 16) mountChildren(c2, container, anchor, parentComponent, parentSuspense, namespace, slotScopeIds, optimized);
8290
8443
  }
@@ -8383,8 +8536,10 @@ function baseCreateRenderer(options, createHydrationFns) {
8383
8536
  const anchorVNode = c2[nextIndex + 1];
8384
8537
  const anchor = nextIndex + 1 < l2 ? anchorVNode.el || resolveAsyncComponentPlaceholder(anchorVNode) : parentAnchor;
8385
8538
  if (newIndexToOldIndexMap[i] === 0) patch(null, nextChild, container, anchor, parentComponent, parentSuspense, namespace, slotScopeIds, optimized);
8386
- else if (moved) if (j < 0 || i !== increasingNewIndexSequence[j]) move(nextChild, container, anchor, 2, parentComponent);
8387
- else j--;
8539
+ else if (moved) {
8540
+ if (j < 0 || i !== increasingNewIndexSequence[j]) move(nextChild, container, anchor, 2, parentComponent);
8541
+ else j--;
8542
+ }
8388
8543
  }
8389
8544
  }
8390
8545
  };
@@ -8416,26 +8571,27 @@ function baseCreateRenderer(options, createHydrationFns) {
8416
8571
  moveStaticNode(vnode, container, anchor);
8417
8572
  return;
8418
8573
  }
8419
- if (moveType !== 2 && shapeFlag & 1 && transition) if (moveType === 0) performTransitionEnter(el, transition, () => hostInsert(el, container, anchor), parentSuspense, true);
8420
- else {
8421
- const { leave, delayLeave, afterLeave } = transition;
8422
- const remove = () => {
8423
- if (vnode.ctx.isUnmounted) hostRemove(el);
8424
- else hostInsert(el, container, anchor);
8425
- };
8426
- const performLeave = () => {
8427
- const wasLeaving = el._isLeaving || !!el[leaveCbKey];
8428
- if (el._isLeaving) el[leaveCbKey](true);
8429
- if (transition.persisted && !wasLeaving) remove();
8430
- else leave(el, () => {
8431
- remove();
8432
- afterLeave && afterLeave();
8433
- });
8434
- };
8435
- if (delayLeave) delayLeave(el, remove, performLeave);
8436
- else performLeave();
8437
- }
8438
- else hostInsert(el, container, anchor);
8574
+ if (moveType !== 2 && shapeFlag & 1 && transition) {
8575
+ if (moveType === 0) performTransitionEnter(el, transition, () => hostInsert(el, container, anchor), parentSuspense, true);
8576
+ else {
8577
+ const { leave, delayLeave, afterLeave } = transition;
8578
+ const remove = () => {
8579
+ if (vnode.ctx.isUnmounted) hostRemove(el);
8580
+ else hostInsert(el, container, anchor);
8581
+ };
8582
+ const performLeave = () => {
8583
+ const wasLeaving = el._isLeaving || !!el[leaveCbKey];
8584
+ if (el._isLeaving) el[leaveCbKey](true);
8585
+ if (transition.persisted && !wasLeaving) remove();
8586
+ else leave(el, () => {
8587
+ remove();
8588
+ afterLeave && afterLeave();
8589
+ });
8590
+ };
8591
+ if (delayLeave) delayLeave(el, remove, performLeave);
8592
+ else performLeave();
8593
+ }
8594
+ } else hostInsert(el, container, anchor);
8439
8595
  };
8440
8596
  const unmount = (vnode, parentComponent, parentSuspense, doRemove = false, optimized = false) => {
8441
8597
  const { type, props, ref, children, dynamicChildren, shapeFlag, patchFlag, dirs, cacheIndex, memo } = vnode;
@@ -8455,16 +8611,17 @@ function baseCreateRenderer(options, createHydrationFns) {
8455
8611
  const shouldInvokeVnodeHook = !isAsyncWrapper(vnode);
8456
8612
  let vnodeHook;
8457
8613
  if (shouldInvokeVnodeHook && (vnodeHook = props && props.onVnodeBeforeUnmount)) invokeVNodeHook(vnodeHook, parentComponent, vnode);
8458
- if (shapeFlag & 6) if (isVaporComponent(type)) {
8459
- if (dirs) invokeDirectiveHook(vnode, null, parentComponent, "beforeUnmount");
8460
- getVaporInterface(parentComponent, vnode).unmount(vnode, doRemove, parentSuspense);
8461
- if (shouldInvokeVnodeHook && (vnodeHook = props && props.onVnodeUnmounted) || dirs) queuePostRenderEffect(() => {
8462
- dirs && invokeDirectiveHook(vnode, null, parentComponent, "unmounted");
8463
- vnodeHook && invokeVNodeHook(vnodeHook, parentComponent, vnode);
8464
- }, void 0, parentSuspense);
8465
- return;
8466
- } else unmountComponent(vnode.component, parentSuspense, doRemove);
8467
- else {
8614
+ if (shapeFlag & 6) {
8615
+ if (isVaporComponent(type)) {
8616
+ if (dirs) invokeDirectiveHook(vnode, null, parentComponent, "beforeUnmount");
8617
+ getVaporInterface(parentComponent, vnode).unmount(vnode, doRemove, parentSuspense);
8618
+ if (shouldInvokeVnodeHook && (vnodeHook = props && props.onVnodeUnmounted) || dirs) queuePostRenderEffect(() => {
8619
+ dirs && invokeDirectiveHook(vnode, null, parentComponent, "unmounted");
8620
+ vnodeHook && invokeVNodeHook(vnodeHook, parentComponent, vnode);
8621
+ }, void 0, parentSuspense);
8622
+ return;
8623
+ } else unmountComponent(vnode.component, parentSuspense, doRemove);
8624
+ } else {
8468
8625
  if (shapeFlag & 128) {
8469
8626
  vnode.suspense.unmount(parentSuspense, doRemove);
8470
8627
  return;
@@ -8598,12 +8755,14 @@ function resolveChildrenNamespace({ type, props }, currentNamespace) {
8598
8755
  return currentNamespace === "svg" && type === "foreignObject" || currentNamespace === "mathml" && type === "annotation-xml" && props && props.encoding && props.encoding.includes("html") ? void 0 : currentNamespace;
8599
8756
  }
8600
8757
  function toggleRecurse({ effect, job, vapor }, allowed) {
8601
- if (!vapor) if (allowed) {
8602
- effect.flags |= 128;
8603
- job.flags |= 2;
8604
- } else {
8605
- effect.flags &= -129;
8606
- job.flags &= -3;
8758
+ if (!vapor) {
8759
+ if (allowed) {
8760
+ effect.flags |= 128;
8761
+ job.flags |= 2;
8762
+ } else {
8763
+ effect.flags &= -129;
8764
+ job.flags &= -3;
8765
+ }
8607
8766
  }
8608
8767
  }
8609
8768
  function needTransition(parentSuspense, transition) {
@@ -8643,8 +8802,10 @@ function traverseStaticChildren(n1, n2, shallow = false) {
8643
8802
  }
8644
8803
  function locateNonHydratedAsyncRoot(instance) {
8645
8804
  const subComponent = instance.subTree && instance.subTree.component;
8646
- if (subComponent) if (subComponent.asyncDep && !subComponent.asyncResolved) return subComponent;
8647
- else return locateNonHydratedAsyncRoot(subComponent);
8805
+ if (subComponent) {
8806
+ if (subComponent.asyncDep && !subComponent.asyncResolved) return subComponent;
8807
+ else return locateNonHydratedAsyncRoot(subComponent);
8808
+ }
8648
8809
  }
8649
8810
  function invalidateMount(hooks) {
8650
8811
  if (hooks) for (let i = 0; i < hooks.length; i++) hooks[i].flags |= 4;
@@ -8765,7 +8926,7 @@ function patchSuspense(n1, n2, container, anchor, parentComponent, namespace, sl
8765
8926
  patch(pendingBranch, newBranch, suspense.hiddenContainer, null, parentComponent, suspense, namespace, slotScopeIds, optimized);
8766
8927
  if (suspense.deps <= 0) suspense.resolve();
8767
8928
  else if (isInFallback) {
8768
- if (!isHydrating) {
8929
+ if (!isHydrating && !suspense.isFallbackMountPending) {
8769
8930
  patch(activeBranch, newFallback, container, anchor, parentComponent, null, namespace, slotScopeIds, optimized);
8770
8931
  setActiveBranch(suspense, newFallback);
8771
8932
  }
@@ -8786,7 +8947,7 @@ function patchSuspense(n1, n2, container, anchor, parentComponent, namespace, sl
8786
8947
  if (isInFallback) {
8787
8948
  patch(null, newBranch, suspense.hiddenContainer, null, parentComponent, suspense, namespace, slotScopeIds, optimized);
8788
8949
  if (suspense.deps <= 0) suspense.resolve();
8789
- else {
8950
+ else if (!suspense.isFallbackMountPending) {
8790
8951
  patch(activeBranch, newFallback, container, anchor, parentComponent, null, namespace, slotScopeIds, optimized);
8791
8952
  setActiveBranch(suspense, newFallback);
8792
8953
  }
@@ -8912,8 +9073,9 @@ function createSuspenseBoundary(vnode, parentSuspense, parentComponent, containe
8912
9073
  const mountFallback = () => {
8913
9074
  suspense.isFallbackMountPending = false;
8914
9075
  if (!suspense.isInFallback) return;
8915
- patch(null, fallbackVNode, container, anchor, parentComponent, null, namespace, slotScopeIds, optimized);
8916
- setActiveBranch(suspense, fallbackVNode);
9076
+ const latestFallback = suspense.vnode.ssFallback;
9077
+ patch(null, latestFallback, container, anchor, parentComponent, null, namespace, slotScopeIds, optimized);
9078
+ setActiveBranch(suspense, latestFallback);
8917
9079
  };
8918
9080
  const delayEnter = fallbackVNode.transition && fallbackVNode.transition.mode === "out-in";
8919
9081
  if (delayEnter) {
@@ -8989,9 +9151,10 @@ function normalizeSuspenseSlot(s) {
8989
9151
  return s;
8990
9152
  }
8991
9153
  function queueEffectWithSuspense(fn, id, suspense) {
8992
- if (suspense && suspense.pendingBranch) if (isArray(fn)) suspense.effects.push(...fn);
8993
- else suspense.effects.push(fn);
8994
- else queuePostFlushCb(fn, id);
9154
+ if (suspense && suspense.pendingBranch) {
9155
+ if (isArray(fn)) suspense.effects.push(...fn);
9156
+ else suspense.effects.push(fn);
9157
+ } else queuePostFlushCb(fn, id);
8995
9158
  }
8996
9159
  function setActiveBranch(suspense, branch) {
8997
9160
  suspense.activeBranch = branch;
@@ -9227,8 +9390,10 @@ function _createVNode(type, props = null, children = null, patchFlag = 0, dynami
9227
9390
  if (isVNode(type)) {
9228
9391
  const cloned = cloneVNode(type, props, true);
9229
9392
  if (children) normalizeChildren(cloned, children);
9230
- if (isBlockTreeEnabled > 0 && !isBlockNode && currentBlock) if (cloned.shapeFlag & 6) currentBlock[currentBlock.indexOf(type)] = cloned;
9231
- else currentBlock.push(cloned);
9393
+ if (isBlockTreeEnabled > 0 && !isBlockNode && currentBlock) {
9394
+ if (cloned.shapeFlag & 6) currentBlock[currentBlock.indexOf(type)] = cloned;
9395
+ else currentBlock.push(cloned);
9396
+ }
9232
9397
  cloned.patchFlag = -2;
9233
9398
  return cloned;
9234
9399
  }
@@ -9289,7 +9454,9 @@ function cloneVNode(vnode, extraProps, mergeRef = false, cloneTransition = false
9289
9454
  ce: vnode.ce,
9290
9455
  vi: vnode.vi,
9291
9456
  vs: cloneVaporSlotMeta(vnode),
9292
- vb: vnode.vb
9457
+ vb: vnode.vb,
9458
+ ibu: vnode.ibu,
9459
+ iu: vnode.iu
9293
9460
  };
9294
9461
  if (transition && cloneTransition) setTransitionHooks(cloned, transition.clone(cloned));
9295
9462
  defineLegacyVNodeProperties(cloned);
@@ -9353,25 +9520,28 @@ function normalizeChildren(vnode, children) {
9353
9520
  const { shapeFlag } = vnode;
9354
9521
  if (children == null) children = null;
9355
9522
  else if (isArray(children)) type = 16;
9356
- else if (typeof children === "object") if (shapeFlag & 65) {
9357
- const slot = children.default;
9358
- if (slot) {
9359
- slot._c && (slot._d = false);
9360
- normalizeChildren(vnode, slot());
9361
- slot._c && (slot._d = true);
9362
- }
9363
- return;
9364
- } else {
9365
- type = 32;
9366
- const slotFlag = children._;
9367
- if (!slotFlag && !isInternalObject(children)) children._ctx = currentRenderingInstance;
9368
- else if (slotFlag === 3 && currentRenderingInstance) if (currentRenderingInstance.slots._ === 1) children._ = 1;
9369
- else {
9370
- children._ = 2;
9371
- vnode.patchFlag |= 1024;
9523
+ else if (typeof children === "object") {
9524
+ if (shapeFlag & 65) {
9525
+ const slot = children.default;
9526
+ if (slot) {
9527
+ slot._c && (slot._d = false);
9528
+ normalizeChildren(vnode, slot());
9529
+ slot._c && (slot._d = true);
9530
+ }
9531
+ return;
9532
+ } else {
9533
+ type = 32;
9534
+ const slotFlag = children._;
9535
+ if (!slotFlag && !isInternalObject(children)) children._ctx = currentRenderingInstance;
9536
+ else if (slotFlag === 3 && currentRenderingInstance) {
9537
+ if (currentRenderingInstance.slots._ === 1) children._ = 1;
9538
+ else {
9539
+ children._ = 2;
9540
+ vnode.patchFlag |= 1024;
9541
+ }
9542
+ }
9372
9543
  }
9373
- }
9374
- else if (isFunction(children)) {
9544
+ } else if (isFunction(children)) {
9375
9545
  if (shapeFlag & 65) {
9376
9546
  normalizeChildren(vnode, { default: children });
9377
9547
  return;
@@ -9489,7 +9659,7 @@ const useInstanceOption = (key, silent = false) => {
9489
9659
  };
9490
9660
  //#endregion
9491
9661
  //#region packages/runtime-core/src/component.ts
9492
- const emptyAppContext = /* @__PURE__ */ createAppContext();
9662
+ const emptyAppContext = /*@__PURE__*/ createAppContext();
9493
9663
  let uid = 0;
9494
9664
  function createComponentInstance(vnode, parent, suspense) {
9495
9665
  const type = vnode.type;
@@ -9634,9 +9804,10 @@ function setupStatefulComponent(instance, isSSR) {
9634
9804
  } else finishComponentSetup(instance, isSSR);
9635
9805
  }
9636
9806
  function handleSetupResult(instance, setupResult, isSSR) {
9637
- if (isFunction(setupResult)) if (instance.type.__ssrInlineRender) instance.ssrRender = setupResult;
9638
- else instance.render = setupResult;
9639
- else if (isObject(setupResult)) {
9807
+ if (isFunction(setupResult)) {
9808
+ if (instance.type.__ssrInlineRender) instance.ssrRender = setupResult;
9809
+ else instance.render = setupResult;
9810
+ } else if (isObject(setupResult)) {
9640
9811
  if (isVNode(setupResult)) warn$1("setup() should not return VNodes directly - return a render function instead.");
9641
9812
  instance.devtoolsRawSetupState = setupResult;
9642
9813
  instance.setupState = proxyRefs(setupResult);
@@ -9691,10 +9862,12 @@ function finishComponentSetup(instance, isSSR, skipOptions) {
9691
9862
  restoreCurrentInstance(prevInstance);
9692
9863
  }
9693
9864
  }
9694
- if (!Component.render && instance.render === NOOP && !isSSR) if (!compile$1 && Component.template)
9865
+ if (!Component.render && instance.render === NOOP && !isSSR) {
9866
+ if (!compile$1 && Component.template)
9695
9867
  /* v8 ignore start */
9696
- warn$1("Component provided template option but runtime compilation is not supported in this build of Vue.");
9697
- else warn$1(`Component is missing template or render function: `, Component);
9868
+ warn$1("Component provided template option but runtime compilation is not supported in this build of Vue.");
9869
+ else warn$1(`Component is missing template or render function: `, Component);
9870
+ }
9698
9871
  }
9699
9872
  const attrsProxyHandlers = {
9700
9873
  get(target, key) {
@@ -9802,11 +9975,12 @@ function h(type, propsOrChildren, children) {
9802
9975
  try {
9803
9976
  setBlockTracking(-1);
9804
9977
  const l = arguments.length;
9805
- if (l === 2) if (isObject(propsOrChildren) && !isArray(propsOrChildren)) {
9806
- if (isVNode(propsOrChildren)) return createVNode(type, null, [propsOrChildren]);
9807
- return createVNode(type, propsOrChildren);
9808
- } else return createVNode(type, null, propsOrChildren);
9809
- else {
9978
+ if (l === 2) {
9979
+ if (isObject(propsOrChildren) && !isArray(propsOrChildren)) {
9980
+ if (isVNode(propsOrChildren)) return createVNode(type, null, [propsOrChildren]);
9981
+ return createVNode(type, propsOrChildren);
9982
+ } else return createVNode(type, null, propsOrChildren);
9983
+ } else {
9810
9984
  if (l > 3) children = Array.prototype.slice.call(arguments, 2);
9811
9985
  else if (l === 3 && isVNode(children)) children = [children];
9812
9986
  return createVNode(type, propsOrChildren, children);
@@ -9998,7 +10172,7 @@ function isMemoSame(cached, memo) {
9998
10172
  }
9999
10173
  //#endregion
10000
10174
  //#region packages/runtime-core/src/index.ts
10001
- const version = "3.6.0-rc.5";
10175
+ const version = "3.6.0-rc.6";
10002
10176
  const warn = warn$1;
10003
10177
  /**
10004
10178
  * Runtime error messages. Only exposed in dev or esm builds.
@@ -10043,7 +10217,7 @@ const DeprecationTypes = DeprecationTypes$1;
10043
10217
  let policy = void 0;
10044
10218
  const tt = typeof window !== "undefined" && window.trustedTypes;
10045
10219
  if (tt) try {
10046
- policy = /* @__PURE__ */ tt.createPolicy("vue", { createHTML: (val) => val });
10220
+ policy = /*@__PURE__*/ tt.createPolicy("vue", { createHTML: (val) => val });
10047
10221
  } catch (e) {
10048
10222
  warn(`Error creating trusted types policy: ${e}`);
10049
10223
  }
@@ -10051,7 +10225,7 @@ const unsafeToTrustedHTML = policy ? (val) => policy.createHTML(val) : (val) =>
10051
10225
  const svgNS = "http://www.w3.org/2000/svg";
10052
10226
  const mathmlNS = "http://www.w3.org/1998/Math/MathML";
10053
10227
  const doc = typeof document !== "undefined" ? document : null;
10054
- const templateContainer = doc && /* @__PURE__ */ doc.createElement("template");
10228
+ const templateContainer = doc && /*@__PURE__*/ doc.createElement("template");
10055
10229
  const nodeOps = {
10056
10230
  insert: (child, parent, anchor) => {
10057
10231
  parent.insertBefore(child, anchor || null);
@@ -10125,7 +10299,7 @@ const DOMTransitionPropsValidators = {
10125
10299
  leaveActiveClass: String,
10126
10300
  leaveToClass: String
10127
10301
  };
10128
- const TransitionPropsValidators = /* @__PURE__ */ extend({}, BaseTransitionPropsValidators, DOMTransitionPropsValidators);
10302
+ const TransitionPropsValidators = /*@__PURE__*/ extend({}, BaseTransitionPropsValidators, DOMTransitionPropsValidators);
10129
10303
  /**
10130
10304
  * Wrap logic that attaches extra properties to Transition in a function
10131
10305
  * so that it can be annotated as pure
@@ -10140,7 +10314,7 @@ const decorate$1 = (t) => {
10140
10314
  * DOM Transition is a higher-order-component based on the platform-agnostic
10141
10315
  * base Transition component, with DOM-specific logic.
10142
10316
  */
10143
- const Transition = /* @__PURE__ */ decorate$1((props, { slots }) => h(BaseTransition, resolveTransitionProps(props), slots));
10317
+ const Transition = /*@__PURE__*/ decorate$1((props, { slots }) => h(BaseTransition, resolveTransitionProps(props), slots));
10144
10318
  /**
10145
10319
  * #3227 Incoming hooks may be merged into arrays when wrapping Transition
10146
10320
  * with custom HOCs.
@@ -10380,14 +10554,15 @@ const vShow = {
10380
10554
  },
10381
10555
  updated(el, { value, oldValue }, { transition }) {
10382
10556
  if (!value === !oldValue) return;
10383
- if (transition) if (value) {
10384
- transition.beforeEnter(el);
10385
- setDisplay(el, true);
10386
- transition.enter(el);
10387
- } else transition.leave(el, () => {
10388
- setDisplay(el, false);
10389
- });
10390
- else setDisplay(el, value);
10557
+ if (transition) {
10558
+ if (value) {
10559
+ transition.beforeEnter(el);
10560
+ setDisplay(el, true);
10561
+ transition.enter(el);
10562
+ } else transition.leave(el, () => {
10563
+ setDisplay(el, false);
10564
+ });
10565
+ } else setDisplay(el, value);
10391
10566
  },
10392
10567
  beforeUnmount(el, { value }) {
10393
10568
  setDisplay(el, value);
@@ -10418,11 +10593,13 @@ function patchStyle(el, prev, next) {
10418
10593
  const isCssString = isString(next);
10419
10594
  let hasControlledDisplay = false;
10420
10595
  if (next && !isCssString) {
10421
- if (prev) if (!isString(prev)) {
10422
- for (const key in prev) if (next[key] == null) setStyle(style, key, "");
10423
- } else for (const prevStyle of prev.split(";")) {
10424
- const key = prevStyle.slice(0, prevStyle.indexOf(":")).trim();
10425
- if (next[key] == null) setStyle(style, key, "");
10596
+ if (prev) {
10597
+ if (!isString(prev)) {
10598
+ for (const key in prev) if (next[key] == null) setStyle(style, key, "");
10599
+ } else for (const prevStyle of prev.split(";")) {
10600
+ const key = prevStyle.slice(0, prevStyle.indexOf(":")).trim();
10601
+ if (next[key] == null) setStyle(style, key, "");
10602
+ }
10426
10603
  }
10427
10604
  for (const key in next) {
10428
10605
  if (key === "display") hasControlledDisplay = true;
@@ -10451,8 +10628,10 @@ function setStyle(style, name, rawVal) {
10451
10628
  else {
10452
10629
  const val = rawVal == null ? "" : String(rawVal);
10453
10630
  if (semicolonRE.test(val)) warn(`Unexpected semicolon at the end of '${name}' style value: '${val}'`);
10454
- if (name.startsWith("--")) style.setProperty(name, val);
10455
- else {
10631
+ if (name.startsWith("--")) {
10632
+ if (importantRE.test(val)) style.setProperty(name, val.replace(importantRE, ""), "important");
10633
+ else style.setProperty(name, val);
10634
+ } else {
10456
10635
  const prefixed = autoPrefix(style, name);
10457
10636
  if (importantRE.test(val)) style.setProperty(hyphenate(prefixed), val.replace(importantRE, ""), "important");
10458
10637
  else style[prefixed] = val;
@@ -10489,15 +10668,16 @@ function shouldPreserveTextareaResizeStyle(el, key, prev, next) {
10489
10668
  //#region packages/runtime-dom/src/modules/attrs.ts
10490
10669
  const xlinkNS = "http://www.w3.org/1999/xlink";
10491
10670
  function patchAttr(el, key, value, isSVG, instance, isBoolean = isSpecialBooleanAttr(key)) {
10492
- if (isSVG && key.startsWith("xlink:")) if (value == null) el.removeAttributeNS(xlinkNS, key.slice(6, key.length));
10493
- else el.setAttributeNS(xlinkNS, key, value);
10494
- else {
10671
+ if (isSVG && key.startsWith("xlink:")) {
10672
+ if (value == null) el.removeAttributeNS(xlinkNS, key.slice(6, key.length));
10673
+ else el.setAttributeNS(xlinkNS, key, value);
10674
+ } else {
10495
10675
  if (compatCoerceAttr(el, key, value, instance)) return;
10496
10676
  if (value == null || isBoolean && !includeBooleanAttr(value)) el.removeAttribute(key);
10497
10677
  else el.setAttribute(key, isBoolean ? "" : isSymbol(value) ? String(value) : value);
10498
10678
  }
10499
10679
  }
10500
- const isEnumeratedAttr = /* @__PURE__ */ makeMap("contenteditable,draggable,spellcheck");
10680
+ const isEnumeratedAttr = /*@__PURE__*/ makeMap("contenteditable,draggable,spellcheck");
10501
10681
  function compatCoerceAttr(el, key, value, instance = null) {
10502
10682
  if (isEnumeratedAttr(key)) {
10503
10683
  const v2CoercedValue = value === void 0 ? null : value === null || value === false || value === "false" ? "false" : "true";
@@ -10589,7 +10769,7 @@ function parseEventName(name) {
10589
10769
  return [name[2] === ":" ? name.slice(3) : hyphenate(name.slice(2)), options];
10590
10770
  }
10591
10771
  let cachedNow = 0;
10592
- const p = /* @__PURE__ */ Promise.resolve();
10772
+ const p = /*@__PURE__*/ Promise.resolve();
10593
10773
  const getNow = () => cachedNow || (p.then(() => cachedNow = 0), cachedNow = Date.now());
10594
10774
  function createInvoker(initialValue, instance) {
10595
10775
  const invoker = (e) => {
@@ -10657,7 +10837,7 @@ function shouldSetAsPropForVueCE(el, key) {
10657
10837
  //#endregion
10658
10838
  //#region packages/runtime-dom/src/apiCustomElement.ts
10659
10839
  const REMOVAL = {};
10660
- /* @__NO_SIDE_EFFECTS__ */
10840
+ /*@__NO_SIDE_EFFECTS__*/
10661
10841
  function defineCustomElement(options, extraOptions, _createApp) {
10662
10842
  let Comp = /* @__PURE__ */ defineComponent(options, extraOptions);
10663
10843
  if (isPlainObject(Comp)) Comp = extend({}, Comp, extraOptions);
@@ -10706,12 +10886,14 @@ var VueElementBase = class VueElementBase extends BaseClass {
10706
10886
  this._parent = parent;
10707
10887
  break;
10708
10888
  }
10709
- if (!this._instance) if (this._resolved) this._mountComponent(this._def);
10710
- else if (parent && parent._pendingResolve) this._pendingResolve = parent._pendingResolve.then(() => {
10711
- this._pendingResolve = void 0;
10712
- if (this.isConnected) return this._resolveDef();
10713
- });
10714
- else this._resolveDef();
10889
+ if (!this._instance) {
10890
+ if (this._resolved) this._mountComponent(this._def);
10891
+ else if (parent && parent._pendingResolve) this._pendingResolve = parent._pendingResolve.then(() => {
10892
+ this._pendingResolve = void 0;
10893
+ if (this.isConnected) return this._resolveDef();
10894
+ });
10895
+ else this._resolveDef();
10896
+ }
10715
10897
  }
10716
10898
  disconnectedCallback() {
10717
10899
  this._connected = false;
@@ -11110,7 +11292,7 @@ const decorate = (t) => {
11110
11292
  };
11111
11293
  const TransitionGroup = /* @__PURE__ */ decorate({
11112
11294
  name: "TransitionGroup",
11113
- props: /* @__PURE__ */ extend({}, TransitionPropsValidators, {
11295
+ props: /*@__PURE__*/ extend({}, TransitionPropsValidators, {
11114
11296
  tag: String,
11115
11297
  moveClass: String
11116
11298
  }),
@@ -11392,19 +11574,39 @@ const vModelSelectInit = (el, value, number, set) => {
11392
11574
  el._modelValue = value;
11393
11575
  addEventListener(el, "change", () => {
11394
11576
  const selectedVal = Array.prototype.filter.call(el.options, (o) => o.selected).map((o) => number ? looseToNumber(getValue(o)) : getValue(o));
11395
- (set || el[assignKey])(el.multiple ? isSet(el._modelValue) ? new Set(selectedVal) : selectedVal : selectedVal[0]);
11396
- el._assigning = true;
11397
- nextTick(() => {
11398
- el._assigning = false;
11399
- });
11577
+ const multiple = el.multiple;
11578
+ const assignedValue = multiple ? isSet(el._modelValue) ? new Set(selectedVal) : selectedVal : selectedVal[0];
11579
+ const pending = el._pendingValue = [multiple, multiple ? isArray(assignedValue) ? selectedVal.slice() : selectedVal : assignedValue];
11580
+ try {
11581
+ (set || el[assignKey])(assignedValue);
11582
+ } finally {
11583
+ nextTick(() => {
11584
+ if (el._pendingValue === pending) el._pendingValue = void 0;
11585
+ });
11586
+ }
11400
11587
  });
11401
11588
  };
11589
+ function isSameSelectValue(value, assignedValue, multiple) {
11590
+ if (!multiple) return looseEqual(value, assignedValue);
11591
+ if (isArray(value)) return looseEqual(value, assignedValue);
11592
+ if (isSet(value)) {
11593
+ if (value.size !== assignedValue.length) return false;
11594
+ for (const item of assignedValue) if (!value.has(item)) return false;
11595
+ return true;
11596
+ }
11597
+ return false;
11598
+ }
11402
11599
  /**
11403
11600
  * @internal
11404
11601
  */
11405
11602
  const vModelSetSelected = (el, value) => {
11406
11603
  el._modelValue = value;
11407
- if (el._assigning) return;
11604
+ const pending = el._pendingValue;
11605
+ el._pendingValue = void 0;
11606
+ if (pending && pending[0] === el.multiple && isSameSelectValue(value, pending[1], pending[0])) return;
11607
+ setSelected(el, value);
11608
+ };
11609
+ function setSelected(el, value) {
11408
11610
  const isMultiple = el.multiple;
11409
11611
  const isArrayValue = isArray(value);
11410
11612
  if (isMultiple && !isArrayValue && !isSet(value)) {
@@ -11414,18 +11616,19 @@ const vModelSetSelected = (el, value) => {
11414
11616
  for (let i = 0, l = el.options.length; i < l; i++) {
11415
11617
  const option = el.options[i];
11416
11618
  const optionValue = getValue(option);
11417
- if (isMultiple) if (isArrayValue) {
11418
- const optionType = typeof optionValue;
11419
- if (optionType === "string" || optionType === "number") option.selected = value.some((v) => String(v) === String(optionValue));
11420
- else option.selected = looseIndexOf(value, optionValue) > -1;
11421
- } else option.selected = value.has(optionValue);
11422
- else if (looseEqual(getValue(option), value)) {
11619
+ if (isMultiple) {
11620
+ if (isArrayValue) {
11621
+ const optionType = typeof optionValue;
11622
+ if (optionType === "string" || optionType === "number") option.selected = value.some((v) => String(v) === String(optionValue));
11623
+ else option.selected = looseIndexOf(value, optionValue) > -1;
11624
+ } else option.selected = value.has(optionValue);
11625
+ } else if (looseEqual(getValue(option), value)) {
11423
11626
  if (el.selectedIndex !== i) el.selectedIndex = i;
11424
11627
  return;
11425
11628
  }
11426
11629
  }
11427
11630
  if (!isMultiple && el.selectedIndex !== -1) el.selectedIndex = -1;
11428
- };
11631
+ }
11429
11632
  /**
11430
11633
  * @internal retrieve raw value set via :value bindings
11431
11634
  */
@@ -11739,7 +11942,7 @@ var src_exports = /* @__PURE__ */ __exportAll({
11739
11942
  withModifiers: () => withModifiers,
11740
11943
  withScopeId: () => withScopeId
11741
11944
  });
11742
- const rendererOptions = /* @__PURE__ */ extend({ patchProp }, nodeOps);
11945
+ const rendererOptions = /*@__PURE__*/ extend({ patchProp }, nodeOps);
11743
11946
  let renderer;
11744
11947
  let enabledHydration = false;
11745
11948
  function ensureRenderer() {
@@ -12120,7 +12323,7 @@ function convertToBlock(node, { helper, removeHelper, inSSR }) {
12120
12323
  //#endregion
12121
12324
  //#region node_modules/.pnpm/entities@7.0.1/node_modules/entities/dist/esm/decode-codepoint.js
12122
12325
  var _a;
12123
- const decodeMap = new Map([
12326
+ const decodeMap = /* @__PURE__ */ new Map([
12124
12327
  [0, 65533],
12125
12328
  [128, 8364],
12126
12329
  [130, 8218],
@@ -12188,7 +12391,7 @@ function decodeBase64(input) {
12188
12391
  }
12189
12392
  //#endregion
12190
12393
  //#region node_modules/.pnpm/entities@7.0.1/node_modules/entities/dist/esm/generated/decode-data-html.js
12191
- const htmlDecodeTree = /* @__PURE__ */ decodeBase64("QR08ALkAAgH6AYsDNQR2BO0EPgXZBQEGLAbdBxMISQrvCmQLfQurDKQNLw4fD4YPpA+6D/IPAAAAAAAAAAAAAAAAKhBMEY8TmxUWF2EYLBkxGuAa3RsJHDscWR8YIC8jSCSIJcMl6ie3Ku8rEC0CLjoupS7kLgAIRU1hYmNmZ2xtbm9wcnN0dVQAWgBeAGUAaQBzAHcAfgCBAIQAhwCSAJoAoACsALMAbABpAGcAO4DGAMZAUAA7gCYAJkBjAHUAdABlADuAwQDBQHIiZXZlAAJhAAFpeW0AcgByAGMAO4DCAMJAEGRyAADgNdgE3XIAYQB2AGUAO4DAAMBA8CFoYZFj4SFjcgBhZAAAoFMqAAFncIsAjgBvAG4ABGFmAADgNdg43fAlbHlGdW5jdGlvbgCgYSBpAG4AZwA7gMUAxUAAAWNzpACoAHIAAOA12Jzc6SFnbgCgVCJpAGwAZABlADuAwwDDQG0AbAA7gMQAxEAABGFjZWZvcnN1xQDYANoA7QDxAPYA+QD8AAABY3LJAM8AayNzbGFzaAAAoBYidgHTANUAAKDnKmUAZAAAoAYjeQARZIABY3J0AOAA5QDrAGEidXNlAACgNSLuI291bGxpcwCgLCFhAJJjcgAA4DXYBd1wAGYAAOA12Dnd5SF2ZdhiYwDyAOoAbSJwZXEAAKBOIgAHSE9hY2RlZmhpbG9yc3UXARoBHwE6AVIBVQFiAWQBZgGCAakB6QHtAfIBYwB5ACdkUABZADuAqQCpQIABY3B5ACUBKAE1AfUhdGUGYWmg0iJ0KGFsRGlmZmVyZW50aWFsRAAAoEUhbCJleXMAAKAtIQACYWVpb0EBRAFKAU0B8iFvbgxhZABpAGwAO4DHAMdAcgBjAAhhbiJpbnQAAKAwIm8AdAAKYQABZG5ZAV0BaSJsbGEAuGB0I2VyRG90ALdg8gA5AWkAp2NyImNsZQAAAkRNUFRwAXQBeQF9AW8AdAAAoJkiaSJudXMAAKCWIuwhdXMAoJUiaSJtZXMAAKCXIm8AAAFjc4cBlAFrKndpc2VDb250b3VySW50ZWdyYWwAAKAyImUjQ3VybHkAAAFEUZwBpAFvJXVibGVRdW90ZQAAoB0gdSJvdGUAAKAZIAACbG5wdbABtgHNAdgBbwBuAGWgNyIAoHQqgAFnaXQAvAHBAcUB8iJ1ZW50AKBhIm4AdAAAoC8i7yV1ckludGVncmFsAKAuIgABZnLRAdMBAKACIe8iZHVjdACgECJuLnRlckNsb2Nrd2lzZUNvbnRvdXJJbnRlZ3JhbAAAoDMi7yFzcwCgLypjAHIAAOA12J7ccABDoNMiYQBwAACgTSKABURKU1phY2VmaW9zAAsCEgIVAhgCGwIsAjQCOQI9AnMCfwNvoEUh9CJyYWhkAKARKWMAeQACZGMAeQAFZGMAeQAPZIABZ3JzACECJQIoAuchZXIAoCEgcgAAoKEhaAB2AACg5CoAAWF5MAIzAvIhb24OYRRkbAB0oAciYQCUY3IAAOA12AfdAAFhZkECawIAAWNtRQJnAvIjaXRpY2FsAAJBREdUUAJUAl8CYwJjInV0ZQC0YG8AdAFZAloC2WJiJGxlQWN1dGUA3WJyImF2ZQBgYGkibGRlANxi7yFuZACgxCJmJWVyZW50aWFsRAAAoEYhcAR9AgAAAAAAAIECjgIAABoDZgAA4DXYO91EoagAhQKJAm8AdAAAoNwgcSJ1YWwAAKBQIuIhbGUAA0NETFJVVpkCqAK1Au8C/wIRA28AbgB0AG8AdQByAEkAbgB0AGUAZwByAGEA7ADEAW8AdAKvAgAAAACwAqhgbiNBcnJvdwAAoNMhAAFlb7kC0AJmAHQAgAFBUlQAwQLGAs0CciJyb3cAAKDQIekkZ2h0QXJyb3cAoNQhZQDlACsCbgBnAAABTFLWAugC5SFmdAABQVLcAuECciJyb3cAAKD4J+kkZ2h0QXJyb3cAoPon6SRnaHRBcnJvdwCg+SdpImdodAAAAUFU9gL7AnIicm93AACg0iFlAGUAAKCoInAAQQIGAwAAAAALA3Iicm93AACg0SFvJHduQXJyb3cAAKDVIWUlcnRpY2FsQmFyAACgJSJuAAADQUJMUlRhJAM2AzoDWgNxA3oDciJyb3cAAKGTIUJVLAMwA2EAcgAAoBMpcCNBcnJvdwAAoPUhciJldmUAEWPlIWZ00gJDAwAASwMAAFIDaSVnaHRWZWN0b3IAAKBQKWUkZVZlY3RvcgAAoF4p5SJjdG9yQqC9IWEAcgAAoFYpaSJnaHQA1AFiAwAAaQNlJGVWZWN0b3IAAKBfKeUiY3RvckKgwSFhAHIAAKBXKWUAZQBBoKQiciJyb3cAAKCnIXIAcgBvAPcAtAIAAWN0gwOHA3IA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YwAAoN8i4SFycnCgtiEAoD0pgKIqImJjZG9zACsVMBU6FT4VQRVyImNhcAAAoEgqAAFhdTQVNxVwAACgRipwAACgSipvAHQAAKCNInIAAKBFKgDgKiIA/gACYWxydksVURVuFXMVcgByAG2gtyEAoDwpeQCAAWV2dwBYFWUVaRVxAHACXxUAAAAAYxVyAGUA4wAXFXUA4wAZFWUAZQAAoM4iZSJkZ2UAAKDPImUAbgA7gKQApEBlI2Fycm93AAABbHJ7FX8V5SFmdACgtiFpImdodAAAoLchZQDkAG0VAAFjaYsVkRVvAG4AaQBuAPQAkwFuAHQAAKAxImwiY3R5AACgLSOACUFIYWJjZGVmaGlqbG9yc3R1d3oAuBW7Fb8V1RXgFegV+RUKFhUWHxZUFlcWZRbFFtsW7xb7FgUXChdyAPIAtAJhAHIAAKBlKQACZ2xyc8YVyhXOFdAV5yFlcgCgICDlIXRoAKA4IfIA9QxoAHagECAAoKMiawHZFd4VYSJyb3cAAKAPKWEA4wBfAgABYXnkFecV8iFvbg9hNGQAoUYhYW/tFfQVAAFnciEC8RVyAACgyiF0InNlcQAAoHcqgAFnbG0A/xUCFgUWO4CwALBAdABhALRjcCJ0eXYAAKCxKQABaXIOFhIW8yFodACgfykA4DXYId1hAHIAAAFschsWHRYAoMMhAKDCIYACYWVnc3YAKBauAjYWOhY+Fm0AAKHEIm9zLhY0Fm4AZABzoMQi9SFpdACgZiZhIm1tYQDdY2kAbgAAoPIiAKH3AGlvQxZRFmQAZQAAgfcAO29KFksW90BuI3RpbWVzAACgxyJuAPgAUBZjAHkAUmRjAG8CXhYAAAAAYhZyAG4AAKAeI28AcAAAoA0jgAJscHR1dwBuFnEWdRaSFp4W7CFhciRgZgAA4DXYVd0AotkCZW1wc30WhBaJFo0WcQBkoFAibwB0AACgUSJpIm51cwAAoDgi7CF1cwCgFCLxInVhcmUAoKEiYgBsAGUAYgBhAHIAdwBlAGQAZwDlANcAbgCAAWFkaAClFqoWtBZyAHIAbwD3APUMbwB3AG4AYQByAHIAbwB3APMA8xVhI3Jwb29uAAABbHK8FsAWZQBmAPQAHBZpAGcAaAD0AB4WYgHJFs8WawBhAHIAbwD3AJILbwLUFgAAAADYFnIAbgAAoB8jbwBwAACgDCOAAWNvdADhFukW7BYAAXJ55RboFgDgNdi53FVkbAAAoPYp8iFvaxFhAAFkcvMW9xZvAHQAAKDxImkA5qC/JVsSAAFhaP8WAhdyAPIANQNhAPIA1wvhIm5nbGUAoKYpAAFjaQ4XEBd5AF9k5yJyYXJyAKD/JwAJRGFjZGVmZ2xtbm9wcXJzdHV4MRc4F0YXWxcyBF4XaRd5F40XrBe0F78X2RcVGCEYLRg1GEAYAAFEbzUXgRZvAPQA+BUAAWNzPBdCF3UAdABlADuA6QDpQPQhZXIAoG4qAAJhaW95TRdQF1YXWhfyIW9uG2FyAGOgViI7gOoA6kDsIW9uAKBVIk1kbwB0ABdhAAFEcmIXZhdvAHQAAKBSIgDgNdgi3XKhmipuF3QXYQB2AGUAO4DoAOhAZKCWKm8AdAAAoJgqgKGZKmlscwCAF4UXhxfuInRlcnMAoOcjAKATIWSglSpvAHQAAKCXKoABYXBzAJMXlheiF2MAcgATYXQAeQBzogUinxcAAAAAoRdlAHQAAKAFInAAMaADIDMBqRerFwCgBCAAoAUgAAFnc7AXsRdLYXAAAKACIAABZ3C4F7sXbwBuABlhZgAA4DXYVt2AAWFscwDFF8sXzxdyAHOg1SJsAACg4yl1AHMAAKBxKmkAAKG1A2x21RfYF28AbgC1Y/VjAAJjc3V24BfoF/0XEBgAAWlv5BdWF3IAYwAAoFYiaQLuFwAAAADwF+0ADQThIW50AAFnbPUX+Rd0AHIAAKCWKuUhc3MAoJUqgAFhZWkAAxgGGAoYbABzAD1gcwB0AACgXyJ2AESgYSJEAACgeCrwImFyc2wAoOUpAAFEYRkYHRhvAHQAAKBTInIAcgAAoHEpgAFjZGkAJxgqGO0XcgAAoC8hbwD0AIwCAAFhaDEYMhi3YzuA8ADwQAABbXI5GD0YbAA7gOsA60BvAACgrCCAAWNpcABGGEgYSxhsACFgcwD0ACwEAAFlb08YVxhjAHQAYQB0AGkAbwDuABoEbgBlAG4AdABpAGEAbADlADME4Ql1GAAAgRgAAIMYiBgAAAAAoRilGAAAqhgAALsYvhjRGAAA1xgnGWwAbABpAG4AZwBkAG8AdABzAGUA8QBlF3kARGRtImFsZQAAoEAmgAFpbHIAjRiRGJ0Y7CFpZwCgA/tpApcYAAAAAJoYZwAAoAD7aQBnAACgBPsA4DXYI93sIWlnAKAB++whaWcA4GYAagCAAWFsdACvGLIYthh0AACgbSZpAGcAAKAC+24AcwAAoLElbwBmAJJh8AHCGAAAxhhmAADgNdhX3QABYWvJGMwYbADsAGsEdqDUIgCg2SphI3J0aW50AACgDSoAAWFv2hgiGQABY3PeGB8ZsQPnGP0YBRkSGRUZAAAdGbID7xjyGPQY9xj5GAAA+xg7gL0AvUAAoFMhO4C8ALxAAKBVIQCgWSEAoFshswEBGQAAAxkAoFQhAKBWIbQCCxkOGQAAAAAQGTuAvgC+QACgVyEAoFwhNQAAoFghtgEZGQAAGxkAoFohAKBdITgAAKBeIWwAAKBEIHcAbgAAoCIjYwByAADgNdi73IAIRWFiY2RlZmdpamxub3JzdHYARhlKGVoZXhlmGWkZkhmWGZkZnRmgGa0ZxhnLGc8Z4BkjGmygZyIAoIwqgAFjbXAAUBlTGVgZ9SF0ZfVhbQBhAOSgswM6FgCghipyImV2ZQAfYQABaXliGWUZcgBjAB1hM2RvAHQAIWGAoWUibHFzAMYEcBl6GfGhZSLOBAAAdhlsAGEAbgD0AN8EgKF+KmNkbACBGYQZjBljAACgqSpvAHQAb6CAKmyggioAoIQqZeDbIgD+cwAAoJQqcgAA4DXYJN3noGsirATtIWVsAKA3IWMAeQBTZIChdyJFYWoApxmpGasZAKCSKgCgpSoAoKQqAAJFYWVztBm2Gb0ZwhkAoGkicABwoIoq8iFveACgiipxoIgq8aCIKrUZaQBtAACg5yJwAGYAAOA12FjdYQB2AOUAYwIAAWNp0xnWGXIAAKAKIW0AAKFzImVs3BneGQCgjioAoJAqAIM+ADtjZGxxco0E6xn0GfgZ/BkBGgABY2nvGfEZAKCnKnIAAKB6Km8AdAAAoNci0CFhcgCglSl1ImVzdAAAoHwqgAJhZGVscwAKGvQZFhrVBCAa8AEPGgAAFBpwAHIAbwD4AFkZcgAAoHgpcQAAAWxxxAQbGmwAZQBzAPMASRlpAO0A5AQAAWVuJxouGnIjdG5lcXEAAOBpIgD+xQAsGgAFQWFiY2Vma29zeUAaQxpmGmoabRqDGocalhrCGtMacgDyAMwCAAJpbG1yShpOGlAaVBpyAHMA8ABxD2YAvWBpAGwA9AASBQABZHJYGlsaYwB5AEpkAKGUIWN3YBpkGmkAcgAAoEgpAKCtIWEAcgAAoA8h6SFyYyVhgAFhbHIAcxp7Gn8a8iF0c3WgZSZpAHQAAKBlJuwhaXAAoCYg4yFvbgCguSJyAADgNdgl3XMAAAFld4wakRphInJvdwAAoCUpYSJyb3cAAKAmKYACYW1vcHIAnxqjGqcauhq+GnIAcgAAoP8h9CFodACgOyJrAAABbHKsGrMaZSRmdGFycm93AACgqSHpJGdodGFycm93AKCqIWYAAOA12Fnd4iFhcgCgFSCAAWNsdADIGswa0BpyAADgNdi93GEAcwDoAGka8iFvaydhAAFicNca2xr1IWxsAKBDIOghZW4AoBAg4Qr2GgAA/RoAAAgbExsaGwAAIRs7GwAAAAA+G2IbmRuVG6sbAACyG80b0htjAHUAdABlADuA7QDtQAChYyBpeQEbBhtyAGMAO4DuAO5AOGQAAWN4CxsNG3kANWRjAGwAO4ChAKFAAAFmcssCFhsA4DXYJt1yAGEAdgBlADuA7ADsQIChSCFpbm8AJxsyGzYbAAFpbisbLxtuAHQAAKAMKnQAAKAtIuYhaW4AoNwpdABhAACgKSHsIWlnM2GAAWFvcABDG1sbXhuAAWNndABJG0sbWRtyACthgAFlbHAAcQVRG1UbaQBuAOUAyAVhAHIA9AByBWgAMWFmAACgtyJlAGQAtWEAoggiY2ZvdGkbbRt1G3kb4SFyZQCgBSFpAG4AdKAeImkAZQAAoN0pZABvAPQAWxsAoisiY2VscIEbhRuPG5QbYQBsAACguiIAAWdyiRuNG2UAcgDzACMQ4wCCG2EicmhrAACgFyryIW9kAKA8KgACY2dwdJ8boRukG6gbeQBRZG8AbgAvYWYAAOA12FrdYQC5Y3UAZQBzAHQAO4C/AL9AAAFjabUbuRtyAADgNdi+3G4AAKIIIkVkc3bCG8QbyBvQAwCg+SJvAHQAAKD1Inag9CIAoPMiaaBiIOwhZGUpYesB1hsAANkbYwB5AFZkbAA7gO8A70AAA2NmbW9zdeYb7hvyG/Ub+hsFHAABaXnqG+0bcgBjADVhOWRyAADgNdgn3eEhdGg3YnAAZgAA4DXYW93jAf8bAAADHHIAAOA12L/c8iFjeVhk6yFjeVRkAARhY2ZnaGpvcxUcGhwiHCYcKhwtHDAcNRzwIXBhdqC6A/BjAAFleR4cIRzkIWlsN2E6ZHIAAOA12CjdciJlZW4AOGFjAHkARWRjAHkAXGRwAGYAAOA12FzdYwByAADgNdjA3IALQUJFSGFiY2RlZmdoamxtbm9wcnN0dXYAXhxtHHEcdRx5HN8cBx0dHTwd3B3tHfEdAR4EHh0eLB5FHrwewx7hHgkfPR9LH4ABYXJ0AGQcZxxpHHIA8gBvB/IAxQLhIWlsAKAbKeEhcnIAoA4pZ6BmIgCgiyphAHIAAKBiKWMJjRwAAJAcAACVHAAAAAAAAAAAAACZHJwcAACmHKgcrRwAANIc9SF0ZTph7SJwdHl2AKC0KXIAYQDuAFoG4iFkYbtjZwAAoegnZGyhHKMcAKCRKeUAiwYAoIUqdQBvADuAqwCrQHIAgKOQIWJmaGxwc3QAuhy/HMIcxBzHHMoczhxmoOQhcwAAoB8pcwAAoB0p6wCyGnAAAKCrIWwAAKA5KWkAbQAAoHMpbAAAoKIhAKGrKmFl1hzaHGkAbAAAoBkpc6CtKgDgrSoA/oABYWJyAOUc6RztHHIAcgAAoAwpcgBrAACgcicAAWFr8Rz4HGMAAAFla/Yc9xx7YFtgAAFlc/wc/hwAoIspbAAAAWR1Ax0FHQCgjykAoI0pAAJhZXV5Dh0RHRodHB3yIW9uPmEAAWRpFR0YHWkAbAA8YewAowbiAPccO2QAAmNxcnMkHScdLB05HWEAAKA2KXUAbwDyoBwgqhEAAWR1MB00HeghYXIAoGcpcyJoYXIAAKBLKWgAAKCyIQCiZCJmZ3FzRB1FB5Qdnh10AIACYWhscnQATh1WHWUdbB2NHXIicm93AHSgkCFhAOkAzxxhI3Jwb29uAAABZHVeHWId7yF3bgCgvSFwAACgvCHlJGZ0YXJyb3dzAKDHIWkiZ2h0AIABYWhzAHUdex2DHXIicm93APOglCGdBmEAcgBwAG8AbwBuAPMAzgtxAHUAaQBnAGEAcgByAG8A9wBlGugkcmVldGltZXMAoMsi8aFkIk0HAACaHWwAYQBuAPQAXgcAon0qY2Rnc6YdqR2xHbcdYwAAoKgqbwB0AG+gfypyoIEqAKCDKmXg2iIA/nMAAKCTKoACYWRlZ3MAwB3GHcod1h3ZHXAAcAByAG8A+ACmHG8AdAAAoNYicQAAAWdxzx3SHXQA8gBGB2cAdADyAHQcdADyAFMHaQDtAGMHgAFpbHIA4h3mHeod8yFodACgfClvAG8A8gDKBgDgNdgp3UWgdiIAoJEqYQH1Hf4dcgAAAWR1YB35HWygvCEAoGopbABrAACghCVjAHkAWWQAomoiYWNodAweDx4VHhkecgDyAGsdbwByAG4AZQDyAGAW4SFyZACgaylyAGkAAKD6JQABaW8hHiQe5CFvdEBh9SFzdGGgsCPjIWhlAKCwIwACRWFlczMeNR48HkEeAKBoInAAcKCJKvIhb3gAoIkqcaCHKvGghyo0HmkAbQAAoOYiAARhYm5vcHR3elIeXB5fHoUelh6mHqsetB4AAW5yVh5ZHmcAAKDsJ3IAAKD9IXIA6wCwBmcAgAFsbXIAZh52Hnse5SFmdAABYXKIB2weaQBnAGgAdABhAHIAcgBvAPcAkwfhInBzdG8AoPwnaQBnAGgAdABhAHIAcgBvAPcAmgdwI2Fycm93AAABbHKNHpEeZQBmAPQAxhxpImdodAAAoKwhgAFhZmwAnB6fHqIecgAAoIUpAOA12F3ddQBzAACgLSppIm1lcwAAoDQqYQGvHrMecwB0AACgFyLhAIoOZaHKJbkeRhLuIWdlAKDKJWEAcgBsoCgAdAAAoJMpgAJhY2htdADMHs8e1R7bHt0ecgDyAJ0GbwByAG4AZQDyANYWYQByAGSgyyEAoG0pAKAOIHIAaQAAoL8iAANhY2hpcXTrHu8e1QfzHv0eBh/xIXVvAKA5IHIAAOA12MHcbQDloXIi+h4AAPweAKCNKgCgjyoAAWJ19xwBH28AcqAYIACgGiDyIW9rQmEAhDwAO2NkaGlscXJCBhcfxh0gHyQfKB8sHzEfAAFjaRsfHR8AoKYqcgAAoHkqcgBlAOUAkx3tIWVzAKDJIuEhcnIAoHYpdSJlc3QAAKB7KgABUGk1HzkfYQByAACglillocMlAgdfEnIAAAFkdUIfRx9zImhhcgAAoEop6CFhcgCgZikAAWVuTx9WH3IjdG5lcXEAAOBoIgD+xQBUHwAHRGFjZGVmaGlsbm9wc3VuH3Ifoh+rH68ftx+7H74f5h/uH/MfBwj/HwsgxCFvdACgOiIAAmNscHJ5H30fiR+eH3IAO4CvAK9AAAFldIEfgx8AoEImZaAgJ3MAZQAAoCAnc6CmIXQAbwCAoaYhZGx1AJQfmB+cH28AdwDuAHkDZQBmAPQA6gbwAOkO6yFlcgCgriUAAW95ph+qH+0hbWEAoCkqPGThIXNoAKAUIOElc3VyZWRhbmdsZQCgISJyAADgNdgq3W8AAKAnIYABY2RuAMQfyR/bH3IAbwA7gLUAtUBhoiMi0B8AANMf1x9zAPQAKxFpAHIAAKDwKm8AdAA7gLcAt0B1AHMA4qESIh4TAADjH3WgOCIAoCoqYwHqH+0fcAAAoNsq8gB+GnAAbAB1APMACAgAAWRw9x/7H+UhbHMAoKciZgAA4DXYXt0AAWN0AyAHIHIAAOA12MLc8CFvcwCgPiJsobwDECAVIPQiaW1hcACguCJhAPAAEyAADEdMUlZhYmNkZWZnaGlqbG1vcHJzdHV2dzwgRyBmIG0geSCqILgg2iDeIBEhFSEyIUMhTSFQIZwhnyHSIQAiIyKLIrEivyIUIwABZ3RAIEMgAODZIjgD9uBrItIgBwmAAWVsdABNIF8gYiBmAHQAAAFhclMgWCByInJvdwAAoM0h6SRnaHRhcnJvdwCgziEA4NgiOAP24Goi0iBfCekkZ2h0YXJyb3cAoM8hAAFEZHEgdSDhIXNoAKCvIuEhc2gAoK4igAJiY25wdACCIIYgiSCNIKIgbABhAACgByL1IXRlRGFnAADgICLSIACiSSJFaW9wlSCYIJwgniAA4HAqOANkAADgSyI4A3MASWFyAG8A+AAyCnUAcgBhoG4mbADzoG4mmwjzAa8gAACzIHAAO4CgAKBAbQBwAOXgTiI4AyoJgAJhZW91eQDBIMogzSDWINkg8AHGIAAAyCAAoEMqbwBuAEhh5CFpbEZhbgBnAGSgRyJvAHQAAOBtKjgDcAAAoEIqPWThIXNoAKATIACjYCJBYWRxc3jpIO0g+SD+IAIhDCFyAHIAAKDXIXIAAAFocvIg9SBrAACgJClvoJch9wAGD28AdAAA4FAiOAN1AGkA9gC7CAABZWkGIQohYQByAACgKCntAN8I6SFzdPOgBCLlCHIAAOA12CvdAAJFZXN0/wgcISshLiHxoXEiIiEAABMJ8aFxIgAJAAAnIWwAYQBuAPQAEwlpAO0AGQlyoG8iAKBvIoABQWFwADghOyE/IXIA8gBeIHIAcgAAoK4hYQByAACg8ipzogsiSiEAAAAAxwtkoPwiAKD6ImMAeQBaZIADQUVhZGVzdABcIV8hYiFmIWkhkyGWIXIA8gBXIADgZiI4A3IAcgAAoJohcgAAoCUggKFwImZxcwBwIYQhjiF0AAABYXJ1IXohcgByAG8A9wBlIWkAZwBoAHQAYQByAHIAbwD3AD4h8aFwImAhAACKIWwAYQBuAPQAZwlz4H0qOAMAoG4iaQDtAG0JcqBuImkA5aDqIkUJaQDkADoKAAFwdKMhpyFmAADgNdhf3YCBrAA7aW4AriGvIcchrEBuAIChCSJFZHYAtyG6Ib8hAOD5IjgDbwB0AADg9SI4A+EB1gjEIcYhAKD3IgCg9iJpAHagDCLhAagJzyHRIQCg/iIAoP0igAFhb3IA2CHsIfEhcgCAoSYiYXN0AOAh5SHpIWwAbABlAOwAywhsAADg/SrlIADgAiI4A2wiaW50AACgFCrjoYAi9yEAAPohdQDlAJsJY+CvKjgDZaCAIvEAkwkAAkFhaXQHIgoiFyIeInIA8gBsIHIAcgAAoZshY3cRIhQiAOAzKTgDAOCdITgDZyRodGFycm93AACgmyFyAGkA5aDrIr4JgANjaGltcHF1AC8iPCJHIpwhTSJQIloigKGBImNlcgA2Iv0JOSJ1AOUABgoA4DXYw9zvIXJ0bQKdIQAAAABEImEAcgDhAOEhbQBloEEi8aBEIiYKYQDyAMsIcwB1AAABYnBWIlgi5QDUCeUA3wmAAWJjcABgInMieCKAoYQiRWVzAGci7glqIgDgxSo4A2UAdABl4IIi0iBxAPGgiCJoImMAZaCBIvEA/gmAoYUiRWVzAH8iFgqCIgDgxio4A2UAdABl4IMi0iBxAPGgiSKAIgACZ2lscpIilCKaIpwi7AAMCWwAZABlADuA8QDxQOcAWwlpI2FuZ2xlAAABbHKkIqoi5SFmdGWg6iLxAEUJaSJnaHQAZaDrIvEAvgltoL0DAKEjAGVzuCK8InIAbwAAoBYhcAAAoAcggARESGFkZ2lscnMAziLSItYi2iLeIugi7SICIw8j4SFzaACgrSLhIXJyAKAEKXAAAOBNItIg4SFzaACgrCIAAWV04iLlIgDgZSLSIADgPgDSIG4iZmluAACg3imAAUFldADzIvci+iJyAHIAAKACKQDgZCLSIHLgPADSIGkAZQAA4LQi0iAAAUF0BiMKI3IAcgAAoAMp8iFpZQDgtSLSIGkAbQAA4Dwi0iCAAUFhbgAaIx4jKiNyAHIAAKDWIXIAAAFociMjJiNrAACgIylvoJYh9wD/DuUhYXIAoCcpUxJqFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAVCMAAF4jaSN/I4IjjSOeI8AUAAAAAKYjwCMAANoj3yMAAO8jHiQvJD8kRCQAAWNzVyNsFHUAdABlADuA8wDzQAABaXlhI2cjcgBjoJoiO4D0APRAPmSAAmFiaW9zAHEjdCN3I3EBeiNzAOgAdhTsIWFjUWF2AACgOCrvIWxkAKC8KewhaWdTYQABY3KFI4kjaQByAACgvykA4DXYLN1vA5QjAAAAAJYjAACcI24A22JhAHYAZQA7gPIA8kAAoMEpAAFibaEjjAphAHIAAKC1KQACYWNpdKwjryO6I70jcgDyAFkUAAFpcrMjtiNyAACgvinvIXNzAKC7KW4A5QDZCgCgwCmAAWFlaQDFI8gjyyNjAHIATWFnAGEAyWOAAWNkbgDRI9Qj1iPyIW9uv2MAoLYpdQDzAHgBcABmAADgNdhg3YABYWVsAOQj5yPrI3IAAKC3KXIAcAAAoLkpdQDzAHwBAKMoImFkaW9zdvkj/CMPJBMkFiQbJHIA8gBeFIChXSplZm0AAyQJJAwkcgBvoDQhZgAAoDQhO4CqAKpAO4C6ALpA5yFvZgCgtiJyAACgVipsIm9wZQAAoFcqAKBbKoABY2xvACMkJSQrJPIACCRhAHMAaAA7gPgA+EBsAACgmCJpAGwBMyQ4JGQAZQA7gPUA9UBlAHMAYaCXInMAAKA2Km0AbAA7gPYA9kDiIWFyAKA9I+EKXiQAAHokAAB8JJQkAACYJKkkAAAAALUkEQsAAPAkAAAAAAQleiUAAIMlcgCAoSUiYXN0AGUkbyQBCwCBtgA7bGokayS2QGwAZQDsABgDaQJ1JAAAAAB4JG0AAKDzKgCg/Sp5AD9kcgCAAmNpbXB0AIUkiCSLJJkSjyRuAHQAJWBvAGQALmBpAGwAAKAwIOUhbmsAoDEgcgAA4DXYLd2AAWltbwCdJKAkpCR2oMYD1WNtAGEA9AD+B24AZQAAoA4m9KHAA64kAAC0JGMjaGZvcmsAAKDUItZjAAFhdbgkxCRuAAABY2u9JMIkawBooA8hAKAOIfYAaRpzAACkKwBhYmNkZW1zdNMkIRPXJNsk4STjJOck6yTjIWlyAKAjKmkAcgAAoCIqAAFvdYsW3yQAoCUqAKByKm4AO4CxALFAaQBtAACgJip3AG8AAKAnKoABaXB1APUk+iT+JO4idGludACgFSpmAADgNdhh3W4AZAA7gKMAo0CApHoiRWFjZWlub3N1ABMlFSUYJRslTCVRJVklSSV1JQCgsypwAACgtyp1AOUAPwtjoK8qgKJ6ImFjZW5zACclLSU0JTYlSSVwAHAAcgBvAPgAFyV1AHIAbAB5AGUA8QA/C/EAOAuAAWFlcwA8JUElRSXwInByb3gAoLkqcQBxAACgtSppAG0AAKDoImkA7QBEC20AZQDzoDIgIguAAUVhcwBDJVclRSXwAEAlgAFkZnAATwtfJXElgAFhbHMAZSVpJW0l7CFhcgCgLiPpIW5lAKASI/UhcmYAoBMjdKAdIu8AWQvyIWVsAKCwIgABY2l9JYElcgAA4DXYxdzIY24iY3NwAACgCCAAA2Zpb3BzdZElKxuVJZolnyWkJXIAAOA12C7dcABmAADgNdhi3XIiaW1lAACgVyBjAHIAAOA12MbcgAFhZW8AqiW6JcAldAAAAWVpryW2JXIAbgBpAG8AbgDzABkFbgB0AACgFipzAHQAZaA/APEACRj0AG0LgApBQkhhYmNkZWZoaWxtbm9wcnN0dXgA4yXyJfYl+iVpJpAmpia9JtUm5ib4JlonaCdxJ3UnnietJ7EnyCfiJ+cngAFhcnQA6SXsJe4lcgDyAJkM8gD6AuEhaWwAoBwpYQByAPIA3BVhAHIAAKBkKYADY2RlbnFydAAGJhAmEyYYJiYmKyZaJgABZXUKJg0mAOA9IjEDdABlAFVhaQDjACAN7SJwdHl2AKCzKWcAgKHpJ2RlbAAgJiImJCYAoJIpAKClKeUA9wt1AG8AO4C7ALtAcgAApZIhYWJjZmhscHN0dz0mQCZFJkcmSiZMJk4mUSZVJlgmcAAAoHUpZqDlIXMAAKAgKQCgMylzAACgHinrALka8ACVHmwAAKBFKWkAbQAAoHQpbAAAoKMhAKCdIQABYWleJmImaQBsAACgGilvAG6gNiJhAGwA8wB2C4ABYWJyAG8mciZ2JnIA8gAvEnIAawAAoHMnAAFha3omgSZjAAABZWt/JoAmfWBdYAABZXOFJocmAKCMKWwAAAFkdYwmjiYAoI4pAKCQKQACYWV1eZcmmiajJqUm8iFvbllhAAFkaZ4moSZpAGwAV2HsAA8M4gCAJkBkAAJjbHFzrSawJrUmuiZhAACgNylkImhhcgAAoGkpdQBvAPKgHSCjAWgAAKCzIYABYWNnAMMm0iaUC2wAgKEcIWlwcwDLJs4migxuAOUAoAxhAHIA9ADaC3QAAKCtJYABaWxyANsm3ybjJvMhaHQAoH0pbwBvAPIANgwA4DXYL90AAWFv6ib1JnIAAAFkde8m8SYAoMEhbKDAIQCgbCl2oMED8WOAAWducwD+Jk4nUCdoAHQAAANhaGxyc3QKJxInISc1Jz0nRydyInJvdwB0oJIhYQDpAFYmYSNycG9vbgAAAWR1GiceJ28AdwDuAPAmcAAAoMAh5SFmdAABYWgnJy0ncgByAG8AdwDzAAkMYQByAHAAbwBvAG4A8wATBGklZ2h0YXJyb3dzAACgySFxAHUAaQBnAGEAcgByAG8A9wBZJugkcmVldGltZXMAoMwiZwDaYmkAbgBnAGQAbwB0AHMAZQDxABwYgAFhaG0AYCdjJ2YncgDyAAkMYQDyABMEAKAPIG8idXN0AGGgsSPjIWhlAKCxI+0haWQAoO4qAAJhYnB0fCeGJ4knmScAAW5ygCeDJ2cAAKDtJ3IAAKD+IXIA6wAcDIABYWZsAI8nkieVJ3IAAKCGKQDgNdhj3XUAcwAAoC4qaSJtZXMAAKA1KgABYXCiJ6gncgBnoCkAdAAAoJQp7yJsaW50AKASKmEAcgDyADwnAAJhY2hxuCe8J6EMwCfxIXVvAKA6IHIAAOA12MfcAAFidYAmxCdvAPKgGSCoAYABaGlyAM4n0ifWJ3IAZQDlAE0n7SFlcwCgyiJpAIChuSVlZmwAXAxjEt4n9CFyaQCgzinsInVoYXIAoGgpAKAeIWENBSgJKA0oSyhVKIYoAACLKLAoAAAAAOMo5ygAABApJCkxKW0pcSmHKaYpAACYKgAAAACxKmMidXRlAFthcQB1AO8ABR+ApHsiRWFjZWlucHN5ABwoHignKCooLygyKEEoRihJKACgtCrwASMoAAAlKACguCpvAG4AYWF1AOUAgw1koLAqaQBsAF9hcgBjAF1hgAFFYXMAOCg6KD0oAKC2KnAAAKC6KmkAbQAAoOki7yJsaW50AKATKmkA7QCIDUFkbwB0AGKixSKRFgAAAABTKACgZiqAA0FhY21zdHgAYChkKG8ocyh1KHkogihyAHIAAKDYIXIAAAFocmkoayjrAJAab6CYIfcAzAd0ADuApwCnQGkAO2D3IWFyAKApKW0AAAFpbn4ozQBuAHUA8wDOAHQAAKA2J3IA7+A12DDdIxkAAmFjb3mRKJUonSisKHIAcAAAoG8mAAFoeZkonChjAHkASWRIZHIAdABtAqUoAAAAAKgoaQDkAFsPYQByAGEA7ABsJDuArQCtQAABZ22zKLsobQBhAAChwwNmdroouijCY4CjPCJkZWdsbnByAMgozCjPKNMo1yjaKN4obwB0AACgairxoEMiCw5FoJ4qAKCgKkWgnSoAoJ8qZQAAoEYi7CF1cwCgJCrhIXJyAKByKWEAcgDyAPwMAAJhZWl07Sj8KAEpCCkAAWxz8Sj4KGwAcwBlAHQAbQDpAH8oaABwAACgMyrwImFyc2wAoOQpAAFkbFoPBSllAACgIyNloKoqc6CsKgDgrCoA/oABZmxwABUpGCkfKfQhY3lMZGKgLwBhoMQpcgAAoD8jZgAA4DXYZN1hAAABZHIoKRcDZQBzAHWgYCZpAHQAAKBgJoABY3N1ADYpRilhKQABYXU6KUApcABzoJMiAOCTIgD+cABzoJQiAOCUIgD+dQAAAWJwSylWKQChjyJlcz4NUCllAHQAZaCPIvEAPw0AoZAiZXNIDVspZQB0AGWgkCLxAEkNAKGhJWFmZilbBHIAZQFrKVwEAKChJWEAcgDyAAMNAAJjZW10dyl7KX8pgilyAADgNdjI3HQAbQDuAM4AaQDsAAYpYQByAOYAVw0AAWFyiimOKXIA5qAGJhESAAFhbpIpoylpImdodAAAAWVwmSmgKXAAcwBpAGwAbwDuANkXaADpAKAkcwCvYIACYmNtbnAArin8KY4NJSooKgCkgiJFZGVtbnByc7wpvinCKcgpzCnUKdgp3CkAoMUqbwB0AACgvSpkoIYibwB0AACgwyr1IWx0AKDBKgABRWXQKdIpAKDLKgCgiiLsIXVzAKC/KuEhcnIAoHkpgAFlaXUA4inxKfQpdAAAoYIiZW7oKewpcQDxoIYivSllAHEA8aCKItEpbQAAoMcqAAFicPgp+ikAoNUqAKDTKmMAgKJ7ImFjZW5zAAcqDSoUKhYqRihwAHAAcgBvAPgAIyh1AHIAbAB5AGUA8QCDDfEAfA2AAWFlcwAcKiIqPShwAHAAcgBvAPgAPChxAPEAOShnAACgaiYApoMiMTIzRWRlaGxtbnBzPCo/KkIqRSpHKlIqWCpjKmcqaypzKncqO4C5ALlAO4CyALJAO4CzALNAAKDGKgABb3NLKk4qdAAAoL4qdQBiAACg2CpkoIcibwB0AACgxCpzAAABb3VdKmAqbAAAoMknYgAAoNcq4SFycgCgeyn1IWx0AKDCKgABRWVvKnEqAKDMKgCgiyLsIXVzAKDAKoABZWl1AH0qjCqPKnQAAKGDImVugyqHKnEA8aCHIkYqZQBxAPGgiyJwKm0AAKDIKgABYnCTKpUqAKDUKgCg1iqAAUFhbgCdKqEqrCpyAHIAAKDZIXIAAAFocqYqqCrrAJUab6CZIfcAxQf3IWFyAKAqKWwAaQBnADuA3wDfQOELzyrZKtwq6SrsKvEqAAD1KjQrAAAAAAAAAAAAAEwrbCsAAHErvSsAAAAAAADRK3IC1CoAAAAA2CrnIWV0AKAWI8RjcgDrAOUKgAFhZXkA4SrkKucq8iFvbmVh5CFpbGNhQmRvAPQAIg5sInJlYwAAoBUjcgAA4DXYMd0AAmVpa2/7KhIrKCsuK/IBACsAAAkrZQAAATRm6g0EK28AcgDlAOsNYQBzorgDECsAAAAAEit5AG0A0WMAAWNuFislK2sAAAFhcxsrIStwAHAAcgBvAPgAFw5pAG0AAKA8InMA8AD9DQABYXMsKyEr8AAXDnIAbgA7gP4A/kDsATgrOyswG2QA5QBnAmUAcwCAgdcAO2JkAEMrRCtJK9dAYaCgInIAAKAxKgCgMCqAAWVwcwBRK1MraSvhAAkh4qKkIlsrXysAAAAAYytvAHQAAKA2I2kAcgAAoPEqb+A12GXdcgBrAACg2irhAHgociJpbWUAAKA0IIABYWlwAHYreSu3K2QA5QC+DYADYWRlbXBzdACFK6MrmiunK6wrsCuzK24iZ2xlAACitSVkbHFykCuUK5ornCvvIXduAKC/JeUhZnRloMMl8QACBwCgXCJpImdodABloLkl8QBdDG8AdAAAoOwlaSJudXMAAKA6KuwhdXMAoDkqYgAAoM0p6SFtZQCgOyrlInppdW0AoOIjgAFjaHQAwivKK80rAAFyecYrySsA4DXYydxGZGMAeQBbZPIhb2tnYQABaW/UK9creAD0ANERaCJlYWQAAAFsct4r5ytlAGYAdABhAHIAcgBvAPcAXQbpJGdodGFycm93AKCgIQAJQUhhYmNkZmdobG1vcHJzdHV3CiwNLBEsHSwnLDEsQCxLLFIsYix6LIQsjyzLLOgs7Sz/LAotcgDyAAkDYQByAACgYykAAWNyFSwbLHUAdABlADuA+gD6QPIACQ1yAOMBIywAACUseQBeZHYAZQBtYQABaXkrLDAscgBjADuA+wD7QENkgAFhYmgANyw6LD0scgDyANEO7CFhY3FhYQDyAOAOAAFpckQsSCzzIWh0AKB+KQDgNdgy3XIAYQB2AGUAO4D5APlAYQFWLF8scgAAAWxyWixcLACgvyEAoL4hbABrAACggCUAAWN0Zix2LG8CbCwAAAAAcyxyAG4AZaAcI3IAAKAcI28AcAAAoA8jcgBpAACg+CUAAWFsfiyBLGMAcgBrYTuAqACoQAABZ3CILIssbwBuAHNhZgAA4DXYZt0AA2FkaGxzdZksniynLLgsuyzFLHIAcgBvAPcACQ1vAHcAbgBhAHIAcgBvAPcA2A5hI3Jwb29uAAABbHKvLLMsZQBmAPQAWyxpAGcAaAD0AF0sdQDzAKYOaQAAocUDaGzBLMIs0mNvAG4AxWPwI2Fycm93cwCgyCGAAWNpdADRLOEs5CxvAtcsAAAAAN4scgBuAGWgHSNyAACgHSNvAHAAAKAOI24AZwBvYXIAaQAAoPklYwByAADgNdjK3IABZGlyAPMs9yz6LG8AdAAAoPAi7CFkZWlhaQBmoLUlAKC0JQABYW0DLQYtcgDyAMosbAA7gPwA/EDhIm5nbGUAoKcpgAdBQkRhY2RlZmxub3Byc3oAJy0qLTAtNC2bLZ0toS2/LcMtxy3TLdgt3C3gLfwtcgDyABADYQByAHag6CoAoOkqYQBzAOgA/gIAAW5yOC08LechcnQAoJwpgANla25wcnN0AJkpSC1NLVQtXi1iLYItYQBwAHAA4QAaHG8AdABoAGkAbgDnAKEXgAFoaXIAoSmzJFotbwBwAPQAdCVooJUh7wD4JgABaXVmLWotZwBtAOEAuygAAWJwbi14LXMjZXRuZXEAceCKIgD+AODLKgD+cyNldG5lcQBx4IsiAP4A4MwqAP4AAWhyhi2KLWUAdADhABIraSNhbmdsZQAAAWxyki2WLeUhZnQAoLIiaSJnaHQAAKCzInkAMmThIXNoAKCiIoABZWxyAKcttC24LWKiKCKuLQAAAACyLWEAcgAAoLsicQAAoFoi7CFpcACg7iIAAWJ0vC1eD2EA8gBfD3IAAOA12DPddAByAOkAlS1zAHUAAAFicM0t0C0A4IIi0iAA4IMi0iBwAGYAAOA12GfdcgBvAPAAWQt0AHIA6QCaLQABY3XkLegtcgAA4DXYy9wAAWJw7C30LW4AAAFFZXUt8S0A4IoiAP5uAAABRWV/LfktAOCLIgD+6SJnemFnAKCaKYADY2Vmb3BycwANLhAuJS4pLiMuLi40LukhcmN1YQABZGkULiEuAAFiZxguHC5hAHIAAKBfKmUAcaAnIgCgWSLlIXJwAKAYIXIAAOA12DTdcABmAADgNdho3WWgQCJhAHQA6ABqD2MAcgAA4DXYzNzjCuQRUC4AAFQuAABYLmIuAAAAAGMubS5wLnQuAAAAAIguki4AAJouJxIqEnQAcgDpAB0ScgAA4DXYNd0AAUFhWy5eLnIA8gDnAnIA8gCTB75jAAFBYWYuaS5yAPIA4AJyAPIAjAdhAPAAeh5pAHMAAKD7IoABZHB0APgReS6DLgABZmx9LoAuAOA12GnddQDzAP8RaQBtAOUABBIAAUFhiy6OLnIA8gDuAnIA8gCaBwABY3GVLgoScgAA4DXYzdwAAXB0nS6hLmwAdQDzACUScgDpACASAARhY2VmaW9zdbEuvC7ELsguzC7PLtQu2S5jAAABdXm2LrsudABlADuA/QD9QE9kAAFpecAuwy5yAGMAd2FLZG4AO4ClAKVAcgAA4DXYNt1jAHkAV2RwAGYAAOA12GrdYwByAADgNdjO3AABY23dLt8ueQBOZGwAO4D/AP9AAAVhY2RlZmhpb3N38y73Lv8uAi8MLxAvEy8YLx0vIi9jInV0ZQB6YQABYXn7Lv4u8iFvbn5hN2RvAHQAfGEAAWV0Bi8KL3QAcgDmAB8QYQC2Y3IAAOA12DfdYwB5ADZk5yJyYXJyAKDdIXAAZgAA4DXYa91jAHIAAOA12M/cAAFqbiYvKC8AoA0gagAAoAwg");
12394
+ const htmlDecodeTree = /* #__PURE__ */ decodeBase64("QR08ALkAAgH6AYsDNQR2BO0EPgXZBQEGLAbdBxMISQrvCmQLfQurDKQNLw4fD4YPpA+6D/IPAAAAAAAAAAAAAAAAKhBMEY8TmxUWF2EYLBkxGuAa3RsJHDscWR8YIC8jSCSIJcMl6ie3Ku8rEC0CLjoupS7kLgAIRU1hYmNmZ2xtbm9wcnN0dVQAWgBeAGUAaQBzAHcAfgCBAIQAhwCSAJoAoACsALMAbABpAGcAO4DGAMZAUAA7gCYAJkBjAHUAdABlADuAwQDBQHIiZXZlAAJhAAFpeW0AcgByAGMAO4DCAMJAEGRyAADgNdgE3XIAYQB2AGUAO4DAAMBA8CFoYZFj4SFjcgBhZAAAoFMqAAFncIsAjgBvAG4ABGFmAADgNdg43fAlbHlGdW5jdGlvbgCgYSBpAG4AZwA7gMUAxUAAAWNzpACoAHIAAOA12Jzc6SFnbgCgVCJpAGwAZABlADuAwwDDQG0AbAA7gMQAxEAABGFjZWZvcnN1xQDYANoA7QDxAPYA+QD8AAABY3LJAM8AayNzbGFzaAAAoBYidgHTANUAAKDnKmUAZAAAoAYjeQARZIABY3J0AOAA5QDrAGEidXNlAACgNSLuI291bGxpcwCgLCFhAJJjcgAA4DXYBd1wAGYAAOA12Dnd5SF2ZdhiYwDyAOoAbSJwZXEAAKBOIgAHSE9hY2RlZmhpbG9yc3UXARoBHwE6AVIBVQFiAWQBZgGCAakB6QHtAfIBYwB5ACdkUABZADuAqQCpQIABY3B5ACUBKAE1AfUhdGUGYWmg0iJ0KGFsRGlmZmVyZW50aWFsRAAAoEUhbCJleXMAAKAtIQACYWVpb0EBRAFKAU0B8iFvbgxhZABpAGwAO4DHAMdAcgBjAAhhbiJpbnQAAKAwIm8AdAAKYQABZG5ZAV0BaSJsbGEAuGB0I2VyRG90ALdg8gA5AWkAp2NyImNsZQAAAkRNUFRwAXQBeQF9AW8AdAAAoJkiaSJudXMAAKCWIuwhdXMAoJUiaSJtZXMAAKCXIm8AAAFjc4cBlAFrKndpc2VDb250b3VySW50ZWdyYWwAAKAyImUjQ3VybHkAAAFEUZwBpAFvJXVibGVRdW90ZQAAoB0gdSJvdGUAAKAZIAACbG5wdbABtgHNAdgBbwBuAGWgNyIAoHQqgAFnaXQAvAHBAcUB8iJ1ZW50AKBhIm4AdAAAoC8i7yV1ckludGVncmFsAKAuIgABZnLRAdMBAKACIe8iZHVjdACgECJuLnRlckNsb2Nrd2lzZUNvbnRvdXJJbnRlZ3JhbAAAoDMi7yFzcwCgLypjAHIAAOA12J7ccABDoNMiYQBwAACgTSKABURKU1phY2VmaW9zAAsCEgIVAhgCGwIsAjQCOQI9AnMCfwNvoEUh9CJyYWhkAKARKWMAeQACZGMAeQAFZGMAeQAPZIABZ3JzACECJQIoAuchZXIAoCEgcgAAoKEhaAB2AACg5CoAAWF5MAIzAvIhb24OYRRkbAB0oAciYQCUY3IAAOA12AfdAAFhZkECawIAAWNtRQJnAvIjaXRpY2FsAAJBREdUUAJUAl8CYwJjInV0ZQC0YG8AdAFZAloC2WJiJGxlQWN1dGUA3WJyImF2ZQBgYGkibGRlANxi7yFuZACgxCJmJWVyZW50aWFsRAAAoEYhcAR9AgAAAAAAAIECjgIAABoDZgAA4DXYO91EoagAhQKJAm8AdAAAoNwgcSJ1YWwAAKBQIuIhbGUAA0NETFJVVpkCqAK1Au8C/wIRA28AbgB0AG8AdQByAEkAbgB0AGUAZwByAGEA7ADEAW8AdAKvAgAAAACwAqhgbiNBcnJvdwAAoNMhAAFlb7kC0AJmAHQAgAFBUlQAwQLGAs0CciJyb3cAAKDQIekkZ2h0QXJyb3cAoNQhZQDlACsCbgBnAAABTFLWAugC5SFmdAABQVLcAuECciJyb3cAAKD4J+kkZ2h0QXJyb3cAoPon6SRnaHRBcnJvdwCg+SdpImdodAAAAUFU9gL7AnIicm93AACg0iFlAGUAAKCoInAAQQIGAwAAAAALA3Iicm93AACg0SFvJHduQXJyb3cAAKDVIWUlcnRpY2FsQmFyAACgJSJuAAADQUJMUlRhJAM2AzoDWgNxA3oDciJyb3cAAKGTIUJVLAMwA2EAcgAAoBMpcCNBcnJvdwAAoPUhciJldmUAEWPlIWZ00gJDAwAASwMAAFIDaSVnaHRWZWN0b3IAAKBQKWUkZVZlY3RvcgAAoF4p5SJjdG9yQqC9IWEAcgAAoFYpaSJnaHQA1AFiAwAAaQNlJGVWZWN0b3IAAKBfKeUiY3RvckKgwSFhAHIAAKBXKWUAZQBBoKQiciJyb3cAAKCnIXIAcgBvAPcAtAIAAWN0gwOHA3IA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YwAAoN8i4SFycnCgtiEAoD0pgKIqImJjZG9zACsVMBU6FT4VQRVyImNhcAAAoEgqAAFhdTQVNxVwAACgRipwAACgSipvAHQAAKCNInIAAKBFKgDgKiIA/gACYWxydksVURVuFXMVcgByAG2gtyEAoDwpeQCAAWV2dwBYFWUVaRVxAHACXxUAAAAAYxVyAGUA4wAXFXUA4wAZFWUAZQAAoM4iZSJkZ2UAAKDPImUAbgA7gKQApEBlI2Fycm93AAABbHJ7FX8V5SFmdACgtiFpImdodAAAoLchZQDkAG0VAAFjaYsVkRVvAG4AaQBuAPQAkwFuAHQAAKAxImwiY3R5AACgLSOACUFIYWJjZGVmaGlqbG9yc3R1d3oAuBW7Fb8V1RXgFegV+RUKFhUWHxZUFlcWZRbFFtsW7xb7FgUXChdyAPIAtAJhAHIAAKBlKQACZ2xyc8YVyhXOFdAV5yFlcgCgICDlIXRoAKA4IfIA9QxoAHagECAAoKMiawHZFd4VYSJyb3cAAKAPKWEA4wBfAgABYXnkFecV8iFvbg9hNGQAoUYhYW/tFfQVAAFnciEC8RVyAACgyiF0InNlcQAAoHcqgAFnbG0A/xUCFgUWO4CwALBAdABhALRjcCJ0eXYAAKCxKQABaXIOFhIW8yFodACgfykA4DXYId1hAHIAAAFschsWHRYAoMMhAKDCIYACYWVnc3YAKBauAjYWOhY+Fm0AAKHEIm9zLhY0Fm4AZABzoMQi9SFpdACgZiZhIm1tYQDdY2kAbgAAoPIiAKH3AGlvQxZRFmQAZQAAgfcAO29KFksW90BuI3RpbWVzAACgxyJuAPgAUBZjAHkAUmRjAG8CXhYAAAAAYhZyAG4AAKAeI28AcAAAoA0jgAJscHR1dwBuFnEWdRaSFp4W7CFhciRgZgAA4DXYVd0AotkCZW1wc30WhBaJFo0WcQBkoFAibwB0AACgUSJpIm51cwAAoDgi7CF1cwCgFCLxInVhcmUAoKEiYgBsAGUAYgBhAHIAdwBlAGQAZwDlANcAbgCAAWFkaAClFqoWtBZyAHIAbwD3APUMbwB3AG4AYQByAHIAbwB3APMA8xVhI3Jwb29uAAABbHK8FsAWZQBmAPQAHBZpAGcAaAD0AB4WYgHJFs8WawBhAHIAbwD3AJILbwLUFgAAAADYFnIAbgAAoB8jbwBwAACgDCOAAWNvdADhFukW7BYAAXJ55RboFgDgNdi53FVkbAAAoPYp8iFvaxFhAAFkcvMW9xZvAHQAAKDxImkA5qC/JVsSAAFhaP8WAhdyAPIANQNhAPIA1wvhIm5nbGUAoKYpAAFjaQ4XEBd5AF9k5yJyYXJyAKD/JwAJRGFjZGVmZ2xtbm9wcXJzdHV4MRc4F0YXWxcyBF4XaRd5F40XrBe0F78X2RcVGCEYLRg1GEAYAAFEbzUXgRZvAPQA+BUAAWNzPBdCF3UAdABlADuA6QDpQPQhZXIAoG4qAAJhaW95TRdQF1YXWhfyIW9uG2FyAGOgViI7gOoA6kDsIW9uAKBVIk1kbwB0ABdhAAFEcmIXZhdvAHQAAKBSIgDgNdgi3XKhmipuF3QXYQB2AGUAO4DoAOhAZKCWKm8AdAAAoJgqgKGZKmlscwCAF4UXhxfuInRlcnMAoOcjAKATIWSglSpvAHQAAKCXKoABYXBzAJMXlheiF2MAcgATYXQAeQBzogUinxcAAAAAoRdlAHQAAKAFInAAMaADIDMBqRerFwCgBCAAoAUgAAFnc7AXsRdLYXAAAKACIAABZ3C4F7sXbwBuABlhZgAA4DXYVt2AAWFscwDFF8sXzxdyAHOg1SJsAACg4yl1AHMAAKBxKmkAAKG1A2x21RfYF28AbgC1Y/VjAAJjc3V24BfoF/0XEBgAAWlv5BdWF3IAYwAAoFYiaQLuFwAAAADwF+0ADQThIW50AAFnbPUX+Rd0AHIAAKCWKuUhc3MAoJUqgAFhZWkAAxgGGAoYbABzAD1gcwB0AACgXyJ2AESgYSJEAACgeCrwImFyc2wAoOUpAAFEYRkYHRhvAHQAAKBTInIAcgAAoHEpgAFjZGkAJxgqGO0XcgAAoC8hbwD0AIwCAAFhaDEYMhi3YzuA8ADwQAABbXI5GD0YbAA7gOsA60BvAACgrCCAAWNpcABGGEgYSxhsACFgcwD0ACwEAAFlb08YVxhjAHQAYQB0AGkAbwDuABoEbgBlAG4AdABpAGEAbADlADME4Ql1GAAAgRgAAIMYiBgAAAAAoRilGAAAqhgAALsYvhjRGAAA1xgnGWwAbABpAG4AZwBkAG8AdABzAGUA8QBlF3kARGRtImFsZQAAoEAmgAFpbHIAjRiRGJ0Y7CFpZwCgA/tpApcYAAAAAJoYZwAAoAD7aQBnAACgBPsA4DXYI93sIWlnAKAB++whaWcA4GYAagCAAWFsdACvGLIYthh0AACgbSZpAGcAAKAC+24AcwAAoLElbwBmAJJh8AHCGAAAxhhmAADgNdhX3QABYWvJGMwYbADsAGsEdqDUIgCg2SphI3J0aW50AACgDSoAAWFv2hgiGQABY3PeGB8ZsQPnGP0YBRkSGRUZAAAdGbID7xjyGPQY9xj5GAAA+xg7gL0AvUAAoFMhO4C8ALxAAKBVIQCgWSEAoFshswEBGQAAAxkAoFQhAKBWIbQCCxkOGQAAAAAQGTuAvgC+QACgVyEAoFwhNQAAoFghtgEZGQAAGxkAoFohAKBdITgAAKBeIWwAAKBEIHcAbgAAoCIjYwByAADgNdi73IAIRWFiY2RlZmdpamxub3JzdHYARhlKGVoZXhlmGWkZkhmWGZkZnRmgGa0ZxhnLGc8Z4BkjGmygZyIAoIwqgAFjbXAAUBlTGVgZ9SF0ZfVhbQBhAOSgswM6FgCghipyImV2ZQAfYQABaXliGWUZcgBjAB1hM2RvAHQAIWGAoWUibHFzAMYEcBl6GfGhZSLOBAAAdhlsAGEAbgD0AN8EgKF+KmNkbACBGYQZjBljAACgqSpvAHQAb6CAKmyggioAoIQqZeDbIgD+cwAAoJQqcgAA4DXYJN3noGsirATtIWVsAKA3IWMAeQBTZIChdyJFYWoApxmpGasZAKCSKgCgpSoAoKQqAAJFYWVztBm2Gb0ZwhkAoGkicABwoIoq8iFveACgiipxoIgq8aCIKrUZaQBtAACg5yJwAGYAAOA12FjdYQB2AOUAYwIAAWNp0xnWGXIAAKAKIW0AAKFzImVs3BneGQCgjioAoJAqAIM+ADtjZGxxco0E6xn0GfgZ/BkBGgABY2nvGfEZAKCnKnIAAKB6Km8AdAAAoNci0CFhcgCglSl1ImVzdAAAoHwqgAJhZGVscwAKGvQZFhrVBCAa8AEPGgAAFBpwAHIAbwD4AFkZcgAAoHgpcQAAAWxxxAQbGmwAZQBzAPMASRlpAO0A5AQAAWVuJxouGnIjdG5lcXEAAOBpIgD+xQAsGgAFQWFiY2Vma29zeUAaQxpmGmoabRqDGocalhrCGtMacgDyAMwCAAJpbG1yShpOGlAaVBpyAHMA8ABxD2YAvWBpAGwA9AASBQABZHJYGlsaYwB5AEpkAKGUIWN3YBpkGmkAcgAAoEgpAKCtIWEAcgAAoA8h6SFyYyVhgAFhbHIAcxp7Gn8a8iF0c3WgZSZpAHQAAKBlJuwhaXAAoCYg4yFvbgCguSJyAADgNdgl3XMAAAFld4wakRphInJvdwAAoCUpYSJyb3cAAKAmKYACYW1vcHIAnxqjGqcauhq+GnIAcgAAoP8h9CFodACgOyJrAAABbHKsGrMaZSRmdGFycm93AACgqSHpJGdodGFycm93AKCqIWYAAOA12Fnd4iFhcgCgFSCAAWNsdADIGswa0BpyAADgNdi93GEAcwDoAGka8iFvaydhAAFicNca2xr1IWxsAKBDIOghZW4AoBAg4Qr2GgAA/RoAAAgbExsaGwAAIRs7GwAAAAA+G2IbmRuVG6sbAACyG80b0htjAHUAdABlADuA7QDtQAChYyBpeQEbBhtyAGMAO4DuAO5AOGQAAWN4CxsNG3kANWRjAGwAO4ChAKFAAAFmcssCFhsA4DXYJt1yAGEAdgBlADuA7ADsQIChSCFpbm8AJxsyGzYbAAFpbisbLxtuAHQAAKAMKnQAAKAtIuYhaW4AoNwpdABhAACgKSHsIWlnM2GAAWFvcABDG1sbXhuAAWNndABJG0sbWRtyACthgAFlbHAAcQVRG1UbaQBuAOUAyAVhAHIA9AByBWgAMWFmAACgtyJlAGQAtWEAoggiY2ZvdGkbbRt1G3kb4SFyZQCgBSFpAG4AdKAeImkAZQAAoN0pZABvAPQAWxsAoisiY2VscIEbhRuPG5QbYQBsAACguiIAAWdyiRuNG2UAcgDzACMQ4wCCG2EicmhrAACgFyryIW9kAKA8KgACY2dwdJ8boRukG6gbeQBRZG8AbgAvYWYAAOA12FrdYQC5Y3UAZQBzAHQAO4C/AL9AAAFjabUbuRtyAADgNdi+3G4AAKIIIkVkc3bCG8QbyBvQAwCg+SJvAHQAAKD1Inag9CIAoPMiaaBiIOwhZGUpYesB1hsAANkbYwB5AFZkbAA7gO8A70AAA2NmbW9zdeYb7hvyG/Ub+hsFHAABaXnqG+0bcgBjADVhOWRyAADgNdgn3eEhdGg3YnAAZgAA4DXYW93jAf8bAAADHHIAAOA12L/c8iFjeVhk6yFjeVRkAARhY2ZnaGpvcxUcGhwiHCYcKhwtHDAcNRzwIXBhdqC6A/BjAAFleR4cIRzkIWls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ZmdobG1vcHJzdHV3CiwNLBEsHSwnLDEsQCxLLFIsYix6LIQsjyzLLOgs7Sz/LAotcgDyAAkDYQByAACgYykAAWNyFSwbLHUAdABlADuA+gD6QPIACQ1yAOMBIywAACUseQBeZHYAZQBtYQABaXkrLDAscgBjADuA+wD7QENkgAFhYmgANyw6LD0scgDyANEO7CFhY3FhYQDyAOAOAAFpckQsSCzzIWh0AKB+KQDgNdgy3XIAYQB2AGUAO4D5APlAYQFWLF8scgAAAWxyWixcLACgvyEAoL4hbABrAACggCUAAWN0Zix2LG8CbCwAAAAAcyxyAG4AZaAcI3IAAKAcI28AcAAAoA8jcgBpAACg+CUAAWFsfiyBLGMAcgBrYTuAqACoQAABZ3CILIssbwBuAHNhZgAA4DXYZt0AA2FkaGxzdZksniynLLgsuyzFLHIAcgBvAPcACQ1vAHcAbgBhAHIAcgBvAPcA2A5hI3Jwb29uAAABbHKvLLMsZQBmAPQAWyxpAGcAaAD0AF0sdQDzAKYOaQAAocUDaGzBLMIs0mNvAG4AxWPwI2Fycm93cwCgyCGAAWNpdADRLOEs5CxvAtcsAAAAAN4scgBuAGWgHSNyAACgHSNvAHAAAKAOI24AZwBvYXIAaQAAoPklYwByAADgNdjK3IABZGlyAPMs9yz6LG8AdAAAoPAi7CFkZWlhaQBmoLUlAKC0JQABYW0DLQYtcgDyAMosbAA7gPwA/EDhIm5nbGUAoKcpgAdBQkRhY2RlZmxub3Byc3oAJy0qLTAtNC2bLZ0toS2/LcMtxy3TLdgt3C3gLfwtcgDyABADYQByAHag6CoAoOkqYQBzAOgA/gIAAW5yOC08LechcnQAoJwpgANla25wcnN0AJkpSC1NLVQtXi1iLYItYQBwAHAA4QAaHG8AdABoAGkAbgDnAKEXgAFoaXIAoSmzJFotbwBwAPQAdCVooJUh7wD4JgABaXVmLWotZwBtAOEAuygAAWJwbi14LXMjZXRuZXEAceCKIgD+AODLKgD+cyNldG5lcQBx4IsiAP4A4MwqAP4AAWhyhi2KLWUAdADhABIraSNhbmdsZQAAAWxyki2WLeUhZnQAoLIiaSJnaHQAAKCzInkAMmThIXNoAKCiIoABZWxyAKcttC24LWKiKCKuLQAAAACyLWEAcgAAoLsicQAAoFoi7CFpcACg7iIAAWJ0vC1eD2EA8gBfD3IAAOA12DPddAByAOkAlS1zAHUAAAFicM0t0C0A4IIi0iAA4IMi0iBwAGYAAOA12GfdcgBvAPAAWQt0AHIA6QCaLQABY3XkLegtcgAA4DXYy9wAAWJw7C30LW4AAAFFZXUt8S0A4IoiAP5uAAABRWV/LfktAOCLIgD+6SJnemFnAKCaKYADY2Vmb3BycwANLhAuJS4pLiMuLi40LukhcmN1YQABZGkULiEuAAFiZxguHC5hAHIAAKBfKmUAcaAnIgCgWSLlIXJwAKAYIXIAAOA12DTdcABmAADgNdho3WWgQCJhAHQA6ABqD2MAcgAA4DXYzNzjCuQRUC4AAFQuAABYLmIuAAAAAGMubS5wLnQuAAAAAIguki4AAJouJxIqEnQAcgDpAB0ScgAA4DXYNd0AAUFhWy5eLnIA8gDnAnIA8gCTB75jAAFBYWYuaS5yAPIA4AJyAPIAjAdhAPAAeh5pAHMAAKD7IoABZHB0APgReS6DLgABZmx9LoAuAOA12GnddQDzAP8RaQBtAOUABBIAAUFhiy6OLnIA8gDuAnIA8gCaBwABY3GVLgoScgAA4DXYzdwAAXB0nS6hLmwAdQDzACUScgDpACASAARhY2VmaW9zdbEuvC7ELsguzC7PLtQu2S5jAAABdXm2LrsudABlADuA/QD9QE9kAAFpecAuwy5yAGMAd2FLZG4AO4ClAKVAcgAA4DXYNt1jAHkAV2RwAGYAAOA12GrdYwByAADgNdjO3AABY23dLt8ueQBOZGwAO4D/AP9AAAVhY2RlZmhpb3N38y73Lv8uAi8MLxAvEy8YLx0vIi9jInV0ZQB6YQABYXn7Lv4u8iFvbn5hN2RvAHQAfGEAAWV0Bi8KL3QAcgDmAB8QYQC2Y3IAAOA12DfdYwB5ADZk5yJyYXJyAKDdIXAAZgAA4DXYa91jAHIAAOA12M/cAAFqbiYvKC8AoA0gagAAoAwg");
12192
12395
  //#endregion
12193
12396
  //#region node_modules/.pnpm/entities@7.0.1/node_modules/entities/dist/esm/internal/bin-trie-flags.js
12194
12397
  /**
@@ -12582,7 +12785,7 @@ function determineBranch(decodeTree, current, nodeIndex, char) {
12582
12785
  }
12583
12786
  return -1;
12584
12787
  }
12585
- const htmlDecoder = /* @__PURE__ */ getDecoder(htmlDecodeTree);
12788
+ const htmlDecoder = /* #__PURE__ */ getDecoder(htmlDecodeTree);
12586
12789
  /**
12587
12790
  * Decodes an HTML string.
12588
12791
  *
@@ -12774,13 +12977,14 @@ var Tokenizer = class {
12774
12977
  }
12775
12978
  }
12776
12979
  stateInterpolationOpen(c) {
12777
- if (c === this.delimiterOpen[this.delimiterIndex]) if (this.delimiterIndex === this.delimiterOpen.length - 1) {
12778
- const start = this.index + 1 - this.delimiterOpen.length;
12779
- if (start > this.sectionStart) this.cbs.ontext(this.sectionStart, start);
12780
- this.state = 3;
12781
- this.sectionStart = start;
12782
- } else this.delimiterIndex++;
12783
- else if (this.inRCDATA) {
12980
+ if (c === this.delimiterOpen[this.delimiterIndex]) {
12981
+ if (this.delimiterIndex === this.delimiterOpen.length - 1) {
12982
+ const start = this.index + 1 - this.delimiterOpen.length;
12983
+ if (start > this.sectionStart) this.cbs.ontext(this.sectionStart, start);
12984
+ this.state = 3;
12985
+ this.sectionStart = start;
12986
+ } else this.delimiterIndex++;
12987
+ } else if (this.inRCDATA) {
12784
12988
  this.state = 32;
12785
12989
  this.stateInRCDATA(c);
12786
12990
  } else {
@@ -12796,13 +13000,14 @@ var Tokenizer = class {
12796
13000
  }
12797
13001
  }
12798
13002
  stateInterpolationClose(c) {
12799
- if (c === this.delimiterClose[this.delimiterIndex]) if (this.delimiterIndex === this.delimiterClose.length - 1) {
12800
- this.cbs.oninterpolation(this.sectionStart, this.index + 1);
12801
- if (this.inRCDATA) this.state = 32;
12802
- else this.state = 1;
12803
- this.sectionStart = this.index + 1;
12804
- } else this.delimiterIndex++;
12805
- else {
13003
+ if (c === this.delimiterClose[this.delimiterIndex]) {
13004
+ if (this.delimiterIndex === this.delimiterClose.length - 1) {
13005
+ this.cbs.oninterpolation(this.sectionStart, this.index + 1);
13006
+ if (this.inRCDATA) this.state = 32;
13007
+ else this.state = 1;
13008
+ this.sectionStart = this.index + 1;
13009
+ } else this.delimiterIndex++;
13010
+ } else {
12806
13011
  this.state = 3;
12807
13012
  this.stateInterpolation(c);
12808
13013
  }
@@ -12918,9 +13123,10 @@ var Tokenizer = class {
12918
13123
  this.sectionStart = this.index;
12919
13124
  if (this.mode === 0) this.state = 6;
12920
13125
  else if (this.inSFCRoot) this.state = 34;
12921
- else if (!this.inXML) if (c === 116) this.state = 30;
12922
- else this.state = c === 115 ? 29 : 6;
12923
- else this.state = 6;
13126
+ else if (!this.inXML) {
13127
+ if (c === 116) this.state = 30;
13128
+ else this.state = c === 115 ? 29 : 6;
13129
+ } else this.state = 6;
12924
13130
  } else if (c === 47) this.state = 8;
12925
13131
  else {
12926
13132
  this.state = 1;
@@ -13287,9 +13493,7 @@ var Tokenizer = class {
13287
13493
  case 24:
13288
13494
  this.stateInProcessingInstruction(c);
13289
13495
  break;
13290
- case 33:
13291
- this.stateInEntity();
13292
- break;
13496
+ case 33: this.stateInEntity();
13293
13497
  }
13294
13498
  this.index++;
13295
13499
  }
@@ -13322,9 +13526,10 @@ var Tokenizer = class {
13322
13526
  handleTrailingData() {
13323
13527
  const endIndex = this.buffer.length;
13324
13528
  if (this.sectionStart >= endIndex) return;
13325
- if (this.state === 28) if (this.currentSequence === Sequences.CdataEnd) this.cbs.oncdata(this.sectionStart, endIndex);
13326
- else this.cbs.oncomment(this.sectionStart, endIndex);
13327
- 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);
13529
+ if (this.state === 28) {
13530
+ if (this.currentSequence === Sequences.CdataEnd) this.cbs.oncdata(this.sectionStart, endIndex);
13531
+ else this.cbs.oncomment(this.sectionStart, endIndex);
13532
+ } 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);
13328
13533
  }
13329
13534
  emitCodePoint(cp, consumed) {
13330
13535
  if (this.baseState !== 1 && this.baseState !== 32) {
@@ -13485,16 +13690,22 @@ function walkIdentifiers(root, onIdentifier, includeAll = false, parentStack = [
13485
13690
  const isRefed = isReferencedIdentifier(node, parent, parentStack);
13486
13691
  if (includeAll || isRefed && !isLocal) onIdentifier(node, parent, parentStack, isRefed, isLocal);
13487
13692
  } else if (node.type === "ObjectProperty" && (parent === null || parent === void 0 ? void 0 : parent.type) === "ObjectPattern") node.inPattern = true;
13488
- else if (isFunctionType(node)) if (node.scopeIds) node.scopeIds.forEach((id) => markKnownIds(id, knownIds));
13489
- else walkFunctionParams(node, (id) => markScopeIdentifier(node, id, knownIds));
13490
- else if (node.type === "BlockStatement") if (node.scopeIds) node.scopeIds.forEach((id) => markKnownIds(id, knownIds));
13491
- else walkBlockDeclarations(node, (id) => markScopeIdentifier(node, id, knownIds));
13492
- else if (node.type === "SwitchStatement") if (node.scopeIds) node.scopeIds.forEach((id) => markKnownIds(id, knownIds));
13493
- else walkSwitchStatement(node, false, (id) => markScopeIdentifier(node, id, knownIds));
13494
- else if (node.type === "CatchClause" && node.param) if (node.scopeIds) node.scopeIds.forEach((id) => markKnownIds(id, knownIds));
13495
- else for (const id of extractIdentifiers(node.param)) markScopeIdentifier(node, id, knownIds);
13496
- else if (isForStatement(node)) if (node.scopeIds) node.scopeIds.forEach((id) => markKnownIds(id, knownIds));
13497
- else walkForStatement(node, false, (id) => markScopeIdentifier(node, id, knownIds));
13693
+ else if (isFunctionType(node)) {
13694
+ if (node.scopeIds) node.scopeIds.forEach((id) => markKnownIds(id, knownIds));
13695
+ else walkFunctionParams(node, (id) => markScopeIdentifier(node, id, knownIds));
13696
+ } else if (node.type === "BlockStatement") {
13697
+ if (node.scopeIds) node.scopeIds.forEach((id) => markKnownIds(id, knownIds));
13698
+ else walkBlockDeclarations(node, (id) => markScopeIdentifier(node, id, knownIds));
13699
+ } else if (node.type === "SwitchStatement") {
13700
+ if (node.scopeIds) node.scopeIds.forEach((id) => markKnownIds(id, knownIds));
13701
+ else walkSwitchStatement(node, false, (id) => markScopeIdentifier(node, id, knownIds));
13702
+ } else if (node.type === "CatchClause" && node.param) {
13703
+ if (node.scopeIds) node.scopeIds.forEach((id) => markKnownIds(id, knownIds));
13704
+ else for (const id of extractIdentifiers(node.param)) markScopeIdentifier(node, id, knownIds);
13705
+ } else if (isForStatement(node)) {
13706
+ if (node.scopeIds) node.scopeIds.forEach((id) => markKnownIds(id, knownIds));
13707
+ else walkForStatement(node, false, (id) => markScopeIdentifier(node, id, knownIds));
13708
+ }
13498
13709
  },
13499
13710
  leave(node, parent) {
13500
13711
  parent && parentStack.pop();
@@ -13586,9 +13797,7 @@ function extractIdentifiers(param, nodes = []) {
13586
13797
  case "RestElement":
13587
13798
  extractIdentifiers(param.argument, nodes);
13588
13799
  break;
13589
- case "AssignmentPattern":
13590
- extractIdentifiers(param.left, nodes);
13591
- break;
13800
+ case "AssignmentPattern": extractIdentifiers(param.left, nodes);
13592
13801
  }
13593
13802
  return nodes;
13594
13803
  }
@@ -13784,7 +13993,7 @@ function isTemplateNode(node) {
13784
13993
  function isSlotOutlet(node) {
13785
13994
  return node.type === 1 && node.tagType === 2;
13786
13995
  }
13787
- const propsHelperSet = new Set([NORMALIZE_PROPS, GUARD_REACTIVE_PROPS]);
13996
+ const propsHelperSet = /* @__PURE__ */ new Set([NORMALIZE_PROPS, GUARD_REACTIVE_PROPS]);
13788
13997
  function getUnnormalizedProps(props, callPath = []) {
13789
13998
  if (props && !isString(props) && props.type === 14) {
13790
13999
  const callee = props.callee;
@@ -13827,9 +14036,10 @@ function injectProp(node, prop, context) {
13827
14036
  propsWithInjection = createCallExpression(context.helper(MERGE_PROPS), [createObjectExpression([prop]), props]);
13828
14037
  if (parentCall && parentCall.callee === GUARD_REACTIVE_PROPS) parentCall = callPath[callPath.length - 2];
13829
14038
  }
13830
- if (node.type === 13) if (parentCall) parentCall.arguments[0] = propsWithInjection;
13831
- else node.props = propsWithInjection;
13832
- else if (parentCall) parentCall.arguments[0] = propsWithInjection;
14039
+ if (node.type === 13) {
14040
+ if (parentCall) parentCall.arguments[0] = propsWithInjection;
14041
+ else node.props = propsWithInjection;
14042
+ } else if (parentCall) parentCall.arguments[0] = propsWithInjection;
13833
14043
  else node.arguments[2] = propsWithInjection;
13834
14044
  }
13835
14045
  function injectSlotKey(node, prop) {
@@ -14069,26 +14279,28 @@ const tokenizer = new Tokenizer(stack, {
14069
14279
  onattribend(quote, end) {
14070
14280
  if (currentOpenTag && currentProp) {
14071
14281
  setLocEnd(currentProp.loc, end);
14072
- if (quote !== 0) if (currentProp.type === 6) {
14073
- if (currentProp.name === "class") currentAttrValue = condense(currentAttrValue).trim();
14074
- if (quote === 1 && !currentAttrValue) emitError(13, end);
14075
- currentProp.value = {
14076
- type: 2,
14077
- content: currentAttrValue,
14078
- loc: quote === 1 ? getLoc(currentAttrStartIndex, currentAttrEndIndex) : getLoc(currentAttrStartIndex - 1, currentAttrEndIndex + 1)
14079
- };
14080
- if (tokenizer.inSFCRoot && currentOpenTag.tag === "template" && currentProp.name === "lang" && currentAttrValue && currentAttrValue !== "html") tokenizer.enterRCDATA(toCharCodes(`</template`), 0);
14081
- } else {
14082
- let expParseMode = 0;
14083
- if (currentProp.name === "for") expParseMode = 3;
14084
- else if (currentProp.name === "slot") expParseMode = 1;
14085
- else if (currentProp.name === "on" && currentAttrValue.includes(";")) expParseMode = 2;
14086
- currentProp.exp = createExp(currentAttrValue, false, getLoc(currentAttrStartIndex, currentAttrEndIndex), 0, expParseMode);
14087
- if (currentProp.name === "for") currentProp.forParseResult = parseForExpression(currentProp.exp);
14088
- let syncIndex = -1;
14089
- if (currentProp.name === "bind" && (syncIndex = currentProp.modifiers.findIndex((mod) => mod.content === "sync")) > -1 && checkCompatEnabled("COMPILER_V_BIND_SYNC", currentOptions, currentProp.loc, currentProp.arg.loc.source)) {
14090
- currentProp.name = "model";
14091
- currentProp.modifiers.splice(syncIndex, 1);
14282
+ if (quote !== 0) {
14283
+ if (currentProp.type === 6) {
14284
+ if (currentProp.name === "class") currentAttrValue = condense(currentAttrValue).trim();
14285
+ if (quote === 1 && !currentAttrValue) emitError(13, end);
14286
+ currentProp.value = {
14287
+ type: 2,
14288
+ content: currentAttrValue,
14289
+ loc: quote === 1 ? getLoc(currentAttrStartIndex, currentAttrEndIndex) : getLoc(currentAttrStartIndex - 1, currentAttrEndIndex + 1)
14290
+ };
14291
+ if (tokenizer.inSFCRoot && currentOpenTag.tag === "template" && currentProp.name === "lang" && currentAttrValue && currentAttrValue !== "html") tokenizer.enterRCDATA(toCharCodes(`</template`), 0);
14292
+ } else {
14293
+ let expParseMode = 0;
14294
+ if (currentProp.name === "for") expParseMode = 3;
14295
+ else if (currentProp.name === "slot") expParseMode = 1;
14296
+ else if (currentProp.name === "on" && currentAttrValue.includes(";")) expParseMode = 2;
14297
+ currentProp.exp = createExp(currentAttrValue, false, getLoc(currentAttrStartIndex, currentAttrEndIndex), 0, expParseMode);
14298
+ if (currentProp.name === "for") currentProp.forParseResult = parseForExpression(currentProp.exp);
14299
+ let syncIndex = -1;
14300
+ if (currentProp.name === "bind" && (syncIndex = currentProp.modifiers.findIndex((mod) => mod.content === "sync")) > -1 && checkCompatEnabled("COMPILER_V_BIND_SYNC", currentOptions, currentProp.loc, currentProp.arg.loc.source)) {
14301
+ currentProp.name = "model";
14302
+ currentProp.modifiers.splice(syncIndex, 1);
14303
+ }
14092
14304
  }
14093
14305
  }
14094
14306
  if (currentProp.type !== 7 || currentProp.name !== "pre") currentOpenTag.props.push(currentProp);
@@ -14131,10 +14343,7 @@ const tokenizer = new Tokenizer(stack, {
14131
14343
  case 18:
14132
14344
  case 19:
14133
14345
  case 20:
14134
- case 21:
14135
- emitError(9, end);
14136
- break;
14137
- default: break;
14346
+ case 21: emitError(9, end);
14138
14347
  }
14139
14348
  for (let index = 0; index < stack.length; index++) {
14140
14349
  onCloseTag(stack[index], end - 1);
@@ -14280,7 +14489,7 @@ function backTrack(index, c) {
14280
14489
  while (currentInput.charCodeAt(i) !== c && i >= 0) i--;
14281
14490
  return i;
14282
14491
  }
14283
- const specialTemplateDir = new Set([
14492
+ const specialTemplateDir = /* @__PURE__ */ new Set([
14284
14493
  "if",
14285
14494
  "else",
14286
14495
  "else-if",
@@ -14316,16 +14525,18 @@ function condenseWhitespace(nodes) {
14316
14525
  let removedWhitespace = false;
14317
14526
  for (let i = 0; i < nodes.length; i++) {
14318
14527
  const node = nodes[i];
14319
- if (node.type === 2) if (!inPre) {
14320
- if (isAllWhitespace(node.content)) {
14321
- const prev = nodes[i - 1] && nodes[i - 1].type;
14322
- const next = nodes[i + 1] && nodes[i + 1].type;
14323
- if (!prev || !next || shouldCondense && (prev === 3 && (next === 3 || next === 1) || prev === 1 && (next === 3 || next === 1 && hasNewlineChar(node.content)))) {
14324
- removedWhitespace = true;
14325
- nodes[i] = null;
14326
- } else node.content = " ";
14327
- } else if (shouldCondense) node.content = condense(node.content);
14328
- } else node.content = node.content.replace(windowsNewlineRE, "\n");
14528
+ if (node.type === 2) {
14529
+ if (!inPre) {
14530
+ if (isAllWhitespace(node.content)) {
14531
+ const prev = nodes[i - 1] && nodes[i - 1].type;
14532
+ const next = nodes[i + 1] && nodes[i + 1].type;
14533
+ if (!prev || !next || shouldCondense && (prev === 3 && (next === 3 || next === 1) || prev === 1 && (next === 3 || next === 1 && hasNewlineChar(node.content)))) {
14534
+ removedWhitespace = true;
14535
+ nodes[i] = null;
14536
+ } else node.content = " ";
14537
+ } else if (shouldCondense) node.content = condense(node.content);
14538
+ } else node.content = node.content.replace(windowsNewlineRE, "\n");
14539
+ }
14329
14540
  }
14330
14541
  return removedWhitespace ? nodes.filter(Boolean) : nodes;
14331
14542
  }
@@ -14603,7 +14814,7 @@ function getConstantType(node, context) {
14603
14814
  default: return 0;
14604
14815
  }
14605
14816
  }
14606
- const allowHoistedHelperSet = new Set([
14817
+ const allowHoistedHelperSet = /* @__PURE__ */ new Set([
14607
14818
  NORMALIZE_CLASS,
14608
14819
  NORMALIZE_STYLE,
14609
14820
  NORMALIZE_PROPS,
@@ -14780,7 +14991,7 @@ function transform(root, options) {
14780
14991
  traverseNode(root, context);
14781
14992
  if (options.hoistStatic) cacheStatic(root, context);
14782
14993
  if (!options.ssr) createRootCodegen(root, context);
14783
- root.helpers = new Set([...context.helpers.keys()]);
14994
+ root.helpers = /* @__PURE__ */ new Set([...context.helpers.keys()]);
14784
14995
  root.components = [...context.components];
14785
14996
  root.directives = [...context.directives];
14786
14997
  root.imports = context.imports;
@@ -14827,8 +15038,10 @@ function traverseNode(node, context) {
14827
15038
  const exitFns = [];
14828
15039
  for (let i = 0; i < nodeTransforms.length; i++) {
14829
15040
  const onExit = nodeTransforms[i](node, context);
14830
- if (onExit) if (isArray(onExit)) exitFns.push(...onExit);
14831
- else exitFns.push(onExit);
15041
+ if (onExit) {
15042
+ if (isArray(onExit)) exitFns.push(...onExit);
15043
+ else exitFns.push(onExit);
15044
+ }
14832
15045
  if (!context.currentNode) return;
14833
15046
  else node = context.currentNode;
14834
15047
  }
@@ -14845,9 +15058,7 @@ function traverseNode(node, context) {
14845
15058
  case 10:
14846
15059
  case 11:
14847
15060
  case 1:
14848
- case 0:
14849
- traverseChildren(node, context);
14850
- break;
15061
+ case 0: traverseChildren(node, context);
14851
15062
  }
14852
15063
  context.currentNode = node;
14853
15064
  let i = exitFns.length;
@@ -15033,16 +15244,18 @@ function genFunctionPreamble(ast, context) {
15033
15244
  const { ssr, prefixIdentifiers, push, newline, runtimeModuleName, runtimeGlobalName, ssrRuntimeModuleName } = context;
15034
15245
  const VueBinding = ssr ? `require(${JSON.stringify(runtimeModuleName)})` : runtimeGlobalName;
15035
15246
  const helpers = Array.from(ast.helpers);
15036
- if (helpers.length > 0) if (prefixIdentifiers) push(`const { ${helpers.map(aliasHelper).join(", ")} } = ${VueBinding}\n`, -1);
15037
- else {
15038
- push(`const _Vue = ${VueBinding}\n`, -1);
15039
- if (ast.hoists.length) push(`const { ${[
15040
- CREATE_VNODE,
15041
- CREATE_ELEMENT_VNODE,
15042
- CREATE_COMMENT,
15043
- CREATE_TEXT,
15044
- CREATE_STATIC
15045
- ].filter((helper) => helpers.includes(helper)).map(aliasHelper).join(", ")} } = _Vue\n`, -1);
15247
+ if (helpers.length > 0) {
15248
+ if (prefixIdentifiers) push(`const { ${helpers.map(aliasHelper).join(", ")} } = ${VueBinding}\n`, -1);
15249
+ else {
15250
+ push(`const _Vue = ${VueBinding}\n`, -1);
15251
+ if (ast.hoists.length) push(`const { ${[
15252
+ CREATE_VNODE,
15253
+ CREATE_ELEMENT_VNODE,
15254
+ CREATE_COMMENT,
15255
+ CREATE_TEXT,
15256
+ CREATE_STATIC
15257
+ ].filter((helper) => helpers.includes(helper)).map(aliasHelper).join(", ")} } = _Vue\n`, -1);
15258
+ }
15046
15259
  }
15047
15260
  if (ast.ssrHelpers && ast.ssrHelpers.length) push(`const { ${ast.ssrHelpers.map(aliasHelper).join(", ")} } = require("${ssrRuntimeModuleName}")\n`, -1);
15048
15261
  genHoists(ast.hoists, context);
@@ -15119,10 +15332,12 @@ function genNodeList(nodes, context, multilines = false, comma = true) {
15119
15332
  if (isString(node)) push(node, -3);
15120
15333
  else if (isArray(node)) genNodeListAsArray(node, context);
15121
15334
  else genNode(node, context);
15122
- if (i < nodes.length - 1) if (multilines) {
15123
- comma && push(",");
15124
- newline();
15125
- } else comma && push(", ");
15335
+ if (i < nodes.length - 1) {
15336
+ if (multilines) {
15337
+ comma && push(",");
15338
+ newline();
15339
+ } else comma && push(", ");
15340
+ }
15126
15341
  }
15127
15342
  }
15128
15343
  function genNode(node, context) {
@@ -15244,8 +15459,10 @@ function genVNodeCall(node, context) {
15244
15459
  const { push, helper, pure } = context;
15245
15460
  const { tag, props, children, patchFlag, dynamicProps, directives, isBlock, disableTracking, isComponent } = node;
15246
15461
  let patchFlagString;
15247
- if (patchFlag) if (patchFlag < 0) patchFlagString = patchFlag + ` /* ${PatchFlagNames[patchFlag]} */`;
15248
- else patchFlagString = patchFlag + ` /* ${Object.keys(PatchFlagNames).map(Number).filter((n) => n > 0 && patchFlag & n).map((n) => PatchFlagNames[n]).join(`, `)} */`;
15462
+ if (patchFlag) {
15463
+ if (patchFlag < 0) patchFlagString = patchFlag + ` /* ${PatchFlagNames[patchFlag]} */`;
15464
+ else patchFlagString = patchFlag + ` /* ${Object.keys(PatchFlagNames).map(Number).filter((n) => n > 0 && patchFlag & n).map((n) => PatchFlagNames[n]).join(`, `)} */`;
15465
+ }
15249
15466
  if (directives) push(helper(WITH_DIRECTIVES) + `(`);
15250
15467
  if (isBlock) push(`(${helper(OPEN_BLOCK)}(${disableTracking ? `true` : ``}), `);
15251
15468
  if (pure) push(PURE_ANNOTATION);
@@ -15441,7 +15658,7 @@ function genReturnStatement({ returns }, context) {
15441
15658
  }
15442
15659
  //#endregion
15443
15660
  //#region packages/compiler-core/src/transforms/transformExpression.ts
15444
- const isLiteralWhitelisted = /* @__PURE__ */ makeMap("true,false,null,this");
15661
+ const isLiteralWhitelisted = /*@__PURE__*/ makeMap("true,false,null,this");
15445
15662
  const transformExpression = (node, context) => {
15446
15663
  if (node.type === 5) node.content = processExpression(node.content, context);
15447
15664
  else if (node.type === 1) {
@@ -15474,20 +15691,21 @@ function processExpression(node, context, asParams = false, asRawStatements = fa
15474
15691
  if (isConst(type) || type === "setup-reactive-const" || localVars[raw]) return raw;
15475
15692
  else if (type === "setup-ref") return `${raw}.value`;
15476
15693
  else if (type === "setup-maybe-ref") return isAssignmentLVal || isUpdateArg || isDestructureAssignment ? `${raw}.value` : wrapWithUnref(raw);
15477
- else if (type === "setup-let") if (isAssignmentLVal) {
15478
- const { right: rVal, operator } = parent;
15479
- const rExpString = stringifyExpression(processExpression(createSimpleExpression(rawExp.slice(rVal.start - 1, rVal.end - 1), false), context, false, false, knownIds));
15480
- return `${context.helperString(IS_REF)}(${raw})${context.isTS ? ` //@ts-ignore\n` : ``} ? ${raw}.value ${operator} ${rExpString} : ${raw}`;
15481
- } else if (isUpdateArg) {
15482
- id.start = parent.start;
15483
- id.end = parent.end;
15484
- const { prefix: isPrefix, operator } = parent;
15485
- const prefix = isPrefix ? operator : ``;
15486
- const postfix = isPrefix ? `` : operator;
15487
- return `${context.helperString(IS_REF)}(${raw})${context.isTS ? ` //@ts-ignore\n` : ``} ? ${prefix}${raw}.value${postfix} : ${prefix}${raw}${postfix}`;
15488
- } else if (isDestructureAssignment) return raw;
15489
- else return wrapWithUnref(raw);
15490
- else if (type === "props") return genPropsAccessExp(raw);
15694
+ else if (type === "setup-let") {
15695
+ if (isAssignmentLVal) {
15696
+ const { right: rVal, operator } = parent;
15697
+ const rExpString = stringifyExpression(processExpression(createSimpleExpression(rawExp.slice(rVal.start - 1, rVal.end - 1), false), context, false, false, knownIds));
15698
+ return `${context.helperString(IS_REF)}(${raw})${context.isTS ? ` //@ts-ignore\n` : ``} ? ${raw}.value ${operator} ${rExpString} : ${raw}`;
15699
+ } else if (isUpdateArg) {
15700
+ id.start = parent.start;
15701
+ id.end = parent.end;
15702
+ const { prefix: isPrefix, operator } = parent;
15703
+ const prefix = isPrefix ? operator : ``;
15704
+ const postfix = isPrefix ? `` : operator;
15705
+ return `${context.helperString(IS_REF)}(${raw})${context.isTS ? ` //@ts-ignore\n` : ``} ? ${prefix}${raw}.value${postfix} : ${prefix}${raw}${postfix}`;
15706
+ } else if (isDestructureAssignment) return raw;
15707
+ else return wrapWithUnref(raw);
15708
+ } else if (type === "props") return genPropsAccessExp(raw);
15491
15709
  else if (type === "props-aliased") return genPropsAccessExp(bindingMetadata.__propsAliases[raw]);
15492
15710
  } else if (type && type.startsWith("setup") || type === "literal-const") return `$setup.${raw}`;
15493
15711
  else if (type === "props-aliased") return `$props['${bindingMetadata.__propsAliases[raw]}']`;
@@ -15504,8 +15722,10 @@ function processExpression(node, context, asParams = false, asRawStatements = fa
15504
15722
  if (!asParams && !isScopeVarReference && !isLiteral && (!isAllowedGlobal || bindingMetadata[rawExp])) {
15505
15723
  if (isConst(bindingMetadata[rawExp])) node.constType = 1;
15506
15724
  node.content = rewriteIdentifier(rawExp);
15507
- } else if (!isScopeVarReference) if (isLiteral) node.constType = 3;
15508
- else node.constType = 2;
15725
+ } else if (!isScopeVarReference) {
15726
+ if (isLiteral) node.constType = 3;
15727
+ else node.constType = 2;
15728
+ }
15509
15729
  return node;
15510
15730
  }
15511
15731
  if (!ast) {
@@ -15664,16 +15884,17 @@ function createChildrenCodegenNode(branch, keyIndex, context) {
15664
15884
  const keyProperty = createObjectProperty(`key`, createSimpleExpression(`${keyIndex}`, false, locStub, 2));
15665
15885
  const { children } = branch;
15666
15886
  const firstChild = children[0];
15667
- if (children.length !== 1 || firstChild.type !== 1) if (children.length === 1 && firstChild.type === 11) {
15668
- const vnodeCall = firstChild.codegenNode;
15669
- injectProp(vnodeCall, keyProperty, context);
15670
- return vnodeCall;
15887
+ if (children.length !== 1 || firstChild.type !== 1) {
15888
+ if (children.length === 1 && firstChild.type === 11) {
15889
+ const vnodeCall = firstChild.codegenNode;
15890
+ injectProp(vnodeCall, keyProperty, context);
15891
+ return vnodeCall;
15892
+ } else {
15893
+ let patchFlag = 64;
15894
+ if (!branch.isTemplateIf && children.filter((c) => c.type !== 3).length === 1) patchFlag |= 2048;
15895
+ return createVNodeCall(context, helper(FRAGMENT), createObjectExpression([keyProperty]), children, patchFlag, void 0, void 0, true, false, false, branch.loc);
15896
+ }
15671
15897
  } else {
15672
- let patchFlag = 64;
15673
- if (!branch.isTemplateIf && children.filter((c) => c.type !== 3).length === 1) patchFlag |= 2048;
15674
- return createVNodeCall(context, helper(FRAGMENT), createObjectExpression([keyProperty]), children, patchFlag, void 0, void 0, true, false, false, branch.loc);
15675
- }
15676
- else {
15677
15898
  const ret = firstChild.codegenNode;
15678
15899
  const vnodeCall = getMemoedVNodeCall(ret);
15679
15900
  if (vnodeCall.type === 13) convertToBlock(vnodeCall, context);
@@ -15694,9 +15915,10 @@ function isSameKey(a, b) {
15694
15915
  return true;
15695
15916
  }
15696
15917
  function getParentCondition(node) {
15697
- while (true) if (node.type === 19) if (node.alternate.type === 19) node = node.alternate;
15698
- else return node;
15699
- else if (node.type === 20) node = node.value;
15918
+ while (true) if (node.type === 19) {
15919
+ if (node.alternate.type === 19) node = node.alternate;
15920
+ else return node;
15921
+ } else if (node.type === 20) node = node.value;
15700
15922
  }
15701
15923
  //#endregion
15702
15924
  //#region packages/compiler-core/src/transforms/vFor.ts
@@ -15740,10 +15962,12 @@ const transformFor = createStructuralDirectiveTransform("for", (node, dir, conte
15740
15962
  childBlock = children[0].codegenNode;
15741
15963
  if (isTemplate && keyProperty) injectProp(childBlock, keyProperty, context);
15742
15964
  const shouldUseBlock = !isStableFragment || childBlock.isBlockRequired === true;
15743
- if (childBlock.isBlock !== shouldUseBlock) if (childBlock.isBlock) {
15744
- removeHelper(OPEN_BLOCK);
15745
- removeHelper(getVNodeBlockHelper(context.inSSR, childBlock.isComponent));
15746
- } else removeHelper(getVNodeHelper(context.inSSR, childBlock.isComponent));
15965
+ if (childBlock.isBlock !== shouldUseBlock) {
15966
+ if (childBlock.isBlock) {
15967
+ removeHelper(OPEN_BLOCK);
15968
+ removeHelper(getVNodeBlockHelper(context.inSSR, childBlock.isComponent));
15969
+ } else removeHelper(getVNodeHelper(context.inSSR, childBlock.isComponent));
15970
+ }
15747
15971
  childBlock.isBlock = shouldUseBlock;
15748
15972
  if (childBlock.isBlock) {
15749
15973
  helper(OPEN_BLOCK);
@@ -15960,8 +16184,10 @@ function buildSlots(node, context, buildSlotFn = buildClientSlotFn) {
15960
16184
  return createObjectProperty(`default`, fn);
15961
16185
  };
15962
16186
  if (!hasTemplateSlots) slotsProperties.push(buildDefaultSlotProperty(void 0, children));
15963
- else if (implicitDefaultChildren.length && !implicitDefaultChildren.every(isWhitespaceText)) if (hasNamedDefaultSlot) context.onError(createCompilerError(39, implicitDefaultChildren[0].loc));
15964
- else slotsProperties.push(buildDefaultSlotProperty(void 0, implicitDefaultChildren));
16187
+ else if (implicitDefaultChildren.length && !implicitDefaultChildren.every(isWhitespaceText)) {
16188
+ if (hasNamedDefaultSlot) context.onError(createCompilerError(39, implicitDefaultChildren[0].loc));
16189
+ else slotsProperties.push(buildDefaultSlotProperty(void 0, implicitDefaultChildren));
16190
+ }
15965
16191
  }
15966
16192
  const slotFlag = hasDynamicSlots ? 2 : hasForwardedSlots(node.children) ? 3 : 1;
15967
16193
  let slots = createObjectExpression(slotsProperties.concat(createObjectProperty(`_`, createSimpleExpression(slotFlag + ` /* ${slotFlagsText[slotFlag]} */`, false))), loc);
@@ -15987,10 +16213,7 @@ function hasForwardedSlots(children) {
15987
16213
  if (hasForwardedSlots(child.branches)) return true;
15988
16214
  break;
15989
16215
  case 10:
15990
- case 11:
15991
- if (hasForwardedSlots(child.children)) return true;
15992
- break;
15993
- default: break;
16216
+ case 11: if (hasForwardedSlots(child.children)) return true;
15994
16217
  }
15995
16218
  }
15996
16219
  return false;
@@ -16209,29 +16432,30 @@ function buildProps(node, context, props = node.props, isComponent, isDynamicCom
16209
16432
  if (isVBind && isStaticArgOf(arg, "ref")) pushRefVForMarker();
16210
16433
  if (!arg && (isVBind || isVOn)) {
16211
16434
  hasDynamicKeys = true;
16212
- if (exp) if (isVBind) {
16213
- pushMergeArg();
16214
- if (mergeArgs.some((arg) => {
16215
- if (arg.type === 15) return arg.properties.some(({ key }) => {
16216
- if (key.type !== 4 || !key.isStatic) return true;
16217
- return key.content !== "class" && key.content !== "style" && !isOn(key.content);
16218
- });
16219
- else return true;
16220
- })) checkCompatEnabled("COMPILER_V_BIND_OBJECT_ORDER", context, loc);
16221
- if (isCompatEnabled("COMPILER_V_BIND_OBJECT_ORDER", context)) {
16222
- mergeArgs.unshift(exp);
16223
- continue;
16224
- }
16225
- pushRefVForMarker();
16226
- pushMergeArg();
16227
- mergeArgs.push(exp);
16228
- } else pushMergeArg({
16229
- type: 14,
16230
- loc,
16231
- callee: context.helper(TO_HANDLERS),
16232
- arguments: isComponent ? [exp] : [exp, `true`]
16233
- });
16234
- else context.onError(createCompilerError(isVBind ? 34 : 35, loc));
16435
+ if (exp) {
16436
+ if (isVBind) {
16437
+ pushMergeArg();
16438
+ if (mergeArgs.some((arg) => {
16439
+ if (arg.type === 15) return arg.properties.some(({ key }) => {
16440
+ if (key.type !== 4 || !key.isStatic) return true;
16441
+ return key.content !== "class" && key.content !== "style" && !isOn(key.content);
16442
+ });
16443
+ else return true;
16444
+ })) checkCompatEnabled("COMPILER_V_BIND_OBJECT_ORDER", context, loc);
16445
+ if (isCompatEnabled("COMPILER_V_BIND_OBJECT_ORDER", context)) {
16446
+ mergeArgs.unshift(exp);
16447
+ continue;
16448
+ }
16449
+ pushRefVForMarker();
16450
+ pushMergeArg();
16451
+ mergeArgs.push(exp);
16452
+ } else pushMergeArg({
16453
+ type: 14,
16454
+ loc,
16455
+ callee: context.helper(TO_HANDLERS),
16456
+ arguments: isComponent ? [exp] : [exp, `true`]
16457
+ });
16458
+ } else context.onError(createCompilerError(isVBind ? 34 : 35, loc));
16235
16459
  continue;
16236
16460
  }
16237
16461
  if (isVBind && modifiers.some((mod) => mod.content === "prop")) patchFlag |= 32;
@@ -16289,9 +16513,7 @@ function buildProps(node, context, props = node.props, isComponent, isDynamicCom
16289
16513
  } else propsExpression = createCallExpression(context.helper(NORMALIZE_PROPS), [propsExpression]);
16290
16514
  break;
16291
16515
  case 14: break;
16292
- default:
16293
- propsExpression = createCallExpression(context.helper(NORMALIZE_PROPS), [createCallExpression(context.helper(GUARD_REACTIVE_PROPS), [propsExpression])]);
16294
- break;
16516
+ default: propsExpression = createCallExpression(context.helper(NORMALIZE_PROPS), [createCallExpression(context.helper(GUARD_REACTIVE_PROPS), [propsExpression])]);
16295
16517
  }
16296
16518
  return {
16297
16519
  props: propsExpression,
@@ -16401,10 +16623,12 @@ function processSlotOutlet(node, context) {
16401
16623
  for (let i = 0; i < node.props.length; i++) {
16402
16624
  const p = node.props[i];
16403
16625
  if (p.type === 6) {
16404
- if (p.value) if (p.name === "name") slotName = JSON.stringify(p.value.content);
16405
- else {
16406
- p.name = camelize(p.name);
16407
- nonNameProps.push(p);
16626
+ if (p.value) {
16627
+ if (p.name === "name") slotName = JSON.stringify(p.value.content);
16628
+ else {
16629
+ p.name = camelize(p.name);
16630
+ nonNameProps.push(p);
16631
+ }
16408
16632
  }
16409
16633
  } else if (p.name === "bind" && isStaticArgOf(p.arg, "name")) {
16410
16634
  if (p.exp) slotName = p.exp;
@@ -16433,17 +16657,18 @@ const transformOn$1 = (dir, node, context, augmentor) => {
16433
16657
  const { loc, modifiers, arg } = dir;
16434
16658
  if (!dir.exp && !modifiers.length) context.onError(createCompilerError(35, loc));
16435
16659
  let eventName;
16436
- if (arg.type === 4) if (arg.isStatic) {
16437
- let rawName = arg.content;
16438
- if (rawName.startsWith("vnode")) context.onError(createCompilerError(52, arg.loc));
16439
- if (rawName.startsWith("vue:")) rawName = `vnode-${rawName.slice(4)}`;
16440
- eventName = createSimpleExpression(node.tagType !== 0 || rawName.startsWith("vnode") || !/[A-Z]/.test(rawName) ? toHandlerKey(camelize(rawName)) : `on:${rawName}`, true, arg.loc);
16441
- } else eventName = createCompoundExpression([
16442
- `${context.helperString(TO_HANDLER_KEY)}(`,
16443
- arg,
16444
- `)`
16445
- ]);
16446
- else {
16660
+ if (arg.type === 4) {
16661
+ if (arg.isStatic) {
16662
+ let rawName = arg.content;
16663
+ if (rawName.startsWith("vnode")) context.onError(createCompilerError(52, arg.loc));
16664
+ if (rawName.startsWith("vue:")) rawName = `vnode-${rawName.slice(4)}`;
16665
+ eventName = createSimpleExpression(node.tagType !== 0 || rawName.startsWith("vnode") || !/[A-Z]/.test(rawName) ? toHandlerKey(camelize(rawName)) : `on:${rawName}`, true, arg.loc);
16666
+ } else eventName = createCompoundExpression([
16667
+ `${context.helperString(TO_HANDLER_KEY)}(`,
16668
+ arg,
16669
+ `)`
16670
+ ]);
16671
+ } else {
16447
16672
  eventName = arg;
16448
16673
  eventName.children.unshift(`${context.helperString(TO_HANDLER_KEY)}(`);
16449
16674
  eventName.children.push(`)`);
@@ -16460,13 +16685,15 @@ const transformOn$1 = (dir, node, context, augmentor) => {
16460
16685
  exp = dir.exp = processExpression(exp, context, false, hasMultipleStatements);
16461
16686
  isInlineStatement && context.removeIdentifiers(`$event`);
16462
16687
  shouldCache = context.cacheHandlers && !context.inVOnce && !(exp.type === 4 && exp.constType > 0) && !(isMemberExp && node.tagType === 1) && !hasScopeRef(exp, context.identifiers);
16463
- if (shouldCache && isMemberExp) if (exp.type === 4) exp.content = `${exp.content} && ${exp.content}(...args)`;
16464
- else exp.children = [
16465
- ...exp.children,
16466
- ` && `,
16467
- ...exp.children,
16468
- `(...args)`
16469
- ];
16688
+ if (shouldCache && isMemberExp) {
16689
+ if (exp.type === 4) exp.content = `${exp.content} && ${exp.content}(...args)`;
16690
+ else exp.children = [
16691
+ ...exp.children,
16692
+ ` && `,
16693
+ ...exp.children,
16694
+ `(...args)`
16695
+ ];
16696
+ }
16470
16697
  }
16471
16698
  if (isInlineStatement || shouldCache && isMemberExp) exp = createCompoundExpression([
16472
16699
  `${isInlineStatement ? context.isTS ? `($event: any)` : `$event` : `${context.isTS ? `\n//@ts-ignore\n` : ``}(...args)`} => ${hasMultipleStatements ? `{` : `(`}`,
@@ -16494,11 +16721,14 @@ const transformBind = (dir, _node, context) => {
16494
16721
  arg.children.unshift(`(`);
16495
16722
  arg.children.push(`) || ""`);
16496
16723
  } else if (!arg.isStatic) arg.content = arg.content ? `${arg.content} || ""` : `""`;
16497
- if (modifiers.some((mod) => mod.content === "camel")) if (arg.type === 4) if (arg.isStatic) arg.content = camelize(arg.content);
16498
- else arg.content = `${context.helperString(CAMELIZE)}(${arg.content})`;
16499
- else {
16500
- arg.children.unshift(`${context.helperString(CAMELIZE)}(`);
16501
- arg.children.push(`)`);
16724
+ if (modifiers.some((mod) => mod.content === "camel")) {
16725
+ if (arg.type === 4) {
16726
+ if (arg.isStatic) arg.content = camelize(arg.content);
16727
+ else arg.content = `${context.helperString(CAMELIZE)}(${arg.content})`;
16728
+ } else {
16729
+ arg.children.unshift(`${context.helperString(CAMELIZE)}(`);
16730
+ arg.children.push(`)`);
16731
+ }
16502
16732
  }
16503
16733
  if (!context.inSSR) {
16504
16734
  if (modifiers.some((mod) => mod.content === "prop")) injectPrefix(arg, ".");
@@ -16507,9 +16737,10 @@ const transformBind = (dir, _node, context) => {
16507
16737
  return { props: [createObjectProperty(arg, exp)] };
16508
16738
  };
16509
16739
  const injectPrefix = (arg, prefix) => {
16510
- if (arg.type === 4) if (arg.isStatic) arg.content = prefix + arg.content;
16511
- else arg.content = `\`${prefix}\${${arg.content}}\``;
16512
- else {
16740
+ if (arg.type === 4) {
16741
+ if (arg.isStatic) arg.content = prefix + arg.content;
16742
+ else arg.content = `\`${prefix}\${${arg.content}}\``;
16743
+ } else {
16513
16744
  arg.children.unshift(`'${prefix}' + (`);
16514
16745
  arg.children.push(`)`);
16515
16746
  }
@@ -16604,20 +16835,21 @@ const transformModel$1 = (dir, node, context) => {
16604
16835
  const eventName = arg ? isStaticExp(arg) ? `onUpdate:${camelize(arg.content)}` : createCompoundExpression(["\"onUpdate:\" + ", arg]) : `onUpdate:modelValue`;
16605
16836
  let assignmentExp;
16606
16837
  const eventArg = context.isTS ? `($event: any)` : `$event`;
16607
- if (maybeRef) if (bindingType === "setup-ref") assignmentExp = createCompoundExpression([
16608
- `${eventArg} => ((`,
16609
- createSimpleExpression(rawExp, false, exp.loc),
16610
- `).value = $event)`
16611
- ]);
16612
- else {
16613
- const altAssignment = bindingType === "setup-let" ? `${rawExp} = $event` : `null`;
16614
- assignmentExp = createCompoundExpression([
16615
- `${eventArg} => (${context.helperString(IS_REF)}(${rawExp}) ? (`,
16838
+ if (maybeRef) {
16839
+ if (bindingType === "setup-ref") assignmentExp = createCompoundExpression([
16840
+ `${eventArg} => ((`,
16616
16841
  createSimpleExpression(rawExp, false, exp.loc),
16617
- `).value = $event : ${altAssignment})`
16842
+ `).value = $event)`
16618
16843
  ]);
16619
- }
16620
- else assignmentExp = createCompoundExpression([
16844
+ else {
16845
+ const altAssignment = bindingType === "setup-let" ? `${rawExp} = $event` : `null`;
16846
+ assignmentExp = createCompoundExpression([
16847
+ `${eventArg} => (${context.helperString(IS_REF)}(${rawExp}) ? (`,
16848
+ createSimpleExpression(rawExp, false, exp.loc),
16849
+ `).value = $event : ${altAssignment})`
16850
+ ]);
16851
+ }
16852
+ } else assignmentExp = createCompoundExpression([
16621
16853
  `${eventArg} => ((`,
16622
16854
  exp,
16623
16855
  `) = $event)`
@@ -16676,11 +16908,12 @@ function parseFilter(node, context) {
16676
16908
  if (c === 96 && prev !== 92) inTemplateString = false;
16677
16909
  } else if (inRegex) {
16678
16910
  if (c === 47 && prev !== 92) inRegex = false;
16679
- } else if (c === 124 && exp.charCodeAt(i + 1) !== 124 && exp.charCodeAt(i - 1) !== 124 && !curly && !square && !paren) if (expression === void 0) {
16680
- lastFilterIndex = i + 1;
16681
- expression = exp.slice(0, i).trim();
16682
- } else pushFilter();
16683
- else {
16911
+ } else if (c === 124 && exp.charCodeAt(i + 1) !== 124 && exp.charCodeAt(i - 1) !== 124 && !curly && !square && !paren) {
16912
+ if (expression === void 0) {
16913
+ lastFilterIndex = i + 1;
16914
+ expression = exp.slice(0, i).trim();
16915
+ } else pushFilter();
16916
+ } else {
16684
16917
  switch (c) {
16685
16918
  case 34:
16686
16919
  inDouble = true;
@@ -16706,9 +16939,7 @@ function parseFilter(node, context) {
16706
16939
  case 123:
16707
16940
  curly++;
16708
16941
  break;
16709
- case 125:
16710
- curly--;
16711
- break;
16942
+ case 125: curly--;
16712
16943
  }
16713
16944
  if (c === 47) {
16714
16945
  let j = i - 1;
@@ -16973,9 +17204,7 @@ const transformModel = (dir, node, context) => {
16973
17204
  isInvalidType = true;
16974
17205
  context.onError(createDOMCompilerError(60, dir.loc));
16975
17206
  break;
16976
- default:
16977
- checkDuplicatedValue();
16978
- break;
17207
+ default: checkDuplicatedValue();
16979
17208
  }
16980
17209
  } else if (hasDynamicKeyVBind(node)) directiveToUse = V_MODEL_DYNAMIC;
16981
17210
  else checkDuplicatedValue();
@@ -16988,10 +17217,10 @@ const transformModel = (dir, node, context) => {
16988
17217
  };
16989
17218
  //#endregion
16990
17219
  //#region packages/compiler-dom/src/transforms/vOn.ts
16991
- const isEventOptionModifier = /* @__PURE__ */ makeMap(`passive,once,capture`);
16992
- const isNonKeyModifier = /* @__PURE__ */ makeMap("stop,prevent,self,ctrl,shift,alt,meta,exact,middle");
16993
- const maybeKeyModifier = /* @__PURE__ */ makeMap("left,right");
16994
- const isKeyboardEvent = /* @__PURE__ */ makeMap(`onkeyup,onkeydown,onkeypress`);
17220
+ const isEventOptionModifier = /*@__PURE__*/ makeMap(`passive,once,capture`);
17221
+ const isNonKeyModifier = /*@__PURE__*/ makeMap("stop,prevent,self,ctrl,shift,alt,meta,exact,middle");
17222
+ const maybeKeyModifier = /*@__PURE__*/ makeMap("left,right");
17223
+ const isKeyboardEvent = /*@__PURE__*/ makeMap(`onkeyup,onkeydown,onkeypress`);
16995
17224
  const resolveModifiers = (key, modifiers, context, loc) => {
16996
17225
  const keyModifiers = [];
16997
17226
  const nonKeyModifiers = [];
@@ -17010,13 +17239,15 @@ const resolveModifiers = (key, modifiers, context, loc) => {
17010
17239
  else if (isEventOptionModifier(modifier)) eventOptionModifiers.push(modifier);
17011
17240
  else {
17012
17241
  const keyString = isString(key) ? key : isStaticExp(key) ? key.content : null;
17013
- if (maybeKeyModifier(modifier)) if (keyString) if (isKeyboardEvent(keyString.toLowerCase())) keyModifiers.push(modifier);
17014
- else nonKeyModifiers.push(modifier);
17015
- else {
17016
- keyModifiers.push(modifier);
17017
- nonKeyModifiers.push(modifier);
17018
- }
17019
- else if (isNonKeyModifier(modifier)) nonKeyModifiers.push(modifier);
17242
+ if (maybeKeyModifier(modifier)) {
17243
+ if (keyString) {
17244
+ if (isKeyboardEvent(keyString.toLowerCase())) keyModifiers.push(modifier);
17245
+ else nonKeyModifiers.push(modifier);
17246
+ } else {
17247
+ keyModifiers.push(modifier);
17248
+ nonKeyModifiers.push(modifier);
17249
+ }
17250
+ } else if (isNonKeyModifier(modifier)) nonKeyModifiers.push(modifier);
17020
17251
  else keyModifiers.push(modifier);
17021
17252
  }
17022
17253
  }
@@ -17186,7 +17417,7 @@ const dataAriaRE = /^(?:data|aria)-/;
17186
17417
  const isStringifiableAttr = (name, ns) => {
17187
17418
  return (ns === 0 ? isKnownHtmlAttr(name) : ns === 1 ? isKnownSvgAttr(name) : ns === 2 ? isKnownMathMLAttr(name) : false) || dataAriaRE.test(name);
17188
17419
  };
17189
- const isNonStringifiable = /* @__PURE__ */ makeMap(`caption,thead,tr,th,tbody,td,tfoot,colgroup,col`);
17420
+ const isNonStringifiable = /*@__PURE__*/ makeMap(`caption,thead,tr,th,tbody,td,tfoot,colgroup,col`);
17190
17421
  /**
17191
17422
  * for a cached node, analyze it and return:
17192
17423
  * - false: bailed (contains non-stringifiable props or runtime constant)
@@ -17323,7 +17554,7 @@ function isValidHTMLNesting(parent, child) {
17323
17554
  }
17324
17555
  return true;
17325
17556
  }
17326
- const headings = new Set([
17557
+ const headings = /* @__PURE__ */ new Set([
17327
17558
  "h1",
17328
17559
  "h2",
17329
17560
  "h3",
@@ -17335,7 +17566,7 @@ const emptySet = /* @__PURE__ */ new Set([]);
17335
17566
  /**
17336
17567
  * maps element to set of elements that can be it's children, no other */
17337
17568
  const onlyValidChildren = {
17338
- head: new Set([
17569
+ head: /* @__PURE__ */ new Set([
17339
17570
  "base",
17340
17571
  "basefront",
17341
17572
  "bgsound",
@@ -17348,24 +17579,24 @@ const onlyValidChildren = {
17348
17579
  "script",
17349
17580
  "template"
17350
17581
  ]),
17351
- optgroup: new Set(["option"]),
17352
- select: new Set([
17582
+ optgroup: /* @__PURE__ */ new Set(["option"]),
17583
+ select: /* @__PURE__ */ new Set([
17353
17584
  "optgroup",
17354
17585
  "option",
17355
17586
  "hr"
17356
17587
  ]),
17357
- table: new Set([
17588
+ table: /* @__PURE__ */ new Set([
17358
17589
  "caption",
17359
17590
  "colgroup",
17360
17591
  "tbody",
17361
17592
  "tfoot",
17362
17593
  "thead"
17363
17594
  ]),
17364
- tr: new Set(["td", "th"]),
17365
- colgroup: new Set(["col"]),
17366
- tbody: new Set(["tr"]),
17367
- thead: new Set(["tr"]),
17368
- tfoot: new Set(["tr"]),
17595
+ tr: /* @__PURE__ */ new Set(["td", "th"]),
17596
+ colgroup: /* @__PURE__ */ new Set(["col"]),
17597
+ tbody: /* @__PURE__ */ new Set(["tr"]),
17598
+ thead: /* @__PURE__ */ new Set(["tr"]),
17599
+ tfoot: /* @__PURE__ */ new Set(["tr"]),
17369
17600
  script: emptySet,
17370
17601
  iframe: emptySet,
17371
17602
  option: emptySet,
@@ -17376,30 +17607,30 @@ const onlyValidChildren = {
17376
17607
  /** maps elements to set of elements which can be it's parent, no other */
17377
17608
  const onlyValidParents = {
17378
17609
  html: emptySet,
17379
- body: new Set(["html"]),
17380
- head: new Set(["html"]),
17381
- td: new Set(["tr"]),
17382
- colgroup: new Set(["table"]),
17383
- caption: new Set(["table"]),
17384
- tbody: new Set(["table"]),
17385
- tfoot: new Set(["table"]),
17386
- col: new Set(["colgroup"]),
17387
- th: new Set(["tr"]),
17388
- thead: new Set(["table"]),
17389
- tr: new Set([
17610
+ body: /* @__PURE__ */ new Set(["html"]),
17611
+ head: /* @__PURE__ */ new Set(["html"]),
17612
+ td: /* @__PURE__ */ new Set(["tr"]),
17613
+ colgroup: /* @__PURE__ */ new Set(["table"]),
17614
+ caption: /* @__PURE__ */ new Set(["table"]),
17615
+ tbody: /* @__PURE__ */ new Set(["table"]),
17616
+ tfoot: /* @__PURE__ */ new Set(["table"]),
17617
+ col: /* @__PURE__ */ new Set(["colgroup"]),
17618
+ th: /* @__PURE__ */ new Set(["tr"]),
17619
+ thead: /* @__PURE__ */ new Set(["table"]),
17620
+ tr: /* @__PURE__ */ new Set([
17390
17621
  "tbody",
17391
17622
  "thead",
17392
17623
  "tfoot"
17393
17624
  ]),
17394
- dd: new Set(["dl", "div"]),
17395
- dt: new Set(["dl", "div"]),
17396
- figcaption: new Set(["figure"]),
17397
- summary: new Set(["details"]),
17398
- area: new Set(["map"])
17625
+ dd: /* @__PURE__ */ new Set(["dl", "div"]),
17626
+ dt: /* @__PURE__ */ new Set(["dl", "div"]),
17627
+ figcaption: /* @__PURE__ */ new Set(["figure"]),
17628
+ summary: /* @__PURE__ */ new Set(["details"]),
17629
+ area: /* @__PURE__ */ new Set(["map"])
17399
17630
  };
17400
17631
  /** maps element to set of elements that can not be it's children, others can */
17401
17632
  const knownInvalidChildren = {
17402
- p: new Set([
17633
+ p: /* @__PURE__ */ new Set([
17403
17634
  "address",
17404
17635
  "article",
17405
17636
  "aside",
@@ -17434,7 +17665,7 @@ const knownInvalidChildren = {
17434
17665
  "table",
17435
17666
  "ul"
17436
17667
  ]),
17437
- svg: new Set([
17668
+ svg: /* @__PURE__ */ new Set([
17438
17669
  "b",
17439
17670
  "blockquote",
17440
17671
  "br",
@@ -17475,12 +17706,12 @@ const knownInvalidChildren = {
17475
17706
  };
17476
17707
  /** maps element to set of elements that can not be it's parent, others can */
17477
17708
  const knownInvalidParents = {
17478
- a: new Set(["a"]),
17479
- button: new Set(["button"]),
17480
- dd: new Set(["dd", "dt"]),
17481
- dt: new Set(["dd", "dt"]),
17482
- form: new Set(["form"]),
17483
- li: new Set(["li"]),
17709
+ a: /* @__PURE__ */ new Set(["a"]),
17710
+ button: /* @__PURE__ */ new Set(["button"]),
17711
+ dd: /* @__PURE__ */ new Set(["dd", "dt"]),
17712
+ dt: /* @__PURE__ */ new Set(["dd", "dt"]),
17713
+ form: /* @__PURE__ */ new Set(["form"]),
17714
+ li: /* @__PURE__ */ new Set(["li"]),
17484
17715
  h1: headings,
17485
17716
  h2: headings,
17486
17717
  h3: headings,
@@ -17523,10 +17754,12 @@ function compile(src, options = {}) {
17523
17754
  //#region packages/vue-compat/src/index.ts
17524
17755
  const compileCache = Object.create(null);
17525
17756
  function compileToFunction(template, options) {
17526
- if (!isString(template)) if (template.nodeType) template = template.innerHTML;
17527
- else {
17528
- warn(`invalid template option: `, template);
17529
- return NOOP;
17757
+ if (!isString(template)) {
17758
+ if (template.nodeType) template = template.innerHTML;
17759
+ else {
17760
+ warn(`invalid template option: `, template);
17761
+ return NOOP;
17762
+ }
17530
17763
  }
17531
17764
  const key = genCacheKey(template, options);
17532
17765
  const cached = compileCache[key];