vue 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 v3.5.30
2
+ * vue v3.5.31
3
3
  * (c) 2018-present Yuxi (Evan) You and Vue contributors
4
4
  * @license MIT
5
5
  **/
@@ -1,5 +1,5 @@
1
1
  /**
2
- * vue v3.5.30
2
+ * vue v3.5.31
3
3
  * (c) 2018-present Yuxi (Evan) You and Vue contributors
4
4
  * @license MIT
5
5
  **/
@@ -1955,16 +1955,16 @@ var Vue = (function (exports) {
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 (exports) {
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__ = {
@@ -3322,9 +3329,10 @@ var Vue = (function (exports) {
3322
3329
  mount(container, mainAnchor);
3323
3330
  updateCssVars(n2, true);
3324
3331
  }
3325
- if (isTeleportDeferred(n2.props)) {
3332
+ if (isTeleportDeferred(n2.props) || parentSuspense && parentSuspense.pendingBranch) {
3326
3333
  n2.el.__isMounted = false;
3327
3334
  queuePostRenderEffect(() => {
3335
+ if (n2.el.__isMounted !== false) return;
3328
3336
  mountToTarget();
3329
3337
  delete n2.el.__isMounted;
3330
3338
  }, parentSuspense);
@@ -3332,7 +3340,12 @@ var Vue = (function (exports) {
3332
3340
  mountToTarget();
3333
3341
  }
3334
3342
  } else {
3335
- if (isTeleportDeferred(n2.props) && n1.el.__isMounted === false) {
3343
+ n2.el = n1.el;
3344
+ n2.targetStart = n1.targetStart;
3345
+ const mainAnchor = n2.anchor = n1.anchor;
3346
+ const target = n2.target = n1.target;
3347
+ const targetAnchor = n2.targetAnchor = n1.targetAnchor;
3348
+ if (n1.el.__isMounted === false) {
3336
3349
  queuePostRenderEffect(() => {
3337
3350
  TeleportImpl.process(
3338
3351
  n1,
@@ -3349,11 +3362,6 @@ var Vue = (function (exports) {
3349
3362
  }, parentSuspense);
3350
3363
  return;
3351
3364
  }
3352
- n2.el = n1.el;
3353
- n2.targetStart = n1.targetStart;
3354
- const mainAnchor = n2.anchor = n1.anchor;
3355
- const target = n2.target = n1.target;
3356
- const targetAnchor = n2.targetAnchor = n1.targetAnchor;
3357
3365
  const wasDisabled = isTeleportDisabled(n1.props);
3358
3366
  const currentContainer = wasDisabled ? container : target;
3359
3367
  const currentAnchor = wasDisabled ? mainAnchor : targetAnchor;
@@ -3816,7 +3824,7 @@ var Vue = (function (exports) {
3816
3824
  callHook(hook, [el]);
3817
3825
  },
3818
3826
  enter(el) {
3819
- if (leavingVNodesCache[key] === vnode) return;
3827
+ if (!isHmrUpdating && leavingVNodesCache[key] === vnode) return;
3820
3828
  let hook = onEnter;
3821
3829
  let afterHook = onAfterEnter;
3822
3830
  let cancelHook = onEnterCancelled;
@@ -7051,11 +7059,12 @@ If you want to remount the same app, move your app creation logic into a factory
7051
7059
  }
7052
7060
  return nextProp !== prevProp;
7053
7061
  }
7054
- function updateHOCHostEl({ vnode, parent }, el) {
7062
+ function updateHOCHostEl({ vnode, parent, suspense }, el) {
7055
7063
  while (parent) {
7056
7064
  const root = parent.subTree;
7057
7065
  if (root.suspense && root.suspense.activeBranch === vnode) {
7058
- root.el = vnode.el;
7066
+ root.suspense.vnode.el = root.el = el;
7067
+ vnode = root;
7059
7068
  }
7060
7069
  if (root === vnode) {
7061
7070
  (vnode = parent.vnode).el = el;
@@ -7064,6 +7073,9 @@ If you want to remount the same app, move your app creation logic into a factory
7064
7073
  break;
7065
7074
  }
7066
7075
  }
7076
+ if (suspense && suspense.activeBranch === vnode) {
7077
+ suspense.vnode.el = el;
7078
+ }
7067
7079
  }
7068
7080
 
7069
7081
  const internalObjectProto = {};
@@ -7905,10 +7917,17 @@ If you want to remount the same app, move your app creation logic into a factory
7905
7917
  }
7906
7918
  hostInsert(el, container, anchor);
7907
7919
  if ((vnodeHook = props && props.onVnodeMounted) || needCallTransitionHooks || dirs) {
7920
+ const isHmr = isHmrUpdating;
7908
7921
  queuePostRenderEffect(() => {
7909
- vnodeHook && invokeVNodeHook(vnodeHook, parentComponent, vnode);
7910
- needCallTransitionHooks && transition.enter(el);
7911
- dirs && invokeDirectiveHook(vnode, null, parentComponent, "mounted");
7922
+ let prev;
7923
+ prev = setHmrUpdating(isHmr);
7924
+ try {
7925
+ vnodeHook && invokeVNodeHook(vnodeHook, parentComponent, vnode);
7926
+ needCallTransitionHooks && transition.enter(el);
7927
+ dirs && invokeDirectiveHook(vnode, null, parentComponent, "mounted");
7928
+ } finally {
7929
+ setHmrUpdating(prev);
7930
+ }
7912
7931
  }, parentSuspense);
7913
7932
  }
7914
7933
  };
@@ -8829,7 +8848,8 @@ If you want to remount the same app, move your app creation logic into a factory
8829
8848
  shapeFlag,
8830
8849
  patchFlag,
8831
8850
  dirs,
8832
- cacheIndex
8851
+ cacheIndex,
8852
+ memo
8833
8853
  } = vnode;
8834
8854
  if (patchFlag === -2) {
8835
8855
  optimized = false;
@@ -8891,10 +8911,14 @@ If you want to remount the same app, move your app creation logic into a factory
8891
8911
  remove(vnode);
8892
8912
  }
8893
8913
  }
8894
- if (shouldInvokeVnodeHook && (vnodeHook = props && props.onVnodeUnmounted) || shouldInvokeDirs) {
8914
+ const shouldInvalidateMemo = memo != null && cacheIndex == null;
8915
+ if (shouldInvokeVnodeHook && (vnodeHook = props && props.onVnodeUnmounted) || shouldInvokeDirs || shouldInvalidateMemo) {
8895
8916
  queuePostRenderEffect(() => {
8896
8917
  vnodeHook && invokeVNodeHook(vnodeHook, parentComponent, vnode);
8897
8918
  shouldInvokeDirs && invokeDirectiveHook(vnode, null, parentComponent, "unmounted");
8919
+ if (shouldInvalidateMemo) {
8920
+ vnode.el = null;
8921
+ }
8898
8922
  }, parentSuspense);
8899
8923
  }
8900
8924
  };
@@ -9448,6 +9472,7 @@ If you want to remount the same app, move your app creation logic into a factory
9448
9472
  pendingId: suspenseId++,
9449
9473
  timeout: typeof timeout === "number" ? timeout : -1,
9450
9474
  activeBranch: null,
9475
+ isFallbackMountPending: false,
9451
9476
  pendingBranch: null,
9452
9477
  isInFallback: !isHydrating,
9453
9478
  isHydrating,
@@ -9497,7 +9522,7 @@ If you want to remount the same app, move your app creation logic into a factory
9497
9522
  }
9498
9523
  };
9499
9524
  }
9500
- if (activeBranch) {
9525
+ if (activeBranch && !suspense.isFallbackMountPending) {
9501
9526
  if (parentNode(activeBranch.el) === container2) {
9502
9527
  anchor = next(activeBranch);
9503
9528
  }
@@ -9510,6 +9535,7 @@ If you want to remount the same app, move your app creation logic into a factory
9510
9535
  move(pendingBranch, container2, anchor, 0);
9511
9536
  }
9512
9537
  }
9538
+ suspense.isFallbackMountPending = false;
9513
9539
  setActiveBranch(suspense, pendingBranch);
9514
9540
  suspense.pendingBranch = null;
9515
9541
  suspense.isInFallback = false;
@@ -9545,6 +9571,7 @@ If you want to remount the same app, move your app creation logic into a factory
9545
9571
  triggerEvent(vnode2, "onFallback");
9546
9572
  const anchor2 = next(activeBranch);
9547
9573
  const mountFallback = () => {
9574
+ suspense.isFallbackMountPending = false;
9548
9575
  if (!suspense.isInFallback) {
9549
9576
  return;
9550
9577
  }
@@ -9564,6 +9591,7 @@ If you want to remount the same app, move your app creation logic into a factory
9564
9591
  };
9565
9592
  const delayEnter = fallbackVNode.transition && fallbackVNode.transition.mode === "out-in";
9566
9593
  if (delayEnter) {
9594
+ suspense.isFallbackMountPending = true;
9567
9595
  activeBranch.transition.afterLeave = mountFallback;
9568
9596
  }
9569
9597
  suspense.isInFallback = true;
@@ -10114,6 +10142,10 @@ Component that was made reactive: `,
10114
10142
  const incoming = toMerge[key];
10115
10143
  if (incoming && existing !== incoming && !(isArray(existing) && existing.includes(incoming))) {
10116
10144
  ret[key] = existing ? [].concat(existing, incoming) : incoming;
10145
+ } else if (incoming == null && existing == null && // mergeProps({ 'onUpdate:modelValue': undefined }) should not retain
10146
+ // the model listener.
10147
+ !isModelListener(key)) {
10148
+ ret[key] = incoming;
10117
10149
  }
10118
10150
  } else if (key !== "") {
10119
10151
  ret[key] = toMerge[key];
@@ -10784,7 +10816,7 @@ Component that was made reactive: `,
10784
10816
  return true;
10785
10817
  }
10786
10818
 
10787
- const version = "3.5.30";
10819
+ const version = "3.5.31";
10788
10820
  const warn = warn$1 ;
10789
10821
  const ErrorTypeStrings = ErrorTypeStrings$1 ;
10790
10822
  const devtools = devtools$1 ;
@@ -12344,7 +12376,8 @@ Expected function or array of functions, received type ${typeof value}.`
12344
12376
  if (elValue === newValue) {
12345
12377
  return;
12346
12378
  }
12347
- if (document.activeElement === el && el.type !== "range") {
12379
+ const rootNode = el.getRootNode();
12380
+ if ((rootNode instanceof Document || rootNode instanceof ShadowRoot) && rootNode.activeElement === el && el.type !== "range") {
12348
12381
  if (lazy && value === oldValue) {
12349
12382
  return;
12350
12383
  }
@@ -16335,7 +16368,7 @@ Use a v-bind binding combined with a v-on listener that emits update:x event ins
16335
16368
  loop.body = createBlockStatement([
16336
16369
  createCompoundExpression([`const _memo = (`, memo.exp, `)`]),
16337
16370
  createCompoundExpression([
16338
- `if (_cached`,
16371
+ `if (_cached && _cached.el`,
16339
16372
  ...keyExp ? [` && _cached.key === `, keyExp] : [],
16340
16373
  ` && ${context.helperString(
16341
16374
  IS_MEMO_SAME