@vue/compat 3.6.0-beta.6 → 3.6.0-beta.8

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.
@@ -1,30 +1,23 @@
1
1
  /**
2
- * @vue/compat v3.6.0-beta.6
2
+ * @vue/compat v3.6.0-beta.8
3
3
  * (c) 2018-present Yuxi (Evan) You and Vue contributors
4
4
  * @license MIT
5
5
  **/
6
6
  var Vue = (function() {
7
-
8
- //#region \0rolldown/runtime.js
7
+ //#region \0rolldown/runtime.js
9
8
  var __defProp = Object.defineProperty;
10
9
  var __exportAll = (all, no_symbols) => {
11
10
  let target = {};
12
- for (var name in all) {
13
- __defProp(target, name, {
14
- get: all[name],
15
- enumerable: true
16
- });
17
- }
18
- if (!no_symbols) {
19
- __defProp(target, Symbol.toStringTag, { value: "Module" });
20
- }
11
+ for (var name in all) __defProp(target, name, {
12
+ get: all[name],
13
+ enumerable: true
14
+ });
15
+ if (!no_symbols) __defProp(target, Symbol.toStringTag, { value: "Module" });
21
16
  return target;
22
17
  };
23
-
24
- //#endregion
25
-
26
- //#region packages/shared/src/makeMap.ts
27
- /**
18
+ //#endregion
19
+ //#region packages/shared/src/makeMap.ts
20
+ /**
28
21
  * Make a map and return a function for checking if a key
29
22
  * is in that map.
30
23
  * IMPORTANT: all calls of this function must be prefixed with
@@ -37,9 +30,8 @@ var Vue = (function() {
37
30
  for (const key of str.split(",")) map[key] = 1;
38
31
  return (val) => val in map;
39
32
  }
40
-
41
- //#endregion
42
- //#region packages/shared/src/general.ts
33
+ //#endregion
34
+ //#region packages/shared/src/general.ts
43
35
  const EMPTY_OBJ = Object.freeze({});
44
36
  const EMPTY_ARR = Object.freeze([]);
45
37
  const NOOP = () => {};
@@ -155,10 +147,9 @@ var Vue = (function() {
155
147
  function canSetValueDirectly(tagName) {
156
148
  return tagName !== "PROGRESS" && !tagName.includes("-");
157
149
  }
158
-
159
- //#endregion
160
- //#region packages/shared/src/patchFlags.ts
161
- /**
150
+ //#endregion
151
+ //#region packages/shared/src/patchFlags.ts
152
+ /**
162
153
  * dev only flag -> name mapping
163
154
  */
164
155
  const PatchFlagNames = {
@@ -177,10 +168,9 @@ var Vue = (function() {
177
168
  [-1]: `CACHED`,
178
169
  [-2]: `BAIL`
179
170
  };
180
-
181
- //#endregion
182
- //#region packages/shared/src/slotFlags.ts
183
- /**
171
+ //#endregion
172
+ //#region packages/shared/src/slotFlags.ts
173
+ /**
184
174
  * Dev only
185
175
  */
186
176
  const slotFlagsText = {
@@ -188,14 +178,9 @@ var Vue = (function() {
188
178
  [2]: "DYNAMIC",
189
179
  [3]: "FORWARDED"
190
180
  };
191
-
192
- //#endregion
193
- //#region packages/shared/src/globalsAllowList.ts
194
- const GLOBALS_ALLOWED = "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";
195
- const isGloballyAllowed = /* @__PURE__ */ makeMap(GLOBALS_ALLOWED);
196
-
197
- //#endregion
198
- //#region packages/shared/src/codeframe.ts
181
+ 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");
182
+ //#endregion
183
+ //#region packages/shared/src/codeframe.ts
199
184
  const range = 2;
200
185
  function generateCodeFrame(source, start = 0, end = source.length) {
201
186
  start = Math.max(0, Math.min(start, source.length));
@@ -232,9 +217,8 @@ var Vue = (function() {
232
217
  }
233
218
  return res.join("\n");
234
219
  }
235
-
236
- //#endregion
237
- //#region packages/shared/src/normalizeProp.ts
220
+ //#endregion
221
+ //#region packages/shared/src/normalizeProp.ts
238
222
  function normalizeStyle(value) {
239
223
  if (isArray(value)) {
240
224
  const res = {};
@@ -291,9 +275,8 @@ var Vue = (function() {
291
275
  if (style) props.style = normalizeStyle(style);
292
276
  return props;
293
277
  }
294
-
295
- //#endregion
296
- //#region packages/shared/src/domTagConfig.ts
278
+ //#endregion
279
+ //#region packages/shared/src/domTagConfig.ts
297
280
  const HTML_TAGS = "html,body,base,head,link,meta,style,title,address,article,aside,footer,header,hgroup,h1,h2,h3,h4,h5,h6,nav,section,div,dd,dl,dt,figcaption,figure,picture,hr,img,li,main,ol,p,pre,ul,a,b,abbr,bdi,bdo,br,cite,code,data,dfn,em,i,kbd,mark,q,rp,rt,ruby,s,samp,small,span,strong,sub,sup,time,u,var,wbr,area,audio,map,track,video,embed,object,param,source,canvas,script,noscript,del,ins,caption,col,colgroup,table,thead,tbody,td,th,tr,button,datalist,fieldset,form,input,label,legend,meter,optgroup,option,output,progress,select,textarea,details,dialog,menu,summary,template,blockquote,iframe,tfoot";
298
281
  const SVG_TAGS = "svg,animate,animateMotion,animateTransform,circle,clipPath,color-profile,defs,desc,discard,ellipse,feBlend,feColorMatrix,feComponentTransfer,feComposite,feConvolveMatrix,feDiffuseLighting,feDisplacementMap,feDistantLight,feDropShadow,feFlood,feFuncA,feFuncB,feFuncG,feFuncR,feGaussianBlur,feImage,feMerge,feMergeNode,feMorphology,feOffset,fePointLight,feSpecularLighting,feSpotLight,feTile,feTurbulence,filter,foreignObject,g,hatch,hatchpath,image,line,linearGradient,marker,mask,mesh,meshgradient,meshpatch,meshrow,metadata,mpath,path,pattern,polygon,polyline,radialGradient,rect,set,solidcolor,stop,switch,symbol,text,textPath,title,tspan,unknown,use,view";
299
282
  const MATH_TAGS = "annotation,annotation-xml,maction,maligngroup,malignmark,math,menclose,merror,mfenced,mfrac,mfraction,mglyph,mi,mlabeledtr,mlongdiv,mmultiscripts,mn,mo,mover,mpadded,mphantom,mprescripts,mroot,mrow,ms,mscarries,mscarry,msgroup,msline,mspace,msqrt,msrow,mstack,mstyle,msub,msubsup,msup,mtable,mtd,mtext,mtr,munder,munderover,none,semantics";
@@ -318,10 +301,9 @@ var Vue = (function() {
318
301
  * Do NOT use in runtime code paths unless behind `__DEV__` flag.
319
302
  */
320
303
  const isVoidTag = /* @__PURE__ */ makeMap(VOID_TAGS);
321
-
322
- //#endregion
323
- //#region packages/shared/src/domAttrConfig.ts
324
- /**
304
+ //#endregion
305
+ //#region packages/shared/src/domAttrConfig.ts
306
+ /**
325
307
  * On the client we only need to offer special cases for boolean attributes that
326
308
  * have different names from their corresponding dom properties:
327
309
  * - itemscope -> N/A
@@ -373,16 +355,14 @@ var Vue = (function() {
373
355
  if (key === "sandbox" && tagName === "IFRAME") return true;
374
356
  return false;
375
357
  }
376
-
377
- //#endregion
378
- //#region packages/shared/src/escapeHtml.ts
358
+ //#endregion
359
+ //#region packages/shared/src/escapeHtml.ts
379
360
  const cssVarNameEscapeSymbolsRE = /[ !"#$%&'()*+,./:;<=>?@[\\\]^`{|}~]/g;
380
361
  function getEscapedCssVarName(key, doubleEscape) {
381
362
  return key.replace(cssVarNameEscapeSymbolsRE, (s) => doubleEscape ? s === "\"" ? "\\\\\\\"" : `\\\\${s}` : `\\${s}`);
382
363
  }
383
-
384
- //#endregion
385
- //#region packages/shared/src/looseEqual.ts
364
+ //#endregion
365
+ //#region packages/shared/src/looseEqual.ts
386
366
  function looseCompareArrays(a, b) {
387
367
  if (a.length !== b.length) return false;
388
368
  let equal = true;
@@ -416,9 +396,8 @@ var Vue = (function() {
416
396
  function looseIndexOf(arr, val) {
417
397
  return arr.findIndex((item) => looseEqual(item, val));
418
398
  }
419
-
420
- //#endregion
421
- //#region packages/shared/src/toDisplayString.ts
399
+ //#endregion
400
+ //#region packages/shared/src/toDisplayString.ts
422
401
  const isRef$1 = (val) => {
423
402
  return !!(val && val["__v_isRef"] === true);
424
403
  };
@@ -451,9 +430,8 @@ var Vue = (function() {
451
430
  var _description;
452
431
  return isSymbol(v) ? `Symbol(${(_description = v.description) !== null && _description !== void 0 ? _description : i})` : v;
453
432
  };
454
-
455
- //#endregion
456
- //#region packages/shared/src/subSequence.ts
433
+ //#endregion
434
+ //#region packages/shared/src/subSequence.ts
457
435
  function getSequence(arr) {
458
436
  const p = arr.slice();
459
437
  const result = [0];
@@ -489,10 +467,9 @@ var Vue = (function() {
489
467
  }
490
468
  return result;
491
469
  }
492
-
493
- //#endregion
494
- //#region packages/shared/src/cssVars.ts
495
- /**
470
+ //#endregion
471
+ //#region packages/shared/src/cssVars.ts
472
+ /**
496
473
  * Normalize CSS var value created by `v-bind` in `<style>` block
497
474
  * See https://github.com/vuejs/core/pull/12461#issuecomment-2495804664
498
475
  */
@@ -502,9 +479,8 @@ var Vue = (function() {
502
479
  if (typeof value !== "number" || !Number.isFinite(value)) console.warn("[Vue warn] Invalid value used for CSS binding. Expected a string or a finite number but received:", value);
503
480
  return String(value);
504
481
  }
505
-
506
- //#endregion
507
- //#region packages/reactivity/src/debug.ts
482
+ //#endregion
483
+ //#region packages/reactivity/src/debug.ts
508
484
  const triggerEventInfos = [];
509
485
  function onTrack(sub, debugInfo) {
510
486
  if (sub.onTrack) sub.onTrack(extend({ effect: sub }, debugInfo));
@@ -538,31 +514,11 @@ var Vue = (function() {
538
514
  }
539
515
  });
540
516
  }
541
-
542
- //#endregion
543
- //#region packages/reactivity/src/warning.ts
517
+ //#endregion
518
+ //#region packages/reactivity/src/warning.ts
544
519
  function warn$2(msg, ...args) {
545
520
  console.warn(`[Vue warn] ${msg}`, ...args);
546
521
  }
547
-
548
- //#endregion
549
- //#region packages/reactivity/src/system.ts
550
- const ReactiveFlags = {
551
- "None": 0,
552
- "0": "None",
553
- "Mutable": 1,
554
- "1": "Mutable",
555
- "Watching": 2,
556
- "2": "Watching",
557
- "RecursedCheck": 4,
558
- "4": "RecursedCheck",
559
- "Recursed": 8,
560
- "8": "Recursed",
561
- "Dirty": 16,
562
- "16": "Dirty",
563
- "Pending": 32,
564
- "32": "Pending"
565
- };
566
522
  const notifyBuffer = [];
567
523
  let batchDepth = 0;
568
524
  let activeSub = void 0;
@@ -770,9 +726,8 @@ var Vue = (function() {
770
726
  }
771
727
  return false;
772
728
  }
773
-
774
- //#endregion
775
- //#region packages/reactivity/src/dep.ts
729
+ //#endregion
730
+ //#region packages/reactivity/src/dep.ts
776
731
  var Dep = class {
777
732
  constructor(map, key) {
778
733
  this.map = map;
@@ -881,10 +836,9 @@ var Vue = (function() {
881
836
  const depMap = targetMap.get(object);
882
837
  return depMap && depMap.get(key);
883
838
  }
884
-
885
- //#endregion
886
- //#region packages/reactivity/src/arrayInstrumentations.ts
887
- /**
839
+ //#endregion
840
+ //#region packages/reactivity/src/arrayInstrumentations.ts
841
+ /**
888
842
  * Track array iteration and return:
889
843
  * - if input is reactive: a cloned raw array with reactive values
890
844
  * - if input is non-reactive or shallowReactive: the original raw array
@@ -1029,16 +983,25 @@ var Vue = (function() {
1029
983
  }
1030
984
  function reduce(self, method, fn, args) {
1031
985
  const arr = shallowReadArray(self);
986
+ const needsWrap = arr !== self && !/* @__PURE__ */ isShallow(self);
1032
987
  let wrappedFn = fn;
988
+ let wrapInitialAccumulator = false;
1033
989
  if (arr !== self) {
1034
- if (!/* @__PURE__ */ isShallow(self)) wrappedFn = function(acc, item, index) {
1035
- return fn.call(this, acc, toWrapped(self, item), index, self);
1036
- };
1037
- else if (fn.length > 3) wrappedFn = function(acc, item, index) {
990
+ if (needsWrap) {
991
+ wrapInitialAccumulator = args.length === 0;
992
+ wrappedFn = function(acc, item, index) {
993
+ if (wrapInitialAccumulator) {
994
+ wrapInitialAccumulator = false;
995
+ acc = toWrapped(self, acc);
996
+ }
997
+ return fn.call(this, acc, toWrapped(self, item), index, self);
998
+ };
999
+ } else if (fn.length > 3) wrappedFn = function(acc, item, index) {
1038
1000
  return fn.call(this, acc, item, index, self);
1039
1001
  };
1040
1002
  }
1041
- return arr[method](wrappedFn, ...args);
1003
+ const result = arr[method](wrappedFn, ...args);
1004
+ return wrapInitialAccumulator ? toWrapped(self, result) : result;
1042
1005
  }
1043
1006
  function searchProxy(self, method, args) {
1044
1007
  const arr = /* @__PURE__ */ toRaw(self);
@@ -1058,9 +1021,8 @@ var Vue = (function() {
1058
1021
  endBatch();
1059
1022
  return res;
1060
1023
  }
1061
-
1062
- //#endregion
1063
- //#region packages/reactivity/src/baseHandlers.ts
1024
+ //#endregion
1025
+ //#region packages/reactivity/src/baseHandlers.ts
1064
1026
  const isNonTrackableKeys = /* @__PURE__ */ makeMap(`__proto__,__v_isRef,__isVue`);
1065
1027
  const builtInSymbols = new Set(/* @__PURE__ */ Object.getOwnPropertyNames(Symbol).filter((key) => key !== "arguments" && key !== "caller").map((key) => Symbol[key]).filter(isSymbol));
1066
1028
  function hasOwnProperty(key) {
@@ -1167,9 +1129,8 @@ var Vue = (function() {
1167
1129
  const readonlyHandlers = /* @__PURE__ */ new ReadonlyReactiveHandler();
1168
1130
  const shallowReactiveHandlers = /* @__PURE__ */ new MutableReactiveHandler(true);
1169
1131
  const shallowReadonlyHandlers = /* @__PURE__ */ new ReadonlyReactiveHandler(true);
1170
-
1171
- //#endregion
1172
- //#region packages/reactivity/src/collectionHandlers.ts
1132
+ //#endregion
1133
+ //#region packages/reactivity/src/collectionHandlers.ts
1173
1134
  const toShallow = (value) => value;
1174
1135
  const getProto = (v) => Reflect.getPrototypeOf(v);
1175
1136
  function createIterableMethod(method, isReadonly, isShallow) {
@@ -1252,11 +1213,13 @@ var Vue = (function() {
1252
1213
  clear: createReadonlyMethod("clear")
1253
1214
  } : {
1254
1215
  add(value) {
1255
- if (!shallow && !/* @__PURE__ */ isShallow(value) && !/* @__PURE__ */ isReadonly(value)) value = /* @__PURE__ */ toRaw(value);
1256
1216
  const target = /* @__PURE__ */ toRaw(this);
1257
- if (!getProto(target).has.call(target, value)) {
1258
- target.add(value);
1259
- trigger(target, "add", value, value);
1217
+ const proto = getProto(target);
1218
+ const rawValue = /* @__PURE__ */ toRaw(value);
1219
+ const valueToAdd = !shallow && !/* @__PURE__ */ isShallow(value) && !/* @__PURE__ */ isReadonly(value) ? rawValue : value;
1220
+ if (!(proto.has.call(target, valueToAdd) || hasChanged(value, valueToAdd) && proto.has.call(target, value) || hasChanged(rawValue, valueToAdd) && proto.has.call(target, rawValue))) {
1221
+ target.add(valueToAdd);
1222
+ trigger(target, "add", valueToAdd, valueToAdd);
1260
1223
  }
1261
1224
  return this;
1262
1225
  },
@@ -1327,9 +1290,8 @@ var Vue = (function() {
1327
1290
  warn$2(`Reactive ${type} contains both the raw and reactive versions of the same object${type === `Map` ? ` as keys` : ``}, which can lead to inconsistencies. Avoid differentiating between the raw and reactive versions of an object and only use the reactive version if possible.`);
1328
1291
  }
1329
1292
  }
1330
-
1331
- //#endregion
1332
- //#region packages/reactivity/src/reactive.ts
1293
+ //#endregion
1294
+ //#region packages/reactivity/src/reactive.ts
1333
1295
  const reactiveMap = /* @__PURE__ */ new WeakMap();
1334
1296
  const shallowReactiveMap = /* @__PURE__ */ new WeakMap();
1335
1297
  const readonlyMap = /* @__PURE__ */ new WeakMap();
@@ -1591,9 +1553,8 @@ var Vue = (function() {
1591
1553
  * @param value - The value for which a readonly proxy shall be created.
1592
1554
  */
1593
1555
  const toReadonly = (value) => isObject(value) ? /* @__PURE__ */ readonly(value) : value;
1594
-
1595
- //#endregion
1596
- //#region packages/reactivity/src/ref.ts
1556
+ //#endregion
1557
+ //#region packages/reactivity/src/ref.ts
1597
1558
  /* @__NO_SIDE_EFFECTS__ */
1598
1559
  function isRef(r) {
1599
1560
  return r ? r["__v_isRef"] === true : false;
@@ -1660,7 +1621,7 @@ var Vue = (function() {
1660
1621
  }
1661
1622
  }
1662
1623
  update() {
1663
- this.flags &= ~16;
1624
+ this.flags &= -17;
1664
1625
  return hasChanged(this._oldValue, this._oldValue = this._rawValue);
1665
1626
  }
1666
1627
  };
@@ -1866,9 +1827,8 @@ var Vue = (function() {
1866
1827
  function propertyToRef(source, key, defaultValue) {
1867
1828
  return new ObjectRefImpl(source, key, defaultValue);
1868
1829
  }
1869
-
1870
- //#endregion
1871
- //#region packages/reactivity/src/effect.ts
1830
+ //#endregion
1831
+ //#region packages/reactivity/src/effect.ts
1872
1832
  var ReactiveEffect = class {
1873
1833
  fn() {}
1874
1834
  constructor(fn) {
@@ -1975,9 +1935,8 @@ var Vue = (function() {
1975
1935
  sub.cleanupsLength = 0;
1976
1936
  }
1977
1937
  }
1978
-
1979
- //#endregion
1980
- //#region packages/reactivity/src/effectScope.ts
1938
+ //#endregion
1939
+ //#region packages/reactivity/src/effectScope.ts
1981
1940
  let activeEffectScope;
1982
1941
  var EffectScope = class {
1983
1942
  constructor(detached = false) {
@@ -2084,10 +2043,9 @@ var Vue = (function() {
2084
2043
  if (activeEffectScope !== void 0) activeEffectScope.cleanups[activeEffectScope.cleanupsLength++] = fn;
2085
2044
  else if (!failSilently) warn$2("onScopeDispose() is called when there is no active effect scope to be associated with.");
2086
2045
  }
2087
-
2088
- //#endregion
2089
- //#region packages/reactivity/src/computed.ts
2090
- /**
2046
+ //#endregion
2047
+ //#region packages/reactivity/src/computed.ts
2048
+ /**
2091
2049
  * @private exported by @vue/reactivity for Vue core use, but not exported from
2092
2050
  * the main vue package
2093
2051
  */
@@ -2108,7 +2066,7 @@ var Vue = (function() {
2108
2066
  if (flags & 32) if (checkDirty(this.deps, this)) {
2109
2067
  this.flags = flags | 16;
2110
2068
  return true;
2111
- } else this.flags = flags & ~32;
2069
+ } else this.flags = flags & -33;
2112
2070
  return false;
2113
2071
  }
2114
2072
  /**
@@ -2117,7 +2075,7 @@ var Vue = (function() {
2117
2075
  */
2118
2076
  set _dirty(v) {
2119
2077
  if (v) this.flags |= 16;
2120
- else this.flags &= ~(16 | 32);
2078
+ else this.flags &= -49;
2121
2079
  }
2122
2080
  constructor(fn, setter) {
2123
2081
  this.fn = fn;
@@ -2127,7 +2085,7 @@ var Vue = (function() {
2127
2085
  this.subsTail = void 0;
2128
2086
  this.deps = void 0;
2129
2087
  this.depsTail = void 0;
2130
- this.flags = 1 | 16;
2088
+ this.flags = 17;
2131
2089
  this.__v_isRef = true;
2132
2090
  this["__v_isReadonly"] = !setter;
2133
2091
  }
@@ -2138,7 +2096,7 @@ var Vue = (function() {
2138
2096
  const subs = this.subs;
2139
2097
  if (subs !== void 0) shallowPropagate(subs);
2140
2098
  }
2141
- } else if (flags & 32) this.flags = flags & ~32;
2099
+ } else if (flags & 32) this.flags = flags & -33;
2142
2100
  if (activeSub !== void 0) {
2143
2101
  onTrack(activeSub, {
2144
2102
  target: this,
@@ -2185,9 +2143,8 @@ var Vue = (function() {
2185
2143
  }
2186
2144
  return cRef;
2187
2145
  }
2188
-
2189
- //#endregion
2190
- //#region packages/reactivity/src/constants.ts
2146
+ //#endregion
2147
+ //#region packages/reactivity/src/constants.ts
2191
2148
  const TrackOpTypes = {
2192
2149
  "GET": "get",
2193
2150
  "HAS": "has",
@@ -2199,9 +2156,8 @@ var Vue = (function() {
2199
2156
  "DELETE": "delete",
2200
2157
  "CLEAR": "clear"
2201
2158
  };
2202
-
2203
- //#endregion
2204
- //#region packages/reactivity/src/watch.ts
2159
+ //#endregion
2160
+ //#region packages/reactivity/src/watch.ts
2205
2161
  const INITIAL_WATCHER_VALUE = {};
2206
2162
  let activeWatcher = void 0;
2207
2163
  /**
@@ -2342,9 +2298,8 @@ var Vue = (function() {
2342
2298
  }
2343
2299
  return value;
2344
2300
  }
2345
-
2346
- //#endregion
2347
- //#region packages/runtime-core/src/warning.ts
2301
+ //#endregion
2302
+ //#region packages/runtime-core/src/warning.ts
2348
2303
  const stack$1 = [];
2349
2304
  /**
2350
2305
  * @internal
@@ -2369,8 +2324,8 @@ var Vue = (function() {
2369
2324
  const trace = getComponentTrace();
2370
2325
  if (appWarnHandler) callWithErrorHandling(appWarnHandler, instance, 11, [
2371
2326
  msg + args.map((a) => {
2372
- var _a$toString, _a$toString2;
2373
- return (_a$toString = (_a$toString2 = a.toString) === null || _a$toString2 === void 0 ? void 0 : _a$toString2.call(a)) !== null && _a$toString !== void 0 ? _a$toString : JSON.stringify(a);
2327
+ const toString = a.toString;
2328
+ return toString == null ? JSON.stringify(a) : toString.call(a);
2374
2329
  }).join(""),
2375
2330
  instance && instance.proxy || instance,
2376
2331
  trace.map(({ ctx }) => `at <${formatComponentName(instance, ctx.type)}>`).join("\n"),
@@ -2460,9 +2415,8 @@ var Vue = (function() {
2460
2415
  else if (isNaN(val)) warn$1(`${type} is NaN - the duration expression might be incorrect.`);
2461
2416
  }
2462
2417
  /* v8 ignore stop */
2463
-
2464
- //#endregion
2465
- //#region packages/runtime-core/src/errorHandling.ts
2418
+ //#endregion
2419
+ //#region packages/runtime-core/src/errorHandling.ts
2466
2420
  const ErrorCodes = {
2467
2421
  "SETUP_FUNCTION": 0,
2468
2422
  "0": "SETUP_FUNCTION",
@@ -2583,9 +2537,8 @@ var Vue = (function() {
2583
2537
  else console.error(err);
2584
2538
  }
2585
2539
  }
2586
-
2587
- //#endregion
2588
- //#region packages/runtime-core/src/scheduler.ts
2540
+ //#endregion
2541
+ //#region packages/runtime-core/src/scheduler.ts
2589
2542
  const jobs = [];
2590
2543
  let postJobs = [];
2591
2544
  let activePostJobs = null;
@@ -2736,9 +2689,8 @@ var Vue = (function() {
2736
2689
  seen.set(fn, count + 1);
2737
2690
  return false;
2738
2691
  }
2739
-
2740
- //#endregion
2741
- //#region packages/runtime-core/src/hmr.ts
2692
+ //#endregion
2693
+ //#region packages/runtime-core/src/hmr.ts
2742
2694
  let isHmrUpdating = false;
2743
2695
  const hmrDirtyComponents = /* @__PURE__ */ new Map();
2744
2696
  const hmrDirtyComponentsMode = /* @__PURE__ */ new Map();
@@ -2858,9 +2810,8 @@ var Vue = (function() {
2858
2810
  }
2859
2811
  };
2860
2812
  }
2861
-
2862
- //#endregion
2863
- //#region packages/runtime-core/src/devtools.ts
2813
+ //#endregion
2814
+ //#region packages/runtime-core/src/devtools.ts
2864
2815
  let devtools$1;
2865
2816
  let buffer = [];
2866
2817
  let devtoolsNotInstalled = false;
@@ -2927,9 +2878,8 @@ var Vue = (function() {
2927
2878
  function devtoolsComponentEmit(component, event, params) {
2928
2879
  emit$2("component:emit", component.appContext.app, component, event, params);
2929
2880
  }
2930
-
2931
- //#endregion
2932
- //#region packages/runtime-core/src/compat/compatConfig.ts
2881
+ //#endregion
2882
+ //#region packages/runtime-core/src/compat/compatConfig.ts
2933
2883
  const DeprecationTypes$1 = {
2934
2884
  "GLOBAL_MOUNT": "GLOBAL_MOUNT",
2935
2885
  "GLOBAL_MOUNT_CONTAINER": "GLOBAL_MOUNT_CONTAINER",
@@ -3198,9 +3148,8 @@ var Vue = (function() {
3198
3148
  if (enabled) warnDeprecation$1(key, instance, ...args);
3199
3149
  return enabled;
3200
3150
  }
3201
-
3202
- //#endregion
3203
- //#region packages/runtime-core/src/compat/instanceEventEmitter.ts
3151
+ //#endregion
3152
+ //#region packages/runtime-core/src/compat/instanceEventEmitter.ts
3204
3153
  const eventRegistryMap = /* @__PURE__ */ new WeakMap();
3205
3154
  function getRegistry(instance) {
3206
3155
  let events = eventRegistryMap.get(instance);
@@ -3252,10 +3201,9 @@ var Vue = (function() {
3252
3201
  if (cbs) callWithAsyncErrorHandling(cbs.map((cb) => cb.bind(instance.proxy)), instance, 6, args);
3253
3202
  return instance.proxy;
3254
3203
  }
3255
-
3256
- //#endregion
3257
- //#region packages/runtime-core/src/componentRenderContext.ts
3258
- /**
3204
+ //#endregion
3205
+ //#region packages/runtime-core/src/componentRenderContext.ts
3206
+ /**
3259
3207
  * mark the current rendering instance for asset resolution (e.g.
3260
3208
  * resolveComponent, resolveDirective) during render
3261
3209
  */
@@ -3324,9 +3272,8 @@ var Vue = (function() {
3324
3272
  if (isNonScopedSlot) renderFnWithContext._ns = true;
3325
3273
  return renderFnWithContext;
3326
3274
  }
3327
-
3328
- //#endregion
3329
- //#region packages/runtime-core/src/compat/customDirective.ts
3275
+ //#endregion
3276
+ //#region packages/runtime-core/src/compat/customDirective.ts
3330
3277
  const legacyDirectiveHookMap = {
3331
3278
  beforeMount: "bind",
3332
3279
  mounted: "inserted",
@@ -3350,9 +3297,8 @@ var Vue = (function() {
3350
3297
  return dir[mappedName];
3351
3298
  }
3352
3299
  }
3353
-
3354
- //#endregion
3355
- //#region packages/runtime-core/src/directives.ts
3300
+ //#endregion
3301
+ //#region packages/runtime-core/src/directives.ts
3356
3302
  function validateDirectiveName(name) {
3357
3303
  if (isBuiltInDirective(name)) warn$1("Do not use built-in directive ids as custom directive id: " + name);
3358
3304
  }
@@ -3406,9 +3352,8 @@ var Vue = (function() {
3406
3352
  }
3407
3353
  }
3408
3354
  }
3409
-
3410
- //#endregion
3411
- //#region packages/runtime-core/src/apiInject.ts
3355
+ //#endregion
3356
+ //#region packages/runtime-core/src/apiInject.ts
3412
3357
  function provide(key, value) {
3413
3358
  if (!currentInstance || currentInstance.isMounted && !isHmrUpdating) warn$1(`provide() can only be used inside setup().`);
3414
3359
  if (currentInstance) {
@@ -3435,16 +3380,14 @@ var Vue = (function() {
3435
3380
  function hasInjectionContext() {
3436
3381
  return !!(getCurrentGenericInstance() || currentApp);
3437
3382
  }
3438
-
3439
- //#endregion
3440
- //#region packages/runtime-core/src/helpers/useSsrContext.ts
3383
+ //#endregion
3384
+ //#region packages/runtime-core/src/helpers/useSsrContext.ts
3441
3385
  const ssrContextKey = Symbol.for("v-scx");
3442
3386
  const useSSRContext = () => {
3443
3387
  warn$1(`useSSRContext() is not supported in the global build.`);
3444
3388
  };
3445
-
3446
- //#endregion
3447
- //#region packages/runtime-core/src/apiWatch.ts
3389
+ //#endregion
3390
+ //#region packages/runtime-core/src/apiWatch.ts
3448
3391
  function watchEffect(effect, options) {
3449
3392
  return doWatch(effect, null, options);
3450
3393
  }
@@ -3525,9 +3468,8 @@ var Vue = (function() {
3525
3468
  return cur;
3526
3469
  };
3527
3470
  }
3528
-
3529
- //#endregion
3530
- //#region packages/runtime-core/src/components/Teleport.ts
3471
+ //#endregion
3472
+ //#region packages/runtime-core/src/components/Teleport.ts
3531
3473
  const TeleportEndKey = Symbol("_vte");
3532
3474
  const isTeleport = (type) => type.__isTeleport;
3533
3475
  const isTeleportDisabled = (props) => props && (props.disabled || props.disabled === "");
@@ -3723,9 +3665,8 @@ var Vue = (function() {
3723
3665
  }
3724
3666
  return targetAnchor;
3725
3667
  }
3726
-
3727
- //#endregion
3728
- //#region packages/runtime-core/src/components/BaseTransition.ts
3668
+ //#endregion
3669
+ //#region packages/runtime-core/src/components/BaseTransition.ts
3729
3670
  const leaveCbKey = Symbol("_leaveCb");
3730
3671
  const enterCbKey$1 = Symbol("_enterCb");
3731
3672
  function useTransitionState() {
@@ -3847,6 +3788,7 @@ var Vue = (function() {
3847
3788
  const key = String(vnode.key);
3848
3789
  const leavingVNodesCache = getLeavingNodesForType(state, vnode);
3849
3790
  return baseResolveTransitionHooks({
3791
+ isLeaving: () => leavingVNodesCache[key] === vnode,
3850
3792
  setLeavingNodeCache: () => {
3851
3793
  leavingVNodesCache[key] = vnode;
3852
3794
  },
@@ -3865,7 +3807,7 @@ var Vue = (function() {
3865
3807
  }, props, state, instance);
3866
3808
  }
3867
3809
  function baseResolveTransitionHooks(context, props, state, instance) {
3868
- const { setLeavingNodeCache, unsetLeavingNodeCache, earlyRemove, cloneHooks } = context;
3810
+ const { isLeaving, setLeavingNodeCache, unsetLeavingNodeCache, earlyRemove, cloneHooks } = context;
3869
3811
  const { appear, mode, persisted = false, onBeforeEnter, onEnter, onAfterEnter, onEnterCancelled, onBeforeLeave, onLeave, onAfterLeave, onLeaveCancelled, onBeforeAppear, onAppear, onAfterAppear, onAppearCancelled } = props;
3870
3812
  const callHook = (hook, args) => {
3871
3813
  hook && callWithAsyncErrorHandling(hook, instance, 9, args);
@@ -3889,6 +3831,7 @@ var Vue = (function() {
3889
3831
  callHook(hook, [el]);
3890
3832
  },
3891
3833
  enter(el) {
3834
+ if (isLeaving()) return;
3892
3835
  let hook = onEnter;
3893
3836
  let afterHook = onAfterEnter;
3894
3837
  let cancelHook = onEnterCancelled;
@@ -3985,16 +3928,14 @@ var Vue = (function() {
3985
3928
  function checkTransitionMode(mode) {
3986
3929
  if (mode && mode !== "in-out" && mode !== "out-in" && mode !== "default") warn$1(`invalid <transition> mode: ${mode}`);
3987
3930
  }
3988
-
3989
- //#endregion
3990
- //#region packages/runtime-core/src/apiDefineComponent.ts
3931
+ //#endregion
3932
+ //#region packages/runtime-core/src/apiDefineComponent.ts
3991
3933
  /* @__NO_SIDE_EFFECTS__ */
3992
3934
  function defineComponent(options, extraOptions) {
3993
3935
  return isFunction(options) ? extend({ name: options.name }, extraOptions, { setup: options }) : options;
3994
3936
  }
3995
-
3996
- //#endregion
3997
- //#region packages/runtime-core/src/helpers/useId.ts
3937
+ //#endregion
3938
+ //#region packages/runtime-core/src/helpers/useId.ts
3998
3939
  function useId() {
3999
3940
  const i = getCurrentGenericInstance();
4000
3941
  if (i) return (i.appContext.config.idPrefix || "v") + "-" + i.ids[0] + i.ids[1]++;
@@ -4014,9 +3955,8 @@ var Vue = (function() {
4014
3955
  0
4015
3956
  ];
4016
3957
  }
4017
-
4018
- //#endregion
4019
- //#region packages/runtime-core/src/helpers/useTemplateRef.ts
3958
+ //#endregion
3959
+ //#region packages/runtime-core/src/helpers/useTemplateRef.ts
4020
3960
  const knownTemplateRefs = /* @__PURE__ */ new WeakSet();
4021
3961
  function useTemplateRef(key) {
4022
3962
  const i = getCurrentGenericInstance();
@@ -4038,9 +3978,8 @@ var Vue = (function() {
4038
3978
  let desc;
4039
3979
  return !!((desc = Object.getOwnPropertyDescriptor(refs, key)) && !desc.configurable);
4040
3980
  }
4041
-
4042
- //#endregion
4043
- //#region packages/runtime-core/src/rendererTemplateRef.ts
3981
+ //#endregion
3982
+ //#region packages/runtime-core/src/rendererTemplateRef.ts
4044
3983
  const pendingSetRefMap = /* @__PURE__ */ new WeakMap();
4045
3984
  /**
4046
3985
  * Function for handling a template ref
@@ -4137,20 +4076,12 @@ var Vue = (function() {
4137
4076
  pendingSetRefMap.delete(rawRef);
4138
4077
  }
4139
4078
  }
4140
-
4141
- //#endregion
4142
- //#region packages/runtime-core/src/hydration.ts
4079
+ //#endregion
4080
+ //#region packages/runtime-core/src/hydration.ts
4143
4081
  let isHydratingEnabled = false;
4144
4082
  function setIsHydratingEnabled(value) {
4145
4083
  isHydratingEnabled = value;
4146
4084
  }
4147
- /**
4148
- * VDOM hydration state.
4149
- * Also used by vapor interop plugin for tree-shaking:
4150
- * In non-hydration builds, this is never set to true, so the logic in
4151
- * vaporInteropImpl's hydrate/hydrateSlot can be tree-shaken.
4152
- */
4153
- let isHydrating = false;
4154
4085
  let hasLoggedMismatchError = false;
4155
4086
  const logMismatchError = () => {
4156
4087
  if (hasLoggedMismatchError) return;
@@ -4176,9 +4107,7 @@ var Vue = (function() {
4176
4107
  container._vnode = vnode;
4177
4108
  return;
4178
4109
  }
4179
- isHydrating = true;
4180
4110
  hydrateNode(container.firstChild, vnode, null, null, null);
4181
- isHydrating = false;
4182
4111
  flushPostFlushCbs();
4183
4112
  container._vnode = vnode;
4184
4113
  };
@@ -4547,9 +4476,8 @@ var Vue = (function() {
4547
4476
  return list.includes(MismatchTypeString[allowedType]);
4548
4477
  }
4549
4478
  }
4550
-
4551
- //#endregion
4552
- //#region packages/runtime-core/src/hydrationStrategies.ts
4479
+ //#endregion
4480
+ //#region packages/runtime-core/src/hydrationStrategies.ts
4553
4481
  let requestIdleCallback;
4554
4482
  let cancelIdleCallback;
4555
4483
  function ensureIdleCallbacks() {
@@ -4636,9 +4564,8 @@ var Vue = (function() {
4636
4564
  }
4637
4565
  } else cb(node);
4638
4566
  }
4639
-
4640
- //#endregion
4641
- //#region packages/runtime-core/src/apiAsyncComponent.ts
4567
+ //#endregion
4568
+ //#region packages/runtime-core/src/apiAsyncComponent.ts
4642
4569
  const isAsyncWrapper = (i) => !!i.type.__asyncLoader;
4643
4570
  /* @__NO_SIDE_EFFECTS__ */
4644
4571
  function defineAsyncComponent(source) {
@@ -4773,9 +4700,8 @@ var Vue = (function() {
4773
4700
  if (getResolvedComp()) doHydrate();
4774
4701
  else load().then(() => !instance.isUnmounted && doHydrate());
4775
4702
  }
4776
-
4777
- //#endregion
4778
- //#region packages/runtime-core/src/components/KeepAlive.ts
4703
+ //#endregion
4704
+ //#region packages/runtime-core/src/components/KeepAlive.ts
4779
4705
  const isKeepAlive = (vnode) => vnode.type.__isKeepAlive;
4780
4706
  const KeepAliveImpl = {
4781
4707
  name: `KeepAlive`,
@@ -4994,11 +4920,9 @@ var Vue = (function() {
4994
4920
  instance.isDeactivated = true;
4995
4921
  }, void 0, parentSuspense);
4996
4922
  devtoolsComponentAdded(instance);
4997
- instance.__keepAliveStorageContainer = container;
4998
4923
  }
4999
-
5000
- //#endregion
5001
- //#region packages/runtime-core/src/apiLifecycle.ts
4924
+ //#endregion
4925
+ //#region packages/runtime-core/src/apiLifecycle.ts
5002
4926
  function injectHook(type, hook, target = currentInstance, prepend = false) {
5003
4927
  if (target) {
5004
4928
  const hooks = target[type] || (target[type] = []);
@@ -5032,9 +4956,8 @@ var Vue = (function() {
5032
4956
  function onErrorCaptured(hook, target = currentInstance) {
5033
4957
  injectHook("ec", hook, target);
5034
4958
  }
5035
-
5036
- //#endregion
5037
- //#region packages/runtime-core/src/compat/instanceChildren.ts
4959
+ //#endregion
4960
+ //#region packages/runtime-core/src/compat/instanceChildren.ts
5038
4961
  function getCompatChildren(instance) {
5039
4962
  assertCompatEnabled("INSTANCE_CHILDREN", instance);
5040
4963
  const root = instance.subTree;
@@ -5049,9 +4972,8 @@ var Vue = (function() {
5049
4972
  for (let i = 0; i < vnodes.length; i++) walk$1(vnodes[i], children);
5050
4973
  }
5051
4974
  }
5052
-
5053
- //#endregion
5054
- //#region packages/runtime-core/src/compat/instanceListeners.ts
4975
+ //#endregion
4976
+ //#region packages/runtime-core/src/compat/instanceListeners.ts
5055
4977
  function getCompatListeners(instance) {
5056
4978
  assertCompatEnabled("INSTANCE_LISTENERS", instance);
5057
4979
  const listeners = {};
@@ -5060,24 +4982,20 @@ var Vue = (function() {
5060
4982
  for (const key in rawProps) if (isOn(key)) listeners[key[2].toLowerCase() + key.slice(3)] = rawProps[key];
5061
4983
  return listeners;
5062
4984
  }
5063
-
5064
- //#endregion
5065
- //#region packages/runtime-core/src/helpers/resolveAssets.ts
5066
- const COMPONENTS = "components";
5067
4985
  const DIRECTIVES = "directives";
5068
4986
  const FILTERS = "filters";
5069
4987
  /**
5070
4988
  * @private
5071
4989
  */
5072
4990
  function resolveComponent(name, maybeSelfReference) {
5073
- return resolveAsset(COMPONENTS, name, true, maybeSelfReference) || name;
4991
+ return resolveAsset("components", name, true, maybeSelfReference) || name;
5074
4992
  }
5075
4993
  const NULL_DYNAMIC_COMPONENT = Symbol.for("v-ndc");
5076
4994
  /**
5077
4995
  * @private
5078
4996
  */
5079
4997
  function resolveDynamicComponent(component) {
5080
- if (isString(component)) return resolveAsset(COMPONENTS, component, false) || component;
4998
+ if (isString(component)) return resolveAsset("components", component, false) || component;
5081
4999
  else return component || NULL_DYNAMIC_COMPONENT;
5082
5000
  }
5083
5001
  /**
@@ -5097,14 +5015,14 @@ var Vue = (function() {
5097
5015
  const instance = currentRenderingInstance || currentInstance;
5098
5016
  if (instance) {
5099
5017
  const Component = instance.type;
5100
- if (type === COMPONENTS) {
5018
+ if (type === "components") {
5101
5019
  const selfName = getComponentName(Component, false);
5102
5020
  if (selfName && (selfName === name || selfName === camelize(name) || selfName === capitalize(camelize(name)))) return Component;
5103
5021
  }
5104
5022
  const res = resolve(instance[type] || Component[type], name) || resolve(instance.appContext[type], name);
5105
5023
  if (!res && maybeSelfReference) return Component;
5106
5024
  if (warnMissing && !res) {
5107
- const extra = type === COMPONENTS ? "\nIf this is a native custom element, make sure to exclude it from component resolution via compilerOptions.isCustomElement." : ``;
5025
+ const extra = type === "components" ? "\nIf this is a native custom element, make sure to exclude it from component resolution via compilerOptions.isCustomElement." : ``;
5108
5026
  warn$1(`Failed to resolve ${type.slice(0, -1)}: ${name}${extra}`);
5109
5027
  }
5110
5028
  return res;
@@ -5113,9 +5031,8 @@ var Vue = (function() {
5113
5031
  function resolve(registry, name) {
5114
5032
  return registry && (registry[name] || registry[camelize(name)] || registry[capitalize(camelize(name))]);
5115
5033
  }
5116
-
5117
- //#endregion
5118
- //#region packages/runtime-core/src/compat/renderFn.ts
5034
+ //#endregion
5035
+ //#region packages/runtime-core/src/compat/renderFn.ts
5119
5036
  function convertLegacyRenderFn(instance) {
5120
5037
  const Component = instance.type;
5121
5038
  const render = Component.render;
@@ -5249,9 +5166,8 @@ var Vue = (function() {
5249
5166
  }
5250
5167
  /* v8 ignore stop */
5251
5168
  }
5252
-
5253
- //#endregion
5254
- //#region packages/runtime-core/src/compat/componentFunctional.ts
5169
+ //#endregion
5170
+ //#region packages/runtime-core/src/compat/componentFunctional.ts
5255
5171
  const normalizedFunctionalComponentMap = /* @__PURE__ */ new WeakMap();
5256
5172
  const legacySlotProxyHandlers = { get(target, key) {
5257
5173
  const slot = target[key];
@@ -5291,10 +5207,9 @@ var Vue = (function() {
5291
5207
  normalizedFunctionalComponentMap.set(comp, Func);
5292
5208
  return Func;
5293
5209
  }
5294
-
5295
- //#endregion
5296
- //#region packages/runtime-core/src/helpers/renderList.ts
5297
- /**
5210
+ //#endregion
5211
+ //#region packages/runtime-core/src/helpers/renderList.ts
5212
+ /**
5298
5213
  * Actual implementation
5299
5214
  */
5300
5215
  function renderList(source, renderItem, cache, index) {
@@ -5312,11 +5227,14 @@ var Vue = (function() {
5312
5227
  }
5313
5228
  ret = new Array(source.length);
5314
5229
  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]);
5315
- } else if (typeof source === "number") {
5316
- if (!Number.isInteger(source)) warn$1(`The v-for range expect an integer value but got ${source}.`);
5230
+ } else if (typeof source === "number") if (!Number.isInteger(source) || source < 0) {
5231
+ warn$1(`The v-for range expects a positive integer value but got ${source}.`);
5232
+ ret = [];
5233
+ } else {
5317
5234
  ret = new Array(source);
5318
5235
  for (let i = 0; i < source; i++) ret[i] = renderItem(i + 1, i, void 0, cached && cached[i]);
5319
- } else if (isObject(source)) if (source[Symbol.iterator]) ret = Array.from(source, (item, i) => renderItem(item, i, void 0, cached && cached[i]));
5236
+ }
5237
+ else if (isObject(source)) if (source[Symbol.iterator]) ret = Array.from(source, (item, i) => renderItem(item, i, void 0, cached && cached[i]));
5320
5238
  else {
5321
5239
  const keys = Object.keys(source);
5322
5240
  ret = new Array(keys.length);
@@ -5329,10 +5247,9 @@ var Vue = (function() {
5329
5247
  if (cache) cache[index] = ret;
5330
5248
  return ret;
5331
5249
  }
5332
-
5333
- //#endregion
5334
- //#region packages/runtime-core/src/helpers/createSlots.ts
5335
- /**
5250
+ //#endregion
5251
+ //#region packages/runtime-core/src/helpers/createSlots.ts
5252
+ /**
5336
5253
  * Compiler runtime helper for creating dynamic slots object
5337
5254
  * @private
5338
5255
  */
@@ -5348,10 +5265,9 @@ var Vue = (function() {
5348
5265
  }
5349
5266
  return slots;
5350
5267
  }
5351
-
5352
- //#endregion
5353
- //#region packages/runtime-core/src/helpers/renderSlot.ts
5354
- /**
5268
+ //#endregion
5269
+ //#region packages/runtime-core/src/helpers/renderSlot.ts
5270
+ /**
5355
5271
  * Compiler runtime helper for rendering `<slot/>`
5356
5272
  * @private
5357
5273
  */
@@ -5399,10 +5315,9 @@ var Vue = (function() {
5399
5315
  if (!vaporSlot.fallback && fallback) vaporSlot.fallback = fallback;
5400
5316
  }
5401
5317
  }
5402
-
5403
- //#endregion
5404
- //#region packages/runtime-core/src/helpers/toHandlers.ts
5405
- /**
5318
+ //#endregion
5319
+ //#region packages/runtime-core/src/helpers/toHandlers.ts
5320
+ /**
5406
5321
  * For prefixing keys in v-on="obj" with "on"
5407
5322
  * @private
5408
5323
  */
@@ -5415,9 +5330,8 @@ var Vue = (function() {
5415
5330
  for (const key in obj) ret[preserveCaseIfNecessary && /[A-Z]/.test(key) ? `on:${key}` : toHandlerKey(key)] = obj[key];
5416
5331
  return ret;
5417
5332
  }
5418
-
5419
- //#endregion
5420
- //#region packages/runtime-core/src/compat/renderHelpers.ts
5333
+ //#endregion
5334
+ //#region packages/runtime-core/src/compat/renderHelpers.ts
5421
5335
  function toObject(arr) {
5422
5336
  const res = {};
5423
5337
  for (let i = 0; i < arr.length; i++) if (arr[i]) extend(res, arr[i]);
@@ -5497,9 +5411,8 @@ var Vue = (function() {
5497
5411
  function legacyPrependModifier(value, symbol) {
5498
5412
  return typeof value === "string" ? symbol + value : value;
5499
5413
  }
5500
-
5501
- //#endregion
5502
- //#region packages/runtime-core/src/compat/instance.ts
5414
+ //#endregion
5415
+ //#region packages/runtime-core/src/compat/instance.ts
5503
5416
  function installCompatInstanceProperties(map) {
5504
5417
  const set = (target, key, val) => {
5505
5418
  target[key] = val;
@@ -5586,10 +5499,9 @@ var Vue = (function() {
5586
5499
  if (isCompatEnabled$1("PRIVATE_APIS", i)) return privateAPIs[key](i);
5587
5500
  };
5588
5501
  }
5589
-
5590
- //#endregion
5591
- //#region packages/runtime-core/src/componentPublicInstance.ts
5592
- /**
5502
+ //#endregion
5503
+ //#region packages/runtime-core/src/componentPublicInstance.ts
5504
+ /**
5593
5505
  * #2437 In Vue 3, functional components do not have a public instance proxy but
5594
5506
  * they exist in the internal parent chain. For code that relies on traversing
5595
5507
  * public $parent chains, skip functional ones and go to the parent instead.
@@ -5772,9 +5684,8 @@ var Vue = (function() {
5772
5684
  }
5773
5685
  });
5774
5686
  }
5775
-
5776
- //#endregion
5777
- //#region packages/runtime-core/src/compat/data.ts
5687
+ //#endregion
5688
+ //#region packages/runtime-core/src/compat/data.ts
5778
5689
  function deepMergeData(to, from) {
5779
5690
  for (const key in from) {
5780
5691
  const toVal = to[key];
@@ -5786,9 +5697,8 @@ var Vue = (function() {
5786
5697
  }
5787
5698
  return to;
5788
5699
  }
5789
-
5790
- //#endregion
5791
- //#region packages/runtime-core/src/apiSetupHelpers.ts
5700
+ //#endregion
5701
+ //#region packages/runtime-core/src/apiSetupHelpers.ts
5792
5702
  const warnRuntimeUsage = (method) => warn$1(`${method}() is a compiler-hint helper that is only usable inside <script setup> of a single file component. Its arguments should be compiled away and passing it at runtime has no effect.`);
5793
5703
  function defineProps() {
5794
5704
  warnRuntimeUsage(`defineProps`);
@@ -5825,6 +5735,22 @@ var Vue = (function() {
5825
5735
  function defineOptions(options) {
5826
5736
  warnRuntimeUsage(`defineOptions`);
5827
5737
  }
5738
+ /**
5739
+ * Vue `<script setup>` compiler macro for providing type hints to IDEs for
5740
+ * slot name and slot props type checking.
5741
+ *
5742
+ * Example usage:
5743
+ * ```ts
5744
+ * const slots = defineSlots<{
5745
+ * default(props: { msg: string }): any
5746
+ * }>()
5747
+ * ```
5748
+ *
5749
+ * This is only usable inside `<script setup>`, is compiled away in the
5750
+ * output and should **not** be actually called at runtime.
5751
+ *
5752
+ * @see {@link https://vuejs.org/api/sfc-script-setup.html#defineslots}
5753
+ */
5828
5754
  function defineSlots() {
5829
5755
  warnRuntimeUsage(`defineSlots`);
5830
5756
  return null;
@@ -5941,18 +5867,31 @@ var Vue = (function() {
5941
5867
  */
5942
5868
  function withAsyncContext(getAwaitable) {
5943
5869
  const ctx = getCurrentGenericInstance();
5870
+ const inSSRSetup = isInSSRComponentSetup;
5944
5871
  if (!ctx) warn$1("withAsyncContext called without active current instance. This is likely a bug.");
5945
5872
  let awaitable = getAwaitable();
5946
5873
  setCurrentInstance(null, void 0);
5947
- if (isPromise(awaitable)) awaitable = awaitable.catch((e) => {
5874
+ if (inSSRSetup) setInSSRSetupState(false);
5875
+ const restore = () => {
5948
5876
  setCurrentInstance(ctx);
5877
+ if (inSSRSetup) setInSSRSetupState(true);
5878
+ };
5879
+ const cleanup = () => {
5880
+ setCurrentInstance(null, void 0);
5881
+ if (inSSRSetup) setInSSRSetupState(false);
5882
+ };
5883
+ if (isPromise(awaitable)) awaitable = awaitable.catch((e) => {
5884
+ restore();
5885
+ Promise.resolve().then(() => Promise.resolve().then(cleanup));
5949
5886
  throw e;
5950
5887
  });
5951
- return [awaitable, () => setCurrentInstance(ctx)];
5888
+ return [awaitable, () => {
5889
+ restore();
5890
+ Promise.resolve().then(cleanup);
5891
+ }];
5952
5892
  }
5953
-
5954
- //#endregion
5955
- //#region packages/runtime-core/src/componentOptions.ts
5893
+ //#endregion
5894
+ //#region packages/runtime-core/src/componentOptions.ts
5956
5895
  function createDuplicateChecker() {
5957
5896
  const cache = Object.create(null);
5958
5897
  return (type, key) => {
@@ -6216,9 +6155,8 @@ var Vue = (function() {
6216
6155
  for (const key in from) merged[key] = mergeAsArray$1(to[key], from[key]);
6217
6156
  return merged;
6218
6157
  }
6219
-
6220
- //#endregion
6221
- //#region packages/runtime-core/src/compat/globalConfig.ts
6158
+ //#endregion
6159
+ //#region packages/runtime-core/src/compat/globalConfig.ts
6222
6160
  function installLegacyConfigWarnings(config) {
6223
6161
  const legacyConfigOptions = {
6224
6162
  silent: "CONFIG_SILENT",
@@ -6247,9 +6185,8 @@ var Vue = (function() {
6247
6185
  if (key in internalOptionMergeStrats && softAssertCompatEnabled("CONFIG_OPTION_MERGE_STRATS", null)) return internalOptionMergeStrats[key];
6248
6186
  } });
6249
6187
  }
6250
-
6251
- //#endregion
6252
- //#region packages/runtime-core/src/compat/global.ts
6188
+ //#endregion
6189
+ //#region packages/runtime-core/src/compat/global.ts
6253
6190
  let isCopyingConfig = false;
6254
6191
  let singletonApp;
6255
6192
  let singletonCtor;
@@ -6268,7 +6205,7 @@ var Vue = (function() {
6268
6205
  if (options.el) return vm.$mount(options.el);
6269
6206
  else return vm;
6270
6207
  }
6271
- Vue.version = `2.6.14-compat:3.6.0-beta.6`;
6208
+ Vue.version = `2.6.14-compat:3.6.0-beta.8`;
6272
6209
  Vue.config = singletonApp.config;
6273
6210
  Vue.use = (plugin, ...options) => {
6274
6211
  if (plugin && isFunction(plugin.install)) plugin.install(Vue, ...options);
@@ -6548,9 +6485,8 @@ var Vue = (function() {
6548
6485
  }
6549
6486
  });
6550
6487
  }
6551
-
6552
- //#endregion
6553
- //#region packages/runtime-core/src/apiCreateApp.ts
6488
+ //#endregion
6489
+ //#region packages/runtime-core/src/apiCreateApp.ts
6554
6490
  function createAppContext() {
6555
6491
  return {
6556
6492
  app: null,
@@ -6681,9 +6617,8 @@ var Vue = (function() {
6681
6617
  * `app.runWithContext()`.
6682
6618
  */
6683
6619
  let currentApp = null;
6684
-
6685
- //#endregion
6686
- //#region packages/runtime-core/src/compat/componentVModel.ts
6620
+ //#endregion
6621
+ //#region packages/runtime-core/src/compat/componentVModel.ts
6687
6622
  const compatModelEventPrefix = `onModelCompat:`;
6688
6623
  const warnedTypes = /* @__PURE__ */ new WeakSet();
6689
6624
  function convertLegacyVModelProps(vnode) {
@@ -6724,9 +6659,8 @@ var Vue = (function() {
6724
6659
  const modelHandler = props && props[compatModelEventPrefix + event];
6725
6660
  if (modelHandler) callWithErrorHandling(modelHandler, instance, 6, args);
6726
6661
  }
6727
-
6728
- //#endregion
6729
- //#region packages/runtime-core/src/helpers/useModel.ts
6662
+ //#endregion
6663
+ //#region packages/runtime-core/src/helpers/useModel.ts
6730
6664
  function useModel(props, name, options = EMPTY_OBJ) {
6731
6665
  const i = getCurrentGenericInstance();
6732
6666
  if (!i) {
@@ -6797,9 +6731,8 @@ var Vue = (function() {
6797
6731
  const getModelModifiers = (props, modelName, getter) => {
6798
6732
  return getter(props, getModifierPropName(modelName)) || getter(props, `${camelize(modelName)}Modifiers`) || getter(props, `${hyphenate(modelName)}Modifiers`);
6799
6733
  };
6800
-
6801
- //#endregion
6802
- //#region packages/runtime-core/src/componentEmits.ts
6734
+ //#endregion
6735
+ //#region packages/runtime-core/src/componentEmits.ts
6803
6736
  function emit(instance, event, ...rawArgs) {
6804
6737
  return baseEmit(instance, instance.vnode.props || EMPTY_OBJ, defaultPropGetter, event, ...rawArgs);
6805
6738
  }
@@ -6893,10 +6826,9 @@ var Vue = (function() {
6893
6826
  key = key.slice(2).replace(/Once$/, "");
6894
6827
  return hasOwn(options, key[0].toLowerCase() + key.slice(1)) || hasOwn(options, hyphenate(key)) || hasOwn(options, key);
6895
6828
  }
6896
-
6897
- //#endregion
6898
- //#region packages/runtime-core/src/componentRenderUtils.ts
6899
- /**
6829
+ //#endregion
6830
+ //#region packages/runtime-core/src/componentRenderUtils.ts
6831
+ /**
6900
6832
  * dev only flag to track whether $attrs was used during render.
6901
6833
  * If $attrs was used during render then the warning for failed attrs
6902
6834
  * fallthrough can be suppressed.
@@ -7095,9 +7027,8 @@ var Vue = (function() {
7095
7027
  } else break;
7096
7028
  }
7097
7029
  }
7098
-
7099
- //#endregion
7100
- //#region packages/runtime-core/src/compat/props.ts
7030
+ //#endregion
7031
+ //#region packages/runtime-core/src/compat/props.ts
7101
7032
  function createPropsDefaultThis(instance, rawProps, propKey) {
7102
7033
  return new Proxy({}, { get(_, key) {
7103
7034
  warnDeprecation$1("PROPS_DEFAULT_THIS", null, propKey);
@@ -7111,9 +7042,8 @@ var Vue = (function() {
7111
7042
  }
7112
7043
  } });
7113
7044
  }
7114
-
7115
- //#endregion
7116
- //#region packages/runtime-core/src/compat/attrsFallthrough.ts
7045
+ //#endregion
7046
+ //#region packages/runtime-core/src/compat/attrsFallthrough.ts
7117
7047
  function shouldSkipAttr(key, instance) {
7118
7048
  if (key === "is") return true;
7119
7049
  if ((key === "class" || key === "style") && isCompatEnabled$1("INSTANCE_ATTRS_CLASS_STYLE", instance)) return true;
@@ -7121,10 +7051,9 @@ var Vue = (function() {
7121
7051
  if (key.startsWith("routerView") || key === "registerRouteInstance") return true;
7122
7052
  return false;
7123
7053
  }
7124
-
7125
- //#endregion
7126
- //#region packages/runtime-core/src/internalObject.ts
7127
- /**
7054
+ //#endregion
7055
+ //#region packages/runtime-core/src/internalObject.ts
7056
+ /**
7128
7057
  * Used during vnode props/slots normalization to check if the vnode props/slots
7129
7058
  * are the internal attrs / slots object of a component via
7130
7059
  * `Object.getPrototypeOf`. This is more performant than defining a
@@ -7133,9 +7062,8 @@ var Vue = (function() {
7133
7062
  const internalObjectProto = {};
7134
7063
  const createInternalObject = () => Object.create(internalObjectProto);
7135
7064
  const isInternalObject = (obj) => Object.getPrototypeOf(obj) === internalObjectProto;
7136
-
7137
- //#endregion
7138
- //#region packages/runtime-core/src/componentProps.ts
7065
+ //#endregion
7066
+ //#region packages/runtime-core/src/componentProps.ts
7139
7067
  function initProps(instance, rawProps, isStateful, isSSR = false) {
7140
7068
  const props = instance.props = {};
7141
7069
  const attrs = createInternalObject();
@@ -7438,9 +7366,8 @@ var Vue = (function() {
7438
7366
  function isBoolean(...args) {
7439
7367
  return args.some((elem) => elem.toLowerCase() === "boolean");
7440
7368
  }
7441
-
7442
- //#endregion
7443
- //#region packages/runtime-core/src/componentSlots.ts
7369
+ //#endregion
7370
+ //#region packages/runtime-core/src/componentSlots.ts
7444
7371
  const isInternalKey = (key) => key === "_" || key === "_ctx" || key === "$stable";
7445
7372
  const normalizeSlotValue = (value) => isArray(value) ? value.map(normalizeVNode) : [normalizeVNode(value)];
7446
7373
  const normalizeSlot = (key, rawSlot, ctx) => {
@@ -7507,9 +7434,8 @@ var Vue = (function() {
7507
7434
  for (const key in slots) if (!isInternalKey(key) && deletionComparisonTarget[key] == null) delete slots[key];
7508
7435
  }
7509
7436
  };
7510
-
7511
- //#endregion
7512
- //#region packages/runtime-core/src/profiling.ts
7437
+ //#endregion
7438
+ //#region packages/runtime-core/src/profiling.ts
7513
7439
  let supported;
7514
7440
  let perf;
7515
7441
  let cachedNow$1 = 0;
@@ -7546,9 +7472,8 @@ var Vue = (function() {
7546
7472
  } else supported = false;
7547
7473
  return supported;
7548
7474
  }
7549
-
7550
- //#endregion
7551
- //#region packages/runtime-core/src/renderer.ts
7475
+ //#endregion
7476
+ //#region packages/runtime-core/src/renderer.ts
7552
7477
  const MoveType = {
7553
7478
  "ENTER": 0,
7554
7479
  "0": "ENTER",
@@ -7611,7 +7536,7 @@ var Vue = (function() {
7611
7536
  processFragment(n1, n2, container, anchor, parentComponent, parentSuspense, namespace, slotScopeIds, optimized);
7612
7537
  break;
7613
7538
  case VaporSlot:
7614
- getVaporInterface(parentComponent, n2).slot(n1, n2, container, anchor, parentComponent);
7539
+ getVaporInterface(parentComponent, n2).slot(n1, n2, container, anchor, parentComponent, parentSuspense);
7615
7540
  break;
7616
7541
  default: if (shapeFlag & 1) processElement(n1, n2, container, anchor, parentComponent, parentSuspense, namespace, slotScopeIds, optimized);
7617
7542
  else if (shapeFlag & 6) processComponent(n1, n2, container, anchor, parentComponent, parentSuspense, namespace, slotScopeIds, optimized);
@@ -7938,7 +7863,7 @@ var Vue = (function() {
7938
7863
  if (isAsyncWrapperVNode && type.__asyncHydrate) type.__asyncHydrate(el, instance, hydrateSubTree);
7939
7864
  else hydrateSubTree();
7940
7865
  } else {
7941
- if (root.ce && root.ce._hasShadowRoot()) root.ce._injectChildStyle(type);
7866
+ if (root.ce && root.ce._hasShadowRoot()) root.ce._injectChildStyle(type, instance.parent ? instance.parent.type : void 0);
7942
7867
  startMeasure(instance, `render`);
7943
7868
  const subTree = instance.subTree = renderComponentRoot(instance);
7944
7869
  endMeasure(instance, `render`);
@@ -8460,12 +8385,11 @@ var Vue = (function() {
8460
8385
  if (instance) return resolveAsyncComponentPlaceholder(instance.subTree);
8461
8386
  return null;
8462
8387
  }
8463
-
8464
- //#endregion
8465
- //#region packages/runtime-core/src/components/Suspense.ts
8388
+ //#endregion
8389
+ //#region packages/runtime-core/src/components/Suspense.ts
8466
8390
  const isSuspense = (type) => type.__isSuspense;
8467
8391
  let suspenseId = 0;
8468
- const SuspenseImpl = {
8392
+ const Suspense = {
8469
8393
  name: "Suspense",
8470
8394
  __isSuspense: true,
8471
8395
  process(n1, n2, container, anchor, parentComponent, parentSuspense, namespace, slotScopeIds, optimized, rendererInternals) {
@@ -8483,7 +8407,6 @@ var Vue = (function() {
8483
8407
  hydrate: hydrateSuspense,
8484
8408
  normalize: normalizeSuspenseChildren
8485
8409
  };
8486
- const Suspense = SuspenseImpl;
8487
8410
  function triggerEvent(vnode, name) {
8488
8411
  const eventListener = vnode.props && vnode.props[name];
8489
8412
  if (isFunction(eventListener)) eventListener();
@@ -8744,9 +8667,8 @@ var Vue = (function() {
8744
8667
  const suspensible = vnode.props && vnode.props.suspensible;
8745
8668
  return suspensible != null && suspensible !== false;
8746
8669
  }
8747
-
8748
- //#endregion
8749
- //#region packages/runtime-core/src/compat/componentAsync.ts
8670
+ //#endregion
8671
+ //#region packages/runtime-core/src/compat/componentAsync.ts
8750
8672
  const normalizedAsyncComponentMap = /* @__PURE__ */ new WeakMap();
8751
8673
  function convertLegacyAsyncComponent(comp) {
8752
8674
  if (normalizedAsyncComponentMap.has(comp)) return normalizedAsyncComponentMap.get(comp);
@@ -8770,9 +8692,8 @@ var Vue = (function() {
8770
8692
  normalizedAsyncComponentMap.set(comp, converted);
8771
8693
  return converted;
8772
8694
  }
8773
-
8774
- //#endregion
8775
- //#region packages/runtime-core/src/compat/component.ts
8695
+ //#endregion
8696
+ //#region packages/runtime-core/src/compat/component.ts
8776
8697
  function convertLegacyComponent(comp, instance) {
8777
8698
  if (comp.__isBuiltIn) return comp;
8778
8699
  if (isFunction(comp) && comp.cid) {
@@ -8786,9 +8707,8 @@ var Vue = (function() {
8786
8707
  if (isObject(comp) && comp.functional && softAssertCompatEnabled("COMPONENT_FUNCTIONAL", instance, comp)) return convertLegacyFunctionalComponent(comp);
8787
8708
  return comp;
8788
8709
  }
8789
-
8790
- //#endregion
8791
- //#region packages/runtime-core/src/vnode.ts
8710
+ //#endregion
8711
+ //#region packages/runtime-core/src/vnode.ts
8792
8712
  const Fragment = Symbol.for("v-fgt");
8793
8713
  const Text = Symbol.for("v-txt");
8794
8714
  const Comment = Symbol.for("v-cmt");
@@ -9108,10 +9028,9 @@ var Vue = (function() {
9108
9028
  function invokeVNodeHook(hook, instance, vnode, prevVNode = null) {
9109
9029
  callWithAsyncErrorHandling(hook, instance, 7, [vnode, prevVNode]);
9110
9030
  }
9111
-
9112
- //#endregion
9113
- //#region packages/runtime-core/src/componentCurrentInstance.ts
9114
- /**
9031
+ //#endregion
9032
+ //#region packages/runtime-core/src/componentCurrentInstance.ts
9033
+ /**
9115
9034
  * @internal
9116
9035
  */
9117
9036
  let currentInstance = null;
@@ -9125,8 +9044,7 @@ var Vue = (function() {
9125
9044
  /**
9126
9045
  * @internal
9127
9046
  */
9128
- let simpleSetCurrentInstance;
9129
- simpleSetCurrentInstance = (i) => {
9047
+ let simpleSetCurrentInstance = (i) => {
9130
9048
  currentInstance = i;
9131
9049
  };
9132
9050
  setInSSRSetupState = (v) => {
@@ -9168,9 +9086,8 @@ var Vue = (function() {
9168
9086
  value: instance[key]
9169
9087
  };
9170
9088
  };
9171
-
9172
- //#endregion
9173
- //#region packages/runtime-core/src/component.ts
9089
+ //#endregion
9090
+ //#region packages/runtime-core/src/component.ts
9174
9091
  const emptyAppContext = /* @__PURE__ */ createAppContext();
9175
9092
  let uid = 0;
9176
9093
  function createComponentInstance(vnode, parent, suspense) {
@@ -9467,15 +9384,13 @@ var Vue = (function() {
9467
9384
  function isClassComponent(value) {
9468
9385
  return isFunction(value) && "__vccOpts" in value;
9469
9386
  }
9470
-
9471
- //#endregion
9472
- //#region packages/runtime-core/src/apiComputed.ts
9387
+ //#endregion
9388
+ //#region packages/runtime-core/src/apiComputed.ts
9473
9389
  const computed = (getterOrOptions, debugOptions) => {
9474
9390
  return /* @__PURE__ */ computed$1(getterOrOptions, debugOptions, isInSSRComponentSetup);
9475
9391
  };
9476
-
9477
- //#endregion
9478
- //#region packages/runtime-core/src/h.ts
9392
+ //#endregion
9393
+ //#region packages/runtime-core/src/h.ts
9479
9394
  function h(type, propsOrChildren, children) {
9480
9395
  try {
9481
9396
  setBlockTracking(-1);
@@ -9493,9 +9408,8 @@ var Vue = (function() {
9493
9408
  setBlockTracking(1);
9494
9409
  }
9495
9410
  }
9496
-
9497
- //#endregion
9498
- //#region packages/runtime-core/src/customFormatter.ts
9411
+ //#endregion
9412
+ //#region packages/runtime-core/src/customFormatter.ts
9499
9413
  function initCustomFormatter() {
9500
9414
  if (typeof window === "undefined") return;
9501
9415
  const vueStyle = { style: "color:#3ba776" };
@@ -9658,9 +9572,8 @@ var Vue = (function() {
9658
9572
  if (window.devtoolsFormatters) window.devtoolsFormatters.push(formatter);
9659
9573
  else window.devtoolsFormatters = [formatter];
9660
9574
  }
9661
-
9662
- //#endregion
9663
- //#region packages/runtime-core/src/helpers/withMemo.ts
9575
+ //#endregion
9576
+ //#region packages/runtime-core/src/helpers/withMemo.ts
9664
9577
  function withMemo(memo, render, cache, index) {
9665
9578
  const cached = cache[index];
9666
9579
  if (cached && isMemoSame(cached, memo)) return cached;
@@ -9676,10 +9589,9 @@ var Vue = (function() {
9676
9589
  if (isBlockTreeEnabled > 0 && currentBlock) currentBlock.push(cached);
9677
9590
  return true;
9678
9591
  }
9679
-
9680
- //#endregion
9681
- //#region packages/runtime-core/src/index.ts
9682
- const version = "3.6.0-beta.6";
9592
+ //#endregion
9593
+ //#region packages/runtime-core/src/index.ts
9594
+ const version = "3.6.0-beta.8";
9683
9595
  const warn = warn$1;
9684
9596
  /**
9685
9597
  * Runtime error messages. Only exposed in dev or esm builds.
@@ -9689,29 +9601,22 @@ var Vue = (function() {
9689
9601
  const devtools = devtools$1;
9690
9602
  const setDevtoolsHook = setDevtoolsHook$1;
9691
9603
  /**
9692
- * SSR utils for \@vue/server-renderer. Only exposed in ssr-possible builds.
9693
- * @internal
9694
- */
9695
- const ssrUtils = null;
9696
- /**
9697
9604
  * @internal only exposed in compat builds
9698
9605
  */
9699
9606
  const resolveFilter = resolveFilter$1;
9700
- const _compatUtils = {
9607
+ /**
9608
+ * @internal only exposed in compat builds.
9609
+ */
9610
+ const compatUtils = {
9701
9611
  warnDeprecation: warnDeprecation$1,
9702
9612
  createCompatVue: createCompatVue$1,
9703
9613
  isCompatEnabled: isCompatEnabled$1,
9704
9614
  checkCompatEnabled: checkCompatEnabled$1,
9705
9615
  softAssertCompatEnabled
9706
9616
  };
9707
- /**
9708
- * @internal only exposed in compat builds.
9709
- */
9710
- const compatUtils = _compatUtils;
9711
9617
  const DeprecationTypes = DeprecationTypes$1;
9712
-
9713
- //#endregion
9714
- //#region packages/runtime-dom/src/nodeOps.ts
9618
+ //#endregion
9619
+ //#region packages/runtime-dom/src/nodeOps.ts
9715
9620
  let policy = void 0;
9716
9621
  const tt = typeof window !== "undefined" && window.trustedTypes;
9717
9622
  if (tt) try {
@@ -9770,9 +9675,8 @@ var Vue = (function() {
9770
9675
  return [before ? before.nextSibling : parent.firstChild, anchor ? anchor.previousSibling : parent.lastChild];
9771
9676
  }
9772
9677
  };
9773
-
9774
- //#endregion
9775
- //#region packages/runtime-dom/src/components/Transition.ts
9678
+ //#endregion
9679
+ //#region packages/runtime-dom/src/components/Transition.ts
9776
9680
  const TRANSITION$1 = "transition";
9777
9681
  const ANIMATION = "animation";
9778
9682
  const vtcKey = Symbol("_vtc");
@@ -10028,9 +9932,8 @@ var Vue = (function() {
10028
9932
  function forceReflow(el) {
10029
9933
  return (el ? el.ownerDocument : document).body.offsetHeight;
10030
9934
  }
10031
-
10032
- //#endregion
10033
- //#region packages/runtime-dom/src/modules/class.ts
9935
+ //#endregion
9936
+ //#region packages/runtime-dom/src/modules/class.ts
10034
9937
  function patchClass(el, value, isSVG) {
10035
9938
  const transitionClasses = el[vtcKey];
10036
9939
  if (transitionClasses) value = (value ? [value, ...transitionClasses] : [...transitionClasses]).join(" ");
@@ -10038,9 +9941,8 @@ var Vue = (function() {
10038
9941
  else if (isSVG) el.setAttribute("class", value);
10039
9942
  else el.className = value;
10040
9943
  }
10041
-
10042
- //#endregion
10043
- //#region packages/runtime-dom/src/directives/vShow.ts
9944
+ //#endregion
9945
+ //#region packages/runtime-dom/src/directives/vShow.ts
10044
9946
  const vShowOriginalDisplay = Symbol("_vod");
10045
9947
  const vShowHidden = Symbol("_vsh");
10046
9948
  const vShow = {
@@ -10072,9 +9974,8 @@ var Vue = (function() {
10072
9974
  el.style.display = value ? el[vShowOriginalDisplay] : "none";
10073
9975
  el[vShowHidden] = !value;
10074
9976
  }
10075
-
10076
- //#endregion
10077
- //#region packages/runtime-dom/src/helpers/useCssVars.ts
9977
+ //#endregion
9978
+ //#region packages/runtime-dom/src/helpers/useCssVars.ts
10078
9979
  const CSS_VAR_TEXT = Symbol("CSS_VAR_TEXT");
10079
9980
  /**
10080
9981
  * Runtime helper for SFC's CSS variable injection feature.
@@ -10157,9 +10058,8 @@ var Vue = (function() {
10157
10058
  style[CSS_VAR_TEXT] = cssText;
10158
10059
  }
10159
10060
  }
10160
-
10161
- //#endregion
10162
- //#region packages/runtime-dom/src/modules/style.ts
10061
+ //#endregion
10062
+ //#region packages/runtime-dom/src/modules/style.ts
10163
10063
  const displayRE = /(?:^|;)\s*display\s*:/;
10164
10064
  function patchStyle(el, prev, next) {
10165
10065
  const style = el.style;
@@ -10222,9 +10122,8 @@ var Vue = (function() {
10222
10122
  }
10223
10123
  return rawName;
10224
10124
  }
10225
-
10226
- //#endregion
10227
- //#region packages/runtime-dom/src/modules/attrs.ts
10125
+ //#endregion
10126
+ //#region packages/runtime-dom/src/modules/attrs.ts
10228
10127
  const xlinkNS = "http://www.w3.org/1999/xlink";
10229
10128
  function patchAttr(el, key, value, isSVG, instance, isBoolean = isSpecialBooleanAttr(key)) {
10230
10129
  if (isSVG && key.startsWith("xlink:")) if (value == null) el.removeAttributeNS(xlinkNS, key.slice(6, key.length));
@@ -10250,9 +10149,8 @@ var Vue = (function() {
10250
10149
  }
10251
10150
  return false;
10252
10151
  }
10253
-
10254
- //#endregion
10255
- //#region packages/runtime-dom/src/modules/props.ts
10152
+ //#endregion
10153
+ //#region packages/runtime-dom/src/modules/props.ts
10256
10154
  function patchDOMProp(el, key, value, parentComponent, attrName) {
10257
10155
  if (key === "innerHTML" || key === "textContent") {
10258
10156
  if (value != null) el[key] = key === "innerHTML" ? unsafeToTrustedHTML(value) : value;
@@ -10293,9 +10191,8 @@ var Vue = (function() {
10293
10191
  }
10294
10192
  needRemove && el.removeAttribute(attrName || key);
10295
10193
  }
10296
-
10297
- //#endregion
10298
- //#region packages/runtime-dom/src/modules/events.ts
10194
+ //#endregion
10195
+ //#region packages/runtime-dom/src/modules/events.ts
10299
10196
  function addEventListener(el, event, handler, options) {
10300
10197
  el.addEventListener(event, handler, options);
10301
10198
  }
@@ -10357,9 +10254,8 @@ var Vue = (function() {
10357
10254
  return value.map((fn) => (e) => !e._stopped && fn && fn(e));
10358
10255
  } else return value;
10359
10256
  }
10360
-
10361
- //#endregion
10362
- //#region packages/runtime-dom/src/patchProp.ts
10257
+ //#endregion
10258
+ //#region packages/runtime-dom/src/patchProp.ts
10363
10259
  const patchProp = (el, key, prevValue, nextValue, namespace, parentComponent) => {
10364
10260
  const isSVG = namespace === "svg";
10365
10261
  if (key === "class") patchClass(el, nextValue, isSVG);
@@ -10369,7 +10265,7 @@ var Vue = (function() {
10369
10265
  } else if (key[0] === "." ? (key = key.slice(1), true) : key[0] === "^" ? (key = key.slice(1), false) : shouldSetAsProp(el, key, nextValue, isSVG)) {
10370
10266
  patchDOMProp(el, key, nextValue, parentComponent);
10371
10267
  if (!el.tagName.includes("-") && (key === "value" || key === "checked" || key === "selected")) patchAttr(el, key, nextValue, isSVG, parentComponent, key !== "value");
10372
- } else if (el._isVueCE && (/[A-Z]/.test(key) || !isString(nextValue))) patchDOMProp(el, camelize(key), nextValue, parentComponent, key);
10268
+ } else if (el._isVueCE && (shouldSetAsPropForVueCE(el, key) || el._def.__asyncLoader && (/[A-Z]/.test(key) || !isString(nextValue)))) patchDOMProp(el, camelize(key), nextValue, parentComponent, key);
10373
10269
  else {
10374
10270
  if (key === "true-value") el._trueValue = nextValue;
10375
10271
  else if (key === "false-value") el._falseValue = nextValue;
@@ -10386,9 +10282,14 @@ var Vue = (function() {
10386
10282
  if (isNativeOn(key) && isString(value)) return false;
10387
10283
  return key in el;
10388
10284
  }
10389
-
10390
- //#endregion
10391
- //#region packages/runtime-dom/src/apiCustomElement.ts
10285
+ function shouldSetAsPropForVueCE(el, key) {
10286
+ const props = el._def.props;
10287
+ if (!props) return false;
10288
+ const camelKey = camelize(key);
10289
+ return Array.isArray(props) ? props.some((prop) => camelize(prop) === camelKey) : Object.keys(props).some((prop) => camelize(prop) === camelKey);
10290
+ }
10291
+ //#endregion
10292
+ //#region packages/runtime-dom/src/apiCustomElement.ts
10392
10293
  const REMOVAL = {};
10393
10294
  /* @__NO_SIDE_EFFECTS__ */
10394
10295
  function defineCustomElement(options, extraOptions, _createApp) {
@@ -10416,6 +10317,7 @@ var Vue = (function() {
10416
10317
  this._resolved = false;
10417
10318
  this._numberProps = null;
10418
10319
  this._styleChildren = /* @__PURE__ */ new WeakSet();
10320
+ this._styleAnchors = /* @__PURE__ */ new WeakMap();
10419
10321
  this._patching = false;
10420
10322
  this._dirty = false;
10421
10323
  this._ob = null;
@@ -10434,7 +10336,7 @@ var Vue = (function() {
10434
10336
  if (!this.shadowRoot && !this._resolved) this._parseSlots();
10435
10337
  this._connected = true;
10436
10338
  let parent = this;
10437
- while (parent = parent && (parent.parentNode || parent.host)) if (parent instanceof VueElementBase) {
10339
+ while (parent = parent && (parent.assignedSlot || parent.parentNode || parent.host)) if (parent instanceof VueElementBase) {
10438
10340
  this._parent = parent;
10439
10341
  break;
10440
10342
  }
@@ -10527,6 +10429,7 @@ var Vue = (function() {
10527
10429
  this._styles.forEach((s) => this._root.removeChild(s));
10528
10430
  this._styles.length = 0;
10529
10431
  }
10432
+ this._styleAnchors.delete(this._def);
10530
10433
  this._applyStyles(newStyles);
10531
10434
  if (!this._instance.vapor) this._instance = null;
10532
10435
  this._update();
@@ -10592,18 +10495,26 @@ var Vue = (function() {
10592
10495
  }
10593
10496
  }
10594
10497
  }
10595
- _applyStyles(styles, owner) {
10498
+ _applyStyles(styles, owner, parentComp) {
10596
10499
  if (!styles) return;
10597
10500
  if (owner) {
10598
10501
  if (owner === this._def || this._styleChildren.has(owner)) return;
10599
10502
  this._styleChildren.add(owner);
10600
10503
  }
10601
10504
  const nonce = this._nonce;
10505
+ const root = this.shadowRoot;
10506
+ const insertionAnchor = parentComp ? this._getStyleAnchor(parentComp) || this._getStyleAnchor(this._def) : this._getRootStyleInsertionAnchor(root);
10507
+ let last = null;
10602
10508
  for (let i = styles.length - 1; i >= 0; i--) {
10603
10509
  const s = document.createElement("style");
10604
10510
  if (nonce) s.setAttribute("nonce", nonce);
10605
10511
  s.textContent = styles[i];
10606
- this.shadowRoot.prepend(s);
10512
+ root.insertBefore(s, last || insertionAnchor);
10513
+ last = s;
10514
+ if (i === 0) {
10515
+ if (!parentComp) this._styleAnchors.set(this._def, s);
10516
+ if (owner) this._styleAnchors.set(owner, s);
10517
+ }
10607
10518
  if (owner) {
10608
10519
  if (owner.__hmrId) {
10609
10520
  if (!this._childStyles) this._childStyles = /* @__PURE__ */ new Map();
@@ -10614,6 +10525,20 @@ var Vue = (function() {
10614
10525
  } else (this._styles || (this._styles = [])).push(s);
10615
10526
  }
10616
10527
  }
10528
+ _getStyleAnchor(comp) {
10529
+ if (!comp) return null;
10530
+ const anchor = this._styleAnchors.get(comp);
10531
+ if (anchor && anchor.parentNode === this.shadowRoot) return anchor;
10532
+ if (anchor) this._styleAnchors.delete(comp);
10533
+ return null;
10534
+ }
10535
+ _getRootStyleInsertionAnchor(root) {
10536
+ for (let i = 0; i < root.childNodes.length; i++) {
10537
+ const node = root.childNodes[i];
10538
+ if (!(node instanceof HTMLStyleElement)) return node;
10539
+ }
10540
+ return null;
10541
+ }
10617
10542
  /**
10618
10543
  * Only called when shadowRoot is false
10619
10544
  */
@@ -10676,8 +10601,8 @@ var Vue = (function() {
10676
10601
  /**
10677
10602
  * @internal
10678
10603
  */
10679
- _injectChildStyle(comp) {
10680
- this._applyStyles(comp.styles, comp);
10604
+ _injectChildStyle(comp, parentComp) {
10605
+ this._applyStyles(comp.styles, comp, parentComp);
10681
10606
  }
10682
10607
  /**
10683
10608
  * @internal
@@ -10704,6 +10629,7 @@ var Vue = (function() {
10704
10629
  */
10705
10630
  _removeChildStyle(comp) {
10706
10631
  this._styleChildren.delete(comp);
10632
+ this._styleAnchors.delete(comp);
10707
10633
  if (this._childStyles && comp.__hmrId) {
10708
10634
  const oldStyles = this._childStyles.get(comp.__hmrId);
10709
10635
  if (oldStyles) {
@@ -10772,16 +10698,14 @@ var Vue = (function() {
10772
10698
  const el = useHost("useShadowRoot");
10773
10699
  return el && el.shadowRoot;
10774
10700
  }
10775
-
10776
- //#endregion
10777
- //#region packages/runtime-dom/src/helpers/useCssModule.ts
10701
+ //#endregion
10702
+ //#region packages/runtime-dom/src/helpers/useCssModule.ts
10778
10703
  function useCssModule(name = "$style") {
10779
10704
  warn(`useCssModule() is not supported in the global build.`);
10780
10705
  return EMPTY_OBJ;
10781
10706
  }
10782
-
10783
- //#endregion
10784
- //#region packages/runtime-dom/src/components/TransitionGroup.ts
10707
+ //#endregion
10708
+ //#region packages/runtime-dom/src/components/TransitionGroup.ts
10785
10709
  const positionMap = /* @__PURE__ */ new WeakMap();
10786
10710
  const newPositionMap = /* @__PURE__ */ new WeakMap();
10787
10711
  const moveCbKey = Symbol("_moveCb");
@@ -10795,7 +10719,7 @@ var Vue = (function() {
10795
10719
  t.__isBuiltIn = true;
10796
10720
  return t;
10797
10721
  };
10798
- const TransitionGroupImpl = /* @__PURE__ */ decorate({
10722
+ const TransitionGroup = /* @__PURE__ */ decorate({
10799
10723
  name: "TransitionGroup",
10800
10724
  props: /* @__PURE__ */ extend({}, TransitionPropsValidators, {
10801
10725
  tag: String,
@@ -10847,7 +10771,6 @@ var Vue = (function() {
10847
10771
  };
10848
10772
  }
10849
10773
  });
10850
- const TransitionGroup = TransitionGroupImpl;
10851
10774
  function callPendingCbs(el) {
10852
10775
  if (el[moveCbKey]) el[moveCbKey]();
10853
10776
  if (el[enterCbKey]) el[enterCbKey]();
@@ -10913,9 +10836,8 @@ var Vue = (function() {
10913
10836
  };
10914
10837
  el.addEventListener("transitionend", cb);
10915
10838
  };
10916
-
10917
- //#endregion
10918
- //#region packages/runtime-dom/src/directives/vModel.ts
10839
+ //#endregion
10840
+ //#region packages/runtime-dom/src/directives/vModel.ts
10919
10841
  const getModelAssigner = (vnode) => {
10920
10842
  const fn = vnode.props["onUpdate:modelValue"] || vnode.props["onModelCompat:input"];
10921
10843
  return isArray(fn) ? (value) => invokeArrayFns(fn, value) : fn;
@@ -11145,9 +11067,8 @@ var Vue = (function() {
11145
11067
  const fn = resolveDynamicModel(el.tagName, vnode.props && vnode.props.type)[hook];
11146
11068
  fn && fn(el, binding, vnode, prevVNode);
11147
11069
  }
11148
-
11149
- //#endregion
11150
- //#region packages/runtime-dom/src/directives/vOn.ts
11070
+ //#endregion
11071
+ //#region packages/runtime-dom/src/directives/vOn.ts
11151
11072
  const systemModifiers = [
11152
11073
  "ctrl",
11153
11074
  "shift",
@@ -11220,9 +11141,8 @@ var Vue = (function() {
11220
11141
  }
11221
11142
  }));
11222
11143
  };
11223
-
11224
- //#endregion
11225
- //#region packages/runtime-dom/src/index.ts
11144
+ //#endregion
11145
+ //#region packages/runtime-dom/src/index.ts
11226
11146
  var src_exports = /* @__PURE__ */ __exportAll({
11227
11147
  BaseTransition: () => BaseTransition,
11228
11148
  BaseTransitionPropsValidators: () => BaseTransitionPropsValidators,
@@ -11355,7 +11275,7 @@ var Vue = (function() {
11355
11275
  shallowReadonly: () => shallowReadonly,
11356
11276
  shallowRef: () => shallowRef,
11357
11277
  ssrContextKey: () => ssrContextKey,
11358
- ssrUtils: () => ssrUtils,
11278
+ ssrUtils: () => null,
11359
11279
  stop: () => stop,
11360
11280
  toDisplayString: () => toDisplayString,
11361
11281
  toHandlerKey: () => toHandlerKey,
@@ -11508,16 +11428,14 @@ var Vue = (function() {
11508
11428
  * @internal
11509
11429
  */
11510
11430
  const initDirectivesForSSR = NOOP;
11511
-
11512
- //#endregion
11513
- //#region packages/vue-compat/src/dev.ts
11431
+ //#endregion
11432
+ //#region packages/vue-compat/src/dev.ts
11514
11433
  function initDev() {
11515
11434
  console.info("You are running a development build of Vue.\nMake sure to use the production build (*.prod.js) when deploying for production.");
11516
11435
  initCustomFormatter();
11517
11436
  }
11518
-
11519
- //#endregion
11520
- //#region packages/vue-compat/src/createCompatVue.ts
11437
+ //#endregion
11438
+ //#region packages/vue-compat/src/createCompatVue.ts
11521
11439
  initDev();
11522
11440
  function wrappedCreateApp(...args) {
11523
11441
  const app = createApp(...args);
@@ -11535,9 +11453,8 @@ var Vue = (function() {
11535
11453
  extend(Vue, src_exports);
11536
11454
  return Vue;
11537
11455
  }
11538
-
11539
- //#endregion
11540
- //#region packages/compiler-core/src/runtimeHelpers.ts
11456
+ //#endregion
11457
+ //#region packages/compiler-core/src/runtimeHelpers.ts
11541
11458
  const FRAGMENT = Symbol(`Fragment`);
11542
11459
  const TELEPORT = Symbol(`Teleport`);
11543
11460
  const SUSPENSE = Symbol(`Suspense`);
@@ -11630,9 +11547,8 @@ var Vue = (function() {
11630
11547
  helperNameMap[s] = helpers[s];
11631
11548
  });
11632
11549
  }
11633
-
11634
- //#endregion
11635
- //#region packages/compiler-core/src/ast.ts
11550
+ //#endregion
11551
+ //#region packages/compiler-core/src/ast.ts
11636
11552
  const locStub = {
11637
11553
  start: {
11638
11554
  line: 1,
@@ -11782,9 +11698,8 @@ var Vue = (function() {
11782
11698
  helper(getVNodeBlockHelper(inSSR, node.isComponent));
11783
11699
  }
11784
11700
  }
11785
-
11786
- //#endregion
11787
- //#region packages/compiler-core/src/tokenizer.ts
11701
+ //#endregion
11702
+ //#region packages/compiler-core/src/tokenizer.ts
11788
11703
  const defaultDelimitersOpen = new Uint8Array([123, 123]);
11789
11704
  const defaultDelimitersClose = new Uint8Array([125, 125]);
11790
11705
  /**
@@ -12491,9 +12406,8 @@ var Vue = (function() {
12491
12406
  }
12492
12407
  emitCodePoint(cp, consumed) {}
12493
12408
  };
12494
-
12495
- //#endregion
12496
- //#region packages/compiler-core/src/compat/compatConfig.ts
12409
+ //#endregion
12410
+ //#region packages/compiler-core/src/compat/compatConfig.ts
12497
12411
  const deprecationData = {
12498
12412
  ["COMPILER_IS_ON_ELEMENT"]: {
12499
12413
  message: "Platform-native elements with \"is\" prop will no longer be treated as components in Vue 3 unless the \"is\" value is explicitly prefixed with \"vue:\".",
@@ -12549,9 +12463,8 @@ var Vue = (function() {
12549
12463
  if (loc) err.loc = loc;
12550
12464
  context.onWarn(err);
12551
12465
  }
12552
-
12553
- //#endregion
12554
- //#region packages/compiler-core/src/errors.ts
12466
+ //#endregion
12467
+ //#region packages/compiler-core/src/errors.ts
12555
12468
  function defaultOnError(error) {
12556
12469
  throw error;
12557
12470
  }
@@ -12622,9 +12535,8 @@ var Vue = (function() {
12622
12535
  [51]: `"scopeId" option is only supported in module mode.`,
12623
12536
  [54]: ``
12624
12537
  };
12625
-
12626
- //#endregion
12627
- //#region packages/compiler-core/src/utils.ts
12538
+ //#endregion
12539
+ //#region packages/compiler-core/src/utils.ts
12628
12540
  const isStaticExp = (p) => p.type === 4 && p.isStatic;
12629
12541
  function isCoreComponent(tag) {
12630
12542
  switch (tag) {
@@ -12822,9 +12734,8 @@ var Vue = (function() {
12822
12734
  function isCommentOrWhitespace(node) {
12823
12735
  return node.type === 3 || isWhitespaceText(node);
12824
12736
  }
12825
-
12826
- //#endregion
12827
- //#region packages/compiler-core/src/parser.ts
12737
+ //#endregion
12738
+ //#region packages/compiler-core/src/parser.ts
12828
12739
  const defaultParserOptions = {
12829
12740
  parseMode: "base",
12830
12741
  ns: 0,
@@ -13355,9 +13266,8 @@ var Vue = (function() {
13355
13266
  currentRoot = null;
13356
13267
  return root;
13357
13268
  }
13358
-
13359
- //#endregion
13360
- //#region packages/compiler-core/src/transforms/cacheStatic.ts
13269
+ //#endregion
13270
+ //#region packages/compiler-core/src/transforms/cacheStatic.ts
13361
13271
  function cacheStatic(root, context) {
13362
13272
  walk(root, void 0, context, !!getSingleElementRoot(root));
13363
13273
  }
@@ -13551,9 +13461,8 @@ var Vue = (function() {
13551
13461
  const codegenNode = node.codegenNode;
13552
13462
  if (codegenNode.type === 13) return codegenNode.props;
13553
13463
  }
13554
-
13555
- //#endregion
13556
- //#region packages/compiler-core/src/transform.ts
13464
+ //#endregion
13465
+ //#region packages/compiler-core/src/transform.ts
13557
13466
  function getSelfName(filename) {
13558
13467
  const nameMatch = filename.replace(/\?.*$/, "").match(/([^/\\]+)\.\w+$/);
13559
13468
  return nameMatch ? capitalize(camelize(nameMatch[1])) : null;
@@ -13759,9 +13668,8 @@ var Vue = (function() {
13759
13668
  }
13760
13669
  };
13761
13670
  }
13762
-
13763
- //#endregion
13764
- //#region packages/compiler-core/src/codegen.ts
13671
+ //#endregion
13672
+ //#region packages/compiler-core/src/codegen.ts
13765
13673
  const PURE_ANNOTATION = `/*@__PURE__*/`;
13766
13674
  const aliasHelper = (s) => `${helperNameMap[s]}: _${helperNameMap[s]}`;
13767
13675
  function createCodegenContext(ast, { mode = "function", prefixIdentifiers = mode === "module", sourceMap = false, filename = `template.vue.html`, scopeId = null, optimizeImports = false, runtimeGlobalName = `Vue`, runtimeModuleName = `vue`, ssrRuntimeModuleName = "vue/server-renderer", ssr = false, isTS = false, inSSR = false }) {
@@ -14184,9 +14092,8 @@ var Vue = (function() {
14184
14092
  push(`)`);
14185
14093
  if (needArraySpread) push(`)]`);
14186
14094
  }
14187
-
14188
- //#endregion
14189
- //#region packages/compiler-core/src/validateExpression.ts
14095
+ //#endregion
14096
+ //#region packages/compiler-core/src/validateExpression.ts
14190
14097
  const prohibitedKeywordRE = new RegExp("\\b" + "arguments,await,break,case,catch,class,const,continue,debugger,default,delete,do,else,export,extends,finally,for,function,if,import,let,new,return,super,switch,throw,try,var,void,while,with,yield".split(",").join("\\b|\\b") + "\\b");
14191
14098
  const stripStringRE = /'(?:[^'\\]|\\.)*'|"(?:[^"\\]|\\.)*"|`(?:[^`\\]|\\.)*\$\{|\}(?:[^`\\]|\\.)*`|`(?:[^`\\]|\\.)*`/g;
14192
14099
  /**
@@ -14206,9 +14113,8 @@ var Vue = (function() {
14206
14113
  context.onError(createCompilerError(46, node.loc, void 0, message));
14207
14114
  }
14208
14115
  }
14209
-
14210
- //#endregion
14211
- //#region packages/compiler-core/src/transforms/transformExpression.ts
14116
+ //#endregion
14117
+ //#region packages/compiler-core/src/transforms/transformExpression.ts
14212
14118
  const transformExpression = (node, context) => {
14213
14119
  if (node.type === 5) node.content = processExpression(node.content, context);
14214
14120
  else if (node.type === 1) {
@@ -14228,9 +14134,8 @@ var Vue = (function() {
14228
14134
  validateBrowserExpression(node, context, asParams, asRawStatements);
14229
14135
  return node;
14230
14136
  }
14231
-
14232
- //#endregion
14233
- //#region packages/compiler-core/src/transforms/vIf.ts
14137
+ //#endregion
14138
+ //#region packages/compiler-core/src/transforms/vIf.ts
14234
14139
  const transformIf = createStructuralDirectiveTransform(/^(?:if|else|else-if)$/, (node, dir, context) => {
14235
14140
  return processIf(node, dir, context, (ifNode, branch, isRoot) => {
14236
14141
  const siblings = context.parent.children;
@@ -14351,9 +14256,8 @@ var Vue = (function() {
14351
14256
  else return node;
14352
14257
  else if (node.type === 20) node = node.value;
14353
14258
  }
14354
-
14355
- //#endregion
14356
- //#region packages/compiler-core/src/transforms/vFor.ts
14259
+ //#endregion
14260
+ //#region packages/compiler-core/src/transforms/vFor.ts
14357
14261
  const transformFor = createStructuralDirectiveTransform("for", (node, dir, context) => {
14358
14262
  const { helper, removeHelper } = context;
14359
14263
  return processFor(node, dir, context, (forNode) => {
@@ -14474,9 +14378,8 @@ var Vue = (function() {
14474
14378
  while (i--) if (args[i]) break;
14475
14379
  return args.slice(0, i + 1).map((arg, i) => arg || createSimpleExpression(`_`.repeat(i + 1), false));
14476
14380
  }
14477
-
14478
- //#endregion
14479
- //#region packages/compiler-core/src/transforms/vSlot.ts
14381
+ //#endregion
14382
+ //#region packages/compiler-core/src/transforms/vSlot.ts
14480
14383
  const defaultFallback = createSimpleExpression(`undefined`, false);
14481
14384
  const trackSlotScopes = (node, context) => {
14482
14385
  if (node.type === 1 && (node.tagType === 1 || node.tagType === 3)) {
@@ -14605,9 +14508,8 @@ var Vue = (function() {
14605
14508
  }
14606
14509
  return false;
14607
14510
  }
14608
-
14609
- //#endregion
14610
- //#region packages/compiler-core/src/transforms/transformElement.ts
14511
+ //#endregion
14512
+ //#region packages/compiler-core/src/transforms/transformElement.ts
14611
14513
  const directiveImportMap = /* @__PURE__ */ new WeakMap();
14612
14514
  const transformElement = (node, context) => {
14613
14515
  return function postTransformElement() {
@@ -14898,9 +14800,8 @@ var Vue = (function() {
14898
14800
  function isComponentTag(tag) {
14899
14801
  return tag === "component" || tag === "Component";
14900
14802
  }
14901
-
14902
- //#endregion
14903
- //#region packages/compiler-core/src/transforms/transformSlotOutlet.ts
14803
+ //#endregion
14804
+ //#region packages/compiler-core/src/transforms/transformSlotOutlet.ts
14904
14805
  const transformSlotOutlet = (node, context) => {
14905
14806
  if (isSlotOutlet(node)) {
14906
14807
  const { children, loc } = node;
@@ -14956,9 +14857,8 @@ var Vue = (function() {
14956
14857
  slotProps
14957
14858
  };
14958
14859
  }
14959
-
14960
- //#endregion
14961
- //#region packages/compiler-core/src/transforms/vOn.ts
14860
+ //#endregion
14861
+ //#region packages/compiler-core/src/transforms/vOn.ts
14962
14862
  const transformOn$1 = (dir, node, context, augmentor) => {
14963
14863
  const { loc, modifiers, arg } = dir;
14964
14864
  if (!dir.exp && !modifiers.length) context.onError(createCompilerError(35, loc));
@@ -14998,9 +14898,8 @@ var Vue = (function() {
14998
14898
  ret.props.forEach((p) => p.key.isHandlerKey = true);
14999
14899
  return ret;
15000
14900
  };
15001
-
15002
- //#endregion
15003
- //#region packages/compiler-core/src/transforms/vBind.ts
14901
+ //#endregion
14902
+ //#region packages/compiler-core/src/transforms/vBind.ts
15004
14903
  const transformBind = (dir, _node, context) => {
15005
14904
  const { modifiers, loc } = dir;
15006
14905
  const arg = dir.arg;
@@ -15030,9 +14929,8 @@ var Vue = (function() {
15030
14929
  arg.children.push(`)`);
15031
14930
  }
15032
14931
  };
15033
-
15034
- //#endregion
15035
- //#region packages/compiler-core/src/transforms/transformText.ts
14932
+ //#endregion
14933
+ //#region packages/compiler-core/src/transforms/transformText.ts
15036
14934
  const transformText = (node, context) => {
15037
14935
  if (node.type === 0 || node.type === 1 || node.type === 11 || node.type === 10) return () => {
15038
14936
  const children = node.children;
@@ -15073,9 +14971,8 @@ var Vue = (function() {
15073
14971
  }
15074
14972
  };
15075
14973
  };
15076
-
15077
- //#endregion
15078
- //#region packages/compiler-core/src/transforms/vOnce.ts
14974
+ //#endregion
14975
+ //#region packages/compiler-core/src/transforms/vOnce.ts
15079
14976
  const seen$1 = /* @__PURE__ */ new WeakSet();
15080
14977
  const transformOnce = (node, context) => {
15081
14978
  if (node.type === 1 && findDir(node, "once", true)) {
@@ -15090,9 +14987,8 @@ var Vue = (function() {
15090
14987
  };
15091
14988
  }
15092
14989
  };
15093
-
15094
- //#endregion
15095
- //#region packages/compiler-core/src/transforms/vModel.ts
14990
+ //#endregion
14991
+ //#region packages/compiler-core/src/transforms/vModel.ts
15096
14992
  const transformModel$1 = (dir, node, context) => {
15097
14993
  const { exp, arg } = dir;
15098
14994
  if (!exp) {
@@ -15133,9 +15029,8 @@ var Vue = (function() {
15133
15029
  function createTransformProps(props = []) {
15134
15030
  return { props };
15135
15031
  }
15136
-
15137
- //#endregion
15138
- //#region packages/compiler-core/src/compat/transformFilter.ts
15032
+ //#endregion
15033
+ //#region packages/compiler-core/src/compat/transformFilter.ts
15139
15034
  const validDivisionCharRE = /[\w).+\-_$\]]/;
15140
15035
  const transformFilter = (node, context) => {
15141
15036
  if (!isCompatEnabled("COMPILER_FILTERS", context)) return;
@@ -15247,9 +15142,8 @@ var Vue = (function() {
15247
15142
  return `${toValidAssetId(name, "filter")}(${exp}${args !== ")" ? "," + args : args}`;
15248
15143
  }
15249
15144
  }
15250
-
15251
- //#endregion
15252
- //#region packages/compiler-core/src/transforms/vMemo.ts
15145
+ //#endregion
15146
+ //#region packages/compiler-core/src/transforms/vMemo.ts
15253
15147
  const seen = /* @__PURE__ */ new WeakSet();
15254
15148
  const transformMemo = (node, context) => {
15255
15149
  if (node.type === 1) {
@@ -15271,9 +15165,8 @@ var Vue = (function() {
15271
15165
  };
15272
15166
  }
15273
15167
  };
15274
-
15275
- //#endregion
15276
- //#region packages/compiler-core/src/transforms/transformVBindShorthand.ts
15168
+ //#endregion
15169
+ //#region packages/compiler-core/src/transforms/transformVBindShorthand.ts
15277
15170
  const transformVBindShorthand = (node, context) => {
15278
15171
  if (node.type === 1) {
15279
15172
  for (const prop of node.props) if (prop.type === 7 && prop.name === "bind" && (!prop.exp || prop.exp.type === 4 && !prop.exp.content.trim()) && prop.arg) {
@@ -15288,9 +15181,8 @@ var Vue = (function() {
15288
15181
  }
15289
15182
  }
15290
15183
  };
15291
-
15292
- //#endregion
15293
- //#region packages/compiler-core/src/compile.ts
15184
+ //#endregion
15185
+ //#region packages/compiler-core/src/compile.ts
15294
15186
  function getBaseTransformPreset(prefixIdentifiers) {
15295
15187
  return [[
15296
15188
  transformVBindShorthand,
@@ -15328,13 +15220,11 @@ var Vue = (function() {
15328
15220
  }));
15329
15221
  return generate(ast, resolvedOptions);
15330
15222
  }
15331
-
15332
- //#endregion
15333
- //#region packages/compiler-core/src/transforms/noopDirectiveTransform.ts
15223
+ //#endregion
15224
+ //#region packages/compiler-core/src/transforms/noopDirectiveTransform.ts
15334
15225
  const noopDirectiveTransform = () => ({ props: [] });
15335
-
15336
- //#endregion
15337
- //#region packages/compiler-dom/src/runtimeHelpers.ts
15226
+ //#endregion
15227
+ //#region packages/compiler-dom/src/runtimeHelpers.ts
15338
15228
  const V_MODEL_RADIO = Symbol(`vModelRadio`);
15339
15229
  const V_MODEL_CHECKBOX = Symbol(`vModelCheckbox`);
15340
15230
  const V_MODEL_TEXT = Symbol(`vModelText`);
@@ -15357,9 +15247,8 @@ var Vue = (function() {
15357
15247
  [TRANSITION]: `Transition`,
15358
15248
  [TRANSITION_GROUP]: `TransitionGroup`
15359
15249
  });
15360
-
15361
- //#endregion
15362
- //#region packages/compiler-dom/src/decodeHtmlBrowser.ts
15250
+ //#endregion
15251
+ //#region packages/compiler-dom/src/decodeHtmlBrowser.ts
15363
15252
  let decoder;
15364
15253
  function decodeHtmlBrowser(raw, asAttr = false) {
15365
15254
  if (!decoder) decoder = document.createElement("div");
@@ -15371,9 +15260,8 @@ var Vue = (function() {
15371
15260
  return decoder.textContent;
15372
15261
  }
15373
15262
  }
15374
-
15375
- //#endregion
15376
- //#region packages/compiler-dom/src/parserOptions.ts
15263
+ //#endregion
15264
+ //#region packages/compiler-dom/src/parserOptions.ts
15377
15265
  const parserOptions = {
15378
15266
  parseMode: "html",
15379
15267
  isVoidTag,
@@ -15402,9 +15290,8 @@ var Vue = (function() {
15402
15290
  return ns;
15403
15291
  }
15404
15292
  };
15405
-
15406
- //#endregion
15407
- //#region packages/compiler-dom/src/transforms/transformStyle.ts
15293
+ //#endregion
15294
+ //#region packages/compiler-dom/src/transforms/transformStyle.ts
15408
15295
  const transformStyle = (node) => {
15409
15296
  if (node.type === 1) node.props.forEach((p, i) => {
15410
15297
  if (p.type === 6 && p.name === "style" && p.value) node.props[i] = {
@@ -15421,9 +15308,8 @@ var Vue = (function() {
15421
15308
  const normalized = parseStringStyle(cssText);
15422
15309
  return createSimpleExpression(JSON.stringify(normalized), false, loc, 3);
15423
15310
  };
15424
-
15425
- //#endregion
15426
- //#region packages/compiler-dom/src/errors.ts
15311
+ //#endregion
15312
+ //#region packages/compiler-dom/src/errors.ts
15427
15313
  function createDOMCompilerError(code, loc) {
15428
15314
  return createCompilerError(code, loc, DOMErrorMessages);
15429
15315
  }
@@ -15441,9 +15327,8 @@ var Vue = (function() {
15441
15327
  [64]: `Tags with side effect (<script> and <style>) are ignored in client component templates.`,
15442
15328
  [65]: ``
15443
15329
  };
15444
-
15445
- //#endregion
15446
- //#region packages/compiler-dom/src/transforms/vHtml.ts
15330
+ //#endregion
15331
+ //#region packages/compiler-dom/src/transforms/vHtml.ts
15447
15332
  const transformVHtml = (dir, node, context) => {
15448
15333
  const { exp, loc } = dir;
15449
15334
  if (!exp) context.onError(createDOMCompilerError(54, loc));
@@ -15453,9 +15338,8 @@ var Vue = (function() {
15453
15338
  }
15454
15339
  return { props: [createObjectProperty(createSimpleExpression(`innerHTML`, true, loc), exp || createSimpleExpression("", true))] };
15455
15340
  };
15456
-
15457
- //#endregion
15458
- //#region packages/compiler-dom/src/transforms/vText.ts
15341
+ //#endregion
15342
+ //#region packages/compiler-dom/src/transforms/vText.ts
15459
15343
  const transformVText = (dir, node, context) => {
15460
15344
  const { exp, loc } = dir;
15461
15345
  if (!exp) context.onError(createDOMCompilerError(56, loc));
@@ -15465,9 +15349,8 @@ var Vue = (function() {
15465
15349
  }
15466
15350
  return { props: [createObjectProperty(createSimpleExpression(`textContent`, true), exp ? getConstantType(exp, context) > 0 ? exp : createCallExpression(context.helperString(TO_DISPLAY_STRING), [exp], loc) : createSimpleExpression("", true))] };
15467
15351
  };
15468
-
15469
- //#endregion
15470
- //#region packages/compiler-dom/src/transforms/vModel.ts
15352
+ //#endregion
15353
+ //#region packages/compiler-dom/src/transforms/vModel.ts
15471
15354
  const transformModel = (dir, node, context) => {
15472
15355
  const baseResult = transformModel$1(dir, node, context);
15473
15356
  if (!baseResult.props.length || node.tagType === 1) return baseResult;
@@ -15509,9 +15392,8 @@ var Vue = (function() {
15509
15392
  baseResult.props = baseResult.props.filter((p) => !(p.key.type === 4 && p.key.content === "modelValue"));
15510
15393
  return baseResult;
15511
15394
  };
15512
-
15513
- //#endregion
15514
- //#region packages/compiler-dom/src/transforms/vOn.ts
15395
+ //#endregion
15396
+ //#region packages/compiler-dom/src/transforms/vOn.ts
15515
15397
  const isEventOptionModifier = /* @__PURE__ */ makeMap(`passive,once,capture`);
15516
15398
  const isNonKeyModifier = /* @__PURE__ */ makeMap("stop,prevent,self,ctrl,shift,alt,meta,exact,middle");
15517
15399
  const maybeKeyModifier = /* @__PURE__ */ makeMap("left,right");
@@ -15572,9 +15454,8 @@ var Vue = (function() {
15572
15454
  return { props: [createObjectProperty(key, handlerExp)] };
15573
15455
  });
15574
15456
  };
15575
-
15576
- //#endregion
15577
- //#region packages/compiler-dom/src/transforms/vShow.ts
15457
+ //#endregion
15458
+ //#region packages/compiler-dom/src/transforms/vShow.ts
15578
15459
  const transformShow = (dir, node, context) => {
15579
15460
  const { exp, loc } = dir;
15580
15461
  if (!exp) context.onError(createDOMCompilerError(62, loc));
@@ -15583,9 +15464,8 @@ var Vue = (function() {
15583
15464
  needRuntime: context.helper(V_SHOW)
15584
15465
  };
15585
15466
  };
15586
-
15587
- //#endregion
15588
- //#region packages/compiler-dom/src/transforms/Transition.ts
15467
+ //#endregion
15468
+ //#region packages/compiler-dom/src/transforms/Transition.ts
15589
15469
  const transformTransition = (node, context) => {
15590
15470
  if (node.type === 1 && node.tagType === 1) {
15591
15471
  if (context.isBuiltInComponent(node.tag) === TRANSITION) return postTransformTransition(node, context.onError);
@@ -15616,19 +15496,17 @@ var Vue = (function() {
15616
15496
  const child = children[0];
15617
15497
  return children.length !== 1 || child.type === 11 || child.type === 9 && child.branches.some(defaultHasMultipleChildren);
15618
15498
  }
15619
-
15620
- //#endregion
15621
- //#region packages/compiler-dom/src/transforms/ignoreSideEffectTags.ts
15499
+ //#endregion
15500
+ //#region packages/compiler-dom/src/transforms/ignoreSideEffectTags.ts
15622
15501
  const ignoreSideEffectTags = (node, context) => {
15623
15502
  if (node.type === 1 && node.tagType === 0 && (node.tag === "script" || node.tag === "style")) {
15624
15503
  context.onError(createDOMCompilerError(64, node.loc));
15625
15504
  context.removeNode();
15626
15505
  }
15627
15506
  };
15628
-
15629
- //#endregion
15630
- //#region packages/compiler-dom/src/htmlNesting.ts
15631
- /**
15507
+ //#endregion
15508
+ //#region packages/compiler-dom/src/htmlNesting.ts
15509
+ /**
15632
15510
  * Copied from https://github.com/MananTank/validate-html-nesting
15633
15511
  * with ISC license
15634
15512
  *
@@ -15816,9 +15694,8 @@ var Vue = (function() {
15816
15694
  h5: headings,
15817
15695
  h6: headings
15818
15696
  };
15819
-
15820
- //#endregion
15821
- //#region packages/compiler-dom/src/transforms/validateHtmlNesting.ts
15697
+ //#endregion
15698
+ //#region packages/compiler-dom/src/transforms/validateHtmlNesting.ts
15822
15699
  const validateHtmlNesting = (node, context) => {
15823
15700
  if (node.type === 1 && node.tagType === 0 && context.parent && context.parent.type === 1 && context.parent.tagType === 0 && !isValidHTMLNesting(context.parent.tag, node.tag)) {
15824
15701
  const error = /* @__PURE__ */ new SyntaxError(`<${node.tag}> cannot be child of <${context.parent.tag}>, according to HTML specifications. This can cause hydration errors or potentially disrupt future functionality.`);
@@ -15826,9 +15703,8 @@ var Vue = (function() {
15826
15703
  context.onWarn(error);
15827
15704
  }
15828
15705
  };
15829
-
15830
- //#endregion
15831
- //#region packages/compiler-dom/src/index.ts
15706
+ //#endregion
15707
+ //#region packages/compiler-dom/src/index.ts
15832
15708
  const DOMNodeTransforms = [transformStyle, ...[transformTransition, validateHtmlNesting]];
15833
15709
  const DOMDirectiveTransforms = {
15834
15710
  cloak: noopDirectiveTransform,
@@ -15849,9 +15725,8 @@ var Vue = (function() {
15849
15725
  transformHoist: null
15850
15726
  }));
15851
15727
  }
15852
-
15853
- //#endregion
15854
- //#region packages/vue-compat/src/index.ts
15728
+ //#endregion
15729
+ //#region packages/vue-compat/src/index.ts
15855
15730
  const compileCache = Object.create(null);
15856
15731
  function compileToFunction(template, options) {
15857
15732
  if (!isString(template)) if (template.nodeType) template = template.innerHTML;
@@ -15886,7 +15761,6 @@ var Vue = (function() {
15886
15761
  registerRuntimeCompiler(compileToFunction);
15887
15762
  const Vue = createCompatVue();
15888
15763
  Vue.compile = compileToFunction;
15889
-
15890
- //#endregion
15891
- return Vue;
15892
- })();
15764
+ //#endregion
15765
+ return Vue;
15766
+ })();