@vue/runtime-dom 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/runtime-dom v3.5.26
2
+ * @vue/runtime-dom v3.5.28
3
3
  * (c) 2018-present Yuxi (Evan) You and Vue contributors
4
4
  * @license MIT
5
5
  **/
@@ -334,6 +334,7 @@ function warn$2(msg, ...args) {
334
334
 
335
335
  let activeEffectScope;
336
336
  class EffectScope {
337
+ // TODO isolatedDeclarations "__v_skip"
337
338
  constructor(detached = false) {
338
339
  this.detached = detached;
339
340
  /**
@@ -353,6 +354,7 @@ class EffectScope {
353
354
  */
354
355
  this.cleanups = [];
355
356
  this._isPaused = false;
357
+ this.__v_skip = true;
356
358
  this.parent = activeEffectScope;
357
359
  if (!detached && activeEffectScope) {
358
360
  this.index = (activeEffectScope.scopes || (activeEffectScope.scopes = [])).push(
@@ -1418,20 +1420,20 @@ function createIterableMethod(method, isReadonly2, isShallow2) {
1418
1420
  "iterate",
1419
1421
  isKeyOnly ? MAP_KEY_ITERATE_KEY : ITERATE_KEY
1420
1422
  );
1421
- return {
1422
- // iterator protocol
1423
- next() {
1424
- const { value, done } = innerIterator.next();
1425
- return done ? { value, done } : {
1426
- value: isPair ? [wrap(value[0]), wrap(value[1])] : wrap(value),
1427
- done
1428
- };
1429
- },
1430
- // iterable protocol
1431
- [Symbol.iterator]() {
1432
- return this;
1423
+ return extend(
1424
+ // inheriting all iterator properties
1425
+ Object.create(innerIterator),
1426
+ {
1427
+ // iterator protocol
1428
+ next() {
1429
+ const { value, done } = innerIterator.next();
1430
+ return done ? { value, done } : {
1431
+ value: isPair ? [wrap(value[0]), wrap(value[1])] : wrap(value),
1432
+ done
1433
+ };
1434
+ }
1433
1435
  }
1434
- };
1436
+ );
1435
1437
  };
1436
1438
  }
1437
1439
  function createReadonlyMethod(type) {
@@ -1645,8 +1647,9 @@ function targetTypeMap(rawType) {
1645
1647
  function getTargetType(value) {
1646
1648
  return value["__v_skip"] || !Object.isExtensible(value) ? 0 /* INVALID */ : targetTypeMap(toRawType(value));
1647
1649
  }
1650
+ // @__NO_SIDE_EFFECTS__
1648
1651
  function reactive(target) {
1649
- if (isReadonly(target)) {
1652
+ if (/* @__PURE__ */ isReadonly(target)) {
1650
1653
  return target;
1651
1654
  }
1652
1655
  return createReactiveObject(
@@ -1657,6 +1660,7 @@ function reactive(target) {
1657
1660
  reactiveMap
1658
1661
  );
1659
1662
  }
1663
+ // @__NO_SIDE_EFFECTS__
1660
1664
  function shallowReactive(target) {
1661
1665
  return createReactiveObject(
1662
1666
  target,
@@ -1666,6 +1670,7 @@ function shallowReactive(target) {
1666
1670
  shallowReactiveMap
1667
1671
  );
1668
1672
  }
1673
+ // @__NO_SIDE_EFFECTS__
1669
1674
  function readonly(target) {
1670
1675
  return createReactiveObject(
1671
1676
  target,
@@ -1675,6 +1680,7 @@ function readonly(target) {
1675
1680
  readonlyMap
1676
1681
  );
1677
1682
  }
1683
+ // @__NO_SIDE_EFFECTS__
1678
1684
  function shallowReadonly(target) {
1679
1685
  return createReactiveObject(
1680
1686
  target,
@@ -1713,24 +1719,29 @@ function createReactiveObject(target, isReadonly2, baseHandlers, collectionHandl
1713
1719
  proxyMap.set(target, proxy);
1714
1720
  return proxy;
1715
1721
  }
1722
+ // @__NO_SIDE_EFFECTS__
1716
1723
  function isReactive(value) {
1717
- if (isReadonly(value)) {
1718
- return isReactive(value["__v_raw"]);
1724
+ if (/* @__PURE__ */ isReadonly(value)) {
1725
+ return /* @__PURE__ */ isReactive(value["__v_raw"]);
1719
1726
  }
1720
1727
  return !!(value && value["__v_isReactive"]);
1721
1728
  }
1729
+ // @__NO_SIDE_EFFECTS__
1722
1730
  function isReadonly(value) {
1723
1731
  return !!(value && value["__v_isReadonly"]);
1724
1732
  }
1733
+ // @__NO_SIDE_EFFECTS__
1725
1734
  function isShallow(value) {
1726
1735
  return !!(value && value["__v_isShallow"]);
1727
1736
  }
1737
+ // @__NO_SIDE_EFFECTS__
1728
1738
  function isProxy(value) {
1729
1739
  return value ? !!value["__v_raw"] : false;
1730
1740
  }
1741
+ // @__NO_SIDE_EFFECTS__
1731
1742
  function toRaw(observed) {
1732
1743
  const raw = observed && observed["__v_raw"];
1733
- return raw ? toRaw(raw) : observed;
1744
+ return raw ? /* @__PURE__ */ toRaw(raw) : observed;
1734
1745
  }
1735
1746
  function markRaw(value) {
1736
1747
  if (!hasOwn(value, "__v_skip") && Object.isExtensible(value)) {
@@ -1738,20 +1749,23 @@ function markRaw(value) {
1738
1749
  }
1739
1750
  return value;
1740
1751
  }
1741
- const toReactive = (value) => isObject(value) ? reactive(value) : value;
1742
- const toReadonly = (value) => isObject(value) ? readonly(value) : value;
1752
+ const toReactive = (value) => isObject(value) ? /* @__PURE__ */ reactive(value) : value;
1753
+ const toReadonly = (value) => isObject(value) ? /* @__PURE__ */ readonly(value) : value;
1743
1754
 
1755
+ // @__NO_SIDE_EFFECTS__
1744
1756
  function isRef(r) {
1745
1757
  return r ? r["__v_isRef"] === true : false;
1746
1758
  }
1759
+ // @__NO_SIDE_EFFECTS__
1747
1760
  function ref(value) {
1748
1761
  return createRef(value, false);
1749
1762
  }
1763
+ // @__NO_SIDE_EFFECTS__
1750
1764
  function shallowRef(value) {
1751
1765
  return createRef(value, true);
1752
1766
  }
1753
1767
  function createRef(rawValue, shallow) {
1754
- if (isRef(rawValue)) {
1768
+ if (/* @__PURE__ */ isRef(rawValue)) {
1755
1769
  return rawValue;
1756
1770
  }
1757
1771
  return new RefImpl(rawValue, shallow);
@@ -1807,7 +1821,7 @@ function triggerRef(ref2) {
1807
1821
  }
1808
1822
  }
1809
1823
  function unref(ref2) {
1810
- return isRef(ref2) ? ref2.value : ref2;
1824
+ return /* @__PURE__ */ isRef(ref2) ? ref2.value : ref2;
1811
1825
  }
1812
1826
  function toValue(source) {
1813
1827
  return isFunction(source) ? source() : unref(source);
@@ -1816,7 +1830,7 @@ const shallowUnwrapHandlers = {
1816
1830
  get: (target, key, receiver) => key === "__v_raw" ? target : unref(Reflect.get(target, key, receiver)),
1817
1831
  set: (target, key, value, receiver) => {
1818
1832
  const oldValue = target[key];
1819
- if (isRef(oldValue) && !isRef(value)) {
1833
+ if (/* @__PURE__ */ isRef(oldValue) && !/* @__PURE__ */ isRef(value)) {
1820
1834
  oldValue.value = value;
1821
1835
  return true;
1822
1836
  } else {
@@ -1846,6 +1860,7 @@ class CustomRefImpl {
1846
1860
  function customRef(factory) {
1847
1861
  return new CustomRefImpl(factory);
1848
1862
  }
1863
+ // @__NO_SIDE_EFFECTS__
1849
1864
  function toRefs(object) {
1850
1865
  if (!isProxy(object)) {
1851
1866
  warn$2(`toRefs() expects a reactive object but received a plain one.`);
@@ -1881,9 +1896,9 @@ class ObjectRefImpl {
1881
1896
  return this._value = val === void 0 ? this._defaultValue : val;
1882
1897
  }
1883
1898
  set value(newVal) {
1884
- if (this._shallow && isRef(this._raw[this._key])) {
1899
+ if (this._shallow && /* @__PURE__ */ isRef(this._raw[this._key])) {
1885
1900
  const nestedRef = this._object[this._key];
1886
- if (isRef(nestedRef)) {
1901
+ if (/* @__PURE__ */ isRef(nestedRef)) {
1887
1902
  nestedRef.value = newVal;
1888
1903
  return;
1889
1904
  }
@@ -1905,15 +1920,16 @@ class GetterRefImpl {
1905
1920
  return this._value = this._getter();
1906
1921
  }
1907
1922
  }
1923
+ // @__NO_SIDE_EFFECTS__
1908
1924
  function toRef(source, key, defaultValue) {
1909
- if (isRef(source)) {
1925
+ if (/* @__PURE__ */ isRef(source)) {
1910
1926
  return source;
1911
1927
  } else if (isFunction(source)) {
1912
1928
  return new GetterRefImpl(source);
1913
1929
  } else if (isObject(source) && arguments.length > 1) {
1914
1930
  return propertyToRef(source, key, defaultValue);
1915
1931
  } else {
1916
- return ref(source);
1932
+ return /* @__PURE__ */ ref(source);
1917
1933
  }
1918
1934
  }
1919
1935
  function propertyToRef(source, key, defaultValue) {
@@ -1994,6 +2010,7 @@ class ComputedRefImpl {
1994
2010
  }
1995
2011
  }
1996
2012
  }
2013
+ // @__NO_SIDE_EFFECTS__
1997
2014
  function computed$1(getterOrOptions, debugOptions, isSSR = false) {
1998
2015
  let getter;
1999
2016
  let setter;
@@ -3422,7 +3439,22 @@ function moveTeleport(vnode, container, parentAnchor, { o: { insert }, m: move }
3422
3439
  function hydrateTeleport(node, vnode, parentComponent, parentSuspense, slotScopeIds, optimized, {
3423
3440
  o: { nextSibling, parentNode, querySelector, insert, createText }
3424
3441
  }, hydrateChildren) {
3425
- function hydrateDisabledTeleport(node2, vnode2, targetStart, targetAnchor) {
3442
+ function hydrateAnchor(target2, targetNode) {
3443
+ let targetAnchor = targetNode;
3444
+ while (targetAnchor) {
3445
+ if (targetAnchor && targetAnchor.nodeType === 8) {
3446
+ if (targetAnchor.data === "teleport start anchor") {
3447
+ vnode.targetStart = targetAnchor;
3448
+ } else if (targetAnchor.data === "teleport anchor") {
3449
+ vnode.targetAnchor = targetAnchor;
3450
+ target2._lpa = vnode.targetAnchor && nextSibling(vnode.targetAnchor);
3451
+ break;
3452
+ }
3453
+ }
3454
+ targetAnchor = nextSibling(targetAnchor);
3455
+ }
3456
+ }
3457
+ function hydrateDisabledTeleport(node2, vnode2) {
3426
3458
  vnode2.anchor = hydrateChildren(
3427
3459
  nextSibling(node2),
3428
3460
  vnode2,
@@ -3432,8 +3464,6 @@ function hydrateTeleport(node, vnode, parentComponent, parentSuspense, slotScope
3432
3464
  slotScopeIds,
3433
3465
  optimized
3434
3466
  );
3435
- vnode2.targetStart = targetStart;
3436
- vnode2.targetAnchor = targetAnchor;
3437
3467
  }
3438
3468
  const target = vnode.target = resolveTarget(
3439
3469
  vnode.props,
@@ -3444,27 +3474,22 @@ function hydrateTeleport(node, vnode, parentComponent, parentSuspense, slotScope
3444
3474
  const targetNode = target._lpa || target.firstChild;
3445
3475
  if (vnode.shapeFlag & 16) {
3446
3476
  if (disabled) {
3447
- hydrateDisabledTeleport(
3448
- node,
3449
- vnode,
3450
- targetNode,
3451
- targetNode && nextSibling(targetNode)
3452
- );
3477
+ hydrateDisabledTeleport(node, vnode);
3478
+ hydrateAnchor(target, targetNode);
3479
+ if (!vnode.targetAnchor) {
3480
+ prepareAnchor(
3481
+ target,
3482
+ vnode,
3483
+ createText,
3484
+ insert,
3485
+ // if target is the same as the main view, insert anchors before current node
3486
+ // to avoid hydrating mismatch
3487
+ parentNode(node) === target ? node : null
3488
+ );
3489
+ }
3453
3490
  } else {
3454
3491
  vnode.anchor = nextSibling(node);
3455
- let targetAnchor = targetNode;
3456
- while (targetAnchor) {
3457
- if (targetAnchor && targetAnchor.nodeType === 8) {
3458
- if (targetAnchor.data === "teleport start anchor") {
3459
- vnode.targetStart = targetAnchor;
3460
- } else if (targetAnchor.data === "teleport anchor") {
3461
- vnode.targetAnchor = targetAnchor;
3462
- target._lpa = vnode.targetAnchor && nextSibling(vnode.targetAnchor);
3463
- break;
3464
- }
3465
- }
3466
- targetAnchor = nextSibling(targetAnchor);
3467
- }
3492
+ hydrateAnchor(target, targetNode);
3468
3493
  if (!vnode.targetAnchor) {
3469
3494
  prepareAnchor(target, vnode, createText, insert);
3470
3495
  }
@@ -3482,7 +3507,9 @@ function hydrateTeleport(node, vnode, parentComponent, parentSuspense, slotScope
3482
3507
  updateCssVars(vnode, disabled);
3483
3508
  } else if (disabled) {
3484
3509
  if (vnode.shapeFlag & 16) {
3485
- hydrateDisabledTeleport(node, vnode, node, nextSibling(node));
3510
+ hydrateDisabledTeleport(node, vnode);
3511
+ vnode.targetStart = node;
3512
+ vnode.targetAnchor = nextSibling(node);
3486
3513
  }
3487
3514
  }
3488
3515
  return vnode.anchor && nextSibling(vnode.anchor);
@@ -3506,13 +3533,13 @@ function updateCssVars(vnode, isDisabled) {
3506
3533
  ctx.ut();
3507
3534
  }
3508
3535
  }
3509
- function prepareAnchor(target, vnode, createText, insert) {
3536
+ function prepareAnchor(target, vnode, createText, insert, anchor = null) {
3510
3537
  const targetStart = vnode.targetStart = createText("");
3511
3538
  const targetAnchor = vnode.targetAnchor = createText("");
3512
3539
  targetStart[TeleportEndKey] = targetAnchor;
3513
3540
  if (target) {
3514
- insert(targetStart, target);
3515
- insert(targetAnchor, target);
3541
+ insert(targetStart, target, anchor);
3542
+ insert(targetAnchor, target, anchor);
3516
3543
  }
3517
3544
  return targetAnchor;
3518
3545
  }
@@ -3747,7 +3774,7 @@ function resolveTransitionHooks(vnode, props, state, instance, postClone) {
3747
3774
  }
3748
3775
  }
3749
3776
  let called = false;
3750
- const done = el[enterCbKey$1] = (cancelled) => {
3777
+ el[enterCbKey$1] = (cancelled) => {
3751
3778
  if (called) return;
3752
3779
  called = true;
3753
3780
  if (cancelled) {
@@ -3760,6 +3787,7 @@ function resolveTransitionHooks(vnode, props, state, instance, postClone) {
3760
3787
  }
3761
3788
  el[enterCbKey$1] = void 0;
3762
3789
  };
3790
+ const done = el[enterCbKey$1].bind(null, false);
3763
3791
  if (hook) {
3764
3792
  callAsyncHook(hook, [el, done]);
3765
3793
  } else {
@@ -3779,7 +3807,7 @@ function resolveTransitionHooks(vnode, props, state, instance, postClone) {
3779
3807
  }
3780
3808
  callHook(onBeforeLeave, [el]);
3781
3809
  let called = false;
3782
- const done = el[leaveCbKey] = (cancelled) => {
3810
+ el[leaveCbKey] = (cancelled) => {
3783
3811
  if (called) return;
3784
3812
  called = true;
3785
3813
  remove();
@@ -3793,6 +3821,7 @@ function resolveTransitionHooks(vnode, props, state, instance, postClone) {
3793
3821
  delete leavingVNodesCache[key2];
3794
3822
  }
3795
3823
  };
3824
+ const done = el[leaveCbKey].bind(null, false);
3796
3825
  leavingVNodesCache[key2] = vnode;
3797
3826
  if (onLeave) {
3798
3827
  callAsyncHook(onLeave, [el, done]);
@@ -3905,8 +3934,7 @@ function useTemplateRef(key) {
3905
3934
  const r = shallowRef(null);
3906
3935
  if (i) {
3907
3936
  const refs = i.refs === EMPTY_OBJ ? i.refs = {} : i.refs;
3908
- let desc;
3909
- if ((desc = Object.getOwnPropertyDescriptor(refs, key)) && !desc.configurable) {
3937
+ if (isTemplateRefKey(refs, key)) {
3910
3938
  warn$1(`useTemplateRef('${key}') already exists.`);
3911
3939
  } else {
3912
3940
  Object.defineProperty(refs, key, {
@@ -3926,6 +3954,10 @@ function useTemplateRef(key) {
3926
3954
  }
3927
3955
  return ret;
3928
3956
  }
3957
+ function isTemplateRefKey(refs, key) {
3958
+ let desc;
3959
+ return !!((desc = Object.getOwnPropertyDescriptor(refs, key)) && !desc.configurable);
3960
+ }
3929
3961
 
3930
3962
  const pendingSetRefMap = /* @__PURE__ */ new WeakMap();
3931
3963
  function setRef(rawRef, oldRawRef, parentSuspense, vnode, isUnmount = false) {
@@ -3971,10 +4003,19 @@ function setRef(rawRef, oldRawRef, parentSuspense, vnode, isUnmount = false) {
3971
4003
  return false;
3972
4004
  }
3973
4005
  }
4006
+ if (isTemplateRefKey(refs, key)) {
4007
+ return false;
4008
+ }
3974
4009
  return hasOwn(rawSetupState, key);
3975
4010
  };
3976
- const canSetRef = (ref2) => {
3977
- return !knownTemplateRefs.has(ref2);
4011
+ const canSetRef = (ref2, key) => {
4012
+ if (knownTemplateRefs.has(ref2)) {
4013
+ return false;
4014
+ }
4015
+ if (key && isTemplateRefKey(refs, key)) {
4016
+ return false;
4017
+ }
4018
+ return true;
3978
4019
  };
3979
4020
  if (oldRef != null && oldRef !== ref) {
3980
4021
  invalidatePendingSetRef(oldRawRef);
@@ -3984,10 +4025,10 @@ function setRef(rawRef, oldRawRef, parentSuspense, vnode, isUnmount = false) {
3984
4025
  setupState[oldRef] = null;
3985
4026
  }
3986
4027
  } else if (isRef(oldRef)) {
3987
- if (canSetRef(oldRef)) {
4028
+ const oldRawRefAtom = oldRawRef;
4029
+ if (canSetRef(oldRef, oldRawRefAtom.k)) {
3988
4030
  oldRef.value = null;
3989
4031
  }
3990
- const oldRawRefAtom = oldRawRef;
3991
4032
  if (oldRawRefAtom.k) refs[oldRawRefAtom.k] = null;
3992
4033
  }
3993
4034
  }
@@ -4011,7 +4052,7 @@ function setRef(rawRef, oldRawRef, parentSuspense, vnode, isUnmount = false) {
4011
4052
  }
4012
4053
  } else {
4013
4054
  const newVal = [refValue];
4014
- if (canSetRef(ref)) {
4055
+ if (canSetRef(ref, rawRef.k)) {
4015
4056
  ref.value = newVal;
4016
4057
  }
4017
4058
  if (rawRef.k) refs[rawRef.k] = newVal;
@@ -4026,7 +4067,7 @@ function setRef(rawRef, oldRawRef, parentSuspense, vnode, isUnmount = false) {
4026
4067
  setupState[ref] = value;
4027
4068
  }
4028
4069
  } else if (_isRef) {
4029
- if (canSetRef(ref)) {
4070
+ if (canSetRef(ref, rawRef.k)) {
4030
4071
  ref.value = value;
4031
4072
  }
4032
4073
  if (rawRef.k) refs[rawRef.k] = value;
@@ -4366,7 +4407,7 @@ Server rendered element contains more child nodes than client vdom.`
4366
4407
  logMismatchError();
4367
4408
  }
4368
4409
  if (forcePatch && (key.endsWith("value") || key === "indeterminate") || isOn(key) && !isReservedProp(key) || // force hydrate v-bind with .prop modifiers
4369
- key[0] === "." || isCustomElement) {
4410
+ key[0] === "." || isCustomElement && !isReservedProp(key)) {
4370
4411
  patchProp(el, key, null, props[key], void 0, parentComponent);
4371
4412
  }
4372
4413
  }
@@ -6890,7 +6931,7 @@ function shouldUpdateComponent(prevVNode, nextVNode, optimized) {
6890
6931
  const dynamicProps = nextVNode.dynamicProps;
6891
6932
  for (let i = 0; i < dynamicProps.length; i++) {
6892
6933
  const key = dynamicProps[i];
6893
- if (nextProps[key] !== prevProps[key] && !isEmitListener(emits, key)) {
6934
+ if (hasPropValueChanged(nextProps, prevProps, key) && !isEmitListener(emits, key)) {
6894
6935
  return true;
6895
6936
  }
6896
6937
  }
@@ -6921,12 +6962,20 @@ function hasPropsChanged(prevProps, nextProps, emitsOptions) {
6921
6962
  }
6922
6963
  for (let i = 0; i < nextKeys.length; i++) {
6923
6964
  const key = nextKeys[i];
6924
- if (nextProps[key] !== prevProps[key] && !isEmitListener(emitsOptions, key)) {
6965
+ if (hasPropValueChanged(nextProps, prevProps, key) && !isEmitListener(emitsOptions, key)) {
6925
6966
  return true;
6926
6967
  }
6927
6968
  }
6928
6969
  return false;
6929
6970
  }
6971
+ function hasPropValueChanged(nextProps, prevProps, key) {
6972
+ const nextProp = nextProps[key];
6973
+ const prevProp = prevProps[key];
6974
+ if (key === "style" && isObject(nextProp) && isObject(prevProp)) {
6975
+ return !looseEqual(nextProp, prevProp);
6976
+ }
6977
+ return nextProp !== prevProp;
6978
+ }
6930
6979
  function updateHOCHostEl({ vnode, parent }, el) {
6931
6980
  while (parent) {
6932
6981
  const root = parent.subTree;
@@ -7630,15 +7679,7 @@ function baseCreateRenderer(options, createHydrationFns) {
7630
7679
  } else {
7631
7680
  const el = n2.el = n1.el;
7632
7681
  if (n2.children !== n1.children) {
7633
- if (isHmrUpdating && n2.patchFlag === -1 && "__elIndex" in n1) {
7634
- const childNodes = container.childNodes;
7635
- const newChild = hostCreateText(n2.children);
7636
- const oldChild = childNodes[n2.__elIndex = n1.__elIndex];
7637
- hostInsert(newChild, container, oldChild);
7638
- hostRemove(oldChild);
7639
- } else {
7640
- hostSetText(el, n2.children);
7641
- }
7682
+ hostSetText(el, n2.children);
7642
7683
  }
7643
7684
  }
7644
7685
  };
@@ -7714,7 +7755,7 @@ function baseCreateRenderer(options, createHydrationFns) {
7714
7755
  optimized
7715
7756
  );
7716
7757
  } else {
7717
- const customElement = !!(n1.el && n1.el._isVueCE) ? n1.el : null;
7758
+ const customElement = n1.el && n1.el._isVueCE ? n1.el : null;
7718
7759
  try {
7719
7760
  if (customElement) {
7720
7761
  customElement._beginPatch();
@@ -8196,8 +8237,7 @@ function baseCreateRenderer(options, createHydrationFns) {
8196
8237
  hydrateSubTree();
8197
8238
  }
8198
8239
  } else {
8199
- if (root.ce && // @ts-expect-error _def is private
8200
- root.ce._def.shadowRoot !== false) {
8240
+ if (root.ce && root.ce._hasShadowRoot()) {
8201
8241
  root.ce._injectChildStyle(type);
8202
8242
  }
8203
8243
  {
@@ -8252,9 +8292,9 @@ function baseCreateRenderer(options, createHydrationFns) {
8252
8292
  updateComponentPreRender(instance, next, optimized);
8253
8293
  }
8254
8294
  nonHydratedAsyncRoot.asyncDep.then(() => {
8255
- if (!instance.isUnmounted) {
8256
- componentUpdateFn();
8257
- }
8295
+ queuePostRenderEffect(() => {
8296
+ if (!instance.isUnmounted) update();
8297
+ }, parentSuspense);
8258
8298
  });
8259
8299
  return;
8260
8300
  }
@@ -8951,12 +8991,10 @@ function traverseStaticChildren(n1, n2, shallow = false) {
8951
8991
  traverseStaticChildren(c1, c2);
8952
8992
  }
8953
8993
  if (c2.type === Text) {
8954
- if (c2.patchFlag !== -1) {
8955
- c2.el = c1.el;
8956
- } else {
8957
- c2.__elIndex = i + // take fragment start anchor into account
8958
- (n1.type === Fragment ? 1 : 0);
8994
+ if (c2.patchFlag === -1) {
8995
+ c2 = ch2[i] = cloneIfMounted(c2);
8959
8996
  }
8997
+ c2.el = c1.el;
8960
8998
  }
8961
8999
  if (c2.type === Comment && !c2.el) {
8962
9000
  c2.el = c1.el;
@@ -10682,7 +10720,7 @@ function isMemoSame(cached, memo) {
10682
10720
  return true;
10683
10721
  }
10684
10722
 
10685
- const version = "3.5.26";
10723
+ const version = "3.5.28";
10686
10724
  const warn = warn$1 ;
10687
10725
  const ErrorTypeStrings = ErrorTypeStrings$1 ;
10688
10726
  const devtools = devtools$1 ;
@@ -11956,6 +11994,12 @@ class VueElement extends BaseClass {
11956
11994
  this._update();
11957
11995
  }
11958
11996
  }
11997
+ /**
11998
+ * @internal
11999
+ */
12000
+ _hasShadowRoot() {
12001
+ return this._def.shadowRoot !== false;
12002
+ }
11959
12003
  /**
11960
12004
  * @internal
11961
12005
  */
@@ -12090,10 +12134,7 @@ const TransitionGroupImpl = /* @__PURE__ */ decorate({
12090
12134
  instance
12091
12135
  )
12092
12136
  );
12093
- positionMap.set(child, {
12094
- left: child.el.offsetLeft,
12095
- top: child.el.offsetTop
12096
- });
12137
+ positionMap.set(child, getPosition(child.el));
12097
12138
  }
12098
12139
  }
12099
12140
  }
@@ -12124,10 +12165,7 @@ function callPendingCbs(c) {
12124
12165
  }
12125
12166
  }
12126
12167
  function recordPosition(c) {
12127
- newPositionMap.set(c, {
12128
- left: c.el.offsetLeft,
12129
- top: c.el.offsetTop
12130
- });
12168
+ newPositionMap.set(c, getPosition(c.el));
12131
12169
  }
12132
12170
  function applyTranslation(c) {
12133
12171
  const oldPos = positionMap.get(c);
@@ -12135,12 +12173,29 @@ function applyTranslation(c) {
12135
12173
  const dx = oldPos.left - newPos.left;
12136
12174
  const dy = oldPos.top - newPos.top;
12137
12175
  if (dx || dy) {
12138
- const s = c.el.style;
12139
- s.transform = s.webkitTransform = `translate(${dx}px,${dy}px)`;
12176
+ const el = c.el;
12177
+ const s = el.style;
12178
+ const rect = el.getBoundingClientRect();
12179
+ let scaleX = 1;
12180
+ let scaleY = 1;
12181
+ if (el.offsetWidth) scaleX = rect.width / el.offsetWidth;
12182
+ if (el.offsetHeight) scaleY = rect.height / el.offsetHeight;
12183
+ if (!Number.isFinite(scaleX) || scaleX === 0) scaleX = 1;
12184
+ if (!Number.isFinite(scaleY) || scaleY === 0) scaleY = 1;
12185
+ if (Math.abs(scaleX - 1) < 0.01) scaleX = 1;
12186
+ if (Math.abs(scaleY - 1) < 0.01) scaleY = 1;
12187
+ s.transform = s.webkitTransform = `translate(${dx / scaleX}px,${dy / scaleY}px)`;
12140
12188
  s.transitionDuration = "0s";
12141
12189
  return c;
12142
12190
  }
12143
12191
  }
12192
+ function getPosition(el) {
12193
+ const rect = el.getBoundingClientRect();
12194
+ return {
12195
+ left: rect.left,
12196
+ top: rect.top
12197
+ };
12198
+ }
12144
12199
  function hasCSSTransform(el, root, moveClass) {
12145
12200
  const clone = el.cloneNode();
12146
12201
  const _vtc = el[vtcKey];
@@ -12451,6 +12506,7 @@ const modifierGuards = {
12451
12506
  exact: (e, modifiers) => systemModifiers.some((m) => e[`${m}Key`] && !modifiers.includes(m))
12452
12507
  };
12453
12508
  const withModifiers = (fn, modifiers) => {
12509
+ if (!fn) return fn;
12454
12510
  const cache = fn._withMods || (fn._withMods = {});
12455
12511
  const cacheKey = modifiers.join(".");
12456
12512
  return cache[cacheKey] || (cache[cacheKey] = ((event, ...args) => {