@vue/compat 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.
@@ -1048,6 +1048,11 @@ interface VaporInVdomInterface {
1048
1048
  activate(vnode: VNode, container: RendererElement, anchor: RendererNode | null, parentComponent: ComponentInternalInstance, parentSuspense: SuspenseBoundary | null): void;
1049
1049
  deactivate(vnode: VNode, container: RendererElement, parentSuspense: SuspenseBoundary | null): void;
1050
1050
  setTransitionHooks(component: ComponentInternalInstance, transition: TransitionHooks): void;
1051
+ /**
1052
+ * Whether a mounted vapor component or slot vnode renders an element a
1053
+ * Transition can leave.
1054
+ */
1055
+ hasTransitionChild(vnode: VNode): boolean;
1051
1056
  applyCssVars(vnode: VNode, vars: Record<string, string>): void;
1052
1057
  /**
1053
1058
  * Hands the fallback of a vdom outlet over to the vapor slot its content
package/dist/vue.cjs.js CHANGED
@@ -1,5 +1,5 @@
1
1
  /**
2
- * @vue/compat v3.6.0-rc.10
2
+ * @vue/compat v3.6.0-rc.11
3
3
  * (c) 2018-present Yuxi (Evan) You and Vue contributors
4
4
  * @license MIT
5
5
  **/
@@ -3916,10 +3916,11 @@ const BaseTransitionPropsValidators = {
3916
3916
  onAfterAppear: TransitionHookValidator,
3917
3917
  onAppearCancelled: TransitionHookValidator
3918
3918
  };
3919
- const recursiveGetSubtree = (instance) => {
3920
- const subTree = isVaporComponent(instance.type) ? instance.block : instance.subTree;
3921
- return subTree.component ? recursiveGetSubtree(subTree.component) : subTree;
3922
- };
3919
+ function isEmptyTransitionChild(vnode, instance) {
3920
+ if (vnode.type === Comment) return true;
3921
+ if (vnode.type === VaporSlot || isVaporComponent(vnode.type)) return !getVaporInterface(instance, vnode).hasTransitionChild(vnode);
3922
+ return !!vnode.component && isEmptyTransitionChild(vnode.component.subTree, instance);
3923
+ }
3923
3924
  const BaseTransitionImpl = {
3924
3925
  name: `BaseTransition`,
3925
3926
  props: BaseTransitionPropsValidators,
@@ -3968,7 +3969,7 @@ function getLeavingNodesForType(state, vnode) {
3968
3969
  function resolveTransitionHooks(vnode, props, state, instance, postClone) {
3969
3970
  const key = String(vnode.key);
3970
3971
  const leavingVNodesCache = getLeavingNodesForType(state, vnode);
3971
- return baseResolveTransitionHooks({
3972
+ const hooks = baseResolveTransitionHooks({
3972
3973
  isLeaving: () => leavingVNodesCache[key] === vnode,
3973
3974
  setLeavingNodeCache: () => {
3974
3975
  leavingVNodesCache[key] = vnode;
@@ -3986,6 +3987,13 @@ function resolveTransitionHooks(vnode, props, state, instance, postClone) {
3986
3987
  return hooks;
3987
3988
  }
3988
3989
  }, props, state, instance);
3990
+ if (vnode.type === VaporSlot) extend(hooks, {
3991
+ __vapor: true,
3992
+ props,
3993
+ state,
3994
+ instance
3995
+ });
3996
+ return hooks;
3989
3997
  }
3990
3998
  function baseResolveTransitionHooks(context, props, state, instance) {
3991
3999
  const { isLeaving, setLeavingNodeCache, unsetLeavingNodeCache, earlyRemove, cloneHooks } = context;
@@ -4101,7 +4109,7 @@ function prepareTransitionSwitch(previous, next, props, state, instance, resumeA
4101
4109
  if (nextInner.type !== Comment) setTransitionHooks(nextInner, enterHooks);
4102
4110
  const mode = props.mode;
4103
4111
  const previousInner = previous && getInnerChild$1(previous);
4104
- if (previous && previousInner && previousInner.type !== Comment && !isSameVNodeType(previousInner, nextInner) && (!previous.component || recursiveGetSubtree(previous.component).type !== Comment)) {
4112
+ if (previous && previousInner && !isSameVNodeType(previousInner, nextInner) && !isEmptyTransitionChild(previousInner, instance)) {
4105
4113
  const leavingHooks = prepareLeavingTransitionHooks(previousInner, props, state, instance);
4106
4114
  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);
4107
4115
  }
@@ -6628,7 +6636,7 @@ function createCompatVue$1(createApp, createSingletonApp) {
6628
6636
  if (options.el) return vm.$mount(options.el);
6629
6637
  else return vm;
6630
6638
  }
6631
- Vue.version = `2.6.14-compat:3.6.0-rc.10`;
6639
+ Vue.version = `2.6.14-compat:3.6.0-rc.11`;
6632
6640
  Vue.config = singletonApp.config;
6633
6641
  Vue.use = (plugin, ...options) => {
6634
6642
  if (plugin && isFunction(plugin.install)) plugin.install(Vue, ...options);
@@ -10165,7 +10173,7 @@ function isMemoSame(cached, memo) {
10165
10173
  }
10166
10174
  //#endregion
10167
10175
  //#region packages/runtime-core/src/index.ts
10168
- const version = "3.6.0-rc.10";
10176
+ const version = "3.6.0-rc.11";
10169
10177
  const warn = warn$1;
10170
10178
  /**
10171
10179
  * Runtime error messages. Only exposed in dev or esm builds.
@@ -1,5 +1,5 @@
1
1
  /**
2
- * @vue/compat v3.6.0-rc.10
2
+ * @vue/compat v3.6.0-rc.11
3
3
  * (c) 2018-present Yuxi (Evan) You and Vue contributors
4
4
  * @license MIT
5
5
  **/
@@ -3140,10 +3140,11 @@ const BaseTransitionPropsValidators = {
3140
3140
  onAfterAppear: TransitionHookValidator,
3141
3141
  onAppearCancelled: TransitionHookValidator
3142
3142
  };
3143
- const recursiveGetSubtree = (instance) => {
3144
- const subTree = isVaporComponent(instance.type) ? instance.block : instance.subTree;
3145
- return subTree.component ? recursiveGetSubtree(subTree.component) : subTree;
3146
- };
3143
+ function isEmptyTransitionChild(vnode, instance) {
3144
+ if (vnode.type === Comment) return true;
3145
+ if (vnode.type === VaporSlot || isVaporComponent(vnode.type)) return !getVaporInterface(instance, vnode).hasTransitionChild(vnode);
3146
+ return !!vnode.component && isEmptyTransitionChild(vnode.component.subTree, instance);
3147
+ }
3147
3148
  const BaseTransitionImpl = {
3148
3149
  name: `BaseTransition`,
3149
3150
  props: BaseTransitionPropsValidators,
@@ -3186,7 +3187,7 @@ function getLeavingNodesForType(state, vnode) {
3186
3187
  function resolveTransitionHooks(vnode, props, state, instance, postClone) {
3187
3188
  const key = String(vnode.key);
3188
3189
  const leavingVNodesCache = getLeavingNodesForType(state, vnode);
3189
- return baseResolveTransitionHooks({
3190
+ const hooks = baseResolveTransitionHooks({
3190
3191
  isLeaving: () => leavingVNodesCache[key] === vnode,
3191
3192
  setLeavingNodeCache: () => {
3192
3193
  leavingVNodesCache[key] = vnode;
@@ -3204,6 +3205,13 @@ function resolveTransitionHooks(vnode, props, state, instance, postClone) {
3204
3205
  return hooks;
3205
3206
  }
3206
3207
  }, props, state, instance);
3208
+ if (vnode.type === VaporSlot) extend(hooks, {
3209
+ __vapor: true,
3210
+ props,
3211
+ state,
3212
+ instance
3213
+ });
3214
+ return hooks;
3207
3215
  }
3208
3216
  function baseResolveTransitionHooks(context, props, state, instance) {
3209
3217
  const { isLeaving, setLeavingNodeCache, unsetLeavingNodeCache, earlyRemove, cloneHooks } = context;
@@ -3319,7 +3327,7 @@ function prepareTransitionSwitch(previous, next, props, state, instance, resumeA
3319
3327
  if (nextInner.type !== Comment) setTransitionHooks(nextInner, enterHooks);
3320
3328
  const mode = props.mode;
3321
3329
  const previousInner = previous && getInnerChild$1(previous);
3322
- if (previous && previousInner && previousInner.type !== Comment && !isSameVNodeType(previousInner, nextInner) && (!previous.component || recursiveGetSubtree(previous.component).type !== Comment)) {
3330
+ if (previous && previousInner && !isSameVNodeType(previousInner, nextInner) && !isEmptyTransitionChild(previousInner, instance)) {
3323
3331
  const leavingHooks = prepareLeavingTransitionHooks(previousInner, props, state, instance);
3324
3332
  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);
3325
3333
  }
@@ -5487,7 +5495,7 @@ function createCompatVue$1(createApp, createSingletonApp) {
5487
5495
  if (options.el) return vm.$mount(options.el);
5488
5496
  else return vm;
5489
5497
  }
5490
- Vue.version = `2.6.14-compat:3.6.0-rc.10`;
5498
+ Vue.version = `2.6.14-compat:3.6.0-rc.11`;
5491
5499
  Vue.config = singletonApp.config;
5492
5500
  Vue.use = (plugin, ...options) => {
5493
5501
  if (plugin && isFunction(plugin.install)) plugin.install(Vue, ...options);
@@ -8299,7 +8307,7 @@ function isMemoSame(cached, memo) {
8299
8307
  }
8300
8308
  //#endregion
8301
8309
  //#region packages/runtime-core/src/index.ts
8302
- const version = "3.6.0-rc.10";
8310
+ const version = "3.6.0-rc.11";
8303
8311
  const warn = NOOP;
8304
8312
  /**
8305
8313
  * Runtime error messages. Only exposed in dev or esm builds.
@@ -1,5 +1,5 @@
1
1
  /**
2
- * @vue/compat v3.6.0-rc.10
2
+ * @vue/compat v3.6.0-rc.11
3
3
  * (c) 2018-present Yuxi (Evan) You and Vue contributors
4
4
  * @license MIT
5
5
  **/
@@ -3853,10 +3853,11 @@ const BaseTransitionPropsValidators = {
3853
3853
  onAfterAppear: TransitionHookValidator,
3854
3854
  onAppearCancelled: TransitionHookValidator
3855
3855
  };
3856
- const recursiveGetSubtree = (instance) => {
3857
- const subTree = isVaporComponent(instance.type) ? instance.block : instance.subTree;
3858
- return subTree.component ? recursiveGetSubtree(subTree.component) : subTree;
3859
- };
3856
+ function isEmptyTransitionChild(vnode, instance) {
3857
+ if (vnode.type === Comment) return true;
3858
+ if (vnode.type === VaporSlot || isVaporComponent(vnode.type)) return !getVaporInterface(instance, vnode).hasTransitionChild(vnode);
3859
+ return !!vnode.component && isEmptyTransitionChild(vnode.component.subTree, instance);
3860
+ }
3860
3861
  const BaseTransitionImpl = {
3861
3862
  name: `BaseTransition`,
3862
3863
  props: BaseTransitionPropsValidators,
@@ -3905,7 +3906,7 @@ function getLeavingNodesForType(state, vnode) {
3905
3906
  function resolveTransitionHooks(vnode, props, state, instance, postClone) {
3906
3907
  const key = String(vnode.key);
3907
3908
  const leavingVNodesCache = getLeavingNodesForType(state, vnode);
3908
- return baseResolveTransitionHooks({
3909
+ const hooks = baseResolveTransitionHooks({
3909
3910
  isLeaving: () => leavingVNodesCache[key] === vnode,
3910
3911
  setLeavingNodeCache: () => {
3911
3912
  leavingVNodesCache[key] = vnode;
@@ -3923,6 +3924,13 @@ function resolveTransitionHooks(vnode, props, state, instance, postClone) {
3923
3924
  return hooks;
3924
3925
  }
3925
3926
  }, props, state, instance);
3927
+ if (vnode.type === VaporSlot) extend(hooks, {
3928
+ __vapor: true,
3929
+ props,
3930
+ state,
3931
+ instance
3932
+ });
3933
+ return hooks;
3926
3934
  }
3927
3935
  function baseResolveTransitionHooks(context, props, state, instance) {
3928
3936
  const { isLeaving, setLeavingNodeCache, unsetLeavingNodeCache, earlyRemove, cloneHooks } = context;
@@ -4038,7 +4046,7 @@ function prepareTransitionSwitch(previous, next, props, state, instance, resumeA
4038
4046
  if (nextInner.type !== Comment) setTransitionHooks(nextInner, enterHooks);
4039
4047
  const mode = props.mode;
4040
4048
  const previousInner = previous && getInnerChild$1(previous);
4041
- if (previous && previousInner && previousInner.type !== Comment && !isSameVNodeType(previousInner, nextInner) && (!previous.component || recursiveGetSubtree(previous.component).type !== Comment)) {
4049
+ if (previous && previousInner && !isSameVNodeType(previousInner, nextInner) && !isEmptyTransitionChild(previousInner, instance)) {
4042
4050
  const leavingHooks = prepareLeavingTransitionHooks(previousInner, props, state, instance);
4043
4051
  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);
4044
4052
  }
@@ -6543,7 +6551,7 @@ function createCompatVue$1(createApp, createSingletonApp) {
6543
6551
  if (options.el) return vm.$mount(options.el);
6544
6552
  else return vm;
6545
6553
  }
6546
- Vue.version = `2.6.14-compat:3.6.0-rc.10`;
6554
+ Vue.version = `2.6.14-compat:3.6.0-rc.11`;
6547
6555
  Vue.config = singletonApp.config;
6548
6556
  Vue.use = (plugin, ...options) => {
6549
6557
  if (plugin && isFunction(plugin.install)) plugin.install(Vue, ...options);
@@ -10069,7 +10077,7 @@ function isMemoSame(cached, memo) {
10069
10077
  }
10070
10078
  //#endregion
10071
10079
  //#region packages/runtime-core/src/index.ts
10072
- const version = "3.6.0-rc.10";
10080
+ const version = "3.6.0-rc.11";
10073
10081
  const warn = warn$1;
10074
10082
  /**
10075
10083
  * Runtime error messages. Only exposed in dev or esm builds.