@vue/compat 3.2.44 → 3.2.46

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.
@@ -99,7 +99,7 @@ var Vue = (function () {
99
99
  // These tag configs are shared between compiler-dom and runtime-dom, so they
100
100
  // https://developer.mozilla.org/en-US/docs/Web/HTML/Element
101
101
  const HTML_TAGS = 'html,body,base,head,link,meta,style,title,address,article,aside,footer,' +
102
- 'header,h1,h2,h3,h4,h5,h6,nav,section,div,dd,dl,dt,figcaption,' +
102
+ 'header,hgroup,h1,h2,h3,h4,h5,h6,nav,section,div,dd,dl,dt,figcaption,' +
103
103
  'figure,picture,hr,img,li,main,ol,p,pre,ul,a,b,abbr,bdi,bdo,br,cite,code,' +
104
104
  'data,dfn,em,i,kbd,mark,q,rp,rt,ruby,s,samp,small,span,strong,sub,sup,' +
105
105
  'time,u,var,wbr,area,audio,map,track,video,embed,object,param,source,' +
@@ -111,7 +111,7 @@ var Vue = (function () {
111
111
  const SVG_TAGS = 'svg,animate,animateMotion,animateTransform,circle,clipPath,color-profile,' +
112
112
  'defs,desc,discard,ellipse,feBlend,feColorMatrix,feComponentTransfer,' +
113
113
  'feComposite,feConvolveMatrix,feDiffuseLighting,feDisplacementMap,' +
114
- 'feDistanceLight,feDropShadow,feFlood,feFuncA,feFuncB,feFuncG,feFuncR,' +
114
+ 'feDistantLight,feDropShadow,feFlood,feFuncA,feFuncB,feFuncG,feFuncR,' +
115
115
  'feGaussianBlur,feImage,feMerge,feMergeNode,feMorphology,feOffset,' +
116
116
  'fePointLight,feSpecularLighting,feSpotLight,feTile,feTurbulence,filter,' +
117
117
  'foreignObject,g,hatch,hatchpath,image,line,linearGradient,marker,mask,' +
@@ -262,12 +262,13 @@ var Vue = (function () {
262
262
  arr.splice(i, 1);
263
263
  }
264
264
  };
265
- const hasOwnProperty = Object.prototype.hasOwnProperty;
266
- const hasOwn = (val, key) => hasOwnProperty.call(val, key);
265
+ const hasOwnProperty$1 = Object.prototype.hasOwnProperty;
266
+ const hasOwn = (val, key) => hasOwnProperty$1.call(val, key);
267
267
  const isArray = Array.isArray;
268
268
  const isMap = (val) => toTypeString(val) === '[object Map]';
269
269
  const isSet = (val) => toTypeString(val) === '[object Set]';
270
270
  const isDate = (val) => toTypeString(val) === '[object Date]';
271
+ const isRegExp = (val) => toTypeString(val) === '[object RegExp]';
271
272
  const isFunction = (val) => typeof val === 'function';
272
273
  const isString = (val) => typeof val === 'string';
273
274
  const isSymbol = (val) => typeof val === 'symbol';
@@ -334,10 +335,22 @@ var Vue = (function () {
334
335
  value
335
336
  });
336
337
  };
337
- const toNumber = (val) => {
338
+ /**
339
+ * "123-foo" will be parsed to 123
340
+ * This is used for the .number modifier in v-model
341
+ */
342
+ const looseToNumber = (val) => {
338
343
  const n = parseFloat(val);
339
344
  return isNaN(n) ? val : n;
340
345
  };
346
+ /**
347
+ * Only conerces number-like strings
348
+ * "123-foo" will be returned as-is
349
+ */
350
+ const toNumber = (val) => {
351
+ const n = isString(val) ? Number(val) : NaN;
352
+ return isNaN(n) ? val : n;
353
+ };
341
354
  let _globalThis;
342
355
  const getGlobalThis = () => {
343
356
  return (_globalThis ||
@@ -353,7 +366,7 @@ var Vue = (function () {
353
366
  : {}));
354
367
  };
355
368
 
356
- function warn(msg, ...args) {
369
+ function warn$1(msg, ...args) {
357
370
  console.warn(`[Vue warn] ${msg}`, ...args);
358
371
  }
359
372
 
@@ -364,7 +377,7 @@ var Vue = (function () {
364
377
  /**
365
378
  * @internal
366
379
  */
367
- this.active = true;
380
+ this._active = true;
368
381
  /**
369
382
  * @internal
370
383
  */
@@ -379,8 +392,11 @@ var Vue = (function () {
379
392
  (activeEffectScope.scopes || (activeEffectScope.scopes = [])).push(this) - 1;
380
393
  }
381
394
  }
395
+ get active() {
396
+ return this._active;
397
+ }
382
398
  run(fn) {
383
- if (this.active) {
399
+ if (this._active) {
384
400
  const currentEffectScope = activeEffectScope;
385
401
  try {
386
402
  activeEffectScope = this;
@@ -391,7 +407,7 @@ var Vue = (function () {
391
407
  }
392
408
  }
393
409
  else {
394
- warn(`cannot run an inactive effect scope.`);
410
+ warn$1(`cannot run an inactive effect scope.`);
395
411
  }
396
412
  }
397
413
  /**
@@ -409,7 +425,7 @@ var Vue = (function () {
409
425
  activeEffectScope = this.parent;
410
426
  }
411
427
  stop(fromParent) {
412
- if (this.active) {
428
+ if (this._active) {
413
429
  let i, l;
414
430
  for (i = 0, l = this.effects.length; i < l; i++) {
415
431
  this.effects[i].stop();
@@ -432,7 +448,7 @@ var Vue = (function () {
432
448
  }
433
449
  }
434
450
  this.parent = undefined;
435
- this.active = false;
451
+ this._active = false;
436
452
  }
437
453
  }
438
454
  }
@@ -452,7 +468,7 @@ var Vue = (function () {
452
468
  activeEffectScope.cleanups.push(fn);
453
469
  }
454
470
  else {
455
- warn(`onScopeDispose() is called when there is no active effect scope` +
471
+ warn$1(`onScopeDispose() is called when there is no active effect scope` +
456
472
  ` to be associated with.`);
457
473
  }
458
474
  }
@@ -653,7 +669,7 @@ var Vue = (function () {
653
669
  deps = [...depsMap.values()];
654
670
  }
655
671
  else if (key === 'length' && isArray(target)) {
656
- const newLength = toNumber(newValue);
672
+ const newLength = Number(newValue);
657
673
  depsMap.forEach((dep, key) => {
658
674
  if (key === 'length' || key >= newLength) {
659
675
  deps.push(dep);
@@ -742,6 +758,10 @@ var Vue = (function () {
742
758
  }
743
759
  }
744
760
  }
761
+ function getDepFromReactive(object, key) {
762
+ var _a;
763
+ return (_a = targetMap.get(object)) === null || _a === void 0 ? void 0 : _a.get(key);
764
+ }
745
765
 
746
766
  const isNonTrackableKeys = /*#__PURE__*/ makeMap(`__proto__,__v_isRef,__isVue`);
747
767
  const builtInSymbols = new Set(
@@ -753,7 +773,7 @@ var Vue = (function () {
753
773
  .filter(key => key !== 'arguments' && key !== 'caller')
754
774
  .map(key => Symbol[key])
755
775
  .filter(isSymbol));
756
- const get = /*#__PURE__*/ createGetter();
776
+ const get$1 = /*#__PURE__*/ createGetter();
757
777
  const shallowGet = /*#__PURE__*/ createGetter(false, true);
758
778
  const readonlyGet = /*#__PURE__*/ createGetter(true);
759
779
  const shallowReadonlyGet = /*#__PURE__*/ createGetter(true, true);
@@ -787,6 +807,11 @@ var Vue = (function () {
787
807
  });
788
808
  return instrumentations;
789
809
  }
810
+ function hasOwnProperty(key) {
811
+ const obj = toRaw(this);
812
+ track(obj, "has" /* TrackOpTypes.HAS */, key);
813
+ return obj.hasOwnProperty(key);
814
+ }
790
815
  function createGetter(isReadonly = false, shallow = false) {
791
816
  return function get(target, key, receiver) {
792
817
  if (key === "__v_isReactive" /* ReactiveFlags.IS_REACTIVE */) {
@@ -810,8 +835,13 @@ var Vue = (function () {
810
835
  return target;
811
836
  }
812
837
  const targetIsArray = isArray(target);
813
- if (!isReadonly && targetIsArray && hasOwn(arrayInstrumentations, key)) {
814
- return Reflect.get(arrayInstrumentations, key, receiver);
838
+ if (!isReadonly) {
839
+ if (targetIsArray && hasOwn(arrayInstrumentations, key)) {
840
+ return Reflect.get(arrayInstrumentations, key, receiver);
841
+ }
842
+ if (key === 'hasOwnProperty') {
843
+ return hasOwnProperty;
844
+ }
815
845
  }
816
846
  const res = Reflect.get(target, key, receiver);
817
847
  if (isSymbol(key) ? builtInSymbols.has(key) : isNonTrackableKeys(key)) {
@@ -836,7 +866,7 @@ var Vue = (function () {
836
866
  return res;
837
867
  };
838
868
  }
839
- const set = /*#__PURE__*/ createSetter();
869
+ const set$1 = /*#__PURE__*/ createSetter();
840
870
  const shallowSet = /*#__PURE__*/ createSetter(true);
841
871
  function createSetter(shallow = false) {
842
872
  return function set(target, key, value, receiver) {
@@ -879,7 +909,7 @@ var Vue = (function () {
879
909
  }
880
910
  return result;
881
911
  }
882
- function has(target, key) {
912
+ function has$1(target, key) {
883
913
  const result = Reflect.has(target, key);
884
914
  if (!isSymbol(key) || !builtInSymbols.has(key)) {
885
915
  track(target, "has" /* TrackOpTypes.HAS */, key);
@@ -891,23 +921,23 @@ var Vue = (function () {
891
921
  return Reflect.ownKeys(target);
892
922
  }
893
923
  const mutableHandlers = {
894
- get,
895
- set,
924
+ get: get$1,
925
+ set: set$1,
896
926
  deleteProperty,
897
- has,
927
+ has: has$1,
898
928
  ownKeys
899
929
  };
900
930
  const readonlyHandlers = {
901
931
  get: readonlyGet,
902
932
  set(target, key) {
903
933
  {
904
- warn(`Set operation on key "${String(key)}" failed: target is readonly.`, target);
934
+ warn$1(`Set operation on key "${String(key)}" failed: target is readonly.`, target);
905
935
  }
906
936
  return true;
907
937
  },
908
938
  deleteProperty(target, key) {
909
939
  {
910
- warn(`Delete operation on key "${String(key)}" failed: target is readonly.`, target);
940
+ warn$1(`Delete operation on key "${String(key)}" failed: target is readonly.`, target);
911
941
  }
912
942
  return true;
913
943
  }
@@ -925,7 +955,7 @@ var Vue = (function () {
925
955
 
926
956
  const toShallow = (value) => value;
927
957
  const getProto = (v) => Reflect.getPrototypeOf(v);
928
- function get$1(target, key, isReadonly = false, isShallow = false) {
958
+ function get(target, key, isReadonly = false, isShallow = false) {
929
959
  // #1772: readonly(reactive(Map)) should return readonly + reactive version
930
960
  // of the value
931
961
  target = target["__v_raw" /* ReactiveFlags.RAW */];
@@ -951,7 +981,7 @@ var Vue = (function () {
951
981
  target.get(key);
952
982
  }
953
983
  }
954
- function has$1(key, isReadonly = false) {
984
+ function has(key, isReadonly = false) {
955
985
  const target = this["__v_raw" /* ReactiveFlags.RAW */];
956
986
  const rawTarget = toRaw(target);
957
987
  const rawKey = toRaw(key);
@@ -981,7 +1011,7 @@ var Vue = (function () {
981
1011
  }
982
1012
  return this;
983
1013
  }
984
- function set$1(key, value) {
1014
+ function set(key, value) {
985
1015
  value = toRaw(value);
986
1016
  const target = toRaw(this);
987
1017
  const { has, get } = getProto(target);
@@ -1094,41 +1124,41 @@ var Vue = (function () {
1094
1124
  function createInstrumentations() {
1095
1125
  const mutableInstrumentations = {
1096
1126
  get(key) {
1097
- return get$1(this, key);
1127
+ return get(this, key);
1098
1128
  },
1099
1129
  get size() {
1100
1130
  return size(this);
1101
1131
  },
1102
- has: has$1,
1132
+ has,
1103
1133
  add,
1104
- set: set$1,
1134
+ set,
1105
1135
  delete: deleteEntry,
1106
1136
  clear,
1107
1137
  forEach: createForEach(false, false)
1108
1138
  };
1109
1139
  const shallowInstrumentations = {
1110
1140
  get(key) {
1111
- return get$1(this, key, false, true);
1141
+ return get(this, key, false, true);
1112
1142
  },
1113
1143
  get size() {
1114
1144
  return size(this);
1115
1145
  },
1116
- has: has$1,
1146
+ has,
1117
1147
  add,
1118
- set: set$1,
1148
+ set,
1119
1149
  delete: deleteEntry,
1120
1150
  clear,
1121
1151
  forEach: createForEach(false, true)
1122
1152
  };
1123
1153
  const readonlyInstrumentations = {
1124
1154
  get(key) {
1125
- return get$1(this, key, true);
1155
+ return get(this, key, true);
1126
1156
  },
1127
1157
  get size() {
1128
1158
  return size(this, true);
1129
1159
  },
1130
1160
  has(key) {
1131
- return has$1.call(this, key, true);
1161
+ return has.call(this, key, true);
1132
1162
  },
1133
1163
  add: createReadonlyMethod("add" /* TriggerOpTypes.ADD */),
1134
1164
  set: createReadonlyMethod("set" /* TriggerOpTypes.SET */),
@@ -1138,13 +1168,13 @@ var Vue = (function () {
1138
1168
  };
1139
1169
  const shallowReadonlyInstrumentations = {
1140
1170
  get(key) {
1141
- return get$1(this, key, true, true);
1171
+ return get(this, key, true, true);
1142
1172
  },
1143
1173
  get size() {
1144
1174
  return size(this, true);
1145
1175
  },
1146
1176
  has(key) {
1147
- return has$1.call(this, key, true);
1177
+ return has.call(this, key, true);
1148
1178
  },
1149
1179
  add: createReadonlyMethod("add" /* TriggerOpTypes.ADD */),
1150
1180
  set: createReadonlyMethod("set" /* TriggerOpTypes.SET */),
@@ -1335,9 +1365,10 @@ var Vue = (function () {
1335
1365
  }
1336
1366
  function triggerRefValue(ref, newVal) {
1337
1367
  ref = toRaw(ref);
1338
- if (ref.dep) {
1368
+ const dep = ref.dep;
1369
+ if (dep) {
1339
1370
  {
1340
- triggerEffects(ref.dep, {
1371
+ triggerEffects(dep, {
1341
1372
  target: ref,
1342
1373
  type: "set" /* TriggerOpTypes.SET */,
1343
1374
  key: 'value',
@@ -1449,6 +1480,9 @@ var Vue = (function () {
1449
1480
  set value(newVal) {
1450
1481
  this._object[this._key] = newVal;
1451
1482
  }
1483
+ get dep() {
1484
+ return getDepFromReactive(toRaw(this._object), this._key);
1485
+ }
1452
1486
  }
1453
1487
  function toRef(object, key, defaultValue) {
1454
1488
  const val = object[key];
@@ -1490,7 +1524,7 @@ var Vue = (function () {
1490
1524
  }
1491
1525
  }
1492
1526
  _a = "__v_isReadonly" /* ReactiveFlags.IS_READONLY */;
1493
- function computed(getterOrOptions, debugOptions, isSSR = false) {
1527
+ function computed$1(getterOrOptions, debugOptions, isSSR = false) {
1494
1528
  let getter;
1495
1529
  let setter;
1496
1530
  const onlyGetter = isFunction(getterOrOptions);
@@ -1520,7 +1554,7 @@ var Vue = (function () {
1520
1554
  function popWarningContext() {
1521
1555
  stack.pop();
1522
1556
  }
1523
- function warn$1(msg, ...args) {
1557
+ function warn(msg, ...args) {
1524
1558
  // avoid props formatting or warn handler tracking deps that might be mutated
1525
1559
  // during patch, leading to infinite recursion.
1526
1560
  pauseTracking();
@@ -1626,6 +1660,20 @@ var Vue = (function () {
1626
1660
  return raw ? value : [`${key}=`, value];
1627
1661
  }
1628
1662
  }
1663
+ /**
1664
+ * @internal
1665
+ */
1666
+ function assertNumber(val, type) {
1667
+ if (val === undefined) {
1668
+ return;
1669
+ }
1670
+ else if (typeof val !== 'number') {
1671
+ warn(`${type} is not a valid number - ` + `got ${JSON.stringify(val)}.`);
1672
+ }
1673
+ else if (isNaN(val)) {
1674
+ warn(`${type} is NaN - ` + 'the duration expression might be incorrect.');
1675
+ }
1676
+ }
1629
1677
 
1630
1678
  const ErrorTypeStrings = {
1631
1679
  ["sp" /* LifecycleHooks.SERVER_PREFETCH */]: 'serverPrefetch hook',
@@ -1719,7 +1767,7 @@ var Vue = (function () {
1719
1767
  if (contextVNode) {
1720
1768
  pushWarningContext(contextVNode);
1721
1769
  }
1722
- warn$1(`Unhandled error${info ? ` during execution of ${info}` : ``}`);
1770
+ warn(`Unhandled error${info ? ` during execution of ${info}` : ``}`);
1723
1771
  if (contextVNode) {
1724
1772
  popWarningContext();
1725
1773
  }
@@ -1915,7 +1963,7 @@ var Vue = (function () {
1915
1963
  if (count > RECURSION_LIMIT) {
1916
1964
  const instance = fn.ownerInstance;
1917
1965
  const componentName = instance && getComponentName(instance.type);
1918
- warn$1(`Maximum recursive updates exceeded${componentName ? ` in component <${componentName}>` : ``}. ` +
1966
+ warn(`Maximum recursive updates exceeded${componentName ? ` in component <${componentName}>` : ``}. ` +
1919
1967
  `This means you have a reactive effect that is mutating its own ` +
1920
1968
  `dependencies and thus recursively triggering itself. Possible sources ` +
1921
1969
  `include component template, render function, updated hook or ` +
@@ -2022,12 +2070,6 @@ var Vue = (function () {
2022
2070
  // components to be unmounted and re-mounted. Queue the update so that we
2023
2071
  // don't end up forcing the same parent to re-render multiple times.
2024
2072
  queueJob(instance.parent.update);
2025
- // instance is the inner component of an async custom element
2026
- // invoke to reset styles
2027
- if (instance.parent.type.__asyncLoader &&
2028
- instance.parent.ceReload) {
2029
- instance.parent.ceReload(newComp.styles);
2030
- }
2031
2073
  }
2032
2074
  else if (instance.appContext.reload) {
2033
2075
  // root instance mounted via createApp() has a reload method
@@ -2072,7 +2114,7 @@ var Vue = (function () {
2072
2114
  let devtools;
2073
2115
  let buffer = [];
2074
2116
  let devtoolsNotInstalled = false;
2075
- function emit(event, ...args) {
2117
+ function emit$2(event, ...args) {
2076
2118
  if (devtools) {
2077
2119
  devtools.emit(event, ...args);
2078
2120
  }
@@ -2119,7 +2161,7 @@ var Vue = (function () {
2119
2161
  }
2120
2162
  }
2121
2163
  function devtoolsInitApp(app, version) {
2122
- emit("app:init" /* DevtoolsHooks.APP_INIT */, app, version, {
2164
+ emit$2("app:init" /* DevtoolsHooks.APP_INIT */, app, version, {
2123
2165
  Fragment,
2124
2166
  Text,
2125
2167
  Comment,
@@ -2127,7 +2169,7 @@ var Vue = (function () {
2127
2169
  });
2128
2170
  }
2129
2171
  function devtoolsUnmountApp(app) {
2130
- emit("app:unmount" /* DevtoolsHooks.APP_UNMOUNT */, app);
2172
+ emit$2("app:unmount" /* DevtoolsHooks.APP_UNMOUNT */, app);
2131
2173
  }
2132
2174
  const devtoolsComponentAdded = /*#__PURE__*/ createDevtoolsComponentHook("component:added" /* DevtoolsHooks.COMPONENT_ADDED */);
2133
2175
  const devtoolsComponentUpdated =
@@ -2143,18 +2185,18 @@ var Vue = (function () {
2143
2185
  };
2144
2186
  function createDevtoolsComponentHook(hook) {
2145
2187
  return (component) => {
2146
- emit(hook, component.appContext.app, component.uid, component.parent ? component.parent.uid : undefined, component);
2188
+ emit$2(hook, component.appContext.app, component.uid, component.parent ? component.parent.uid : undefined, component);
2147
2189
  };
2148
2190
  }
2149
2191
  const devtoolsPerfStart = /*#__PURE__*/ createDevtoolsPerformanceHook("perf:start" /* DevtoolsHooks.PERFORMANCE_START */);
2150
2192
  const devtoolsPerfEnd = /*#__PURE__*/ createDevtoolsPerformanceHook("perf:end" /* DevtoolsHooks.PERFORMANCE_END */);
2151
2193
  function createDevtoolsPerformanceHook(hook) {
2152
2194
  return (component, type, time) => {
2153
- emit(hook, component.appContext.app, component.uid, component, type, time);
2195
+ emit$2(hook, component.appContext.app, component.uid, component, type, time);
2154
2196
  };
2155
2197
  }
2156
2198
  function devtoolsComponentEmit(component, event, params) {
2157
- emit("component:emit" /* DevtoolsHooks.COMPONENT_EMIT */, component.appContext.app, component, event, params);
2199
+ emit$2("component:emit" /* DevtoolsHooks.COMPONENT_EMIT */, component.appContext.app, component, event, params);
2158
2200
  }
2159
2201
 
2160
2202
  const deprecationData = {
@@ -2442,12 +2484,12 @@ var Vue = (function () {
2442
2484
  // same warning, but different component. skip the long message and just
2443
2485
  // log the key and count.
2444
2486
  if (dupKey in warnCount) {
2445
- warn$1(`(deprecation ${key}) (${++warnCount[dupKey] + 1})`);
2487
+ warn(`(deprecation ${key}) (${++warnCount[dupKey] + 1})`);
2446
2488
  return;
2447
2489
  }
2448
2490
  warnCount[dupKey] = 0;
2449
2491
  const { message, link } = deprecationData[key];
2450
- warn$1(`(deprecation ${key}) ${typeof message === 'function' ? message(...args) : message}${link ? `\n Details: ${link}` : ``}`);
2492
+ warn(`(deprecation ${key}) ${typeof message === 'function' ? message(...args) : message}${link ? `\n Details: ${link}` : ``}`);
2451
2493
  if (!isCompatEnabled(key, instance, true)) {
2452
2494
  console.error(`^ The above deprecation's compat behavior is disabled and will likely ` +
2453
2495
  `lead to runtime errors.`);
@@ -2476,20 +2518,20 @@ var Vue = (function () {
2476
2518
  !(key in warnedInvalidKeys)) {
2477
2519
  if (key.startsWith('COMPILER_')) {
2478
2520
  if (isRuntimeOnly()) {
2479
- warn$1(`Deprecation config "${key}" is compiler-specific and you are ` +
2521
+ warn(`Deprecation config "${key}" is compiler-specific and you are ` +
2480
2522
  `running a runtime-only build of Vue. This deprecation should be ` +
2481
2523
  `configured via compiler options in your build setup instead.\n` +
2482
2524
  `Details: https://v3-migration.vuejs.org/breaking-changes/migration-build.html`);
2483
2525
  }
2484
2526
  }
2485
2527
  else {
2486
- warn$1(`Invalid deprecation config "${key}".`);
2528
+ warn(`Invalid deprecation config "${key}".`);
2487
2529
  }
2488
2530
  warnedInvalidKeys[key] = true;
2489
2531
  }
2490
2532
  }
2491
2533
  if (instance && config["OPTIONS_DATA_MERGE" /* DeprecationTypes.OPTIONS_DATA_MERGE */] != null) {
2492
- warn$1(`Deprecation config "${"OPTIONS_DATA_MERGE" /* DeprecationTypes.OPTIONS_DATA_MERGE */}" can only be configured globally.`);
2534
+ warn(`Deprecation config "${"OPTIONS_DATA_MERGE" /* DeprecationTypes.OPTIONS_DATA_MERGE */}" can only be configured globally.`);
2493
2535
  }
2494
2536
  }
2495
2537
  function getCompatConfigForKey(key, instance) {
@@ -2675,7 +2717,7 @@ var Vue = (function () {
2675
2717
  }
2676
2718
  }
2677
2719
 
2678
- function emit$2(instance, event, ...rawArgs) {
2720
+ function emit(instance, event, ...rawArgs) {
2679
2721
  if (instance.isUnmounted)
2680
2722
  return;
2681
2723
  const props = instance.vnode.props || EMPTY_OBJ;
@@ -2686,7 +2728,7 @@ var Vue = (function () {
2686
2728
  !((event.startsWith('hook:') ||
2687
2729
  event.startsWith(compatModelEventPrefix)))) {
2688
2730
  if (!propsOptions || !(toHandlerKey(event) in propsOptions)) {
2689
- warn$1(`Component emitted event "${event}" but it is neither declared in ` +
2731
+ warn(`Component emitted event "${event}" but it is neither declared in ` +
2690
2732
  `the emits option nor as an "${toHandlerKey(event)}" prop.`);
2691
2733
  }
2692
2734
  }
@@ -2695,7 +2737,7 @@ var Vue = (function () {
2695
2737
  if (isFunction(validator)) {
2696
2738
  const isValid = validator(...rawArgs);
2697
2739
  if (!isValid) {
2698
- warn$1(`Invalid event arguments: event validation failed for event "${event}".`);
2740
+ warn(`Invalid event arguments: event validation failed for event "${event}".`);
2699
2741
  }
2700
2742
  }
2701
2743
  }
@@ -2712,7 +2754,7 @@ var Vue = (function () {
2712
2754
  args = rawArgs.map(a => (isString(a) ? a.trim() : a));
2713
2755
  }
2714
2756
  if (number) {
2715
- args = rawArgs.map(toNumber);
2757
+ args = rawArgs.map(looseToNumber);
2716
2758
  }
2717
2759
  }
2718
2760
  {
@@ -2721,7 +2763,7 @@ var Vue = (function () {
2721
2763
  {
2722
2764
  const lowerCaseEvent = event.toLowerCase();
2723
2765
  if (lowerCaseEvent !== event && props[toHandlerKey(lowerCaseEvent)]) {
2724
- warn$1(`Event "${lowerCaseEvent}" is emitted in component ` +
2766
+ warn(`Event "${lowerCaseEvent}" is emitted in component ` +
2725
2767
  `${formatComponentName(instance, instance.type)} but the handler is registered for "${event}". ` +
2726
2768
  `Note that HTML attributes are case-insensitive and you cannot use ` +
2727
2769
  `v-on to listen to camelCase events when using in-DOM templates. ` +
@@ -3011,13 +3053,13 @@ var Vue = (function () {
3011
3053
  }
3012
3054
  }
3013
3055
  if (extraAttrs.length) {
3014
- warn$1(`Extraneous non-props attributes (` +
3056
+ warn(`Extraneous non-props attributes (` +
3015
3057
  `${extraAttrs.join(', ')}) ` +
3016
3058
  `were passed to component but could not be automatically inherited ` +
3017
3059
  `because component renders fragment or text root nodes.`);
3018
3060
  }
3019
3061
  if (eventAttrs.length) {
3020
- warn$1(`Extraneous non-emits event listeners (` +
3062
+ warn(`Extraneous non-emits event listeners (` +
3021
3063
  `${eventAttrs.join(', ')}) ` +
3022
3064
  `were passed to component but could not be automatically inherited ` +
3023
3065
  `because component renders fragment or text root nodes. ` +
@@ -3044,7 +3086,7 @@ var Vue = (function () {
3044
3086
  // inherit directives
3045
3087
  if (vnode.dirs) {
3046
3088
  if (!isElementRoot(root)) {
3047
- warn$1(`Runtime directive used on component with non-element root node. ` +
3089
+ warn(`Runtime directive used on component with non-element root node. ` +
3048
3090
  `The directives will not function as intended.`);
3049
3091
  }
3050
3092
  // clone before mutating since the root may be a hoisted vnode
@@ -3054,7 +3096,7 @@ var Vue = (function () {
3054
3096
  // inherit transition data
3055
3097
  if (vnode.transition) {
3056
3098
  if (!isElementRoot(root)) {
3057
- warn$1(`Component inside <Transition> renders non-element root node ` +
3099
+ warn(`Component inside <Transition> renders non-element root node ` +
3058
3100
  `that cannot be animated.`);
3059
3101
  }
3060
3102
  root.transition = vnode.transition;
@@ -3389,7 +3431,10 @@ var Vue = (function () {
3389
3431
  console[console.info ? 'info' : 'log'](`<Suspense> is an experimental feature and its API will likely change.`);
3390
3432
  }
3391
3433
  const { p: patch, m: move, um: unmount, n: next, o: { parentNode, remove } } = rendererInternals;
3392
- const timeout = toNumber(vnode.props && vnode.props.timeout);
3434
+ const timeout = vnode.props ? toNumber(vnode.props.timeout) : undefined;
3435
+ {
3436
+ assertNumber(timeout, `Suspense timeout`);
3437
+ }
3393
3438
  const suspense = {
3394
3439
  vnode,
3395
3440
  parent,
@@ -3617,7 +3662,7 @@ var Vue = (function () {
3617
3662
  if (isArray(s)) {
3618
3663
  const singleChild = filterSingleRoot(s);
3619
3664
  if (!singleChild) {
3620
- warn$1(`<Suspense> slots expect a single root node.`);
3665
+ warn(`<Suspense> slots expect a single root node.`);
3621
3666
  }
3622
3667
  s = singleChild;
3623
3668
  }
@@ -3655,7 +3700,7 @@ var Vue = (function () {
3655
3700
  function provide(key, value) {
3656
3701
  if (!currentInstance) {
3657
3702
  {
3658
- warn$1(`provide() can only be used inside setup().`);
3703
+ warn(`provide() can only be used inside setup().`);
3659
3704
  }
3660
3705
  }
3661
3706
  else {
@@ -3694,11 +3739,11 @@ var Vue = (function () {
3694
3739
  : defaultValue;
3695
3740
  }
3696
3741
  else {
3697
- warn$1(`injection "${String(key)}" not found.`);
3742
+ warn(`injection "${String(key)}" not found.`);
3698
3743
  }
3699
3744
  }
3700
3745
  else {
3701
- warn$1(`inject() can only be used inside setup() or functional components.`);
3746
+ warn(`inject() can only be used inside setup() or functional components.`);
3702
3747
  }
3703
3748
  }
3704
3749
 
@@ -3707,17 +3752,17 @@ var Vue = (function () {
3707
3752
  return doWatch(effect, null, options);
3708
3753
  }
3709
3754
  function watchPostEffect(effect, options) {
3710
- return doWatch(effect, null, (Object.assign(Object.assign({}, options), { flush: 'post' }) ));
3755
+ return doWatch(effect, null, Object.assign(Object.assign({}, options), { flush: 'post' }) );
3711
3756
  }
3712
3757
  function watchSyncEffect(effect, options) {
3713
- return doWatch(effect, null, (Object.assign(Object.assign({}, options), { flush: 'sync' }) ));
3758
+ return doWatch(effect, null, Object.assign(Object.assign({}, options), { flush: 'sync' }) );
3714
3759
  }
3715
3760
  // initial value for watchers to trigger on undefined initial values
3716
3761
  const INITIAL_WATCHER_VALUE = {};
3717
3762
  // implementation
3718
3763
  function watch(source, cb, options) {
3719
3764
  if (!isFunction(cb)) {
3720
- warn$1(`\`watch(fn, options?)\` signature has been moved to a separate API. ` +
3765
+ warn(`\`watch(fn, options?)\` signature has been moved to a separate API. ` +
3721
3766
  `Use \`watchEffect(fn, options?)\` instead. \`watch\` now only ` +
3722
3767
  `supports \`watch(source, cb, options?) signature.`);
3723
3768
  }
@@ -3726,19 +3771,20 @@ var Vue = (function () {
3726
3771
  function doWatch(source, cb, { immediate, deep, flush, onTrack, onTrigger } = EMPTY_OBJ) {
3727
3772
  if (!cb) {
3728
3773
  if (immediate !== undefined) {
3729
- warn$1(`watch() "immediate" option is only respected when using the ` +
3774
+ warn(`watch() "immediate" option is only respected when using the ` +
3730
3775
  `watch(source, callback, options?) signature.`);
3731
3776
  }
3732
3777
  if (deep !== undefined) {
3733
- warn$1(`watch() "deep" option is only respected when using the ` +
3778
+ warn(`watch() "deep" option is only respected when using the ` +
3734
3779
  `watch(source, callback, options?) signature.`);
3735
3780
  }
3736
3781
  }
3737
3782
  const warnInvalidSource = (s) => {
3738
- warn$1(`Invalid watch source: `, s, `A watch source can only be a getter/effect function, a ref, ` +
3783
+ warn(`Invalid watch source: `, s, `A watch source can only be a getter/effect function, a ref, ` +
3739
3784
  `a reactive object, or an array of these types.`);
3740
3785
  };
3741
- const instance = currentInstance;
3786
+ const instance = getCurrentScope() === (currentInstance === null || currentInstance === void 0 ? void 0 : currentInstance.scope) ? currentInstance : null;
3787
+ // const instance = currentInstance
3742
3788
  let getter;
3743
3789
  let forceTrigger = false;
3744
3790
  let isMultiSource = false;
@@ -3838,7 +3884,7 @@ var Vue = (function () {
3838
3884
  // pass undefined as the old value when it's changed for the first time
3839
3885
  oldValue === INITIAL_WATCHER_VALUE
3840
3886
  ? undefined
3841
- : (isMultiSource && oldValue[0] === INITIAL_WATCHER_VALUE)
3887
+ : isMultiSource && oldValue[0] === INITIAL_WATCHER_VALUE
3842
3888
  ? []
3843
3889
  : oldValue,
3844
3890
  onCleanup
@@ -4018,7 +4064,7 @@ var Vue = (function () {
4018
4064
  if (c.type !== Comment) {
4019
4065
  if (hasFound) {
4020
4066
  // warn more than one non-comment child
4021
- warn$1('<transition> can only be used on a single element or component. ' +
4067
+ warn('<transition> can only be used on a single element or component. ' +
4022
4068
  'Use <transition-group> for lists.');
4023
4069
  break;
4024
4070
  }
@@ -4036,7 +4082,7 @@ var Vue = (function () {
4036
4082
  mode !== 'in-out' &&
4037
4083
  mode !== 'out-in' &&
4038
4084
  mode !== 'default') {
4039
- warn$1(`invalid <transition> mode: ${mode}`);
4085
+ warn(`invalid <transition> mode: ${mode}`);
4040
4086
  }
4041
4087
  if (state.isLeaving) {
4042
4088
  return emptyPlaceholder(child);
@@ -4347,7 +4393,7 @@ var Vue = (function () {
4347
4393
  return pendingRequest;
4348
4394
  }
4349
4395
  if (!comp) {
4350
- warn$1(`Async component loader resolved to undefined. ` +
4396
+ warn(`Async component loader resolved to undefined. ` +
4351
4397
  `If you are using retry(), make sure to return its return value.`);
4352
4398
  }
4353
4399
  // interop module default
@@ -4440,10 +4486,15 @@ var Vue = (function () {
4440
4486
  }
4441
4487
  });
4442
4488
  }
4443
- function createInnerComp(comp, { vnode: { ref, props, children, shapeFlag }, parent }) {
4489
+ function createInnerComp(comp, parent) {
4490
+ const { ref, props, children, ce } = parent.vnode;
4444
4491
  const vnode = createVNode(comp, props, children);
4445
4492
  // ensure inner component inherits the async wrapper's ref owner
4446
4493
  vnode.ref = ref;
4494
+ // pass the custom element callback on to the inner comp
4495
+ // and remove it from the async wrapper
4496
+ vnode.ce = ce;
4497
+ delete parent.vnode.ce;
4447
4498
  return vnode;
4448
4499
  }
4449
4500
 
@@ -4529,7 +4580,7 @@ var Vue = (function () {
4529
4580
  }
4530
4581
  function pruneCacheEntry(key) {
4531
4582
  const cached = cache.get(key);
4532
- if (!current || cached.type !== current.type) {
4583
+ if (!current || !isSameVNodeType(cached, current)) {
4533
4584
  unmount(cached);
4534
4585
  }
4535
4586
  else if (current) {
@@ -4561,7 +4612,7 @@ var Vue = (function () {
4561
4612
  cache.forEach(cached => {
4562
4613
  const { subTree, suspense } = instance;
4563
4614
  const vnode = getInnerChild(subTree);
4564
- if (cached.type === vnode.type) {
4615
+ if (cached.type === vnode.type && cached.key === vnode.key) {
4565
4616
  // current instance will be unmounted as part of keep-alive's unmount
4566
4617
  resetShapeFlag(vnode);
4567
4618
  // but invoke its deactivated hook here
@@ -4581,7 +4632,7 @@ var Vue = (function () {
4581
4632
  const rawVNode = children[0];
4582
4633
  if (children.length > 1) {
4583
4634
  {
4584
- warn$1(`KeepAlive should contain exactly one component child.`);
4635
+ warn(`KeepAlive should contain exactly one component child.`);
4585
4636
  }
4586
4637
  current = null;
4587
4638
  return children;
@@ -4601,8 +4652,7 @@ var Vue = (function () {
4601
4652
  : comp);
4602
4653
  const { include, exclude, max } = props;
4603
4654
  if ((include && (!name || !matches(include, name))) ||
4604
- (exclude && name && matches(exclude, name)) ||
4605
- (hmrDirtyComponents.has(comp))) {
4655
+ (exclude && name && matches(exclude, name))) {
4606
4656
  current = vnode;
4607
4657
  return rawVNode;
4608
4658
  }
@@ -4662,7 +4712,7 @@ var Vue = (function () {
4662
4712
  else if (isString(pattern)) {
4663
4713
  return pattern.split(',').includes(name);
4664
4714
  }
4665
- else if (pattern.test) {
4715
+ else if (isRegExp(pattern)) {
4666
4716
  return pattern.test(name);
4667
4717
  }
4668
4718
  /* istanbul ignore next */
@@ -4715,14 +4765,9 @@ var Vue = (function () {
4715
4765
  }, target);
4716
4766
  }
4717
4767
  function resetShapeFlag(vnode) {
4718
- let shapeFlag = vnode.shapeFlag;
4719
- if (shapeFlag & 256 /* ShapeFlags.COMPONENT_SHOULD_KEEP_ALIVE */) {
4720
- shapeFlag -= 256 /* ShapeFlags.COMPONENT_SHOULD_KEEP_ALIVE */;
4721
- }
4722
- if (shapeFlag & 512 /* ShapeFlags.COMPONENT_KEPT_ALIVE */) {
4723
- shapeFlag -= 512 /* ShapeFlags.COMPONENT_KEPT_ALIVE */;
4724
- }
4725
- vnode.shapeFlag = shapeFlag;
4768
+ // bitwise operations to remove keep alive flags
4769
+ vnode.shapeFlag &= ~256 /* ShapeFlags.COMPONENT_SHOULD_KEEP_ALIVE */;
4770
+ vnode.shapeFlag &= ~512 /* ShapeFlags.COMPONENT_KEPT_ALIVE */;
4726
4771
  }
4727
4772
  function getInnerChild(vnode) {
4728
4773
  return vnode.shapeFlag & 128 /* ShapeFlags.SUSPENSE */ ? vnode.ssContent : vnode;
@@ -4761,7 +4806,7 @@ var Vue = (function () {
4761
4806
  }
4762
4807
  else {
4763
4808
  const apiName = toHandlerKey(ErrorTypeStrings[type].replace(/ hook$/, ''));
4764
- warn$1(`${apiName} is called when there is no active component instance to be ` +
4809
+ warn(`${apiName} is called when there is no active component instance to be ` +
4765
4810
  `associated with. ` +
4766
4811
  `Lifecycle injection APIs can only be used during execution of setup().` +
4767
4812
  (` If you are using async setup(), make sure to register lifecycle ` +
@@ -4865,7 +4910,7 @@ var Vue = (function () {
4865
4910
  */
4866
4911
  function validateDirectiveName(name) {
4867
4912
  if (isBuiltInDirective(name)) {
4868
- warn$1('Do not use built-in directive ids as custom directive id: ' + name);
4913
+ warn('Do not use built-in directive ids as custom directive id: ' + name);
4869
4914
  }
4870
4915
  }
4871
4916
  /**
@@ -4874,7 +4919,7 @@ var Vue = (function () {
4874
4919
  function withDirectives(vnode, directives) {
4875
4920
  const internalInstance = currentRenderingInstance;
4876
4921
  if (internalInstance === null) {
4877
- warn$1(`withDirectives can only be used inside render functions.`);
4922
+ warn(`withDirectives can only be used inside render functions.`);
4878
4923
  return vnode;
4879
4924
  }
4880
4925
  const instance = getExposeProxy(internalInstance) ||
@@ -4963,7 +5008,7 @@ var Vue = (function () {
4963
5008
  * v2 compat only
4964
5009
  * @internal
4965
5010
  */
4966
- function resolveFilter(name) {
5011
+ function resolveFilter$1(name) {
4967
5012
  return resolveAsset(FILTERS, name);
4968
5013
  }
4969
5014
  // implementation
@@ -4996,12 +5041,12 @@ var Vue = (function () {
4996
5041
  ? `\nIf this is a native custom element, make sure to exclude it from ` +
4997
5042
  `component resolution via compilerOptions.isCustomElement.`
4998
5043
  : ``;
4999
- warn$1(`Failed to resolve ${type.slice(0, -1)}: ${name}${extra}`);
5044
+ warn(`Failed to resolve ${type.slice(0, -1)}: ${name}${extra}`);
5000
5045
  }
5001
5046
  return res;
5002
5047
  }
5003
5048
  else {
5004
- warn$1(`resolve${capitalize(type.slice(0, -1))} ` +
5049
+ warn(`resolve${capitalize(type.slice(0, -1))} ` +
5005
5050
  `can only be used in render() or setup().`);
5006
5051
  }
5007
5052
  }
@@ -5279,7 +5324,7 @@ var Vue = (function () {
5279
5324
  }
5280
5325
  else if (typeof source === 'number') {
5281
5326
  if (!Number.isInteger(source)) {
5282
- warn$1(`The v-for range expect an integer value but got ${source}.`);
5327
+ warn(`The v-for range expect an integer value but got ${source}.`);
5283
5328
  }
5284
5329
  ret = new Array(source);
5285
5330
  for (let i = 0; i < source; i++) {
@@ -5350,11 +5395,13 @@ var Vue = (function () {
5350
5395
  (currentRenderingInstance.parent &&
5351
5396
  isAsyncWrapper(currentRenderingInstance.parent) &&
5352
5397
  currentRenderingInstance.parent.isCE)) {
5353
- return createVNode('slot', name === 'default' ? null : { name }, fallback && fallback());
5398
+ if (name !== 'default')
5399
+ props.name = name;
5400
+ return createVNode('slot', props, fallback && fallback());
5354
5401
  }
5355
5402
  let slot = slots[name];
5356
5403
  if (slot && slot.length > 1) {
5357
- warn$1(`SSR-optimized slot function detected in a non-SSR-optimized render ` +
5404
+ warn(`SSR-optimized slot function detected in a non-SSR-optimized render ` +
5358
5405
  `function. You need to mark this component with $dynamic-slots in the ` +
5359
5406
  `parent template.`);
5360
5407
  slot = () => [];
@@ -5407,7 +5454,7 @@ var Vue = (function () {
5407
5454
  function toHandlers(obj, preserveCaseIfNecessary) {
5408
5455
  const ret = {};
5409
5456
  if (!isObject(obj)) {
5410
- warn$1(`v-on with no argument expects an object value.`);
5457
+ warn(`v-on with no argument expects an object value.`);
5411
5458
  return ret;
5412
5459
  }
5413
5460
  for (const key in obj) {
@@ -5615,14 +5662,14 @@ var Vue = (function () {
5615
5662
  $createElement: () => compatH,
5616
5663
  _c: () => compatH,
5617
5664
  _o: () => legacyMarkOnce,
5618
- _n: () => toNumber,
5665
+ _n: () => looseToNumber,
5619
5666
  _s: () => toDisplayString,
5620
5667
  _l: () => renderList,
5621
5668
  _t: i => legacyRenderSlot.bind(null, i),
5622
5669
  _q: () => looseEqual,
5623
5670
  _i: () => looseIndexOf,
5624
5671
  _m: i => legacyRenderStatic.bind(null, i),
5625
- _f: () => resolveFilter,
5672
+ _f: () => resolveFilter$1,
5626
5673
  _k: i => legacyCheckKeyCodes.bind(null, i),
5627
5674
  _b: () => legacyBindObjectProps,
5628
5675
  _v: () => createTextVNode,
@@ -5670,6 +5717,7 @@ var Vue = (function () {
5670
5717
  installCompatInstanceProperties(publicPropertiesMap);
5671
5718
  }
5672
5719
  const isReservedPrefix = (key) => key === '_' || key === '$';
5720
+ const hasSetupBinding = (state, key) => state !== EMPTY_OBJ && !state.__isScriptSetup && hasOwn(state, key);
5673
5721
  const PublicInstanceProxyHandlers = {
5674
5722
  get({ _: instance }, key) {
5675
5723
  const { ctx, setupState, data, props, accessCache, type, appContext } = instance;
@@ -5677,15 +5725,6 @@ var Vue = (function () {
5677
5725
  if (key === '__isVue') {
5678
5726
  return true;
5679
5727
  }
5680
- // prioritize <script setup> bindings during dev.
5681
- // this allows even properties that start with _ or $ to be used - so that
5682
- // it aligns with the production behavior where the render fn is inlined and
5683
- // indeed has access to all declared variables.
5684
- if (setupState !== EMPTY_OBJ &&
5685
- setupState.__isScriptSetup &&
5686
- hasOwn(setupState, key)) {
5687
- return setupState[key];
5688
- }
5689
5728
  // data / props / ctx
5690
5729
  // This getter gets called for every property access on the render context
5691
5730
  // during render and is a major hotspot. The most expensive part of this
@@ -5708,7 +5747,7 @@ var Vue = (function () {
5708
5747
  // default: just fallthrough
5709
5748
  }
5710
5749
  }
5711
- else if (setupState !== EMPTY_OBJ && hasOwn(setupState, key)) {
5750
+ else if (hasSetupBinding(setupState, key)) {
5712
5751
  accessCache[key] = 1 /* AccessTypes.SETUP */;
5713
5752
  return setupState[key];
5714
5753
  }
@@ -5776,32 +5815,37 @@ var Vue = (function () {
5776
5815
  // to infinite warning loop
5777
5816
  key.indexOf('__v') !== 0)) {
5778
5817
  if (data !== EMPTY_OBJ && isReservedPrefix(key[0]) && hasOwn(data, key)) {
5779
- warn$1(`Property ${JSON.stringify(key)} must be accessed via $data because it starts with a reserved ` +
5818
+ warn(`Property ${JSON.stringify(key)} must be accessed via $data because it starts with a reserved ` +
5780
5819
  `character ("$" or "_") and is not proxied on the render context.`);
5781
5820
  }
5782
5821
  else if (instance === currentRenderingInstance) {
5783
- warn$1(`Property ${JSON.stringify(key)} was accessed during render ` +
5822
+ warn(`Property ${JSON.stringify(key)} was accessed during render ` +
5784
5823
  `but is not defined on instance.`);
5785
5824
  }
5786
5825
  }
5787
5826
  },
5788
5827
  set({ _: instance }, key, value) {
5789
5828
  const { data, setupState, ctx } = instance;
5790
- if (setupState !== EMPTY_OBJ && hasOwn(setupState, key)) {
5829
+ if (hasSetupBinding(setupState, key)) {
5791
5830
  setupState[key] = value;
5792
5831
  return true;
5793
5832
  }
5833
+ else if (setupState.__isScriptSetup &&
5834
+ hasOwn(setupState, key)) {
5835
+ warn(`Cannot mutate <script setup> binding "${key}" from Options API.`);
5836
+ return false;
5837
+ }
5794
5838
  else if (data !== EMPTY_OBJ && hasOwn(data, key)) {
5795
5839
  data[key] = value;
5796
5840
  return true;
5797
5841
  }
5798
5842
  else if (hasOwn(instance.props, key)) {
5799
- warn$1(`Attempting to mutate prop "${key}". Props are readonly.`, instance);
5843
+ warn(`Attempting to mutate prop "${key}". Props are readonly.`);
5800
5844
  return false;
5801
5845
  }
5802
5846
  if (key[0] === '$' && key.slice(1) in instance) {
5803
- warn$1(`Attempting to mutate public property "${key}". ` +
5804
- `Properties starting with $ are reserved and readonly.`, instance);
5847
+ warn(`Attempting to mutate public property "${key}". ` +
5848
+ `Properties starting with $ are reserved and readonly.`);
5805
5849
  return false;
5806
5850
  }
5807
5851
  else {
@@ -5822,7 +5866,7 @@ var Vue = (function () {
5822
5866
  let normalizedProps;
5823
5867
  return (!!accessCache[key] ||
5824
5868
  (data !== EMPTY_OBJ && hasOwn(data, key)) ||
5825
- (setupState !== EMPTY_OBJ && hasOwn(setupState, key)) ||
5869
+ hasSetupBinding(setupState, key) ||
5826
5870
  ((normalizedProps = propsOptions[0]) && hasOwn(normalizedProps, key)) ||
5827
5871
  hasOwn(ctx, key) ||
5828
5872
  hasOwn(publicPropertiesMap, key) ||
@@ -5841,7 +5885,7 @@ var Vue = (function () {
5841
5885
  };
5842
5886
  {
5843
5887
  PublicInstanceProxyHandlers.ownKeys = (target) => {
5844
- warn$1(`Avoid app logic that relies on enumerating keys on a component instance. ` +
5888
+ warn(`Avoid app logic that relies on enumerating keys on a component instance. ` +
5845
5889
  `The keys will be empty in production mode to avoid performance overhead.`);
5846
5890
  return Reflect.ownKeys(target);
5847
5891
  };
@@ -5857,7 +5901,7 @@ var Vue = (function () {
5857
5901
  has(_, key) {
5858
5902
  const has = key[0] !== '_' && !isGloballyWhitelisted(key);
5859
5903
  if (!has && PublicInstanceProxyHandlers.has(_, key)) {
5860
- warn$1(`Property ${JSON.stringify(key)} should not start with _ which is a reserved prefix for Vue internals.`);
5904
+ warn(`Property ${JSON.stringify(key)} should not start with _ which is a reserved prefix for Vue internals.`);
5861
5905
  }
5862
5906
  return has;
5863
5907
  }
@@ -5907,7 +5951,7 @@ var Vue = (function () {
5907
5951
  Object.keys(toRaw(setupState)).forEach(key => {
5908
5952
  if (!setupState.__isScriptSetup) {
5909
5953
  if (isReservedPrefix(key[0])) {
5910
- warn$1(`setup() return property ${JSON.stringify(key)} should not start with "$" or "_" ` +
5954
+ warn(`setup() return property ${JSON.stringify(key)} should not start with "$" or "_" ` +
5911
5955
  `which are reserved prefixes for Vue internals.`);
5912
5956
  return;
5913
5957
  }
@@ -5940,7 +5984,7 @@ var Vue = (function () {
5940
5984
  const cache = Object.create(null);
5941
5985
  return (type, key) => {
5942
5986
  if (cache[key]) {
5943
- warn$1(`${type} property "${key}" is already defined in ${cache[key]}.`);
5987
+ warn(`${type} property "${key}" is already defined in ${cache[key]}.`);
5944
5988
  }
5945
5989
  else {
5946
5990
  cache[key] = type;
@@ -5957,7 +6001,7 @@ var Vue = (function () {
5957
6001
  // call beforeCreate first before accessing other options since
5958
6002
  // the hook may mutate resolved options (#2791)
5959
6003
  if (options.beforeCreate) {
5960
- callHook(options.beforeCreate, instance, "bc" /* LifecycleHooks.BEFORE_CREATE */);
6004
+ callHook$1(options.beforeCreate, instance, "bc" /* LifecycleHooks.BEFORE_CREATE */);
5961
6005
  }
5962
6006
  const {
5963
6007
  // state
@@ -6007,24 +6051,24 @@ var Vue = (function () {
6007
6051
  }
6008
6052
  }
6009
6053
  else {
6010
- warn$1(`Method "${key}" has type "${typeof methodHandler}" in the component definition. ` +
6054
+ warn(`Method "${key}" has type "${typeof methodHandler}" in the component definition. ` +
6011
6055
  `Did you reference the function correctly?`);
6012
6056
  }
6013
6057
  }
6014
6058
  }
6015
6059
  if (dataOptions) {
6016
6060
  if (!isFunction(dataOptions)) {
6017
- warn$1(`The data option must be a function. ` +
6061
+ warn(`The data option must be a function. ` +
6018
6062
  `Plain object usage is no longer supported.`);
6019
6063
  }
6020
6064
  const data = dataOptions.call(publicThis, publicThis);
6021
6065
  if (isPromise(data)) {
6022
- warn$1(`data() returned a Promise - note data() cannot be async; If you ` +
6066
+ warn(`data() returned a Promise - note data() cannot be async; If you ` +
6023
6067
  `intend to perform data fetching before component renders, use ` +
6024
6068
  `async setup() + <Suspense>.`);
6025
6069
  }
6026
6070
  if (!isObject(data)) {
6027
- warn$1(`data() should return an object.`);
6071
+ warn(`data() should return an object.`);
6028
6072
  }
6029
6073
  else {
6030
6074
  instance.data = reactive(data);
@@ -6055,15 +6099,15 @@ var Vue = (function () {
6055
6099
  ? opt.get.bind(publicThis, publicThis)
6056
6100
  : NOOP;
6057
6101
  if (get === NOOP) {
6058
- warn$1(`Computed property "${key}" has no getter.`);
6102
+ warn(`Computed property "${key}" has no getter.`);
6059
6103
  }
6060
6104
  const set = !isFunction(opt) && isFunction(opt.set)
6061
6105
  ? opt.set.bind(publicThis)
6062
6106
  : () => {
6063
- warn$1(`Write operation failed: computed property "${key}" is readonly.`);
6107
+ warn(`Write operation failed: computed property "${key}" is readonly.`);
6064
6108
  }
6065
6109
  ;
6066
- const c = computed$1({
6110
+ const c = computed({
6067
6111
  get,
6068
6112
  set
6069
6113
  });
@@ -6092,7 +6136,7 @@ var Vue = (function () {
6092
6136
  });
6093
6137
  }
6094
6138
  if (created) {
6095
- callHook(created, instance, "c" /* LifecycleHooks.CREATED */);
6139
+ callHook$1(created, instance, "c" /* LifecycleHooks.CREATED */);
6096
6140
  }
6097
6141
  function registerLifecycleHook(register, hook) {
6098
6142
  if (isArray(hook)) {
@@ -6186,7 +6230,7 @@ var Vue = (function () {
6186
6230
  }
6187
6231
  else {
6188
6232
  {
6189
- warn$1(`injected property "${key}" is a ref and will be auto-unwrapped ` +
6233
+ warn(`injected property "${key}" is a ref and will be auto-unwrapped ` +
6190
6234
  `and no longer needs \`.value\` in the next minor release. ` +
6191
6235
  `To opt-in to the new behavior now, ` +
6192
6236
  `set \`app.config.unwrapInjectedRef = true\` (this config is ` +
@@ -6203,7 +6247,7 @@ var Vue = (function () {
6203
6247
  }
6204
6248
  }
6205
6249
  }
6206
- function callHook(hook, instance, type) {
6250
+ function callHook$1(hook, instance, type) {
6207
6251
  callWithAsyncErrorHandling(isArray(hook)
6208
6252
  ? hook.map(h => h.bind(instance.proxy))
6209
6253
  : hook.bind(instance.proxy), instance, type);
@@ -6218,7 +6262,7 @@ var Vue = (function () {
6218
6262
  watch(getter, handler);
6219
6263
  }
6220
6264
  else {
6221
- warn$1(`Invalid watch handler specified by key "${raw}"`, handler);
6265
+ warn(`Invalid watch handler specified by key "${raw}"`, handler);
6222
6266
  }
6223
6267
  }
6224
6268
  else if (isFunction(raw)) {
@@ -6236,12 +6280,12 @@ var Vue = (function () {
6236
6280
  watch(getter, handler, raw);
6237
6281
  }
6238
6282
  else {
6239
- warn$1(`Invalid watch handler specified by key "${raw.handler}"`, handler);
6283
+ warn(`Invalid watch handler specified by key "${raw.handler}"`, handler);
6240
6284
  }
6241
6285
  }
6242
6286
  }
6243
6287
  else {
6244
- warn$1(`Invalid watch option: "${key}"`, raw);
6288
+ warn(`Invalid watch option: "${key}"`, raw);
6245
6289
  }
6246
6290
  }
6247
6291
  /**
@@ -6293,7 +6337,7 @@ var Vue = (function () {
6293
6337
  }
6294
6338
  for (const key in from) {
6295
6339
  if (asMixin && key === 'expose') {
6296
- warn$1(`"expose" option is ignored when declared in mixins or extends. ` +
6340
+ warn(`"expose" option is ignored when declared in mixins or extends. ` +
6297
6341
  `It should only be declared in the base component itself.`);
6298
6342
  }
6299
6343
  else {
@@ -6710,7 +6754,7 @@ var Vue = (function () {
6710
6754
  if (isArray(raw)) {
6711
6755
  for (let i = 0; i < raw.length; i++) {
6712
6756
  if (!isString(raw[i])) {
6713
- warn$1(`props must be strings when using array syntax.`, raw[i]);
6757
+ warn(`props must be strings when using array syntax.`, raw[i]);
6714
6758
  }
6715
6759
  const normalizedKey = camelize(raw[i]);
6716
6760
  if (validatePropName(normalizedKey)) {
@@ -6720,7 +6764,7 @@ var Vue = (function () {
6720
6764
  }
6721
6765
  else if (raw) {
6722
6766
  if (!isObject(raw)) {
6723
- warn$1(`invalid props options`, raw);
6767
+ warn(`invalid props options`, raw);
6724
6768
  }
6725
6769
  for (const key in raw) {
6726
6770
  const normalizedKey = camelize(key);
@@ -6753,15 +6797,15 @@ var Vue = (function () {
6753
6797
  return true;
6754
6798
  }
6755
6799
  else {
6756
- warn$1(`Invalid prop name: "${key}" is a reserved property.`);
6800
+ warn(`Invalid prop name: "${key}" is a reserved property.`);
6757
6801
  }
6758
6802
  return false;
6759
6803
  }
6760
6804
  // use function string name to check type constructors
6761
6805
  // so that it works across vms / iframes.
6762
6806
  function getType(ctor) {
6763
- const match = ctor && ctor.toString().match(/^\s*function (\w+)/);
6764
- return match ? match[1] : ctor === null ? 'null' : '';
6807
+ const match = ctor && ctor.toString().match(/^\s*(function|class) (\w+)/);
6808
+ return match ? match[2] : ctor === null ? 'null' : '';
6765
6809
  }
6766
6810
  function isSameType(a, b) {
6767
6811
  return getType(a) === getType(b);
@@ -6795,7 +6839,7 @@ var Vue = (function () {
6795
6839
  const { type, required, validator } = prop;
6796
6840
  // required!
6797
6841
  if (required && isAbsent) {
6798
- warn$1('Missing required prop: "' + name + '"');
6842
+ warn('Missing required prop: "' + name + '"');
6799
6843
  return;
6800
6844
  }
6801
6845
  // missing but optional
@@ -6814,13 +6858,13 @@ var Vue = (function () {
6814
6858
  isValid = valid;
6815
6859
  }
6816
6860
  if (!isValid) {
6817
- warn$1(getInvalidTypeMessage(name, value, expectedTypes));
6861
+ warn(getInvalidTypeMessage(name, value, expectedTypes));
6818
6862
  return;
6819
6863
  }
6820
6864
  }
6821
6865
  // custom validator
6822
6866
  if (validator && !validator(value)) {
6823
- warn$1('Invalid prop: custom validator check failed for prop "' + name + '".');
6867
+ warn('Invalid prop: custom validator check failed for prop "' + name + '".');
6824
6868
  }
6825
6869
  }
6826
6870
  const isSimpleType = /*#__PURE__*/ makeMap('String,Number,Boolean,Function,Symbol,BigInt');
@@ -6917,7 +6961,7 @@ var Vue = (function () {
6917
6961
  }
6918
6962
  const normalized = withCtx((...args) => {
6919
6963
  if (true && currentInstance) {
6920
- warn$1(`Slot "${key}" invoked outside of the render function: ` +
6964
+ warn(`Slot "${key}" invoked outside of the render function: ` +
6921
6965
  `this will not track dependencies used in the slot. ` +
6922
6966
  `Invoke the slot function inside the render function instead.`);
6923
6967
  }
@@ -6937,7 +6981,7 @@ var Vue = (function () {
6937
6981
  }
6938
6982
  else if (value != null) {
6939
6983
  if (!(isCompatEnabled("RENDER_FUNCTION" /* DeprecationTypes.RENDER_FUNCTION */, instance))) {
6940
- warn$1(`Non-function value encountered for slot "${key}". ` +
6984
+ warn(`Non-function value encountered for slot "${key}". ` +
6941
6985
  `Prefer function slots for better performance.`);
6942
6986
  }
6943
6987
  const normalized = normalizeSlotValue(value);
@@ -6948,7 +6992,7 @@ var Vue = (function () {
6948
6992
  const normalizeVNodeSlots = (instance, children) => {
6949
6993
  if (!isKeepAlive(instance.vnode) &&
6950
6994
  !(isCompatEnabled("RENDER_FUNCTION" /* DeprecationTypes.RENDER_FUNCTION */, instance))) {
6951
- warn$1(`Non-function value encountered for default slot. ` +
6995
+ warn(`Non-function value encountered for default slot. ` +
6952
6996
  `Prefer function slots for better performance.`);
6953
6997
  }
6954
6998
  const normalized = normalizeSlotValue(children);
@@ -7072,7 +7116,7 @@ var Vue = (function () {
7072
7116
  let singletonApp;
7073
7117
  let singletonCtor;
7074
7118
  // Legacy global Vue constructor
7075
- function createCompatVue(createApp, createSingletonApp) {
7119
+ function createCompatVue$1(createApp, createSingletonApp) {
7076
7120
  singletonApp = createSingletonApp({});
7077
7121
  const Vue = (singletonCtor = function Vue(options = {}) {
7078
7122
  return createCompatApp(options, Vue);
@@ -7097,7 +7141,7 @@ var Vue = (function () {
7097
7141
  return vm;
7098
7142
  }
7099
7143
  }
7100
- Vue.version = `2.6.14-compat:${"3.2.44"}`;
7144
+ Vue.version = `2.6.14-compat:${"3.2.46"}`;
7101
7145
  Vue.config = singletonApp.config;
7102
7146
  Vue.use = (p, ...options) => {
7103
7147
  if (p && isFunction(p.install)) {
@@ -7199,7 +7243,7 @@ var Vue = (function () {
7199
7243
  });
7200
7244
  // internal utils - these are technically internal but some plugins use it.
7201
7245
  const util = {
7202
- warn: warn$1 ,
7246
+ warn: warn ,
7203
7247
  extend,
7204
7248
  mergeOptions: (parent, child, vm) => mergeOptions(parent, child, vm ? undefined : internalOptionMergeStrats),
7205
7249
  defineReactive
@@ -7234,7 +7278,7 @@ var Vue = (function () {
7234
7278
  return context.filters[name];
7235
7279
  }
7236
7280
  if (context.filters[name]) {
7237
- warn$1(`Filter "${name}" has already been registered.`);
7281
+ warn(`Filter "${name}" has already been registered.`);
7238
7282
  }
7239
7283
  context.filters[name] = filter;
7240
7284
  return app;
@@ -7345,7 +7389,7 @@ var Vue = (function () {
7345
7389
  // both runtime-core AND runtime-dom.
7346
7390
  instance.ctx._compat_mount = (selectorOrEl) => {
7347
7391
  if (isMounted) {
7348
- warn$1(`Root instance is already mounted.`);
7392
+ warn(`Root instance is already mounted.`);
7349
7393
  return;
7350
7394
  }
7351
7395
  let container;
@@ -7353,7 +7397,7 @@ var Vue = (function () {
7353
7397
  // eslint-disable-next-line
7354
7398
  const result = document.querySelector(selectorOrEl);
7355
7399
  if (!result) {
7356
- warn$1(`Failed to mount root instance: selector "${selectorOrEl}" returned null.`);
7400
+ warn(`Failed to mount root instance: selector "${selectorOrEl}" returned null.`);
7357
7401
  return;
7358
7402
  }
7359
7403
  container = result;
@@ -7523,21 +7567,21 @@ var Vue = (function () {
7523
7567
  emitsCache: new WeakMap()
7524
7568
  };
7525
7569
  }
7526
- let uid = 0;
7570
+ let uid$1 = 0;
7527
7571
  function createAppAPI(render, hydrate) {
7528
7572
  return function createApp(rootComponent, rootProps = null) {
7529
7573
  if (!isFunction(rootComponent)) {
7530
7574
  rootComponent = Object.assign({}, rootComponent);
7531
7575
  }
7532
7576
  if (rootProps != null && !isObject(rootProps)) {
7533
- warn$1(`root props passed to app.mount() must be an object.`);
7577
+ warn(`root props passed to app.mount() must be an object.`);
7534
7578
  rootProps = null;
7535
7579
  }
7536
7580
  const context = createAppContext();
7537
7581
  const installedPlugins = new Set();
7538
7582
  let isMounted = false;
7539
7583
  const app = (context.app = {
7540
- _uid: uid++,
7584
+ _uid: uid$1++,
7541
7585
  _component: rootComponent,
7542
7586
  _props: rootProps,
7543
7587
  _container: null,
@@ -7549,12 +7593,12 @@ var Vue = (function () {
7549
7593
  },
7550
7594
  set config(v) {
7551
7595
  {
7552
- warn$1(`app.config cannot be replaced. Modify individual options instead.`);
7596
+ warn(`app.config cannot be replaced. Modify individual options instead.`);
7553
7597
  }
7554
7598
  },
7555
7599
  use(plugin, ...options) {
7556
7600
  if (installedPlugins.has(plugin)) {
7557
- warn$1(`Plugin has already been applied to target app.`);
7601
+ warn(`Plugin has already been applied to target app.`);
7558
7602
  }
7559
7603
  else if (plugin && isFunction(plugin.install)) {
7560
7604
  installedPlugins.add(plugin);
@@ -7565,7 +7609,7 @@ var Vue = (function () {
7565
7609
  plugin(app, ...options);
7566
7610
  }
7567
7611
  else {
7568
- warn$1(`A plugin must either be a function or an object with an "install" ` +
7612
+ warn(`A plugin must either be a function or an object with an "install" ` +
7569
7613
  `function.`);
7570
7614
  }
7571
7615
  return app;
@@ -7576,7 +7620,7 @@ var Vue = (function () {
7576
7620
  context.mixins.push(mixin);
7577
7621
  }
7578
7622
  else {
7579
- warn$1('Mixin has already been applied to target app' +
7623
+ warn('Mixin has already been applied to target app' +
7580
7624
  (mixin.name ? `: ${mixin.name}` : ''));
7581
7625
  }
7582
7626
  }
@@ -7590,7 +7634,7 @@ var Vue = (function () {
7590
7634
  return context.components[name];
7591
7635
  }
7592
7636
  if (context.components[name]) {
7593
- warn$1(`Component "${name}" has already been registered in target app.`);
7637
+ warn(`Component "${name}" has already been registered in target app.`);
7594
7638
  }
7595
7639
  context.components[name] = component;
7596
7640
  return app;
@@ -7603,7 +7647,7 @@ var Vue = (function () {
7603
7647
  return context.directives[name];
7604
7648
  }
7605
7649
  if (context.directives[name]) {
7606
- warn$1(`Directive "${name}" has already been registered in target app.`);
7650
+ warn(`Directive "${name}" has already been registered in target app.`);
7607
7651
  }
7608
7652
  context.directives[name] = directive;
7609
7653
  return app;
@@ -7612,7 +7656,7 @@ var Vue = (function () {
7612
7656
  if (!isMounted) {
7613
7657
  // #5571
7614
7658
  if (rootContainer.__vue_app__) {
7615
- warn$1(`There is already an app instance mounted on the host container.\n` +
7659
+ warn(`There is already an app instance mounted on the host container.\n` +
7616
7660
  ` If you want to mount another app on the same host container,` +
7617
7661
  ` you need to unmount the previous app by calling \`app.unmount()\` first.`);
7618
7662
  }
@@ -7642,7 +7686,7 @@ var Vue = (function () {
7642
7686
  return getExposeProxy(vnode.component) || vnode.component.proxy;
7643
7687
  }
7644
7688
  else {
7645
- warn$1(`App has already been mounted.\n` +
7689
+ warn(`App has already been mounted.\n` +
7646
7690
  `If you want to remount the same app, move your app creation logic ` +
7647
7691
  `into a factory function and create fresh app instances for each ` +
7648
7692
  `mount - e.g. \`const createMyApp = () => createApp(App)\``);
@@ -7658,12 +7702,12 @@ var Vue = (function () {
7658
7702
  delete app._container.__vue_app__;
7659
7703
  }
7660
7704
  else {
7661
- warn$1(`Cannot unmount an app that is not mounted.`);
7705
+ warn(`Cannot unmount an app that is not mounted.`);
7662
7706
  }
7663
7707
  },
7664
7708
  provide(key, value) {
7665
7709
  if (key in context.provides) {
7666
- warn$1(`App already provides property with key "${String(key)}". ` +
7710
+ warn(`App already provides property with key "${String(key)}". ` +
7667
7711
  `It will be overwritten with the new value.`);
7668
7712
  }
7669
7713
  context.provides[key] = value;
@@ -7696,7 +7740,7 @@ var Vue = (function () {
7696
7740
  const value = isUnmount ? null : refValue;
7697
7741
  const { i: owner, r: ref } = rawRef;
7698
7742
  if (!owner) {
7699
- warn$1(`Missing ref owner context. ref cannot be used on hoisted vnodes. ` +
7743
+ warn(`Missing ref owner context. ref cannot be used on hoisted vnodes. ` +
7700
7744
  `A vnode with ref must be created inside the render function.`);
7701
7745
  return;
7702
7746
  }
@@ -7763,7 +7807,7 @@ var Vue = (function () {
7763
7807
  refs[rawRef.k] = value;
7764
7808
  }
7765
7809
  else {
7766
- warn$1('Invalid template ref type:', ref, `(${typeof ref})`);
7810
+ warn('Invalid template ref type:', ref, `(${typeof ref})`);
7767
7811
  }
7768
7812
  };
7769
7813
  if (value) {
@@ -7775,7 +7819,7 @@ var Vue = (function () {
7775
7819
  }
7776
7820
  }
7777
7821
  else {
7778
- warn$1('Invalid template ref type:', ref, `(${typeof ref})`);
7822
+ warn('Invalid template ref type:', ref, `(${typeof ref})`);
7779
7823
  }
7780
7824
  }
7781
7825
  }
@@ -7792,7 +7836,7 @@ var Vue = (function () {
7792
7836
  const { mt: mountComponent, p: patch, o: { patchProp, createText, nextSibling, parentNode, remove, insert, createComment } } = rendererInternals;
7793
7837
  const hydrate = (vnode, container) => {
7794
7838
  if (!container.hasChildNodes()) {
7795
- warn$1(`Attempting to hydrate existing markup but container is empty. ` +
7839
+ warn(`Attempting to hydrate existing markup but container is empty. ` +
7796
7840
  `Performing full mount instead.`);
7797
7841
  patch(null, vnode, container);
7798
7842
  flushPostFlushCbs();
@@ -7835,7 +7879,7 @@ var Vue = (function () {
7835
7879
  else {
7836
7880
  if (node.data !== vnode.children) {
7837
7881
  hasMismatch = true;
7838
- warn$1(`Hydration text mismatch:` +
7882
+ warn(`Hydration text mismatch:` +
7839
7883
  `\n- Client: ${JSON.stringify(node.data)}` +
7840
7884
  `\n- Server: ${JSON.stringify(vnode.children)}`);
7841
7885
  node.data = vnode.children;
@@ -7950,7 +7994,7 @@ var Vue = (function () {
7950
7994
  nextNode = vnode.type.hydrate(node, vnode, parentComponent, parentSuspense, isSVGContainer(parentNode(node)), slotScopeIds, optimized, rendererInternals, hydrateNode);
7951
7995
  }
7952
7996
  else {
7953
- warn$1('Invalid HostVNode type:', type, `(${typeof type})`);
7997
+ warn('Invalid HostVNode type:', type, `(${typeof type})`);
7954
7998
  }
7955
7999
  }
7956
8000
  if (ref != null) {
@@ -8011,7 +8055,7 @@ var Vue = (function () {
8011
8055
  while (next) {
8012
8056
  hasMismatch = true;
8013
8057
  if (!hasWarned) {
8014
- warn$1(`Hydration children mismatch in <${vnode.type}>: ` +
8058
+ warn(`Hydration children mismatch in <${vnode.type}>: ` +
8015
8059
  `server rendered element contains more child nodes than client vdom.`);
8016
8060
  hasWarned = true;
8017
8061
  }
@@ -8024,7 +8068,7 @@ var Vue = (function () {
8024
8068
  else if (shapeFlag & 8 /* ShapeFlags.TEXT_CHILDREN */) {
8025
8069
  if (el.textContent !== vnode.children) {
8026
8070
  hasMismatch = true;
8027
- warn$1(`Hydration text content mismatch in <${vnode.type}>:\n` +
8071
+ warn(`Hydration text content mismatch in <${vnode.type}>:\n` +
8028
8072
  `- Client: ${el.textContent}\n` +
8029
8073
  `- Server: ${vnode.children}`);
8030
8074
  el.textContent = vnode.children;
@@ -8051,7 +8095,7 @@ var Vue = (function () {
8051
8095
  else {
8052
8096
  hasMismatch = true;
8053
8097
  if (!hasWarned) {
8054
- warn$1(`Hydration children mismatch in <${container.tagName.toLowerCase()}>: ` +
8098
+ warn(`Hydration children mismatch in <${container.tagName.toLowerCase()}>: ` +
8055
8099
  `server rendered element contains fewer child nodes than client vdom.`);
8056
8100
  hasWarned = true;
8057
8101
  }
@@ -8084,7 +8128,7 @@ var Vue = (function () {
8084
8128
  };
8085
8129
  const handleMismatch = (node, vnode, parentComponent, parentSuspense, slotScopeIds, isFragment) => {
8086
8130
  hasMismatch = true;
8087
- warn$1(`Hydration node mismatch:\n- Client vnode:`, vnode.type, `\n- Server rendered DOM:`, node, node.nodeType === 3 /* DOMNodeTypes.TEXT */
8131
+ warn(`Hydration node mismatch:\n- Client vnode:`, vnode.type, `\n- Server rendered DOM:`, node, node.nodeType === 3 /* DOMNodeTypes.TEXT */
8088
8132
  ? `(text)`
8089
8133
  : isComment(node) && node.data === '['
8090
8134
  ? `(start of fragment)`
@@ -8252,7 +8296,7 @@ var Vue = (function () {
8252
8296
  type.process(n1, n2, container, anchor, parentComponent, parentSuspense, isSVG, slotScopeIds, optimized, internals);
8253
8297
  }
8254
8298
  else {
8255
- warn$1('Invalid VNode type:', type, `(${typeof type})`);
8299
+ warn('Invalid VNode type:', type, `(${typeof type})`);
8256
8300
  }
8257
8301
  }
8258
8302
  // set ref
@@ -8342,6 +8386,8 @@ var Vue = (function () {
8342
8386
  if (dirs) {
8343
8387
  invokeDirectiveHook(vnode, null, parentComponent, 'created');
8344
8388
  }
8389
+ // scopeId
8390
+ setScopeId(el, vnode, vnode.scopeId, slotScopeIds, parentComponent);
8345
8391
  // props
8346
8392
  if (props) {
8347
8393
  for (const key in props) {
@@ -8365,8 +8411,6 @@ var Vue = (function () {
8365
8411
  invokeVNodeHook(vnodeHook, parentComponent, vnode);
8366
8412
  }
8367
8413
  }
8368
- // scopeId
8369
- setScopeId(el, vnode, vnode.scopeId, slotScopeIds, parentComponent);
8370
8414
  {
8371
8415
  Object.defineProperty(el, '__vnode', {
8372
8416
  value: vnode,
@@ -9095,7 +9139,7 @@ var Vue = (function () {
9095
9139
  : normalizeVNode(c2[i]));
9096
9140
  if (nextChild.key != null) {
9097
9141
  if (keyToNewIndexMap.has(nextChild.key)) {
9098
- warn$1(`Duplicate keys found during update:`, JSON.stringify(nextChild.key), `Make sure keys are unique.`);
9142
+ warn(`Duplicate keys found during update:`, JSON.stringify(nextChild.key), `Make sure keys are unique.`);
9099
9143
  }
9100
9144
  keyToNewIndexMap.set(nextChild.key, i);
9101
9145
  }
@@ -9484,6 +9528,10 @@ var Vue = (function () {
9484
9528
  if (!shallow)
9485
9529
  traverseStaticChildren(c1, c2);
9486
9530
  }
9531
+ // #6852 also inherit for text nodes
9532
+ if (c2.type === Text) {
9533
+ c2.el = c1.el;
9534
+ }
9487
9535
  // also inherit for comment nodes, but not placeholders (e.g. v-if which
9488
9536
  // would have received .el during block patch)
9489
9537
  if (c2.type === Comment && !c2.el) {
@@ -9542,14 +9590,14 @@ var Vue = (function () {
9542
9590
  const targetSelector = props && props.to;
9543
9591
  if (isString(targetSelector)) {
9544
9592
  if (!select) {
9545
- warn$1(`Current renderer does not support string target for Teleports. ` +
9593
+ warn(`Current renderer does not support string target for Teleports. ` +
9546
9594
  `(missing querySelector renderer option)`);
9547
9595
  return null;
9548
9596
  }
9549
9597
  else {
9550
9598
  const target = select(targetSelector);
9551
9599
  if (!target) {
9552
- warn$1(`Failed to locate Teleport target with selector "${targetSelector}". ` +
9600
+ warn(`Failed to locate Teleport target with selector "${targetSelector}". ` +
9553
9601
  `Note the target element must exist before the component is mounted - ` +
9554
9602
  `i.e. the target cannot be rendered by the component itself, and ` +
9555
9603
  `ideally should be outside of the entire Vue component tree.`);
@@ -9559,7 +9607,7 @@ var Vue = (function () {
9559
9607
  }
9560
9608
  else {
9561
9609
  if (!targetSelector && !isTeleportDisabled(props)) {
9562
- warn$1(`Invalid Teleport target: ${targetSelector}`);
9610
+ warn(`Invalid Teleport target: ${targetSelector}`);
9563
9611
  }
9564
9612
  return targetSelector;
9565
9613
  }
@@ -9592,7 +9640,7 @@ var Vue = (function () {
9592
9640
  isSVG = isSVG || isTargetSVG(target);
9593
9641
  }
9594
9642
  else if (!disabled) {
9595
- warn$1('Invalid Teleport target on mount:', target, `(${typeof target})`);
9643
+ warn('Invalid Teleport target on mount:', target, `(${typeof target})`);
9596
9644
  }
9597
9645
  const mount = (container, anchor) => {
9598
9646
  // Teleport *always* has Array children. This is enforced in both the
@@ -9644,7 +9692,7 @@ var Vue = (function () {
9644
9692
  moveTeleport(n2, nextTarget, null, internals, 0 /* TeleportMoveTypes.TARGET_CHANGE */);
9645
9693
  }
9646
9694
  else {
9647
- warn$1('Invalid Teleport target on update:', target, `(${typeof target})`);
9695
+ warn('Invalid Teleport target on update:', target, `(${typeof target})`);
9648
9696
  }
9649
9697
  }
9650
9698
  else if (wasDisabled) {
@@ -9654,6 +9702,7 @@ var Vue = (function () {
9654
9702
  }
9655
9703
  }
9656
9704
  }
9705
+ updateCssVars(n2);
9657
9706
  },
9658
9707
  remove(vnode, parentComponent, parentSuspense, optimized, { um: unmount, o: { remove: hostRemove } }, doRemove) {
9659
9708
  const { shapeFlag, children, anchor, targetAnchor, target, props } = vnode;
@@ -9732,11 +9781,26 @@ var Vue = (function () {
9732
9781
  hydrateChildren(targetNode, vnode, target, parentComponent, parentSuspense, slotScopeIds, optimized);
9733
9782
  }
9734
9783
  }
9784
+ updateCssVars(vnode);
9735
9785
  }
9736
9786
  return vnode.anchor && nextSibling(vnode.anchor);
9737
9787
  }
9738
9788
  // Force-casted public typing for h and TSX props inference
9739
9789
  const Teleport = TeleportImpl;
9790
+ function updateCssVars(vnode) {
9791
+ // presence of .ut method indicates owner component uses css vars.
9792
+ // code path here can assume browser environment.
9793
+ const ctx = vnode.ctx;
9794
+ if (ctx && ctx.ut) {
9795
+ let node = vnode.children[0].el;
9796
+ while (node !== vnode.targetAnchor) {
9797
+ if (node.nodeType === 1)
9798
+ node.setAttribute('data-v-owner', ctx.uid);
9799
+ node = node.nextSibling;
9800
+ }
9801
+ ctx.ut();
9802
+ }
9803
+ }
9740
9804
 
9741
9805
  const normalizedAsyncComponentMap = new Map();
9742
9806
  function convertLegacyAsyncComponent(comp) {
@@ -9891,6 +9955,10 @@ var Vue = (function () {
9891
9955
  function isSameVNodeType(n1, n2) {
9892
9956
  if (n2.shapeFlag & 6 /* ShapeFlags.COMPONENT */ &&
9893
9957
  hmrDirtyComponents.has(n2.type)) {
9958
+ // #7042, ensure the vnode being unmounted during HMR
9959
+ // bitwise operations to remove keep alive flags
9960
+ n1.shapeFlag &= ~256 /* ShapeFlags.COMPONENT_SHOULD_KEEP_ALIVE */;
9961
+ n2.shapeFlag &= ~512 /* ShapeFlags.COMPONENT_KEPT_ALIVE */;
9894
9962
  // HMR only: if the component has been hot-updated, force a reload.
9895
9963
  return false;
9896
9964
  }
@@ -9946,7 +10014,8 @@ var Vue = (function () {
9946
10014
  patchFlag,
9947
10015
  dynamicProps,
9948
10016
  dynamicChildren: null,
9949
- appContext: null
10017
+ appContext: null,
10018
+ ctx: currentRenderingInstance
9950
10019
  };
9951
10020
  if (needFullChildrenNormalization) {
9952
10021
  normalizeChildren(vnode, children);
@@ -9964,7 +10033,7 @@ var Vue = (function () {
9964
10033
  }
9965
10034
  // validate key
9966
10035
  if (vnode.key !== vnode.key) {
9967
- warn$1(`VNode created with invalid key (NaN). VNode type:`, vnode.type);
10036
+ warn(`VNode created with invalid key (NaN). VNode type:`, vnode.type);
9968
10037
  }
9969
10038
  // track vnode for block tree
9970
10039
  if (isBlockTreeEnabled > 0 &&
@@ -9992,7 +10061,7 @@ var Vue = (function () {
9992
10061
  function _createVNode(type, props = null, children = null, patchFlag = 0, dynamicProps = null, isBlockNode = false) {
9993
10062
  if (!type || type === NULL_DYNAMIC_COMPONENT) {
9994
10063
  if (!type) {
9995
- warn$1(`Invalid vnode type when creating vnode: ${type}.`);
10064
+ warn(`Invalid vnode type when creating vnode: ${type}.`);
9996
10065
  }
9997
10066
  type = Comment;
9998
10067
  }
@@ -10054,7 +10123,7 @@ var Vue = (function () {
10054
10123
  : 0;
10055
10124
  if (shapeFlag & 4 /* ShapeFlags.STATEFUL_COMPONENT */ && isProxy(type)) {
10056
10125
  type = toRaw(type);
10057
- warn$1(`Vue received a Component which was made a reactive object. This can ` +
10126
+ warn(`Vue received a Component which was made a reactive object. This can ` +
10058
10127
  `lead to unnecessary performance overhead, and should be avoided by ` +
10059
10128
  `marking the component with \`markRaw\` or using \`shallowRef\` ` +
10060
10129
  `instead of \`ref\`.`, `\nComponent that was made reactive: `, type);
@@ -10121,7 +10190,9 @@ var Vue = (function () {
10121
10190
  ssContent: vnode.ssContent && cloneVNode(vnode.ssContent),
10122
10191
  ssFallback: vnode.ssFallback && cloneVNode(vnode.ssFallback),
10123
10192
  el: vnode.el,
10124
- anchor: vnode.anchor
10193
+ anchor: vnode.anchor,
10194
+ ctx: vnode.ctx,
10195
+ ce: vnode.ce
10125
10196
  };
10126
10197
  {
10127
10198
  defineLegacyVNodeProperties(cloned);
@@ -10291,13 +10362,13 @@ var Vue = (function () {
10291
10362
  }
10292
10363
 
10293
10364
  const emptyAppContext = createAppContext();
10294
- let uid$1 = 0;
10365
+ let uid = 0;
10295
10366
  function createComponentInstance(vnode, parent, suspense) {
10296
10367
  const type = vnode.type;
10297
10368
  // inherit parent app context - or - if root, adopt from root vnode
10298
10369
  const appContext = (parent ? parent.appContext : vnode.appContext) || emptyAppContext;
10299
10370
  const instance = {
10300
- uid: uid$1++,
10371
+ uid: uid++,
10301
10372
  vnode,
10302
10373
  type,
10303
10374
  parent,
@@ -10367,7 +10438,7 @@ var Vue = (function () {
10367
10438
  instance.ctx = createDevRenderContext(instance);
10368
10439
  }
10369
10440
  instance.root = parent ? parent.root : instance;
10370
- instance.emit = emit$2.bind(null, instance);
10441
+ instance.emit = emit.bind(null, instance);
10371
10442
  // apply custom element special handling
10372
10443
  if (vnode.ce) {
10373
10444
  vnode.ce(instance);
@@ -10388,7 +10459,7 @@ var Vue = (function () {
10388
10459
  function validateComponentName(name, config) {
10389
10460
  const appIsNativeTag = config.isNativeTag || NO;
10390
10461
  if (isBuiltInTag(name) || appIsNativeTag(name)) {
10391
- warn$1('Do not use built-in or reserved HTML elements as component id: ' + name);
10462
+ warn('Do not use built-in or reserved HTML elements as component id: ' + name);
10392
10463
  }
10393
10464
  }
10394
10465
  function isStatefulComponent(instance) {
@@ -10427,7 +10498,7 @@ var Vue = (function () {
10427
10498
  }
10428
10499
  }
10429
10500
  if (Component.compilerOptions && isRuntimeOnly()) {
10430
- warn$1(`"compilerOptions" is only supported when using a build of Vue that ` +
10501
+ warn(`"compilerOptions" is only supported when using a build of Vue that ` +
10431
10502
  `includes the runtime compiler. Since you are using a runtime-only ` +
10432
10503
  `build, the options should be passed via your build tool config instead.`);
10433
10504
  }
@@ -10468,7 +10539,7 @@ var Vue = (function () {
10468
10539
  instance.asyncDep = setupResult;
10469
10540
  if (!instance.suspense) {
10470
10541
  const name = (_a = Component.name) !== null && _a !== void 0 ? _a : 'Anonymous';
10471
- warn$1(`Component <${name}>: setup function returned a promise, but no ` +
10542
+ warn(`Component <${name}>: setup function returned a promise, but no ` +
10472
10543
  `<Suspense> boundary was found in the parent component tree. ` +
10473
10544
  `A component with async setup() must be nested in a <Suspense> ` +
10474
10545
  `in order to be rendered.`);
@@ -10492,7 +10563,7 @@ var Vue = (function () {
10492
10563
  }
10493
10564
  else if (isObject(setupResult)) {
10494
10565
  if (isVNode(setupResult)) {
10495
- warn$1(`setup() should not return VNodes directly - ` +
10566
+ warn(`setup() should not return VNodes directly - ` +
10496
10567
  `return a render function instead.`);
10497
10568
  }
10498
10569
  // setup returned bindings.
@@ -10506,7 +10577,7 @@ var Vue = (function () {
10506
10577
  }
10507
10578
  }
10508
10579
  else if (setupResult !== undefined) {
10509
- warn$1(`setup() should return an object. Received: ${setupResult === null ? 'null' : typeof setupResult}`);
10580
+ warn(`setup() should return an object. Received: ${setupResult === null ? 'null' : typeof setupResult}`);
10510
10581
  }
10511
10582
  finishComponentSetup(instance, isSSR);
10512
10583
  }
@@ -10589,13 +10660,13 @@ var Vue = (function () {
10589
10660
  if (!Component.render && instance.render === NOOP && !isSSR) {
10590
10661
  /* istanbul ignore if */
10591
10662
  if (!compile && Component.template) {
10592
- warn$1(`Component provided template option but ` +
10663
+ warn(`Component provided template option but ` +
10593
10664
  `runtime compilation is not supported in this build of Vue.` +
10594
10665
  (` Use "vue.global.js" instead.`
10595
10666
  ) /* should not happen */);
10596
10667
  }
10597
10668
  else {
10598
- warn$1(`Component is missing template or render function.`);
10669
+ warn(`Component is missing template or render function.`);
10599
10670
  }
10600
10671
  }
10601
10672
  }
@@ -10607,11 +10678,11 @@ var Vue = (function () {
10607
10678
  return target[key];
10608
10679
  },
10609
10680
  set() {
10610
- warn$1(`setupContext.attrs is readonly.`);
10681
+ warn(`setupContext.attrs is readonly.`);
10611
10682
  return false;
10612
10683
  },
10613
10684
  deleteProperty() {
10614
- warn$1(`setupContext.attrs is readonly.`);
10685
+ warn(`setupContext.attrs is readonly.`);
10615
10686
  return false;
10616
10687
  }
10617
10688
  }
@@ -10619,8 +10690,24 @@ var Vue = (function () {
10619
10690
  }
10620
10691
  function createSetupContext(instance) {
10621
10692
  const expose = exposed => {
10622
- if (instance.exposed) {
10623
- warn$1(`expose() should be called only once per setup().`);
10693
+ {
10694
+ if (instance.exposed) {
10695
+ warn(`expose() should be called only once per setup().`);
10696
+ }
10697
+ if (exposed != null) {
10698
+ let exposedType = typeof exposed;
10699
+ if (exposedType === 'object') {
10700
+ if (isArray(exposed)) {
10701
+ exposedType = 'array';
10702
+ }
10703
+ else if (isRef(exposed)) {
10704
+ exposedType = 'ref';
10705
+ }
10706
+ }
10707
+ if (exposedType !== 'object') {
10708
+ warn(`expose() should be passed a plain object, received ${exposedType}.`);
10709
+ }
10710
+ }
10624
10711
  }
10625
10712
  instance.exposed = exposed || {};
10626
10713
  };
@@ -10695,13 +10782,13 @@ var Vue = (function () {
10695
10782
  return isFunction(value) && '__vccOpts' in value;
10696
10783
  }
10697
10784
 
10698
- const computed$1 = ((getterOrOptions, debugOptions) => {
10785
+ const computed = ((getterOrOptions, debugOptions) => {
10699
10786
  // @ts-ignore
10700
- return computed(getterOrOptions, debugOptions, isInSSRComponentSetup);
10787
+ return computed$1(getterOrOptions, debugOptions, isInSSRComponentSetup);
10701
10788
  });
10702
10789
 
10703
10790
  // dev only
10704
- const warnRuntimeUsage = (method) => warn$1(`${method}() is a compiler-hint helper that is only usable inside ` +
10791
+ const warnRuntimeUsage = (method) => warn(`${method}() is a compiler-hint helper that is only usable inside ` +
10705
10792
  `<script setup> of a single file component. Its arguments should be ` +
10706
10793
  `compiled away and passing it at runtime has no effect.`);
10707
10794
  // implementation
@@ -10768,7 +10855,7 @@ var Vue = (function () {
10768
10855
  function getContext() {
10769
10856
  const i = getCurrentInstance();
10770
10857
  if (!i) {
10771
- warn$1(`useContext() called without active instance.`);
10858
+ warn(`useContext() called without active instance.`);
10772
10859
  }
10773
10860
  return i.setupContext || (i.setupContext = createSetupContext(i));
10774
10861
  }
@@ -10795,7 +10882,7 @@ var Vue = (function () {
10795
10882
  props[key] = { default: defaults[key] };
10796
10883
  }
10797
10884
  else {
10798
- warn$1(`props default key "${key}" has no corresponding declaration.`);
10885
+ warn(`props default key "${key}" has no corresponding declaration.`);
10799
10886
  }
10800
10887
  }
10801
10888
  return props;
@@ -10838,7 +10925,7 @@ var Vue = (function () {
10838
10925
  function withAsyncContext(getAwaitable) {
10839
10926
  const ctx = getCurrentInstance();
10840
10927
  if (!ctx) {
10841
- warn$1(`withAsyncContext called without active current instance. ` +
10928
+ warn(`withAsyncContext called without active current instance. ` +
10842
10929
  `This is likely a bug.`);
10843
10930
  }
10844
10931
  let awaitable = getAwaitable();
@@ -10883,7 +10970,7 @@ var Vue = (function () {
10883
10970
  const ssrContextKey = Symbol(`ssrContext` );
10884
10971
  const useSSRContext = () => {
10885
10972
  {
10886
- warn$1(`useSSRContext() is not supported in the global build.`);
10973
+ warn(`useSSRContext() is not supported in the global build.`);
10887
10974
  }
10888
10975
  };
10889
10976
 
@@ -11104,7 +11191,7 @@ var Vue = (function () {
11104
11191
  }
11105
11192
 
11106
11193
  // Core API ------------------------------------------------------------------
11107
- const version = "3.2.44";
11194
+ const version = "3.2.46";
11108
11195
  /**
11109
11196
  * SSR utils for \@vue/server-renderer. Only exposed in ssr-possible builds.
11110
11197
  * @internal
@@ -11113,10 +11200,10 @@ var Vue = (function () {
11113
11200
  /**
11114
11201
  * @internal only exposed in compat builds
11115
11202
  */
11116
- const resolveFilter$1 = resolveFilter ;
11203
+ const resolveFilter = resolveFilter$1 ;
11117
11204
  const _compatUtils = {
11118
11205
  warnDeprecation,
11119
- createCompatVue,
11206
+ createCompatVue: createCompatVue$1,
11120
11207
  isCompatEnabled,
11121
11208
  checkCompatEnabled,
11122
11209
  softAssertCompatEnabled
@@ -11228,9 +11315,6 @@ var Vue = (function () {
11228
11315
  const style = el.style;
11229
11316
  const isCssString = isString(next);
11230
11317
  if (next && !isCssString) {
11231
- for (const key in next) {
11232
- setStyle(style, key, next[key]);
11233
- }
11234
11318
  if (prev && !isString(prev)) {
11235
11319
  for (const key in prev) {
11236
11320
  if (next[key] == null) {
@@ -11238,6 +11322,9 @@ var Vue = (function () {
11238
11322
  }
11239
11323
  }
11240
11324
  }
11325
+ for (const key in next) {
11326
+ setStyle(style, key, next[key]);
11327
+ }
11241
11328
  }
11242
11329
  else {
11243
11330
  const currentDisplay = style.display;
@@ -11268,7 +11355,7 @@ var Vue = (function () {
11268
11355
  val = '';
11269
11356
  {
11270
11357
  if (semicolonRE.test(val)) {
11271
- warn$1(`Unexpected semicolon at the end of '${name}' style value: '${val}'`);
11358
+ warn(`Unexpected semicolon at the end of '${name}' style value: '${val}'`);
11272
11359
  }
11273
11360
  }
11274
11361
  if (name.startsWith('--')) {
@@ -11430,7 +11517,7 @@ var Vue = (function () {
11430
11517
  catch (e) {
11431
11518
  // do not warn if value is auto-coerced from nullish values
11432
11519
  if (!needRemove) {
11433
- warn$1(`Failed setting prop "${key}" on <${el.tagName.toLowerCase()}>: ` +
11520
+ warn(`Failed setting prop "${key}" on <${el.tagName.toLowerCase()}>: ` +
11434
11521
  `value ${value} is invalid.`, e);
11435
11522
  }
11436
11523
  }
@@ -11634,16 +11721,25 @@ var Vue = (function () {
11634
11721
  }
11635
11722
  else {
11636
11723
  if (this.shadowRoot) {
11637
- warn$1(`Custom element has pre-rendered declarative shadow root but is not ` +
11724
+ warn(`Custom element has pre-rendered declarative shadow root but is not ` +
11638
11725
  `defined as hydratable. Use \`defineSSRCustomElement\`.`);
11639
11726
  }
11640
11727
  this.attachShadow({ mode: 'open' });
11728
+ if (!this._def.__asyncLoader) {
11729
+ // for sync component defs we can immediately resolve props
11730
+ this._resolveProps(this._def);
11731
+ }
11641
11732
  }
11642
11733
  }
11643
11734
  connectedCallback() {
11644
11735
  this._connected = true;
11645
11736
  if (!this._instance) {
11646
- this._resolveDef();
11737
+ if (this._resolved) {
11738
+ this._update();
11739
+ }
11740
+ else {
11741
+ this._resolveDef();
11742
+ }
11647
11743
  }
11648
11744
  }
11649
11745
  disconnectedCallback() {
@@ -11659,9 +11755,6 @@ var Vue = (function () {
11659
11755
  * resolve inner component definition (handle possible async component)
11660
11756
  */
11661
11757
  _resolveDef() {
11662
- if (this._resolved) {
11663
- return;
11664
- }
11665
11758
  this._resolved = true;
11666
11759
  // set initial attrs
11667
11760
  for (let i = 0; i < this.attributes.length; i++) {
@@ -11673,38 +11766,26 @@ var Vue = (function () {
11673
11766
  this._setAttr(m.attributeName);
11674
11767
  }
11675
11768
  }).observe(this, { attributes: true });
11676
- const resolve = (def) => {
11677
- const { props = {}, styles } = def;
11678
- const hasOptions = !isArray(props);
11679
- const rawKeys = props ? (hasOptions ? Object.keys(props) : props) : [];
11769
+ const resolve = (def, isAsync = false) => {
11770
+ const { props, styles } = def;
11680
11771
  // cast Number-type props set before resolve
11681
11772
  let numberProps;
11682
- if (hasOptions) {
11683
- for (const key in this._props) {
11773
+ if (props && !isArray(props)) {
11774
+ for (const key in props) {
11684
11775
  const opt = props[key];
11685
11776
  if (opt === Number || (opt && opt.type === Number)) {
11686
- this._props[key] = toNumber(this._props[key]);
11687
- (numberProps || (numberProps = Object.create(null)))[key] = true;
11777
+ if (key in this._props) {
11778
+ this._props[key] = toNumber(this._props[key]);
11779
+ }
11780
+ (numberProps || (numberProps = Object.create(null)))[camelize(key)] = true;
11688
11781
  }
11689
11782
  }
11690
11783
  }
11691
11784
  this._numberProps = numberProps;
11692
- // check if there are props set pre-upgrade or connect
11693
- for (const key of Object.keys(this)) {
11694
- if (key[0] !== '_') {
11695
- this._setProp(key, this[key], true, false);
11696
- }
11697
- }
11698
- // defining getter/setters on prototype
11699
- for (const key of rawKeys.map(camelize)) {
11700
- Object.defineProperty(this, key, {
11701
- get() {
11702
- return this._getProp(key);
11703
- },
11704
- set(val) {
11705
- this._setProp(key, val);
11706
- }
11707
- });
11785
+ if (isAsync) {
11786
+ // defining getter/setters on prototype
11787
+ // for sync defs, this already happened in the constructor
11788
+ this._resolveProps(def);
11708
11789
  }
11709
11790
  // apply CSS
11710
11791
  this._applyStyles(styles);
@@ -11713,12 +11794,33 @@ var Vue = (function () {
11713
11794
  };
11714
11795
  const asyncDef = this._def.__asyncLoader;
11715
11796
  if (asyncDef) {
11716
- asyncDef().then(resolve);
11797
+ asyncDef().then(def => resolve(def, true));
11717
11798
  }
11718
11799
  else {
11719
11800
  resolve(this._def);
11720
11801
  }
11721
11802
  }
11803
+ _resolveProps(def) {
11804
+ const { props } = def;
11805
+ const declaredPropKeys = isArray(props) ? props : Object.keys(props || {});
11806
+ // check if there are props set pre-upgrade or connect
11807
+ for (const key of Object.keys(this)) {
11808
+ if (key[0] !== '_' && declaredPropKeys.includes(key)) {
11809
+ this._setProp(key, this[key], true, false);
11810
+ }
11811
+ }
11812
+ // defining getter/setters on prototype
11813
+ for (const key of declaredPropKeys.map(camelize)) {
11814
+ Object.defineProperty(this, key, {
11815
+ get() {
11816
+ return this._getProp(key);
11817
+ },
11818
+ set(val) {
11819
+ this._setProp(key, val);
11820
+ }
11821
+ });
11822
+ }
11823
+ }
11722
11824
  _setAttr(key) {
11723
11825
  let value = this.getAttribute(key);
11724
11826
  const camelKey = camelize(key);
@@ -11774,27 +11876,31 @@ var Vue = (function () {
11774
11876
  this._styles.length = 0;
11775
11877
  }
11776
11878
  this._applyStyles(newStyles);
11777
- // if this is an async component, ceReload is called from the inner
11778
- // component so no need to reload the async wrapper
11779
- if (!this._def.__asyncLoader) {
11780
- // reload
11781
- this._instance = null;
11782
- this._update();
11783
- }
11879
+ this._instance = null;
11880
+ this._update();
11784
11881
  };
11785
11882
  }
11786
- // intercept emit
11787
- instance.emit = (event, ...args) => {
11883
+ const dispatch = (event, args) => {
11788
11884
  this.dispatchEvent(new CustomEvent(event, {
11789
11885
  detail: args
11790
11886
  }));
11791
11887
  };
11888
+ // intercept emit
11889
+ instance.emit = (event, ...args) => {
11890
+ // dispatch both the raw and hyphenated versions of an event
11891
+ // to match Vue behavior
11892
+ dispatch(event, args);
11893
+ if (hyphenate(event) !== event) {
11894
+ dispatch(hyphenate(event), args);
11895
+ }
11896
+ };
11792
11897
  // locate nearest Vue custom element parent for provide/inject
11793
11898
  let parent = this;
11794
11899
  while ((parent =
11795
11900
  parent && (parent.parentNode || parent.host))) {
11796
11901
  if (parent instanceof VueElement) {
11797
11902
  instance.parent = parent._instance;
11903
+ instance.provides = parent._instance.provides;
11798
11904
  break;
11799
11905
  }
11800
11906
  }
@@ -11821,7 +11927,7 @@ var Vue = (function () {
11821
11927
  /* istanbul ignore else */
11822
11928
  {
11823
11929
  {
11824
- warn$1(`useCssModule() is not supported in the global build.`);
11930
+ warn(`useCssModule() is not supported in the global build.`);
11825
11931
  }
11826
11932
  return EMPTY_OBJ;
11827
11933
  }
@@ -11835,10 +11941,17 @@ var Vue = (function () {
11835
11941
  const instance = getCurrentInstance();
11836
11942
  /* istanbul ignore next */
11837
11943
  if (!instance) {
11838
- warn$1(`useCssVars is called without current active component instance.`);
11944
+ warn(`useCssVars is called without current active component instance.`);
11839
11945
  return;
11840
11946
  }
11841
- const setVars = () => setVarsOnVNode(instance.subTree, getter(instance.proxy));
11947
+ const updateTeleports = (instance.ut = (vars = getter(instance.proxy)) => {
11948
+ Array.from(document.querySelectorAll(`[data-v-owner="${instance.uid}"]`)).forEach(node => setVarsOnNode(node, vars));
11949
+ });
11950
+ const setVars = () => {
11951
+ const vars = getter(instance.proxy);
11952
+ setVarsOnVNode(instance.subTree, vars);
11953
+ updateTeleports(vars);
11954
+ };
11842
11955
  watchPostEffect(setVars);
11843
11956
  onMounted(() => {
11844
11957
  const ob = new MutationObserver(setVars);
@@ -11918,7 +12031,7 @@ var Vue = (function () {
11918
12031
  * #3227 Incoming hooks may be merged into arrays when wrapping Transition
11919
12032
  * with custom HOCs.
11920
12033
  */
11921
- const callHook$1 = (hook, args = []) => {
12034
+ const callHook = (hook, args = []) => {
11922
12035
  if (isArray(hook)) {
11923
12036
  hook.forEach(h => h(...args));
11924
12037
  }
@@ -11985,11 +12098,16 @@ var Vue = (function () {
11985
12098
  return (el, done) => {
11986
12099
  const hook = isAppear ? onAppear : onEnter;
11987
12100
  const resolve = () => finishEnter(el, isAppear, done);
11988
- callHook$1(hook, [el, resolve]);
12101
+ callHook(hook, [el, resolve]);
11989
12102
  nextFrame(() => {
11990
12103
  removeTransitionClass(el, isAppear ? appearFromClass : enterFromClass);
11991
12104
  if (legacyClassEnabled) {
11992
- removeTransitionClass(el, isAppear ? legacyAppearFromClass : legacyEnterFromClass);
12105
+ const legacyClass = isAppear
12106
+ ? legacyAppearFromClass
12107
+ : legacyEnterFromClass;
12108
+ if (legacyClass) {
12109
+ removeTransitionClass(el, legacyClass);
12110
+ }
11993
12111
  }
11994
12112
  addTransitionClass(el, isAppear ? appearToClass : enterToClass);
11995
12113
  if (!hasExplicitCallback(hook)) {
@@ -12000,17 +12118,17 @@ var Vue = (function () {
12000
12118
  };
12001
12119
  return extend(baseProps, {
12002
12120
  onBeforeEnter(el) {
12003
- callHook$1(onBeforeEnter, [el]);
12121
+ callHook(onBeforeEnter, [el]);
12004
12122
  addTransitionClass(el, enterFromClass);
12005
- if (legacyClassEnabled) {
12123
+ if (legacyClassEnabled && legacyEnterFromClass) {
12006
12124
  addTransitionClass(el, legacyEnterFromClass);
12007
12125
  }
12008
12126
  addTransitionClass(el, enterActiveClass);
12009
12127
  },
12010
12128
  onBeforeAppear(el) {
12011
- callHook$1(onBeforeAppear, [el]);
12129
+ callHook(onBeforeAppear, [el]);
12012
12130
  addTransitionClass(el, appearFromClass);
12013
- if (legacyClassEnabled) {
12131
+ if (legacyClassEnabled && legacyAppearFromClass) {
12014
12132
  addTransitionClass(el, legacyAppearFromClass);
12015
12133
  }
12016
12134
  addTransitionClass(el, appearActiveClass);
@@ -12021,7 +12139,7 @@ var Vue = (function () {
12021
12139
  el._isLeaving = true;
12022
12140
  const resolve = () => finishLeave(el, done);
12023
12141
  addTransitionClass(el, leaveFromClass);
12024
- if (legacyClassEnabled) {
12142
+ if (legacyClassEnabled && legacyLeaveFromClass) {
12025
12143
  addTransitionClass(el, legacyLeaveFromClass);
12026
12144
  }
12027
12145
  // force reflow so *-leave-from classes immediately take effect (#2593)
@@ -12033,7 +12151,7 @@ var Vue = (function () {
12033
12151
  return;
12034
12152
  }
12035
12153
  removeTransitionClass(el, leaveFromClass);
12036
- if (legacyClassEnabled) {
12154
+ if (legacyClassEnabled && legacyLeaveFromClass) {
12037
12155
  removeTransitionClass(el, legacyLeaveFromClass);
12038
12156
  }
12039
12157
  addTransitionClass(el, leaveToClass);
@@ -12041,19 +12159,19 @@ var Vue = (function () {
12041
12159
  whenTransitionEnds(el, type, leaveDuration, resolve);
12042
12160
  }
12043
12161
  });
12044
- callHook$1(onLeave, [el, resolve]);
12162
+ callHook(onLeave, [el, resolve]);
12045
12163
  },
12046
12164
  onEnterCancelled(el) {
12047
12165
  finishEnter(el, false);
12048
- callHook$1(onEnterCancelled, [el]);
12166
+ callHook(onEnterCancelled, [el]);
12049
12167
  },
12050
12168
  onAppearCancelled(el) {
12051
12169
  finishEnter(el, true);
12052
- callHook$1(onAppearCancelled, [el]);
12170
+ callHook(onAppearCancelled, [el]);
12053
12171
  },
12054
12172
  onLeaveCancelled(el) {
12055
12173
  finishLeave(el);
12056
- callHook$1(onLeaveCancelled, [el]);
12174
+ callHook(onLeaveCancelled, [el]);
12057
12175
  }
12058
12176
  });
12059
12177
  }
@@ -12071,18 +12189,10 @@ var Vue = (function () {
12071
12189
  }
12072
12190
  function NumberOf(val) {
12073
12191
  const res = toNumber(val);
12074
- validateDuration(res);
12075
- return res;
12076
- }
12077
- function validateDuration(val) {
12078
- if (typeof val !== 'number') {
12079
- warn$1(`<transition> explicit duration is not a valid number - ` +
12080
- `got ${JSON.stringify(val)}.`);
12081
- }
12082
- else if (isNaN(val)) {
12083
- warn$1(`<transition> explicit duration is NaN - ` +
12084
- 'the duration expression might be incorrect.');
12192
+ {
12193
+ assertNumber(res, '<transition> explicit duration');
12085
12194
  }
12195
+ return res;
12086
12196
  }
12087
12197
  function addTransitionClass(el, cls) {
12088
12198
  cls.split(/\s+/).forEach(c => c && el.classList.add(c));
@@ -12269,7 +12379,7 @@ var Vue = (function () {
12269
12379
  setTransitionHooks(child, resolveTransitionHooks(child, cssTransitionProps, state, instance));
12270
12380
  }
12271
12381
  else {
12272
- warn$1(`<TransitionGroup> children must be keyed.`);
12382
+ warn(`<TransitionGroup> children must be keyed.`);
12273
12383
  }
12274
12384
  }
12275
12385
  if (prevChildren) {
@@ -12286,6 +12396,14 @@ var Vue = (function () {
12286
12396
  {
12287
12397
  TransitionGroupImpl.__isBuiltIn = true;
12288
12398
  }
12399
+ /**
12400
+ * TransitionGroup does not support "mode" so we need to remove it from the
12401
+ * props declarations, but direct delete operation is considered a side effect
12402
+ * and will make the entire transition feature non-tree-shakeable, so we do it
12403
+ * in a function and mark the function's invocation as pure.
12404
+ */
12405
+ const removeMode = (props) => delete props.mode;
12406
+ /*#__PURE__*/ removeMode(TransitionGroupImpl.props);
12289
12407
  const TransitionGroup = TransitionGroupImpl;
12290
12408
  function callPendingCbs(c) {
12291
12409
  const el = c.el;
@@ -12361,7 +12479,7 @@ var Vue = (function () {
12361
12479
  domValue = domValue.trim();
12362
12480
  }
12363
12481
  if (castToNumber) {
12364
- domValue = toNumber(domValue);
12482
+ domValue = looseToNumber(domValue);
12365
12483
  }
12366
12484
  el._assign(domValue);
12367
12485
  });
@@ -12396,7 +12514,8 @@ var Vue = (function () {
12396
12514
  if (trim && el.value.trim() === value) {
12397
12515
  return;
12398
12516
  }
12399
- if ((number || el.type === 'number') && toNumber(el.value) === value) {
12517
+ if ((number || el.type === 'number') &&
12518
+ looseToNumber(el.value) === value) {
12400
12519
  return;
12401
12520
  }
12402
12521
  }
@@ -12485,7 +12604,7 @@ var Vue = (function () {
12485
12604
  addEventListener(el, 'change', () => {
12486
12605
  const selectedVal = Array.prototype.filter
12487
12606
  .call(el.options, (o) => o.selected)
12488
- .map((o) => number ? toNumber(getValue(o)) : getValue(o));
12607
+ .map((o) => number ? looseToNumber(getValue(o)) : getValue(o));
12489
12608
  el._assign(el.multiple
12490
12609
  ? isSetModel
12491
12610
  ? new Set(selectedVal)
@@ -12509,7 +12628,7 @@ var Vue = (function () {
12509
12628
  function setSelected(el, value) {
12510
12629
  const isMultiple = el.multiple;
12511
12630
  if (isMultiple && !isArray(value) && !isSet(value)) {
12512
- warn$1(`<select multiple v-model> expects an Array or Set value for its binding, ` +
12631
+ warn(`<select multiple v-model> expects an Array or Set value for its binding, ` +
12513
12632
  `but got ${Object.prototype.toString.call(value).slice(8, -1)}.`);
12514
12633
  return;
12515
12634
  }
@@ -12805,7 +12924,7 @@ var Vue = (function () {
12805
12924
  return isCustomElement;
12806
12925
  },
12807
12926
  set() {
12808
- warn$1(`The \`isCustomElement\` config option is deprecated. Use ` +
12927
+ warn(`The \`isCustomElement\` config option is deprecated. Use ` +
12809
12928
  `\`compilerOptions.isCustomElement\` instead.`);
12810
12929
  }
12811
12930
  });
@@ -12819,11 +12938,11 @@ var Vue = (function () {
12819
12938
  `- For vite: pass it via @vitejs/plugin-vue options. See https://github.com/vitejs/vite/tree/main/packages/plugin-vue#example-for-passing-options-to-vuecompiler-dom`;
12820
12939
  Object.defineProperty(app.config, 'compilerOptions', {
12821
12940
  get() {
12822
- warn$1(msg);
12941
+ warn(msg);
12823
12942
  return compilerOptions;
12824
12943
  },
12825
12944
  set() {
12826
- warn$1(msg);
12945
+ warn(msg);
12827
12946
  }
12828
12947
  });
12829
12948
  }
@@ -12832,14 +12951,14 @@ var Vue = (function () {
12832
12951
  if (isString(container)) {
12833
12952
  const res = document.querySelector(container);
12834
12953
  if (!res) {
12835
- warn$1(`Failed to mount app: mount target selector "${container}" returned null.`);
12954
+ warn(`Failed to mount app: mount target selector "${container}" returned null.`);
12836
12955
  }
12837
12956
  return res;
12838
12957
  }
12839
12958
  if (window.ShadowRoot &&
12840
12959
  container instanceof window.ShadowRoot &&
12841
12960
  container.mode === 'closed') {
12842
- warn$1(`mounting on a ShadowRoot with \`{mode: "closed"}\` may lead to unpredictable bugs`);
12961
+ warn(`mounting on a ShadowRoot with \`{mode: "closed"}\` may lead to unpredictable bugs`);
12843
12962
  }
12844
12963
  return container;
12845
12964
  }
@@ -12850,150 +12969,151 @@ var Vue = (function () {
12850
12969
 
12851
12970
  var runtimeDom = /*#__PURE__*/Object.freeze({
12852
12971
  __proto__: null,
12853
- render: render,
12854
- hydrate: hydrate,
12972
+ BaseTransition: BaseTransition,
12973
+ Comment: Comment,
12974
+ EffectScope: EffectScope,
12975
+ Fragment: Fragment,
12976
+ KeepAlive: KeepAlive,
12977
+ ReactiveEffect: ReactiveEffect,
12978
+ Static: Static,
12979
+ Suspense: Suspense,
12980
+ Teleport: Teleport,
12981
+ Text: Text,
12982
+ Transition: Transition,
12983
+ TransitionGroup: TransitionGroup,
12984
+ VueElement: VueElement,
12985
+ assertNumber: assertNumber,
12986
+ callWithAsyncErrorHandling: callWithAsyncErrorHandling,
12987
+ callWithErrorHandling: callWithErrorHandling,
12988
+ camelize: camelize,
12989
+ capitalize: capitalize,
12990
+ cloneVNode: cloneVNode,
12991
+ compatUtils: compatUtils,
12992
+ computed: computed,
12855
12993
  createApp: createApp,
12994
+ createBlock: createBlock,
12995
+ createCommentVNode: createCommentVNode,
12996
+ createElementBlock: createElementBlock,
12997
+ createElementVNode: createBaseVNode,
12998
+ createHydrationRenderer: createHydrationRenderer,
12999
+ createPropsRestProxy: createPropsRestProxy,
13000
+ createRenderer: createRenderer,
12856
13001
  createSSRApp: createSSRApp,
12857
- initDirectivesForSSR: initDirectivesForSSR,
13002
+ createSlots: createSlots,
13003
+ createStaticVNode: createStaticVNode,
13004
+ createTextVNode: createTextVNode,
13005
+ createVNode: createVNode,
13006
+ customRef: customRef,
13007
+ defineAsyncComponent: defineAsyncComponent,
13008
+ defineComponent: defineComponent,
12858
13009
  defineCustomElement: defineCustomElement,
13010
+ defineEmits: defineEmits,
13011
+ defineExpose: defineExpose,
13012
+ defineProps: defineProps,
12859
13013
  defineSSRCustomElement: defineSSRCustomElement,
12860
- VueElement: VueElement,
12861
- useCssModule: useCssModule,
12862
- useCssVars: useCssVars,
12863
- Transition: Transition,
12864
- TransitionGroup: TransitionGroup,
12865
- vModelText: vModelText,
12866
- vModelCheckbox: vModelCheckbox,
12867
- vModelRadio: vModelRadio,
12868
- vModelSelect: vModelSelect,
12869
- vModelDynamic: vModelDynamic,
12870
- withModifiers: withModifiers,
12871
- withKeys: withKeys,
12872
- vShow: vShow,
12873
- reactive: reactive,
12874
- ref: ref,
12875
- readonly: readonly,
12876
- unref: unref,
12877
- proxyRefs: proxyRefs,
12878
- isRef: isRef,
12879
- toRef: toRef,
12880
- toRefs: toRefs,
13014
+ get devtools () { return devtools; },
13015
+ effect: effect,
13016
+ effectScope: effectScope,
13017
+ getCurrentInstance: getCurrentInstance,
13018
+ getCurrentScope: getCurrentScope,
13019
+ getTransitionRawChildren: getTransitionRawChildren,
13020
+ guardReactiveProps: guardReactiveProps,
13021
+ h: h,
13022
+ handleError: handleError,
13023
+ hydrate: hydrate,
13024
+ initCustomFormatter: initCustomFormatter,
13025
+ initDirectivesForSSR: initDirectivesForSSR,
13026
+ inject: inject,
13027
+ isMemoSame: isMemoSame,
12881
13028
  isProxy: isProxy,
12882
13029
  isReactive: isReactive,
12883
13030
  isReadonly: isReadonly,
13031
+ isRef: isRef,
13032
+ isRuntimeOnly: isRuntimeOnly,
12884
13033
  isShallow: isShallow,
12885
- customRef: customRef,
12886
- triggerRef: triggerRef,
12887
- shallowRef: shallowRef,
12888
- shallowReactive: shallowReactive,
12889
- shallowReadonly: shallowReadonly,
13034
+ isVNode: isVNode,
12890
13035
  markRaw: markRaw,
12891
- toRaw: toRaw,
12892
- effect: effect,
12893
- stop: stop,
12894
- ReactiveEffect: ReactiveEffect,
12895
- effectScope: effectScope,
12896
- EffectScope: EffectScope,
12897
- getCurrentScope: getCurrentScope,
12898
- onScopeDispose: onScopeDispose,
12899
- computed: computed$1,
12900
- watch: watch,
12901
- watchEffect: watchEffect,
12902
- watchPostEffect: watchPostEffect,
12903
- watchSyncEffect: watchSyncEffect,
13036
+ mergeDefaults: mergeDefaults,
13037
+ mergeProps: mergeProps,
13038
+ nextTick: nextTick,
13039
+ normalizeClass: normalizeClass,
13040
+ normalizeProps: normalizeProps,
13041
+ normalizeStyle: normalizeStyle,
13042
+ onActivated: onActivated,
12904
13043
  onBeforeMount: onBeforeMount,
12905
- onMounted: onMounted,
12906
- onBeforeUpdate: onBeforeUpdate,
12907
- onUpdated: onUpdated,
12908
13044
  onBeforeUnmount: onBeforeUnmount,
12909
- onUnmounted: onUnmounted,
12910
- onActivated: onActivated,
13045
+ onBeforeUpdate: onBeforeUpdate,
12911
13046
  onDeactivated: onDeactivated,
13047
+ onErrorCaptured: onErrorCaptured,
13048
+ onMounted: onMounted,
12912
13049
  onRenderTracked: onRenderTracked,
12913
13050
  onRenderTriggered: onRenderTriggered,
12914
- onErrorCaptured: onErrorCaptured,
13051
+ onScopeDispose: onScopeDispose,
12915
13052
  onServerPrefetch: onServerPrefetch,
13053
+ onUnmounted: onUnmounted,
13054
+ onUpdated: onUpdated,
13055
+ openBlock: openBlock,
13056
+ popScopeId: popScopeId,
12916
13057
  provide: provide,
12917
- inject: inject,
12918
- nextTick: nextTick,
12919
- defineComponent: defineComponent,
12920
- defineAsyncComponent: defineAsyncComponent,
12921
- useAttrs: useAttrs,
12922
- useSlots: useSlots,
12923
- defineProps: defineProps,
12924
- defineEmits: defineEmits,
12925
- defineExpose: defineExpose,
12926
- withDefaults: withDefaults,
12927
- mergeDefaults: mergeDefaults,
12928
- createPropsRestProxy: createPropsRestProxy,
12929
- withAsyncContext: withAsyncContext,
12930
- getCurrentInstance: getCurrentInstance,
12931
- h: h,
12932
- createVNode: createVNode,
12933
- cloneVNode: cloneVNode,
12934
- mergeProps: mergeProps,
12935
- isVNode: isVNode,
12936
- Fragment: Fragment,
12937
- Text: Text,
12938
- Comment: Comment,
12939
- Static: Static,
12940
- Teleport: Teleport,
12941
- Suspense: Suspense,
12942
- KeepAlive: KeepAlive,
12943
- BaseTransition: BaseTransition,
12944
- withDirectives: withDirectives,
12945
- useSSRContext: useSSRContext,
12946
- ssrContextKey: ssrContextKey,
12947
- createRenderer: createRenderer,
12948
- createHydrationRenderer: createHydrationRenderer,
13058
+ proxyRefs: proxyRefs,
13059
+ pushScopeId: pushScopeId,
12949
13060
  queuePostFlushCb: queuePostFlushCb,
12950
- warn: warn$1,
12951
- handleError: handleError,
12952
- callWithErrorHandling: callWithErrorHandling,
12953
- callWithAsyncErrorHandling: callWithAsyncErrorHandling,
13061
+ reactive: reactive,
13062
+ readonly: readonly,
13063
+ ref: ref,
13064
+ registerRuntimeCompiler: registerRuntimeCompiler,
13065
+ render: render,
13066
+ renderList: renderList,
13067
+ renderSlot: renderSlot,
12954
13068
  resolveComponent: resolveComponent,
12955
13069
  resolveDirective: resolveDirective,
12956
13070
  resolveDynamicComponent: resolveDynamicComponent,
12957
- registerRuntimeCompiler: registerRuntimeCompiler,
12958
- isRuntimeOnly: isRuntimeOnly,
12959
- useTransitionState: useTransitionState,
13071
+ resolveFilter: resolveFilter,
12960
13072
  resolveTransitionHooks: resolveTransitionHooks,
12961
- setTransitionHooks: setTransitionHooks,
12962
- getTransitionRawChildren: getTransitionRawChildren,
12963
- initCustomFormatter: initCustomFormatter,
12964
- get devtools () { return devtools; },
12965
- setDevtoolsHook: setDevtoolsHook,
12966
- withCtx: withCtx,
12967
- pushScopeId: pushScopeId,
12968
- popScopeId: popScopeId,
12969
- withScopeId: withScopeId,
12970
- renderList: renderList,
12971
- toHandlers: toHandlers,
12972
- renderSlot: renderSlot,
12973
- createSlots: createSlots,
12974
- withMemo: withMemo,
12975
- isMemoSame: isMemoSame,
12976
- openBlock: openBlock,
12977
- createBlock: createBlock,
12978
13073
  setBlockTracking: setBlockTracking,
12979
- createTextVNode: createTextVNode,
12980
- createCommentVNode: createCommentVNode,
12981
- createStaticVNode: createStaticVNode,
12982
- createElementVNode: createBaseVNode,
12983
- createElementBlock: createElementBlock,
12984
- guardReactiveProps: guardReactiveProps,
13074
+ setDevtoolsHook: setDevtoolsHook,
13075
+ setTransitionHooks: setTransitionHooks,
13076
+ shallowReactive: shallowReactive,
13077
+ shallowReadonly: shallowReadonly,
13078
+ shallowRef: shallowRef,
13079
+ ssrContextKey: ssrContextKey,
13080
+ ssrUtils: ssrUtils,
13081
+ stop: stop,
12985
13082
  toDisplayString: toDisplayString,
12986
- camelize: camelize,
12987
- capitalize: capitalize,
12988
13083
  toHandlerKey: toHandlerKey,
12989
- normalizeProps: normalizeProps,
12990
- normalizeClass: normalizeClass,
12991
- normalizeStyle: normalizeStyle,
13084
+ toHandlers: toHandlers,
13085
+ toRaw: toRaw,
13086
+ toRef: toRef,
13087
+ toRefs: toRefs,
12992
13088
  transformVNodeArgs: transformVNodeArgs,
13089
+ triggerRef: triggerRef,
13090
+ unref: unref,
13091
+ useAttrs: useAttrs,
13092
+ useCssModule: useCssModule,
13093
+ useCssVars: useCssVars,
13094
+ useSSRContext: useSSRContext,
13095
+ useSlots: useSlots,
13096
+ useTransitionState: useTransitionState,
13097
+ vModelCheckbox: vModelCheckbox,
13098
+ vModelDynamic: vModelDynamic,
13099
+ vModelRadio: vModelRadio,
13100
+ vModelSelect: vModelSelect,
13101
+ vModelText: vModelText,
13102
+ vShow: vShow,
12993
13103
  version: version,
12994
- ssrUtils: ssrUtils,
12995
- resolveFilter: resolveFilter$1,
12996
- compatUtils: compatUtils
13104
+ warn: warn,
13105
+ watch: watch,
13106
+ watchEffect: watchEffect,
13107
+ watchPostEffect: watchPostEffect,
13108
+ watchSyncEffect: watchSyncEffect,
13109
+ withAsyncContext: withAsyncContext,
13110
+ withCtx: withCtx,
13111
+ withDefaults: withDefaults,
13112
+ withDirectives: withDirectives,
13113
+ withKeys: withKeys,
13114
+ withMemo: withMemo,
13115
+ withModifiers: withModifiers,
13116
+ withScopeId: withScopeId
12997
13117
  });
12998
13118
 
12999
13119
  function initDev() {
@@ -13027,17 +13147,17 @@ var Vue = (function () {
13027
13147
  }
13028
13148
  return app;
13029
13149
  }
13030
- function createCompatVue$1() {
13150
+ function createCompatVue() {
13031
13151
  const Vue = compatUtils.createCompatVue(createApp, wrappedCreateApp);
13032
13152
  extend(Vue, runtimeDom);
13033
13153
  return Vue;
13034
13154
  }
13035
13155
 
13036
13156
  // This entry exports the runtime only, and is built as
13037
- const Vue = createCompatVue$1();
13157
+ const Vue = createCompatVue();
13038
13158
  Vue.compile = (() => {
13039
13159
  {
13040
- warn$1(`Runtime compilation is not supported in this build of Vue.` +
13160
+ warn(`Runtime compilation is not supported in this build of Vue.` +
13041
13161
  (` Use "vue.global.js" instead.`
13042
13162
  ) /* should not happen */);
13043
13163
  }
@@ -13045,4 +13165,4 @@ var Vue = (function () {
13045
13165
 
13046
13166
  return Vue;
13047
13167
 
13048
- }());
13168
+ })();