@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
  **/
@@ -1955,16 +1955,16 @@ var Vue = (function () {
1955
1955
  return ret;
1956
1956
  }
1957
1957
  class ObjectRefImpl {
1958
- constructor(_object, _key, _defaultValue) {
1958
+ constructor(_object, key, _defaultValue) {
1959
1959
  this._object = _object;
1960
- this._key = _key;
1961
1960
  this._defaultValue = _defaultValue;
1962
1961
  this["__v_isRef"] = true;
1963
1962
  this._value = void 0;
1963
+ this._key = isSymbol(key) ? key : String(key);
1964
1964
  this._raw = toRaw(_object);
1965
1965
  let shallow = true;
1966
1966
  let obj = _object;
1967
- if (!isArray(_object) || !isIntegerKey(String(_key))) {
1967
+ if (!isArray(_object) || isSymbol(this._key) || !isIntegerKey(this._key)) {
1968
1968
  do {
1969
1969
  shallow = !isProxy(obj) || isShallow(obj);
1970
1970
  } while (shallow && (obj = obj["__v_raw"]));
@@ -2764,6 +2764,13 @@ var Vue = (function () {
2764
2764
  }
2765
2765
 
2766
2766
  let isHmrUpdating = false;
2767
+ const setHmrUpdating = (v) => {
2768
+ try {
2769
+ return isHmrUpdating;
2770
+ } finally {
2771
+ isHmrUpdating = v;
2772
+ }
2773
+ };
2767
2774
  const hmrDirtyComponents = /* @__PURE__ */ new Map();
2768
2775
  {
2769
2776
  getGlobalThis().__VUE_HMR_RUNTIME__ = {
@@ -3698,6 +3705,7 @@ Details: https://v3-migration.vuejs.org/breaking-changes/migration-build.html`
3698
3705
  };
3699
3706
  }
3700
3707
 
3708
+ const pendingMounts = /* @__PURE__ */ new WeakMap();
3701
3709
  const TeleportEndKey = /* @__PURE__ */ Symbol("_vte");
3702
3710
  const isTeleport = (type) => type.__isTeleport;
3703
3711
  const isTeleportDisabled = (props) => props && (props.disabled || props.disabled === "");
@@ -3739,88 +3747,84 @@ Details: https://v3-migration.vuejs.org/breaking-changes/migration-build.html`
3739
3747
  o: { insert, querySelector, createText, createComment }
3740
3748
  } = internals;
3741
3749
  const disabled = isTeleportDisabled(n2.props);
3742
- let { shapeFlag, children, dynamicChildren } = n2;
3750
+ let { dynamicChildren } = n2;
3743
3751
  if (isHmrUpdating) {
3744
3752
  optimized = false;
3745
3753
  dynamicChildren = null;
3746
3754
  }
3755
+ const mount = (vnode, container2, anchor2) => {
3756
+ if (vnode.shapeFlag & 16) {
3757
+ mountChildren(
3758
+ vnode.children,
3759
+ container2,
3760
+ anchor2,
3761
+ parentComponent,
3762
+ parentSuspense,
3763
+ namespace,
3764
+ slotScopeIds,
3765
+ optimized
3766
+ );
3767
+ }
3768
+ };
3769
+ const mountToTarget = (vnode = n2) => {
3770
+ const disabled2 = isTeleportDisabled(vnode.props);
3771
+ const target = vnode.target = resolveTarget(vnode.props, querySelector);
3772
+ const targetAnchor = prepareAnchor(target, vnode, createText, insert);
3773
+ if (target) {
3774
+ if (namespace !== "svg" && isTargetSVG(target)) {
3775
+ namespace = "svg";
3776
+ } else if (namespace !== "mathml" && isTargetMathML(target)) {
3777
+ namespace = "mathml";
3778
+ }
3779
+ if (parentComponent && parentComponent.isCE) {
3780
+ (parentComponent.ce._teleportTargets || (parentComponent.ce._teleportTargets = /* @__PURE__ */ new Set())).add(target);
3781
+ }
3782
+ if (!disabled2) {
3783
+ mount(vnode, target, targetAnchor);
3784
+ updateCssVars(vnode, false);
3785
+ }
3786
+ } else if (!disabled2) {
3787
+ warn$1("Invalid Teleport target on mount:", target, `(${typeof target})`);
3788
+ }
3789
+ };
3790
+ const queuePendingMount = (vnode) => {
3791
+ const mountJob = () => {
3792
+ if (pendingMounts.get(vnode) !== mountJob) return;
3793
+ pendingMounts.delete(vnode);
3794
+ if (isTeleportDisabled(vnode.props)) {
3795
+ mount(vnode, container, vnode.anchor);
3796
+ updateCssVars(vnode, true);
3797
+ }
3798
+ mountToTarget(vnode);
3799
+ };
3800
+ pendingMounts.set(vnode, mountJob);
3801
+ queuePostRenderEffect(mountJob, parentSuspense);
3802
+ };
3747
3803
  if (n1 == null) {
3748
3804
  const placeholder = n2.el = createComment("teleport start") ;
3749
3805
  const mainAnchor = n2.anchor = createComment("teleport end") ;
3750
3806
  insert(placeholder, container, anchor);
3751
3807
  insert(mainAnchor, container, anchor);
3752
- const mount = (container2, anchor2) => {
3753
- if (shapeFlag & 16) {
3754
- mountChildren(
3755
- children,
3756
- container2,
3757
- anchor2,
3758
- parentComponent,
3759
- parentSuspense,
3760
- namespace,
3761
- slotScopeIds,
3762
- optimized
3763
- );
3764
- }
3765
- };
3766
- const mountToTarget = () => {
3767
- const target = n2.target = resolveTarget(n2.props, querySelector);
3768
- const targetAnchor = prepareAnchor(target, n2, createText, insert);
3769
- if (target) {
3770
- if (namespace !== "svg" && isTargetSVG(target)) {
3771
- namespace = "svg";
3772
- } else if (namespace !== "mathml" && isTargetMathML(target)) {
3773
- namespace = "mathml";
3774
- }
3775
- if (parentComponent && parentComponent.isCE) {
3776
- (parentComponent.ce._teleportTargets || (parentComponent.ce._teleportTargets = /* @__PURE__ */ new Set())).add(target);
3777
- }
3778
- if (!disabled) {
3779
- mount(target, targetAnchor);
3780
- updateCssVars(n2, false);
3781
- }
3782
- } else if (!disabled) {
3783
- warn$1(
3784
- "Invalid Teleport target on mount:",
3785
- target,
3786
- `(${typeof target})`
3787
- );
3788
- }
3789
- };
3808
+ if (isTeleportDeferred(n2.props) || parentSuspense && parentSuspense.pendingBranch) {
3809
+ queuePendingMount(n2);
3810
+ return;
3811
+ }
3790
3812
  if (disabled) {
3791
- mount(container, mainAnchor);
3813
+ mount(n2, container, mainAnchor);
3792
3814
  updateCssVars(n2, true);
3793
3815
  }
3794
- if (isTeleportDeferred(n2.props)) {
3795
- n2.el.__isMounted = false;
3796
- queuePostRenderEffect(() => {
3797
- mountToTarget();
3798
- delete n2.el.__isMounted;
3799
- }, parentSuspense);
3800
- } else {
3801
- mountToTarget();
3802
- }
3816
+ mountToTarget();
3803
3817
  } else {
3804
- if (isTeleportDeferred(n2.props) && n1.el.__isMounted === false) {
3805
- queuePostRenderEffect(() => {
3806
- TeleportImpl.process(
3807
- n1,
3808
- n2,
3809
- container,
3810
- anchor,
3811
- parentComponent,
3812
- parentSuspense,
3813
- namespace,
3814
- slotScopeIds,
3815
- optimized,
3816
- internals
3817
- );
3818
- }, parentSuspense);
3818
+ n2.el = n1.el;
3819
+ const mainAnchor = n2.anchor = n1.anchor;
3820
+ const pendingMount = pendingMounts.get(n1);
3821
+ if (pendingMount) {
3822
+ pendingMount.flags |= 8;
3823
+ pendingMounts.delete(n1);
3824
+ queuePendingMount(n2);
3819
3825
  return;
3820
3826
  }
3821
- n2.el = n1.el;
3822
3827
  n2.targetStart = n1.targetStart;
3823
- const mainAnchor = n2.anchor = n1.anchor;
3824
3828
  const target = n2.target = n1.target;
3825
3829
  const targetAnchor = n2.targetAnchor = n1.targetAnchor;
3826
3830
  const wasDisabled = isTeleportDisabled(n1.props);
@@ -3913,13 +3917,19 @@ Details: https://v3-migration.vuejs.org/breaking-changes/migration-build.html`
3913
3917
  target,
3914
3918
  props
3915
3919
  } = vnode;
3920
+ let shouldRemove = doRemove || !isTeleportDisabled(props);
3921
+ const pendingMount = pendingMounts.get(vnode);
3922
+ if (pendingMount) {
3923
+ pendingMount.flags |= 8;
3924
+ pendingMounts.delete(vnode);
3925
+ shouldRemove = false;
3926
+ }
3916
3927
  if (target) {
3917
3928
  hostRemove(targetStart);
3918
3929
  hostRemove(targetAnchor);
3919
3930
  }
3920
3931
  doRemove && hostRemove(anchor);
3921
3932
  if (shapeFlag & 16) {
3922
- const shouldRemove = doRemove || !isTeleportDisabled(props);
3923
3933
  for (let i = 0; i < children.length; i++) {
3924
3934
  const child = children[i];
3925
3935
  unmount(
@@ -4288,7 +4298,7 @@ Details: https://v3-migration.vuejs.org/breaking-changes/migration-build.html`
4288
4298
  callHook(hook, [el]);
4289
4299
  },
4290
4300
  enter(el) {
4291
- if (leavingVNodesCache[key] === vnode) return;
4301
+ if (!isHmrUpdating && leavingVNodesCache[key] === vnode) return;
4292
4302
  let hook = onEnter;
4293
4303
  let afterHook = onAfterEnter;
4294
4304
  let cancelHook = onEnterCancelled;
@@ -7477,7 +7487,7 @@ If this is a native custom element, make sure to exclude it from component resol
7477
7487
  return vm;
7478
7488
  }
7479
7489
  }
7480
- Vue.version = `2.6.14-compat:${"3.5.30"}`;
7490
+ Vue.version = `2.6.14-compat:${"3.5.32"}`;
7481
7491
  Vue.config = singletonApp.config;
7482
7492
  Vue.use = (plugin, ...options) => {
7483
7493
  if (plugin && isFunction(plugin.install)) {
@@ -8636,11 +8646,12 @@ If you want to remount the same app, move your app creation logic into a factory
8636
8646
  }
8637
8647
  return nextProp !== prevProp;
8638
8648
  }
8639
- function updateHOCHostEl({ vnode, parent }, el) {
8649
+ function updateHOCHostEl({ vnode, parent, suspense }, el) {
8640
8650
  while (parent) {
8641
8651
  const root = parent.subTree;
8642
8652
  if (root.suspense && root.suspense.activeBranch === vnode) {
8643
- root.el = vnode.el;
8653
+ root.suspense.vnode.el = root.el = el;
8654
+ vnode = root;
8644
8655
  }
8645
8656
  if (root === vnode) {
8646
8657
  (vnode = parent.vnode).el = el;
@@ -8649,6 +8660,9 @@ If you want to remount the same app, move your app creation logic into a factory
8649
8660
  break;
8650
8661
  }
8651
8662
  }
8663
+ if (suspense && suspense.activeBranch === vnode) {
8664
+ suspense.vnode.el = el;
8665
+ }
8652
8666
  }
8653
8667
 
8654
8668
  function createPropsDefaultThis(instance, rawProps, propKey) {
@@ -9562,10 +9576,17 @@ If you want to remount the same app, move your app creation logic into a factory
9562
9576
  }
9563
9577
  hostInsert(el, container, anchor);
9564
9578
  if ((vnodeHook = props && props.onVnodeMounted) || needCallTransitionHooks || dirs) {
9579
+ const isHmr = isHmrUpdating;
9565
9580
  queuePostRenderEffect(() => {
9566
- vnodeHook && invokeVNodeHook(vnodeHook, parentComponent, vnode);
9567
- needCallTransitionHooks && transition.enter(el);
9568
- dirs && invokeDirectiveHook(vnode, null, parentComponent, "mounted");
9581
+ let prev;
9582
+ prev = setHmrUpdating(isHmr);
9583
+ try {
9584
+ vnodeHook && invokeVNodeHook(vnodeHook, parentComponent, vnode);
9585
+ needCallTransitionHooks && transition.enter(el);
9586
+ dirs && invokeDirectiveHook(vnode, null, parentComponent, "mounted");
9587
+ } finally {
9588
+ setHmrUpdating(prev);
9589
+ }
9569
9590
  }, parentSuspense);
9570
9591
  }
9571
9592
  };
@@ -10511,7 +10532,8 @@ If you want to remount the same app, move your app creation logic into a factory
10511
10532
  shapeFlag,
10512
10533
  patchFlag,
10513
10534
  dirs,
10514
- cacheIndex
10535
+ cacheIndex,
10536
+ memo
10515
10537
  } = vnode;
10516
10538
  if (patchFlag === -2) {
10517
10539
  optimized = false;
@@ -10573,10 +10595,14 @@ If you want to remount the same app, move your app creation logic into a factory
10573
10595
  remove(vnode);
10574
10596
  }
10575
10597
  }
10576
- if (shouldInvokeVnodeHook && (vnodeHook = props && props.onVnodeUnmounted) || shouldInvokeDirs) {
10598
+ const shouldInvalidateMemo = memo != null && cacheIndex == null;
10599
+ if (shouldInvokeVnodeHook && (vnodeHook = props && props.onVnodeUnmounted) || shouldInvokeDirs || shouldInvalidateMemo) {
10577
10600
  queuePostRenderEffect(() => {
10578
10601
  vnodeHook && invokeVNodeHook(vnodeHook, parentComponent, vnode);
10579
10602
  shouldInvokeDirs && invokeDirectiveHook(vnode, null, parentComponent, "unmounted");
10603
+ if (shouldInvalidateMemo) {
10604
+ vnode.el = null;
10605
+ }
10580
10606
  }, parentSuspense);
10581
10607
  }
10582
10608
  };
@@ -11139,6 +11165,7 @@ If you want to remount the same app, move your app creation logic into a factory
11139
11165
  pendingId: suspenseId++,
11140
11166
  timeout: typeof timeout === "number" ? timeout : -1,
11141
11167
  activeBranch: null,
11168
+ isFallbackMountPending: false,
11142
11169
  pendingBranch: null,
11143
11170
  isInFallback: !isHydrating,
11144
11171
  isHydrating,
@@ -11188,7 +11215,7 @@ If you want to remount the same app, move your app creation logic into a factory
11188
11215
  }
11189
11216
  };
11190
11217
  }
11191
- if (activeBranch) {
11218
+ if (activeBranch && !suspense.isFallbackMountPending) {
11192
11219
  if (parentNode(activeBranch.el) === container2) {
11193
11220
  anchor = next(activeBranch);
11194
11221
  }
@@ -11201,6 +11228,7 @@ If you want to remount the same app, move your app creation logic into a factory
11201
11228
  move(pendingBranch, container2, anchor, 0);
11202
11229
  }
11203
11230
  }
11231
+ suspense.isFallbackMountPending = false;
11204
11232
  setActiveBranch(suspense, pendingBranch);
11205
11233
  suspense.pendingBranch = null;
11206
11234
  suspense.isInFallback = false;
@@ -11236,6 +11264,7 @@ If you want to remount the same app, move your app creation logic into a factory
11236
11264
  triggerEvent(vnode2, "onFallback");
11237
11265
  const anchor2 = next(activeBranch);
11238
11266
  const mountFallback = () => {
11267
+ suspense.isFallbackMountPending = false;
11239
11268
  if (!suspense.isInFallback) {
11240
11269
  return;
11241
11270
  }
@@ -11255,6 +11284,7 @@ If you want to remount the same app, move your app creation logic into a factory
11255
11284
  };
11256
11285
  const delayEnter = fallbackVNode.transition && fallbackVNode.transition.mode === "out-in";
11257
11286
  if (delayEnter) {
11287
+ suspense.isFallbackMountPending = true;
11258
11288
  activeBranch.transition.afterLeave = mountFallback;
11259
11289
  }
11260
11290
  suspense.isInFallback = true;
@@ -11289,6 +11319,7 @@ If you want to remount the same app, move your app creation logic into a factory
11289
11319
  if (instance.isUnmounted || suspense.isUnmounted || suspense.pendingId !== instance.suspenseId) {
11290
11320
  return;
11291
11321
  }
11322
+ unsetCurrentInstance();
11292
11323
  instance.asyncResolved = true;
11293
11324
  const { vnode: vnode2 } = instance;
11294
11325
  {
@@ -11872,6 +11903,10 @@ Component that was made reactive: `,
11872
11903
  const incoming = toMerge[key];
11873
11904
  if (incoming && existing !== incoming && !(isArray(existing) && existing.includes(incoming))) {
11874
11905
  ret[key] = existing ? [].concat(existing, incoming) : incoming;
11906
+ } else if (incoming == null && existing == null && // mergeProps({ 'onUpdate:modelValue': undefined }) should not retain
11907
+ // the model listener.
11908
+ !isModelListener(key)) {
11909
+ ret[key] = incoming;
11875
11910
  }
11876
11911
  } else if (key !== "") {
11877
11912
  ret[key] = toMerge[key];
@@ -12554,7 +12589,7 @@ Component that was made reactive: `,
12554
12589
  return true;
12555
12590
  }
12556
12591
 
12557
- const version = "3.5.30";
12592
+ const version = "3.5.32";
12558
12593
  const warn = warn$1 ;
12559
12594
  const ErrorTypeStrings = ErrorTypeStrings$1 ;
12560
12595
  const devtools = devtools$1 ;
@@ -14211,7 +14246,8 @@ Expected function or array of functions, received type ${typeof value}.`
14211
14246
  if (elValue === newValue) {
14212
14247
  return;
14213
14248
  }
14214
- if (document.activeElement === el && el.type !== "range") {
14249
+ const rootNode = el.getRootNode();
14250
+ if ((rootNode instanceof Document || rootNode instanceof ShadowRoot) && rootNode.activeElement === el && el.type !== "range") {
14215
14251
  if (lazy && value === oldValue) {
14216
14252
  return;
14217
14253
  }
@@ -18608,7 +18644,7 @@ Use a v-bind binding combined with a v-on listener that emits update:x event ins
18608
18644
  loop.body = createBlockStatement([
18609
18645
  createCompoundExpression([`const _memo = (`, memo.exp, `)`]),
18610
18646
  createCompoundExpression([
18611
- `if (_cached`,
18647
+ `if (_cached && _cached.el`,
18612
18648
  ...keyExp ? [` && _cached.key === `, keyExp] : [],
18613
18649
  ` && ${context.helperString(
18614
18650
  IS_MEMO_SAME