@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
  **/
@@ -1889,16 +1889,16 @@ function toRefs(object) {
1889
1889
  return ret;
1890
1890
  }
1891
1891
  class ObjectRefImpl {
1892
- constructor(_object, _key, _defaultValue) {
1892
+ constructor(_object, key, _defaultValue) {
1893
1893
  this._object = _object;
1894
- this._key = _key;
1895
1894
  this._defaultValue = _defaultValue;
1896
1895
  this["__v_isRef"] = true;
1897
1896
  this._value = void 0;
1897
+ this._key = isSymbol(key) ? key : String(key);
1898
1898
  this._raw = toRaw(_object);
1899
1899
  let shallow = true;
1900
1900
  let obj = _object;
1901
- if (!isArray(_object) || !isIntegerKey(String(_key))) {
1901
+ if (!isArray(_object) || isSymbol(this._key) || !isIntegerKey(this._key)) {
1902
1902
  do {
1903
1903
  shallow = !isProxy(obj) || isShallow(obj);
1904
1904
  } while (shallow && (obj = obj["__v_raw"]));
@@ -2703,6 +2703,13 @@ function checkRecursiveUpdates(seen, fn) {
2703
2703
  }
2704
2704
 
2705
2705
  let isHmrUpdating = false;
2706
+ const setHmrUpdating = (v) => {
2707
+ try {
2708
+ return isHmrUpdating;
2709
+ } finally {
2710
+ isHmrUpdating = v;
2711
+ }
2712
+ };
2706
2713
  const hmrDirtyComponents = /* @__PURE__ */ new Map();
2707
2714
  if (!!(process.env.NODE_ENV !== "production")) {
2708
2715
  getGlobalThis().__VUE_HMR_RUNTIME__ = {
@@ -3668,6 +3675,7 @@ function createPathGetter(ctx, path) {
3668
3675
  };
3669
3676
  }
3670
3677
 
3678
+ const pendingMounts = /* @__PURE__ */ new WeakMap();
3671
3679
  const TeleportEndKey = /* @__PURE__ */ Symbol("_vte");
3672
3680
  const isTeleport = (type) => type.__isTeleport;
3673
3681
  const isTeleportDisabled = (props) => props && (props.disabled || props.disabled === "");
@@ -3709,88 +3717,84 @@ const TeleportImpl = {
3709
3717
  o: { insert, querySelector, createText, createComment }
3710
3718
  } = internals;
3711
3719
  const disabled = isTeleportDisabled(n2.props);
3712
- let { shapeFlag, children, dynamicChildren } = n2;
3720
+ let { dynamicChildren } = n2;
3713
3721
  if (!!(process.env.NODE_ENV !== "production") && isHmrUpdating) {
3714
3722
  optimized = false;
3715
3723
  dynamicChildren = null;
3716
3724
  }
3725
+ const mount = (vnode, container2, anchor2) => {
3726
+ if (vnode.shapeFlag & 16) {
3727
+ mountChildren(
3728
+ vnode.children,
3729
+ container2,
3730
+ anchor2,
3731
+ parentComponent,
3732
+ parentSuspense,
3733
+ namespace,
3734
+ slotScopeIds,
3735
+ optimized
3736
+ );
3737
+ }
3738
+ };
3739
+ const mountToTarget = (vnode = n2) => {
3740
+ const disabled2 = isTeleportDisabled(vnode.props);
3741
+ const target = vnode.target = resolveTarget(vnode.props, querySelector);
3742
+ const targetAnchor = prepareAnchor(target, vnode, createText, insert);
3743
+ if (target) {
3744
+ if (namespace !== "svg" && isTargetSVG(target)) {
3745
+ namespace = "svg";
3746
+ } else if (namespace !== "mathml" && isTargetMathML(target)) {
3747
+ namespace = "mathml";
3748
+ }
3749
+ if (parentComponent && parentComponent.isCE) {
3750
+ (parentComponent.ce._teleportTargets || (parentComponent.ce._teleportTargets = /* @__PURE__ */ new Set())).add(target);
3751
+ }
3752
+ if (!disabled2) {
3753
+ mount(vnode, target, targetAnchor);
3754
+ updateCssVars(vnode, false);
3755
+ }
3756
+ } else if (!!(process.env.NODE_ENV !== "production") && !disabled2) {
3757
+ warn$1("Invalid Teleport target on mount:", target, `(${typeof target})`);
3758
+ }
3759
+ };
3760
+ const queuePendingMount = (vnode) => {
3761
+ const mountJob = () => {
3762
+ if (pendingMounts.get(vnode) !== mountJob) return;
3763
+ pendingMounts.delete(vnode);
3764
+ if (isTeleportDisabled(vnode.props)) {
3765
+ mount(vnode, container, vnode.anchor);
3766
+ updateCssVars(vnode, true);
3767
+ }
3768
+ mountToTarget(vnode);
3769
+ };
3770
+ pendingMounts.set(vnode, mountJob);
3771
+ queuePostRenderEffect(mountJob, parentSuspense);
3772
+ };
3717
3773
  if (n1 == null) {
3718
3774
  const placeholder = n2.el = !!(process.env.NODE_ENV !== "production") ? createComment("teleport start") : createText("");
3719
3775
  const mainAnchor = n2.anchor = !!(process.env.NODE_ENV !== "production") ? createComment("teleport end") : createText("");
3720
3776
  insert(placeholder, container, anchor);
3721
3777
  insert(mainAnchor, container, anchor);
3722
- const mount = (container2, anchor2) => {
3723
- if (shapeFlag & 16) {
3724
- mountChildren(
3725
- children,
3726
- container2,
3727
- anchor2,
3728
- parentComponent,
3729
- parentSuspense,
3730
- namespace,
3731
- slotScopeIds,
3732
- optimized
3733
- );
3734
- }
3735
- };
3736
- const mountToTarget = () => {
3737
- const target = n2.target = resolveTarget(n2.props, querySelector);
3738
- const targetAnchor = prepareAnchor(target, n2, createText, insert);
3739
- if (target) {
3740
- if (namespace !== "svg" && isTargetSVG(target)) {
3741
- namespace = "svg";
3742
- } else if (namespace !== "mathml" && isTargetMathML(target)) {
3743
- namespace = "mathml";
3744
- }
3745
- if (parentComponent && parentComponent.isCE) {
3746
- (parentComponent.ce._teleportTargets || (parentComponent.ce._teleportTargets = /* @__PURE__ */ new Set())).add(target);
3747
- }
3748
- if (!disabled) {
3749
- mount(target, targetAnchor);
3750
- updateCssVars(n2, false);
3751
- }
3752
- } else if (!!(process.env.NODE_ENV !== "production") && !disabled) {
3753
- warn$1(
3754
- "Invalid Teleport target on mount:",
3755
- target,
3756
- `(${typeof target})`
3757
- );
3758
- }
3759
- };
3778
+ if (isTeleportDeferred(n2.props) || parentSuspense && parentSuspense.pendingBranch) {
3779
+ queuePendingMount(n2);
3780
+ return;
3781
+ }
3760
3782
  if (disabled) {
3761
- mount(container, mainAnchor);
3783
+ mount(n2, container, mainAnchor);
3762
3784
  updateCssVars(n2, true);
3763
3785
  }
3764
- if (isTeleportDeferred(n2.props)) {
3765
- n2.el.__isMounted = false;
3766
- queuePostRenderEffect(() => {
3767
- mountToTarget();
3768
- delete n2.el.__isMounted;
3769
- }, parentSuspense);
3770
- } else {
3771
- mountToTarget();
3772
- }
3786
+ mountToTarget();
3773
3787
  } else {
3774
- if (isTeleportDeferred(n2.props) && n1.el.__isMounted === false) {
3775
- queuePostRenderEffect(() => {
3776
- TeleportImpl.process(
3777
- n1,
3778
- n2,
3779
- container,
3780
- anchor,
3781
- parentComponent,
3782
- parentSuspense,
3783
- namespace,
3784
- slotScopeIds,
3785
- optimized,
3786
- internals
3787
- );
3788
- }, parentSuspense);
3788
+ n2.el = n1.el;
3789
+ const mainAnchor = n2.anchor = n1.anchor;
3790
+ const pendingMount = pendingMounts.get(n1);
3791
+ if (pendingMount) {
3792
+ pendingMount.flags |= 8;
3793
+ pendingMounts.delete(n1);
3794
+ queuePendingMount(n2);
3789
3795
  return;
3790
3796
  }
3791
- n2.el = n1.el;
3792
3797
  n2.targetStart = n1.targetStart;
3793
- const mainAnchor = n2.anchor = n1.anchor;
3794
3798
  const target = n2.target = n1.target;
3795
3799
  const targetAnchor = n2.targetAnchor = n1.targetAnchor;
3796
3800
  const wasDisabled = isTeleportDisabled(n1.props);
@@ -3883,13 +3887,19 @@ const TeleportImpl = {
3883
3887
  target,
3884
3888
  props
3885
3889
  } = vnode;
3890
+ let shouldRemove = doRemove || !isTeleportDisabled(props);
3891
+ const pendingMount = pendingMounts.get(vnode);
3892
+ if (pendingMount) {
3893
+ pendingMount.flags |= 8;
3894
+ pendingMounts.delete(vnode);
3895
+ shouldRemove = false;
3896
+ }
3886
3897
  if (target) {
3887
3898
  hostRemove(targetStart);
3888
3899
  hostRemove(targetAnchor);
3889
3900
  }
3890
3901
  doRemove && hostRemove(anchor);
3891
3902
  if (shapeFlag & 16) {
3892
- const shouldRemove = doRemove || !isTeleportDisabled(props);
3893
3903
  for (let i = 0; i < children.length; i++) {
3894
3904
  const child = children[i];
3895
3905
  unmount(
@@ -4259,7 +4269,7 @@ function resolveTransitionHooks(vnode, props, state, instance, postClone) {
4259
4269
  callHook(hook, [el]);
4260
4270
  },
4261
4271
  enter(el) {
4262
- if (leavingVNodesCache[key] === vnode) return;
4272
+ if (!isHmrUpdating && leavingVNodesCache[key] === vnode) return;
4263
4273
  let hook = onEnter;
4264
4274
  let afterHook = onAfterEnter;
4265
4275
  let cancelHook = onEnterCancelled;
@@ -7470,7 +7480,7 @@ function createCompatVue$1(createApp, createSingletonApp) {
7470
7480
  return vm;
7471
7481
  }
7472
7482
  }
7473
- Vue.version = `2.6.14-compat:${"3.5.30"}`;
7483
+ Vue.version = `2.6.14-compat:${"3.5.32"}`;
7474
7484
  Vue.config = singletonApp.config;
7475
7485
  Vue.use = (plugin, ...options) => {
7476
7486
  if (plugin && isFunction(plugin.install)) {
@@ -8631,11 +8641,12 @@ function hasPropValueChanged(nextProps, prevProps, key) {
8631
8641
  }
8632
8642
  return nextProp !== prevProp;
8633
8643
  }
8634
- function updateHOCHostEl({ vnode, parent }, el) {
8644
+ function updateHOCHostEl({ vnode, parent, suspense }, el) {
8635
8645
  while (parent) {
8636
8646
  const root = parent.subTree;
8637
8647
  if (root.suspense && root.suspense.activeBranch === vnode) {
8638
- root.el = vnode.el;
8648
+ root.suspense.vnode.el = root.el = el;
8649
+ vnode = root;
8639
8650
  }
8640
8651
  if (root === vnode) {
8641
8652
  (vnode = parent.vnode).el = el;
@@ -8644,6 +8655,9 @@ function updateHOCHostEl({ vnode, parent }, el) {
8644
8655
  break;
8645
8656
  }
8646
8657
  }
8658
+ if (suspense && suspense.activeBranch === vnode) {
8659
+ suspense.vnode.el = el;
8660
+ }
8647
8661
  }
8648
8662
 
8649
8663
  function createPropsDefaultThis(instance, rawProps, propKey) {
@@ -9584,10 +9598,17 @@ function baseCreateRenderer(options, createHydrationFns) {
9584
9598
  }
9585
9599
  hostInsert(el, container, anchor);
9586
9600
  if ((vnodeHook = props && props.onVnodeMounted) || needCallTransitionHooks || dirs) {
9601
+ const isHmr = !!(process.env.NODE_ENV !== "production") && isHmrUpdating;
9587
9602
  queuePostRenderEffect(() => {
9588
- vnodeHook && invokeVNodeHook(vnodeHook, parentComponent, vnode);
9589
- needCallTransitionHooks && transition.enter(el);
9590
- dirs && invokeDirectiveHook(vnode, null, parentComponent, "mounted");
9603
+ let prev;
9604
+ if (!!(process.env.NODE_ENV !== "production")) prev = setHmrUpdating(isHmr);
9605
+ try {
9606
+ vnodeHook && invokeVNodeHook(vnodeHook, parentComponent, vnode);
9607
+ needCallTransitionHooks && transition.enter(el);
9608
+ dirs && invokeDirectiveHook(vnode, null, parentComponent, "mounted");
9609
+ } finally {
9610
+ if (!!(process.env.NODE_ENV !== "production")) setHmrUpdating(prev);
9611
+ }
9591
9612
  }, parentSuspense);
9592
9613
  }
9593
9614
  };
@@ -10544,7 +10565,8 @@ function baseCreateRenderer(options, createHydrationFns) {
10544
10565
  shapeFlag,
10545
10566
  patchFlag,
10546
10567
  dirs,
10547
- cacheIndex
10568
+ cacheIndex,
10569
+ memo
10548
10570
  } = vnode;
10549
10571
  if (patchFlag === -2) {
10550
10572
  optimized = false;
@@ -10606,10 +10628,14 @@ function baseCreateRenderer(options, createHydrationFns) {
10606
10628
  remove(vnode);
10607
10629
  }
10608
10630
  }
10609
- if (shouldInvokeVnodeHook && (vnodeHook = props && props.onVnodeUnmounted) || shouldInvokeDirs) {
10631
+ const shouldInvalidateMemo = memo != null && cacheIndex == null;
10632
+ if (shouldInvokeVnodeHook && (vnodeHook = props && props.onVnodeUnmounted) || shouldInvokeDirs || shouldInvalidateMemo) {
10610
10633
  queuePostRenderEffect(() => {
10611
10634
  vnodeHook && invokeVNodeHook(vnodeHook, parentComponent, vnode);
10612
10635
  shouldInvokeDirs && invokeDirectiveHook(vnode, null, parentComponent, "unmounted");
10636
+ if (shouldInvalidateMemo) {
10637
+ vnode.el = null;
10638
+ }
10613
10639
  }, parentSuspense);
10614
10640
  }
10615
10641
  };
@@ -11172,6 +11198,7 @@ function createSuspenseBoundary(vnode, parentSuspense, parentComponent, containe
11172
11198
  pendingId: suspenseId++,
11173
11199
  timeout: typeof timeout === "number" ? timeout : -1,
11174
11200
  activeBranch: null,
11201
+ isFallbackMountPending: false,
11175
11202
  pendingBranch: null,
11176
11203
  isInFallback: !isHydrating,
11177
11204
  isHydrating,
@@ -11221,7 +11248,7 @@ function createSuspenseBoundary(vnode, parentSuspense, parentComponent, containe
11221
11248
  }
11222
11249
  };
11223
11250
  }
11224
- if (activeBranch) {
11251
+ if (activeBranch && !suspense.isFallbackMountPending) {
11225
11252
  if (parentNode(activeBranch.el) === container2) {
11226
11253
  anchor = next(activeBranch);
11227
11254
  }
@@ -11234,6 +11261,7 @@ function createSuspenseBoundary(vnode, parentSuspense, parentComponent, containe
11234
11261
  move(pendingBranch, container2, anchor, 0);
11235
11262
  }
11236
11263
  }
11264
+ suspense.isFallbackMountPending = false;
11237
11265
  setActiveBranch(suspense, pendingBranch);
11238
11266
  suspense.pendingBranch = null;
11239
11267
  suspense.isInFallback = false;
@@ -11269,6 +11297,7 @@ function createSuspenseBoundary(vnode, parentSuspense, parentComponent, containe
11269
11297
  triggerEvent(vnode2, "onFallback");
11270
11298
  const anchor2 = next(activeBranch);
11271
11299
  const mountFallback = () => {
11300
+ suspense.isFallbackMountPending = false;
11272
11301
  if (!suspense.isInFallback) {
11273
11302
  return;
11274
11303
  }
@@ -11288,6 +11317,7 @@ function createSuspenseBoundary(vnode, parentSuspense, parentComponent, containe
11288
11317
  };
11289
11318
  const delayEnter = fallbackVNode.transition && fallbackVNode.transition.mode === "out-in";
11290
11319
  if (delayEnter) {
11320
+ suspense.isFallbackMountPending = true;
11291
11321
  activeBranch.transition.afterLeave = mountFallback;
11292
11322
  }
11293
11323
  suspense.isInFallback = true;
@@ -11322,6 +11352,7 @@ function createSuspenseBoundary(vnode, parentSuspense, parentComponent, containe
11322
11352
  if (instance.isUnmounted || suspense.isUnmounted || suspense.pendingId !== instance.suspenseId) {
11323
11353
  return;
11324
11354
  }
11355
+ unsetCurrentInstance();
11325
11356
  instance.asyncResolved = true;
11326
11357
  const { vnode: vnode2 } = instance;
11327
11358
  if (!!(process.env.NODE_ENV !== "production")) {
@@ -11905,6 +11936,10 @@ function mergeProps(...args) {
11905
11936
  const incoming = toMerge[key];
11906
11937
  if (incoming && existing !== incoming && !(isArray(existing) && existing.includes(incoming))) {
11907
11938
  ret[key] = existing ? [].concat(existing, incoming) : incoming;
11939
+ } else if (incoming == null && existing == null && // mergeProps({ 'onUpdate:modelValue': undefined }) should not retain
11940
+ // the model listener.
11941
+ !isModelListener(key)) {
11942
+ ret[key] = incoming;
11908
11943
  }
11909
11944
  } else if (key !== "") {
11910
11945
  ret[key] = toMerge[key];
@@ -12615,7 +12650,7 @@ function isMemoSame(cached, memo) {
12615
12650
  return true;
12616
12651
  }
12617
12652
 
12618
- const version = "3.5.30";
12653
+ const version = "3.5.32";
12619
12654
  const warn = !!(process.env.NODE_ENV !== "production") ? warn$1 : NOOP;
12620
12655
  const ErrorTypeStrings = ErrorTypeStrings$1 ;
12621
12656
  const devtools = !!(process.env.NODE_ENV !== "production") || true ? devtools$1 : void 0;
@@ -14303,7 +14338,8 @@ const vModelText = {
14303
14338
  if (elValue === newValue) {
14304
14339
  return;
14305
14340
  }
14306
- if (document.activeElement === el && el.type !== "range") {
14341
+ const rootNode = el.getRootNode();
14342
+ if ((rootNode instanceof Document || rootNode instanceof ShadowRoot) && rootNode.activeElement === el && el.type !== "range") {
14307
14343
  if (lazy && value === oldValue) {
14308
14344
  return;
14309
14345
  }