@vue/runtime-dom 3.6.0-rc.10 → 3.6.0-rc.11

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.6.0-rc.10
2
+ * @vue/runtime-dom v3.6.0-rc.11
3
3
  * (c) 2018-present Yuxi (Evan) You and Vue contributors
4
4
  * @license MIT
5
5
  **/
@@ -3408,10 +3408,11 @@ var VueRuntimeDOM = (function(exports) {
3408
3408
  onAfterAppear: TransitionHookValidator,
3409
3409
  onAppearCancelled: TransitionHookValidator
3410
3410
  };
3411
- const recursiveGetSubtree = (instance) => {
3412
- const subTree = isVaporComponent(instance.type) ? instance.block : instance.subTree;
3413
- return subTree.component ? recursiveGetSubtree(subTree.component) : subTree;
3414
- };
3411
+ function isEmptyTransitionChild(vnode, instance) {
3412
+ if (vnode.type === Comment) return true;
3413
+ if (vnode.type === VaporSlot || isVaporComponent(vnode.type)) return !getVaporInterface(instance, vnode).hasTransitionChild(vnode);
3414
+ return !!vnode.component && isEmptyTransitionChild(vnode.component.subTree, instance);
3415
+ }
3415
3416
  const BaseTransitionImpl = {
3416
3417
  name: `BaseTransition`,
3417
3418
  props: BaseTransitionPropsValidators,
@@ -3459,7 +3460,7 @@ var VueRuntimeDOM = (function(exports) {
3459
3460
  function resolveTransitionHooks(vnode, props, state, instance, postClone) {
3460
3461
  const key = String(vnode.key);
3461
3462
  const leavingVNodesCache = getLeavingNodesForType(state, vnode);
3462
- return baseResolveTransitionHooks({
3463
+ const hooks = baseResolveTransitionHooks({
3463
3464
  isLeaving: () => leavingVNodesCache[key] === vnode,
3464
3465
  setLeavingNodeCache: () => {
3465
3466
  leavingVNodesCache[key] = vnode;
@@ -3477,6 +3478,13 @@ var VueRuntimeDOM = (function(exports) {
3477
3478
  return hooks;
3478
3479
  }
3479
3480
  }, props, state, instance);
3481
+ if (vnode.type === VaporSlot) extend(hooks, {
3482
+ __vapor: true,
3483
+ props,
3484
+ state,
3485
+ instance
3486
+ });
3487
+ return hooks;
3480
3488
  }
3481
3489
  function baseResolveTransitionHooks(context, props, state, instance) {
3482
3490
  const { isLeaving, setLeavingNodeCache, unsetLeavingNodeCache, earlyRemove, cloneHooks } = context;
@@ -3592,7 +3600,7 @@ var VueRuntimeDOM = (function(exports) {
3592
3600
  if (nextInner.type !== Comment) setTransitionHooks(nextInner, enterHooks);
3593
3601
  const mode = props.mode;
3594
3602
  const previousInner = previous && getInnerChild$1(previous);
3595
- if (previous && previousInner && previousInner.type !== Comment && !isSameVNodeType(previousInner, nextInner) && (!previous.component || recursiveGetSubtree(previous.component).type !== Comment)) {
3603
+ if (previous && previousInner && !isSameVNodeType(previousInner, nextInner) && !isEmptyTransitionChild(previousInner, instance)) {
3596
3604
  const leavingHooks = prepareLeavingTransitionHooks(previousInner, props, state, instance);
3597
3605
  if (nextInner.type !== Comment && (mode === "out-in" || mode === "in-out") && applyTransitionModeSwitch(previousInner, leavingHooks, mode === "in-out" ? () => enterHooks : void 0, props, state, resumeAfterLeave)) return emptyPlaceholder(next);
3598
3606
  }
@@ -8706,7 +8714,7 @@ var VueRuntimeDOM = (function(exports) {
8706
8714
  }
8707
8715
  //#endregion
8708
8716
  //#region packages/runtime-core/src/index.ts
8709
- const version = "3.6.0-rc.10";
8717
+ const version = "3.6.0-rc.11";
8710
8718
  const warn = warn$1;
8711
8719
  /**
8712
8720
  * Runtime error messages. Only exposed in dev or esm builds.