@vue/compat 3.5.26 → 3.5.28

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,5 +1,5 @@
1
1
  /**
2
- * @vue/compat v3.5.26
2
+ * @vue/compat v3.5.28
3
3
  * (c) 2018-present Yuxi (Evan) You and Vue contributors
4
4
  * @license MIT
5
5
  **/
@@ -407,6 +407,7 @@ function warn$2(msg, ...args) {
407
407
 
408
408
  let activeEffectScope;
409
409
  class EffectScope {
410
+ // TODO isolatedDeclarations "__v_skip"
410
411
  constructor(detached = false) {
411
412
  this.detached = detached;
412
413
  /**
@@ -426,6 +427,7 @@ class EffectScope {
426
427
  */
427
428
  this.cleanups = [];
428
429
  this._isPaused = false;
430
+ this.__v_skip = true;
429
431
  this.parent = activeEffectScope;
430
432
  if (!detached && activeEffectScope) {
431
433
  this.index = (activeEffectScope.scopes || (activeEffectScope.scopes = [])).push(
@@ -1495,20 +1497,20 @@ function createIterableMethod(method, isReadonly2, isShallow2) {
1495
1497
  "iterate",
1496
1498
  isKeyOnly ? MAP_KEY_ITERATE_KEY : ITERATE_KEY
1497
1499
  );
1498
- return {
1499
- // iterator protocol
1500
- next() {
1501
- const { value, done } = innerIterator.next();
1502
- return done ? { value, done } : {
1503
- value: isPair ? [wrap(value[0]), wrap(value[1])] : wrap(value),
1504
- done
1505
- };
1506
- },
1507
- // iterable protocol
1508
- [Symbol.iterator]() {
1509
- return this;
1500
+ return extend(
1501
+ // inheriting all iterator properties
1502
+ Object.create(innerIterator),
1503
+ {
1504
+ // iterator protocol
1505
+ next() {
1506
+ const { value, done } = innerIterator.next();
1507
+ return done ? { value, done } : {
1508
+ value: isPair ? [wrap(value[0]), wrap(value[1])] : wrap(value),
1509
+ done
1510
+ };
1511
+ }
1510
1512
  }
1511
- };
1513
+ );
1512
1514
  };
1513
1515
  }
1514
1516
  function createReadonlyMethod(type) {
@@ -1722,8 +1724,9 @@ function targetTypeMap(rawType) {
1722
1724
  function getTargetType(value) {
1723
1725
  return value["__v_skip"] || !Object.isExtensible(value) ? 0 /* INVALID */ : targetTypeMap(toRawType(value));
1724
1726
  }
1727
+ // @__NO_SIDE_EFFECTS__
1725
1728
  function reactive(target) {
1726
- if (isReadonly(target)) {
1729
+ if (/* @__PURE__ */ isReadonly(target)) {
1727
1730
  return target;
1728
1731
  }
1729
1732
  return createReactiveObject(
@@ -1734,6 +1737,7 @@ function reactive(target) {
1734
1737
  reactiveMap
1735
1738
  );
1736
1739
  }
1740
+ // @__NO_SIDE_EFFECTS__
1737
1741
  function shallowReactive(target) {
1738
1742
  return createReactiveObject(
1739
1743
  target,
@@ -1743,6 +1747,7 @@ function shallowReactive(target) {
1743
1747
  shallowReactiveMap
1744
1748
  );
1745
1749
  }
1750
+ // @__NO_SIDE_EFFECTS__
1746
1751
  function readonly(target) {
1747
1752
  return createReactiveObject(
1748
1753
  target,
@@ -1752,6 +1757,7 @@ function readonly(target) {
1752
1757
  readonlyMap
1753
1758
  );
1754
1759
  }
1760
+ // @__NO_SIDE_EFFECTS__
1755
1761
  function shallowReadonly(target) {
1756
1762
  return createReactiveObject(
1757
1763
  target,
@@ -1790,24 +1796,29 @@ function createReactiveObject(target, isReadonly2, baseHandlers, collectionHandl
1790
1796
  proxyMap.set(target, proxy);
1791
1797
  return proxy;
1792
1798
  }
1799
+ // @__NO_SIDE_EFFECTS__
1793
1800
  function isReactive(value) {
1794
- if (isReadonly(value)) {
1795
- return isReactive(value["__v_raw"]);
1801
+ if (/* @__PURE__ */ isReadonly(value)) {
1802
+ return /* @__PURE__ */ isReactive(value["__v_raw"]);
1796
1803
  }
1797
1804
  return !!(value && value["__v_isReactive"]);
1798
1805
  }
1806
+ // @__NO_SIDE_EFFECTS__
1799
1807
  function isReadonly(value) {
1800
1808
  return !!(value && value["__v_isReadonly"]);
1801
1809
  }
1810
+ // @__NO_SIDE_EFFECTS__
1802
1811
  function isShallow(value) {
1803
1812
  return !!(value && value["__v_isShallow"]);
1804
1813
  }
1814
+ // @__NO_SIDE_EFFECTS__
1805
1815
  function isProxy(value) {
1806
1816
  return value ? !!value["__v_raw"] : false;
1807
1817
  }
1818
+ // @__NO_SIDE_EFFECTS__
1808
1819
  function toRaw(observed) {
1809
1820
  const raw = observed && observed["__v_raw"];
1810
- return raw ? toRaw(raw) : observed;
1821
+ return raw ? /* @__PURE__ */ toRaw(raw) : observed;
1811
1822
  }
1812
1823
  function markRaw(value) {
1813
1824
  if (!hasOwn(value, "__v_skip") && Object.isExtensible(value)) {
@@ -1815,20 +1826,23 @@ function markRaw(value) {
1815
1826
  }
1816
1827
  return value;
1817
1828
  }
1818
- const toReactive = (value) => isObject(value) ? reactive(value) : value;
1819
- const toReadonly = (value) => isObject(value) ? readonly(value) : value;
1829
+ const toReactive = (value) => isObject(value) ? /* @__PURE__ */ reactive(value) : value;
1830
+ const toReadonly = (value) => isObject(value) ? /* @__PURE__ */ readonly(value) : value;
1820
1831
 
1832
+ // @__NO_SIDE_EFFECTS__
1821
1833
  function isRef(r) {
1822
1834
  return r ? r["__v_isRef"] === true : false;
1823
1835
  }
1836
+ // @__NO_SIDE_EFFECTS__
1824
1837
  function ref(value) {
1825
1838
  return createRef(value, false);
1826
1839
  }
1840
+ // @__NO_SIDE_EFFECTS__
1827
1841
  function shallowRef(value) {
1828
1842
  return createRef(value, true);
1829
1843
  }
1830
1844
  function createRef(rawValue, shallow) {
1831
- if (isRef(rawValue)) {
1845
+ if (/* @__PURE__ */ isRef(rawValue)) {
1832
1846
  return rawValue;
1833
1847
  }
1834
1848
  return new RefImpl(rawValue, shallow);
@@ -1890,7 +1904,7 @@ function triggerRef(ref2) {
1890
1904
  }
1891
1905
  }
1892
1906
  function unref(ref2) {
1893
- return isRef(ref2) ? ref2.value : ref2;
1907
+ return /* @__PURE__ */ isRef(ref2) ? ref2.value : ref2;
1894
1908
  }
1895
1909
  function toValue(source) {
1896
1910
  return isFunction(source) ? source() : unref(source);
@@ -1899,7 +1913,7 @@ const shallowUnwrapHandlers = {
1899
1913
  get: (target, key, receiver) => key === "__v_raw" ? target : unref(Reflect.get(target, key, receiver)),
1900
1914
  set: (target, key, value, receiver) => {
1901
1915
  const oldValue = target[key];
1902
- if (isRef(oldValue) && !isRef(value)) {
1916
+ if (/* @__PURE__ */ isRef(oldValue) && !/* @__PURE__ */ isRef(value)) {
1903
1917
  oldValue.value = value;
1904
1918
  return true;
1905
1919
  } else {
@@ -1929,6 +1943,7 @@ class CustomRefImpl {
1929
1943
  function customRef(factory) {
1930
1944
  return new CustomRefImpl(factory);
1931
1945
  }
1946
+ // @__NO_SIDE_EFFECTS__
1932
1947
  function toRefs(object) {
1933
1948
  if (!!(process.env.NODE_ENV !== "production") && !isProxy(object)) {
1934
1949
  warn$2(`toRefs() expects a reactive object but received a plain one.`);
@@ -1964,9 +1979,9 @@ class ObjectRefImpl {
1964
1979
  return this._value = val === void 0 ? this._defaultValue : val;
1965
1980
  }
1966
1981
  set value(newVal) {
1967
- if (this._shallow && isRef(this._raw[this._key])) {
1982
+ if (this._shallow && /* @__PURE__ */ isRef(this._raw[this._key])) {
1968
1983
  const nestedRef = this._object[this._key];
1969
- if (isRef(nestedRef)) {
1984
+ if (/* @__PURE__ */ isRef(nestedRef)) {
1970
1985
  nestedRef.value = newVal;
1971
1986
  return;
1972
1987
  }
@@ -1988,15 +2003,16 @@ class GetterRefImpl {
1988
2003
  return this._value = this._getter();
1989
2004
  }
1990
2005
  }
2006
+ // @__NO_SIDE_EFFECTS__
1991
2007
  function toRef(source, key, defaultValue) {
1992
- if (isRef(source)) {
2008
+ if (/* @__PURE__ */ isRef(source)) {
1993
2009
  return source;
1994
2010
  } else if (isFunction(source)) {
1995
2011
  return new GetterRefImpl(source);
1996
2012
  } else if (isObject(source) && arguments.length > 1) {
1997
2013
  return propertyToRef(source, key, defaultValue);
1998
2014
  } else {
1999
- return ref(source);
2015
+ return /* @__PURE__ */ ref(source);
2000
2016
  }
2001
2017
  }
2002
2018
  function propertyToRef(source, key, defaultValue) {
@@ -2077,6 +2093,7 @@ class ComputedRefImpl {
2077
2093
  }
2078
2094
  }
2079
2095
  }
2096
+ // @__NO_SIDE_EFFECTS__
2080
2097
  function computed$1(getterOrOptions, debugOptions, isSSR = false) {
2081
2098
  let getter;
2082
2099
  let setter;
@@ -3982,7 +3999,22 @@ function moveTeleport(vnode, container, parentAnchor, { o: { insert }, m: move }
3982
3999
  function hydrateTeleport(node, vnode, parentComponent, parentSuspense, slotScopeIds, optimized, {
3983
4000
  o: { nextSibling, parentNode, querySelector, insert, createText }
3984
4001
  }, hydrateChildren) {
3985
- function hydrateDisabledTeleport(node2, vnode2, targetStart, targetAnchor) {
4002
+ function hydrateAnchor(target2, targetNode) {
4003
+ let targetAnchor = targetNode;
4004
+ while (targetAnchor) {
4005
+ if (targetAnchor && targetAnchor.nodeType === 8) {
4006
+ if (targetAnchor.data === "teleport start anchor") {
4007
+ vnode.targetStart = targetAnchor;
4008
+ } else if (targetAnchor.data === "teleport anchor") {
4009
+ vnode.targetAnchor = targetAnchor;
4010
+ target2._lpa = vnode.targetAnchor && nextSibling(vnode.targetAnchor);
4011
+ break;
4012
+ }
4013
+ }
4014
+ targetAnchor = nextSibling(targetAnchor);
4015
+ }
4016
+ }
4017
+ function hydrateDisabledTeleport(node2, vnode2) {
3986
4018
  vnode2.anchor = hydrateChildren(
3987
4019
  nextSibling(node2),
3988
4020
  vnode2,
@@ -3992,8 +4024,6 @@ function hydrateTeleport(node, vnode, parentComponent, parentSuspense, slotScope
3992
4024
  slotScopeIds,
3993
4025
  optimized
3994
4026
  );
3995
- vnode2.targetStart = targetStart;
3996
- vnode2.targetAnchor = targetAnchor;
3997
4027
  }
3998
4028
  const target = vnode.target = resolveTarget(
3999
4029
  vnode.props,
@@ -4004,27 +4034,22 @@ function hydrateTeleport(node, vnode, parentComponent, parentSuspense, slotScope
4004
4034
  const targetNode = target._lpa || target.firstChild;
4005
4035
  if (vnode.shapeFlag & 16) {
4006
4036
  if (disabled) {
4007
- hydrateDisabledTeleport(
4008
- node,
4009
- vnode,
4010
- targetNode,
4011
- targetNode && nextSibling(targetNode)
4012
- );
4037
+ hydrateDisabledTeleport(node, vnode);
4038
+ hydrateAnchor(target, targetNode);
4039
+ if (!vnode.targetAnchor) {
4040
+ prepareAnchor(
4041
+ target,
4042
+ vnode,
4043
+ createText,
4044
+ insert,
4045
+ // if target is the same as the main view, insert anchors before current node
4046
+ // to avoid hydrating mismatch
4047
+ parentNode(node) === target ? node : null
4048
+ );
4049
+ }
4013
4050
  } else {
4014
4051
  vnode.anchor = nextSibling(node);
4015
- let targetAnchor = targetNode;
4016
- while (targetAnchor) {
4017
- if (targetAnchor && targetAnchor.nodeType === 8) {
4018
- if (targetAnchor.data === "teleport start anchor") {
4019
- vnode.targetStart = targetAnchor;
4020
- } else if (targetAnchor.data === "teleport anchor") {
4021
- vnode.targetAnchor = targetAnchor;
4022
- target._lpa = vnode.targetAnchor && nextSibling(vnode.targetAnchor);
4023
- break;
4024
- }
4025
- }
4026
- targetAnchor = nextSibling(targetAnchor);
4027
- }
4052
+ hydrateAnchor(target, targetNode);
4028
4053
  if (!vnode.targetAnchor) {
4029
4054
  prepareAnchor(target, vnode, createText, insert);
4030
4055
  }
@@ -4042,7 +4067,9 @@ function hydrateTeleport(node, vnode, parentComponent, parentSuspense, slotScope
4042
4067
  updateCssVars(vnode, disabled);
4043
4068
  } else if (disabled) {
4044
4069
  if (vnode.shapeFlag & 16) {
4045
- hydrateDisabledTeleport(node, vnode, node, nextSibling(node));
4070
+ hydrateDisabledTeleport(node, vnode);
4071
+ vnode.targetStart = node;
4072
+ vnode.targetAnchor = nextSibling(node);
4046
4073
  }
4047
4074
  }
4048
4075
  return vnode.anchor && nextSibling(vnode.anchor);
@@ -4066,13 +4093,13 @@ function updateCssVars(vnode, isDisabled) {
4066
4093
  ctx.ut();
4067
4094
  }
4068
4095
  }
4069
- function prepareAnchor(target, vnode, createText, insert) {
4096
+ function prepareAnchor(target, vnode, createText, insert, anchor = null) {
4070
4097
  const targetStart = vnode.targetStart = createText("");
4071
4098
  const targetAnchor = vnode.targetAnchor = createText("");
4072
4099
  targetStart[TeleportEndKey] = targetAnchor;
4073
4100
  if (target) {
4074
- insert(targetStart, target);
4075
- insert(targetAnchor, target);
4101
+ insert(targetStart, target, anchor);
4102
+ insert(targetAnchor, target, anchor);
4076
4103
  }
4077
4104
  return targetAnchor;
4078
4105
  }
@@ -4311,7 +4338,7 @@ function resolveTransitionHooks(vnode, props, state, instance, postClone) {
4311
4338
  }
4312
4339
  }
4313
4340
  let called = false;
4314
- const done = el[enterCbKey$1] = (cancelled) => {
4341
+ el[enterCbKey$1] = (cancelled) => {
4315
4342
  if (called) return;
4316
4343
  called = true;
4317
4344
  if (cancelled) {
@@ -4324,6 +4351,7 @@ function resolveTransitionHooks(vnode, props, state, instance, postClone) {
4324
4351
  }
4325
4352
  el[enterCbKey$1] = void 0;
4326
4353
  };
4354
+ const done = el[enterCbKey$1].bind(null, false);
4327
4355
  if (hook) {
4328
4356
  callAsyncHook(hook, [el, done]);
4329
4357
  } else {
@@ -4343,7 +4371,7 @@ function resolveTransitionHooks(vnode, props, state, instance, postClone) {
4343
4371
  }
4344
4372
  callHook(onBeforeLeave, [el]);
4345
4373
  let called = false;
4346
- const done = el[leaveCbKey] = (cancelled) => {
4374
+ el[leaveCbKey] = (cancelled) => {
4347
4375
  if (called) return;
4348
4376
  called = true;
4349
4377
  remove();
@@ -4357,6 +4385,7 @@ function resolveTransitionHooks(vnode, props, state, instance, postClone) {
4357
4385
  delete leavingVNodesCache[key2];
4358
4386
  }
4359
4387
  };
4388
+ const done = el[leaveCbKey].bind(null, false);
4360
4389
  leavingVNodesCache[key2] = vnode;
4361
4390
  if (onLeave) {
4362
4391
  callAsyncHook(onLeave, [el, done]);
@@ -4469,8 +4498,7 @@ function useTemplateRef(key) {
4469
4498
  const r = shallowRef(null);
4470
4499
  if (i) {
4471
4500
  const refs = i.refs === EMPTY_OBJ ? i.refs = {} : i.refs;
4472
- let desc;
4473
- if (!!(process.env.NODE_ENV !== "production") && (desc = Object.getOwnPropertyDescriptor(refs, key)) && !desc.configurable) {
4501
+ if (!!(process.env.NODE_ENV !== "production") && isTemplateRefKey(refs, key)) {
4474
4502
  warn$1(`useTemplateRef('${key}') already exists.`);
4475
4503
  } else {
4476
4504
  Object.defineProperty(refs, key, {
@@ -4490,6 +4518,10 @@ function useTemplateRef(key) {
4490
4518
  }
4491
4519
  return ret;
4492
4520
  }
4521
+ function isTemplateRefKey(refs, key) {
4522
+ let desc;
4523
+ return !!((desc = Object.getOwnPropertyDescriptor(refs, key)) && !desc.configurable);
4524
+ }
4493
4525
 
4494
4526
  const pendingSetRefMap = /* @__PURE__ */ new WeakMap();
4495
4527
  function setRef(rawRef, oldRawRef, parentSuspense, vnode, isUnmount = false) {
@@ -4535,10 +4567,19 @@ function setRef(rawRef, oldRawRef, parentSuspense, vnode, isUnmount = false) {
4535
4567
  return false;
4536
4568
  }
4537
4569
  }
4570
+ if (isTemplateRefKey(refs, key)) {
4571
+ return false;
4572
+ }
4538
4573
  return hasOwn(rawSetupState, key);
4539
4574
  };
4540
- const canSetRef = (ref2) => {
4541
- return !!!(process.env.NODE_ENV !== "production") || !knownTemplateRefs.has(ref2);
4575
+ const canSetRef = (ref2, key) => {
4576
+ if (!!(process.env.NODE_ENV !== "production") && knownTemplateRefs.has(ref2)) {
4577
+ return false;
4578
+ }
4579
+ if (key && isTemplateRefKey(refs, key)) {
4580
+ return false;
4581
+ }
4582
+ return true;
4542
4583
  };
4543
4584
  if (oldRef != null && oldRef !== ref) {
4544
4585
  invalidatePendingSetRef(oldRawRef);
@@ -4548,10 +4589,10 @@ function setRef(rawRef, oldRawRef, parentSuspense, vnode, isUnmount = false) {
4548
4589
  setupState[oldRef] = null;
4549
4590
  }
4550
4591
  } else if (isRef(oldRef)) {
4551
- if (canSetRef(oldRef)) {
4592
+ const oldRawRefAtom = oldRawRef;
4593
+ if (canSetRef(oldRef, oldRawRefAtom.k)) {
4552
4594
  oldRef.value = null;
4553
4595
  }
4554
- const oldRawRefAtom = oldRawRef;
4555
4596
  if (oldRawRefAtom.k) refs[oldRawRefAtom.k] = null;
4556
4597
  }
4557
4598
  }
@@ -4575,7 +4616,7 @@ function setRef(rawRef, oldRawRef, parentSuspense, vnode, isUnmount = false) {
4575
4616
  }
4576
4617
  } else {
4577
4618
  const newVal = [refValue];
4578
- if (canSetRef(ref)) {
4619
+ if (canSetRef(ref, rawRef.k)) {
4579
4620
  ref.value = newVal;
4580
4621
  }
4581
4622
  if (rawRef.k) refs[rawRef.k] = newVal;
@@ -4590,7 +4631,7 @@ function setRef(rawRef, oldRawRef, parentSuspense, vnode, isUnmount = false) {
4590
4631
  setupState[ref] = value;
4591
4632
  }
4592
4633
  } else if (_isRef) {
4593
- if (canSetRef(ref)) {
4634
+ if (canSetRef(ref, rawRef.k)) {
4594
4635
  ref.value = value;
4595
4636
  }
4596
4637
  if (rawRef.k) refs[rawRef.k] = value;
@@ -4930,7 +4971,7 @@ Server rendered element contains more child nodes than client vdom.`
4930
4971
  logMismatchError();
4931
4972
  }
4932
4973
  if (forcePatch && (key.endsWith("value") || key === "indeterminate") || isOn(key) && !isReservedProp(key) || // force hydrate v-bind with .prop modifiers
4933
- key[0] === "." || isCustomElement) {
4974
+ key[0] === "." || isCustomElement && !isReservedProp(key)) {
4934
4975
  patchProp(el, key, null, props[key], void 0, parentComponent);
4935
4976
  }
4936
4977
  }
@@ -7466,7 +7507,7 @@ function createCompatVue$1(createApp, createSingletonApp) {
7466
7507
  return vm;
7467
7508
  }
7468
7509
  }
7469
- Vue.version = `2.6.14-compat:${"3.5.26"}`;
7510
+ Vue.version = `2.6.14-compat:${"3.5.28"}`;
7470
7511
  Vue.config = singletonApp.config;
7471
7512
  Vue.use = (plugin, ...options) => {
7472
7513
  if (plugin && isFunction(plugin.install)) {
@@ -8582,7 +8623,7 @@ function shouldUpdateComponent(prevVNode, nextVNode, optimized) {
8582
8623
  const dynamicProps = nextVNode.dynamicProps;
8583
8624
  for (let i = 0; i < dynamicProps.length; i++) {
8584
8625
  const key = dynamicProps[i];
8585
- if (nextProps[key] !== prevProps[key] && !isEmitListener(emits, key)) {
8626
+ if (hasPropValueChanged(nextProps, prevProps, key) && !isEmitListener(emits, key)) {
8586
8627
  return true;
8587
8628
  }
8588
8629
  }
@@ -8613,12 +8654,20 @@ function hasPropsChanged(prevProps, nextProps, emitsOptions) {
8613
8654
  }
8614
8655
  for (let i = 0; i < nextKeys.length; i++) {
8615
8656
  const key = nextKeys[i];
8616
- if (nextProps[key] !== prevProps[key] && !isEmitListener(emitsOptions, key)) {
8657
+ if (hasPropValueChanged(nextProps, prevProps, key) && !isEmitListener(emitsOptions, key)) {
8617
8658
  return true;
8618
8659
  }
8619
8660
  }
8620
8661
  return false;
8621
8662
  }
8663
+ function hasPropValueChanged(nextProps, prevProps, key) {
8664
+ const nextProp = nextProps[key];
8665
+ const prevProp = prevProps[key];
8666
+ if (key === "style" && isObject(nextProp) && isObject(prevProp)) {
8667
+ return !looseEqual(nextProp, prevProp);
8668
+ }
8669
+ return nextProp !== prevProp;
8670
+ }
8622
8671
  function updateHOCHostEl({ vnode, parent }, el) {
8623
8672
  while (parent) {
8624
8673
  const root = parent.subTree;
@@ -9421,15 +9470,7 @@ function baseCreateRenderer(options, createHydrationFns) {
9421
9470
  } else {
9422
9471
  const el = n2.el = n1.el;
9423
9472
  if (n2.children !== n1.children) {
9424
- if (!!(process.env.NODE_ENV !== "production") && isHmrUpdating && n2.patchFlag === -1 && "__elIndex" in n1) {
9425
- const childNodes = container.childNodes;
9426
- const newChild = hostCreateText(n2.children);
9427
- const oldChild = childNodes[n2.__elIndex = n1.__elIndex];
9428
- hostInsert(newChild, container, oldChild);
9429
- hostRemove(oldChild);
9430
- } else {
9431
- hostSetText(el, n2.children);
9432
- }
9473
+ hostSetText(el, n2.children);
9433
9474
  }
9434
9475
  }
9435
9476
  };
@@ -9505,7 +9546,7 @@ function baseCreateRenderer(options, createHydrationFns) {
9505
9546
  optimized
9506
9547
  );
9507
9548
  } else {
9508
- const customElement = !!(n1.el && n1.el._isVueCE) ? n1.el : null;
9549
+ const customElement = n1.el && n1.el._isVueCE ? n1.el : null;
9509
9550
  try {
9510
9551
  if (customElement) {
9511
9552
  customElement._beginPatch();
@@ -10002,8 +10043,7 @@ function baseCreateRenderer(options, createHydrationFns) {
10002
10043
  hydrateSubTree();
10003
10044
  }
10004
10045
  } else {
10005
- if (root.ce && // @ts-expect-error _def is private
10006
- root.ce._def.shadowRoot !== false) {
10046
+ if (root.ce && root.ce._hasShadowRoot()) {
10007
10047
  root.ce._injectChildStyle(type);
10008
10048
  }
10009
10049
  if (!!(process.env.NODE_ENV !== "production")) {
@@ -10070,9 +10110,9 @@ function baseCreateRenderer(options, createHydrationFns) {
10070
10110
  updateComponentPreRender(instance, next, optimized);
10071
10111
  }
10072
10112
  nonHydratedAsyncRoot.asyncDep.then(() => {
10073
- if (!instance.isUnmounted) {
10074
- componentUpdateFn();
10075
- }
10113
+ queuePostRenderEffect(() => {
10114
+ if (!instance.isUnmounted) update();
10115
+ }, parentSuspense);
10076
10116
  });
10077
10117
  return;
10078
10118
  }
@@ -10787,12 +10827,10 @@ function traverseStaticChildren(n1, n2, shallow = false) {
10787
10827
  traverseStaticChildren(c1, c2);
10788
10828
  }
10789
10829
  if (c2.type === Text) {
10790
- if (c2.patchFlag !== -1) {
10791
- c2.el = c1.el;
10792
- } else {
10793
- c2.__elIndex = i + // take fragment start anchor into account
10794
- (n1.type === Fragment ? 1 : 0);
10830
+ if (c2.patchFlag === -1) {
10831
+ c2 = ch2[i] = cloneIfMounted(c2);
10795
10832
  }
10833
+ c2.el = c1.el;
10796
10834
  }
10797
10835
  if (c2.type === Comment && !c2.el) {
10798
10836
  c2.el = c1.el;
@@ -12611,7 +12649,7 @@ function isMemoSame(cached, memo) {
12611
12649
  return true;
12612
12650
  }
12613
12651
 
12614
- const version = "3.5.26";
12652
+ const version = "3.5.28";
12615
12653
  const warn = !!(process.env.NODE_ENV !== "production") ? warn$1 : NOOP;
12616
12654
  const ErrorTypeStrings = ErrorTypeStrings$1 ;
12617
12655
  const devtools = !!(process.env.NODE_ENV !== "production") || true ? devtools$1 : void 0;
@@ -13973,6 +14011,12 @@ class VueElement extends BaseClass {
13973
14011
  this._update();
13974
14012
  }
13975
14013
  }
14014
+ /**
14015
+ * @internal
14016
+ */
14017
+ _hasShadowRoot() {
14018
+ return this._def.shadowRoot !== false;
14019
+ }
13976
14020
  /**
13977
14021
  * @internal
13978
14022
  */
@@ -14116,10 +14160,7 @@ const TransitionGroupImpl = /* @__PURE__ */ decorate({
14116
14160
  instance
14117
14161
  )
14118
14162
  );
14119
- positionMap.set(child, {
14120
- left: child.el.offsetLeft,
14121
- top: child.el.offsetTop
14122
- });
14163
+ positionMap.set(child, getPosition(child.el));
14123
14164
  }
14124
14165
  }
14125
14166
  }
@@ -14150,10 +14191,7 @@ function callPendingCbs(c) {
14150
14191
  }
14151
14192
  }
14152
14193
  function recordPosition(c) {
14153
- newPositionMap.set(c, {
14154
- left: c.el.offsetLeft,
14155
- top: c.el.offsetTop
14156
- });
14194
+ newPositionMap.set(c, getPosition(c.el));
14157
14195
  }
14158
14196
  function applyTranslation(c) {
14159
14197
  const oldPos = positionMap.get(c);
@@ -14161,12 +14199,29 @@ function applyTranslation(c) {
14161
14199
  const dx = oldPos.left - newPos.left;
14162
14200
  const dy = oldPos.top - newPos.top;
14163
14201
  if (dx || dy) {
14164
- const s = c.el.style;
14165
- s.transform = s.webkitTransform = `translate(${dx}px,${dy}px)`;
14202
+ const el = c.el;
14203
+ const s = el.style;
14204
+ const rect = el.getBoundingClientRect();
14205
+ let scaleX = 1;
14206
+ let scaleY = 1;
14207
+ if (el.offsetWidth) scaleX = rect.width / el.offsetWidth;
14208
+ if (el.offsetHeight) scaleY = rect.height / el.offsetHeight;
14209
+ if (!Number.isFinite(scaleX) || scaleX === 0) scaleX = 1;
14210
+ if (!Number.isFinite(scaleY) || scaleY === 0) scaleY = 1;
14211
+ if (Math.abs(scaleX - 1) < 0.01) scaleX = 1;
14212
+ if (Math.abs(scaleY - 1) < 0.01) scaleY = 1;
14213
+ s.transform = s.webkitTransform = `translate(${dx / scaleX}px,${dy / scaleY}px)`;
14166
14214
  s.transitionDuration = "0s";
14167
14215
  return c;
14168
14216
  }
14169
14217
  }
14218
+ function getPosition(el) {
14219
+ const rect = el.getBoundingClientRect();
14220
+ return {
14221
+ left: rect.left,
14222
+ top: rect.top
14223
+ };
14224
+ }
14170
14225
  function hasCSSTransform(el, root, moveClass) {
14171
14226
  const clone = el.cloneNode();
14172
14227
  const _vtc = el[vtcKey];
@@ -14477,6 +14532,7 @@ const modifierGuards = {
14477
14532
  exact: (e, modifiers) => systemModifiers.some((m) => e[`${m}Key`] && !modifiers.includes(m))
14478
14533
  };
14479
14534
  const withModifiers = (fn, modifiers) => {
14535
+ if (!fn) return fn;
14480
14536
  const cache = fn._withMods || (fn._withMods = {});
14481
14537
  const cacheKey = modifiers.join(".");
14482
14538
  return cache[cacheKey] || (cache[cacheKey] = ((event, ...args) => {