@vue/compat 3.6.0-rc.12 → 3.6.0-rc.13

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.6.0-rc.12
2
+ * @vue/compat v3.6.0-rc.13
3
3
  * (c) 2018-present Yuxi (Evan) You and Vue contributors
4
4
  * @license MIT
5
5
  **/
@@ -3651,6 +3651,16 @@ var Vue = (function() {
3651
3651
  };
3652
3652
  }
3653
3653
  //#endregion
3654
+ //#region packages/runtime-core/src/vaporInteropState.ts
3655
+ /**
3656
+ * Set by `vaporInteropPlugin`. Stays false in apps that never import the
3657
+ * plugin, so bundlers drop the vapor-in-vdom branches of the renderer.
3658
+ */
3659
+ let isVaporInteropEnabled = false;
3660
+ function setVaporInteropEnabled() {
3661
+ isVaporInteropEnabled = true;
3662
+ }
3663
+ //#endregion
3654
3664
  //#region packages/runtime-core/src/components/Teleport.ts
3655
3665
  const pendingMounts = /* @__PURE__ */ new WeakMap();
3656
3666
  const TeleportEndKey = Symbol("_vte");
@@ -3910,13 +3920,18 @@ var Vue = (function() {
3910
3920
  onAfterAppear: TransitionHookValidator,
3911
3921
  onAppearCancelled: TransitionHookValidator
3912
3922
  };
3923
+ let isTransitionEnabled = false;
3924
+ function withTransitionEnabled(value) {
3925
+ isTransitionEnabled = true;
3926
+ return value;
3927
+ }
3913
3928
  function isEmptyTransitionChild(vnode, instance) {
3914
3929
  if (vnode.type === Comment) return true;
3915
3930
  if (vnode.type === Fragment) {
3916
3931
  const child = isArray(vnode.children) && filterSingleRoot(vnode.children, false);
3917
3932
  return !child || isEmptyTransitionChild(child, instance);
3918
3933
  }
3919
- if (vnode.type === VaporSlot || isVaporComponent(vnode.type)) return !getVaporInterface(instance, vnode).hasTransitionChild(vnode);
3934
+ if (isVaporInteropEnabled && (vnode.type === VaporSlot || isVaporComponent(vnode.type))) return !getVaporInterface(instance, vnode).hasTransitionChild(vnode);
3920
3935
  return !!vnode.component && isEmptyTransitionChild(vnode.component.subTree, instance);
3921
3936
  }
3922
3937
  const BaseTransitionImpl = {
@@ -3933,7 +3948,7 @@ var Vue = (function() {
3933
3948
  const { mode } = rawProps;
3934
3949
  checkTransitionMode(mode);
3935
3950
  return prepareTransitionSwitch(instance.subTree, child, rawProps, state, instance, mode === "out-in" ? resumeAfterLeave || (resumeAfterLeave = () => {
3936
- if (!(instance.job.flags & 4)) instance.update();
3951
+ if (!(instance.effect.flags & 1024)) instance.update();
3937
3952
  }) : NOOP);
3938
3953
  };
3939
3954
  }
@@ -3954,7 +3969,7 @@ var Vue = (function() {
3954
3969
  }
3955
3970
  return child;
3956
3971
  }
3957
- const BaseTransition = BaseTransitionImpl;
3972
+ const BaseTransition = /*@__PURE__*/ withTransitionEnabled(BaseTransitionImpl);
3958
3973
  function getLeavingNodesForType(state, vnode) {
3959
3974
  const { leavingNodes } = state;
3960
3975
  let leavingVNodesCache = leavingNodes.get(vnode.type);
@@ -3992,7 +4007,7 @@ var Vue = (function() {
3992
4007
  return hooks;
3993
4008
  }
3994
4009
  }, props, state, instance);
3995
- if (vnode.type === VaporSlot) extend(hooks, {
4010
+ if (isVaporInteropEnabled && vnode.type === VaporSlot) extend(hooks, {
3996
4011
  __vapor: true,
3997
4012
  props,
3998
4013
  state,
@@ -4169,7 +4184,7 @@ var Vue = (function() {
4169
4184
  function setTransitionHooks(vnode, hooks) {
4170
4185
  if (vnode.shapeFlag & 6 && vnode.component) {
4171
4186
  vnode.transition = hooks;
4172
- if (isVaporComponent(vnode.type)) getVaporInterface(vnode.component, vnode).setTransitionHooks(vnode.component, hooks);
4187
+ if (isVaporInteropEnabled && isVaporComponent(vnode.type)) getVaporInterface(vnode.component, vnode).setTransitionHooks(vnode.component, hooks);
4173
4188
  else {
4174
4189
  const subTree = vnode.component.subTree;
4175
4190
  return setTransitionHooks(isTeleport(subTree.type) ? getInnerChild$1(subTree) || subTree : subTree, hooks);
@@ -4208,7 +4223,7 @@ var Vue = (function() {
4208
4223
  if (mode && mode !== "in-out" && mode !== "out-in" && mode !== "default") warn$1(`invalid <transition> mode: ${mode}`);
4209
4224
  }
4210
4225
  function getTransitionRoot(vnode) {
4211
- if (vnode.component && !isVaporComponent(vnode.type)) return getTransitionRoot(vnode.component.subTree);
4226
+ if (vnode.component && (!isVaporInteropEnabled || !isVaporComponent(vnode.type))) return getTransitionRoot(vnode.component.subTree);
4212
4227
  if (vnode.type === Fragment) {
4213
4228
  const child = isArray(vnode.children) && filterSingleRoot(vnode.children, false);
4214
4229
  return child ? getTransitionRoot(child) : void 0;
@@ -4468,7 +4483,7 @@ var Vue = (function() {
4468
4483
  else nextNode = hydrateFragment(node, vnode, parentComponent, parentSuspense, slotScopeIds, optimized);
4469
4484
  break;
4470
4485
  case VaporSlot:
4471
- nextNode = getVaporInterface(parentComponent, vnode).hydrateSlot(vnode, node, parentComponent, parentSuspense, slotScopeIds);
4486
+ if (isVaporInteropEnabled) nextNode = getVaporInterface(parentComponent, vnode).hydrateSlot(vnode, node, parentComponent, parentSuspense, slotScopeIds);
4472
4487
  break;
4473
4488
  default: if (shapeFlag & 1) {
4474
4489
  if ((domType !== 1 || vnode.type.toLowerCase() !== node.tagName.toLowerCase()) && !isTemplateNode$1(node)) nextNode = onMismatch();
@@ -4600,7 +4615,7 @@ var Vue = (function() {
4600
4615
  if (fragmentSlotScopeIds) slotScopeIds = slotScopeIds ? slotScopeIds.concat(fragmentSlotScopeIds) : fragmentSlotScopeIds;
4601
4616
  const container = parentNode(node);
4602
4617
  const first = nextSibling(node);
4603
- const next = vnode.vo && node.data === "(" ? getVaporInterface(parentComponent, vnode).hydrateSlotOutlet(vnode, node, parentComponent, parentSuspense, slotScopeIds) : hydrateChildren(first, vnode, container, parentComponent, parentSuspense, slotScopeIds, optimized);
4618
+ const next = isVaporInteropEnabled && vnode.vo && node.data === "(" ? getVaporInterface(parentComponent, vnode).hydrateSlotOutlet(vnode, node, parentComponent, parentSuspense, slotScopeIds) : hydrateChildren(first, vnode, container, parentComponent, parentSuspense, slotScopeIds, optimized);
4604
4619
  if (next && isComment(next) && next.data === (node.data === "(" ? ")" : "]")) return nextSibling(vnode.anchor = next);
4605
4620
  else {
4606
4621
  logMismatchError();
@@ -5007,7 +5022,7 @@ var Vue = (function() {
5007
5022
  setPendingRequest: (request) => pendingRequest = request
5008
5023
  };
5009
5024
  }
5010
- const useAsyncComponentState = (delay, timeout, onError, instance = currentInstance) => {
5025
+ const useAsyncComponentState = (delay = 200, timeout, onError, instance = currentInstance) => {
5011
5026
  const loaded = /* @__PURE__ */ ref(false);
5012
5027
  const error = /* @__PURE__ */ ref();
5013
5028
  const delayed = /* @__PURE__ */ ref(!!delay);
@@ -5064,6 +5079,11 @@ var Vue = (function() {
5064
5079
  //#endregion
5065
5080
  //#region packages/runtime-core/src/components/KeepAlive.ts
5066
5081
  const isKeepAlive = (vnode) => vnode.type.__isKeepAlive;
5082
+ let isKeepAliveEnabled = false;
5083
+ function withKeepAliveEnabled(value) {
5084
+ isKeepAliveEnabled = true;
5085
+ return value;
5086
+ }
5067
5087
  const KeepAliveImpl = {
5068
5088
  name: `KeepAlive`,
5069
5089
  __isKeepAlive: true,
@@ -5208,7 +5228,7 @@ var Vue = (function() {
5208
5228
  t.__isBuiltIn = true;
5209
5229
  return t;
5210
5230
  };
5211
- const KeepAlive = /*@__PURE__*/ decorate$2(KeepAliveImpl);
5231
+ const KeepAlive = /*@__PURE__*/ withKeepAliveEnabled(/*@__PURE__*/ decorate$2(KeepAliveImpl));
5212
5232
  function matches(pattern, name) {
5213
5233
  if (isArray(pattern)) return pattern.some((p) => matches(p, name));
5214
5234
  else if (isString(pattern)) return pattern.split(",").includes(name);
@@ -5654,11 +5674,12 @@ var Vue = (function() {
5654
5674
  function renderSlot(slots, name, props, fallback, noSlotted, branchKey) {
5655
5675
  if (props == null) props = {};
5656
5676
  let slot = slots[name];
5657
- const vaporSlot = slot && slot[rawVaporSlotKey];
5677
+ const vaporSlot = isVaporInteropEnabled && slot && slot[rawVaporSlotKey];
5658
5678
  if (vaporSlot) {
5659
5679
  const ret = (openBlock(), createBlock(VaporSlot, props));
5660
5680
  ret.vs = {
5661
5681
  slot: vaporSlot,
5682
+ name,
5662
5683
  outlets: fallback ? [{
5663
5684
  fallback,
5664
5685
  owner: currentRenderingInstance
@@ -5689,7 +5710,7 @@ var Vue = (function() {
5689
5710
  try {
5690
5711
  const validSlotContent = slot && ensureValidVNode(slot(props));
5691
5712
  let attached = false;
5692
- if (fallback && validSlotContent && currentRenderingInstance) {
5713
+ if (isVaporInteropEnabled && fallback && validSlotContent && currentRenderingInstance) {
5693
5714
  const interop = currentRenderingInstance.appContext.vapor;
5694
5715
  if (interop) attached = interop.attachSlotOutlet(validSlotContent, fallback, currentRenderingInstance);
5695
5716
  }
@@ -6648,7 +6669,7 @@ var Vue = (function() {
6648
6669
  if (options.el) return vm.$mount(options.el);
6649
6670
  else return vm;
6650
6671
  }
6651
- Vue.version = `2.6.14-compat:3.6.0-rc.12`;
6672
+ Vue.version = `2.6.14-compat:3.6.0-rc.13`;
6652
6673
  Vue.config = singletonApp.config;
6653
6674
  Vue.use = (plugin, ...options) => {
6654
6675
  if (plugin && isFunction(plugin.install)) plugin.install(Vue, ...options);
@@ -8012,7 +8033,7 @@ var Vue = (function() {
8012
8033
  processFragment(n1, n2, container, anchor, parentComponent, parentSuspense, namespace, slotScopeIds, optimized);
8013
8034
  break;
8014
8035
  case VaporSlot:
8015
- getVaporInterface(parentComponent, n2).slot(n1, n2, container, anchor, parentComponent, parentSuspense, slotScopeIds);
8036
+ if (isVaporInteropEnabled) getVaporInterface(parentComponent, n2).slot(n1, n2, container, anchor, parentComponent, parentSuspense, slotScopeIds);
8016
8037
  break;
8017
8038
  default: if (shapeFlag & 1) processElement(n1, n2, container, anchor, parentComponent, parentSuspense, namespace, slotScopeIds, optimized);
8018
8039
  else if (shapeFlag & 6) processComponent(n1, n2, container, anchor, parentComponent, parentSuspense, namespace, slotScopeIds, optimized);
@@ -8146,7 +8167,7 @@ var Vue = (function() {
8146
8167
  let vnodeHook;
8147
8168
  parentComponent && toggleRecurse(parentComponent, false);
8148
8169
  if (vnodeHook = newProps.onVnodeBeforeUpdate) invokeVNodeHook(vnodeHook, parentComponent, n2, n1);
8149
- if (n2.ibu) n2.ibu();
8170
+ if (isVaporInteropEnabled && n2.ibu) n2.ibu();
8150
8171
  if (dirs) invokeDirectiveHook(n2, n1, parentComponent, "beforeUpdate");
8151
8172
  parentComponent && toggleRecurse(parentComponent, true);
8152
8173
  if (isHmrUpdating || dynamicChildren && (!n1.dynamicChildren || n1.dynamicChildren.length !== dynamicChildren.length)) {
@@ -8180,9 +8201,9 @@ var Vue = (function() {
8180
8201
  if (n1.children !== n2.children) hostSetElementText(el, n2.children);
8181
8202
  }
8182
8203
  } else if (!optimized && dynamicChildren == null) patchProps(el, oldProps, newProps, parentComponent, namespace);
8183
- if ((vnodeHook = newProps.onVnodeUpdated) || dirs || n2.iu) queuePostRenderEffect(() => {
8204
+ if ((vnodeHook = newProps.onVnodeUpdated) || dirs || isVaporInteropEnabled && n2.iu) queuePostRenderEffect(() => {
8184
8205
  vnodeHook && invokeVNodeHook(vnodeHook, parentComponent, n2, n1);
8185
- n2.iu && n2.iu();
8206
+ isVaporInteropEnabled && n2.iu && n2.iu();
8186
8207
  dirs && invokeDirectiveHook(n2, n1, parentComponent, "updated");
8187
8208
  }, void 0, parentSuspense);
8188
8209
  };
@@ -8398,7 +8419,7 @@ var Vue = (function() {
8398
8419
  } else next = vnode;
8399
8420
  if (bu) invokeArrayFns(bu);
8400
8421
  if (vnodeHook = next.props && next.props.onVnodeBeforeUpdate) invokeVNodeHook(vnodeHook, parent, next, vnode);
8401
- if (next.ibu) next.ibu();
8422
+ if (isVaporInteropEnabled && next.ibu) next.ibu();
8402
8423
  if (isCompatEnabled$1("INSTANCE_EVENT_HOOKS", instance)) instance.emit("hook:beforeUpdate");
8403
8424
  toggleRecurse(instance, true);
8404
8425
  startMeasure(instance, `render`);
@@ -8412,9 +8433,9 @@ var Vue = (function() {
8412
8433
  next.el = nextTree.el;
8413
8434
  if (originNext === null) updateHOCHostEl(instance, nextTree.el);
8414
8435
  if (u) queuePostRenderEffect(u, void 0, parentSuspense);
8415
- if ((vnodeHook = next.props && next.props.onVnodeUpdated) || next.iu) queuePostRenderEffect(() => {
8436
+ if ((vnodeHook = next.props && next.props.onVnodeUpdated) || isVaporInteropEnabled && next.iu) queuePostRenderEffect(() => {
8416
8437
  vnodeHook && invokeVNodeHook(vnodeHook, parent, next, vnode);
8417
- next.iu && next.iu();
8438
+ isVaporInteropEnabled && next.iu && next.iu();
8418
8439
  }, void 0, parentSuspense);
8419
8440
  if (isCompatEnabled$1("INSTANCE_EVENT_HOOKS", instance)) queuePostRenderEffect(() => instance.emit("hook:updated"), void 0, parentSuspense);
8420
8441
  devtoolsComponentUpdated(instance);
@@ -8567,7 +8588,7 @@ var Vue = (function() {
8567
8588
  };
8568
8589
  const move = (vnode, container, anchor, moveType, parentComponent, parentSuspense = null) => {
8569
8590
  const { el, type, transition, children, shapeFlag } = vnode;
8570
- if (isVaporComponent(type) || type === VaporSlot) {
8591
+ if (isVaporInteropEnabled && (isVaporComponent(type) || type === VaporSlot)) {
8571
8592
  getVaporInterface(parentComponent, vnode).move(vnode, container, anchor, moveType, parentSuspense);
8572
8593
  return;
8573
8594
  }
@@ -8611,11 +8632,11 @@ var Vue = (function() {
8611
8632
  }
8612
8633
  if (cacheIndex != null && (!vnode.ctx || vnode.ctx === parentComponent)) parentComponent.renderCache[cacheIndex] = void 0;
8613
8634
  if (shapeFlag & 256) {
8614
- if (isVaporComponent(vnode.type)) getVaporInterface(parentComponent, vnode).deactivate(vnode, parentComponent.ctx.getStorageContainer(), parentSuspense);
8635
+ if (isVaporInteropEnabled && isVaporComponent(vnode.type)) getVaporInterface(parentComponent, vnode).deactivate(vnode, parentComponent.ctx.getStorageContainer(), parentSuspense);
8615
8636
  else parentComponent.ctx.deactivate(vnode);
8616
8637
  return;
8617
8638
  }
8618
- if (shapeFlag & 6 && isVaporComponent(type)) {
8639
+ if (isVaporInteropEnabled && shapeFlag & 6 && isVaporComponent(type)) {
8619
8640
  getVaporInterface(parentComponent, vnode).unmount(vnode, doRemove, parentSuspense);
8620
8641
  return;
8621
8642
  }
@@ -8633,7 +8654,7 @@ var Vue = (function() {
8633
8654
  if (shapeFlag & 64) vnode.type.remove(vnode, parentComponent, parentSuspense, internals, doRemove);
8634
8655
  else if (dynamicChildren && !dynamicChildren.hasOnce && (type !== Fragment || patchFlag > 0 && patchFlag & 64)) unmountChildren(dynamicChildren, parentComponent, parentSuspense, false, true);
8635
8656
  else if (type === Fragment && patchFlag & 384 || !optimized && shapeFlag & 16) unmountChildren(children, parentComponent, parentSuspense);
8636
- if (type === VaporSlot) {
8657
+ if (isVaporInteropEnabled && type === VaporSlot) {
8637
8658
  getVaporInterface(parentComponent, vnode).unmount(vnode, doRemove, parentSuspense);
8638
8659
  return;
8639
8660
  }
@@ -8667,7 +8688,7 @@ var Vue = (function() {
8667
8688
  if (transition) {
8668
8689
  let leavingEl = leavingNode && leavingNode.el;
8669
8690
  let isElement = !!(leavingNode && leavingNode.shapeFlag & 1);
8670
- if (isFragment && leavingNode && isVaporComponent(leavingNode.type)) {
8691
+ if (isVaporInteropEnabled && isFragment && leavingNode && isVaporComponent(leavingNode.type)) {
8671
8692
  leavingEl = getVaporInterface(leavingNode.component, leavingNode).getTransitionElement(leavingNode);
8672
8693
  isElement = !!leavingEl;
8673
8694
  }
@@ -8708,7 +8729,7 @@ var Vue = (function() {
8708
8729
  };
8709
8730
  const getNextHostNode = (vnode) => {
8710
8731
  if (vnode.shapeFlag & 6) {
8711
- if (isVaporComponent(vnode.type)) return hostNextSibling(vnode.anchor);
8732
+ if (isVaporInteropEnabled && isVaporComponent(vnode.type)) return hostNextSibling(vnode.anchor);
8712
8733
  return getNextHostNode(vnode.component.subTree);
8713
8734
  }
8714
8735
  if (vnode.shapeFlag & 128) return vnode.suspense.next();
@@ -8769,7 +8790,7 @@ var Vue = (function() {
8769
8790
  return currentNamespace === "svg" && type === "foreignObject" || currentNamespace === "mathml" && type === "annotation-xml" && props && props.encoding && props.encoding.includes("html") ? void 0 : currentNamespace;
8770
8791
  }
8771
8792
  function toggleRecurse({ effect, job, vapor }, allowed) {
8772
- if (!vapor) {
8793
+ if (!isVaporInteropEnabled || !vapor) {
8773
8794
  if (allowed) {
8774
8795
  effect.flags |= 128;
8775
8796
  job.flags |= 2;
@@ -8881,7 +8902,7 @@ var Vue = (function() {
8881
8902
  currentParent = currentParent.parent;
8882
8903
  } else break;
8883
8904
  }
8884
- const vaporScopeIds = includeVaporRootIds && currentVNode.vaporScopeIds;
8905
+ const vaporScopeIds = isVaporInteropEnabled && includeVaporRootIds && currentVNode.vaporScopeIds;
8885
8906
  if (vaporScopeIds) inheritedScopeIds.push(...vaporScopeIds);
8886
8907
  return inheritedScopeIds;
8887
8908
  }
@@ -8894,8 +8915,13 @@ var Vue = (function() {
8894
8915
  //#endregion
8895
8916
  //#region packages/runtime-core/src/components/Suspense.ts
8896
8917
  const isSuspense = (type) => type.__isSuspense;
8918
+ let isSuspenseEnabled = false;
8919
+ function withSuspenseEnabled(value) {
8920
+ isSuspenseEnabled = true;
8921
+ return value;
8922
+ }
8897
8923
  let suspenseId = 0;
8898
- const Suspense = {
8924
+ const Suspense = /*@__PURE__*/ withSuspenseEnabled({
8899
8925
  name: "Suspense",
8900
8926
  __isSuspense: true,
8901
8927
  process(n1, n2, container, anchor, parentComponent, parentSuspense, namespace, slotScopeIds, optimized, rendererInternals) {
@@ -8912,7 +8938,7 @@ var Vue = (function() {
8912
8938
  },
8913
8939
  hydrate: hydrateSuspense,
8914
8940
  normalize: normalizeSuspenseChildren
8915
- };
8941
+ });
8916
8942
  function triggerEvent(vnode, name) {
8917
8943
  const eventListener = vnode.props && vnode.props[name];
8918
8944
  if (isFunction(eventListener)) eventListener();
@@ -9491,16 +9517,23 @@ var Vue = (function() {
9491
9517
  if (!vaporSlot) return vaporSlot;
9492
9518
  const cloned = {
9493
9519
  slot: vaporSlot.slot,
9520
+ name: vaporSlot.name,
9494
9521
  outlets: vaporSlot.outlets,
9495
- props: vaporSlot.props
9522
+ props: vaporSlot.props,
9523
+ attrs: vaporSlot.attrs && vaporSlot.attrs === EMPTY_OBJ ? {} : vaporSlot.attrs,
9524
+ group: vaporSlot.group
9496
9525
  };
9497
- if (vaporSlot.props && extraProps) {
9526
+ const attrs = cloned.attrs;
9527
+ if (extraProps && vaporSlot.props) {
9498
9528
  let extraSlotProps;
9499
- for (const key in extraProps) if (key !== "key") {
9529
+ for (const key in extraProps) if (attrs ? !isReservedProp(key) : key !== "key") {
9500
9530
  if (!extraSlotProps) extraSlotProps = {};
9501
9531
  extraSlotProps[key] = extraProps[key];
9502
9532
  }
9503
- if (extraSlotProps) cloned.props = mergeProps(vaporSlot.props, extraSlotProps);
9533
+ if (extraSlotProps) {
9534
+ if (attrs) cloned.attrs = mergeProps(attrs, extraSlotProps);
9535
+ else cloned.props = mergeProps(vaporSlot.props, extraSlotProps);
9536
+ }
9504
9537
  }
9505
9538
  if (vnode.el) {
9506
9539
  cloned.state = vaporSlot.state;
@@ -9773,7 +9806,7 @@ var Vue = (function() {
9773
9806
  isSSR && setInSSRSetupState(isSSR);
9774
9807
  const { props, children, vi } = instance.vnode;
9775
9808
  const isStateful = isStatefulComponent(instance);
9776
- if (vi) vi(instance);
9809
+ if (isVaporInteropEnabled && vi) vi(instance);
9777
9810
  else {
9778
9811
  initProps(instance, props, isStateful, isSSR);
9779
9812
  initSlots(instance, children, optimized || isSSR);
@@ -10195,7 +10228,7 @@ var Vue = (function() {
10195
10228
  }
10196
10229
  //#endregion
10197
10230
  //#region packages/runtime-core/src/index.ts
10198
- const version = "3.6.0-rc.12";
10231
+ const version = "3.6.0-rc.13";
10199
10232
  const warn = warn$1;
10200
10233
  /**
10201
10234
  * Runtime error messages. Only exposed in dev or esm builds.
@@ -10628,14 +10661,14 @@ var Vue = (function() {
10628
10661
  }
10629
10662
  while (vnode.component) {
10630
10663
  const component = vnode.component;
10631
- if (component.vapor) {
10664
+ if (isVaporInteropEnabled && component.vapor) {
10632
10665
  component.appContext.vapor.applyCssVars(vnode, vars);
10633
10666
  return;
10634
10667
  }
10635
10668
  vnode = vnode.component.subTree;
10636
10669
  }
10637
10670
  if (vnode.shapeFlag & 1 && vnode.el) setVarsOnNode(vnode.el, vars);
10638
- else if (vnode.vb) vnode.ctx.appContext.vapor.applyCssVars(vnode, vars);
10671
+ else if (isVaporInteropEnabled && vnode.vb) vnode.ctx.appContext.vapor.applyCssVars(vnode, vars);
10639
10672
  else if (vnode.type === Fragment) vnode.children.forEach((c) => setVarsOnVNode(c, vars));
10640
10673
  else if (vnode.type === Static) {
10641
10674
  let { el, anchor } = vnode;
@@ -11340,7 +11373,7 @@ var Vue = (function() {
11340
11373
  t.__isBuiltIn = true;
11341
11374
  return t;
11342
11375
  };
11343
- const TransitionGroup = /* @__PURE__ */ decorate({
11376
+ const TransitionGroup = /*@__PURE__*/ withTransitionEnabled(/* @__PURE__ */ decorate({
11344
11377
  name: "TransitionGroup",
11345
11378
  props: /*@__PURE__*/ extend({}, TransitionPropsValidators, {
11346
11379
  tag: String,
@@ -11349,6 +11382,11 @@ var Vue = (function() {
11349
11382
  setup(props, { slots }) {
11350
11383
  const instance = getCurrentInstance();
11351
11384
  const state = useTransitionState();
11385
+ const group = {
11386
+ props: {},
11387
+ state,
11388
+ instance
11389
+ };
11352
11390
  let prevChildren;
11353
11391
  let children;
11354
11392
  let origins;
@@ -11379,7 +11417,7 @@ var Vue = (function() {
11379
11417
  });
11380
11418
  return () => {
11381
11419
  const rawProps = /* @__PURE__ */ toRaw(props);
11382
- const cssTransitionProps = resolveTransitionProps(rawProps);
11420
+ const cssTransitionProps = group.props = resolveTransitionProps(rawProps);
11383
11421
  let tag = rawProps.tag || Fragment;
11384
11422
  if (!rawProps.tag && compatUtils.checkCompatEnabled("TRANSITION_GROUP_ROOT", instance.parent)) tag = "span";
11385
11423
  prevChildren = [];
@@ -11390,12 +11428,17 @@ var Vue = (function() {
11390
11428
  prevChildren.push(child);
11391
11429
  setTransitionHooks(child, resolveTransitionHooks(child, cssTransitionProps, state, instance));
11392
11430
  positionMap.set(child, getPosition(child.el));
11393
- }
11431
+ } else if (isVaporInteropEnabled && child.vs && child.vb) instance.appContext.vapor.forEachGroupChild(child, (el) => {
11432
+ const row = { el };
11433
+ prevChildren.push(row);
11434
+ positionMap.set(row, getPosition(el));
11435
+ });
11394
11436
  }
11395
11437
  children = slots.default ? getTransitionRawChildren(slots.default()) : [];
11396
11438
  for (let i = 0; i < children.length; i++) {
11397
11439
  const child = children[i];
11398
- if (child.key != null) setTransitionHooks(child, resolveTransitionHooks(child, cssTransitionProps, state, instance));
11440
+ if (isVaporInteropEnabled && child.vs) child.vs.group = group;
11441
+ else if (child.key != null) setTransitionHooks(child, resolveTransitionHooks(child, cssTransitionProps, state, instance));
11399
11442
  else if (child.type !== Text) warn(`<TransitionGroup> children must be keyed.`);
11400
11443
  }
11401
11444
  if (prevChildren.length) {
@@ -11409,7 +11452,7 @@ var Vue = (function() {
11409
11452
  return createVNode(tag, null, children);
11410
11453
  };
11411
11454
  }
11412
- });
11455
+ }));
11413
11456
  function callPendingCbs(el) {
11414
11457
  if (el[moveCbKey]) el[moveCbKey]();
11415
11458
  if (el[enterCbKey]) el[enterCbKey]();
@@ -11553,7 +11596,7 @@ var Vue = (function() {
11553
11596
  if (e.target.composing) return;
11554
11597
  (set || el[assignKey])(castValue(el.value, trim, number || el.type === "number"));
11555
11598
  });
11556
- if (trim || number) addEventListener(el, "change", () => {
11599
+ if (trim || number || el.type === "number") addEventListener(el, "change", () => {
11557
11600
  el.value = castValue(el.value, trim, number || el.type === "number");
11558
11601
  });
11559
11602
  if (!lazy) {
@@ -11915,6 +11958,7 @@ var Vue = (function() {
11915
11958
  initCustomFormatter: () => initCustomFormatter,
11916
11959
  initDirectivesForSSR: () => initDirectivesForSSR,
11917
11960
  inject: () => inject,
11961
+ isKeepAliveEnabled: () => isKeepAliveEnabled,
11918
11962
  isMemoSame: () => isMemoSame,
11919
11963
  isProxy: () => isProxy,
11920
11964
  isReactive: () => isReactive,
@@ -11922,7 +11966,10 @@ var Vue = (function() {
11922
11966
  isRef: () => isRef,
11923
11967
  isRuntimeOnly: () => isRuntimeOnly,
11924
11968
  isShallow: () => isShallow,
11969
+ isSuspenseEnabled: () => isSuspenseEnabled,
11970
+ isTransitionEnabled: () => isTransitionEnabled,
11925
11971
  isVNode: () => isVNode,
11972
+ isVaporInteropEnabled: () => isVaporInteropEnabled,
11926
11973
  markRaw: () => markRaw,
11927
11974
  mergeDefaults: () => mergeDefaults,
11928
11975
  mergeModels: () => mergeModels,
@@ -11969,6 +12016,7 @@ var Vue = (function() {
11969
12016
  setDevtoolsHook: () => setDevtoolsHook,
11970
12017
  setIsHydratingEnabled: () => setIsHydratingEnabled,
11971
12018
  setTransitionHooks: () => setTransitionHooks,
12019
+ setVaporInteropEnabled: () => setVaporInteropEnabled,
11972
12020
  shallowReactive: () => shallowReactive,
11973
12021
  shallowReadonly: () => shallowReadonly,
11974
12022
  shallowRef: () => shallowRef,
@@ -12013,10 +12061,13 @@ var Vue = (function() {
12013
12061
  withCtx: () => withCtx,
12014
12062
  withDefaults: () => withDefaults,
12015
12063
  withDirectives: () => withDirectives,
12064
+ withKeepAliveEnabled: () => withKeepAliveEnabled,
12016
12065
  withKeys: () => withKeys,
12017
12066
  withMemo: () => withMemo,
12018
12067
  withModifiers: () => withModifiers,
12019
- withScopeId: () => withScopeId
12068
+ withScopeId: () => withScopeId,
12069
+ withSuspenseEnabled: () => withSuspenseEnabled,
12070
+ withTransitionEnabled: () => withTransitionEnabled
12020
12071
  });
12021
12072
  const rendererOptions = /*@__PURE__*/ extend({ patchProp }, nodeOps);
12022
12073
  let renderer;