@vue/compat 3.5.30 → 3.5.32

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.30
2
+ * @vue/compat v3.5.32
3
3
  * (c) 2018-present Yuxi (Evan) You and Vue contributors
4
4
  * @license MIT
5
5
  **/
@@ -1962,16 +1962,16 @@ function toRefs(object) {
1962
1962
  return ret;
1963
1963
  }
1964
1964
  class ObjectRefImpl {
1965
- constructor(_object, _key, _defaultValue) {
1965
+ constructor(_object, key, _defaultValue) {
1966
1966
  this._object = _object;
1967
- this._key = _key;
1968
1967
  this._defaultValue = _defaultValue;
1969
1968
  this["__v_isRef"] = true;
1970
1969
  this._value = void 0;
1970
+ this._key = isSymbol(key) ? key : String(key);
1971
1971
  this._raw = toRaw(_object);
1972
1972
  let shallow = true;
1973
1973
  let obj = _object;
1974
- if (!isArray(_object) || !isIntegerKey(String(_key))) {
1974
+ if (!isArray(_object) || isSymbol(this._key) || !isIntegerKey(this._key)) {
1975
1975
  do {
1976
1976
  shallow = !isProxy(obj) || isShallow(obj);
1977
1977
  } while (shallow && (obj = obj["__v_raw"]));
@@ -2776,6 +2776,13 @@ function checkRecursiveUpdates(seen, fn) {
2776
2776
  }
2777
2777
 
2778
2778
  let isHmrUpdating = false;
2779
+ const setHmrUpdating = (v) => {
2780
+ try {
2781
+ return isHmrUpdating;
2782
+ } finally {
2783
+ isHmrUpdating = v;
2784
+ }
2785
+ };
2779
2786
  const hmrDirtyComponents = /* @__PURE__ */ new Map();
2780
2787
  if (!!(process.env.NODE_ENV !== "production")) {
2781
2788
  getGlobalThis().__VUE_HMR_RUNTIME__ = {
@@ -3741,6 +3748,7 @@ function createPathGetter(ctx, path) {
3741
3748
  };
3742
3749
  }
3743
3750
 
3751
+ const pendingMounts = /* @__PURE__ */ new WeakMap();
3744
3752
  const TeleportEndKey = /* @__PURE__ */ Symbol("_vte");
3745
3753
  const isTeleport = (type) => type.__isTeleport;
3746
3754
  const isTeleportDisabled = (props) => props && (props.disabled || props.disabled === "");
@@ -3782,88 +3790,84 @@ const TeleportImpl = {
3782
3790
  o: { insert, querySelector, createText, createComment }
3783
3791
  } = internals;
3784
3792
  const disabled = isTeleportDisabled(n2.props);
3785
- let { shapeFlag, children, dynamicChildren } = n2;
3793
+ let { dynamicChildren } = n2;
3786
3794
  if (!!(process.env.NODE_ENV !== "production") && isHmrUpdating) {
3787
3795
  optimized = false;
3788
3796
  dynamicChildren = null;
3789
3797
  }
3798
+ const mount = (vnode, container2, anchor2) => {
3799
+ if (vnode.shapeFlag & 16) {
3800
+ mountChildren(
3801
+ vnode.children,
3802
+ container2,
3803
+ anchor2,
3804
+ parentComponent,
3805
+ parentSuspense,
3806
+ namespace,
3807
+ slotScopeIds,
3808
+ optimized
3809
+ );
3810
+ }
3811
+ };
3812
+ const mountToTarget = (vnode = n2) => {
3813
+ const disabled2 = isTeleportDisabled(vnode.props);
3814
+ const target = vnode.target = resolveTarget(vnode.props, querySelector);
3815
+ const targetAnchor = prepareAnchor(target, vnode, createText, insert);
3816
+ if (target) {
3817
+ if (namespace !== "svg" && isTargetSVG(target)) {
3818
+ namespace = "svg";
3819
+ } else if (namespace !== "mathml" && isTargetMathML(target)) {
3820
+ namespace = "mathml";
3821
+ }
3822
+ if (parentComponent && parentComponent.isCE) {
3823
+ (parentComponent.ce._teleportTargets || (parentComponent.ce._teleportTargets = /* @__PURE__ */ new Set())).add(target);
3824
+ }
3825
+ if (!disabled2) {
3826
+ mount(vnode, target, targetAnchor);
3827
+ updateCssVars(vnode, false);
3828
+ }
3829
+ } else if (!!(process.env.NODE_ENV !== "production") && !disabled2) {
3830
+ warn$1("Invalid Teleport target on mount:", target, `(${typeof target})`);
3831
+ }
3832
+ };
3833
+ const queuePendingMount = (vnode) => {
3834
+ const mountJob = () => {
3835
+ if (pendingMounts.get(vnode) !== mountJob) return;
3836
+ pendingMounts.delete(vnode);
3837
+ if (isTeleportDisabled(vnode.props)) {
3838
+ mount(vnode, container, vnode.anchor);
3839
+ updateCssVars(vnode, true);
3840
+ }
3841
+ mountToTarget(vnode);
3842
+ };
3843
+ pendingMounts.set(vnode, mountJob);
3844
+ queuePostRenderEffect(mountJob, parentSuspense);
3845
+ };
3790
3846
  if (n1 == null) {
3791
3847
  const placeholder = n2.el = !!(process.env.NODE_ENV !== "production") ? createComment("teleport start") : createText("");
3792
3848
  const mainAnchor = n2.anchor = !!(process.env.NODE_ENV !== "production") ? createComment("teleport end") : createText("");
3793
3849
  insert(placeholder, container, anchor);
3794
3850
  insert(mainAnchor, container, anchor);
3795
- const mount = (container2, anchor2) => {
3796
- if (shapeFlag & 16) {
3797
- mountChildren(
3798
- children,
3799
- container2,
3800
- anchor2,
3801
- parentComponent,
3802
- parentSuspense,
3803
- namespace,
3804
- slotScopeIds,
3805
- optimized
3806
- );
3807
- }
3808
- };
3809
- const mountToTarget = () => {
3810
- const target = n2.target = resolveTarget(n2.props, querySelector);
3811
- const targetAnchor = prepareAnchor(target, n2, createText, insert);
3812
- if (target) {
3813
- if (namespace !== "svg" && isTargetSVG(target)) {
3814
- namespace = "svg";
3815
- } else if (namespace !== "mathml" && isTargetMathML(target)) {
3816
- namespace = "mathml";
3817
- }
3818
- if (parentComponent && parentComponent.isCE) {
3819
- (parentComponent.ce._teleportTargets || (parentComponent.ce._teleportTargets = /* @__PURE__ */ new Set())).add(target);
3820
- }
3821
- if (!disabled) {
3822
- mount(target, targetAnchor);
3823
- updateCssVars(n2, false);
3824
- }
3825
- } else if (!!(process.env.NODE_ENV !== "production") && !disabled) {
3826
- warn$1(
3827
- "Invalid Teleport target on mount:",
3828
- target,
3829
- `(${typeof target})`
3830
- );
3831
- }
3832
- };
3851
+ if (isTeleportDeferred(n2.props) || parentSuspense && parentSuspense.pendingBranch) {
3852
+ queuePendingMount(n2);
3853
+ return;
3854
+ }
3833
3855
  if (disabled) {
3834
- mount(container, mainAnchor);
3856
+ mount(n2, container, mainAnchor);
3835
3857
  updateCssVars(n2, true);
3836
3858
  }
3837
- if (isTeleportDeferred(n2.props)) {
3838
- n2.el.__isMounted = false;
3839
- queuePostRenderEffect(() => {
3840
- mountToTarget();
3841
- delete n2.el.__isMounted;
3842
- }, parentSuspense);
3843
- } else {
3844
- mountToTarget();
3845
- }
3859
+ mountToTarget();
3846
3860
  } else {
3847
- if (isTeleportDeferred(n2.props) && n1.el.__isMounted === false) {
3848
- queuePostRenderEffect(() => {
3849
- TeleportImpl.process(
3850
- n1,
3851
- n2,
3852
- container,
3853
- anchor,
3854
- parentComponent,
3855
- parentSuspense,
3856
- namespace,
3857
- slotScopeIds,
3858
- optimized,
3859
- internals
3860
- );
3861
- }, parentSuspense);
3861
+ n2.el = n1.el;
3862
+ const mainAnchor = n2.anchor = n1.anchor;
3863
+ const pendingMount = pendingMounts.get(n1);
3864
+ if (pendingMount) {
3865
+ pendingMount.flags |= 8;
3866
+ pendingMounts.delete(n1);
3867
+ queuePendingMount(n2);
3862
3868
  return;
3863
3869
  }
3864
- n2.el = n1.el;
3865
3870
  n2.targetStart = n1.targetStart;
3866
- const mainAnchor = n2.anchor = n1.anchor;
3867
3871
  const target = n2.target = n1.target;
3868
3872
  const targetAnchor = n2.targetAnchor = n1.targetAnchor;
3869
3873
  const wasDisabled = isTeleportDisabled(n1.props);
@@ -3956,13 +3960,19 @@ const TeleportImpl = {
3956
3960
  target,
3957
3961
  props
3958
3962
  } = vnode;
3963
+ let shouldRemove = doRemove || !isTeleportDisabled(props);
3964
+ const pendingMount = pendingMounts.get(vnode);
3965
+ if (pendingMount) {
3966
+ pendingMount.flags |= 8;
3967
+ pendingMounts.delete(vnode);
3968
+ shouldRemove = false;
3969
+ }
3959
3970
  if (target) {
3960
3971
  hostRemove(targetStart);
3961
3972
  hostRemove(targetAnchor);
3962
3973
  }
3963
3974
  doRemove && hostRemove(anchor);
3964
3975
  if (shapeFlag & 16) {
3965
- const shouldRemove = doRemove || !isTeleportDisabled(props);
3966
3976
  for (let i = 0; i < children.length; i++) {
3967
3977
  const child = children[i];
3968
3978
  unmount(
@@ -4332,7 +4342,7 @@ function resolveTransitionHooks(vnode, props, state, instance, postClone) {
4332
4342
  callHook(hook, [el]);
4333
4343
  },
4334
4344
  enter(el) {
4335
- if (leavingVNodesCache[key] === vnode) return;
4345
+ if (!isHmrUpdating && leavingVNodesCache[key] === vnode) return;
4336
4346
  let hook = onEnter;
4337
4347
  let afterHook = onAfterEnter;
4338
4348
  let cancelHook = onEnterCancelled;
@@ -7543,7 +7553,7 @@ function createCompatVue$1(createApp, createSingletonApp) {
7543
7553
  return vm;
7544
7554
  }
7545
7555
  }
7546
- Vue.version = `2.6.14-compat:${"3.5.30"}`;
7556
+ Vue.version = `2.6.14-compat:${"3.5.32"}`;
7547
7557
  Vue.config = singletonApp.config;
7548
7558
  Vue.use = (plugin, ...options) => {
7549
7559
  if (plugin && isFunction(plugin.install)) {
@@ -8704,11 +8714,12 @@ function hasPropValueChanged(nextProps, prevProps, key) {
8704
8714
  }
8705
8715
  return nextProp !== prevProp;
8706
8716
  }
8707
- function updateHOCHostEl({ vnode, parent }, el) {
8717
+ function updateHOCHostEl({ vnode, parent, suspense }, el) {
8708
8718
  while (parent) {
8709
8719
  const root = parent.subTree;
8710
8720
  if (root.suspense && root.suspense.activeBranch === vnode) {
8711
- root.el = vnode.el;
8721
+ root.suspense.vnode.el = root.el = el;
8722
+ vnode = root;
8712
8723
  }
8713
8724
  if (root === vnode) {
8714
8725
  (vnode = parent.vnode).el = el;
@@ -8717,6 +8728,9 @@ function updateHOCHostEl({ vnode, parent }, el) {
8717
8728
  break;
8718
8729
  }
8719
8730
  }
8731
+ if (suspense && suspense.activeBranch === vnode) {
8732
+ suspense.vnode.el = el;
8733
+ }
8720
8734
  }
8721
8735
 
8722
8736
  function createPropsDefaultThis(instance, rawProps, propKey) {
@@ -9657,10 +9671,17 @@ function baseCreateRenderer(options, createHydrationFns) {
9657
9671
  }
9658
9672
  hostInsert(el, container, anchor);
9659
9673
  if ((vnodeHook = props && props.onVnodeMounted) || needCallTransitionHooks || dirs) {
9674
+ const isHmr = !!(process.env.NODE_ENV !== "production") && isHmrUpdating;
9660
9675
  queuePostRenderEffect(() => {
9661
- vnodeHook && invokeVNodeHook(vnodeHook, parentComponent, vnode);
9662
- needCallTransitionHooks && transition.enter(el);
9663
- dirs && invokeDirectiveHook(vnode, null, parentComponent, "mounted");
9676
+ let prev;
9677
+ if (!!(process.env.NODE_ENV !== "production")) prev = setHmrUpdating(isHmr);
9678
+ try {
9679
+ vnodeHook && invokeVNodeHook(vnodeHook, parentComponent, vnode);
9680
+ needCallTransitionHooks && transition.enter(el);
9681
+ dirs && invokeDirectiveHook(vnode, null, parentComponent, "mounted");
9682
+ } finally {
9683
+ if (!!(process.env.NODE_ENV !== "production")) setHmrUpdating(prev);
9684
+ }
9664
9685
  }, parentSuspense);
9665
9686
  }
9666
9687
  };
@@ -10617,7 +10638,8 @@ function baseCreateRenderer(options, createHydrationFns) {
10617
10638
  shapeFlag,
10618
10639
  patchFlag,
10619
10640
  dirs,
10620
- cacheIndex
10641
+ cacheIndex,
10642
+ memo
10621
10643
  } = vnode;
10622
10644
  if (patchFlag === -2) {
10623
10645
  optimized = false;
@@ -10679,10 +10701,14 @@ function baseCreateRenderer(options, createHydrationFns) {
10679
10701
  remove(vnode);
10680
10702
  }
10681
10703
  }
10682
- if (shouldInvokeVnodeHook && (vnodeHook = props && props.onVnodeUnmounted) || shouldInvokeDirs) {
10704
+ const shouldInvalidateMemo = memo != null && cacheIndex == null;
10705
+ if (shouldInvokeVnodeHook && (vnodeHook = props && props.onVnodeUnmounted) || shouldInvokeDirs || shouldInvalidateMemo) {
10683
10706
  queuePostRenderEffect(() => {
10684
10707
  vnodeHook && invokeVNodeHook(vnodeHook, parentComponent, vnode);
10685
10708
  shouldInvokeDirs && invokeDirectiveHook(vnode, null, parentComponent, "unmounted");
10709
+ if (shouldInvalidateMemo) {
10710
+ vnode.el = null;
10711
+ }
10686
10712
  }, parentSuspense);
10687
10713
  }
10688
10714
  };
@@ -11245,6 +11271,7 @@ function createSuspenseBoundary(vnode, parentSuspense, parentComponent, containe
11245
11271
  pendingId: suspenseId++,
11246
11272
  timeout: typeof timeout === "number" ? timeout : -1,
11247
11273
  activeBranch: null,
11274
+ isFallbackMountPending: false,
11248
11275
  pendingBranch: null,
11249
11276
  isInFallback: !isHydrating,
11250
11277
  isHydrating,
@@ -11294,7 +11321,7 @@ function createSuspenseBoundary(vnode, parentSuspense, parentComponent, containe
11294
11321
  }
11295
11322
  };
11296
11323
  }
11297
- if (activeBranch) {
11324
+ if (activeBranch && !suspense.isFallbackMountPending) {
11298
11325
  if (parentNode(activeBranch.el) === container2) {
11299
11326
  anchor = next(activeBranch);
11300
11327
  }
@@ -11307,6 +11334,7 @@ function createSuspenseBoundary(vnode, parentSuspense, parentComponent, containe
11307
11334
  move(pendingBranch, container2, anchor, 0);
11308
11335
  }
11309
11336
  }
11337
+ suspense.isFallbackMountPending = false;
11310
11338
  setActiveBranch(suspense, pendingBranch);
11311
11339
  suspense.pendingBranch = null;
11312
11340
  suspense.isInFallback = false;
@@ -11342,6 +11370,7 @@ function createSuspenseBoundary(vnode, parentSuspense, parentComponent, containe
11342
11370
  triggerEvent(vnode2, "onFallback");
11343
11371
  const anchor2 = next(activeBranch);
11344
11372
  const mountFallback = () => {
11373
+ suspense.isFallbackMountPending = false;
11345
11374
  if (!suspense.isInFallback) {
11346
11375
  return;
11347
11376
  }
@@ -11361,6 +11390,7 @@ function createSuspenseBoundary(vnode, parentSuspense, parentComponent, containe
11361
11390
  };
11362
11391
  const delayEnter = fallbackVNode.transition && fallbackVNode.transition.mode === "out-in";
11363
11392
  if (delayEnter) {
11393
+ suspense.isFallbackMountPending = true;
11364
11394
  activeBranch.transition.afterLeave = mountFallback;
11365
11395
  }
11366
11396
  suspense.isInFallback = true;
@@ -11395,6 +11425,7 @@ function createSuspenseBoundary(vnode, parentSuspense, parentComponent, containe
11395
11425
  if (instance.isUnmounted || suspense.isUnmounted || suspense.pendingId !== instance.suspenseId) {
11396
11426
  return;
11397
11427
  }
11428
+ unsetCurrentInstance();
11398
11429
  instance.asyncResolved = true;
11399
11430
  const { vnode: vnode2 } = instance;
11400
11431
  if (!!(process.env.NODE_ENV !== "production")) {
@@ -11978,6 +12009,10 @@ function mergeProps(...args) {
11978
12009
  const incoming = toMerge[key];
11979
12010
  if (incoming && existing !== incoming && !(isArray(existing) && existing.includes(incoming))) {
11980
12011
  ret[key] = existing ? [].concat(existing, incoming) : incoming;
12012
+ } else if (incoming == null && existing == null && // mergeProps({ 'onUpdate:modelValue': undefined }) should not retain
12013
+ // the model listener.
12014
+ !isModelListener(key)) {
12015
+ ret[key] = incoming;
11981
12016
  }
11982
12017
  } else if (key !== "") {
11983
12018
  ret[key] = toMerge[key];
@@ -12688,7 +12723,7 @@ function isMemoSame(cached, memo) {
12688
12723
  return true;
12689
12724
  }
12690
12725
 
12691
- const version = "3.5.30";
12726
+ const version = "3.5.32";
12692
12727
  const warn = !!(process.env.NODE_ENV !== "production") ? warn$1 : NOOP;
12693
12728
  const ErrorTypeStrings = ErrorTypeStrings$1 ;
12694
12729
  const devtools = !!(process.env.NODE_ENV !== "production") || true ? devtools$1 : void 0;
@@ -14376,7 +14411,8 @@ const vModelText = {
14376
14411
  if (elValue === newValue) {
14377
14412
  return;
14378
14413
  }
14379
- if (document.activeElement === el && el.type !== "range") {
14414
+ const rootNode = el.getRootNode();
14415
+ if ((rootNode instanceof Document || rootNode instanceof ShadowRoot) && rootNode.activeElement === el && el.type !== "range") {
14380
14416
  if (lazy && value === oldValue) {
14381
14417
  return;
14382
14418
  }
@@ -18811,7 +18847,7 @@ const transformFor = createStructuralDirectiveTransform(
18811
18847
  loop.body = createBlockStatement([
18812
18848
  createCompoundExpression([`const _memo = (`, memo.exp, `)`]),
18813
18849
  createCompoundExpression([
18814
- `if (_cached`,
18850
+ `if (_cached && _cached.el`,
18815
18851
  ...keyExp ? [` && _cached.key === `, keyExp] : [],
18816
18852
  ` && ${context.helperString(
18817
18853
  IS_MEMO_SAME