@vue/runtime-dom 3.5.12 → 3.5.14

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/runtime-dom v3.5.12
2
+ * @vue/runtime-dom v3.5.14
3
3
  * (c) 2018-present Yuxi (Evan) You and Vue contributors
4
4
  * @license MIT
5
5
  **/
@@ -141,10 +141,9 @@ function parseStringStyle(cssText) {
141
141
  return ret;
142
142
  }
143
143
  function stringifyStyle(styles) {
144
+ if (!styles) return "";
145
+ if (isString(styles)) return styles;
144
146
  let ret = "";
145
- if (!styles || isString(styles)) {
146
- return ret;
147
- }
148
147
  for (const key in styles) {
149
148
  const value = styles[key];
150
149
  if (isString(value) || typeof value === "number") {
@@ -324,6 +323,10 @@ class EffectScope {
324
323
  * @internal
325
324
  */
326
325
  this._active = true;
326
+ /**
327
+ * @internal track `on` calls, allow `on` call multiple times
328
+ */
329
+ this._on = 0;
327
330
  /**
328
331
  * @internal
329
332
  */
@@ -394,28 +397,38 @@ class EffectScope {
394
397
  * @internal
395
398
  */
396
399
  on() {
397
- activeEffectScope = this;
400
+ if (++this._on === 1) {
401
+ this.prevScope = activeEffectScope;
402
+ activeEffectScope = this;
403
+ }
398
404
  }
399
405
  /**
400
406
  * This should only be called on non-detached scopes
401
407
  * @internal
402
408
  */
403
409
  off() {
404
- activeEffectScope = this.parent;
410
+ if (this._on > 0 && --this._on === 0) {
411
+ activeEffectScope = this.prevScope;
412
+ this.prevScope = void 0;
413
+ }
405
414
  }
406
415
  stop(fromParent) {
407
416
  if (this._active) {
417
+ this._active = false;
408
418
  let i, l;
409
419
  for (i = 0, l = this.effects.length; i < l; i++) {
410
420
  this.effects[i].stop();
411
421
  }
422
+ this.effects.length = 0;
412
423
  for (i = 0, l = this.cleanups.length; i < l; i++) {
413
424
  this.cleanups[i]();
414
425
  }
426
+ this.cleanups.length = 0;
415
427
  if (this.scopes) {
416
428
  for (i = 0, l = this.scopes.length; i < l; i++) {
417
429
  this.scopes[i].stop(true);
418
430
  }
431
+ this.scopes.length = 0;
419
432
  }
420
433
  if (!this.detached && this.parent && !fromParent) {
421
434
  const last = this.parent.scopes.pop();
@@ -425,7 +438,6 @@ class EffectScope {
425
438
  }
426
439
  }
427
440
  this.parent = void 0;
428
- this._active = false;
429
441
  }
430
442
  }
431
443
  }
@@ -480,7 +492,7 @@ class ReactiveEffect {
480
492
  }
481
493
  resume() {
482
494
  if (this.flags & 64) {
483
- this.flags &= ~64;
495
+ this.flags &= -65;
484
496
  if (pausedQueueEffects.has(this)) {
485
497
  pausedQueueEffects.delete(this);
486
498
  this.trigger();
@@ -520,7 +532,7 @@ class ReactiveEffect {
520
532
  cleanupDeps(this);
521
533
  activeSub = prevEffect;
522
534
  shouldTrack = prevShouldTrack;
523
- this.flags &= ~2;
535
+ this.flags &= -3;
524
536
  }
525
537
  }
526
538
  stop() {
@@ -531,7 +543,7 @@ class ReactiveEffect {
531
543
  this.deps = this.depsTail = void 0;
532
544
  cleanupEffect(this);
533
545
  this.onStop && this.onStop();
534
- this.flags &= ~1;
546
+ this.flags &= -2;
535
547
  }
536
548
  }
537
549
  trigger() {
@@ -581,7 +593,7 @@ function endBatch() {
581
593
  while (e) {
582
594
  const next = e.next;
583
595
  e.next = void 0;
584
- e.flags &= ~8;
596
+ e.flags &= -9;
585
597
  e = next;
586
598
  }
587
599
  }
@@ -592,7 +604,7 @@ function endBatch() {
592
604
  while (e) {
593
605
  const next = e.next;
594
606
  e.next = void 0;
595
- e.flags &= ~8;
607
+ e.flags &= -9;
596
608
  if (e.flags & 1) {
597
609
  try {
598
610
  ;
@@ -648,17 +660,16 @@ function refreshComputed(computed) {
648
660
  if (computed.flags & 4 && !(computed.flags & 16)) {
649
661
  return;
650
662
  }
651
- computed.flags &= ~16;
663
+ computed.flags &= -17;
652
664
  if (computed.globalVersion === globalVersion) {
653
665
  return;
654
666
  }
655
667
  computed.globalVersion = globalVersion;
656
- const dep = computed.dep;
657
- computed.flags |= 2;
658
- if (dep.version > 0 && !computed.isSSR && computed.deps && !isDirty(computed)) {
659
- computed.flags &= ~2;
668
+ if (!computed.isSSR && computed.flags & 128 && (!computed.deps && !computed._dirty || !isDirty(computed))) {
660
669
  return;
661
670
  }
671
+ computed.flags |= 2;
672
+ const dep = computed.dep;
662
673
  const prevSub = activeSub;
663
674
  const prevShouldTrack = shouldTrack;
664
675
  activeSub = computed;
@@ -667,6 +678,7 @@ function refreshComputed(computed) {
667
678
  prepareDeps(computed);
668
679
  const value = computed.fn(computed._value);
669
680
  if (dep.version === 0 || hasChanged(value, computed._value)) {
681
+ computed.flags |= 128;
670
682
  computed._value = value;
671
683
  dep.version++;
672
684
  }
@@ -677,7 +689,7 @@ function refreshComputed(computed) {
677
689
  activeSub = prevSub;
678
690
  shouldTrack = prevShouldTrack;
679
691
  cleanupDeps(computed);
680
- computed.flags &= ~2;
692
+ computed.flags &= -3;
681
693
  }
682
694
  }
683
695
  function removeSub(link, soft = false) {
@@ -696,7 +708,7 @@ function removeSub(link, soft = false) {
696
708
  if (dep.subs === link) {
697
709
  dep.subs = prevSub;
698
710
  if (!prevSub && dep.computed) {
699
- dep.computed.flags &= ~4;
711
+ dep.computed.flags &= -5;
700
712
  for (let l = dep.computed.deps; l; l = l.nextDep) {
701
713
  removeSub(l, true);
702
714
  }
@@ -1191,6 +1203,7 @@ class BaseReactiveHandler {
1191
1203
  this._isShallow = _isShallow;
1192
1204
  }
1193
1205
  get(target, key, receiver) {
1206
+ if (key === "__v_skip") return target["__v_skip"];
1194
1207
  const isReadonly2 = this._isReadonly, isShallow2 = this._isShallow;
1195
1208
  if (key === "__v_isReactive") {
1196
1209
  return !isReadonly2;
@@ -1628,14 +1641,14 @@ function createReactiveObject(target, isReadonly2, baseHandlers, collectionHandl
1628
1641
  if (target["__v_raw"] && !(isReadonly2 && target["__v_isReactive"])) {
1629
1642
  return target;
1630
1643
  }
1631
- const existingProxy = proxyMap.get(target);
1632
- if (existingProxy) {
1633
- return existingProxy;
1634
- }
1635
1644
  const targetType = getTargetType(target);
1636
1645
  if (targetType === 0 /* INVALID */) {
1637
1646
  return target;
1638
1647
  }
1648
+ const existingProxy = proxyMap.get(target);
1649
+ if (existingProxy) {
1650
+ return existingProxy;
1651
+ }
1639
1652
  const proxy = new Proxy(
1640
1653
  target,
1641
1654
  targetType === 2 /* COLLECTION */ ? collectionHandlers : baseHandlers
@@ -2027,7 +2040,7 @@ function watch$1(source, cb, options = EMPTY_OBJ) {
2027
2040
  const scope = getCurrentScope();
2028
2041
  const watchHandle = () => {
2029
2042
  effect.stop();
2030
- if (scope) {
2043
+ if (scope && scope.active) {
2031
2044
  remove(scope.effects, effect);
2032
2045
  }
2033
2046
  };
@@ -2479,11 +2492,11 @@ function flushPreFlushCbs(instance, seen, i = flushIndex + 1) {
2479
2492
  queue.splice(i, 1);
2480
2493
  i--;
2481
2494
  if (cb.flags & 4) {
2482
- cb.flags &= ~1;
2495
+ cb.flags &= -2;
2483
2496
  }
2484
2497
  cb();
2485
2498
  if (!(cb.flags & 4)) {
2486
- cb.flags &= ~1;
2499
+ cb.flags &= -2;
2487
2500
  }
2488
2501
  }
2489
2502
  }
@@ -2508,10 +2521,10 @@ function flushPostFlushCbs(seen) {
2508
2521
  continue;
2509
2522
  }
2510
2523
  if (cb.flags & 4) {
2511
- cb.flags &= ~1;
2524
+ cb.flags &= -2;
2512
2525
  }
2513
2526
  if (!(cb.flags & 8)) cb();
2514
- cb.flags &= ~1;
2527
+ cb.flags &= -2;
2515
2528
  }
2516
2529
  activePostFlushCbs = null;
2517
2530
  postFlushIndex = 0;
@@ -2547,7 +2560,7 @@ function flushJobs(seen) {
2547
2560
  for (; flushIndex < queue.length; flushIndex++) {
2548
2561
  const job = queue[flushIndex];
2549
2562
  if (job) {
2550
- job.flags &= ~1;
2563
+ job.flags &= -2;
2551
2564
  }
2552
2565
  }
2553
2566
  flushIndex = -1;
@@ -2987,11 +3000,32 @@ const TeleportImpl = {
2987
3000
  updateCssVars(n2, true);
2988
3001
  }
2989
3002
  if (isTeleportDeferred(n2.props)) {
2990
- queuePostRenderEffect(mountToTarget, parentSuspense);
3003
+ queuePostRenderEffect(() => {
3004
+ mountToTarget();
3005
+ n2.el.__isMounted = true;
3006
+ }, parentSuspense);
2991
3007
  } else {
2992
3008
  mountToTarget();
2993
3009
  }
2994
3010
  } else {
3011
+ if (isTeleportDeferred(n2.props) && !n1.el.__isMounted) {
3012
+ queuePostRenderEffect(() => {
3013
+ TeleportImpl.process(
3014
+ n1,
3015
+ n2,
3016
+ container,
3017
+ anchor,
3018
+ parentComponent,
3019
+ parentSuspense,
3020
+ namespace,
3021
+ slotScopeIds,
3022
+ optimized,
3023
+ internals
3024
+ );
3025
+ delete n1.el.__isMounted;
3026
+ }, parentSuspense);
3027
+ return;
3028
+ }
2995
3029
  n2.el = n1.el;
2996
3030
  n2.targetStart = n1.targetStart;
2997
3031
  const mainAnchor = n2.anchor = n1.anchor;
@@ -3015,7 +3049,7 @@ const TeleportImpl = {
3015
3049
  namespace,
3016
3050
  slotScopeIds
3017
3051
  );
3018
- traverseStaticChildren(n1, n2, true);
3052
+ traverseStaticChildren(n1, n2, false);
3019
3053
  } else if (!optimized) {
3020
3054
  patchChildren(
3021
3055
  n1,
@@ -3297,10 +3331,9 @@ const BaseTransitionImpl = {
3297
3331
  if (innerChild.type !== Comment) {
3298
3332
  setTransitionHooks(innerChild, enterHooks);
3299
3333
  }
3300
- const oldChild = instance.subTree;
3301
- const oldInnerChild = oldChild && getInnerChild$1(oldChild);
3334
+ let oldInnerChild = instance.subTree && getInnerChild$1(instance.subTree);
3302
3335
  if (oldInnerChild && oldInnerChild.type !== Comment && !isSameVNodeType(innerChild, oldInnerChild) && recursiveGetSubtree(instance).type !== Comment) {
3303
- const leavingHooks = resolveTransitionHooks(
3336
+ let leavingHooks = resolveTransitionHooks(
3304
3337
  oldInnerChild,
3305
3338
  rawProps,
3306
3339
  state,
@@ -3315,6 +3348,7 @@ const BaseTransitionImpl = {
3315
3348
  instance.update();
3316
3349
  }
3317
3350
  delete leavingHooks.afterLeave;
3351
+ oldInnerChild = void 0;
3318
3352
  };
3319
3353
  return emptyPlaceholder(child);
3320
3354
  } else if (mode === "in-out" && innerChild.type !== Comment) {
@@ -3328,10 +3362,19 @@ const BaseTransitionImpl = {
3328
3362
  earlyRemove();
3329
3363
  el[leaveCbKey] = void 0;
3330
3364
  delete enterHooks.delayedLeave;
3365
+ oldInnerChild = void 0;
3366
+ };
3367
+ enterHooks.delayedLeave = () => {
3368
+ delayedLeave();
3369
+ delete enterHooks.delayedLeave;
3370
+ oldInnerChild = void 0;
3331
3371
  };
3332
- enterHooks.delayedLeave = delayedLeave;
3333
3372
  };
3373
+ } else {
3374
+ oldInnerChild = void 0;
3334
3375
  }
3376
+ } else if (oldInnerChild) {
3377
+ oldInnerChild = void 0;
3335
3378
  }
3336
3379
  return child;
3337
3380
  };
@@ -3636,6 +3679,9 @@ function setRef(rawRef, oldRawRef, parentSuspense, vnode, isUnmount = false) {
3636
3679
  return;
3637
3680
  }
3638
3681
  if (isAsyncWrapper(vnode) && !isUnmount) {
3682
+ if (vnode.shapeFlag & 512 && vnode.type.__asyncResolved && vnode.component.subTree.component) {
3683
+ setRef(rawRef, oldRawRef, parentSuspense, vnode.component.subTree);
3684
+ }
3639
3685
  return;
3640
3686
  }
3641
3687
  const refValue = vnode.shapeFlag & 4 ? getComponentPublicInstance(vnode.component) : vnode.el;
@@ -3900,7 +3946,7 @@ function createHydrationFunctions(rendererInternals) {
3900
3946
  getContainerType(container),
3901
3947
  optimized
3902
3948
  );
3903
- if (isAsyncWrapper(vnode)) {
3949
+ if (isAsyncWrapper(vnode) && !vnode.type.__asyncResolved) {
3904
3950
  let subTree;
3905
3951
  if (isFragmentStart) {
3906
3952
  subTree = createVNode(Fragment);
@@ -4169,6 +4215,10 @@ Server rendered element contains fewer child nodes than client vdom.`
4169
4215
  getContainerType(container),
4170
4216
  slotScopeIds
4171
4217
  );
4218
+ if (parentComponent) {
4219
+ parentComponent.vnode.el = vnode.el;
4220
+ updateHOCHostEl(parentComponent, vnode.el);
4221
+ }
4172
4222
  return next;
4173
4223
  };
4174
4224
  const locateClosingAnchor = (node, open = "[", close = "]") => {
@@ -4684,6 +4734,9 @@ const KeepAliveImpl = {
4684
4734
  {
4685
4735
  devtoolsComponentAdded(instance2);
4686
4736
  }
4737
+ {
4738
+ instance2.__keepAliveStorageContainer = storageContainer;
4739
+ }
4687
4740
  };
4688
4741
  function unmount(vnode) {
4689
4742
  resetShapeFlag(vnode);
@@ -4771,7 +4824,7 @@ const KeepAliveImpl = {
4771
4824
  );
4772
4825
  const { include, exclude, max } = props;
4773
4826
  if (include && (!name || !matches(include, name)) || exclude && name && matches(exclude, name)) {
4774
- vnode.shapeFlag &= ~256;
4827
+ vnode.shapeFlag &= -257;
4775
4828
  current = vnode;
4776
4829
  return rawVNode;
4777
4830
  }
@@ -4858,8 +4911,8 @@ function injectToKeepAliveRoot(hook, type, target, keepAliveRoot) {
4858
4911
  }, target);
4859
4912
  }
4860
4913
  function resetShapeFlag(vnode) {
4861
- vnode.shapeFlag &= ~256;
4862
- vnode.shapeFlag &= ~512;
4914
+ vnode.shapeFlag &= -257;
4915
+ vnode.shapeFlag &= -513;
4863
4916
  }
4864
4917
  function getInnerChild(vnode) {
4865
4918
  return vnode.shapeFlag & 128 ? vnode.ssContent : vnode;
@@ -4974,14 +5027,16 @@ function renderList(source, renderItem, cache, index) {
4974
5027
  if (sourceIsArray || isString(source)) {
4975
5028
  const sourceIsReactiveArray = sourceIsArray && isReactive(source);
4976
5029
  let needsWrap = false;
5030
+ let isReadonlySource = false;
4977
5031
  if (sourceIsReactiveArray) {
4978
5032
  needsWrap = !isShallow(source);
5033
+ isReadonlySource = isReadonly(source);
4979
5034
  source = shallowReadArray(source);
4980
5035
  }
4981
5036
  ret = new Array(source.length);
4982
5037
  for (let i = 0, l = source.length; i < l; i++) {
4983
5038
  ret[i] = renderItem(
4984
- needsWrap ? toReactive(source[i]) : source[i],
5039
+ needsWrap ? isReadonlySource ? toReadonly(toReactive(source[i])) : toReactive(source[i]) : source[i],
4985
5040
  i,
4986
5041
  void 0,
4987
5042
  cached && cached[i]
@@ -6003,11 +6058,9 @@ function createAppAPI(render, hydrate) {
6003
6058
  }
6004
6059
  {
6005
6060
  context.reload = () => {
6006
- render(
6007
- cloneVNode(vnode),
6008
- rootContainer,
6009
- namespace
6010
- );
6061
+ const cloned = cloneVNode(vnode);
6062
+ cloned.el = null;
6063
+ render(cloned, rootContainer, namespace);
6011
6064
  };
6012
6065
  }
6013
6066
  if (isHydrate && hydrate) {
@@ -6530,7 +6583,7 @@ const normalizeSlot = (key, rawSlot, ctx) => {
6530
6583
  return rawSlot;
6531
6584
  }
6532
6585
  const normalized = withCtx((...args) => {
6533
- if (currentInstance && (!ctx || ctx.root === currentInstance.root)) {
6586
+ if (currentInstance && !(ctx === null && currentRenderingInstance) && !(ctx && ctx.root !== currentInstance.root)) {
6534
6587
  warn$1(
6535
6588
  `Slot "${key}" invoked outside of the render function: this will not track dependencies used in the slot. Invoke the slot function inside the render function instead.`
6536
6589
  );
@@ -6569,7 +6622,7 @@ const normalizeVNodeSlots = (instance, children) => {
6569
6622
  };
6570
6623
  const assignSlots = (slots, children, optimized) => {
6571
6624
  for (const key in children) {
6572
- if (optimized || key !== "_") {
6625
+ if (optimized || !isInternalKey(key)) {
6573
6626
  slots[key] = children[key];
6574
6627
  }
6575
6628
  }
@@ -7255,8 +7308,8 @@ function baseCreateRenderer(options, createHydrationFns) {
7255
7308
  endMeasure(instance, `init`);
7256
7309
  }
7257
7310
  }
7311
+ if (isHmrUpdating) initialVNode.el = null;
7258
7312
  if (instance.asyncDep) {
7259
- if (isHmrUpdating) initialVNode.el = null;
7260
7313
  parentSuspense && parentSuspense.registerDep(instance, setupRenderEffect, optimized);
7261
7314
  if (!initialVNode.el) {
7262
7315
  const placeholder = instance.subTree = createVNode(Comment);
@@ -7818,7 +7871,13 @@ function baseCreateRenderer(options, createHydrationFns) {
7818
7871
  queuePostRenderEffect(() => transition.enter(el), parentSuspense);
7819
7872
  } else {
7820
7873
  const { leave, delayLeave, afterLeave } = transition;
7821
- const remove2 = () => hostInsert(el, container, anchor);
7874
+ const remove2 = () => {
7875
+ if (vnode.ctx.isUnmounted) {
7876
+ hostRemove(el);
7877
+ } else {
7878
+ hostInsert(el, container, anchor);
7879
+ }
7880
+ };
7822
7881
  const performLeave = () => {
7823
7882
  leave(el, () => {
7824
7883
  remove2();
@@ -7851,7 +7910,9 @@ function baseCreateRenderer(options, createHydrationFns) {
7851
7910
  optimized = false;
7852
7911
  }
7853
7912
  if (ref != null) {
7913
+ pauseTracking();
7854
7914
  setRef(ref, null, parentSuspense, vnode, true);
7915
+ resetTracking();
7855
7916
  }
7856
7917
  if (cacheIndex != null) {
7857
7918
  parentComponent.renderCache[cacheIndex] = void 0;
@@ -7963,12 +8024,27 @@ function baseCreateRenderer(options, createHydrationFns) {
7963
8024
  if (instance.type.__hmrId) {
7964
8025
  unregisterHMR(instance);
7965
8026
  }
7966
- const { bum, scope, job, subTree, um, m, a } = instance;
8027
+ const {
8028
+ bum,
8029
+ scope,
8030
+ job,
8031
+ subTree,
8032
+ um,
8033
+ m,
8034
+ a,
8035
+ parent,
8036
+ slots: { __: slotCacheKeys }
8037
+ } = instance;
7967
8038
  invalidateMount(m);
7968
8039
  invalidateMount(a);
7969
8040
  if (bum) {
7970
8041
  invokeArrayFns(bum);
7971
8042
  }
8043
+ if (parent && isArray(slotCacheKeys)) {
8044
+ slotCacheKeys.forEach((v) => {
8045
+ parent.renderCache[v] = void 0;
8046
+ });
8047
+ }
7972
8048
  scope.stop();
7973
8049
  if (job) {
7974
8050
  job.flags |= 8;
@@ -8064,8 +8140,8 @@ function toggleRecurse({ effect, job }, allowed) {
8064
8140
  effect.flags |= 32;
8065
8141
  job.flags |= 4;
8066
8142
  } else {
8067
- effect.flags &= ~32;
8068
- job.flags &= ~4;
8143
+ effect.flags &= -33;
8144
+ job.flags &= -5;
8069
8145
  }
8070
8146
  }
8071
8147
  function needTransition(parentSuspense, transition) {
@@ -8092,6 +8168,9 @@ function traverseStaticChildren(n1, n2, shallow = false) {
8092
8168
  if (c2.type === Comment && !c2.el) {
8093
8169
  c2.el = c1.el;
8094
8170
  }
8171
+ {
8172
+ c2.el && (c2.el.__vnode = c2);
8173
+ }
8095
8174
  }
8096
8175
  }
8097
8176
  }
@@ -8608,7 +8687,7 @@ function renderComponentRoot(instance) {
8608
8687
  }
8609
8688
  if (extraAttrs.length) {
8610
8689
  warn$1(
8611
- `Extraneous non-props attributes (${extraAttrs.join(", ")}) were passed to component but could not be automatically inherited because component renders fragment or text root nodes.`
8690
+ `Extraneous non-props attributes (${extraAttrs.join(", ")}) were passed to component but could not be automatically inherited because component renders fragment or text or teleport root nodes.`
8612
8691
  );
8613
8692
  }
8614
8693
  if (eventAttrs.length) {
@@ -9391,9 +9470,9 @@ function closeBlock() {
9391
9470
  currentBlock = blockStack[blockStack.length - 1] || null;
9392
9471
  }
9393
9472
  let isBlockTreeEnabled = 1;
9394
- function setBlockTracking(value) {
9473
+ function setBlockTracking(value, inVOnce = false) {
9395
9474
  isBlockTreeEnabled += value;
9396
- if (value < 0 && currentBlock) {
9475
+ if (value < 0 && currentBlock && inVOnce) {
9397
9476
  currentBlock.hasOnce = true;
9398
9477
  }
9399
9478
  }
@@ -9437,8 +9516,8 @@ function isSameVNodeType(n1, n2) {
9437
9516
  if (n2.shapeFlag & 6 && n1.component) {
9438
9517
  const dirtyInstances = hmrDirtyComponents.get(n2.type);
9439
9518
  if (dirtyInstances && dirtyInstances.has(n1.component)) {
9440
- n1.shapeFlag &= ~256;
9441
- n2.shapeFlag &= ~512;
9519
+ n1.shapeFlag &= -257;
9520
+ n2.shapeFlag &= -513;
9442
9521
  return false;
9443
9522
  }
9444
9523
  }
@@ -9899,7 +9978,7 @@ function setupComponent(instance, isSSR = false, optimized = false) {
9899
9978
  const { props, children } = instance.vnode;
9900
9979
  const isStateful = isStatefulComponent(instance);
9901
9980
  initProps(instance, props, isStateful, isSSR);
9902
- initSlots(instance, children, optimized);
9981
+ initSlots(instance, children, optimized || isSSR);
9903
9982
  const setupResult = isStateful ? setupStatefulComponent(instance, isSSR) : void 0;
9904
9983
  isSSR && setInSSRSetupState(false);
9905
9984
  return setupResult;
@@ -10230,13 +10309,15 @@ function initCustomFormatter() {
10230
10309
  if (obj.__isVue) {
10231
10310
  return ["div", vueStyle, `VueInstance`];
10232
10311
  } else if (isRef(obj)) {
10312
+ pauseTracking();
10313
+ const value = obj.value;
10314
+ resetTracking();
10233
10315
  return [
10234
10316
  "div",
10235
10317
  {},
10236
10318
  ["span", vueStyle, genRefFlag(obj)],
10237
10319
  "<",
10238
- // avoid debugger accessing value affecting behavior
10239
- formatValue("_value" in obj ? obj._value : obj),
10320
+ formatValue(value),
10240
10321
  `>`
10241
10322
  ];
10242
10323
  } else if (isReactive(obj)) {
@@ -10417,7 +10498,7 @@ function isMemoSame(cached, memo) {
10417
10498
  return true;
10418
10499
  }
10419
10500
 
10420
- const version = "3.5.12";
10501
+ const version = "3.5.14";
10421
10502
  const warn = warn$1 ;
10422
10503
  const ErrorTypeStrings = ErrorTypeStrings$1 ;
10423
10504
  const devtools = devtools$1 ;
@@ -10601,7 +10682,8 @@ function resolveTransitionProps(rawProps) {
10601
10682
  onAppear = onEnter,
10602
10683
  onAppearCancelled = onEnterCancelled
10603
10684
  } = baseProps;
10604
- const finishEnter = (el, isAppear, done) => {
10685
+ const finishEnter = (el, isAppear, done, isCancelled) => {
10686
+ el._enterCancelled = isCancelled;
10605
10687
  removeTransitionClass(el, isAppear ? appearToClass : enterToClass);
10606
10688
  removeTransitionClass(el, isAppear ? appearActiveClass : enterActiveClass);
10607
10689
  done && done();
@@ -10644,8 +10726,13 @@ function resolveTransitionProps(rawProps) {
10644
10726
  el._isLeaving = true;
10645
10727
  const resolve = () => finishLeave(el, done);
10646
10728
  addTransitionClass(el, leaveFromClass);
10647
- addTransitionClass(el, leaveActiveClass);
10648
- forceReflow();
10729
+ if (!el._enterCancelled) {
10730
+ forceReflow();
10731
+ addTransitionClass(el, leaveActiveClass);
10732
+ } else {
10733
+ addTransitionClass(el, leaveActiveClass);
10734
+ forceReflow();
10735
+ }
10649
10736
  nextFrame(() => {
10650
10737
  if (!el._isLeaving) {
10651
10738
  return;
@@ -10659,11 +10746,11 @@ function resolveTransitionProps(rawProps) {
10659
10746
  callHook(onLeave, [el, resolve]);
10660
10747
  },
10661
10748
  onEnterCancelled(el) {
10662
- finishEnter(el, false);
10749
+ finishEnter(el, false, void 0, true);
10663
10750
  callHook(onEnterCancelled, [el]);
10664
10751
  },
10665
10752
  onAppearCancelled(el) {
10666
- finishEnter(el, true);
10753
+ finishEnter(el, true, void 0, true);
10667
10754
  callHook(onAppearCancelled, [el]);
10668
10755
  },
10669
10756
  onLeaveCancelled(el) {
@@ -10883,10 +10970,11 @@ function useCssVars(getter) {
10883
10970
  }
10884
10971
  updateTeleports(vars);
10885
10972
  };
10886
- onBeforeMount(() => {
10887
- watchPostEffect(setVars);
10973
+ onBeforeUpdate(() => {
10974
+ queuePostFlushCb(setVars);
10888
10975
  });
10889
10976
  onMounted(() => {
10977
+ watch(setVars, NOOP, { flush: "post" });
10890
10978
  const ob = new MutationObserver(setVars);
10891
10979
  ob.observe(instance.subTree.el.parentNode, { childList: true });
10892
10980
  onUnmounted(() => ob.disconnect());
@@ -11228,7 +11316,7 @@ function shouldSetAsProp(el, key, value, isSVG) {
11228
11316
  }
11229
11317
  return false;
11230
11318
  }
11231
- if (key === "spellcheck" || key === "draggable" || key === "translate") {
11319
+ if (key === "spellcheck" || key === "draggable" || key === "translate" || key === "autocorrect") {
11232
11320
  return false;
11233
11321
  }
11234
11322
  if (key === "form") {
@@ -11493,6 +11581,8 @@ class VueElement extends BaseClass {
11493
11581
  this._update();
11494
11582
  }
11495
11583
  if (shouldReflect) {
11584
+ const ob = this._ob;
11585
+ ob && ob.disconnect();
11496
11586
  if (val === true) {
11497
11587
  this.setAttribute(hyphenate(key), "");
11498
11588
  } else if (typeof val === "string" || typeof val === "number") {
@@ -11500,6 +11590,7 @@ class VueElement extends BaseClass {
11500
11590
  } else if (!val) {
11501
11591
  this.removeAttribute(hyphenate(key));
11502
11592
  }
11593
+ ob && ob.observe(this, { attributes: true });
11503
11594
  }
11504
11595
  }
11505
11596
  }
@@ -11714,6 +11805,7 @@ const TransitionGroupImpl = /* @__PURE__ */ decorate({
11714
11805
  instance.vnode.el,
11715
11806
  moveClass
11716
11807
  )) {
11808
+ prevChildren = [];
11717
11809
  return;
11718
11810
  }
11719
11811
  prevChildren.forEach(callPendingCbs);
@@ -11737,6 +11829,7 @@ const TransitionGroupImpl = /* @__PURE__ */ decorate({
11737
11829
  };
11738
11830
  el.addEventListener("transitionend", cb);
11739
11831
  });
11832
+ prevChildren = [];
11740
11833
  });
11741
11834
  return () => {
11742
11835
  const rawProps = toRaw(props);