@vue/compat 3.6.0-beta.5 → 3.6.0-beta.6

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.6.0-beta.5
2
+ * @vue/compat v3.6.0-beta.6
3
3
  * (c) 2018-present Yuxi (Evan) You and Vue contributors
4
4
  * @license MIT
5
5
  **/
@@ -3718,36 +3718,44 @@ function moveTeleport(vnode, container, parentAnchor, { o: { insert }, m: move }
3718
3718
  if (isReorder) insert(anchor, container, parentAnchor);
3719
3719
  }
3720
3720
  function hydrateTeleport(node, vnode, parentComponent, parentSuspense, slotScopeIds, optimized, { o: { nextSibling, parentNode, querySelector, insert, createText } }, hydrateChildren) {
3721
- function hydrateDisabledTeleport(node, vnode, targetStart, targetAnchor) {
3721
+ function hydrateAnchor(target, targetNode) {
3722
+ let targetAnchor = targetNode;
3723
+ while (targetAnchor) {
3724
+ if (targetAnchor && targetAnchor.nodeType === 8) {
3725
+ if (targetAnchor.data === "teleport start anchor") vnode.targetStart = targetAnchor;
3726
+ else if (targetAnchor.data === "teleport anchor") {
3727
+ vnode.targetAnchor = targetAnchor;
3728
+ target._lpa = vnode.targetAnchor && nextSibling(vnode.targetAnchor);
3729
+ break;
3730
+ }
3731
+ }
3732
+ targetAnchor = nextSibling(targetAnchor);
3733
+ }
3734
+ }
3735
+ function hydrateDisabledTeleport(node, vnode) {
3722
3736
  vnode.anchor = hydrateChildren(nextSibling(node), vnode, parentNode(node), parentComponent, parentSuspense, slotScopeIds, optimized);
3723
- vnode.targetStart = targetStart;
3724
- vnode.targetAnchor = targetAnchor;
3725
3737
  }
3726
3738
  const target = vnode.target = resolveTarget(vnode.props, querySelector);
3727
3739
  const disabled = isTeleportDisabled(vnode.props);
3728
3740
  if (target) {
3729
3741
  const targetNode = target._lpa || target.firstChild;
3730
- if (vnode.shapeFlag & 16) if (disabled) hydrateDisabledTeleport(node, vnode, targetNode, targetNode && nextSibling(targetNode));
3731
- else {
3742
+ if (vnode.shapeFlag & 16) if (disabled) {
3743
+ hydrateDisabledTeleport(node, vnode);
3744
+ hydrateAnchor(target, targetNode);
3745
+ if (!vnode.targetAnchor) prepareAnchor(target, vnode, createText, insert, parentNode(node) === target ? node : null);
3746
+ } else {
3732
3747
  vnode.anchor = nextSibling(node);
3733
- let targetAnchor = targetNode;
3734
- while (targetAnchor) {
3735
- if (targetAnchor && targetAnchor.nodeType === 8) {
3736
- if (targetAnchor.data === "teleport start anchor") vnode.targetStart = targetAnchor;
3737
- else if (targetAnchor.data === "teleport anchor") {
3738
- vnode.targetAnchor = targetAnchor;
3739
- target._lpa = vnode.targetAnchor && nextSibling(vnode.targetAnchor);
3740
- break;
3741
- }
3742
- }
3743
- targetAnchor = nextSibling(targetAnchor);
3744
- }
3748
+ hydrateAnchor(target, targetNode);
3745
3749
  if (!vnode.targetAnchor) prepareAnchor(target, vnode, createText, insert);
3746
3750
  hydrateChildren(targetNode && nextSibling(targetNode), vnode, target, parentComponent, parentSuspense, slotScopeIds, optimized);
3747
3751
  }
3748
3752
  updateCssVars(vnode, disabled);
3749
3753
  } else if (disabled) {
3750
- if (vnode.shapeFlag & 16) hydrateDisabledTeleport(node, vnode, node, nextSibling(node));
3754
+ if (vnode.shapeFlag & 16) {
3755
+ hydrateDisabledTeleport(node, vnode);
3756
+ vnode.targetStart = node;
3757
+ vnode.targetAnchor = nextSibling(node);
3758
+ }
3751
3759
  }
3752
3760
  return vnode.anchor && nextSibling(vnode.anchor);
3753
3761
  }
@@ -3770,13 +3778,13 @@ function updateCssVars(vnode, isDisabled) {
3770
3778
  ctx.ut();
3771
3779
  }
3772
3780
  }
3773
- function prepareAnchor(target, vnode, createText, insert) {
3781
+ function prepareAnchor(target, vnode, createText, insert, anchor = null) {
3774
3782
  const targetStart = vnode.targetStart = createText("");
3775
3783
  const targetAnchor = vnode.targetAnchor = createText("");
3776
3784
  targetStart[TeleportEndKey] = targetAnchor;
3777
3785
  if (target) {
3778
- insert(targetStart, target);
3779
- insert(targetAnchor, target);
3786
+ insert(targetStart, target, anchor);
3787
+ insert(targetAnchor, target, anchor);
3780
3788
  }
3781
3789
  return targetAnchor;
3782
3790
  }
@@ -3955,7 +3963,7 @@ function baseResolveTransitionHooks(context, props, state, instance) {
3955
3963
  cancelHook = onAppearCancelled || onEnterCancelled;
3956
3964
  } else return;
3957
3965
  let called = false;
3958
- const done = el[enterCbKey$1] = (cancelled) => {
3966
+ el[enterCbKey$1] = (cancelled) => {
3959
3967
  if (called) return;
3960
3968
  called = true;
3961
3969
  if (cancelled) callHook(cancelHook, [el]);
@@ -3963,6 +3971,7 @@ function baseResolveTransitionHooks(context, props, state, instance) {
3963
3971
  if (hooks.delayedLeave) hooks.delayedLeave();
3964
3972
  el[enterCbKey$1] = void 0;
3965
3973
  };
3974
+ const done = el[enterCbKey$1].bind(null, false);
3966
3975
  if (hook) callAsyncHook(hook, [el, done]);
3967
3976
  else done();
3968
3977
  },
@@ -3971,7 +3980,7 @@ function baseResolveTransitionHooks(context, props, state, instance) {
3971
3980
  if (state.isUnmounting) return remove();
3972
3981
  callHook(onBeforeLeave, [el]);
3973
3982
  let called = false;
3974
- const done = el[leaveCbKey] = (cancelled) => {
3983
+ el[leaveCbKey] = (cancelled) => {
3975
3984
  if (called) return;
3976
3985
  called = true;
3977
3986
  remove();
@@ -3981,6 +3990,7 @@ function baseResolveTransitionHooks(context, props, state, instance) {
3981
3990
  unsetLeavingNodeCache(el);
3982
3991
  };
3983
3992
  setLeavingNodeCache(el);
3993
+ const done = el[leaveCbKey].bind(null, false);
3984
3994
  if (onLeave) callAsyncHook(onLeave, [el, done]);
3985
3995
  else done();
3986
3996
  },
@@ -4078,8 +4088,7 @@ function useTemplateRef(key) {
4078
4088
  const r = /* @__PURE__ */ shallowRef(null);
4079
4089
  if (i) {
4080
4090
  const refs = i.refs === EMPTY_OBJ ? i.refs = {} : i.refs;
4081
- let desc;
4082
- if ((desc = Object.getOwnPropertyDescriptor(refs, key)) && !desc.configurable) warn$1(`useTemplateRef('${key}') already exists.`);
4091
+ if (isTemplateRefKey(refs, key)) warn$1(`useTemplateRef('${key}') already exists.`);
4083
4092
  else Object.defineProperty(refs, key, {
4084
4093
  enumerable: true,
4085
4094
  get: () => r.value,
@@ -4090,6 +4099,10 @@ function useTemplateRef(key) {
4090
4099
  knownTemplateRefs.add(ret);
4091
4100
  return ret;
4092
4101
  }
4102
+ function isTemplateRefKey(refs, key) {
4103
+ let desc;
4104
+ return !!((desc = Object.getOwnPropertyDescriptor(refs, key)) && !desc.configurable);
4105
+ }
4093
4106
 
4094
4107
  //#endregion
4095
4108
  //#region packages/runtime-core/src/rendererTemplateRef.ts
@@ -4116,9 +4129,11 @@ function setRef(rawRef, oldRawRef, parentSuspense, vnode, isUnmount = false) {
4116
4129
  const oldRef = oldRawRef && oldRawRef.r;
4117
4130
  const refs = owner.refs === EMPTY_OBJ ? owner.refs = {} : owner.refs;
4118
4131
  const setupState = owner.setupState;
4119
- const canSetSetupRef = createCanSetSetupRefChecker(setupState);
4120
- const canSetRef = (ref) => {
4121
- return !knownTemplateRefs.has(ref);
4132
+ const canSetSetupRef = createCanSetSetupRefChecker(setupState, refs);
4133
+ const canSetRef = (ref, key) => {
4134
+ if (knownTemplateRefs.has(ref)) return false;
4135
+ if (key && isTemplateRefKey(refs, key)) return false;
4136
+ return true;
4122
4137
  };
4123
4138
  if (oldRef != null && oldRef !== ref) {
4124
4139
  invalidatePendingSetRef(oldRawRef);
@@ -4126,8 +4141,8 @@ function setRef(rawRef, oldRawRef, parentSuspense, vnode, isUnmount = false) {
4126
4141
  refs[oldRef] = null;
4127
4142
  if (canSetSetupRef(oldRef)) setupState[oldRef] = null;
4128
4143
  } else if (/* @__PURE__ */ isRef(oldRef)) {
4129
- if (canSetRef(oldRef)) oldRef.value = null;
4130
4144
  const oldRawRefAtom = oldRawRef;
4145
+ if (canSetRef(oldRef, oldRawRefAtom.k)) oldRef.value = null;
4131
4146
  if (oldRawRefAtom.k) refs[oldRawRefAtom.k] = null;
4132
4147
  }
4133
4148
  }
@@ -4145,7 +4160,7 @@ function setRef(rawRef, oldRawRef, parentSuspense, vnode, isUnmount = false) {
4145
4160
  if (canSetSetupRef(ref)) setupState[ref] = refs[ref];
4146
4161
  } else {
4147
4162
  const newVal = [refValue];
4148
- if (canSetRef(ref)) ref.value = newVal;
4163
+ if (canSetRef(ref, rawRef.k)) ref.value = newVal;
4149
4164
  if (rawRef.k) refs[rawRef.k] = newVal;
4150
4165
  }
4151
4166
  else if (!existing.includes(refValue)) existing.push(refValue);
@@ -4153,7 +4168,7 @@ function setRef(rawRef, oldRawRef, parentSuspense, vnode, isUnmount = false) {
4153
4168
  refs[ref] = value;
4154
4169
  if (canSetSetupRef(ref)) setupState[ref] = value;
4155
4170
  } else if (_isRef) {
4156
- if (canSetRef(ref)) ref.value = value;
4171
+ if (canSetRef(ref, rawRef.k)) ref.value = value;
4157
4172
  if (rawRef.k) refs[rawRef.k] = value;
4158
4173
  } else warn$1("Invalid template ref type:", ref, `(${typeof ref})`);
4159
4174
  };
@@ -4171,11 +4186,12 @@ function setRef(rawRef, oldRawRef, parentSuspense, vnode, isUnmount = false) {
4171
4186
  } else warn$1("Invalid template ref type:", ref, `(${typeof ref})`);
4172
4187
  }
4173
4188
  }
4174
- function createCanSetSetupRefChecker(setupState) {
4189
+ function createCanSetSetupRefChecker(setupState, refs) {
4175
4190
  const rawSetupState = /* @__PURE__ */ toRaw(setupState);
4176
4191
  return setupState === void 0 || setupState === EMPTY_OBJ ? NO : (key) => {
4177
4192
  if (hasOwn(rawSetupState, key) && !/* @__PURE__ */ isRef(rawSetupState[key])) warn$1(`Template ref "${key}" used on a non-ref value. It will not work in the production build.`);
4178
4193
  if (knownTemplateRefs.has(rawSetupState[key])) return false;
4194
+ if (isTemplateRefKey(refs, key)) return false;
4179
4195
  return hasOwn(rawSetupState, key);
4180
4196
  };
4181
4197
  }
@@ -6321,7 +6337,7 @@ function createCompatVue$1(createApp, createSingletonApp) {
6321
6337
  if (options.el) return vm.$mount(options.el);
6322
6338
  else return vm;
6323
6339
  }
6324
- Vue.version = `2.6.14-compat:3.6.0-beta.5`;
6340
+ Vue.version = `2.6.14-compat:3.6.0-beta.6`;
6325
6341
  Vue.config = singletonApp.config;
6326
6342
  Vue.use = (plugin, ...options) => {
6327
6343
  if (plugin && isFunction(plugin.install)) plugin.install(Vue, ...options);
@@ -7109,7 +7125,7 @@ function shouldUpdateComponent(prevVNode, nextVNode, optimized) {
7109
7125
  const dynamicProps = nextVNode.dynamicProps;
7110
7126
  for (let i = 0; i < dynamicProps.length; i++) {
7111
7127
  const key = dynamicProps[i];
7112
- if (nextProps[key] !== prevProps[key] && !isEmitListener(emits, key)) return true;
7128
+ if (hasPropValueChanged(nextProps, prevProps, key) && !isEmitListener(emits, key)) return true;
7113
7129
  }
7114
7130
  }
7115
7131
  } else {
@@ -7128,10 +7144,16 @@ function hasPropsChanged(prevProps, nextProps, emitsOptions) {
7128
7144
  if (nextKeys.length !== Object.keys(prevProps).length) return true;
7129
7145
  for (let i = 0; i < nextKeys.length; i++) {
7130
7146
  const key = nextKeys[i];
7131
- if (nextProps[key] !== prevProps[key] && !isEmitListener(emitsOptions, key)) return true;
7147
+ if (hasPropValueChanged(nextProps, prevProps, key) && !isEmitListener(emitsOptions, key)) return true;
7132
7148
  }
7133
7149
  return false;
7134
7150
  }
7151
+ function hasPropValueChanged(nextProps, prevProps, key) {
7152
+ const nextProp = nextProps[key];
7153
+ const prevProp = prevProps[key];
7154
+ if (key === "style" && isObject(nextProp) && isObject(prevProp)) return !looseEqual(nextProp, prevProp);
7155
+ return nextProp !== prevProp;
7156
+ }
7135
7157
  function updateHOCHostEl({ vnode, parent }, el) {
7136
7158
  while (parent && !parent.vapor) {
7137
7159
  const root = parent.subTree;
@@ -7673,13 +7695,7 @@ function baseCreateRenderer(options, createHydrationFns) {
7673
7695
  if (n1 == null) hostInsert(n2.el = hostCreateText(n2.children), container, anchor);
7674
7696
  else {
7675
7697
  const el = n2.el = n1.el;
7676
- if (n2.children !== n1.children) if (isHmrUpdating && n2.patchFlag === -1 && "__elIndex" in n1) {
7677
- const childNodes = container.childNodes;
7678
- const newChild = hostCreateText(n2.children);
7679
- const oldChild = childNodes[n2.__elIndex = n1.__elIndex];
7680
- hostInsert(newChild, container, oldChild);
7681
- hostRemove(oldChild);
7682
- } else hostSetText(el, n2.children);
7698
+ if (n2.children !== n1.children) hostSetText(el, n2.children);
7683
7699
  }
7684
7700
  };
7685
7701
  const processCommentNode = (n1, n2, container, anchor) => {
@@ -8023,7 +8039,9 @@ function baseCreateRenderer(options, createHydrationFns) {
8023
8039
  updateComponentPreRender(instance, next, optimized);
8024
8040
  }
8025
8041
  nonHydratedAsyncRoot.asyncDep.then(() => {
8026
- if (!instance.isUnmounted) this.fn();
8042
+ queuePostRenderEffect(() => {
8043
+ if (!instance.isUnmounted) instance.update();
8044
+ }, void 0, parentSuspense);
8027
8045
  });
8028
8046
  return;
8029
8047
  }
@@ -8436,8 +8454,10 @@ function traverseStaticChildren(n1, n2, shallow = false) {
8436
8454
  }
8437
8455
  if (!shallow && c2.patchFlag !== -2) traverseStaticChildren(c1, c2);
8438
8456
  }
8439
- if (c2.type === Text) if (c2.patchFlag !== -1) c2.el = c1.el;
8440
- else c2.__elIndex = i + (n1.type === Fragment ? 1 : 0);
8457
+ if (c2.type === Text) {
8458
+ if (c2.patchFlag === -1) c2 = ch2[i] = cloneIfMounted(c2);
8459
+ c2.el = c1.el;
8460
+ }
8441
8461
  if (c2.type === Comment && !c2.el) c2.el = c1.el;
8442
8462
  c2.el && (c2.el.__vnode = c2);
8443
8463
  }
@@ -9737,7 +9757,7 @@ function isMemoSame(cached, memo) {
9737
9757
 
9738
9758
  //#endregion
9739
9759
  //#region packages/runtime-core/src/index.ts
9740
- const version = "3.6.0-beta.5";
9760
+ const version = "3.6.0-beta.6";
9741
9761
  const warn = warn$1;
9742
9762
  /**
9743
9763
  * Runtime error messages. Only exposed in dev or esm builds.
@@ -10849,10 +10869,7 @@ const TransitionGroupImpl = /* @__PURE__ */ decorate({
10849
10869
  if (child.el && child.el instanceof Element) {
10850
10870
  prevChildren.push(child);
10851
10871
  setTransitionHooks(child, resolveTransitionHooks(child, cssTransitionProps, state, instance));
10852
- positionMap.set(child, {
10853
- left: child.el.offsetLeft,
10854
- top: child.el.offsetTop
10855
- });
10872
+ positionMap.set(child, getPosition(child.el));
10856
10873
  }
10857
10874
  }
10858
10875
  children = slots.default ? getTransitionRawChildren(slots.default()) : [];
@@ -10871,10 +10888,7 @@ function callPendingCbs(el) {
10871
10888
  if (el[enterCbKey]) el[enterCbKey]();
10872
10889
  }
10873
10890
  function recordPosition(c) {
10874
- newPositionMap.set(c, {
10875
- left: c.el.offsetLeft,
10876
- top: c.el.offsetTop
10877
- });
10891
+ newPositionMap.set(c, getPosition(c.el));
10878
10892
  }
10879
10893
  function applyTranslation(c) {
10880
10894
  if (baseApplyTranslation(positionMap.get(c), newPositionMap.get(c), c.el)) return c;
@@ -10884,12 +10898,28 @@ function baseApplyTranslation(oldPos, newPos, el) {
10884
10898
  const dy = oldPos.top - newPos.top;
10885
10899
  if (dx || dy) {
10886
10900
  const s = el.style;
10887
- s.transform = s.webkitTransform = `translate(${dx}px,${dy}px)`;
10901
+ const rect = el.getBoundingClientRect();
10902
+ let scaleX = 1;
10903
+ let scaleY = 1;
10904
+ if (el.offsetWidth) scaleX = rect.width / el.offsetWidth;
10905
+ if (el.offsetHeight) scaleY = rect.height / el.offsetHeight;
10906
+ if (!Number.isFinite(scaleX) || scaleX === 0) scaleX = 1;
10907
+ if (!Number.isFinite(scaleY) || scaleY === 0) scaleY = 1;
10908
+ if (Math.abs(scaleX - 1) < .01) scaleX = 1;
10909
+ if (Math.abs(scaleY - 1) < .01) scaleY = 1;
10910
+ s.transform = s.webkitTransform = `translate(${dx / scaleX}px,${dy / scaleY}px)`;
10888
10911
  s.transitionDuration = "0s";
10889
10912
  return true;
10890
10913
  }
10891
10914
  return false;
10892
10915
  }
10916
+ function getPosition(el) {
10917
+ const rect = el.getBoundingClientRect();
10918
+ return {
10919
+ left: rect.left,
10920
+ top: rect.top
10921
+ };
10922
+ }
10893
10923
  function hasCSSTransform(el, root, moveClass) {
10894
10924
  const clone = el.cloneNode();
10895
10925
  const _vtc = el[vtcKey];
@@ -11194,6 +11224,7 @@ const modifierGuards = {
11194
11224
  * @private
11195
11225
  */
11196
11226
  const withModifiers = (fn, modifiers) => {
11227
+ if (!fn) return fn;
11197
11228
  const cache = fn._withMods || (fn._withMods = {});
11198
11229
  const cacheKey = modifiers.join(".");
11199
11230
  return cache[cacheKey] || (cache[cacheKey] = ((event, ...args) => {
@@ -17211,7 +17242,6 @@ function compileToFunction(template, options) {
17211
17242
  registerRuntimeCompiler(compileToFunction);
17212
17243
  const Vue = createCompatVue();
17213
17244
  Vue.compile = compileToFunction;
17214
- var src_default = Vue;
17215
17245
 
17216
17246
  //#endregion
17217
- module.exports = src_default;
17247
+ module.exports = Vue;
@@ -1,5 +1,5 @@
1
1
  /**
2
- * @vue/compat v3.6.0-beta.5
2
+ * @vue/compat v3.6.0-beta.6
3
3
  * (c) 2018-present Yuxi (Evan) You and Vue contributors
4
4
  * @license MIT
5
5
  **/
@@ -2978,36 +2978,44 @@ function moveTeleport(vnode, container, parentAnchor, { o: { insert }, m: move }
2978
2978
  if (isReorder) insert(anchor, container, parentAnchor);
2979
2979
  }
2980
2980
  function hydrateTeleport(node, vnode, parentComponent, parentSuspense, slotScopeIds, optimized, { o: { nextSibling, parentNode, querySelector, insert, createText } }, hydrateChildren) {
2981
- function hydrateDisabledTeleport(node, vnode, targetStart, targetAnchor) {
2981
+ function hydrateAnchor(target, targetNode) {
2982
+ let targetAnchor = targetNode;
2983
+ while (targetAnchor) {
2984
+ if (targetAnchor && targetAnchor.nodeType === 8) {
2985
+ if (targetAnchor.data === "teleport start anchor") vnode.targetStart = targetAnchor;
2986
+ else if (targetAnchor.data === "teleport anchor") {
2987
+ vnode.targetAnchor = targetAnchor;
2988
+ target._lpa = vnode.targetAnchor && nextSibling(vnode.targetAnchor);
2989
+ break;
2990
+ }
2991
+ }
2992
+ targetAnchor = nextSibling(targetAnchor);
2993
+ }
2994
+ }
2995
+ function hydrateDisabledTeleport(node, vnode) {
2982
2996
  vnode.anchor = hydrateChildren(nextSibling(node), vnode, parentNode(node), parentComponent, parentSuspense, slotScopeIds, optimized);
2983
- vnode.targetStart = targetStart;
2984
- vnode.targetAnchor = targetAnchor;
2985
2997
  }
2986
2998
  const target = vnode.target = resolveTarget(vnode.props, querySelector);
2987
2999
  const disabled = isTeleportDisabled(vnode.props);
2988
3000
  if (target) {
2989
3001
  const targetNode = target._lpa || target.firstChild;
2990
- if (vnode.shapeFlag & 16) if (disabled) hydrateDisabledTeleport(node, vnode, targetNode, targetNode && nextSibling(targetNode));
2991
- else {
3002
+ if (vnode.shapeFlag & 16) if (disabled) {
3003
+ hydrateDisabledTeleport(node, vnode);
3004
+ hydrateAnchor(target, targetNode);
3005
+ if (!vnode.targetAnchor) prepareAnchor(target, vnode, createText, insert, parentNode(node) === target ? node : null);
3006
+ } else {
2992
3007
  vnode.anchor = nextSibling(node);
2993
- let targetAnchor = targetNode;
2994
- while (targetAnchor) {
2995
- if (targetAnchor && targetAnchor.nodeType === 8) {
2996
- if (targetAnchor.data === "teleport start anchor") vnode.targetStart = targetAnchor;
2997
- else if (targetAnchor.data === "teleport anchor") {
2998
- vnode.targetAnchor = targetAnchor;
2999
- target._lpa = vnode.targetAnchor && nextSibling(vnode.targetAnchor);
3000
- break;
3001
- }
3002
- }
3003
- targetAnchor = nextSibling(targetAnchor);
3004
- }
3008
+ hydrateAnchor(target, targetNode);
3005
3009
  if (!vnode.targetAnchor) prepareAnchor(target, vnode, createText, insert);
3006
3010
  hydrateChildren(targetNode && nextSibling(targetNode), vnode, target, parentComponent, parentSuspense, slotScopeIds, optimized);
3007
3011
  }
3008
3012
  updateCssVars(vnode, disabled);
3009
3013
  } else if (disabled) {
3010
- if (vnode.shapeFlag & 16) hydrateDisabledTeleport(node, vnode, node, nextSibling(node));
3014
+ if (vnode.shapeFlag & 16) {
3015
+ hydrateDisabledTeleport(node, vnode);
3016
+ vnode.targetStart = node;
3017
+ vnode.targetAnchor = nextSibling(node);
3018
+ }
3011
3019
  }
3012
3020
  return vnode.anchor && nextSibling(vnode.anchor);
3013
3021
  }
@@ -3030,13 +3038,13 @@ function updateCssVars(vnode, isDisabled) {
3030
3038
  ctx.ut();
3031
3039
  }
3032
3040
  }
3033
- function prepareAnchor(target, vnode, createText, insert) {
3041
+ function prepareAnchor(target, vnode, createText, insert, anchor = null) {
3034
3042
  const targetStart = vnode.targetStart = createText("");
3035
3043
  const targetAnchor = vnode.targetAnchor = createText("");
3036
3044
  targetStart[TeleportEndKey] = targetAnchor;
3037
3045
  if (target) {
3038
- insert(targetStart, target);
3039
- insert(targetAnchor, target);
3046
+ insert(targetStart, target, anchor);
3047
+ insert(targetAnchor, target, anchor);
3040
3048
  }
3041
3049
  return targetAnchor;
3042
3050
  }
@@ -3210,7 +3218,7 @@ function baseResolveTransitionHooks(context, props, state, instance) {
3210
3218
  cancelHook = onAppearCancelled || onEnterCancelled;
3211
3219
  } else return;
3212
3220
  let called = false;
3213
- const done = el[enterCbKey$1] = (cancelled) => {
3221
+ el[enterCbKey$1] = (cancelled) => {
3214
3222
  if (called) return;
3215
3223
  called = true;
3216
3224
  if (cancelled) callHook(cancelHook, [el]);
@@ -3218,6 +3226,7 @@ function baseResolveTransitionHooks(context, props, state, instance) {
3218
3226
  if (hooks.delayedLeave) hooks.delayedLeave();
3219
3227
  el[enterCbKey$1] = void 0;
3220
3228
  };
3229
+ const done = el[enterCbKey$1].bind(null, false);
3221
3230
  if (hook) callAsyncHook(hook, [el, done]);
3222
3231
  else done();
3223
3232
  },
@@ -3226,7 +3235,7 @@ function baseResolveTransitionHooks(context, props, state, instance) {
3226
3235
  if (state.isUnmounting) return remove();
3227
3236
  callHook(onBeforeLeave, [el]);
3228
3237
  let called = false;
3229
- const done = el[leaveCbKey] = (cancelled) => {
3238
+ el[leaveCbKey] = (cancelled) => {
3230
3239
  if (called) return;
3231
3240
  called = true;
3232
3241
  remove();
@@ -3236,6 +3245,7 @@ function baseResolveTransitionHooks(context, props, state, instance) {
3236
3245
  unsetLeavingNodeCache(el);
3237
3246
  };
3238
3247
  setLeavingNodeCache(el);
3248
+ const done = el[leaveCbKey].bind(null, false);
3239
3249
  if (onLeave) callAsyncHook(onLeave, [el, done]);
3240
3250
  else done();
3241
3251
  },
@@ -3337,6 +3347,10 @@ function useTemplateRef(key) {
3337
3347
  }
3338
3348
  return r;
3339
3349
  }
3350
+ function isTemplateRefKey(refs, key) {
3351
+ let desc;
3352
+ return !!((desc = Object.getOwnPropertyDescriptor(refs, key)) && !desc.configurable);
3353
+ }
3340
3354
 
3341
3355
  //#endregion
3342
3356
  //#region packages/runtime-core/src/rendererTemplateRef.ts
@@ -3359,8 +3373,9 @@ function setRef(rawRef, oldRawRef, parentSuspense, vnode, isUnmount = false) {
3359
3373
  const oldRef = oldRawRef && oldRawRef.r;
3360
3374
  const refs = owner.refs === EMPTY_OBJ ? owner.refs = {} : owner.refs;
3361
3375
  const setupState = owner.setupState;
3362
- const canSetSetupRef = createCanSetSetupRefChecker(setupState);
3363
- const canSetRef = (ref) => {
3376
+ const canSetSetupRef = createCanSetSetupRefChecker(setupState, refs);
3377
+ const canSetRef = (ref, key) => {
3378
+ if (key && isTemplateRefKey(refs, key)) return false;
3364
3379
  return true;
3365
3380
  };
3366
3381
  if (oldRef != null && oldRef !== ref) {
@@ -3369,8 +3384,8 @@ function setRef(rawRef, oldRawRef, parentSuspense, vnode, isUnmount = false) {
3369
3384
  refs[oldRef] = null;
3370
3385
  if (canSetSetupRef(oldRef)) setupState[oldRef] = null;
3371
3386
  } else if (/* @__PURE__ */ isRef(oldRef)) {
3372
- if (canSetRef(oldRef)) oldRef.value = null;
3373
3387
  const oldRawRefAtom = oldRawRef;
3388
+ if (canSetRef(oldRef, oldRawRefAtom.k)) oldRef.value = null;
3374
3389
  if (oldRawRefAtom.k) refs[oldRawRefAtom.k] = null;
3375
3390
  }
3376
3391
  }
@@ -3388,7 +3403,7 @@ function setRef(rawRef, oldRawRef, parentSuspense, vnode, isUnmount = false) {
3388
3403
  if (canSetSetupRef(ref)) setupState[ref] = refs[ref];
3389
3404
  } else {
3390
3405
  const newVal = [refValue];
3391
- if (canSetRef(ref)) ref.value = newVal;
3406
+ if (canSetRef(ref, rawRef.k)) ref.value = newVal;
3392
3407
  if (rawRef.k) refs[rawRef.k] = newVal;
3393
3408
  }
3394
3409
  else if (!existing.includes(refValue)) existing.push(refValue);
@@ -3396,7 +3411,7 @@ function setRef(rawRef, oldRawRef, parentSuspense, vnode, isUnmount = false) {
3396
3411
  refs[ref] = value;
3397
3412
  if (canSetSetupRef(ref)) setupState[ref] = value;
3398
3413
  } else if (_isRef) {
3399
- if (canSetRef(ref)) ref.value = value;
3414
+ if (canSetRef(ref, rawRef.k)) ref.value = value;
3400
3415
  if (rawRef.k) refs[rawRef.k] = value;
3401
3416
  }
3402
3417
  };
@@ -3414,9 +3429,10 @@ function setRef(rawRef, oldRawRef, parentSuspense, vnode, isUnmount = false) {
3414
3429
  }
3415
3430
  }
3416
3431
  }
3417
- function createCanSetSetupRefChecker(setupState) {
3432
+ function createCanSetSetupRefChecker(setupState, refs) {
3418
3433
  const rawSetupState = /* @__PURE__ */ toRaw(setupState);
3419
3434
  return setupState === void 0 || setupState === EMPTY_OBJ ? NO : (key) => {
3435
+ if (isTemplateRefKey(refs, key)) return false;
3420
3436
  return hasOwn(rawSetupState, key);
3421
3437
  };
3422
3438
  }
@@ -5254,7 +5270,7 @@ function createCompatVue$1(createApp, createSingletonApp) {
5254
5270
  if (options.el) return vm.$mount(options.el);
5255
5271
  else return vm;
5256
5272
  }
5257
- Vue.version = `2.6.14-compat:3.6.0-beta.5`;
5273
+ Vue.version = `2.6.14-compat:3.6.0-beta.6`;
5258
5274
  Vue.config = singletonApp.config;
5259
5275
  Vue.use = (plugin, ...options) => {
5260
5276
  if (plugin && isFunction(plugin.install)) plugin.install(Vue, ...options);
@@ -5890,7 +5906,7 @@ function shouldUpdateComponent(prevVNode, nextVNode, optimized) {
5890
5906
  const dynamicProps = nextVNode.dynamicProps;
5891
5907
  for (let i = 0; i < dynamicProps.length; i++) {
5892
5908
  const key = dynamicProps[i];
5893
- if (nextProps[key] !== prevProps[key] && !isEmitListener(emits, key)) return true;
5909
+ if (hasPropValueChanged(nextProps, prevProps, key) && !isEmitListener(emits, key)) return true;
5894
5910
  }
5895
5911
  }
5896
5912
  } else {
@@ -5909,10 +5925,16 @@ function hasPropsChanged(prevProps, nextProps, emitsOptions) {
5909
5925
  if (nextKeys.length !== Object.keys(prevProps).length) return true;
5910
5926
  for (let i = 0; i < nextKeys.length; i++) {
5911
5927
  const key = nextKeys[i];
5912
- if (nextProps[key] !== prevProps[key] && !isEmitListener(emitsOptions, key)) return true;
5928
+ if (hasPropValueChanged(nextProps, prevProps, key) && !isEmitListener(emitsOptions, key)) return true;
5913
5929
  }
5914
5930
  return false;
5915
5931
  }
5932
+ function hasPropValueChanged(nextProps, prevProps, key) {
5933
+ const nextProp = nextProps[key];
5934
+ const prevProp = prevProps[key];
5935
+ if (key === "style" && isObject(nextProp) && isObject(prevProp)) return !looseEqual(nextProp, prevProp);
5936
+ return nextProp !== prevProp;
5937
+ }
5916
5938
  function updateHOCHostEl({ vnode, parent }, el) {
5917
5939
  while (parent && !parent.vapor) {
5918
5940
  const root = parent.subTree;
@@ -6580,7 +6602,9 @@ function baseCreateRenderer(options, createHydrationFns) {
6580
6602
  updateComponentPreRender(instance, next, optimized);
6581
6603
  }
6582
6604
  nonHydratedAsyncRoot.asyncDep.then(() => {
6583
- if (!instance.isUnmounted) this.fn();
6605
+ queuePostRenderEffect(() => {
6606
+ if (!instance.isUnmounted) instance.update();
6607
+ }, void 0, parentSuspense);
6584
6608
  });
6585
6609
  return;
6586
6610
  }
@@ -6972,8 +6996,10 @@ function traverseStaticChildren(n1, n2, shallow = false) {
6972
6996
  }
6973
6997
  if (!shallow && c2.patchFlag !== -2) traverseStaticChildren(c1, c2);
6974
6998
  }
6975
- if (c2.type === Text) if (c2.patchFlag !== -1) c2.el = c1.el;
6976
- else c2.__elIndex = i + (n1.type === Fragment ? 1 : 0);
6999
+ if (c2.type === Text) {
7000
+ if (c2.patchFlag === -1) c2 = ch2[i] = cloneIfMounted(c2);
7001
+ c2.el = c1.el;
7002
+ }
6977
7003
  if (c2.type === Comment && !c2.el) c2.el = c1.el;
6978
7004
  }
6979
7005
  }
@@ -7978,7 +8004,7 @@ function isMemoSame(cached, memo) {
7978
8004
 
7979
8005
  //#endregion
7980
8006
  //#region packages/runtime-core/src/index.ts
7981
- const version = "3.6.0-beta.5";
8007
+ const version = "3.6.0-beta.6";
7982
8008
  const warn = NOOP;
7983
8009
  /**
7984
8010
  * Runtime error messages. Only exposed in dev or esm builds.
@@ -9035,10 +9061,7 @@ const TransitionGroupImpl = /* @__PURE__ */ decorate({
9035
9061
  if (child.el && child.el instanceof Element) {
9036
9062
  prevChildren.push(child);
9037
9063
  setTransitionHooks(child, resolveTransitionHooks(child, cssTransitionProps, state, instance));
9038
- positionMap.set(child, {
9039
- left: child.el.offsetLeft,
9040
- top: child.el.offsetTop
9041
- });
9064
+ positionMap.set(child, getPosition(child.el));
9042
9065
  }
9043
9066
  }
9044
9067
  children = slots.default ? getTransitionRawChildren(slots.default()) : [];
@@ -9056,10 +9079,7 @@ function callPendingCbs(el) {
9056
9079
  if (el[enterCbKey]) el[enterCbKey]();
9057
9080
  }
9058
9081
  function recordPosition(c) {
9059
- newPositionMap.set(c, {
9060
- left: c.el.offsetLeft,
9061
- top: c.el.offsetTop
9062
- });
9082
+ newPositionMap.set(c, getPosition(c.el));
9063
9083
  }
9064
9084
  function applyTranslation(c) {
9065
9085
  if (baseApplyTranslation(positionMap.get(c), newPositionMap.get(c), c.el)) return c;
@@ -9069,12 +9089,28 @@ function baseApplyTranslation(oldPos, newPos, el) {
9069
9089
  const dy = oldPos.top - newPos.top;
9070
9090
  if (dx || dy) {
9071
9091
  const s = el.style;
9072
- s.transform = s.webkitTransform = `translate(${dx}px,${dy}px)`;
9092
+ const rect = el.getBoundingClientRect();
9093
+ let scaleX = 1;
9094
+ let scaleY = 1;
9095
+ if (el.offsetWidth) scaleX = rect.width / el.offsetWidth;
9096
+ if (el.offsetHeight) scaleY = rect.height / el.offsetHeight;
9097
+ if (!Number.isFinite(scaleX) || scaleX === 0) scaleX = 1;
9098
+ if (!Number.isFinite(scaleY) || scaleY === 0) scaleY = 1;
9099
+ if (Math.abs(scaleX - 1) < .01) scaleX = 1;
9100
+ if (Math.abs(scaleY - 1) < .01) scaleY = 1;
9101
+ s.transform = s.webkitTransform = `translate(${dx / scaleX}px,${dy / scaleY}px)`;
9073
9102
  s.transitionDuration = "0s";
9074
9103
  return true;
9075
9104
  }
9076
9105
  return false;
9077
9106
  }
9107
+ function getPosition(el) {
9108
+ const rect = el.getBoundingClientRect();
9109
+ return {
9110
+ left: rect.left,
9111
+ top: rect.top
9112
+ };
9113
+ }
9078
9114
  function hasCSSTransform(el, root, moveClass) {
9079
9115
  const clone = el.cloneNode();
9080
9116
  const _vtc = el[vtcKey];
@@ -9376,6 +9412,7 @@ const modifierGuards = {
9376
9412
  * @private
9377
9413
  */
9378
9414
  const withModifiers = (fn, modifiers) => {
9415
+ if (!fn) return fn;
9379
9416
  const cache = fn._withMods || (fn._withMods = {});
9380
9417
  const cacheKey = modifiers.join(".");
9381
9418
  return cache[cacheKey] || (cache[cacheKey] = ((event, ...args) => {
@@ -14989,7 +15026,6 @@ function compileToFunction(template, options) {
14989
15026
  registerRuntimeCompiler(compileToFunction);
14990
15027
  const Vue = createCompatVue();
14991
15028
  Vue.compile = compileToFunction;
14992
- var src_default = Vue;
14993
15029
 
14994
15030
  //#endregion
14995
- module.exports = src_default;
15031
+ module.exports = Vue;