@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
  **/
@@ -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(
@@ -1422,20 +1424,20 @@ function createIterableMethod(method, isReadonly2, isShallow2) {
1422
1424
  "iterate",
1423
1425
  isKeyOnly ? MAP_KEY_ITERATE_KEY : ITERATE_KEY
1424
1426
  );
1425
- return {
1426
- // iterator protocol
1427
- next() {
1428
- const { value, done } = innerIterator.next();
1429
- return done ? { value, done } : {
1430
- value: isPair ? [wrap(value[0]), wrap(value[1])] : wrap(value),
1431
- done
1432
- };
1433
- },
1434
- // iterable protocol
1435
- [Symbol.iterator]() {
1436
- return this;
1427
+ return extend(
1428
+ // inheriting all iterator properties
1429
+ Object.create(innerIterator),
1430
+ {
1431
+ // iterator protocol
1432
+ next() {
1433
+ const { value, done } = innerIterator.next();
1434
+ return done ? { value, done } : {
1435
+ value: isPair ? [wrap(value[0]), wrap(value[1])] : wrap(value),
1436
+ done
1437
+ };
1438
+ }
1437
1439
  }
1438
- };
1440
+ );
1439
1441
  };
1440
1442
  }
1441
1443
  function createReadonlyMethod(type) {
@@ -1649,8 +1651,9 @@ function targetTypeMap(rawType) {
1649
1651
  function getTargetType(value) {
1650
1652
  return value["__v_skip"] || !Object.isExtensible(value) ? 0 /* INVALID */ : targetTypeMap(toRawType(value));
1651
1653
  }
1654
+ // @__NO_SIDE_EFFECTS__
1652
1655
  function reactive(target) {
1653
- if (isReadonly(target)) {
1656
+ if (/* @__PURE__ */ isReadonly(target)) {
1654
1657
  return target;
1655
1658
  }
1656
1659
  return createReactiveObject(
@@ -1661,6 +1664,7 @@ function reactive(target) {
1661
1664
  reactiveMap
1662
1665
  );
1663
1666
  }
1667
+ // @__NO_SIDE_EFFECTS__
1664
1668
  function shallowReactive(target) {
1665
1669
  return createReactiveObject(
1666
1670
  target,
@@ -1670,6 +1674,7 @@ function shallowReactive(target) {
1670
1674
  shallowReactiveMap
1671
1675
  );
1672
1676
  }
1677
+ // @__NO_SIDE_EFFECTS__
1673
1678
  function readonly(target) {
1674
1679
  return createReactiveObject(
1675
1680
  target,
@@ -1679,6 +1684,7 @@ function readonly(target) {
1679
1684
  readonlyMap
1680
1685
  );
1681
1686
  }
1687
+ // @__NO_SIDE_EFFECTS__
1682
1688
  function shallowReadonly(target) {
1683
1689
  return createReactiveObject(
1684
1690
  target,
@@ -1717,24 +1723,29 @@ function createReactiveObject(target, isReadonly2, baseHandlers, collectionHandl
1717
1723
  proxyMap.set(target, proxy);
1718
1724
  return proxy;
1719
1725
  }
1726
+ // @__NO_SIDE_EFFECTS__
1720
1727
  function isReactive(value) {
1721
- if (isReadonly(value)) {
1722
- return isReactive(value["__v_raw"]);
1728
+ if (/* @__PURE__ */ isReadonly(value)) {
1729
+ return /* @__PURE__ */ isReactive(value["__v_raw"]);
1723
1730
  }
1724
1731
  return !!(value && value["__v_isReactive"]);
1725
1732
  }
1733
+ // @__NO_SIDE_EFFECTS__
1726
1734
  function isReadonly(value) {
1727
1735
  return !!(value && value["__v_isReadonly"]);
1728
1736
  }
1737
+ // @__NO_SIDE_EFFECTS__
1729
1738
  function isShallow(value) {
1730
1739
  return !!(value && value["__v_isShallow"]);
1731
1740
  }
1741
+ // @__NO_SIDE_EFFECTS__
1732
1742
  function isProxy(value) {
1733
1743
  return value ? !!value["__v_raw"] : false;
1734
1744
  }
1745
+ // @__NO_SIDE_EFFECTS__
1735
1746
  function toRaw(observed) {
1736
1747
  const raw = observed && observed["__v_raw"];
1737
- return raw ? toRaw(raw) : observed;
1748
+ return raw ? /* @__PURE__ */ toRaw(raw) : observed;
1738
1749
  }
1739
1750
  function markRaw(value) {
1740
1751
  if (!hasOwn(value, "__v_skip") && Object.isExtensible(value)) {
@@ -1742,20 +1753,23 @@ function markRaw(value) {
1742
1753
  }
1743
1754
  return value;
1744
1755
  }
1745
- const toReactive = (value) => isObject(value) ? reactive(value) : value;
1746
- const toReadonly = (value) => isObject(value) ? readonly(value) : value;
1756
+ const toReactive = (value) => isObject(value) ? /* @__PURE__ */ reactive(value) : value;
1757
+ const toReadonly = (value) => isObject(value) ? /* @__PURE__ */ readonly(value) : value;
1747
1758
 
1759
+ // @__NO_SIDE_EFFECTS__
1748
1760
  function isRef(r) {
1749
1761
  return r ? r["__v_isRef"] === true : false;
1750
1762
  }
1763
+ // @__NO_SIDE_EFFECTS__
1751
1764
  function ref(value) {
1752
1765
  return createRef(value, false);
1753
1766
  }
1767
+ // @__NO_SIDE_EFFECTS__
1754
1768
  function shallowRef(value) {
1755
1769
  return createRef(value, true);
1756
1770
  }
1757
1771
  function createRef(rawValue, shallow) {
1758
- if (isRef(rawValue)) {
1772
+ if (/* @__PURE__ */ isRef(rawValue)) {
1759
1773
  return rawValue;
1760
1774
  }
1761
1775
  return new RefImpl(rawValue, shallow);
@@ -1817,7 +1831,7 @@ function triggerRef(ref2) {
1817
1831
  }
1818
1832
  }
1819
1833
  function unref(ref2) {
1820
- return isRef(ref2) ? ref2.value : ref2;
1834
+ return /* @__PURE__ */ isRef(ref2) ? ref2.value : ref2;
1821
1835
  }
1822
1836
  function toValue(source) {
1823
1837
  return isFunction(source) ? source() : unref(source);
@@ -1826,7 +1840,7 @@ const shallowUnwrapHandlers = {
1826
1840
  get: (target, key, receiver) => key === "__v_raw" ? target : unref(Reflect.get(target, key, receiver)),
1827
1841
  set: (target, key, value, receiver) => {
1828
1842
  const oldValue = target[key];
1829
- if (isRef(oldValue) && !isRef(value)) {
1843
+ if (/* @__PURE__ */ isRef(oldValue) && !/* @__PURE__ */ isRef(value)) {
1830
1844
  oldValue.value = value;
1831
1845
  return true;
1832
1846
  } else {
@@ -1856,6 +1870,7 @@ class CustomRefImpl {
1856
1870
  function customRef(factory) {
1857
1871
  return new CustomRefImpl(factory);
1858
1872
  }
1873
+ // @__NO_SIDE_EFFECTS__
1859
1874
  function toRefs(object) {
1860
1875
  if (!!(process.env.NODE_ENV !== "production") && !isProxy(object)) {
1861
1876
  warn$2(`toRefs() expects a reactive object but received a plain one.`);
@@ -1891,9 +1906,9 @@ class ObjectRefImpl {
1891
1906
  return this._value = val === void 0 ? this._defaultValue : val;
1892
1907
  }
1893
1908
  set value(newVal) {
1894
- if (this._shallow && isRef(this._raw[this._key])) {
1909
+ if (this._shallow && /* @__PURE__ */ isRef(this._raw[this._key])) {
1895
1910
  const nestedRef = this._object[this._key];
1896
- if (isRef(nestedRef)) {
1911
+ if (/* @__PURE__ */ isRef(nestedRef)) {
1897
1912
  nestedRef.value = newVal;
1898
1913
  return;
1899
1914
  }
@@ -1915,15 +1930,16 @@ class GetterRefImpl {
1915
1930
  return this._value = this._getter();
1916
1931
  }
1917
1932
  }
1933
+ // @__NO_SIDE_EFFECTS__
1918
1934
  function toRef(source, key, defaultValue) {
1919
- if (isRef(source)) {
1935
+ if (/* @__PURE__ */ isRef(source)) {
1920
1936
  return source;
1921
1937
  } else if (isFunction(source)) {
1922
1938
  return new GetterRefImpl(source);
1923
1939
  } else if (isObject(source) && arguments.length > 1) {
1924
1940
  return propertyToRef(source, key, defaultValue);
1925
1941
  } else {
1926
- return ref(source);
1942
+ return /* @__PURE__ */ ref(source);
1927
1943
  }
1928
1944
  }
1929
1945
  function propertyToRef(source, key, defaultValue) {
@@ -2004,6 +2020,7 @@ class ComputedRefImpl {
2004
2020
  }
2005
2021
  }
2006
2022
  }
2023
+ // @__NO_SIDE_EFFECTS__
2007
2024
  function computed$1(getterOrOptions, debugOptions, isSSR = false) {
2008
2025
  let getter;
2009
2026
  let setter;
@@ -3909,7 +3926,22 @@ function moveTeleport(vnode, container, parentAnchor, { o: { insert }, m: move }
3909
3926
  function hydrateTeleport(node, vnode, parentComponent, parentSuspense, slotScopeIds, optimized, {
3910
3927
  o: { nextSibling, parentNode, querySelector, insert, createText }
3911
3928
  }, hydrateChildren) {
3912
- function hydrateDisabledTeleport(node2, vnode2, targetStart, targetAnchor) {
3929
+ function hydrateAnchor(target2, targetNode) {
3930
+ let targetAnchor = targetNode;
3931
+ while (targetAnchor) {
3932
+ if (targetAnchor && targetAnchor.nodeType === 8) {
3933
+ if (targetAnchor.data === "teleport start anchor") {
3934
+ vnode.targetStart = targetAnchor;
3935
+ } else if (targetAnchor.data === "teleport anchor") {
3936
+ vnode.targetAnchor = targetAnchor;
3937
+ target2._lpa = vnode.targetAnchor && nextSibling(vnode.targetAnchor);
3938
+ break;
3939
+ }
3940
+ }
3941
+ targetAnchor = nextSibling(targetAnchor);
3942
+ }
3943
+ }
3944
+ function hydrateDisabledTeleport(node2, vnode2) {
3913
3945
  vnode2.anchor = hydrateChildren(
3914
3946
  nextSibling(node2),
3915
3947
  vnode2,
@@ -3919,8 +3951,6 @@ function hydrateTeleport(node, vnode, parentComponent, parentSuspense, slotScope
3919
3951
  slotScopeIds,
3920
3952
  optimized
3921
3953
  );
3922
- vnode2.targetStart = targetStart;
3923
- vnode2.targetAnchor = targetAnchor;
3924
3954
  }
3925
3955
  const target = vnode.target = resolveTarget(
3926
3956
  vnode.props,
@@ -3931,27 +3961,22 @@ function hydrateTeleport(node, vnode, parentComponent, parentSuspense, slotScope
3931
3961
  const targetNode = target._lpa || target.firstChild;
3932
3962
  if (vnode.shapeFlag & 16) {
3933
3963
  if (disabled) {
3934
- hydrateDisabledTeleport(
3935
- node,
3936
- vnode,
3937
- targetNode,
3938
- targetNode && nextSibling(targetNode)
3939
- );
3964
+ hydrateDisabledTeleport(node, vnode);
3965
+ hydrateAnchor(target, targetNode);
3966
+ if (!vnode.targetAnchor) {
3967
+ prepareAnchor(
3968
+ target,
3969
+ vnode,
3970
+ createText,
3971
+ insert,
3972
+ // if target is the same as the main view, insert anchors before current node
3973
+ // to avoid hydrating mismatch
3974
+ parentNode(node) === target ? node : null
3975
+ );
3976
+ }
3940
3977
  } else {
3941
3978
  vnode.anchor = nextSibling(node);
3942
- let targetAnchor = targetNode;
3943
- while (targetAnchor) {
3944
- if (targetAnchor && targetAnchor.nodeType === 8) {
3945
- if (targetAnchor.data === "teleport start anchor") {
3946
- vnode.targetStart = targetAnchor;
3947
- } else if (targetAnchor.data === "teleport anchor") {
3948
- vnode.targetAnchor = targetAnchor;
3949
- target._lpa = vnode.targetAnchor && nextSibling(vnode.targetAnchor);
3950
- break;
3951
- }
3952
- }
3953
- targetAnchor = nextSibling(targetAnchor);
3954
- }
3979
+ hydrateAnchor(target, targetNode);
3955
3980
  if (!vnode.targetAnchor) {
3956
3981
  prepareAnchor(target, vnode, createText, insert);
3957
3982
  }
@@ -3969,7 +3994,9 @@ function hydrateTeleport(node, vnode, parentComponent, parentSuspense, slotScope
3969
3994
  updateCssVars(vnode, disabled);
3970
3995
  } else if (disabled) {
3971
3996
  if (vnode.shapeFlag & 16) {
3972
- hydrateDisabledTeleport(node, vnode, node, nextSibling(node));
3997
+ hydrateDisabledTeleport(node, vnode);
3998
+ vnode.targetStart = node;
3999
+ vnode.targetAnchor = nextSibling(node);
3973
4000
  }
3974
4001
  }
3975
4002
  return vnode.anchor && nextSibling(vnode.anchor);
@@ -3993,13 +4020,13 @@ function updateCssVars(vnode, isDisabled) {
3993
4020
  ctx.ut();
3994
4021
  }
3995
4022
  }
3996
- function prepareAnchor(target, vnode, createText, insert) {
4023
+ function prepareAnchor(target, vnode, createText, insert, anchor = null) {
3997
4024
  const targetStart = vnode.targetStart = createText("");
3998
4025
  const targetAnchor = vnode.targetAnchor = createText("");
3999
4026
  targetStart[TeleportEndKey] = targetAnchor;
4000
4027
  if (target) {
4001
- insert(targetStart, target);
4002
- insert(targetAnchor, target);
4028
+ insert(targetStart, target, anchor);
4029
+ insert(targetAnchor, target, anchor);
4003
4030
  }
4004
4031
  return targetAnchor;
4005
4032
  }
@@ -4238,7 +4265,7 @@ function resolveTransitionHooks(vnode, props, state, instance, postClone) {
4238
4265
  }
4239
4266
  }
4240
4267
  let called = false;
4241
- const done = el[enterCbKey$1] = (cancelled) => {
4268
+ el[enterCbKey$1] = (cancelled) => {
4242
4269
  if (called) return;
4243
4270
  called = true;
4244
4271
  if (cancelled) {
@@ -4251,6 +4278,7 @@ function resolveTransitionHooks(vnode, props, state, instance, postClone) {
4251
4278
  }
4252
4279
  el[enterCbKey$1] = void 0;
4253
4280
  };
4281
+ const done = el[enterCbKey$1].bind(null, false);
4254
4282
  if (hook) {
4255
4283
  callAsyncHook(hook, [el, done]);
4256
4284
  } else {
@@ -4270,7 +4298,7 @@ function resolveTransitionHooks(vnode, props, state, instance, postClone) {
4270
4298
  }
4271
4299
  callHook(onBeforeLeave, [el]);
4272
4300
  let called = false;
4273
- const done = el[leaveCbKey] = (cancelled) => {
4301
+ el[leaveCbKey] = (cancelled) => {
4274
4302
  if (called) return;
4275
4303
  called = true;
4276
4304
  remove();
@@ -4284,6 +4312,7 @@ function resolveTransitionHooks(vnode, props, state, instance, postClone) {
4284
4312
  delete leavingVNodesCache[key2];
4285
4313
  }
4286
4314
  };
4315
+ const done = el[leaveCbKey].bind(null, false);
4287
4316
  leavingVNodesCache[key2] = vnode;
4288
4317
  if (onLeave) {
4289
4318
  callAsyncHook(onLeave, [el, done]);
@@ -4396,8 +4425,7 @@ function useTemplateRef(key) {
4396
4425
  const r = shallowRef(null);
4397
4426
  if (i) {
4398
4427
  const refs = i.refs === EMPTY_OBJ ? i.refs = {} : i.refs;
4399
- let desc;
4400
- if (!!(process.env.NODE_ENV !== "production") && (desc = Object.getOwnPropertyDescriptor(refs, key)) && !desc.configurable) {
4428
+ if (!!(process.env.NODE_ENV !== "production") && isTemplateRefKey(refs, key)) {
4401
4429
  warn$1(`useTemplateRef('${key}') already exists.`);
4402
4430
  } else {
4403
4431
  Object.defineProperty(refs, key, {
@@ -4417,6 +4445,10 @@ function useTemplateRef(key) {
4417
4445
  }
4418
4446
  return ret;
4419
4447
  }
4448
+ function isTemplateRefKey(refs, key) {
4449
+ let desc;
4450
+ return !!((desc = Object.getOwnPropertyDescriptor(refs, key)) && !desc.configurable);
4451
+ }
4420
4452
 
4421
4453
  const pendingSetRefMap = /* @__PURE__ */ new WeakMap();
4422
4454
  function setRef(rawRef, oldRawRef, parentSuspense, vnode, isUnmount = false) {
@@ -4462,10 +4494,19 @@ function setRef(rawRef, oldRawRef, parentSuspense, vnode, isUnmount = false) {
4462
4494
  return false;
4463
4495
  }
4464
4496
  }
4497
+ if (isTemplateRefKey(refs, key)) {
4498
+ return false;
4499
+ }
4465
4500
  return hasOwn(rawSetupState, key);
4466
4501
  };
4467
- const canSetRef = (ref2) => {
4468
- return !!!(process.env.NODE_ENV !== "production") || !knownTemplateRefs.has(ref2);
4502
+ const canSetRef = (ref2, key) => {
4503
+ if (!!(process.env.NODE_ENV !== "production") && knownTemplateRefs.has(ref2)) {
4504
+ return false;
4505
+ }
4506
+ if (key && isTemplateRefKey(refs, key)) {
4507
+ return false;
4508
+ }
4509
+ return true;
4469
4510
  };
4470
4511
  if (oldRef != null && oldRef !== ref) {
4471
4512
  invalidatePendingSetRef(oldRawRef);
@@ -4475,10 +4516,10 @@ function setRef(rawRef, oldRawRef, parentSuspense, vnode, isUnmount = false) {
4475
4516
  setupState[oldRef] = null;
4476
4517
  }
4477
4518
  } else if (isRef(oldRef)) {
4478
- if (canSetRef(oldRef)) {
4519
+ const oldRawRefAtom = oldRawRef;
4520
+ if (canSetRef(oldRef, oldRawRefAtom.k)) {
4479
4521
  oldRef.value = null;
4480
4522
  }
4481
- const oldRawRefAtom = oldRawRef;
4482
4523
  if (oldRawRefAtom.k) refs[oldRawRefAtom.k] = null;
4483
4524
  }
4484
4525
  }
@@ -4502,7 +4543,7 @@ function setRef(rawRef, oldRawRef, parentSuspense, vnode, isUnmount = false) {
4502
4543
  }
4503
4544
  } else {
4504
4545
  const newVal = [refValue];
4505
- if (canSetRef(ref)) {
4546
+ if (canSetRef(ref, rawRef.k)) {
4506
4547
  ref.value = newVal;
4507
4548
  }
4508
4549
  if (rawRef.k) refs[rawRef.k] = newVal;
@@ -4517,7 +4558,7 @@ function setRef(rawRef, oldRawRef, parentSuspense, vnode, isUnmount = false) {
4517
4558
  setupState[ref] = value;
4518
4559
  }
4519
4560
  } else if (_isRef) {
4520
- if (canSetRef(ref)) {
4561
+ if (canSetRef(ref, rawRef.k)) {
4521
4562
  ref.value = value;
4522
4563
  }
4523
4564
  if (rawRef.k) refs[rawRef.k] = value;
@@ -4857,7 +4898,7 @@ Server rendered element contains more child nodes than client vdom.`
4857
4898
  logMismatchError();
4858
4899
  }
4859
4900
  if (forcePatch && (key.endsWith("value") || key === "indeterminate") || isOn(key) && !isReservedProp(key) || // force hydrate v-bind with .prop modifiers
4860
- key[0] === "." || isCustomElement) {
4901
+ key[0] === "." || isCustomElement && !isReservedProp(key)) {
4861
4902
  patchProp(el, key, null, props[key], void 0, parentComponent);
4862
4903
  }
4863
4904
  }
@@ -7393,7 +7434,7 @@ function createCompatVue$1(createApp, createSingletonApp) {
7393
7434
  return vm;
7394
7435
  }
7395
7436
  }
7396
- Vue.version = `2.6.14-compat:${"3.5.26"}`;
7437
+ Vue.version = `2.6.14-compat:${"3.5.28"}`;
7397
7438
  Vue.config = singletonApp.config;
7398
7439
  Vue.use = (plugin, ...options) => {
7399
7440
  if (plugin && isFunction(plugin.install)) {
@@ -8509,7 +8550,7 @@ function shouldUpdateComponent(prevVNode, nextVNode, optimized) {
8509
8550
  const dynamicProps = nextVNode.dynamicProps;
8510
8551
  for (let i = 0; i < dynamicProps.length; i++) {
8511
8552
  const key = dynamicProps[i];
8512
- if (nextProps[key] !== prevProps[key] && !isEmitListener(emits, key)) {
8553
+ if (hasPropValueChanged(nextProps, prevProps, key) && !isEmitListener(emits, key)) {
8513
8554
  return true;
8514
8555
  }
8515
8556
  }
@@ -8540,12 +8581,20 @@ function hasPropsChanged(prevProps, nextProps, emitsOptions) {
8540
8581
  }
8541
8582
  for (let i = 0; i < nextKeys.length; i++) {
8542
8583
  const key = nextKeys[i];
8543
- if (nextProps[key] !== prevProps[key] && !isEmitListener(emitsOptions, key)) {
8584
+ if (hasPropValueChanged(nextProps, prevProps, key) && !isEmitListener(emitsOptions, key)) {
8544
8585
  return true;
8545
8586
  }
8546
8587
  }
8547
8588
  return false;
8548
8589
  }
8590
+ function hasPropValueChanged(nextProps, prevProps, key) {
8591
+ const nextProp = nextProps[key];
8592
+ const prevProp = prevProps[key];
8593
+ if (key === "style" && isObject(nextProp) && isObject(prevProp)) {
8594
+ return !looseEqual(nextProp, prevProp);
8595
+ }
8596
+ return nextProp !== prevProp;
8597
+ }
8549
8598
  function updateHOCHostEl({ vnode, parent }, el) {
8550
8599
  while (parent) {
8551
8600
  const root = parent.subTree;
@@ -9348,15 +9397,7 @@ function baseCreateRenderer(options, createHydrationFns) {
9348
9397
  } else {
9349
9398
  const el = n2.el = n1.el;
9350
9399
  if (n2.children !== n1.children) {
9351
- if (!!(process.env.NODE_ENV !== "production") && isHmrUpdating && n2.patchFlag === -1 && "__elIndex" in n1) {
9352
- const childNodes = container.childNodes;
9353
- const newChild = hostCreateText(n2.children);
9354
- const oldChild = childNodes[n2.__elIndex = n1.__elIndex];
9355
- hostInsert(newChild, container, oldChild);
9356
- hostRemove(oldChild);
9357
- } else {
9358
- hostSetText(el, n2.children);
9359
- }
9400
+ hostSetText(el, n2.children);
9360
9401
  }
9361
9402
  }
9362
9403
  };
@@ -9432,7 +9473,7 @@ function baseCreateRenderer(options, createHydrationFns) {
9432
9473
  optimized
9433
9474
  );
9434
9475
  } else {
9435
- const customElement = !!(n1.el && n1.el._isVueCE) ? n1.el : null;
9476
+ const customElement = n1.el && n1.el._isVueCE ? n1.el : null;
9436
9477
  try {
9437
9478
  if (customElement) {
9438
9479
  customElement._beginPatch();
@@ -9929,8 +9970,7 @@ function baseCreateRenderer(options, createHydrationFns) {
9929
9970
  hydrateSubTree();
9930
9971
  }
9931
9972
  } else {
9932
- if (root.ce && // @ts-expect-error _def is private
9933
- root.ce._def.shadowRoot !== false) {
9973
+ if (root.ce && root.ce._hasShadowRoot()) {
9934
9974
  root.ce._injectChildStyle(type);
9935
9975
  }
9936
9976
  if (!!(process.env.NODE_ENV !== "production")) {
@@ -9997,9 +10037,9 @@ function baseCreateRenderer(options, createHydrationFns) {
9997
10037
  updateComponentPreRender(instance, next, optimized);
9998
10038
  }
9999
10039
  nonHydratedAsyncRoot.asyncDep.then(() => {
10000
- if (!instance.isUnmounted) {
10001
- componentUpdateFn();
10002
- }
10040
+ queuePostRenderEffect(() => {
10041
+ if (!instance.isUnmounted) update();
10042
+ }, parentSuspense);
10003
10043
  });
10004
10044
  return;
10005
10045
  }
@@ -10714,12 +10754,10 @@ function traverseStaticChildren(n1, n2, shallow = false) {
10714
10754
  traverseStaticChildren(c1, c2);
10715
10755
  }
10716
10756
  if (c2.type === Text) {
10717
- if (c2.patchFlag !== -1) {
10718
- c2.el = c1.el;
10719
- } else {
10720
- c2.__elIndex = i + // take fragment start anchor into account
10721
- (n1.type === Fragment ? 1 : 0);
10757
+ if (c2.patchFlag === -1) {
10758
+ c2 = ch2[i] = cloneIfMounted(c2);
10722
10759
  }
10760
+ c2.el = c1.el;
10723
10761
  }
10724
10762
  if (c2.type === Comment && !c2.el) {
10725
10763
  c2.el = c1.el;
@@ -12538,7 +12576,7 @@ function isMemoSame(cached, memo) {
12538
12576
  return true;
12539
12577
  }
12540
12578
 
12541
- const version = "3.5.26";
12579
+ const version = "3.5.28";
12542
12580
  const warn = !!(process.env.NODE_ENV !== "production") ? warn$1 : NOOP;
12543
12581
  const ErrorTypeStrings = ErrorTypeStrings$1 ;
12544
12582
  const devtools = !!(process.env.NODE_ENV !== "production") || true ? devtools$1 : void 0;
@@ -13900,6 +13938,12 @@ class VueElement extends BaseClass {
13900
13938
  this._update();
13901
13939
  }
13902
13940
  }
13941
+ /**
13942
+ * @internal
13943
+ */
13944
+ _hasShadowRoot() {
13945
+ return this._def.shadowRoot !== false;
13946
+ }
13903
13947
  /**
13904
13948
  * @internal
13905
13949
  */
@@ -14043,10 +14087,7 @@ const TransitionGroupImpl = /* @__PURE__ */ decorate({
14043
14087
  instance
14044
14088
  )
14045
14089
  );
14046
- positionMap.set(child, {
14047
- left: child.el.offsetLeft,
14048
- top: child.el.offsetTop
14049
- });
14090
+ positionMap.set(child, getPosition(child.el));
14050
14091
  }
14051
14092
  }
14052
14093
  }
@@ -14077,10 +14118,7 @@ function callPendingCbs(c) {
14077
14118
  }
14078
14119
  }
14079
14120
  function recordPosition(c) {
14080
- newPositionMap.set(c, {
14081
- left: c.el.offsetLeft,
14082
- top: c.el.offsetTop
14083
- });
14121
+ newPositionMap.set(c, getPosition(c.el));
14084
14122
  }
14085
14123
  function applyTranslation(c) {
14086
14124
  const oldPos = positionMap.get(c);
@@ -14088,12 +14126,29 @@ function applyTranslation(c) {
14088
14126
  const dx = oldPos.left - newPos.left;
14089
14127
  const dy = oldPos.top - newPos.top;
14090
14128
  if (dx || dy) {
14091
- const s = c.el.style;
14092
- s.transform = s.webkitTransform = `translate(${dx}px,${dy}px)`;
14129
+ const el = c.el;
14130
+ const s = el.style;
14131
+ const rect = el.getBoundingClientRect();
14132
+ let scaleX = 1;
14133
+ let scaleY = 1;
14134
+ if (el.offsetWidth) scaleX = rect.width / el.offsetWidth;
14135
+ if (el.offsetHeight) scaleY = rect.height / el.offsetHeight;
14136
+ if (!Number.isFinite(scaleX) || scaleX === 0) scaleX = 1;
14137
+ if (!Number.isFinite(scaleY) || scaleY === 0) scaleY = 1;
14138
+ if (Math.abs(scaleX - 1) < 0.01) scaleX = 1;
14139
+ if (Math.abs(scaleY - 1) < 0.01) scaleY = 1;
14140
+ s.transform = s.webkitTransform = `translate(${dx / scaleX}px,${dy / scaleY}px)`;
14093
14141
  s.transitionDuration = "0s";
14094
14142
  return c;
14095
14143
  }
14096
14144
  }
14145
+ function getPosition(el) {
14146
+ const rect = el.getBoundingClientRect();
14147
+ return {
14148
+ left: rect.left,
14149
+ top: rect.top
14150
+ };
14151
+ }
14097
14152
  function hasCSSTransform(el, root, moveClass) {
14098
14153
  const clone = el.cloneNode();
14099
14154
  const _vtc = el[vtcKey];
@@ -14404,6 +14459,7 @@ const modifierGuards = {
14404
14459
  exact: (e, modifiers) => systemModifiers.some((m) => e[`${m}Key`] && !modifiers.includes(m))
14405
14460
  };
14406
14461
  const withModifiers = (fn, modifiers) => {
14462
+ if (!fn) return fn;
14407
14463
  const cache = fn._withMods || (fn._withMods = {});
14408
14464
  const cacheKey = modifiers.join(".");
14409
14465
  return cache[cacheKey] || (cache[cacheKey] = ((event, ...args) => {