@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.
@@ -96,7 +96,7 @@ function normalizeProps(props) {
96
96
  // These tag configs are shared between compiler-dom and runtime-dom, so they
97
97
  // https://developer.mozilla.org/en-US/docs/Web/HTML/Element
98
98
  const HTML_TAGS = 'html,body,base,head,link,meta,style,title,address,article,aside,footer,' +
99
- 'header,h1,h2,h3,h4,h5,h6,nav,section,div,dd,dl,dt,figcaption,' +
99
+ 'header,hgroup,h1,h2,h3,h4,h5,h6,nav,section,div,dd,dl,dt,figcaption,' +
100
100
  'figure,picture,hr,img,li,main,ol,p,pre,ul,a,b,abbr,bdi,bdo,br,cite,code,' +
101
101
  'data,dfn,em,i,kbd,mark,q,rp,rt,ruby,s,samp,small,span,strong,sub,sup,' +
102
102
  'time,u,var,wbr,area,audio,map,track,video,embed,object,param,source,' +
@@ -108,7 +108,7 @@ const HTML_TAGS = 'html,body,base,head,link,meta,style,title,address,article,asi
108
108
  const SVG_TAGS = 'svg,animate,animateMotion,animateTransform,circle,clipPath,color-profile,' +
109
109
  'defs,desc,discard,ellipse,feBlend,feColorMatrix,feComponentTransfer,' +
110
110
  'feComposite,feConvolveMatrix,feDiffuseLighting,feDisplacementMap,' +
111
- 'feDistanceLight,feDropShadow,feFlood,feFuncA,feFuncB,feFuncG,feFuncR,' +
111
+ 'feDistantLight,feDropShadow,feFlood,feFuncA,feFuncB,feFuncG,feFuncR,' +
112
112
  'feGaussianBlur,feImage,feMerge,feMergeNode,feMorphology,feOffset,' +
113
113
  'fePointLight,feSpecularLighting,feSpotLight,feTile,feTurbulence,filter,' +
114
114
  'foreignObject,g,hatch,hatchpath,image,line,linearGradient,marker,mask,' +
@@ -259,12 +259,13 @@ const remove = (arr, el) => {
259
259
  arr.splice(i, 1);
260
260
  }
261
261
  };
262
- const hasOwnProperty = Object.prototype.hasOwnProperty;
263
- const hasOwn = (val, key) => hasOwnProperty.call(val, key);
262
+ const hasOwnProperty$1 = Object.prototype.hasOwnProperty;
263
+ const hasOwn = (val, key) => hasOwnProperty$1.call(val, key);
264
264
  const isArray = Array.isArray;
265
265
  const isMap = (val) => toTypeString(val) === '[object Map]';
266
266
  const isSet = (val) => toTypeString(val) === '[object Set]';
267
267
  const isDate = (val) => toTypeString(val) === '[object Date]';
268
+ const isRegExp = (val) => toTypeString(val) === '[object RegExp]';
268
269
  const isFunction = (val) => typeof val === 'function';
269
270
  const isString = (val) => typeof val === 'string';
270
271
  const isSymbol = (val) => typeof val === 'symbol';
@@ -331,10 +332,22 @@ const def = (obj, key, value) => {
331
332
  value
332
333
  });
333
334
  };
334
- const toNumber = (val) => {
335
+ /**
336
+ * "123-foo" will be parsed to 123
337
+ * This is used for the .number modifier in v-model
338
+ */
339
+ const looseToNumber = (val) => {
335
340
  const n = parseFloat(val);
336
341
  return isNaN(n) ? val : n;
337
342
  };
343
+ /**
344
+ * Only conerces number-like strings
345
+ * "123-foo" will be returned as-is
346
+ */
347
+ const toNumber = (val) => {
348
+ const n = isString(val) ? Number(val) : NaN;
349
+ return isNaN(n) ? val : n;
350
+ };
338
351
  let _globalThis;
339
352
  const getGlobalThis = () => {
340
353
  return (_globalThis ||
@@ -350,7 +363,7 @@ const getGlobalThis = () => {
350
363
  : {}));
351
364
  };
352
365
 
353
- function warn(msg, ...args) {
366
+ function warn$1(msg, ...args) {
354
367
  console.warn(`[Vue warn] ${msg}`, ...args);
355
368
  }
356
369
 
@@ -361,7 +374,7 @@ class EffectScope {
361
374
  /**
362
375
  * @internal
363
376
  */
364
- this.active = true;
377
+ this._active = true;
365
378
  /**
366
379
  * @internal
367
380
  */
@@ -376,8 +389,11 @@ class EffectScope {
376
389
  (activeEffectScope.scopes || (activeEffectScope.scopes = [])).push(this) - 1;
377
390
  }
378
391
  }
392
+ get active() {
393
+ return this._active;
394
+ }
379
395
  run(fn) {
380
- if (this.active) {
396
+ if (this._active) {
381
397
  const currentEffectScope = activeEffectScope;
382
398
  try {
383
399
  activeEffectScope = this;
@@ -388,7 +404,7 @@ class EffectScope {
388
404
  }
389
405
  }
390
406
  else {
391
- warn(`cannot run an inactive effect scope.`);
407
+ warn$1(`cannot run an inactive effect scope.`);
392
408
  }
393
409
  }
394
410
  /**
@@ -406,7 +422,7 @@ class EffectScope {
406
422
  activeEffectScope = this.parent;
407
423
  }
408
424
  stop(fromParent) {
409
- if (this.active) {
425
+ if (this._active) {
410
426
  let i, l;
411
427
  for (i = 0, l = this.effects.length; i < l; i++) {
412
428
  this.effects[i].stop();
@@ -429,7 +445,7 @@ class EffectScope {
429
445
  }
430
446
  }
431
447
  this.parent = undefined;
432
- this.active = false;
448
+ this._active = false;
433
449
  }
434
450
  }
435
451
  }
@@ -449,7 +465,7 @@ function onScopeDispose(fn) {
449
465
  activeEffectScope.cleanups.push(fn);
450
466
  }
451
467
  else {
452
- warn(`onScopeDispose() is called when there is no active effect scope` +
468
+ warn$1(`onScopeDispose() is called when there is no active effect scope` +
453
469
  ` to be associated with.`);
454
470
  }
455
471
  }
@@ -650,7 +666,7 @@ function trigger(target, type, key, newValue, oldValue, oldTarget) {
650
666
  deps = [...depsMap.values()];
651
667
  }
652
668
  else if (key === 'length' && isArray(target)) {
653
- const newLength = toNumber(newValue);
669
+ const newLength = Number(newValue);
654
670
  depsMap.forEach((dep, key) => {
655
671
  if (key === 'length' || key >= newLength) {
656
672
  deps.push(dep);
@@ -739,6 +755,10 @@ function triggerEffect(effect, debuggerEventExtraInfo) {
739
755
  }
740
756
  }
741
757
  }
758
+ function getDepFromReactive(object, key) {
759
+ var _a;
760
+ return (_a = targetMap.get(object)) === null || _a === void 0 ? void 0 : _a.get(key);
761
+ }
742
762
 
743
763
  const isNonTrackableKeys = /*#__PURE__*/ makeMap(`__proto__,__v_isRef,__isVue`);
744
764
  const builtInSymbols = new Set(
@@ -750,7 +770,7 @@ Object.getOwnPropertyNames(Symbol)
750
770
  .filter(key => key !== 'arguments' && key !== 'caller')
751
771
  .map(key => Symbol[key])
752
772
  .filter(isSymbol));
753
- const get = /*#__PURE__*/ createGetter();
773
+ const get$1 = /*#__PURE__*/ createGetter();
754
774
  const shallowGet = /*#__PURE__*/ createGetter(false, true);
755
775
  const readonlyGet = /*#__PURE__*/ createGetter(true);
756
776
  const shallowReadonlyGet = /*#__PURE__*/ createGetter(true, true);
@@ -784,6 +804,11 @@ function createArrayInstrumentations() {
784
804
  });
785
805
  return instrumentations;
786
806
  }
807
+ function hasOwnProperty(key) {
808
+ const obj = toRaw(this);
809
+ track(obj, "has" /* TrackOpTypes.HAS */, key);
810
+ return obj.hasOwnProperty(key);
811
+ }
787
812
  function createGetter(isReadonly = false, shallow = false) {
788
813
  return function get(target, key, receiver) {
789
814
  if (key === "__v_isReactive" /* ReactiveFlags.IS_REACTIVE */) {
@@ -807,8 +832,13 @@ function createGetter(isReadonly = false, shallow = false) {
807
832
  return target;
808
833
  }
809
834
  const targetIsArray = isArray(target);
810
- if (!isReadonly && targetIsArray && hasOwn(arrayInstrumentations, key)) {
811
- return Reflect.get(arrayInstrumentations, key, receiver);
835
+ if (!isReadonly) {
836
+ if (targetIsArray && hasOwn(arrayInstrumentations, key)) {
837
+ return Reflect.get(arrayInstrumentations, key, receiver);
838
+ }
839
+ if (key === 'hasOwnProperty') {
840
+ return hasOwnProperty;
841
+ }
812
842
  }
813
843
  const res = Reflect.get(target, key, receiver);
814
844
  if (isSymbol(key) ? builtInSymbols.has(key) : isNonTrackableKeys(key)) {
@@ -833,7 +863,7 @@ function createGetter(isReadonly = false, shallow = false) {
833
863
  return res;
834
864
  };
835
865
  }
836
- const set = /*#__PURE__*/ createSetter();
866
+ const set$1 = /*#__PURE__*/ createSetter();
837
867
  const shallowSet = /*#__PURE__*/ createSetter(true);
838
868
  function createSetter(shallow = false) {
839
869
  return function set(target, key, value, receiver) {
@@ -876,7 +906,7 @@ function deleteProperty(target, key) {
876
906
  }
877
907
  return result;
878
908
  }
879
- function has(target, key) {
909
+ function has$1(target, key) {
880
910
  const result = Reflect.has(target, key);
881
911
  if (!isSymbol(key) || !builtInSymbols.has(key)) {
882
912
  track(target, "has" /* TrackOpTypes.HAS */, key);
@@ -888,23 +918,23 @@ function ownKeys(target) {
888
918
  return Reflect.ownKeys(target);
889
919
  }
890
920
  const mutableHandlers = {
891
- get,
892
- set,
921
+ get: get$1,
922
+ set: set$1,
893
923
  deleteProperty,
894
- has,
924
+ has: has$1,
895
925
  ownKeys
896
926
  };
897
927
  const readonlyHandlers = {
898
928
  get: readonlyGet,
899
929
  set(target, key) {
900
930
  {
901
- warn(`Set operation on key "${String(key)}" failed: target is readonly.`, target);
931
+ warn$1(`Set operation on key "${String(key)}" failed: target is readonly.`, target);
902
932
  }
903
933
  return true;
904
934
  },
905
935
  deleteProperty(target, key) {
906
936
  {
907
- warn(`Delete operation on key "${String(key)}" failed: target is readonly.`, target);
937
+ warn$1(`Delete operation on key "${String(key)}" failed: target is readonly.`, target);
908
938
  }
909
939
  return true;
910
940
  }
@@ -922,7 +952,7 @@ const shallowReadonlyHandlers = /*#__PURE__*/ extend({}, readonlyHandlers, {
922
952
 
923
953
  const toShallow = (value) => value;
924
954
  const getProto = (v) => Reflect.getPrototypeOf(v);
925
- function get$1(target, key, isReadonly = false, isShallow = false) {
955
+ function get(target, key, isReadonly = false, isShallow = false) {
926
956
  // #1772: readonly(reactive(Map)) should return readonly + reactive version
927
957
  // of the value
928
958
  target = target["__v_raw" /* ReactiveFlags.RAW */];
@@ -948,7 +978,7 @@ function get$1(target, key, isReadonly = false, isShallow = false) {
948
978
  target.get(key);
949
979
  }
950
980
  }
951
- function has$1(key, isReadonly = false) {
981
+ function has(key, isReadonly = false) {
952
982
  const target = this["__v_raw" /* ReactiveFlags.RAW */];
953
983
  const rawTarget = toRaw(target);
954
984
  const rawKey = toRaw(key);
@@ -978,7 +1008,7 @@ function add(value) {
978
1008
  }
979
1009
  return this;
980
1010
  }
981
- function set$1(key, value) {
1011
+ function set(key, value) {
982
1012
  value = toRaw(value);
983
1013
  const target = toRaw(this);
984
1014
  const { has, get } = getProto(target);
@@ -1091,41 +1121,41 @@ function createReadonlyMethod(type) {
1091
1121
  function createInstrumentations() {
1092
1122
  const mutableInstrumentations = {
1093
1123
  get(key) {
1094
- return get$1(this, key);
1124
+ return get(this, key);
1095
1125
  },
1096
1126
  get size() {
1097
1127
  return size(this);
1098
1128
  },
1099
- has: has$1,
1129
+ has,
1100
1130
  add,
1101
- set: set$1,
1131
+ set,
1102
1132
  delete: deleteEntry,
1103
1133
  clear,
1104
1134
  forEach: createForEach(false, false)
1105
1135
  };
1106
1136
  const shallowInstrumentations = {
1107
1137
  get(key) {
1108
- return get$1(this, key, false, true);
1138
+ return get(this, key, false, true);
1109
1139
  },
1110
1140
  get size() {
1111
1141
  return size(this);
1112
1142
  },
1113
- has: has$1,
1143
+ has,
1114
1144
  add,
1115
- set: set$1,
1145
+ set,
1116
1146
  delete: deleteEntry,
1117
1147
  clear,
1118
1148
  forEach: createForEach(false, true)
1119
1149
  };
1120
1150
  const readonlyInstrumentations = {
1121
1151
  get(key) {
1122
- return get$1(this, key, true);
1152
+ return get(this, key, true);
1123
1153
  },
1124
1154
  get size() {
1125
1155
  return size(this, true);
1126
1156
  },
1127
1157
  has(key) {
1128
- return has$1.call(this, key, true);
1158
+ return has.call(this, key, true);
1129
1159
  },
1130
1160
  add: createReadonlyMethod("add" /* TriggerOpTypes.ADD */),
1131
1161
  set: createReadonlyMethod("set" /* TriggerOpTypes.SET */),
@@ -1135,13 +1165,13 @@ function createInstrumentations() {
1135
1165
  };
1136
1166
  const shallowReadonlyInstrumentations = {
1137
1167
  get(key) {
1138
- return get$1(this, key, true, true);
1168
+ return get(this, key, true, true);
1139
1169
  },
1140
1170
  get size() {
1141
1171
  return size(this, true);
1142
1172
  },
1143
1173
  has(key) {
1144
- return has$1.call(this, key, true);
1174
+ return has.call(this, key, true);
1145
1175
  },
1146
1176
  add: createReadonlyMethod("add" /* TriggerOpTypes.ADD */),
1147
1177
  set: createReadonlyMethod("set" /* TriggerOpTypes.SET */),
@@ -1332,9 +1362,10 @@ function trackRefValue(ref) {
1332
1362
  }
1333
1363
  function triggerRefValue(ref, newVal) {
1334
1364
  ref = toRaw(ref);
1335
- if (ref.dep) {
1365
+ const dep = ref.dep;
1366
+ if (dep) {
1336
1367
  {
1337
- triggerEffects(ref.dep, {
1368
+ triggerEffects(dep, {
1338
1369
  target: ref,
1339
1370
  type: "set" /* TriggerOpTypes.SET */,
1340
1371
  key: 'value',
@@ -1446,6 +1477,9 @@ class ObjectRefImpl {
1446
1477
  set value(newVal) {
1447
1478
  this._object[this._key] = newVal;
1448
1479
  }
1480
+ get dep() {
1481
+ return getDepFromReactive(toRaw(this._object), this._key);
1482
+ }
1449
1483
  }
1450
1484
  function toRef(object, key, defaultValue) {
1451
1485
  const val = object[key];
@@ -1487,7 +1521,7 @@ class ComputedRefImpl {
1487
1521
  }
1488
1522
  }
1489
1523
  _a = "__v_isReadonly" /* ReactiveFlags.IS_READONLY */;
1490
- function computed(getterOrOptions, debugOptions, isSSR = false) {
1524
+ function computed$1(getterOrOptions, debugOptions, isSSR = false) {
1491
1525
  let getter;
1492
1526
  let setter;
1493
1527
  const onlyGetter = isFunction(getterOrOptions);
@@ -1517,7 +1551,7 @@ function pushWarningContext(vnode) {
1517
1551
  function popWarningContext() {
1518
1552
  stack.pop();
1519
1553
  }
1520
- function warn$1(msg, ...args) {
1554
+ function warn(msg, ...args) {
1521
1555
  // avoid props formatting or warn handler tracking deps that might be mutated
1522
1556
  // during patch, leading to infinite recursion.
1523
1557
  pauseTracking();
@@ -1623,6 +1657,20 @@ function formatProp(key, value, raw) {
1623
1657
  return raw ? value : [`${key}=`, value];
1624
1658
  }
1625
1659
  }
1660
+ /**
1661
+ * @internal
1662
+ */
1663
+ function assertNumber(val, type) {
1664
+ if (val === undefined) {
1665
+ return;
1666
+ }
1667
+ else if (typeof val !== 'number') {
1668
+ warn(`${type} is not a valid number - ` + `got ${JSON.stringify(val)}.`);
1669
+ }
1670
+ else if (isNaN(val)) {
1671
+ warn(`${type} is NaN - ` + 'the duration expression might be incorrect.');
1672
+ }
1673
+ }
1626
1674
 
1627
1675
  const ErrorTypeStrings = {
1628
1676
  ["sp" /* LifecycleHooks.SERVER_PREFETCH */]: 'serverPrefetch hook',
@@ -1716,7 +1764,7 @@ function logError(err, type, contextVNode, throwInDev = true) {
1716
1764
  if (contextVNode) {
1717
1765
  pushWarningContext(contextVNode);
1718
1766
  }
1719
- warn$1(`Unhandled error${info ? ` during execution of ${info}` : ``}`);
1767
+ warn(`Unhandled error${info ? ` during execution of ${info}` : ``}`);
1720
1768
  if (contextVNode) {
1721
1769
  popWarningContext();
1722
1770
  }
@@ -1912,7 +1960,7 @@ function checkRecursiveUpdates(seen, fn) {
1912
1960
  if (count > RECURSION_LIMIT) {
1913
1961
  const instance = fn.ownerInstance;
1914
1962
  const componentName = instance && getComponentName(instance.type);
1915
- warn$1(`Maximum recursive updates exceeded${componentName ? ` in component <${componentName}>` : ``}. ` +
1963
+ warn(`Maximum recursive updates exceeded${componentName ? ` in component <${componentName}>` : ``}. ` +
1916
1964
  `This means you have a reactive effect that is mutating its own ` +
1917
1965
  `dependencies and thus recursively triggering itself. Possible sources ` +
1918
1966
  `include component template, render function, updated hook or ` +
@@ -2019,12 +2067,6 @@ function reload(id, newComp) {
2019
2067
  // components to be unmounted and re-mounted. Queue the update so that we
2020
2068
  // don't end up forcing the same parent to re-render multiple times.
2021
2069
  queueJob(instance.parent.update);
2022
- // instance is the inner component of an async custom element
2023
- // invoke to reset styles
2024
- if (instance.parent.type.__asyncLoader &&
2025
- instance.parent.ceReload) {
2026
- instance.parent.ceReload(newComp.styles);
2027
- }
2028
2070
  }
2029
2071
  else if (instance.appContext.reload) {
2030
2072
  // root instance mounted via createApp() has a reload method
@@ -2069,7 +2111,7 @@ function tryWrap(fn) {
2069
2111
  let devtools;
2070
2112
  let buffer = [];
2071
2113
  let devtoolsNotInstalled = false;
2072
- function emit(event, ...args) {
2114
+ function emit$2(event, ...args) {
2073
2115
  if (devtools) {
2074
2116
  devtools.emit(event, ...args);
2075
2117
  }
@@ -2116,7 +2158,7 @@ function setDevtoolsHook(hook, target) {
2116
2158
  }
2117
2159
  }
2118
2160
  function devtoolsInitApp(app, version) {
2119
- emit("app:init" /* DevtoolsHooks.APP_INIT */, app, version, {
2161
+ emit$2("app:init" /* DevtoolsHooks.APP_INIT */, app, version, {
2120
2162
  Fragment,
2121
2163
  Text,
2122
2164
  Comment,
@@ -2124,7 +2166,7 @@ function devtoolsInitApp(app, version) {
2124
2166
  });
2125
2167
  }
2126
2168
  function devtoolsUnmountApp(app) {
2127
- emit("app:unmount" /* DevtoolsHooks.APP_UNMOUNT */, app);
2169
+ emit$2("app:unmount" /* DevtoolsHooks.APP_UNMOUNT */, app);
2128
2170
  }
2129
2171
  const devtoolsComponentAdded = /*#__PURE__*/ createDevtoolsComponentHook("component:added" /* DevtoolsHooks.COMPONENT_ADDED */);
2130
2172
  const devtoolsComponentUpdated =
@@ -2140,18 +2182,18 @@ const devtoolsComponentRemoved = (component) => {
2140
2182
  };
2141
2183
  function createDevtoolsComponentHook(hook) {
2142
2184
  return (component) => {
2143
- emit(hook, component.appContext.app, component.uid, component.parent ? component.parent.uid : undefined, component);
2185
+ emit$2(hook, component.appContext.app, component.uid, component.parent ? component.parent.uid : undefined, component);
2144
2186
  };
2145
2187
  }
2146
2188
  const devtoolsPerfStart = /*#__PURE__*/ createDevtoolsPerformanceHook("perf:start" /* DevtoolsHooks.PERFORMANCE_START */);
2147
2189
  const devtoolsPerfEnd = /*#__PURE__*/ createDevtoolsPerformanceHook("perf:end" /* DevtoolsHooks.PERFORMANCE_END */);
2148
2190
  function createDevtoolsPerformanceHook(hook) {
2149
2191
  return (component, type, time) => {
2150
- emit(hook, component.appContext.app, component.uid, component, type, time);
2192
+ emit$2(hook, component.appContext.app, component.uid, component, type, time);
2151
2193
  };
2152
2194
  }
2153
2195
  function devtoolsComponentEmit(component, event, params) {
2154
- emit("component:emit" /* DevtoolsHooks.COMPONENT_EMIT */, component.appContext.app, component, event, params);
2196
+ emit$2("component:emit" /* DevtoolsHooks.COMPONENT_EMIT */, component.appContext.app, component, event, params);
2155
2197
  }
2156
2198
 
2157
2199
  const deprecationData = {
@@ -2439,12 +2481,12 @@ function warnDeprecation(key, instance, ...args) {
2439
2481
  // same warning, but different component. skip the long message and just
2440
2482
  // log the key and count.
2441
2483
  if (dupKey in warnCount) {
2442
- warn$1(`(deprecation ${key}) (${++warnCount[dupKey] + 1})`);
2484
+ warn(`(deprecation ${key}) (${++warnCount[dupKey] + 1})`);
2443
2485
  return;
2444
2486
  }
2445
2487
  warnCount[dupKey] = 0;
2446
2488
  const { message, link } = deprecationData[key];
2447
- warn$1(`(deprecation ${key}) ${typeof message === 'function' ? message(...args) : message}${link ? `\n Details: ${link}` : ``}`);
2489
+ warn(`(deprecation ${key}) ${typeof message === 'function' ? message(...args) : message}${link ? `\n Details: ${link}` : ``}`);
2448
2490
  if (!isCompatEnabled(key, instance, true)) {
2449
2491
  console.error(`^ The above deprecation's compat behavior is disabled and will likely ` +
2450
2492
  `lead to runtime errors.`);
@@ -2453,7 +2495,7 @@ function warnDeprecation(key, instance, ...args) {
2453
2495
  const globalCompatConfig = {
2454
2496
  MODE: 2
2455
2497
  };
2456
- function configureCompat(config) {
2498
+ function configureCompat$1(config) {
2457
2499
  {
2458
2500
  validateCompatConfig(config);
2459
2501
  }
@@ -2473,20 +2515,20 @@ function validateCompatConfig(config, instance) {
2473
2515
  !(key in warnedInvalidKeys)) {
2474
2516
  if (key.startsWith('COMPILER_')) {
2475
2517
  if (isRuntimeOnly()) {
2476
- warn$1(`Deprecation config "${key}" is compiler-specific and you are ` +
2518
+ warn(`Deprecation config "${key}" is compiler-specific and you are ` +
2477
2519
  `running a runtime-only build of Vue. This deprecation should be ` +
2478
2520
  `configured via compiler options in your build setup instead.\n` +
2479
2521
  `Details: https://v3-migration.vuejs.org/breaking-changes/migration-build.html`);
2480
2522
  }
2481
2523
  }
2482
2524
  else {
2483
- warn$1(`Invalid deprecation config "${key}".`);
2525
+ warn(`Invalid deprecation config "${key}".`);
2484
2526
  }
2485
2527
  warnedInvalidKeys[key] = true;
2486
2528
  }
2487
2529
  }
2488
2530
  if (instance && config["OPTIONS_DATA_MERGE" /* DeprecationTypes.OPTIONS_DATA_MERGE */] != null) {
2489
- warn$1(`Deprecation config "${"OPTIONS_DATA_MERGE" /* DeprecationTypes.OPTIONS_DATA_MERGE */}" can only be configured globally.`);
2531
+ warn(`Deprecation config "${"OPTIONS_DATA_MERGE" /* DeprecationTypes.OPTIONS_DATA_MERGE */}" can only be configured globally.`);
2490
2532
  }
2491
2533
  }
2492
2534
  function getCompatConfigForKey(key, instance) {
@@ -2672,7 +2714,7 @@ function compatModelEmit(instance, event, args) {
2672
2714
  }
2673
2715
  }
2674
2716
 
2675
- function emit$2(instance, event, ...rawArgs) {
2717
+ function emit(instance, event, ...rawArgs) {
2676
2718
  if (instance.isUnmounted)
2677
2719
  return;
2678
2720
  const props = instance.vnode.props || EMPTY_OBJ;
@@ -2683,7 +2725,7 @@ function emit$2(instance, event, ...rawArgs) {
2683
2725
  !((event.startsWith('hook:') ||
2684
2726
  event.startsWith(compatModelEventPrefix)))) {
2685
2727
  if (!propsOptions || !(toHandlerKey(event) in propsOptions)) {
2686
- warn$1(`Component emitted event "${event}" but it is neither declared in ` +
2728
+ warn(`Component emitted event "${event}" but it is neither declared in ` +
2687
2729
  `the emits option nor as an "${toHandlerKey(event)}" prop.`);
2688
2730
  }
2689
2731
  }
@@ -2692,7 +2734,7 @@ function emit$2(instance, event, ...rawArgs) {
2692
2734
  if (isFunction(validator)) {
2693
2735
  const isValid = validator(...rawArgs);
2694
2736
  if (!isValid) {
2695
- warn$1(`Invalid event arguments: event validation failed for event "${event}".`);
2737
+ warn(`Invalid event arguments: event validation failed for event "${event}".`);
2696
2738
  }
2697
2739
  }
2698
2740
  }
@@ -2709,7 +2751,7 @@ function emit$2(instance, event, ...rawArgs) {
2709
2751
  args = rawArgs.map(a => (isString(a) ? a.trim() : a));
2710
2752
  }
2711
2753
  if (number) {
2712
- args = rawArgs.map(toNumber);
2754
+ args = rawArgs.map(looseToNumber);
2713
2755
  }
2714
2756
  }
2715
2757
  {
@@ -2718,7 +2760,7 @@ function emit$2(instance, event, ...rawArgs) {
2718
2760
  {
2719
2761
  const lowerCaseEvent = event.toLowerCase();
2720
2762
  if (lowerCaseEvent !== event && props[toHandlerKey(lowerCaseEvent)]) {
2721
- warn$1(`Event "${lowerCaseEvent}" is emitted in component ` +
2763
+ warn(`Event "${lowerCaseEvent}" is emitted in component ` +
2722
2764
  `${formatComponentName(instance, instance.type)} but the handler is registered for "${event}". ` +
2723
2765
  `Note that HTML attributes are case-insensitive and you cannot use ` +
2724
2766
  `v-on to listen to camelCase events when using in-DOM templates. ` +
@@ -3008,13 +3050,13 @@ function renderComponentRoot(instance) {
3008
3050
  }
3009
3051
  }
3010
3052
  if (extraAttrs.length) {
3011
- warn$1(`Extraneous non-props attributes (` +
3053
+ warn(`Extraneous non-props attributes (` +
3012
3054
  `${extraAttrs.join(', ')}) ` +
3013
3055
  `were passed to component but could not be automatically inherited ` +
3014
3056
  `because component renders fragment or text root nodes.`);
3015
3057
  }
3016
3058
  if (eventAttrs.length) {
3017
- warn$1(`Extraneous non-emits event listeners (` +
3059
+ warn(`Extraneous non-emits event listeners (` +
3018
3060
  `${eventAttrs.join(', ')}) ` +
3019
3061
  `were passed to component but could not be automatically inherited ` +
3020
3062
  `because component renders fragment or text root nodes. ` +
@@ -3041,7 +3083,7 @@ function renderComponentRoot(instance) {
3041
3083
  // inherit directives
3042
3084
  if (vnode.dirs) {
3043
3085
  if (!isElementRoot(root)) {
3044
- warn$1(`Runtime directive used on component with non-element root node. ` +
3086
+ warn(`Runtime directive used on component with non-element root node. ` +
3045
3087
  `The directives will not function as intended.`);
3046
3088
  }
3047
3089
  // clone before mutating since the root may be a hoisted vnode
@@ -3051,7 +3093,7 @@ function renderComponentRoot(instance) {
3051
3093
  // inherit transition data
3052
3094
  if (vnode.transition) {
3053
3095
  if (!isElementRoot(root)) {
3054
- warn$1(`Component inside <Transition> renders non-element root node ` +
3096
+ warn(`Component inside <Transition> renders non-element root node ` +
3055
3097
  `that cannot be animated.`);
3056
3098
  }
3057
3099
  root.transition = vnode.transition;
@@ -3386,7 +3428,10 @@ function createSuspenseBoundary(vnode, parent, parentComponent, container, hidde
3386
3428
  console[console.info ? 'info' : 'log'](`<Suspense> is an experimental feature and its API will likely change.`);
3387
3429
  }
3388
3430
  const { p: patch, m: move, um: unmount, n: next, o: { parentNode, remove } } = rendererInternals;
3389
- const timeout = toNumber(vnode.props && vnode.props.timeout);
3431
+ const timeout = vnode.props ? toNumber(vnode.props.timeout) : undefined;
3432
+ {
3433
+ assertNumber(timeout, `Suspense timeout`);
3434
+ }
3390
3435
  const suspense = {
3391
3436
  vnode,
3392
3437
  parent,
@@ -3614,7 +3659,7 @@ function normalizeSuspenseSlot(s) {
3614
3659
  if (isArray(s)) {
3615
3660
  const singleChild = filterSingleRoot(s);
3616
3661
  if (!singleChild) {
3617
- warn$1(`<Suspense> slots expect a single root node.`);
3662
+ warn(`<Suspense> slots expect a single root node.`);
3618
3663
  }
3619
3664
  s = singleChild;
3620
3665
  }
@@ -3652,7 +3697,7 @@ function setActiveBranch(suspense, branch) {
3652
3697
  function provide(key, value) {
3653
3698
  if (!currentInstance) {
3654
3699
  {
3655
- warn$1(`provide() can only be used inside setup().`);
3700
+ warn(`provide() can only be used inside setup().`);
3656
3701
  }
3657
3702
  }
3658
3703
  else {
@@ -3691,11 +3736,11 @@ function inject(key, defaultValue, treatDefaultAsFactory = false) {
3691
3736
  : defaultValue;
3692
3737
  }
3693
3738
  else {
3694
- warn$1(`injection "${String(key)}" not found.`);
3739
+ warn(`injection "${String(key)}" not found.`);
3695
3740
  }
3696
3741
  }
3697
3742
  else {
3698
- warn$1(`inject() can only be used inside setup() or functional components.`);
3743
+ warn(`inject() can only be used inside setup() or functional components.`);
3699
3744
  }
3700
3745
  }
3701
3746
 
@@ -3704,17 +3749,17 @@ function watchEffect(effect, options) {
3704
3749
  return doWatch(effect, null, options);
3705
3750
  }
3706
3751
  function watchPostEffect(effect, options) {
3707
- return doWatch(effect, null, (Object.assign(Object.assign({}, options), { flush: 'post' }) ));
3752
+ return doWatch(effect, null, Object.assign(Object.assign({}, options), { flush: 'post' }) );
3708
3753
  }
3709
3754
  function watchSyncEffect(effect, options) {
3710
- return doWatch(effect, null, (Object.assign(Object.assign({}, options), { flush: 'sync' }) ));
3755
+ return doWatch(effect, null, Object.assign(Object.assign({}, options), { flush: 'sync' }) );
3711
3756
  }
3712
3757
  // initial value for watchers to trigger on undefined initial values
3713
3758
  const INITIAL_WATCHER_VALUE = {};
3714
3759
  // implementation
3715
3760
  function watch(source, cb, options) {
3716
3761
  if (!isFunction(cb)) {
3717
- warn$1(`\`watch(fn, options?)\` signature has been moved to a separate API. ` +
3762
+ warn(`\`watch(fn, options?)\` signature has been moved to a separate API. ` +
3718
3763
  `Use \`watchEffect(fn, options?)\` instead. \`watch\` now only ` +
3719
3764
  `supports \`watch(source, cb, options?) signature.`);
3720
3765
  }
@@ -3723,19 +3768,20 @@ function watch(source, cb, options) {
3723
3768
  function doWatch(source, cb, { immediate, deep, flush, onTrack, onTrigger } = EMPTY_OBJ) {
3724
3769
  if (!cb) {
3725
3770
  if (immediate !== undefined) {
3726
- warn$1(`watch() "immediate" option is only respected when using the ` +
3771
+ warn(`watch() "immediate" option is only respected when using the ` +
3727
3772
  `watch(source, callback, options?) signature.`);
3728
3773
  }
3729
3774
  if (deep !== undefined) {
3730
- warn$1(`watch() "deep" option is only respected when using the ` +
3775
+ warn(`watch() "deep" option is only respected when using the ` +
3731
3776
  `watch(source, callback, options?) signature.`);
3732
3777
  }
3733
3778
  }
3734
3779
  const warnInvalidSource = (s) => {
3735
- warn$1(`Invalid watch source: `, s, `A watch source can only be a getter/effect function, a ref, ` +
3780
+ warn(`Invalid watch source: `, s, `A watch source can only be a getter/effect function, a ref, ` +
3736
3781
  `a reactive object, or an array of these types.`);
3737
3782
  };
3738
- const instance = currentInstance;
3783
+ const instance = getCurrentScope() === (currentInstance === null || currentInstance === void 0 ? void 0 : currentInstance.scope) ? currentInstance : null;
3784
+ // const instance = currentInstance
3739
3785
  let getter;
3740
3786
  let forceTrigger = false;
3741
3787
  let isMultiSource = false;
@@ -3835,7 +3881,7 @@ function doWatch(source, cb, { immediate, deep, flush, onTrack, onTrigger } = EM
3835
3881
  // pass undefined as the old value when it's changed for the first time
3836
3882
  oldValue === INITIAL_WATCHER_VALUE
3837
3883
  ? undefined
3838
- : (isMultiSource && oldValue[0] === INITIAL_WATCHER_VALUE)
3884
+ : isMultiSource && oldValue[0] === INITIAL_WATCHER_VALUE
3839
3885
  ? []
3840
3886
  : oldValue,
3841
3887
  onCleanup
@@ -4015,7 +4061,7 @@ const BaseTransitionImpl = {
4015
4061
  if (c.type !== Comment) {
4016
4062
  if (hasFound) {
4017
4063
  // warn more than one non-comment child
4018
- warn$1('<transition> can only be used on a single element or component. ' +
4064
+ warn('<transition> can only be used on a single element or component. ' +
4019
4065
  'Use <transition-group> for lists.');
4020
4066
  break;
4021
4067
  }
@@ -4033,7 +4079,7 @@ const BaseTransitionImpl = {
4033
4079
  mode !== 'in-out' &&
4034
4080
  mode !== 'out-in' &&
4035
4081
  mode !== 'default') {
4036
- warn$1(`invalid <transition> mode: ${mode}`);
4082
+ warn(`invalid <transition> mode: ${mode}`);
4037
4083
  }
4038
4084
  if (state.isLeaving) {
4039
4085
  return emptyPlaceholder(child);
@@ -4344,7 +4390,7 @@ function defineAsyncComponent(source) {
4344
4390
  return pendingRequest;
4345
4391
  }
4346
4392
  if (!comp) {
4347
- warn$1(`Async component loader resolved to undefined. ` +
4393
+ warn(`Async component loader resolved to undefined. ` +
4348
4394
  `If you are using retry(), make sure to return its return value.`);
4349
4395
  }
4350
4396
  // interop module default
@@ -4437,10 +4483,15 @@ function defineAsyncComponent(source) {
4437
4483
  }
4438
4484
  });
4439
4485
  }
4440
- function createInnerComp(comp, { vnode: { ref, props, children, shapeFlag }, parent }) {
4486
+ function createInnerComp(comp, parent) {
4487
+ const { ref, props, children, ce } = parent.vnode;
4441
4488
  const vnode = createVNode(comp, props, children);
4442
4489
  // ensure inner component inherits the async wrapper's ref owner
4443
4490
  vnode.ref = ref;
4491
+ // pass the custom element callback on to the inner comp
4492
+ // and remove it from the async wrapper
4493
+ vnode.ce = ce;
4494
+ delete parent.vnode.ce;
4444
4495
  return vnode;
4445
4496
  }
4446
4497
 
@@ -4526,7 +4577,7 @@ const KeepAliveImpl = {
4526
4577
  }
4527
4578
  function pruneCacheEntry(key) {
4528
4579
  const cached = cache.get(key);
4529
- if (!current || cached.type !== current.type) {
4580
+ if (!current || !isSameVNodeType(cached, current)) {
4530
4581
  unmount(cached);
4531
4582
  }
4532
4583
  else if (current) {
@@ -4558,7 +4609,7 @@ const KeepAliveImpl = {
4558
4609
  cache.forEach(cached => {
4559
4610
  const { subTree, suspense } = instance;
4560
4611
  const vnode = getInnerChild(subTree);
4561
- if (cached.type === vnode.type) {
4612
+ if (cached.type === vnode.type && cached.key === vnode.key) {
4562
4613
  // current instance will be unmounted as part of keep-alive's unmount
4563
4614
  resetShapeFlag(vnode);
4564
4615
  // but invoke its deactivated hook here
@@ -4578,7 +4629,7 @@ const KeepAliveImpl = {
4578
4629
  const rawVNode = children[0];
4579
4630
  if (children.length > 1) {
4580
4631
  {
4581
- warn$1(`KeepAlive should contain exactly one component child.`);
4632
+ warn(`KeepAlive should contain exactly one component child.`);
4582
4633
  }
4583
4634
  current = null;
4584
4635
  return children;
@@ -4598,8 +4649,7 @@ const KeepAliveImpl = {
4598
4649
  : comp);
4599
4650
  const { include, exclude, max } = props;
4600
4651
  if ((include && (!name || !matches(include, name))) ||
4601
- (exclude && name && matches(exclude, name)) ||
4602
- (hmrDirtyComponents.has(comp))) {
4652
+ (exclude && name && matches(exclude, name))) {
4603
4653
  current = vnode;
4604
4654
  return rawVNode;
4605
4655
  }
@@ -4659,7 +4709,7 @@ function matches(pattern, name) {
4659
4709
  else if (isString(pattern)) {
4660
4710
  return pattern.split(',').includes(name);
4661
4711
  }
4662
- else if (pattern.test) {
4712
+ else if (isRegExp(pattern)) {
4663
4713
  return pattern.test(name);
4664
4714
  }
4665
4715
  /* istanbul ignore next */
@@ -4712,14 +4762,9 @@ function injectToKeepAliveRoot(hook, type, target, keepAliveRoot) {
4712
4762
  }, target);
4713
4763
  }
4714
4764
  function resetShapeFlag(vnode) {
4715
- let shapeFlag = vnode.shapeFlag;
4716
- if (shapeFlag & 256 /* ShapeFlags.COMPONENT_SHOULD_KEEP_ALIVE */) {
4717
- shapeFlag -= 256 /* ShapeFlags.COMPONENT_SHOULD_KEEP_ALIVE */;
4718
- }
4719
- if (shapeFlag & 512 /* ShapeFlags.COMPONENT_KEPT_ALIVE */) {
4720
- shapeFlag -= 512 /* ShapeFlags.COMPONENT_KEPT_ALIVE */;
4721
- }
4722
- vnode.shapeFlag = shapeFlag;
4765
+ // bitwise operations to remove keep alive flags
4766
+ vnode.shapeFlag &= ~256 /* ShapeFlags.COMPONENT_SHOULD_KEEP_ALIVE */;
4767
+ vnode.shapeFlag &= ~512 /* ShapeFlags.COMPONENT_KEPT_ALIVE */;
4723
4768
  }
4724
4769
  function getInnerChild(vnode) {
4725
4770
  return vnode.shapeFlag & 128 /* ShapeFlags.SUSPENSE */ ? vnode.ssContent : vnode;
@@ -4758,7 +4803,7 @@ function injectHook(type, hook, target = currentInstance, prepend = false) {
4758
4803
  }
4759
4804
  else {
4760
4805
  const apiName = toHandlerKey(ErrorTypeStrings[type].replace(/ hook$/, ''));
4761
- warn$1(`${apiName} is called when there is no active component instance to be ` +
4806
+ warn(`${apiName} is called when there is no active component instance to be ` +
4762
4807
  `associated with. ` +
4763
4808
  `Lifecycle injection APIs can only be used during execution of setup().` +
4764
4809
  (` If you are using async setup(), make sure to register lifecycle ` +
@@ -4862,7 +4907,7 @@ return withDirectives(h(comp), [
4862
4907
  */
4863
4908
  function validateDirectiveName(name) {
4864
4909
  if (isBuiltInDirective(name)) {
4865
- warn$1('Do not use built-in directive ids as custom directive id: ' + name);
4910
+ warn('Do not use built-in directive ids as custom directive id: ' + name);
4866
4911
  }
4867
4912
  }
4868
4913
  /**
@@ -4871,7 +4916,7 @@ function validateDirectiveName(name) {
4871
4916
  function withDirectives(vnode, directives) {
4872
4917
  const internalInstance = currentRenderingInstance;
4873
4918
  if (internalInstance === null) {
4874
- warn$1(`withDirectives can only be used inside render functions.`);
4919
+ warn(`withDirectives can only be used inside render functions.`);
4875
4920
  return vnode;
4876
4921
  }
4877
4922
  const instance = getExposeProxy(internalInstance) ||
@@ -4960,7 +5005,7 @@ function resolveDirective(name) {
4960
5005
  * v2 compat only
4961
5006
  * @internal
4962
5007
  */
4963
- function resolveFilter(name) {
5008
+ function resolveFilter$1(name) {
4964
5009
  return resolveAsset(FILTERS, name);
4965
5010
  }
4966
5011
  // implementation
@@ -4993,12 +5038,12 @@ function resolveAsset(type, name, warnMissing = true, maybeSelfReference = false
4993
5038
  ? `\nIf this is a native custom element, make sure to exclude it from ` +
4994
5039
  `component resolution via compilerOptions.isCustomElement.`
4995
5040
  : ``;
4996
- warn$1(`Failed to resolve ${type.slice(0, -1)}: ${name}${extra}`);
5041
+ warn(`Failed to resolve ${type.slice(0, -1)}: ${name}${extra}`);
4997
5042
  }
4998
5043
  return res;
4999
5044
  }
5000
5045
  else {
5001
- warn$1(`resolve${capitalize(type.slice(0, -1))} ` +
5046
+ warn(`resolve${capitalize(type.slice(0, -1))} ` +
5002
5047
  `can only be used in render() or setup().`);
5003
5048
  }
5004
5049
  }
@@ -5276,7 +5321,7 @@ function renderList(source, renderItem, cache, index) {
5276
5321
  }
5277
5322
  else if (typeof source === 'number') {
5278
5323
  if (!Number.isInteger(source)) {
5279
- warn$1(`The v-for range expect an integer value but got ${source}.`);
5324
+ warn(`The v-for range expect an integer value but got ${source}.`);
5280
5325
  }
5281
5326
  ret = new Array(source);
5282
5327
  for (let i = 0; i < source; i++) {
@@ -5347,11 +5392,13 @@ fallback, noSlotted) {
5347
5392
  (currentRenderingInstance.parent &&
5348
5393
  isAsyncWrapper(currentRenderingInstance.parent) &&
5349
5394
  currentRenderingInstance.parent.isCE)) {
5350
- return createVNode('slot', name === 'default' ? null : { name }, fallback && fallback());
5395
+ if (name !== 'default')
5396
+ props.name = name;
5397
+ return createVNode('slot', props, fallback && fallback());
5351
5398
  }
5352
5399
  let slot = slots[name];
5353
5400
  if (slot && slot.length > 1) {
5354
- warn$1(`SSR-optimized slot function detected in a non-SSR-optimized render ` +
5401
+ warn(`SSR-optimized slot function detected in a non-SSR-optimized render ` +
5355
5402
  `function. You need to mark this component with $dynamic-slots in the ` +
5356
5403
  `parent template.`);
5357
5404
  slot = () => [];
@@ -5404,7 +5451,7 @@ function ensureValidVNode(vnodes) {
5404
5451
  function toHandlers(obj, preserveCaseIfNecessary) {
5405
5452
  const ret = {};
5406
5453
  if (!isObject(obj)) {
5407
- warn$1(`v-on with no argument expects an object value.`);
5454
+ warn(`v-on with no argument expects an object value.`);
5408
5455
  return ret;
5409
5456
  }
5410
5457
  for (const key in obj) {
@@ -5612,14 +5659,14 @@ function installCompatInstanceProperties(map) {
5612
5659
  $createElement: () => compatH,
5613
5660
  _c: () => compatH,
5614
5661
  _o: () => legacyMarkOnce,
5615
- _n: () => toNumber,
5662
+ _n: () => looseToNumber,
5616
5663
  _s: () => toDisplayString,
5617
5664
  _l: () => renderList,
5618
5665
  _t: i => legacyRenderSlot.bind(null, i),
5619
5666
  _q: () => looseEqual,
5620
5667
  _i: () => looseIndexOf,
5621
5668
  _m: i => legacyRenderStatic.bind(null, i),
5622
- _f: () => resolveFilter,
5669
+ _f: () => resolveFilter$1,
5623
5670
  _k: i => legacyCheckKeyCodes.bind(null, i),
5624
5671
  _b: () => legacyBindObjectProps,
5625
5672
  _v: () => createTextVNode,
@@ -5667,6 +5714,7 @@ const publicPropertiesMap =
5667
5714
  installCompatInstanceProperties(publicPropertiesMap);
5668
5715
  }
5669
5716
  const isReservedPrefix = (key) => key === '_' || key === '$';
5717
+ const hasSetupBinding = (state, key) => state !== EMPTY_OBJ && !state.__isScriptSetup && hasOwn(state, key);
5670
5718
  const PublicInstanceProxyHandlers = {
5671
5719
  get({ _: instance }, key) {
5672
5720
  const { ctx, setupState, data, props, accessCache, type, appContext } = instance;
@@ -5674,15 +5722,6 @@ const PublicInstanceProxyHandlers = {
5674
5722
  if (key === '__isVue') {
5675
5723
  return true;
5676
5724
  }
5677
- // prioritize <script setup> bindings during dev.
5678
- // this allows even properties that start with _ or $ to be used - so that
5679
- // it aligns with the production behavior where the render fn is inlined and
5680
- // indeed has access to all declared variables.
5681
- if (setupState !== EMPTY_OBJ &&
5682
- setupState.__isScriptSetup &&
5683
- hasOwn(setupState, key)) {
5684
- return setupState[key];
5685
- }
5686
5725
  // data / props / ctx
5687
5726
  // This getter gets called for every property access on the render context
5688
5727
  // during render and is a major hotspot. The most expensive part of this
@@ -5705,7 +5744,7 @@ const PublicInstanceProxyHandlers = {
5705
5744
  // default: just fallthrough
5706
5745
  }
5707
5746
  }
5708
- else if (setupState !== EMPTY_OBJ && hasOwn(setupState, key)) {
5747
+ else if (hasSetupBinding(setupState, key)) {
5709
5748
  accessCache[key] = 1 /* AccessTypes.SETUP */;
5710
5749
  return setupState[key];
5711
5750
  }
@@ -5773,32 +5812,37 @@ const PublicInstanceProxyHandlers = {
5773
5812
  // to infinite warning loop
5774
5813
  key.indexOf('__v') !== 0)) {
5775
5814
  if (data !== EMPTY_OBJ && isReservedPrefix(key[0]) && hasOwn(data, key)) {
5776
- warn$1(`Property ${JSON.stringify(key)} must be accessed via $data because it starts with a reserved ` +
5815
+ warn(`Property ${JSON.stringify(key)} must be accessed via $data because it starts with a reserved ` +
5777
5816
  `character ("$" or "_") and is not proxied on the render context.`);
5778
5817
  }
5779
5818
  else if (instance === currentRenderingInstance) {
5780
- warn$1(`Property ${JSON.stringify(key)} was accessed during render ` +
5819
+ warn(`Property ${JSON.stringify(key)} was accessed during render ` +
5781
5820
  `but is not defined on instance.`);
5782
5821
  }
5783
5822
  }
5784
5823
  },
5785
5824
  set({ _: instance }, key, value) {
5786
5825
  const { data, setupState, ctx } = instance;
5787
- if (setupState !== EMPTY_OBJ && hasOwn(setupState, key)) {
5826
+ if (hasSetupBinding(setupState, key)) {
5788
5827
  setupState[key] = value;
5789
5828
  return true;
5790
5829
  }
5830
+ else if (setupState.__isScriptSetup &&
5831
+ hasOwn(setupState, key)) {
5832
+ warn(`Cannot mutate <script setup> binding "${key}" from Options API.`);
5833
+ return false;
5834
+ }
5791
5835
  else if (data !== EMPTY_OBJ && hasOwn(data, key)) {
5792
5836
  data[key] = value;
5793
5837
  return true;
5794
5838
  }
5795
5839
  else if (hasOwn(instance.props, key)) {
5796
- warn$1(`Attempting to mutate prop "${key}". Props are readonly.`, instance);
5840
+ warn(`Attempting to mutate prop "${key}". Props are readonly.`);
5797
5841
  return false;
5798
5842
  }
5799
5843
  if (key[0] === '$' && key.slice(1) in instance) {
5800
- warn$1(`Attempting to mutate public property "${key}". ` +
5801
- `Properties starting with $ are reserved and readonly.`, instance);
5844
+ warn(`Attempting to mutate public property "${key}". ` +
5845
+ `Properties starting with $ are reserved and readonly.`);
5802
5846
  return false;
5803
5847
  }
5804
5848
  else {
@@ -5819,7 +5863,7 @@ const PublicInstanceProxyHandlers = {
5819
5863
  let normalizedProps;
5820
5864
  return (!!accessCache[key] ||
5821
5865
  (data !== EMPTY_OBJ && hasOwn(data, key)) ||
5822
- (setupState !== EMPTY_OBJ && hasOwn(setupState, key)) ||
5866
+ hasSetupBinding(setupState, key) ||
5823
5867
  ((normalizedProps = propsOptions[0]) && hasOwn(normalizedProps, key)) ||
5824
5868
  hasOwn(ctx, key) ||
5825
5869
  hasOwn(publicPropertiesMap, key) ||
@@ -5838,7 +5882,7 @@ const PublicInstanceProxyHandlers = {
5838
5882
  };
5839
5883
  {
5840
5884
  PublicInstanceProxyHandlers.ownKeys = (target) => {
5841
- warn$1(`Avoid app logic that relies on enumerating keys on a component instance. ` +
5885
+ warn(`Avoid app logic that relies on enumerating keys on a component instance. ` +
5842
5886
  `The keys will be empty in production mode to avoid performance overhead.`);
5843
5887
  return Reflect.ownKeys(target);
5844
5888
  };
@@ -5854,7 +5898,7 @@ const RuntimeCompiledPublicInstanceProxyHandlers = /*#__PURE__*/ extend({}, Publ
5854
5898
  has(_, key) {
5855
5899
  const has = key[0] !== '_' && !isGloballyWhitelisted(key);
5856
5900
  if (!has && PublicInstanceProxyHandlers.has(_, key)) {
5857
- warn$1(`Property ${JSON.stringify(key)} should not start with _ which is a reserved prefix for Vue internals.`);
5901
+ warn(`Property ${JSON.stringify(key)} should not start with _ which is a reserved prefix for Vue internals.`);
5858
5902
  }
5859
5903
  return has;
5860
5904
  }
@@ -5904,7 +5948,7 @@ function exposeSetupStateOnRenderContext(instance) {
5904
5948
  Object.keys(toRaw(setupState)).forEach(key => {
5905
5949
  if (!setupState.__isScriptSetup) {
5906
5950
  if (isReservedPrefix(key[0])) {
5907
- warn$1(`setup() return property ${JSON.stringify(key)} should not start with "$" or "_" ` +
5951
+ warn(`setup() return property ${JSON.stringify(key)} should not start with "$" or "_" ` +
5908
5952
  `which are reserved prefixes for Vue internals.`);
5909
5953
  return;
5910
5954
  }
@@ -5937,7 +5981,7 @@ function createDuplicateChecker() {
5937
5981
  const cache = Object.create(null);
5938
5982
  return (type, key) => {
5939
5983
  if (cache[key]) {
5940
- warn$1(`${type} property "${key}" is already defined in ${cache[key]}.`);
5984
+ warn(`${type} property "${key}" is already defined in ${cache[key]}.`);
5941
5985
  }
5942
5986
  else {
5943
5987
  cache[key] = type;
@@ -5954,7 +5998,7 @@ function applyOptions(instance) {
5954
5998
  // call beforeCreate first before accessing other options since
5955
5999
  // the hook may mutate resolved options (#2791)
5956
6000
  if (options.beforeCreate) {
5957
- callHook(options.beforeCreate, instance, "bc" /* LifecycleHooks.BEFORE_CREATE */);
6001
+ callHook$1(options.beforeCreate, instance, "bc" /* LifecycleHooks.BEFORE_CREATE */);
5958
6002
  }
5959
6003
  const {
5960
6004
  // state
@@ -6004,24 +6048,24 @@ function applyOptions(instance) {
6004
6048
  }
6005
6049
  }
6006
6050
  else {
6007
- warn$1(`Method "${key}" has type "${typeof methodHandler}" in the component definition. ` +
6051
+ warn(`Method "${key}" has type "${typeof methodHandler}" in the component definition. ` +
6008
6052
  `Did you reference the function correctly?`);
6009
6053
  }
6010
6054
  }
6011
6055
  }
6012
6056
  if (dataOptions) {
6013
6057
  if (!isFunction(dataOptions)) {
6014
- warn$1(`The data option must be a function. ` +
6058
+ warn(`The data option must be a function. ` +
6015
6059
  `Plain object usage is no longer supported.`);
6016
6060
  }
6017
6061
  const data = dataOptions.call(publicThis, publicThis);
6018
6062
  if (isPromise(data)) {
6019
- warn$1(`data() returned a Promise - note data() cannot be async; If you ` +
6063
+ warn(`data() returned a Promise - note data() cannot be async; If you ` +
6020
6064
  `intend to perform data fetching before component renders, use ` +
6021
6065
  `async setup() + <Suspense>.`);
6022
6066
  }
6023
6067
  if (!isObject(data)) {
6024
- warn$1(`data() should return an object.`);
6068
+ warn(`data() should return an object.`);
6025
6069
  }
6026
6070
  else {
6027
6071
  instance.data = reactive(data);
@@ -6052,15 +6096,15 @@ function applyOptions(instance) {
6052
6096
  ? opt.get.bind(publicThis, publicThis)
6053
6097
  : NOOP;
6054
6098
  if (get === NOOP) {
6055
- warn$1(`Computed property "${key}" has no getter.`);
6099
+ warn(`Computed property "${key}" has no getter.`);
6056
6100
  }
6057
6101
  const set = !isFunction(opt) && isFunction(opt.set)
6058
6102
  ? opt.set.bind(publicThis)
6059
6103
  : () => {
6060
- warn$1(`Write operation failed: computed property "${key}" is readonly.`);
6104
+ warn(`Write operation failed: computed property "${key}" is readonly.`);
6061
6105
  }
6062
6106
  ;
6063
- const c = computed$1({
6107
+ const c = computed({
6064
6108
  get,
6065
6109
  set
6066
6110
  });
@@ -6089,7 +6133,7 @@ function applyOptions(instance) {
6089
6133
  });
6090
6134
  }
6091
6135
  if (created) {
6092
- callHook(created, instance, "c" /* LifecycleHooks.CREATED */);
6136
+ callHook$1(created, instance, "c" /* LifecycleHooks.CREATED */);
6093
6137
  }
6094
6138
  function registerLifecycleHook(register, hook) {
6095
6139
  if (isArray(hook)) {
@@ -6183,7 +6227,7 @@ function resolveInjections(injectOptions, ctx, checkDuplicateProperties = NOOP,
6183
6227
  }
6184
6228
  else {
6185
6229
  {
6186
- warn$1(`injected property "${key}" is a ref and will be auto-unwrapped ` +
6230
+ warn(`injected property "${key}" is a ref and will be auto-unwrapped ` +
6187
6231
  `and no longer needs \`.value\` in the next minor release. ` +
6188
6232
  `To opt-in to the new behavior now, ` +
6189
6233
  `set \`app.config.unwrapInjectedRef = true\` (this config is ` +
@@ -6200,7 +6244,7 @@ function resolveInjections(injectOptions, ctx, checkDuplicateProperties = NOOP,
6200
6244
  }
6201
6245
  }
6202
6246
  }
6203
- function callHook(hook, instance, type) {
6247
+ function callHook$1(hook, instance, type) {
6204
6248
  callWithAsyncErrorHandling(isArray(hook)
6205
6249
  ? hook.map(h => h.bind(instance.proxy))
6206
6250
  : hook.bind(instance.proxy), instance, type);
@@ -6215,7 +6259,7 @@ function createWatcher(raw, ctx, publicThis, key) {
6215
6259
  watch(getter, handler);
6216
6260
  }
6217
6261
  else {
6218
- warn$1(`Invalid watch handler specified by key "${raw}"`, handler);
6262
+ warn(`Invalid watch handler specified by key "${raw}"`, handler);
6219
6263
  }
6220
6264
  }
6221
6265
  else if (isFunction(raw)) {
@@ -6233,12 +6277,12 @@ function createWatcher(raw, ctx, publicThis, key) {
6233
6277
  watch(getter, handler, raw);
6234
6278
  }
6235
6279
  else {
6236
- warn$1(`Invalid watch handler specified by key "${raw.handler}"`, handler);
6280
+ warn(`Invalid watch handler specified by key "${raw.handler}"`, handler);
6237
6281
  }
6238
6282
  }
6239
6283
  }
6240
6284
  else {
6241
- warn$1(`Invalid watch option: "${key}"`, raw);
6285
+ warn(`Invalid watch option: "${key}"`, raw);
6242
6286
  }
6243
6287
  }
6244
6288
  /**
@@ -6290,7 +6334,7 @@ function mergeOptions(to, from, strats, asMixin = false) {
6290
6334
  }
6291
6335
  for (const key in from) {
6292
6336
  if (asMixin && key === 'expose') {
6293
- warn$1(`"expose" option is ignored when declared in mixins or extends. ` +
6337
+ warn(`"expose" option is ignored when declared in mixins or extends. ` +
6294
6338
  `It should only be declared in the base component itself.`);
6295
6339
  }
6296
6340
  else {
@@ -6707,7 +6751,7 @@ function normalizePropsOptions(comp, appContext, asMixin = false) {
6707
6751
  if (isArray(raw)) {
6708
6752
  for (let i = 0; i < raw.length; i++) {
6709
6753
  if (!isString(raw[i])) {
6710
- warn$1(`props must be strings when using array syntax.`, raw[i]);
6754
+ warn(`props must be strings when using array syntax.`, raw[i]);
6711
6755
  }
6712
6756
  const normalizedKey = camelize(raw[i]);
6713
6757
  if (validatePropName(normalizedKey)) {
@@ -6717,7 +6761,7 @@ function normalizePropsOptions(comp, appContext, asMixin = false) {
6717
6761
  }
6718
6762
  else if (raw) {
6719
6763
  if (!isObject(raw)) {
6720
- warn$1(`invalid props options`, raw);
6764
+ warn(`invalid props options`, raw);
6721
6765
  }
6722
6766
  for (const key in raw) {
6723
6767
  const normalizedKey = camelize(key);
@@ -6750,15 +6794,15 @@ function validatePropName(key) {
6750
6794
  return true;
6751
6795
  }
6752
6796
  else {
6753
- warn$1(`Invalid prop name: "${key}" is a reserved property.`);
6797
+ warn(`Invalid prop name: "${key}" is a reserved property.`);
6754
6798
  }
6755
6799
  return false;
6756
6800
  }
6757
6801
  // use function string name to check type constructors
6758
6802
  // so that it works across vms / iframes.
6759
6803
  function getType(ctor) {
6760
- const match = ctor && ctor.toString().match(/^\s*function (\w+)/);
6761
- return match ? match[1] : ctor === null ? 'null' : '';
6804
+ const match = ctor && ctor.toString().match(/^\s*(function|class) (\w+)/);
6805
+ return match ? match[2] : ctor === null ? 'null' : '';
6762
6806
  }
6763
6807
  function isSameType(a, b) {
6764
6808
  return getType(a) === getType(b);
@@ -6792,7 +6836,7 @@ function validateProp(name, value, prop, isAbsent) {
6792
6836
  const { type, required, validator } = prop;
6793
6837
  // required!
6794
6838
  if (required && isAbsent) {
6795
- warn$1('Missing required prop: "' + name + '"');
6839
+ warn('Missing required prop: "' + name + '"');
6796
6840
  return;
6797
6841
  }
6798
6842
  // missing but optional
@@ -6811,13 +6855,13 @@ function validateProp(name, value, prop, isAbsent) {
6811
6855
  isValid = valid;
6812
6856
  }
6813
6857
  if (!isValid) {
6814
- warn$1(getInvalidTypeMessage(name, value, expectedTypes));
6858
+ warn(getInvalidTypeMessage(name, value, expectedTypes));
6815
6859
  return;
6816
6860
  }
6817
6861
  }
6818
6862
  // custom validator
6819
6863
  if (validator && !validator(value)) {
6820
- warn$1('Invalid prop: custom validator check failed for prop "' + name + '".');
6864
+ warn('Invalid prop: custom validator check failed for prop "' + name + '".');
6821
6865
  }
6822
6866
  }
6823
6867
  const isSimpleType = /*#__PURE__*/ makeMap('String,Number,Boolean,Function,Symbol,BigInt');
@@ -6914,7 +6958,7 @@ const normalizeSlot = (key, rawSlot, ctx) => {
6914
6958
  }
6915
6959
  const normalized = withCtx((...args) => {
6916
6960
  if (true && currentInstance) {
6917
- warn$1(`Slot "${key}" invoked outside of the render function: ` +
6961
+ warn(`Slot "${key}" invoked outside of the render function: ` +
6918
6962
  `this will not track dependencies used in the slot. ` +
6919
6963
  `Invoke the slot function inside the render function instead.`);
6920
6964
  }
@@ -6934,7 +6978,7 @@ const normalizeObjectSlots = (rawSlots, slots, instance) => {
6934
6978
  }
6935
6979
  else if (value != null) {
6936
6980
  if (!(isCompatEnabled("RENDER_FUNCTION" /* DeprecationTypes.RENDER_FUNCTION */, instance))) {
6937
- warn$1(`Non-function value encountered for slot "${key}". ` +
6981
+ warn(`Non-function value encountered for slot "${key}". ` +
6938
6982
  `Prefer function slots for better performance.`);
6939
6983
  }
6940
6984
  const normalized = normalizeSlotValue(value);
@@ -6945,7 +6989,7 @@ const normalizeObjectSlots = (rawSlots, slots, instance) => {
6945
6989
  const normalizeVNodeSlots = (instance, children) => {
6946
6990
  if (!isKeepAlive(instance.vnode) &&
6947
6991
  !(isCompatEnabled("RENDER_FUNCTION" /* DeprecationTypes.RENDER_FUNCTION */, instance))) {
6948
- warn$1(`Non-function value encountered for default slot. ` +
6992
+ warn(`Non-function value encountered for default slot. ` +
6949
6993
  `Prefer function slots for better performance.`);
6950
6994
  }
6951
6995
  const normalized = normalizeSlotValue(children);
@@ -7069,7 +7113,7 @@ let isCopyingConfig = false;
7069
7113
  let singletonApp;
7070
7114
  let singletonCtor;
7071
7115
  // Legacy global Vue constructor
7072
- function createCompatVue(createApp, createSingletonApp) {
7116
+ function createCompatVue$1(createApp, createSingletonApp) {
7073
7117
  singletonApp = createSingletonApp({});
7074
7118
  const Vue = (singletonCtor = function Vue(options = {}) {
7075
7119
  return createCompatApp(options, Vue);
@@ -7094,7 +7138,7 @@ function createCompatVue(createApp, createSingletonApp) {
7094
7138
  return vm;
7095
7139
  }
7096
7140
  }
7097
- Vue.version = `2.6.14-compat:${"3.2.44"}`;
7141
+ Vue.version = `2.6.14-compat:${"3.2.46"}`;
7098
7142
  Vue.config = singletonApp.config;
7099
7143
  Vue.use = (p, ...options) => {
7100
7144
  if (p && isFunction(p.install)) {
@@ -7196,7 +7240,7 @@ function createCompatVue(createApp, createSingletonApp) {
7196
7240
  });
7197
7241
  // internal utils - these are technically internal but some plugins use it.
7198
7242
  const util = {
7199
- warn: warn$1 ,
7243
+ warn: warn ,
7200
7244
  extend,
7201
7245
  mergeOptions: (parent, child, vm) => mergeOptions(parent, child, vm ? undefined : internalOptionMergeStrats),
7202
7246
  defineReactive
@@ -7207,7 +7251,7 @@ function createCompatVue(createApp, createSingletonApp) {
7207
7251
  return util;
7208
7252
  }
7209
7253
  });
7210
- Vue.configureCompat = configureCompat;
7254
+ Vue.configureCompat = configureCompat$1;
7211
7255
  return Vue;
7212
7256
  }
7213
7257
  function installAppCompatProperties(app, context, render) {
@@ -7231,7 +7275,7 @@ function installFilterMethod(app, context) {
7231
7275
  return context.filters[name];
7232
7276
  }
7233
7277
  if (context.filters[name]) {
7234
- warn$1(`Filter "${name}" has already been registered.`);
7278
+ warn(`Filter "${name}" has already been registered.`);
7235
7279
  }
7236
7280
  context.filters[name] = filter;
7237
7281
  return app;
@@ -7342,7 +7386,7 @@ function installCompatMount(app, context, render) {
7342
7386
  // both runtime-core AND runtime-dom.
7343
7387
  instance.ctx._compat_mount = (selectorOrEl) => {
7344
7388
  if (isMounted) {
7345
- warn$1(`Root instance is already mounted.`);
7389
+ warn(`Root instance is already mounted.`);
7346
7390
  return;
7347
7391
  }
7348
7392
  let container;
@@ -7350,7 +7394,7 @@ function installCompatMount(app, context, render) {
7350
7394
  // eslint-disable-next-line
7351
7395
  const result = document.querySelector(selectorOrEl);
7352
7396
  if (!result) {
7353
- warn$1(`Failed to mount root instance: selector "${selectorOrEl}" returned null.`);
7397
+ warn(`Failed to mount root instance: selector "${selectorOrEl}" returned null.`);
7354
7398
  return;
7355
7399
  }
7356
7400
  container = result;
@@ -7520,21 +7564,21 @@ function createAppContext() {
7520
7564
  emitsCache: new WeakMap()
7521
7565
  };
7522
7566
  }
7523
- let uid = 0;
7567
+ let uid$1 = 0;
7524
7568
  function createAppAPI(render, hydrate) {
7525
7569
  return function createApp(rootComponent, rootProps = null) {
7526
7570
  if (!isFunction(rootComponent)) {
7527
7571
  rootComponent = Object.assign({}, rootComponent);
7528
7572
  }
7529
7573
  if (rootProps != null && !isObject(rootProps)) {
7530
- warn$1(`root props passed to app.mount() must be an object.`);
7574
+ warn(`root props passed to app.mount() must be an object.`);
7531
7575
  rootProps = null;
7532
7576
  }
7533
7577
  const context = createAppContext();
7534
7578
  const installedPlugins = new Set();
7535
7579
  let isMounted = false;
7536
7580
  const app = (context.app = {
7537
- _uid: uid++,
7581
+ _uid: uid$1++,
7538
7582
  _component: rootComponent,
7539
7583
  _props: rootProps,
7540
7584
  _container: null,
@@ -7546,12 +7590,12 @@ function createAppAPI(render, hydrate) {
7546
7590
  },
7547
7591
  set config(v) {
7548
7592
  {
7549
- warn$1(`app.config cannot be replaced. Modify individual options instead.`);
7593
+ warn(`app.config cannot be replaced. Modify individual options instead.`);
7550
7594
  }
7551
7595
  },
7552
7596
  use(plugin, ...options) {
7553
7597
  if (installedPlugins.has(plugin)) {
7554
- warn$1(`Plugin has already been applied to target app.`);
7598
+ warn(`Plugin has already been applied to target app.`);
7555
7599
  }
7556
7600
  else if (plugin && isFunction(plugin.install)) {
7557
7601
  installedPlugins.add(plugin);
@@ -7562,7 +7606,7 @@ function createAppAPI(render, hydrate) {
7562
7606
  plugin(app, ...options);
7563
7607
  }
7564
7608
  else {
7565
- warn$1(`A plugin must either be a function or an object with an "install" ` +
7609
+ warn(`A plugin must either be a function or an object with an "install" ` +
7566
7610
  `function.`);
7567
7611
  }
7568
7612
  return app;
@@ -7573,7 +7617,7 @@ function createAppAPI(render, hydrate) {
7573
7617
  context.mixins.push(mixin);
7574
7618
  }
7575
7619
  else {
7576
- warn$1('Mixin has already been applied to target app' +
7620
+ warn('Mixin has already been applied to target app' +
7577
7621
  (mixin.name ? `: ${mixin.name}` : ''));
7578
7622
  }
7579
7623
  }
@@ -7587,7 +7631,7 @@ function createAppAPI(render, hydrate) {
7587
7631
  return context.components[name];
7588
7632
  }
7589
7633
  if (context.components[name]) {
7590
- warn$1(`Component "${name}" has already been registered in target app.`);
7634
+ warn(`Component "${name}" has already been registered in target app.`);
7591
7635
  }
7592
7636
  context.components[name] = component;
7593
7637
  return app;
@@ -7600,7 +7644,7 @@ function createAppAPI(render, hydrate) {
7600
7644
  return context.directives[name];
7601
7645
  }
7602
7646
  if (context.directives[name]) {
7603
- warn$1(`Directive "${name}" has already been registered in target app.`);
7647
+ warn(`Directive "${name}" has already been registered in target app.`);
7604
7648
  }
7605
7649
  context.directives[name] = directive;
7606
7650
  return app;
@@ -7609,7 +7653,7 @@ function createAppAPI(render, hydrate) {
7609
7653
  if (!isMounted) {
7610
7654
  // #5571
7611
7655
  if (rootContainer.__vue_app__) {
7612
- warn$1(`There is already an app instance mounted on the host container.\n` +
7656
+ warn(`There is already an app instance mounted on the host container.\n` +
7613
7657
  ` If you want to mount another app on the same host container,` +
7614
7658
  ` you need to unmount the previous app by calling \`app.unmount()\` first.`);
7615
7659
  }
@@ -7639,7 +7683,7 @@ function createAppAPI(render, hydrate) {
7639
7683
  return getExposeProxy(vnode.component) || vnode.component.proxy;
7640
7684
  }
7641
7685
  else {
7642
- warn$1(`App has already been mounted.\n` +
7686
+ warn(`App has already been mounted.\n` +
7643
7687
  `If you want to remount the same app, move your app creation logic ` +
7644
7688
  `into a factory function and create fresh app instances for each ` +
7645
7689
  `mount - e.g. \`const createMyApp = () => createApp(App)\``);
@@ -7655,12 +7699,12 @@ function createAppAPI(render, hydrate) {
7655
7699
  delete app._container.__vue_app__;
7656
7700
  }
7657
7701
  else {
7658
- warn$1(`Cannot unmount an app that is not mounted.`);
7702
+ warn(`Cannot unmount an app that is not mounted.`);
7659
7703
  }
7660
7704
  },
7661
7705
  provide(key, value) {
7662
7706
  if (key in context.provides) {
7663
- warn$1(`App already provides property with key "${String(key)}". ` +
7707
+ warn(`App already provides property with key "${String(key)}". ` +
7664
7708
  `It will be overwritten with the new value.`);
7665
7709
  }
7666
7710
  context.provides[key] = value;
@@ -7693,7 +7737,7 @@ function setRef(rawRef, oldRawRef, parentSuspense, vnode, isUnmount = false) {
7693
7737
  const value = isUnmount ? null : refValue;
7694
7738
  const { i: owner, r: ref } = rawRef;
7695
7739
  if (!owner) {
7696
- warn$1(`Missing ref owner context. ref cannot be used on hoisted vnodes. ` +
7740
+ warn(`Missing ref owner context. ref cannot be used on hoisted vnodes. ` +
7697
7741
  `A vnode with ref must be created inside the render function.`);
7698
7742
  return;
7699
7743
  }
@@ -7760,7 +7804,7 @@ function setRef(rawRef, oldRawRef, parentSuspense, vnode, isUnmount = false) {
7760
7804
  refs[rawRef.k] = value;
7761
7805
  }
7762
7806
  else {
7763
- warn$1('Invalid template ref type:', ref, `(${typeof ref})`);
7807
+ warn('Invalid template ref type:', ref, `(${typeof ref})`);
7764
7808
  }
7765
7809
  };
7766
7810
  if (value) {
@@ -7772,7 +7816,7 @@ function setRef(rawRef, oldRawRef, parentSuspense, vnode, isUnmount = false) {
7772
7816
  }
7773
7817
  }
7774
7818
  else {
7775
- warn$1('Invalid template ref type:', ref, `(${typeof ref})`);
7819
+ warn('Invalid template ref type:', ref, `(${typeof ref})`);
7776
7820
  }
7777
7821
  }
7778
7822
  }
@@ -7789,7 +7833,7 @@ function createHydrationFunctions(rendererInternals) {
7789
7833
  const { mt: mountComponent, p: patch, o: { patchProp, createText, nextSibling, parentNode, remove, insert, createComment } } = rendererInternals;
7790
7834
  const hydrate = (vnode, container) => {
7791
7835
  if (!container.hasChildNodes()) {
7792
- warn$1(`Attempting to hydrate existing markup but container is empty. ` +
7836
+ warn(`Attempting to hydrate existing markup but container is empty. ` +
7793
7837
  `Performing full mount instead.`);
7794
7838
  patch(null, vnode, container);
7795
7839
  flushPostFlushCbs();
@@ -7832,7 +7876,7 @@ function createHydrationFunctions(rendererInternals) {
7832
7876
  else {
7833
7877
  if (node.data !== vnode.children) {
7834
7878
  hasMismatch = true;
7835
- warn$1(`Hydration text mismatch:` +
7879
+ warn(`Hydration text mismatch:` +
7836
7880
  `\n- Client: ${JSON.stringify(node.data)}` +
7837
7881
  `\n- Server: ${JSON.stringify(vnode.children)}`);
7838
7882
  node.data = vnode.children;
@@ -7947,7 +7991,7 @@ function createHydrationFunctions(rendererInternals) {
7947
7991
  nextNode = vnode.type.hydrate(node, vnode, parentComponent, parentSuspense, isSVGContainer(parentNode(node)), slotScopeIds, optimized, rendererInternals, hydrateNode);
7948
7992
  }
7949
7993
  else {
7950
- warn$1('Invalid HostVNode type:', type, `(${typeof type})`);
7994
+ warn('Invalid HostVNode type:', type, `(${typeof type})`);
7951
7995
  }
7952
7996
  }
7953
7997
  if (ref != null) {
@@ -8008,7 +8052,7 @@ function createHydrationFunctions(rendererInternals) {
8008
8052
  while (next) {
8009
8053
  hasMismatch = true;
8010
8054
  if (!hasWarned) {
8011
- warn$1(`Hydration children mismatch in <${vnode.type}>: ` +
8055
+ warn(`Hydration children mismatch in <${vnode.type}>: ` +
8012
8056
  `server rendered element contains more child nodes than client vdom.`);
8013
8057
  hasWarned = true;
8014
8058
  }
@@ -8021,7 +8065,7 @@ function createHydrationFunctions(rendererInternals) {
8021
8065
  else if (shapeFlag & 8 /* ShapeFlags.TEXT_CHILDREN */) {
8022
8066
  if (el.textContent !== vnode.children) {
8023
8067
  hasMismatch = true;
8024
- warn$1(`Hydration text content mismatch in <${vnode.type}>:\n` +
8068
+ warn(`Hydration text content mismatch in <${vnode.type}>:\n` +
8025
8069
  `- Client: ${el.textContent}\n` +
8026
8070
  `- Server: ${vnode.children}`);
8027
8071
  el.textContent = vnode.children;
@@ -8048,7 +8092,7 @@ function createHydrationFunctions(rendererInternals) {
8048
8092
  else {
8049
8093
  hasMismatch = true;
8050
8094
  if (!hasWarned) {
8051
- warn$1(`Hydration children mismatch in <${container.tagName.toLowerCase()}>: ` +
8095
+ warn(`Hydration children mismatch in <${container.tagName.toLowerCase()}>: ` +
8052
8096
  `server rendered element contains fewer child nodes than client vdom.`);
8053
8097
  hasWarned = true;
8054
8098
  }
@@ -8081,7 +8125,7 @@ function createHydrationFunctions(rendererInternals) {
8081
8125
  };
8082
8126
  const handleMismatch = (node, vnode, parentComponent, parentSuspense, slotScopeIds, isFragment) => {
8083
8127
  hasMismatch = true;
8084
- warn$1(`Hydration node mismatch:\n- Client vnode:`, vnode.type, `\n- Server rendered DOM:`, node, node.nodeType === 3 /* DOMNodeTypes.TEXT */
8128
+ warn(`Hydration node mismatch:\n- Client vnode:`, vnode.type, `\n- Server rendered DOM:`, node, node.nodeType === 3 /* DOMNodeTypes.TEXT */
8085
8129
  ? `(text)`
8086
8130
  : isComment(node) && node.data === '['
8087
8131
  ? `(start of fragment)`
@@ -8249,7 +8293,7 @@ function baseCreateRenderer(options, createHydrationFns) {
8249
8293
  type.process(n1, n2, container, anchor, parentComponent, parentSuspense, isSVG, slotScopeIds, optimized, internals);
8250
8294
  }
8251
8295
  else {
8252
- warn$1('Invalid VNode type:', type, `(${typeof type})`);
8296
+ warn('Invalid VNode type:', type, `(${typeof type})`);
8253
8297
  }
8254
8298
  }
8255
8299
  // set ref
@@ -8339,6 +8383,8 @@ function baseCreateRenderer(options, createHydrationFns) {
8339
8383
  if (dirs) {
8340
8384
  invokeDirectiveHook(vnode, null, parentComponent, 'created');
8341
8385
  }
8386
+ // scopeId
8387
+ setScopeId(el, vnode, vnode.scopeId, slotScopeIds, parentComponent);
8342
8388
  // props
8343
8389
  if (props) {
8344
8390
  for (const key in props) {
@@ -8362,8 +8408,6 @@ function baseCreateRenderer(options, createHydrationFns) {
8362
8408
  invokeVNodeHook(vnodeHook, parentComponent, vnode);
8363
8409
  }
8364
8410
  }
8365
- // scopeId
8366
- setScopeId(el, vnode, vnode.scopeId, slotScopeIds, parentComponent);
8367
8411
  {
8368
8412
  Object.defineProperty(el, '__vnode', {
8369
8413
  value: vnode,
@@ -9092,7 +9136,7 @@ function baseCreateRenderer(options, createHydrationFns) {
9092
9136
  : normalizeVNode(c2[i]));
9093
9137
  if (nextChild.key != null) {
9094
9138
  if (keyToNewIndexMap.has(nextChild.key)) {
9095
- warn$1(`Duplicate keys found during update:`, JSON.stringify(nextChild.key), `Make sure keys are unique.`);
9139
+ warn(`Duplicate keys found during update:`, JSON.stringify(nextChild.key), `Make sure keys are unique.`);
9096
9140
  }
9097
9141
  keyToNewIndexMap.set(nextChild.key, i);
9098
9142
  }
@@ -9481,6 +9525,10 @@ function traverseStaticChildren(n1, n2, shallow = false) {
9481
9525
  if (!shallow)
9482
9526
  traverseStaticChildren(c1, c2);
9483
9527
  }
9528
+ // #6852 also inherit for text nodes
9529
+ if (c2.type === Text) {
9530
+ c2.el = c1.el;
9531
+ }
9484
9532
  // also inherit for comment nodes, but not placeholders (e.g. v-if which
9485
9533
  // would have received .el during block patch)
9486
9534
  if (c2.type === Comment && !c2.el) {
@@ -9539,14 +9587,14 @@ const resolveTarget = (props, select) => {
9539
9587
  const targetSelector = props && props.to;
9540
9588
  if (isString(targetSelector)) {
9541
9589
  if (!select) {
9542
- warn$1(`Current renderer does not support string target for Teleports. ` +
9590
+ warn(`Current renderer does not support string target for Teleports. ` +
9543
9591
  `(missing querySelector renderer option)`);
9544
9592
  return null;
9545
9593
  }
9546
9594
  else {
9547
9595
  const target = select(targetSelector);
9548
9596
  if (!target) {
9549
- warn$1(`Failed to locate Teleport target with selector "${targetSelector}". ` +
9597
+ warn(`Failed to locate Teleport target with selector "${targetSelector}". ` +
9550
9598
  `Note the target element must exist before the component is mounted - ` +
9551
9599
  `i.e. the target cannot be rendered by the component itself, and ` +
9552
9600
  `ideally should be outside of the entire Vue component tree.`);
@@ -9556,7 +9604,7 @@ const resolveTarget = (props, select) => {
9556
9604
  }
9557
9605
  else {
9558
9606
  if (!targetSelector && !isTeleportDisabled(props)) {
9559
- warn$1(`Invalid Teleport target: ${targetSelector}`);
9607
+ warn(`Invalid Teleport target: ${targetSelector}`);
9560
9608
  }
9561
9609
  return targetSelector;
9562
9610
  }
@@ -9589,7 +9637,7 @@ const TeleportImpl = {
9589
9637
  isSVG = isSVG || isTargetSVG(target);
9590
9638
  }
9591
9639
  else if (!disabled) {
9592
- warn$1('Invalid Teleport target on mount:', target, `(${typeof target})`);
9640
+ warn('Invalid Teleport target on mount:', target, `(${typeof target})`);
9593
9641
  }
9594
9642
  const mount = (container, anchor) => {
9595
9643
  // Teleport *always* has Array children. This is enforced in both the
@@ -9641,7 +9689,7 @@ const TeleportImpl = {
9641
9689
  moveTeleport(n2, nextTarget, null, internals, 0 /* TeleportMoveTypes.TARGET_CHANGE */);
9642
9690
  }
9643
9691
  else {
9644
- warn$1('Invalid Teleport target on update:', target, `(${typeof target})`);
9692
+ warn('Invalid Teleport target on update:', target, `(${typeof target})`);
9645
9693
  }
9646
9694
  }
9647
9695
  else if (wasDisabled) {
@@ -9651,6 +9699,7 @@ const TeleportImpl = {
9651
9699
  }
9652
9700
  }
9653
9701
  }
9702
+ updateCssVars(n2);
9654
9703
  },
9655
9704
  remove(vnode, parentComponent, parentSuspense, optimized, { um: unmount, o: { remove: hostRemove } }, doRemove) {
9656
9705
  const { shapeFlag, children, anchor, targetAnchor, target, props } = vnode;
@@ -9729,11 +9778,26 @@ function hydrateTeleport(node, vnode, parentComponent, parentSuspense, slotScope
9729
9778
  hydrateChildren(targetNode, vnode, target, parentComponent, parentSuspense, slotScopeIds, optimized);
9730
9779
  }
9731
9780
  }
9781
+ updateCssVars(vnode);
9732
9782
  }
9733
9783
  return vnode.anchor && nextSibling(vnode.anchor);
9734
9784
  }
9735
9785
  // Force-casted public typing for h and TSX props inference
9736
9786
  const Teleport = TeleportImpl;
9787
+ function updateCssVars(vnode) {
9788
+ // presence of .ut method indicates owner component uses css vars.
9789
+ // code path here can assume browser environment.
9790
+ const ctx = vnode.ctx;
9791
+ if (ctx && ctx.ut) {
9792
+ let node = vnode.children[0].el;
9793
+ while (node !== vnode.targetAnchor) {
9794
+ if (node.nodeType === 1)
9795
+ node.setAttribute('data-v-owner', ctx.uid);
9796
+ node = node.nextSibling;
9797
+ }
9798
+ ctx.ut();
9799
+ }
9800
+ }
9737
9801
 
9738
9802
  const normalizedAsyncComponentMap = new Map();
9739
9803
  function convertLegacyAsyncComponent(comp) {
@@ -9888,6 +9952,10 @@ function isVNode(value) {
9888
9952
  function isSameVNodeType(n1, n2) {
9889
9953
  if (n2.shapeFlag & 6 /* ShapeFlags.COMPONENT */ &&
9890
9954
  hmrDirtyComponents.has(n2.type)) {
9955
+ // #7042, ensure the vnode being unmounted during HMR
9956
+ // bitwise operations to remove keep alive flags
9957
+ n1.shapeFlag &= ~256 /* ShapeFlags.COMPONENT_SHOULD_KEEP_ALIVE */;
9958
+ n2.shapeFlag &= ~512 /* ShapeFlags.COMPONENT_KEPT_ALIVE */;
9891
9959
  // HMR only: if the component has been hot-updated, force a reload.
9892
9960
  return false;
9893
9961
  }
@@ -9943,7 +10011,8 @@ function createBaseVNode(type, props = null, children = null, patchFlag = 0, dyn
9943
10011
  patchFlag,
9944
10012
  dynamicProps,
9945
10013
  dynamicChildren: null,
9946
- appContext: null
10014
+ appContext: null,
10015
+ ctx: currentRenderingInstance
9947
10016
  };
9948
10017
  if (needFullChildrenNormalization) {
9949
10018
  normalizeChildren(vnode, children);
@@ -9961,7 +10030,7 @@ function createBaseVNode(type, props = null, children = null, patchFlag = 0, dyn
9961
10030
  }
9962
10031
  // validate key
9963
10032
  if (vnode.key !== vnode.key) {
9964
- warn$1(`VNode created with invalid key (NaN). VNode type:`, vnode.type);
10033
+ warn(`VNode created with invalid key (NaN). VNode type:`, vnode.type);
9965
10034
  }
9966
10035
  // track vnode for block tree
9967
10036
  if (isBlockTreeEnabled > 0 &&
@@ -9989,7 +10058,7 @@ const createVNode = (createVNodeWithArgsTransform );
9989
10058
  function _createVNode(type, props = null, children = null, patchFlag = 0, dynamicProps = null, isBlockNode = false) {
9990
10059
  if (!type || type === NULL_DYNAMIC_COMPONENT) {
9991
10060
  if (!type) {
9992
- warn$1(`Invalid vnode type when creating vnode: ${type}.`);
10061
+ warn(`Invalid vnode type when creating vnode: ${type}.`);
9993
10062
  }
9994
10063
  type = Comment;
9995
10064
  }
@@ -10051,7 +10120,7 @@ function _createVNode(type, props = null, children = null, patchFlag = 0, dynami
10051
10120
  : 0;
10052
10121
  if (shapeFlag & 4 /* ShapeFlags.STATEFUL_COMPONENT */ && isProxy(type)) {
10053
10122
  type = toRaw(type);
10054
- warn$1(`Vue received a Component which was made a reactive object. This can ` +
10123
+ warn(`Vue received a Component which was made a reactive object. This can ` +
10055
10124
  `lead to unnecessary performance overhead, and should be avoided by ` +
10056
10125
  `marking the component with \`markRaw\` or using \`shallowRef\` ` +
10057
10126
  `instead of \`ref\`.`, `\nComponent that was made reactive: `, type);
@@ -10118,7 +10187,9 @@ function cloneVNode(vnode, extraProps, mergeRef = false) {
10118
10187
  ssContent: vnode.ssContent && cloneVNode(vnode.ssContent),
10119
10188
  ssFallback: vnode.ssFallback && cloneVNode(vnode.ssFallback),
10120
10189
  el: vnode.el,
10121
- anchor: vnode.anchor
10190
+ anchor: vnode.anchor,
10191
+ ctx: vnode.ctx,
10192
+ ce: vnode.ce
10122
10193
  };
10123
10194
  {
10124
10195
  defineLegacyVNodeProperties(cloned);
@@ -10288,13 +10359,13 @@ function invokeVNodeHook(hook, instance, vnode, prevVNode = null) {
10288
10359
  }
10289
10360
 
10290
10361
  const emptyAppContext = createAppContext();
10291
- let uid$1 = 0;
10362
+ let uid = 0;
10292
10363
  function createComponentInstance(vnode, parent, suspense) {
10293
10364
  const type = vnode.type;
10294
10365
  // inherit parent app context - or - if root, adopt from root vnode
10295
10366
  const appContext = (parent ? parent.appContext : vnode.appContext) || emptyAppContext;
10296
10367
  const instance = {
10297
- uid: uid$1++,
10368
+ uid: uid++,
10298
10369
  vnode,
10299
10370
  type,
10300
10371
  parent,
@@ -10364,7 +10435,7 @@ function createComponentInstance(vnode, parent, suspense) {
10364
10435
  instance.ctx = createDevRenderContext(instance);
10365
10436
  }
10366
10437
  instance.root = parent ? parent.root : instance;
10367
- instance.emit = emit$2.bind(null, instance);
10438
+ instance.emit = emit.bind(null, instance);
10368
10439
  // apply custom element special handling
10369
10440
  if (vnode.ce) {
10370
10441
  vnode.ce(instance);
@@ -10385,7 +10456,7 @@ const isBuiltInTag = /*#__PURE__*/ makeMap('slot,component');
10385
10456
  function validateComponentName(name, config) {
10386
10457
  const appIsNativeTag = config.isNativeTag || NO;
10387
10458
  if (isBuiltInTag(name) || appIsNativeTag(name)) {
10388
- warn$1('Do not use built-in or reserved HTML elements as component id: ' + name);
10459
+ warn('Do not use built-in or reserved HTML elements as component id: ' + name);
10389
10460
  }
10390
10461
  }
10391
10462
  function isStatefulComponent(instance) {
@@ -10424,7 +10495,7 @@ function setupStatefulComponent(instance, isSSR) {
10424
10495
  }
10425
10496
  }
10426
10497
  if (Component.compilerOptions && isRuntimeOnly()) {
10427
- warn$1(`"compilerOptions" is only supported when using a build of Vue that ` +
10498
+ warn(`"compilerOptions" is only supported when using a build of Vue that ` +
10428
10499
  `includes the runtime compiler. Since you are using a runtime-only ` +
10429
10500
  `build, the options should be passed via your build tool config instead.`);
10430
10501
  }
@@ -10465,7 +10536,7 @@ function setupStatefulComponent(instance, isSSR) {
10465
10536
  instance.asyncDep = setupResult;
10466
10537
  if (!instance.suspense) {
10467
10538
  const name = (_a = Component.name) !== null && _a !== void 0 ? _a : 'Anonymous';
10468
- warn$1(`Component <${name}>: setup function returned a promise, but no ` +
10539
+ warn(`Component <${name}>: setup function returned a promise, but no ` +
10469
10540
  `<Suspense> boundary was found in the parent component tree. ` +
10470
10541
  `A component with async setup() must be nested in a <Suspense> ` +
10471
10542
  `in order to be rendered.`);
@@ -10489,7 +10560,7 @@ function handleSetupResult(instance, setupResult, isSSR) {
10489
10560
  }
10490
10561
  else if (isObject(setupResult)) {
10491
10562
  if (isVNode(setupResult)) {
10492
- warn$1(`setup() should not return VNodes directly - ` +
10563
+ warn(`setup() should not return VNodes directly - ` +
10493
10564
  `return a render function instead.`);
10494
10565
  }
10495
10566
  // setup returned bindings.
@@ -10503,7 +10574,7 @@ function handleSetupResult(instance, setupResult, isSSR) {
10503
10574
  }
10504
10575
  }
10505
10576
  else if (setupResult !== undefined) {
10506
- warn$1(`setup() should return an object. Received: ${setupResult === null ? 'null' : typeof setupResult}`);
10577
+ warn(`setup() should return an object. Received: ${setupResult === null ? 'null' : typeof setupResult}`);
10507
10578
  }
10508
10579
  finishComponentSetup(instance, isSSR);
10509
10580
  }
@@ -10586,13 +10657,13 @@ function finishComponentSetup(instance, isSSR, skipOptions) {
10586
10657
  if (!Component.render && instance.render === NOOP && !isSSR) {
10587
10658
  /* istanbul ignore if */
10588
10659
  if (!compile && Component.template) {
10589
- warn$1(`Component provided template option but ` +
10660
+ warn(`Component provided template option but ` +
10590
10661
  `runtime compilation is not supported in this build of Vue.` +
10591
10662
  (` Use "vue.esm-browser.js" instead.`
10592
10663
  ) /* should not happen */);
10593
10664
  }
10594
10665
  else {
10595
- warn$1(`Component is missing template or render function.`);
10666
+ warn(`Component is missing template or render function.`);
10596
10667
  }
10597
10668
  }
10598
10669
  }
@@ -10604,11 +10675,11 @@ function createAttrsProxy(instance) {
10604
10675
  return target[key];
10605
10676
  },
10606
10677
  set() {
10607
- warn$1(`setupContext.attrs is readonly.`);
10678
+ warn(`setupContext.attrs is readonly.`);
10608
10679
  return false;
10609
10680
  },
10610
10681
  deleteProperty() {
10611
- warn$1(`setupContext.attrs is readonly.`);
10682
+ warn(`setupContext.attrs is readonly.`);
10612
10683
  return false;
10613
10684
  }
10614
10685
  }
@@ -10616,8 +10687,24 @@ function createAttrsProxy(instance) {
10616
10687
  }
10617
10688
  function createSetupContext(instance) {
10618
10689
  const expose = exposed => {
10619
- if (instance.exposed) {
10620
- warn$1(`expose() should be called only once per setup().`);
10690
+ {
10691
+ if (instance.exposed) {
10692
+ warn(`expose() should be called only once per setup().`);
10693
+ }
10694
+ if (exposed != null) {
10695
+ let exposedType = typeof exposed;
10696
+ if (exposedType === 'object') {
10697
+ if (isArray(exposed)) {
10698
+ exposedType = 'array';
10699
+ }
10700
+ else if (isRef(exposed)) {
10701
+ exposedType = 'ref';
10702
+ }
10703
+ }
10704
+ if (exposedType !== 'object') {
10705
+ warn(`expose() should be passed a plain object, received ${exposedType}.`);
10706
+ }
10707
+ }
10621
10708
  }
10622
10709
  instance.exposed = exposed || {};
10623
10710
  };
@@ -10692,13 +10779,13 @@ function isClassComponent(value) {
10692
10779
  return isFunction(value) && '__vccOpts' in value;
10693
10780
  }
10694
10781
 
10695
- const computed$1 = ((getterOrOptions, debugOptions) => {
10782
+ const computed = ((getterOrOptions, debugOptions) => {
10696
10783
  // @ts-ignore
10697
- return computed(getterOrOptions, debugOptions, isInSSRComponentSetup);
10784
+ return computed$1(getterOrOptions, debugOptions, isInSSRComponentSetup);
10698
10785
  });
10699
10786
 
10700
10787
  // dev only
10701
- const warnRuntimeUsage = (method) => warn$1(`${method}() is a compiler-hint helper that is only usable inside ` +
10788
+ const warnRuntimeUsage = (method) => warn(`${method}() is a compiler-hint helper that is only usable inside ` +
10702
10789
  `<script setup> of a single file component. Its arguments should be ` +
10703
10790
  `compiled away and passing it at runtime has no effect.`);
10704
10791
  // implementation
@@ -10765,7 +10852,7 @@ function useAttrs() {
10765
10852
  function getContext() {
10766
10853
  const i = getCurrentInstance();
10767
10854
  if (!i) {
10768
- warn$1(`useContext() called without active instance.`);
10855
+ warn(`useContext() called without active instance.`);
10769
10856
  }
10770
10857
  return i.setupContext || (i.setupContext = createSetupContext(i));
10771
10858
  }
@@ -10792,7 +10879,7 @@ function mergeDefaults(raw, defaults) {
10792
10879
  props[key] = { default: defaults[key] };
10793
10880
  }
10794
10881
  else {
10795
- warn$1(`props default key "${key}" has no corresponding declaration.`);
10882
+ warn(`props default key "${key}" has no corresponding declaration.`);
10796
10883
  }
10797
10884
  }
10798
10885
  return props;
@@ -10835,7 +10922,7 @@ function createPropsRestProxy(props, excludedKeys) {
10835
10922
  function withAsyncContext(getAwaitable) {
10836
10923
  const ctx = getCurrentInstance();
10837
10924
  if (!ctx) {
10838
- warn$1(`withAsyncContext called without active current instance. ` +
10925
+ warn(`withAsyncContext called without active current instance. ` +
10839
10926
  `This is likely a bug.`);
10840
10927
  }
10841
10928
  let awaitable = getAwaitable();
@@ -10882,7 +10969,7 @@ const useSSRContext = () => {
10882
10969
  {
10883
10970
  const ctx = inject(ssrContextKey);
10884
10971
  if (!ctx) {
10885
- warn$1(`Server rendering context not provided. Make sure to only call ` +
10972
+ warn(`Server rendering context not provided. Make sure to only call ` +
10886
10973
  `useSSRContext() conditionally in the server build.`);
10887
10974
  }
10888
10975
  return ctx;
@@ -11106,7 +11193,7 @@ function isMemoSame(cached, memo) {
11106
11193
  }
11107
11194
 
11108
11195
  // Core API ------------------------------------------------------------------
11109
- const version = "3.2.44";
11196
+ const version = "3.2.46";
11110
11197
  /**
11111
11198
  * SSR utils for \@vue/server-renderer. Only exposed in ssr-possible builds.
11112
11199
  * @internal
@@ -11115,10 +11202,10 @@ const ssrUtils = (null);
11115
11202
  /**
11116
11203
  * @internal only exposed in compat builds
11117
11204
  */
11118
- const resolveFilter$1 = resolveFilter ;
11205
+ const resolveFilter = resolveFilter$1 ;
11119
11206
  const _compatUtils = {
11120
11207
  warnDeprecation,
11121
- createCompatVue,
11208
+ createCompatVue: createCompatVue$1,
11122
11209
  isCompatEnabled,
11123
11210
  checkCompatEnabled,
11124
11211
  softAssertCompatEnabled
@@ -11230,9 +11317,6 @@ function patchStyle(el, prev, next) {
11230
11317
  const style = el.style;
11231
11318
  const isCssString = isString(next);
11232
11319
  if (next && !isCssString) {
11233
- for (const key in next) {
11234
- setStyle(style, key, next[key]);
11235
- }
11236
11320
  if (prev && !isString(prev)) {
11237
11321
  for (const key in prev) {
11238
11322
  if (next[key] == null) {
@@ -11240,6 +11324,9 @@ function patchStyle(el, prev, next) {
11240
11324
  }
11241
11325
  }
11242
11326
  }
11327
+ for (const key in next) {
11328
+ setStyle(style, key, next[key]);
11329
+ }
11243
11330
  }
11244
11331
  else {
11245
11332
  const currentDisplay = style.display;
@@ -11270,7 +11357,7 @@ function setStyle(style, name, val) {
11270
11357
  val = '';
11271
11358
  {
11272
11359
  if (semicolonRE.test(val)) {
11273
- warn$1(`Unexpected semicolon at the end of '${name}' style value: '${val}'`);
11360
+ warn(`Unexpected semicolon at the end of '${name}' style value: '${val}'`);
11274
11361
  }
11275
11362
  }
11276
11363
  if (name.startsWith('--')) {
@@ -11432,7 +11519,7 @@ prevChildren, parentComponent, parentSuspense, unmountChildren) {
11432
11519
  catch (e) {
11433
11520
  // do not warn if value is auto-coerced from nullish values
11434
11521
  if (!needRemove) {
11435
- warn$1(`Failed setting prop "${key}" on <${el.tagName.toLowerCase()}>: ` +
11522
+ warn(`Failed setting prop "${key}" on <${el.tagName.toLowerCase()}>: ` +
11436
11523
  `value ${value} is invalid.`, e);
11437
11524
  }
11438
11525
  }
@@ -11636,16 +11723,25 @@ class VueElement extends BaseClass {
11636
11723
  }
11637
11724
  else {
11638
11725
  if (this.shadowRoot) {
11639
- warn$1(`Custom element has pre-rendered declarative shadow root but is not ` +
11726
+ warn(`Custom element has pre-rendered declarative shadow root but is not ` +
11640
11727
  `defined as hydratable. Use \`defineSSRCustomElement\`.`);
11641
11728
  }
11642
11729
  this.attachShadow({ mode: 'open' });
11730
+ if (!this._def.__asyncLoader) {
11731
+ // for sync component defs we can immediately resolve props
11732
+ this._resolveProps(this._def);
11733
+ }
11643
11734
  }
11644
11735
  }
11645
11736
  connectedCallback() {
11646
11737
  this._connected = true;
11647
11738
  if (!this._instance) {
11648
- this._resolveDef();
11739
+ if (this._resolved) {
11740
+ this._update();
11741
+ }
11742
+ else {
11743
+ this._resolveDef();
11744
+ }
11649
11745
  }
11650
11746
  }
11651
11747
  disconnectedCallback() {
@@ -11661,9 +11757,6 @@ class VueElement extends BaseClass {
11661
11757
  * resolve inner component definition (handle possible async component)
11662
11758
  */
11663
11759
  _resolveDef() {
11664
- if (this._resolved) {
11665
- return;
11666
- }
11667
11760
  this._resolved = true;
11668
11761
  // set initial attrs
11669
11762
  for (let i = 0; i < this.attributes.length; i++) {
@@ -11675,38 +11768,26 @@ class VueElement extends BaseClass {
11675
11768
  this._setAttr(m.attributeName);
11676
11769
  }
11677
11770
  }).observe(this, { attributes: true });
11678
- const resolve = (def) => {
11679
- const { props = {}, styles } = def;
11680
- const hasOptions = !isArray(props);
11681
- const rawKeys = props ? (hasOptions ? Object.keys(props) : props) : [];
11771
+ const resolve = (def, isAsync = false) => {
11772
+ const { props, styles } = def;
11682
11773
  // cast Number-type props set before resolve
11683
11774
  let numberProps;
11684
- if (hasOptions) {
11685
- for (const key in this._props) {
11775
+ if (props && !isArray(props)) {
11776
+ for (const key in props) {
11686
11777
  const opt = props[key];
11687
11778
  if (opt === Number || (opt && opt.type === Number)) {
11688
- this._props[key] = toNumber(this._props[key]);
11689
- (numberProps || (numberProps = Object.create(null)))[key] = true;
11779
+ if (key in this._props) {
11780
+ this._props[key] = toNumber(this._props[key]);
11781
+ }
11782
+ (numberProps || (numberProps = Object.create(null)))[camelize(key)] = true;
11690
11783
  }
11691
11784
  }
11692
11785
  }
11693
11786
  this._numberProps = numberProps;
11694
- // check if there are props set pre-upgrade or connect
11695
- for (const key of Object.keys(this)) {
11696
- if (key[0] !== '_') {
11697
- this._setProp(key, this[key], true, false);
11698
- }
11699
- }
11700
- // defining getter/setters on prototype
11701
- for (const key of rawKeys.map(camelize)) {
11702
- Object.defineProperty(this, key, {
11703
- get() {
11704
- return this._getProp(key);
11705
- },
11706
- set(val) {
11707
- this._setProp(key, val);
11708
- }
11709
- });
11787
+ if (isAsync) {
11788
+ // defining getter/setters on prototype
11789
+ // for sync defs, this already happened in the constructor
11790
+ this._resolveProps(def);
11710
11791
  }
11711
11792
  // apply CSS
11712
11793
  this._applyStyles(styles);
@@ -11715,12 +11796,33 @@ class VueElement extends BaseClass {
11715
11796
  };
11716
11797
  const asyncDef = this._def.__asyncLoader;
11717
11798
  if (asyncDef) {
11718
- asyncDef().then(resolve);
11799
+ asyncDef().then(def => resolve(def, true));
11719
11800
  }
11720
11801
  else {
11721
11802
  resolve(this._def);
11722
11803
  }
11723
11804
  }
11805
+ _resolveProps(def) {
11806
+ const { props } = def;
11807
+ const declaredPropKeys = isArray(props) ? props : Object.keys(props || {});
11808
+ // check if there are props set pre-upgrade or connect
11809
+ for (const key of Object.keys(this)) {
11810
+ if (key[0] !== '_' && declaredPropKeys.includes(key)) {
11811
+ this._setProp(key, this[key], true, false);
11812
+ }
11813
+ }
11814
+ // defining getter/setters on prototype
11815
+ for (const key of declaredPropKeys.map(camelize)) {
11816
+ Object.defineProperty(this, key, {
11817
+ get() {
11818
+ return this._getProp(key);
11819
+ },
11820
+ set(val) {
11821
+ this._setProp(key, val);
11822
+ }
11823
+ });
11824
+ }
11825
+ }
11724
11826
  _setAttr(key) {
11725
11827
  let value = this.getAttribute(key);
11726
11828
  const camelKey = camelize(key);
@@ -11776,27 +11878,31 @@ class VueElement extends BaseClass {
11776
11878
  this._styles.length = 0;
11777
11879
  }
11778
11880
  this._applyStyles(newStyles);
11779
- // if this is an async component, ceReload is called from the inner
11780
- // component so no need to reload the async wrapper
11781
- if (!this._def.__asyncLoader) {
11782
- // reload
11783
- this._instance = null;
11784
- this._update();
11785
- }
11881
+ this._instance = null;
11882
+ this._update();
11786
11883
  };
11787
11884
  }
11788
- // intercept emit
11789
- instance.emit = (event, ...args) => {
11885
+ const dispatch = (event, args) => {
11790
11886
  this.dispatchEvent(new CustomEvent(event, {
11791
11887
  detail: args
11792
11888
  }));
11793
11889
  };
11890
+ // intercept emit
11891
+ instance.emit = (event, ...args) => {
11892
+ // dispatch both the raw and hyphenated versions of an event
11893
+ // to match Vue behavior
11894
+ dispatch(event, args);
11895
+ if (hyphenate(event) !== event) {
11896
+ dispatch(hyphenate(event), args);
11897
+ }
11898
+ };
11794
11899
  // locate nearest Vue custom element parent for provide/inject
11795
11900
  let parent = this;
11796
11901
  while ((parent =
11797
11902
  parent && (parent.parentNode || parent.host))) {
11798
11903
  if (parent instanceof VueElement) {
11799
11904
  instance.parent = parent._instance;
11905
+ instance.provides = parent._instance.provides;
11800
11906
  break;
11801
11907
  }
11802
11908
  }
@@ -11824,17 +11930,17 @@ function useCssModule(name = '$style') {
11824
11930
  {
11825
11931
  const instance = getCurrentInstance();
11826
11932
  if (!instance) {
11827
- warn$1(`useCssModule must be called inside setup()`);
11933
+ warn(`useCssModule must be called inside setup()`);
11828
11934
  return EMPTY_OBJ;
11829
11935
  }
11830
11936
  const modules = instance.type.__cssModules;
11831
11937
  if (!modules) {
11832
- warn$1(`Current instance does not have CSS modules injected.`);
11938
+ warn(`Current instance does not have CSS modules injected.`);
11833
11939
  return EMPTY_OBJ;
11834
11940
  }
11835
11941
  const mod = modules[name];
11836
11942
  if (!mod) {
11837
- warn$1(`Current instance does not have CSS module named "${name}".`);
11943
+ warn(`Current instance does not have CSS module named "${name}".`);
11838
11944
  return EMPTY_OBJ;
11839
11945
  }
11840
11946
  return mod;
@@ -11849,10 +11955,17 @@ function useCssVars(getter) {
11849
11955
  const instance = getCurrentInstance();
11850
11956
  /* istanbul ignore next */
11851
11957
  if (!instance) {
11852
- warn$1(`useCssVars is called without current active component instance.`);
11958
+ warn(`useCssVars is called without current active component instance.`);
11853
11959
  return;
11854
11960
  }
11855
- const setVars = () => setVarsOnVNode(instance.subTree, getter(instance.proxy));
11961
+ const updateTeleports = (instance.ut = (vars = getter(instance.proxy)) => {
11962
+ Array.from(document.querySelectorAll(`[data-v-owner="${instance.uid}"]`)).forEach(node => setVarsOnNode(node, vars));
11963
+ });
11964
+ const setVars = () => {
11965
+ const vars = getter(instance.proxy);
11966
+ setVarsOnVNode(instance.subTree, vars);
11967
+ updateTeleports(vars);
11968
+ };
11856
11969
  watchPostEffect(setVars);
11857
11970
  onMounted(() => {
11858
11971
  const ob = new MutationObserver(setVars);
@@ -11932,7 +12045,7 @@ const TransitionPropsValidators = (Transition.props =
11932
12045
  * #3227 Incoming hooks may be merged into arrays when wrapping Transition
11933
12046
  * with custom HOCs.
11934
12047
  */
11935
- const callHook$1 = (hook, args = []) => {
12048
+ const callHook = (hook, args = []) => {
11936
12049
  if (isArray(hook)) {
11937
12050
  hook.forEach(h => h(...args));
11938
12051
  }
@@ -11999,11 +12112,16 @@ function resolveTransitionProps(rawProps) {
11999
12112
  return (el, done) => {
12000
12113
  const hook = isAppear ? onAppear : onEnter;
12001
12114
  const resolve = () => finishEnter(el, isAppear, done);
12002
- callHook$1(hook, [el, resolve]);
12115
+ callHook(hook, [el, resolve]);
12003
12116
  nextFrame(() => {
12004
12117
  removeTransitionClass(el, isAppear ? appearFromClass : enterFromClass);
12005
12118
  if (legacyClassEnabled) {
12006
- removeTransitionClass(el, isAppear ? legacyAppearFromClass : legacyEnterFromClass);
12119
+ const legacyClass = isAppear
12120
+ ? legacyAppearFromClass
12121
+ : legacyEnterFromClass;
12122
+ if (legacyClass) {
12123
+ removeTransitionClass(el, legacyClass);
12124
+ }
12007
12125
  }
12008
12126
  addTransitionClass(el, isAppear ? appearToClass : enterToClass);
12009
12127
  if (!hasExplicitCallback(hook)) {
@@ -12014,17 +12132,17 @@ function resolveTransitionProps(rawProps) {
12014
12132
  };
12015
12133
  return extend(baseProps, {
12016
12134
  onBeforeEnter(el) {
12017
- callHook$1(onBeforeEnter, [el]);
12135
+ callHook(onBeforeEnter, [el]);
12018
12136
  addTransitionClass(el, enterFromClass);
12019
- if (legacyClassEnabled) {
12137
+ if (legacyClassEnabled && legacyEnterFromClass) {
12020
12138
  addTransitionClass(el, legacyEnterFromClass);
12021
12139
  }
12022
12140
  addTransitionClass(el, enterActiveClass);
12023
12141
  },
12024
12142
  onBeforeAppear(el) {
12025
- callHook$1(onBeforeAppear, [el]);
12143
+ callHook(onBeforeAppear, [el]);
12026
12144
  addTransitionClass(el, appearFromClass);
12027
- if (legacyClassEnabled) {
12145
+ if (legacyClassEnabled && legacyAppearFromClass) {
12028
12146
  addTransitionClass(el, legacyAppearFromClass);
12029
12147
  }
12030
12148
  addTransitionClass(el, appearActiveClass);
@@ -12035,7 +12153,7 @@ function resolveTransitionProps(rawProps) {
12035
12153
  el._isLeaving = true;
12036
12154
  const resolve = () => finishLeave(el, done);
12037
12155
  addTransitionClass(el, leaveFromClass);
12038
- if (legacyClassEnabled) {
12156
+ if (legacyClassEnabled && legacyLeaveFromClass) {
12039
12157
  addTransitionClass(el, legacyLeaveFromClass);
12040
12158
  }
12041
12159
  // force reflow so *-leave-from classes immediately take effect (#2593)
@@ -12047,7 +12165,7 @@ function resolveTransitionProps(rawProps) {
12047
12165
  return;
12048
12166
  }
12049
12167
  removeTransitionClass(el, leaveFromClass);
12050
- if (legacyClassEnabled) {
12168
+ if (legacyClassEnabled && legacyLeaveFromClass) {
12051
12169
  removeTransitionClass(el, legacyLeaveFromClass);
12052
12170
  }
12053
12171
  addTransitionClass(el, leaveToClass);
@@ -12055,19 +12173,19 @@ function resolveTransitionProps(rawProps) {
12055
12173
  whenTransitionEnds(el, type, leaveDuration, resolve);
12056
12174
  }
12057
12175
  });
12058
- callHook$1(onLeave, [el, resolve]);
12176
+ callHook(onLeave, [el, resolve]);
12059
12177
  },
12060
12178
  onEnterCancelled(el) {
12061
12179
  finishEnter(el, false);
12062
- callHook$1(onEnterCancelled, [el]);
12180
+ callHook(onEnterCancelled, [el]);
12063
12181
  },
12064
12182
  onAppearCancelled(el) {
12065
12183
  finishEnter(el, true);
12066
- callHook$1(onAppearCancelled, [el]);
12184
+ callHook(onAppearCancelled, [el]);
12067
12185
  },
12068
12186
  onLeaveCancelled(el) {
12069
12187
  finishLeave(el);
12070
- callHook$1(onLeaveCancelled, [el]);
12188
+ callHook(onLeaveCancelled, [el]);
12071
12189
  }
12072
12190
  });
12073
12191
  }
@@ -12085,18 +12203,10 @@ function normalizeDuration(duration) {
12085
12203
  }
12086
12204
  function NumberOf(val) {
12087
12205
  const res = toNumber(val);
12088
- validateDuration(res);
12089
- return res;
12090
- }
12091
- function validateDuration(val) {
12092
- if (typeof val !== 'number') {
12093
- warn$1(`<transition> explicit duration is not a valid number - ` +
12094
- `got ${JSON.stringify(val)}.`);
12095
- }
12096
- else if (isNaN(val)) {
12097
- warn$1(`<transition> explicit duration is NaN - ` +
12098
- 'the duration expression might be incorrect.');
12206
+ {
12207
+ assertNumber(res, '<transition> explicit duration');
12099
12208
  }
12209
+ return res;
12100
12210
  }
12101
12211
  function addTransitionClass(el, cls) {
12102
12212
  cls.split(/\s+/).forEach(c => c && el.classList.add(c));
@@ -12283,7 +12393,7 @@ const TransitionGroupImpl = {
12283
12393
  setTransitionHooks(child, resolveTransitionHooks(child, cssTransitionProps, state, instance));
12284
12394
  }
12285
12395
  else {
12286
- warn$1(`<TransitionGroup> children must be keyed.`);
12396
+ warn(`<TransitionGroup> children must be keyed.`);
12287
12397
  }
12288
12398
  }
12289
12399
  if (prevChildren) {
@@ -12300,6 +12410,14 @@ const TransitionGroupImpl = {
12300
12410
  {
12301
12411
  TransitionGroupImpl.__isBuiltIn = true;
12302
12412
  }
12413
+ /**
12414
+ * TransitionGroup does not support "mode" so we need to remove it from the
12415
+ * props declarations, but direct delete operation is considered a side effect
12416
+ * and will make the entire transition feature non-tree-shakeable, so we do it
12417
+ * in a function and mark the function's invocation as pure.
12418
+ */
12419
+ const removeMode = (props) => delete props.mode;
12420
+ /*#__PURE__*/ removeMode(TransitionGroupImpl.props);
12303
12421
  const TransitionGroup = TransitionGroupImpl;
12304
12422
  function callPendingCbs(c) {
12305
12423
  const el = c.el;
@@ -12375,7 +12493,7 @@ const vModelText = {
12375
12493
  domValue = domValue.trim();
12376
12494
  }
12377
12495
  if (castToNumber) {
12378
- domValue = toNumber(domValue);
12496
+ domValue = looseToNumber(domValue);
12379
12497
  }
12380
12498
  el._assign(domValue);
12381
12499
  });
@@ -12410,7 +12528,8 @@ const vModelText = {
12410
12528
  if (trim && el.value.trim() === value) {
12411
12529
  return;
12412
12530
  }
12413
- if ((number || el.type === 'number') && toNumber(el.value) === value) {
12531
+ if ((number || el.type === 'number') &&
12532
+ looseToNumber(el.value) === value) {
12414
12533
  return;
12415
12534
  }
12416
12535
  }
@@ -12499,7 +12618,7 @@ const vModelSelect = {
12499
12618
  addEventListener(el, 'change', () => {
12500
12619
  const selectedVal = Array.prototype.filter
12501
12620
  .call(el.options, (o) => o.selected)
12502
- .map((o) => number ? toNumber(getValue(o)) : getValue(o));
12621
+ .map((o) => number ? looseToNumber(getValue(o)) : getValue(o));
12503
12622
  el._assign(el.multiple
12504
12623
  ? isSetModel
12505
12624
  ? new Set(selectedVal)
@@ -12523,7 +12642,7 @@ const vModelSelect = {
12523
12642
  function setSelected(el, value) {
12524
12643
  const isMultiple = el.multiple;
12525
12644
  if (isMultiple && !isArray(value) && !isSet(value)) {
12526
- warn$1(`<select multiple v-model> expects an Array or Set value for its binding, ` +
12645
+ warn(`<select multiple v-model> expects an Array or Set value for its binding, ` +
12527
12646
  `but got ${Object.prototype.toString.call(value).slice(8, -1)}.`);
12528
12647
  return;
12529
12648
  }
@@ -12819,7 +12938,7 @@ function injectCompilerOptionsCheck(app) {
12819
12938
  return isCustomElement;
12820
12939
  },
12821
12940
  set() {
12822
- warn$1(`The \`isCustomElement\` config option is deprecated. Use ` +
12941
+ warn(`The \`isCustomElement\` config option is deprecated. Use ` +
12823
12942
  `\`compilerOptions.isCustomElement\` instead.`);
12824
12943
  }
12825
12944
  });
@@ -12833,11 +12952,11 @@ function injectCompilerOptionsCheck(app) {
12833
12952
  `- 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`;
12834
12953
  Object.defineProperty(app.config, 'compilerOptions', {
12835
12954
  get() {
12836
- warn$1(msg);
12955
+ warn(msg);
12837
12956
  return compilerOptions;
12838
12957
  },
12839
12958
  set() {
12840
- warn$1(msg);
12959
+ warn(msg);
12841
12960
  }
12842
12961
  });
12843
12962
  }
@@ -12846,14 +12965,14 @@ function normalizeContainer(container) {
12846
12965
  if (isString(container)) {
12847
12966
  const res = document.querySelector(container);
12848
12967
  if (!res) {
12849
- warn$1(`Failed to mount app: mount target selector "${container}" returned null.`);
12968
+ warn(`Failed to mount app: mount target selector "${container}" returned null.`);
12850
12969
  }
12851
12970
  return res;
12852
12971
  }
12853
12972
  if (window.ShadowRoot &&
12854
12973
  container instanceof window.ShadowRoot &&
12855
12974
  container.mode === 'closed') {
12856
- warn$1(`mounting on a ShadowRoot with \`{mode: "closed"}\` may lead to unpredictable bugs`);
12975
+ warn(`mounting on a ShadowRoot with \`{mode: "closed"}\` may lead to unpredictable bugs`);
12857
12976
  }
12858
12977
  return container;
12859
12978
  }
@@ -12864,150 +12983,151 @@ const initDirectivesForSSR = NOOP;
12864
12983
 
12865
12984
  var runtimeDom = /*#__PURE__*/Object.freeze({
12866
12985
  __proto__: null,
12867
- render: render,
12868
- hydrate: hydrate,
12986
+ BaseTransition: BaseTransition,
12987
+ Comment: Comment,
12988
+ EffectScope: EffectScope,
12989
+ Fragment: Fragment,
12990
+ KeepAlive: KeepAlive,
12991
+ ReactiveEffect: ReactiveEffect,
12992
+ Static: Static,
12993
+ Suspense: Suspense,
12994
+ Teleport: Teleport,
12995
+ Text: Text,
12996
+ Transition: Transition,
12997
+ TransitionGroup: TransitionGroup,
12998
+ VueElement: VueElement,
12999
+ assertNumber: assertNumber,
13000
+ callWithAsyncErrorHandling: callWithAsyncErrorHandling,
13001
+ callWithErrorHandling: callWithErrorHandling,
13002
+ camelize: camelize,
13003
+ capitalize: capitalize,
13004
+ cloneVNode: cloneVNode,
13005
+ compatUtils: compatUtils,
13006
+ computed: computed,
12869
13007
  createApp: createApp,
13008
+ createBlock: createBlock,
13009
+ createCommentVNode: createCommentVNode,
13010
+ createElementBlock: createElementBlock,
13011
+ createElementVNode: createBaseVNode,
13012
+ createHydrationRenderer: createHydrationRenderer,
13013
+ createPropsRestProxy: createPropsRestProxy,
13014
+ createRenderer: createRenderer,
12870
13015
  createSSRApp: createSSRApp,
12871
- initDirectivesForSSR: initDirectivesForSSR,
13016
+ createSlots: createSlots,
13017
+ createStaticVNode: createStaticVNode,
13018
+ createTextVNode: createTextVNode,
13019
+ createVNode: createVNode,
13020
+ customRef: customRef,
13021
+ defineAsyncComponent: defineAsyncComponent,
13022
+ defineComponent: defineComponent,
12872
13023
  defineCustomElement: defineCustomElement,
13024
+ defineEmits: defineEmits,
13025
+ defineExpose: defineExpose,
13026
+ defineProps: defineProps,
12873
13027
  defineSSRCustomElement: defineSSRCustomElement,
12874
- VueElement: VueElement,
12875
- useCssModule: useCssModule,
12876
- useCssVars: useCssVars,
12877
- Transition: Transition,
12878
- TransitionGroup: TransitionGroup,
12879
- vModelText: vModelText,
12880
- vModelCheckbox: vModelCheckbox,
12881
- vModelRadio: vModelRadio,
12882
- vModelSelect: vModelSelect,
12883
- vModelDynamic: vModelDynamic,
12884
- withModifiers: withModifiers,
12885
- withKeys: withKeys,
12886
- vShow: vShow,
12887
- reactive: reactive,
12888
- ref: ref,
12889
- readonly: readonly,
12890
- unref: unref,
12891
- proxyRefs: proxyRefs,
12892
- isRef: isRef,
12893
- toRef: toRef,
12894
- toRefs: toRefs,
13028
+ get devtools () { return devtools; },
13029
+ effect: effect,
13030
+ effectScope: effectScope,
13031
+ getCurrentInstance: getCurrentInstance,
13032
+ getCurrentScope: getCurrentScope,
13033
+ getTransitionRawChildren: getTransitionRawChildren,
13034
+ guardReactiveProps: guardReactiveProps,
13035
+ h: h,
13036
+ handleError: handleError,
13037
+ hydrate: hydrate,
13038
+ initCustomFormatter: initCustomFormatter,
13039
+ initDirectivesForSSR: initDirectivesForSSR,
13040
+ inject: inject,
13041
+ isMemoSame: isMemoSame,
12895
13042
  isProxy: isProxy,
12896
13043
  isReactive: isReactive,
12897
13044
  isReadonly: isReadonly,
13045
+ isRef: isRef,
13046
+ isRuntimeOnly: isRuntimeOnly,
12898
13047
  isShallow: isShallow,
12899
- customRef: customRef,
12900
- triggerRef: triggerRef,
12901
- shallowRef: shallowRef,
12902
- shallowReactive: shallowReactive,
12903
- shallowReadonly: shallowReadonly,
13048
+ isVNode: isVNode,
12904
13049
  markRaw: markRaw,
12905
- toRaw: toRaw,
12906
- effect: effect,
12907
- stop: stop,
12908
- ReactiveEffect: ReactiveEffect,
12909
- effectScope: effectScope,
12910
- EffectScope: EffectScope,
12911
- getCurrentScope: getCurrentScope,
12912
- onScopeDispose: onScopeDispose,
12913
- computed: computed$1,
12914
- watch: watch,
12915
- watchEffect: watchEffect,
12916
- watchPostEffect: watchPostEffect,
12917
- watchSyncEffect: watchSyncEffect,
13050
+ mergeDefaults: mergeDefaults,
13051
+ mergeProps: mergeProps,
13052
+ nextTick: nextTick,
13053
+ normalizeClass: normalizeClass,
13054
+ normalizeProps: normalizeProps,
13055
+ normalizeStyle: normalizeStyle,
13056
+ onActivated: onActivated,
12918
13057
  onBeforeMount: onBeforeMount,
12919
- onMounted: onMounted,
12920
- onBeforeUpdate: onBeforeUpdate,
12921
- onUpdated: onUpdated,
12922
13058
  onBeforeUnmount: onBeforeUnmount,
12923
- onUnmounted: onUnmounted,
12924
- onActivated: onActivated,
13059
+ onBeforeUpdate: onBeforeUpdate,
12925
13060
  onDeactivated: onDeactivated,
13061
+ onErrorCaptured: onErrorCaptured,
13062
+ onMounted: onMounted,
12926
13063
  onRenderTracked: onRenderTracked,
12927
13064
  onRenderTriggered: onRenderTriggered,
12928
- onErrorCaptured: onErrorCaptured,
13065
+ onScopeDispose: onScopeDispose,
12929
13066
  onServerPrefetch: onServerPrefetch,
13067
+ onUnmounted: onUnmounted,
13068
+ onUpdated: onUpdated,
13069
+ openBlock: openBlock,
13070
+ popScopeId: popScopeId,
12930
13071
  provide: provide,
12931
- inject: inject,
12932
- nextTick: nextTick,
12933
- defineComponent: defineComponent,
12934
- defineAsyncComponent: defineAsyncComponent,
12935
- useAttrs: useAttrs,
12936
- useSlots: useSlots,
12937
- defineProps: defineProps,
12938
- defineEmits: defineEmits,
12939
- defineExpose: defineExpose,
12940
- withDefaults: withDefaults,
12941
- mergeDefaults: mergeDefaults,
12942
- createPropsRestProxy: createPropsRestProxy,
12943
- withAsyncContext: withAsyncContext,
12944
- getCurrentInstance: getCurrentInstance,
12945
- h: h,
12946
- createVNode: createVNode,
12947
- cloneVNode: cloneVNode,
12948
- mergeProps: mergeProps,
12949
- isVNode: isVNode,
12950
- Fragment: Fragment,
12951
- Text: Text,
12952
- Comment: Comment,
12953
- Static: Static,
12954
- Teleport: Teleport,
12955
- Suspense: Suspense,
12956
- KeepAlive: KeepAlive,
12957
- BaseTransition: BaseTransition,
12958
- withDirectives: withDirectives,
12959
- useSSRContext: useSSRContext,
12960
- ssrContextKey: ssrContextKey,
12961
- createRenderer: createRenderer,
12962
- createHydrationRenderer: createHydrationRenderer,
13072
+ proxyRefs: proxyRefs,
13073
+ pushScopeId: pushScopeId,
12963
13074
  queuePostFlushCb: queuePostFlushCb,
12964
- warn: warn$1,
12965
- handleError: handleError,
12966
- callWithErrorHandling: callWithErrorHandling,
12967
- callWithAsyncErrorHandling: callWithAsyncErrorHandling,
13075
+ reactive: reactive,
13076
+ readonly: readonly,
13077
+ ref: ref,
13078
+ registerRuntimeCompiler: registerRuntimeCompiler,
13079
+ render: render,
13080
+ renderList: renderList,
13081
+ renderSlot: renderSlot,
12968
13082
  resolveComponent: resolveComponent,
12969
13083
  resolveDirective: resolveDirective,
12970
13084
  resolveDynamicComponent: resolveDynamicComponent,
12971
- registerRuntimeCompiler: registerRuntimeCompiler,
12972
- isRuntimeOnly: isRuntimeOnly,
12973
- useTransitionState: useTransitionState,
13085
+ resolveFilter: resolveFilter,
12974
13086
  resolveTransitionHooks: resolveTransitionHooks,
12975
- setTransitionHooks: setTransitionHooks,
12976
- getTransitionRawChildren: getTransitionRawChildren,
12977
- initCustomFormatter: initCustomFormatter,
12978
- get devtools () { return devtools; },
12979
- setDevtoolsHook: setDevtoolsHook,
12980
- withCtx: withCtx,
12981
- pushScopeId: pushScopeId,
12982
- popScopeId: popScopeId,
12983
- withScopeId: withScopeId,
12984
- renderList: renderList,
12985
- toHandlers: toHandlers,
12986
- renderSlot: renderSlot,
12987
- createSlots: createSlots,
12988
- withMemo: withMemo,
12989
- isMemoSame: isMemoSame,
12990
- openBlock: openBlock,
12991
- createBlock: createBlock,
12992
13087
  setBlockTracking: setBlockTracking,
12993
- createTextVNode: createTextVNode,
12994
- createCommentVNode: createCommentVNode,
12995
- createStaticVNode: createStaticVNode,
12996
- createElementVNode: createBaseVNode,
12997
- createElementBlock: createElementBlock,
12998
- guardReactiveProps: guardReactiveProps,
13088
+ setDevtoolsHook: setDevtoolsHook,
13089
+ setTransitionHooks: setTransitionHooks,
13090
+ shallowReactive: shallowReactive,
13091
+ shallowReadonly: shallowReadonly,
13092
+ shallowRef: shallowRef,
13093
+ ssrContextKey: ssrContextKey,
13094
+ ssrUtils: ssrUtils,
13095
+ stop: stop,
12999
13096
  toDisplayString: toDisplayString,
13000
- camelize: camelize,
13001
- capitalize: capitalize,
13002
13097
  toHandlerKey: toHandlerKey,
13003
- normalizeProps: normalizeProps,
13004
- normalizeClass: normalizeClass,
13005
- normalizeStyle: normalizeStyle,
13098
+ toHandlers: toHandlers,
13099
+ toRaw: toRaw,
13100
+ toRef: toRef,
13101
+ toRefs: toRefs,
13006
13102
  transformVNodeArgs: transformVNodeArgs,
13103
+ triggerRef: triggerRef,
13104
+ unref: unref,
13105
+ useAttrs: useAttrs,
13106
+ useCssModule: useCssModule,
13107
+ useCssVars: useCssVars,
13108
+ useSSRContext: useSSRContext,
13109
+ useSlots: useSlots,
13110
+ useTransitionState: useTransitionState,
13111
+ vModelCheckbox: vModelCheckbox,
13112
+ vModelDynamic: vModelDynamic,
13113
+ vModelRadio: vModelRadio,
13114
+ vModelSelect: vModelSelect,
13115
+ vModelText: vModelText,
13116
+ vShow: vShow,
13007
13117
  version: version,
13008
- ssrUtils: ssrUtils,
13009
- resolveFilter: resolveFilter$1,
13010
- compatUtils: compatUtils
13118
+ warn: warn,
13119
+ watch: watch,
13120
+ watchEffect: watchEffect,
13121
+ watchPostEffect: watchPostEffect,
13122
+ watchSyncEffect: watchSyncEffect,
13123
+ withAsyncContext: withAsyncContext,
13124
+ withCtx: withCtx,
13125
+ withDefaults: withDefaults,
13126
+ withDirectives: withDirectives,
13127
+ withKeys: withKeys,
13128
+ withMemo: withMemo,
13129
+ withModifiers: withModifiers,
13130
+ withScopeId: withScopeId
13011
13131
  });
13012
13132
 
13013
13133
  function initDev() {
@@ -13041,23 +13161,23 @@ function wrappedCreateApp(...args) {
13041
13161
  }
13042
13162
  return app;
13043
13163
  }
13044
- function createCompatVue$1() {
13164
+ function createCompatVue() {
13045
13165
  const Vue = compatUtils.createCompatVue(createApp, wrappedCreateApp);
13046
13166
  extend(Vue, runtimeDom);
13047
13167
  return Vue;
13048
13168
  }
13049
13169
 
13050
13170
  // This entry exports the runtime only, and is built as
13051
- const Vue = createCompatVue$1();
13171
+ const Vue = createCompatVue();
13052
13172
  Vue.compile = (() => {
13053
13173
  {
13054
- warn$1(`Runtime compilation is not supported in this build of Vue.` +
13174
+ warn(`Runtime compilation is not supported in this build of Vue.` +
13055
13175
  (` Use "vue.esm-browser.js" instead.`
13056
13176
  ) /* should not happen */);
13057
13177
  }
13058
13178
  });
13179
+ var Vue$1 = Vue;
13059
13180
 
13060
- const { configureCompat: configureCompat$1 } = Vue;
13181
+ const { configureCompat } = Vue$1;
13061
13182
 
13062
- export default Vue;
13063
- export { BaseTransition, Comment, EffectScope, Fragment, KeepAlive, ReactiveEffect, Static, Suspense, Teleport, Text, Transition, TransitionGroup, VueElement, callWithAsyncErrorHandling, callWithErrorHandling, camelize, capitalize, cloneVNode, compatUtils, computed$1 as computed, configureCompat$1 as configureCompat, createApp, createBlock, createCommentVNode, createElementBlock, createBaseVNode as createElementVNode, createHydrationRenderer, createPropsRestProxy, createRenderer, createSSRApp, createSlots, createStaticVNode, createTextVNode, createVNode, customRef, defineAsyncComponent, defineComponent, defineCustomElement, defineEmits, defineExpose, defineProps, defineSSRCustomElement, devtools, effect, effectScope, getCurrentInstance, getCurrentScope, getTransitionRawChildren, guardReactiveProps, h, handleError, hydrate, initCustomFormatter, initDirectivesForSSR, inject, isMemoSame, isProxy, isReactive, isReadonly, isRef, isRuntimeOnly, isShallow, isVNode, markRaw, mergeDefaults, mergeProps, nextTick, normalizeClass, normalizeProps, normalizeStyle, onActivated, onBeforeMount, onBeforeUnmount, onBeforeUpdate, onDeactivated, onErrorCaptured, onMounted, onRenderTracked, onRenderTriggered, onScopeDispose, onServerPrefetch, onUnmounted, onUpdated, openBlock, popScopeId, provide, proxyRefs, pushScopeId, queuePostFlushCb, reactive, readonly, ref, registerRuntimeCompiler, render, renderList, renderSlot, resolveComponent, resolveDirective, resolveDynamicComponent, resolveFilter$1 as resolveFilter, resolveTransitionHooks, setBlockTracking, setDevtoolsHook, setTransitionHooks, shallowReactive, shallowReadonly, shallowRef, ssrContextKey, ssrUtils, stop, toDisplayString, toHandlerKey, toHandlers, toRaw, toRef, toRefs, transformVNodeArgs, triggerRef, unref, useAttrs, useCssModule, useCssVars, useSSRContext, useSlots, useTransitionState, vModelCheckbox, vModelDynamic, vModelRadio, vModelSelect, vModelText, vShow, version, warn$1 as warn, watch, watchEffect, watchPostEffect, watchSyncEffect, withAsyncContext, withCtx, withDefaults, withDirectives, withKeys, withMemo, withModifiers, withScopeId };
13183
+ export { BaseTransition, Comment, EffectScope, Fragment, KeepAlive, ReactiveEffect, Static, Suspense, Teleport, Text, Transition, TransitionGroup, VueElement, assertNumber, callWithAsyncErrorHandling, callWithErrorHandling, camelize, capitalize, cloneVNode, compatUtils, computed, configureCompat, createApp, createBlock, createCommentVNode, createElementBlock, createBaseVNode as createElementVNode, createHydrationRenderer, createPropsRestProxy, createRenderer, createSSRApp, createSlots, createStaticVNode, createTextVNode, createVNode, customRef, Vue$1 as default, defineAsyncComponent, defineComponent, defineCustomElement, defineEmits, defineExpose, defineProps, defineSSRCustomElement, devtools, effect, effectScope, getCurrentInstance, getCurrentScope, getTransitionRawChildren, guardReactiveProps, h, handleError, hydrate, initCustomFormatter, initDirectivesForSSR, inject, isMemoSame, isProxy, isReactive, isReadonly, isRef, isRuntimeOnly, isShallow, isVNode, markRaw, mergeDefaults, mergeProps, nextTick, normalizeClass, normalizeProps, normalizeStyle, onActivated, onBeforeMount, onBeforeUnmount, onBeforeUpdate, onDeactivated, onErrorCaptured, onMounted, onRenderTracked, onRenderTriggered, onScopeDispose, onServerPrefetch, onUnmounted, onUpdated, openBlock, popScopeId, provide, proxyRefs, pushScopeId, queuePostFlushCb, reactive, readonly, ref, registerRuntimeCompiler, render, renderList, renderSlot, resolveComponent, resolveDirective, resolveDynamicComponent, resolveFilter, resolveTransitionHooks, setBlockTracking, setDevtoolsHook, setTransitionHooks, shallowReactive, shallowReadonly, shallowRef, ssrContextKey, ssrUtils, stop, toDisplayString, toHandlerKey, toHandlers, toRaw, toRef, toRefs, transformVNodeArgs, triggerRef, unref, useAttrs, useCssModule, useCssVars, useSSRContext, useSlots, useTransitionState, vModelCheckbox, vModelDynamic, vModelRadio, vModelSelect, vModelText, vShow, version, warn, watch, watchEffect, watchPostEffect, watchSyncEffect, withAsyncContext, withCtx, withDefaults, withDirectives, withKeys, withMemo, withModifiers, withScopeId };