@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.
package/dist/vue.cjs.js CHANGED
@@ -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
  **/
@@ -460,6 +460,7 @@ function warn$2(msg, ...args) {
460
460
 
461
461
  let activeEffectScope;
462
462
  class EffectScope {
463
+ // TODO isolatedDeclarations "__v_skip"
463
464
  constructor(detached = false) {
464
465
  this.detached = detached;
465
466
  /**
@@ -479,6 +480,7 @@ class EffectScope {
479
480
  */
480
481
  this.cleanups = [];
481
482
  this._isPaused = false;
483
+ this.__v_skip = true;
482
484
  this.parent = activeEffectScope;
483
485
  if (!detached && activeEffectScope) {
484
486
  this.index = (activeEffectScope.scopes || (activeEffectScope.scopes = [])).push(
@@ -1544,20 +1546,20 @@ function createIterableMethod(method, isReadonly2, isShallow2) {
1544
1546
  "iterate",
1545
1547
  isKeyOnly ? MAP_KEY_ITERATE_KEY : ITERATE_KEY
1546
1548
  );
1547
- return {
1548
- // iterator protocol
1549
- next() {
1550
- const { value, done } = innerIterator.next();
1551
- return done ? { value, done } : {
1552
- value: isPair ? [wrap(value[0]), wrap(value[1])] : wrap(value),
1553
- done
1554
- };
1555
- },
1556
- // iterable protocol
1557
- [Symbol.iterator]() {
1558
- return this;
1549
+ return extend(
1550
+ // inheriting all iterator properties
1551
+ Object.create(innerIterator),
1552
+ {
1553
+ // iterator protocol
1554
+ next() {
1555
+ const { value, done } = innerIterator.next();
1556
+ return done ? { value, done } : {
1557
+ value: isPair ? [wrap(value[0]), wrap(value[1])] : wrap(value),
1558
+ done
1559
+ };
1560
+ }
1559
1561
  }
1560
- };
1562
+ );
1561
1563
  };
1562
1564
  }
1563
1565
  function createReadonlyMethod(type) {
@@ -1771,8 +1773,9 @@ function targetTypeMap(rawType) {
1771
1773
  function getTargetType(value) {
1772
1774
  return value["__v_skip"] || !Object.isExtensible(value) ? 0 /* INVALID */ : targetTypeMap(toRawType(value));
1773
1775
  }
1776
+ // @__NO_SIDE_EFFECTS__
1774
1777
  function reactive(target) {
1775
- if (isReadonly(target)) {
1778
+ if (/* @__PURE__ */ isReadonly(target)) {
1776
1779
  return target;
1777
1780
  }
1778
1781
  return createReactiveObject(
@@ -1783,6 +1786,7 @@ function reactive(target) {
1783
1786
  reactiveMap
1784
1787
  );
1785
1788
  }
1789
+ // @__NO_SIDE_EFFECTS__
1786
1790
  function shallowReactive(target) {
1787
1791
  return createReactiveObject(
1788
1792
  target,
@@ -1792,6 +1796,7 @@ function shallowReactive(target) {
1792
1796
  shallowReactiveMap
1793
1797
  );
1794
1798
  }
1799
+ // @__NO_SIDE_EFFECTS__
1795
1800
  function readonly(target) {
1796
1801
  return createReactiveObject(
1797
1802
  target,
@@ -1801,6 +1806,7 @@ function readonly(target) {
1801
1806
  readonlyMap
1802
1807
  );
1803
1808
  }
1809
+ // @__NO_SIDE_EFFECTS__
1804
1810
  function shallowReadonly(target) {
1805
1811
  return createReactiveObject(
1806
1812
  target,
@@ -1839,24 +1845,29 @@ function createReactiveObject(target, isReadonly2, baseHandlers, collectionHandl
1839
1845
  proxyMap.set(target, proxy);
1840
1846
  return proxy;
1841
1847
  }
1848
+ // @__NO_SIDE_EFFECTS__
1842
1849
  function isReactive(value) {
1843
- if (isReadonly(value)) {
1844
- return isReactive(value["__v_raw"]);
1850
+ if (/* @__PURE__ */ isReadonly(value)) {
1851
+ return /* @__PURE__ */ isReactive(value["__v_raw"]);
1845
1852
  }
1846
1853
  return !!(value && value["__v_isReactive"]);
1847
1854
  }
1855
+ // @__NO_SIDE_EFFECTS__
1848
1856
  function isReadonly(value) {
1849
1857
  return !!(value && value["__v_isReadonly"]);
1850
1858
  }
1859
+ // @__NO_SIDE_EFFECTS__
1851
1860
  function isShallow(value) {
1852
1861
  return !!(value && value["__v_isShallow"]);
1853
1862
  }
1863
+ // @__NO_SIDE_EFFECTS__
1854
1864
  function isProxy(value) {
1855
1865
  return value ? !!value["__v_raw"] : false;
1856
1866
  }
1867
+ // @__NO_SIDE_EFFECTS__
1857
1868
  function toRaw(observed) {
1858
1869
  const raw = observed && observed["__v_raw"];
1859
- return raw ? toRaw(raw) : observed;
1870
+ return raw ? /* @__PURE__ */ toRaw(raw) : observed;
1860
1871
  }
1861
1872
  function markRaw(value) {
1862
1873
  if (!hasOwn(value, "__v_skip") && Object.isExtensible(value)) {
@@ -1864,20 +1875,23 @@ function markRaw(value) {
1864
1875
  }
1865
1876
  return value;
1866
1877
  }
1867
- const toReactive = (value) => isObject(value) ? reactive(value) : value;
1868
- const toReadonly = (value) => isObject(value) ? readonly(value) : value;
1878
+ const toReactive = (value) => isObject(value) ? /* @__PURE__ */ reactive(value) : value;
1879
+ const toReadonly = (value) => isObject(value) ? /* @__PURE__ */ readonly(value) : value;
1869
1880
 
1881
+ // @__NO_SIDE_EFFECTS__
1870
1882
  function isRef(r) {
1871
1883
  return r ? r["__v_isRef"] === true : false;
1872
1884
  }
1885
+ // @__NO_SIDE_EFFECTS__
1873
1886
  function ref(value) {
1874
1887
  return createRef(value, false);
1875
1888
  }
1889
+ // @__NO_SIDE_EFFECTS__
1876
1890
  function shallowRef(value) {
1877
1891
  return createRef(value, true);
1878
1892
  }
1879
1893
  function createRef(rawValue, shallow) {
1880
- if (isRef(rawValue)) {
1894
+ if (/* @__PURE__ */ isRef(rawValue)) {
1881
1895
  return rawValue;
1882
1896
  }
1883
1897
  return new RefImpl(rawValue, shallow);
@@ -1933,7 +1947,7 @@ function triggerRef(ref2) {
1933
1947
  }
1934
1948
  }
1935
1949
  function unref(ref2) {
1936
- return isRef(ref2) ? ref2.value : ref2;
1950
+ return /* @__PURE__ */ isRef(ref2) ? ref2.value : ref2;
1937
1951
  }
1938
1952
  function toValue(source) {
1939
1953
  return isFunction(source) ? source() : unref(source);
@@ -1942,7 +1956,7 @@ const shallowUnwrapHandlers = {
1942
1956
  get: (target, key, receiver) => key === "__v_raw" ? target : unref(Reflect.get(target, key, receiver)),
1943
1957
  set: (target, key, value, receiver) => {
1944
1958
  const oldValue = target[key];
1945
- if (isRef(oldValue) && !isRef(value)) {
1959
+ if (/* @__PURE__ */ isRef(oldValue) && !/* @__PURE__ */ isRef(value)) {
1946
1960
  oldValue.value = value;
1947
1961
  return true;
1948
1962
  } else {
@@ -1972,6 +1986,7 @@ class CustomRefImpl {
1972
1986
  function customRef(factory) {
1973
1987
  return new CustomRefImpl(factory);
1974
1988
  }
1989
+ // @__NO_SIDE_EFFECTS__
1975
1990
  function toRefs(object) {
1976
1991
  if (!isProxy(object)) {
1977
1992
  warn$2(`toRefs() expects a reactive object but received a plain one.`);
@@ -2007,9 +2022,9 @@ class ObjectRefImpl {
2007
2022
  return this._value = val === void 0 ? this._defaultValue : val;
2008
2023
  }
2009
2024
  set value(newVal) {
2010
- if (this._shallow && isRef(this._raw[this._key])) {
2025
+ if (this._shallow && /* @__PURE__ */ isRef(this._raw[this._key])) {
2011
2026
  const nestedRef = this._object[this._key];
2012
- if (isRef(nestedRef)) {
2027
+ if (/* @__PURE__ */ isRef(nestedRef)) {
2013
2028
  nestedRef.value = newVal;
2014
2029
  return;
2015
2030
  }
@@ -2031,15 +2046,16 @@ class GetterRefImpl {
2031
2046
  return this._value = this._getter();
2032
2047
  }
2033
2048
  }
2049
+ // @__NO_SIDE_EFFECTS__
2034
2050
  function toRef(source, key, defaultValue) {
2035
- if (isRef(source)) {
2051
+ if (/* @__PURE__ */ isRef(source)) {
2036
2052
  return source;
2037
2053
  } else if (isFunction(source)) {
2038
2054
  return new GetterRefImpl(source);
2039
2055
  } else if (isObject(source) && arguments.length > 1) {
2040
2056
  return propertyToRef(source, key, defaultValue);
2041
2057
  } else {
2042
- return ref(source);
2058
+ return /* @__PURE__ */ ref(source);
2043
2059
  }
2044
2060
  }
2045
2061
  function propertyToRef(source, key, defaultValue) {
@@ -2120,6 +2136,7 @@ class ComputedRefImpl {
2120
2136
  }
2121
2137
  }
2122
2138
  }
2139
+ // @__NO_SIDE_EFFECTS__
2123
2140
  function computed$1(getterOrOptions, debugOptions, isSSR = false) {
2124
2141
  let getter;
2125
2142
  let setter;
@@ -4017,7 +4034,22 @@ function moveTeleport(vnode, container, parentAnchor, { o: { insert }, m: move }
4017
4034
  function hydrateTeleport(node, vnode, parentComponent, parentSuspense, slotScopeIds, optimized, {
4018
4035
  o: { nextSibling, parentNode, querySelector, insert, createText }
4019
4036
  }, hydrateChildren) {
4020
- function hydrateDisabledTeleport(node2, vnode2, targetStart, targetAnchor) {
4037
+ function hydrateAnchor(target2, targetNode) {
4038
+ let targetAnchor = targetNode;
4039
+ while (targetAnchor) {
4040
+ if (targetAnchor && targetAnchor.nodeType === 8) {
4041
+ if (targetAnchor.data === "teleport start anchor") {
4042
+ vnode.targetStart = targetAnchor;
4043
+ } else if (targetAnchor.data === "teleport anchor") {
4044
+ vnode.targetAnchor = targetAnchor;
4045
+ target2._lpa = vnode.targetAnchor && nextSibling(vnode.targetAnchor);
4046
+ break;
4047
+ }
4048
+ }
4049
+ targetAnchor = nextSibling(targetAnchor);
4050
+ }
4051
+ }
4052
+ function hydrateDisabledTeleport(node2, vnode2) {
4021
4053
  vnode2.anchor = hydrateChildren(
4022
4054
  nextSibling(node2),
4023
4055
  vnode2,
@@ -4027,8 +4059,6 @@ function hydrateTeleport(node, vnode, parentComponent, parentSuspense, slotScope
4027
4059
  slotScopeIds,
4028
4060
  optimized
4029
4061
  );
4030
- vnode2.targetStart = targetStart;
4031
- vnode2.targetAnchor = targetAnchor;
4032
4062
  }
4033
4063
  const target = vnode.target = resolveTarget(
4034
4064
  vnode.props,
@@ -4039,27 +4069,22 @@ function hydrateTeleport(node, vnode, parentComponent, parentSuspense, slotScope
4039
4069
  const targetNode = target._lpa || target.firstChild;
4040
4070
  if (vnode.shapeFlag & 16) {
4041
4071
  if (disabled) {
4042
- hydrateDisabledTeleport(
4043
- node,
4044
- vnode,
4045
- targetNode,
4046
- targetNode && nextSibling(targetNode)
4047
- );
4072
+ hydrateDisabledTeleport(node, vnode);
4073
+ hydrateAnchor(target, targetNode);
4074
+ if (!vnode.targetAnchor) {
4075
+ prepareAnchor(
4076
+ target,
4077
+ vnode,
4078
+ createText,
4079
+ insert,
4080
+ // if target is the same as the main view, insert anchors before current node
4081
+ // to avoid hydrating mismatch
4082
+ parentNode(node) === target ? node : null
4083
+ );
4084
+ }
4048
4085
  } else {
4049
4086
  vnode.anchor = nextSibling(node);
4050
- let targetAnchor = targetNode;
4051
- while (targetAnchor) {
4052
- if (targetAnchor && targetAnchor.nodeType === 8) {
4053
- if (targetAnchor.data === "teleport start anchor") {
4054
- vnode.targetStart = targetAnchor;
4055
- } else if (targetAnchor.data === "teleport anchor") {
4056
- vnode.targetAnchor = targetAnchor;
4057
- target._lpa = vnode.targetAnchor && nextSibling(vnode.targetAnchor);
4058
- break;
4059
- }
4060
- }
4061
- targetAnchor = nextSibling(targetAnchor);
4062
- }
4087
+ hydrateAnchor(target, targetNode);
4063
4088
  if (!vnode.targetAnchor) {
4064
4089
  prepareAnchor(target, vnode, createText, insert);
4065
4090
  }
@@ -4077,7 +4102,9 @@ function hydrateTeleport(node, vnode, parentComponent, parentSuspense, slotScope
4077
4102
  updateCssVars(vnode, disabled);
4078
4103
  } else if (disabled) {
4079
4104
  if (vnode.shapeFlag & 16) {
4080
- hydrateDisabledTeleport(node, vnode, node, nextSibling(node));
4105
+ hydrateDisabledTeleport(node, vnode);
4106
+ vnode.targetStart = node;
4107
+ vnode.targetAnchor = nextSibling(node);
4081
4108
  }
4082
4109
  }
4083
4110
  return vnode.anchor && nextSibling(vnode.anchor);
@@ -4101,13 +4128,13 @@ function updateCssVars(vnode, isDisabled) {
4101
4128
  ctx.ut();
4102
4129
  }
4103
4130
  }
4104
- function prepareAnchor(target, vnode, createText, insert) {
4131
+ function prepareAnchor(target, vnode, createText, insert, anchor = null) {
4105
4132
  const targetStart = vnode.targetStart = createText("");
4106
4133
  const targetAnchor = vnode.targetAnchor = createText("");
4107
4134
  targetStart[TeleportEndKey] = targetAnchor;
4108
4135
  if (target) {
4109
- insert(targetStart, target);
4110
- insert(targetAnchor, target);
4136
+ insert(targetStart, target, anchor);
4137
+ insert(targetAnchor, target, anchor);
4111
4138
  }
4112
4139
  return targetAnchor;
4113
4140
  }
@@ -4345,7 +4372,7 @@ function resolveTransitionHooks(vnode, props, state, instance, postClone) {
4345
4372
  }
4346
4373
  }
4347
4374
  let called = false;
4348
- const done = el[enterCbKey$1] = (cancelled) => {
4375
+ el[enterCbKey$1] = (cancelled) => {
4349
4376
  if (called) return;
4350
4377
  called = true;
4351
4378
  if (cancelled) {
@@ -4358,6 +4385,7 @@ function resolveTransitionHooks(vnode, props, state, instance, postClone) {
4358
4385
  }
4359
4386
  el[enterCbKey$1] = void 0;
4360
4387
  };
4388
+ const done = el[enterCbKey$1].bind(null, false);
4361
4389
  if (hook) {
4362
4390
  callAsyncHook(hook, [el, done]);
4363
4391
  } else {
@@ -4377,7 +4405,7 @@ function resolveTransitionHooks(vnode, props, state, instance, postClone) {
4377
4405
  }
4378
4406
  callHook(onBeforeLeave, [el]);
4379
4407
  let called = false;
4380
- const done = el[leaveCbKey] = (cancelled) => {
4408
+ el[leaveCbKey] = (cancelled) => {
4381
4409
  if (called) return;
4382
4410
  called = true;
4383
4411
  remove();
@@ -4391,6 +4419,7 @@ function resolveTransitionHooks(vnode, props, state, instance, postClone) {
4391
4419
  delete leavingVNodesCache[key2];
4392
4420
  }
4393
4421
  };
4422
+ const done = el[leaveCbKey].bind(null, false);
4394
4423
  leavingVNodesCache[key2] = vnode;
4395
4424
  if (onLeave) {
4396
4425
  callAsyncHook(onLeave, [el, done]);
@@ -4503,8 +4532,7 @@ function useTemplateRef(key) {
4503
4532
  const r = shallowRef(null);
4504
4533
  if (i) {
4505
4534
  const refs = i.refs === EMPTY_OBJ ? i.refs = {} : i.refs;
4506
- let desc;
4507
- if ((desc = Object.getOwnPropertyDescriptor(refs, key)) && !desc.configurable) {
4535
+ if (isTemplateRefKey(refs, key)) {
4508
4536
  warn$1(`useTemplateRef('${key}') already exists.`);
4509
4537
  } else {
4510
4538
  Object.defineProperty(refs, key, {
@@ -4524,6 +4552,10 @@ function useTemplateRef(key) {
4524
4552
  }
4525
4553
  return ret;
4526
4554
  }
4555
+ function isTemplateRefKey(refs, key) {
4556
+ let desc;
4557
+ return !!((desc = Object.getOwnPropertyDescriptor(refs, key)) && !desc.configurable);
4558
+ }
4527
4559
 
4528
4560
  const pendingSetRefMap = /* @__PURE__ */ new WeakMap();
4529
4561
  function setRef(rawRef, oldRawRef, parentSuspense, vnode, isUnmount = false) {
@@ -4569,10 +4601,19 @@ function setRef(rawRef, oldRawRef, parentSuspense, vnode, isUnmount = false) {
4569
4601
  return false;
4570
4602
  }
4571
4603
  }
4604
+ if (isTemplateRefKey(refs, key)) {
4605
+ return false;
4606
+ }
4572
4607
  return hasOwn(rawSetupState, key);
4573
4608
  };
4574
- const canSetRef = (ref2) => {
4575
- return !knownTemplateRefs.has(ref2);
4609
+ const canSetRef = (ref2, key) => {
4610
+ if (knownTemplateRefs.has(ref2)) {
4611
+ return false;
4612
+ }
4613
+ if (key && isTemplateRefKey(refs, key)) {
4614
+ return false;
4615
+ }
4616
+ return true;
4576
4617
  };
4577
4618
  if (oldRef != null && oldRef !== ref) {
4578
4619
  invalidatePendingSetRef(oldRawRef);
@@ -4582,10 +4623,10 @@ function setRef(rawRef, oldRawRef, parentSuspense, vnode, isUnmount = false) {
4582
4623
  setupState[oldRef] = null;
4583
4624
  }
4584
4625
  } else if (isRef(oldRef)) {
4585
- if (canSetRef(oldRef)) {
4626
+ const oldRawRefAtom = oldRawRef;
4627
+ if (canSetRef(oldRef, oldRawRefAtom.k)) {
4586
4628
  oldRef.value = null;
4587
4629
  }
4588
- const oldRawRefAtom = oldRawRef;
4589
4630
  if (oldRawRefAtom.k) refs[oldRawRefAtom.k] = null;
4590
4631
  }
4591
4632
  }
@@ -4609,7 +4650,7 @@ function setRef(rawRef, oldRawRef, parentSuspense, vnode, isUnmount = false) {
4609
4650
  }
4610
4651
  } else {
4611
4652
  const newVal = [refValue];
4612
- if (canSetRef(ref)) {
4653
+ if (canSetRef(ref, rawRef.k)) {
4613
4654
  ref.value = newVal;
4614
4655
  }
4615
4656
  if (rawRef.k) refs[rawRef.k] = newVal;
@@ -4624,7 +4665,7 @@ function setRef(rawRef, oldRawRef, parentSuspense, vnode, isUnmount = false) {
4624
4665
  setupState[ref] = value;
4625
4666
  }
4626
4667
  } else if (_isRef) {
4627
- if (canSetRef(ref)) {
4668
+ if (canSetRef(ref, rawRef.k)) {
4628
4669
  ref.value = value;
4629
4670
  }
4630
4671
  if (rawRef.k) refs[rawRef.k] = value;
@@ -4964,7 +5005,7 @@ Server rendered element contains more child nodes than client vdom.`
4964
5005
  logMismatchError();
4965
5006
  }
4966
5007
  if (forcePatch && (key.endsWith("value") || key === "indeterminate") || isOn(key) && !isReservedProp(key) || // force hydrate v-bind with .prop modifiers
4967
- key[0] === "." || isCustomElement) {
5008
+ key[0] === "." || isCustomElement && !isReservedProp(key)) {
4968
5009
  patchProp(el, key, null, props[key], void 0, parentComponent);
4969
5010
  }
4970
5011
  }
@@ -7484,7 +7525,7 @@ function createCompatVue$1(createApp, createSingletonApp) {
7484
7525
  return vm;
7485
7526
  }
7486
7527
  }
7487
- Vue.version = `2.6.14-compat:${"3.5.26"}`;
7528
+ Vue.version = `2.6.14-compat:${"3.5.28"}`;
7488
7529
  Vue.config = singletonApp.config;
7489
7530
  Vue.use = (plugin, ...options) => {
7490
7531
  if (plugin && isFunction(plugin.install)) {
@@ -8598,7 +8639,7 @@ function shouldUpdateComponent(prevVNode, nextVNode, optimized) {
8598
8639
  const dynamicProps = nextVNode.dynamicProps;
8599
8640
  for (let i = 0; i < dynamicProps.length; i++) {
8600
8641
  const key = dynamicProps[i];
8601
- if (nextProps[key] !== prevProps[key] && !isEmitListener(emits, key)) {
8642
+ if (hasPropValueChanged(nextProps, prevProps, key) && !isEmitListener(emits, key)) {
8602
8643
  return true;
8603
8644
  }
8604
8645
  }
@@ -8629,12 +8670,20 @@ function hasPropsChanged(prevProps, nextProps, emitsOptions) {
8629
8670
  }
8630
8671
  for (let i = 0; i < nextKeys.length; i++) {
8631
8672
  const key = nextKeys[i];
8632
- if (nextProps[key] !== prevProps[key] && !isEmitListener(emitsOptions, key)) {
8673
+ if (hasPropValueChanged(nextProps, prevProps, key) && !isEmitListener(emitsOptions, key)) {
8633
8674
  return true;
8634
8675
  }
8635
8676
  }
8636
8677
  return false;
8637
8678
  }
8679
+ function hasPropValueChanged(nextProps, prevProps, key) {
8680
+ const nextProp = nextProps[key];
8681
+ const prevProp = prevProps[key];
8682
+ if (key === "style" && isObject(nextProp) && isObject(prevProp)) {
8683
+ return !looseEqual(nextProp, prevProp);
8684
+ }
8685
+ return nextProp !== prevProp;
8686
+ }
8638
8687
  function updateHOCHostEl({ vnode, parent }, el) {
8639
8688
  while (parent) {
8640
8689
  const root = parent.subTree;
@@ -9410,15 +9459,7 @@ function baseCreateRenderer(options, createHydrationFns) {
9410
9459
  } else {
9411
9460
  const el = n2.el = n1.el;
9412
9461
  if (n2.children !== n1.children) {
9413
- if (isHmrUpdating && n2.patchFlag === -1 && "__elIndex" in n1) {
9414
- const childNodes = container.childNodes;
9415
- const newChild = hostCreateText(n2.children);
9416
- const oldChild = childNodes[n2.__elIndex = n1.__elIndex];
9417
- hostInsert(newChild, container, oldChild);
9418
- hostRemove(oldChild);
9419
- } else {
9420
- hostSetText(el, n2.children);
9421
- }
9462
+ hostSetText(el, n2.children);
9422
9463
  }
9423
9464
  }
9424
9465
  };
@@ -9494,7 +9535,7 @@ function baseCreateRenderer(options, createHydrationFns) {
9494
9535
  optimized
9495
9536
  );
9496
9537
  } else {
9497
- const customElement = !!(n1.el && n1.el._isVueCE) ? n1.el : null;
9538
+ const customElement = n1.el && n1.el._isVueCE ? n1.el : null;
9498
9539
  try {
9499
9540
  if (customElement) {
9500
9541
  customElement._beginPatch();
@@ -9980,8 +10021,7 @@ function baseCreateRenderer(options, createHydrationFns) {
9980
10021
  hydrateSubTree();
9981
10022
  }
9982
10023
  } else {
9983
- if (root.ce && // @ts-expect-error _def is private
9984
- root.ce._def.shadowRoot !== false) {
10024
+ if (root.ce && root.ce._hasShadowRoot()) {
9985
10025
  root.ce._injectChildStyle(type);
9986
10026
  }
9987
10027
  {
@@ -10048,9 +10088,9 @@ function baseCreateRenderer(options, createHydrationFns) {
10048
10088
  updateComponentPreRender(instance, next, optimized);
10049
10089
  }
10050
10090
  nonHydratedAsyncRoot.asyncDep.then(() => {
10051
- if (!instance.isUnmounted) {
10052
- componentUpdateFn();
10053
- }
10091
+ queuePostRenderEffect(() => {
10092
+ if (!instance.isUnmounted) update();
10093
+ }, parentSuspense);
10054
10094
  });
10055
10095
  return;
10056
10096
  }
@@ -10765,12 +10805,10 @@ function traverseStaticChildren(n1, n2, shallow = false) {
10765
10805
  traverseStaticChildren(c1, c2);
10766
10806
  }
10767
10807
  if (c2.type === Text) {
10768
- if (c2.patchFlag !== -1) {
10769
- c2.el = c1.el;
10770
- } else {
10771
- c2.__elIndex = i + // take fragment start anchor into account
10772
- (n1.type === Fragment ? 1 : 0);
10808
+ if (c2.patchFlag === -1) {
10809
+ c2 = ch2[i] = cloneIfMounted(c2);
10773
10810
  }
10811
+ c2.el = c1.el;
10774
10812
  }
10775
10813
  if (c2.type === Comment && !c2.el) {
10776
10814
  c2.el = c1.el;
@@ -12575,7 +12613,7 @@ function isMemoSame(cached, memo) {
12575
12613
  return true;
12576
12614
  }
12577
12615
 
12578
- const version = "3.5.26";
12616
+ const version = "3.5.28";
12579
12617
  const warn = warn$1 ;
12580
12618
  const ErrorTypeStrings = ErrorTypeStrings$1 ;
12581
12619
  const devtools = devtools$1 ;
@@ -13869,6 +13907,12 @@ class VueElement extends BaseClass {
13869
13907
  this._update();
13870
13908
  }
13871
13909
  }
13910
+ /**
13911
+ * @internal
13912
+ */
13913
+ _hasShadowRoot() {
13914
+ return this._def.shadowRoot !== false;
13915
+ }
13872
13916
  /**
13873
13917
  * @internal
13874
13918
  */
@@ -14012,10 +14056,7 @@ const TransitionGroupImpl = /* @__PURE__ */ decorate({
14012
14056
  instance
14013
14057
  )
14014
14058
  );
14015
- positionMap.set(child, {
14016
- left: child.el.offsetLeft,
14017
- top: child.el.offsetTop
14018
- });
14059
+ positionMap.set(child, getPosition(child.el));
14019
14060
  }
14020
14061
  }
14021
14062
  }
@@ -14046,10 +14087,7 @@ function callPendingCbs(c) {
14046
14087
  }
14047
14088
  }
14048
14089
  function recordPosition(c) {
14049
- newPositionMap.set(c, {
14050
- left: c.el.offsetLeft,
14051
- top: c.el.offsetTop
14052
- });
14090
+ newPositionMap.set(c, getPosition(c.el));
14053
14091
  }
14054
14092
  function applyTranslation(c) {
14055
14093
  const oldPos = positionMap.get(c);
@@ -14057,12 +14095,29 @@ function applyTranslation(c) {
14057
14095
  const dx = oldPos.left - newPos.left;
14058
14096
  const dy = oldPos.top - newPos.top;
14059
14097
  if (dx || dy) {
14060
- const s = c.el.style;
14061
- s.transform = s.webkitTransform = `translate(${dx}px,${dy}px)`;
14098
+ const el = c.el;
14099
+ const s = el.style;
14100
+ const rect = el.getBoundingClientRect();
14101
+ let scaleX = 1;
14102
+ let scaleY = 1;
14103
+ if (el.offsetWidth) scaleX = rect.width / el.offsetWidth;
14104
+ if (el.offsetHeight) scaleY = rect.height / el.offsetHeight;
14105
+ if (!Number.isFinite(scaleX) || scaleX === 0) scaleX = 1;
14106
+ if (!Number.isFinite(scaleY) || scaleY === 0) scaleY = 1;
14107
+ if (Math.abs(scaleX - 1) < 0.01) scaleX = 1;
14108
+ if (Math.abs(scaleY - 1) < 0.01) scaleY = 1;
14109
+ s.transform = s.webkitTransform = `translate(${dx / scaleX}px,${dy / scaleY}px)`;
14062
14110
  s.transitionDuration = "0s";
14063
14111
  return c;
14064
14112
  }
14065
14113
  }
14114
+ function getPosition(el) {
14115
+ const rect = el.getBoundingClientRect();
14116
+ return {
14117
+ left: rect.left,
14118
+ top: rect.top
14119
+ };
14120
+ }
14066
14121
  function hasCSSTransform(el, root, moveClass) {
14067
14122
  const clone = el.cloneNode();
14068
14123
  const _vtc = el[vtcKey];
@@ -14373,6 +14428,7 @@ const modifierGuards = {
14373
14428
  exact: (e, modifiers) => systemModifiers.some((m) => e[`${m}Key`] && !modifiers.includes(m))
14374
14429
  };
14375
14430
  const withModifiers = (fn, modifiers) => {
14431
+ if (!fn) return fn;
14376
14432
  const cache = fn._withMods || (fn._withMods = {});
14377
14433
  const cacheKey = modifiers.join(".");
14378
14434
  return cache[cacheKey] || (cache[cacheKey] = ((event, ...args) => {