@vue/compat 3.5.30 → 3.5.31

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.31
3
3
  * (c) 2018-present Yuxi (Evan) You and Vue contributors
4
4
  * @license MIT
5
5
  **/
@@ -1879,16 +1879,16 @@ function toRefs(object) {
1879
1879
  return ret;
1880
1880
  }
1881
1881
  class ObjectRefImpl {
1882
- constructor(_object, _key, _defaultValue) {
1882
+ constructor(_object, key, _defaultValue) {
1883
1883
  this._object = _object;
1884
- this._key = _key;
1885
1884
  this._defaultValue = _defaultValue;
1886
1885
  this["__v_isRef"] = true;
1887
1886
  this._value = void 0;
1887
+ this._key = isSymbol(key) ? key : String(key);
1888
1888
  this._raw = toRaw(_object);
1889
1889
  let shallow = true;
1890
1890
  let obj = _object;
1891
- if (!isArray(_object) || !isIntegerKey(String(_key))) {
1891
+ if (!isArray(_object) || isSymbol(this._key) || !isIntegerKey(this._key)) {
1892
1892
  do {
1893
1893
  shallow = !isProxy(obj) || isShallow(obj);
1894
1894
  } while (shallow && (obj = obj["__v_raw"]));
@@ -2688,6 +2688,13 @@ function checkRecursiveUpdates(seen, fn) {
2688
2688
  }
2689
2689
 
2690
2690
  let isHmrUpdating = false;
2691
+ const setHmrUpdating = (v) => {
2692
+ try {
2693
+ return isHmrUpdating;
2694
+ } finally {
2695
+ isHmrUpdating = v;
2696
+ }
2697
+ };
2691
2698
  const hmrDirtyComponents = /* @__PURE__ */ new Map();
2692
2699
  {
2693
2700
  getGlobalThis().__VUE_HMR_RUNTIME__ = {
@@ -3743,9 +3750,10 @@ const TeleportImpl = {
3743
3750
  mount(container, mainAnchor);
3744
3751
  updateCssVars(n2, true);
3745
3752
  }
3746
- if (isTeleportDeferred(n2.props)) {
3753
+ if (isTeleportDeferred(n2.props) || parentSuspense && parentSuspense.pendingBranch) {
3747
3754
  n2.el.__isMounted = false;
3748
3755
  queuePostRenderEffect(() => {
3756
+ if (n2.el.__isMounted !== false) return;
3749
3757
  mountToTarget();
3750
3758
  delete n2.el.__isMounted;
3751
3759
  }, parentSuspense);
@@ -3753,7 +3761,12 @@ const TeleportImpl = {
3753
3761
  mountToTarget();
3754
3762
  }
3755
3763
  } else {
3756
- if (isTeleportDeferred(n2.props) && n1.el.__isMounted === false) {
3764
+ n2.el = n1.el;
3765
+ n2.targetStart = n1.targetStart;
3766
+ const mainAnchor = n2.anchor = n1.anchor;
3767
+ const target = n2.target = n1.target;
3768
+ const targetAnchor = n2.targetAnchor = n1.targetAnchor;
3769
+ if (n1.el.__isMounted === false) {
3757
3770
  queuePostRenderEffect(() => {
3758
3771
  TeleportImpl.process(
3759
3772
  n1,
@@ -3770,11 +3783,6 @@ const TeleportImpl = {
3770
3783
  }, parentSuspense);
3771
3784
  return;
3772
3785
  }
3773
- n2.el = n1.el;
3774
- n2.targetStart = n1.targetStart;
3775
- const mainAnchor = n2.anchor = n1.anchor;
3776
- const target = n2.target = n1.target;
3777
- const targetAnchor = n2.targetAnchor = n1.targetAnchor;
3778
3786
  const wasDisabled = isTeleportDisabled(n1.props);
3779
3787
  const currentContainer = wasDisabled ? container : target;
3780
3788
  const currentAnchor = wasDisabled ? mainAnchor : targetAnchor;
@@ -4240,7 +4248,7 @@ function resolveTransitionHooks(vnode, props, state, instance, postClone) {
4240
4248
  callHook(hook, [el]);
4241
4249
  },
4242
4250
  enter(el) {
4243
- if (leavingVNodesCache[key] === vnode) return;
4251
+ if (!isHmrUpdating && leavingVNodesCache[key] === vnode) return;
4244
4252
  let hook = onEnter;
4245
4253
  let afterHook = onAfterEnter;
4246
4254
  let cancelHook = onEnterCancelled;
@@ -7438,7 +7446,7 @@ function createCompatVue$1(createApp, createSingletonApp) {
7438
7446
  return vm;
7439
7447
  }
7440
7448
  }
7441
- Vue.version = `2.6.14-compat:${"3.5.30"}`;
7449
+ Vue.version = `2.6.14-compat:${"3.5.31"}`;
7442
7450
  Vue.config = singletonApp.config;
7443
7451
  Vue.use = (plugin, ...options) => {
7444
7452
  if (plugin && isFunction(plugin.install)) {
@@ -8597,11 +8605,12 @@ function hasPropValueChanged(nextProps, prevProps, key) {
8597
8605
  }
8598
8606
  return nextProp !== prevProp;
8599
8607
  }
8600
- function updateHOCHostEl({ vnode, parent }, el) {
8608
+ function updateHOCHostEl({ vnode, parent, suspense }, el) {
8601
8609
  while (parent) {
8602
8610
  const root = parent.subTree;
8603
8611
  if (root.suspense && root.suspense.activeBranch === vnode) {
8604
- root.el = vnode.el;
8612
+ root.suspense.vnode.el = root.el = el;
8613
+ vnode = root;
8605
8614
  }
8606
8615
  if (root === vnode) {
8607
8616
  (vnode = parent.vnode).el = el;
@@ -8610,6 +8619,9 @@ function updateHOCHostEl({ vnode, parent }, el) {
8610
8619
  break;
8611
8620
  }
8612
8621
  }
8622
+ if (suspense && suspense.activeBranch === vnode) {
8623
+ suspense.vnode.el = el;
8624
+ }
8613
8625
  }
8614
8626
 
8615
8627
  function createPropsDefaultThis(instance, rawProps, propKey) {
@@ -9523,10 +9535,17 @@ function baseCreateRenderer(options, createHydrationFns) {
9523
9535
  }
9524
9536
  hostInsert(el, container, anchor);
9525
9537
  if ((vnodeHook = props && props.onVnodeMounted) || needCallTransitionHooks || dirs) {
9538
+ const isHmr = isHmrUpdating;
9526
9539
  queuePostRenderEffect(() => {
9527
- vnodeHook && invokeVNodeHook(vnodeHook, parentComponent, vnode);
9528
- needCallTransitionHooks && transition.enter(el);
9529
- dirs && invokeDirectiveHook(vnode, null, parentComponent, "mounted");
9540
+ let prev;
9541
+ prev = setHmrUpdating(isHmr);
9542
+ try {
9543
+ vnodeHook && invokeVNodeHook(vnodeHook, parentComponent, vnode);
9544
+ needCallTransitionHooks && transition.enter(el);
9545
+ dirs && invokeDirectiveHook(vnode, null, parentComponent, "mounted");
9546
+ } finally {
9547
+ setHmrUpdating(prev);
9548
+ }
9530
9549
  }, parentSuspense);
9531
9550
  }
9532
9551
  };
@@ -10472,7 +10491,8 @@ function baseCreateRenderer(options, createHydrationFns) {
10472
10491
  shapeFlag,
10473
10492
  patchFlag,
10474
10493
  dirs,
10475
- cacheIndex
10494
+ cacheIndex,
10495
+ memo
10476
10496
  } = vnode;
10477
10497
  if (patchFlag === -2) {
10478
10498
  optimized = false;
@@ -10534,10 +10554,14 @@ function baseCreateRenderer(options, createHydrationFns) {
10534
10554
  remove(vnode);
10535
10555
  }
10536
10556
  }
10537
- if (shouldInvokeVnodeHook && (vnodeHook = props && props.onVnodeUnmounted) || shouldInvokeDirs) {
10557
+ const shouldInvalidateMemo = memo != null && cacheIndex == null;
10558
+ if (shouldInvokeVnodeHook && (vnodeHook = props && props.onVnodeUnmounted) || shouldInvokeDirs || shouldInvalidateMemo) {
10538
10559
  queuePostRenderEffect(() => {
10539
10560
  vnodeHook && invokeVNodeHook(vnodeHook, parentComponent, vnode);
10540
10561
  shouldInvokeDirs && invokeDirectiveHook(vnode, null, parentComponent, "unmounted");
10562
+ if (shouldInvalidateMemo) {
10563
+ vnode.el = null;
10564
+ }
10541
10565
  }, parentSuspense);
10542
10566
  }
10543
10567
  };
@@ -11100,6 +11124,7 @@ function createSuspenseBoundary(vnode, parentSuspense, parentComponent, containe
11100
11124
  pendingId: suspenseId++,
11101
11125
  timeout: typeof timeout === "number" ? timeout : -1,
11102
11126
  activeBranch: null,
11127
+ isFallbackMountPending: false,
11103
11128
  pendingBranch: null,
11104
11129
  isInFallback: !isHydrating,
11105
11130
  isHydrating,
@@ -11149,7 +11174,7 @@ function createSuspenseBoundary(vnode, parentSuspense, parentComponent, containe
11149
11174
  }
11150
11175
  };
11151
11176
  }
11152
- if (activeBranch) {
11177
+ if (activeBranch && !suspense.isFallbackMountPending) {
11153
11178
  if (parentNode(activeBranch.el) === container2) {
11154
11179
  anchor = next(activeBranch);
11155
11180
  }
@@ -11162,6 +11187,7 @@ function createSuspenseBoundary(vnode, parentSuspense, parentComponent, containe
11162
11187
  move(pendingBranch, container2, anchor, 0);
11163
11188
  }
11164
11189
  }
11190
+ suspense.isFallbackMountPending = false;
11165
11191
  setActiveBranch(suspense, pendingBranch);
11166
11192
  suspense.pendingBranch = null;
11167
11193
  suspense.isInFallback = false;
@@ -11197,6 +11223,7 @@ function createSuspenseBoundary(vnode, parentSuspense, parentComponent, containe
11197
11223
  triggerEvent(vnode2, "onFallback");
11198
11224
  const anchor2 = next(activeBranch);
11199
11225
  const mountFallback = () => {
11226
+ suspense.isFallbackMountPending = false;
11200
11227
  if (!suspense.isInFallback) {
11201
11228
  return;
11202
11229
  }
@@ -11216,6 +11243,7 @@ function createSuspenseBoundary(vnode, parentSuspense, parentComponent, containe
11216
11243
  };
11217
11244
  const delayEnter = fallbackVNode.transition && fallbackVNode.transition.mode === "out-in";
11218
11245
  if (delayEnter) {
11246
+ suspense.isFallbackMountPending = true;
11219
11247
  activeBranch.transition.afterLeave = mountFallback;
11220
11248
  }
11221
11249
  suspense.isInFallback = true;
@@ -11833,6 +11861,10 @@ function mergeProps(...args) {
11833
11861
  const incoming = toMerge[key];
11834
11862
  if (incoming && existing !== incoming && !(isArray(existing) && existing.includes(incoming))) {
11835
11863
  ret[key] = existing ? [].concat(existing, incoming) : incoming;
11864
+ } else if (incoming == null && existing == null && // mergeProps({ 'onUpdate:modelValue': undefined }) should not retain
11865
+ // the model listener.
11866
+ !isModelListener(key)) {
11867
+ ret[key] = incoming;
11836
11868
  }
11837
11869
  } else if (key !== "") {
11838
11870
  ret[key] = toMerge[key];
@@ -12529,7 +12561,7 @@ function isMemoSame(cached, memo) {
12529
12561
  return true;
12530
12562
  }
12531
12563
 
12532
- const version = "3.5.30";
12564
+ const version = "3.5.31";
12533
12565
  const warn = warn$1 ;
12534
12566
  const ErrorTypeStrings = ErrorTypeStrings$1 ;
12535
12567
  const devtools = devtools$1 ;
@@ -14217,7 +14249,8 @@ const vModelText = {
14217
14249
  if (elValue === newValue) {
14218
14250
  return;
14219
14251
  }
14220
- if (document.activeElement === el && el.type !== "range") {
14252
+ const rootNode = el.getRootNode();
14253
+ if ((rootNode instanceof Document || rootNode instanceof ShadowRoot) && rootNode.activeElement === el && el.type !== "range") {
14221
14254
  if (lazy && value === oldValue) {
14222
14255
  return;
14223
14256
  }