@vue/runtime-dom 3.6.0-rc.12 → 3.6.0-rc.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.6.0-rc.12
2
+ * @vue/runtime-dom v3.6.0-rc.14
3
3
  * (c) 2018-present Yuxi (Evan) You and Vue contributors
4
4
  * @license MIT
5
5
  **/
@@ -1030,7 +1030,7 @@ const decorate = (t) => {
1030
1030
  delete t.props.mode;
1031
1031
  return t;
1032
1032
  };
1033
- const TransitionGroup = /* @__PURE__ */ decorate({
1033
+ const TransitionGroupImpl = /*@__PURE__*/ decorate({
1034
1034
  name: "TransitionGroup",
1035
1035
  props: /*@__PURE__*/ (0, _vue_shared.extend)({}, TransitionPropsValidators, {
1036
1036
  tag: String,
@@ -1039,6 +1039,11 @@ const TransitionGroup = /* @__PURE__ */ decorate({
1039
1039
  setup(props, { slots }) {
1040
1040
  const instance = (0, _vue_runtime_core.getCurrentInstance)();
1041
1041
  const state = (0, _vue_runtime_core.useTransitionState)();
1042
+ const group = {
1043
+ props: {},
1044
+ state,
1045
+ instance
1046
+ };
1042
1047
  let prevChildren;
1043
1048
  let children;
1044
1049
  let origins;
@@ -1069,7 +1074,7 @@ const TransitionGroup = /* @__PURE__ */ decorate({
1069
1074
  });
1070
1075
  return () => {
1071
1076
  const rawProps = (0, _vue_runtime_core.toRaw)(props);
1072
- const cssTransitionProps = resolveTransitionProps(rawProps);
1077
+ const cssTransitionProps = group.props = resolveTransitionProps(rawProps);
1073
1078
  let tag = rawProps.tag || _vue_runtime_core.Fragment;
1074
1079
  prevChildren = [];
1075
1080
  moves = void 0;
@@ -1079,12 +1084,17 @@ const TransitionGroup = /* @__PURE__ */ decorate({
1079
1084
  prevChildren.push(child);
1080
1085
  (0, _vue_runtime_core.setTransitionHooks)(child, (0, _vue_runtime_core.resolveTransitionHooks)(child, cssTransitionProps, state, instance));
1081
1086
  positionMap.set(child, getPosition(child.el));
1082
- }
1087
+ } else if (_vue_runtime_core.isVaporInteropEnabled && child.vs && child.vb) instance.appContext.vapor.forEachGroupChild(child, (el) => {
1088
+ const row = { el };
1089
+ prevChildren.push(row);
1090
+ positionMap.set(row, getPosition(el));
1091
+ });
1083
1092
  }
1084
1093
  children = slots.default ? (0, _vue_runtime_core.getTransitionRawChildren)(slots.default()) : [];
1085
1094
  for (let i = 0; i < children.length; i++) {
1086
1095
  const child = children[i];
1087
- if (child.key != null) (0, _vue_runtime_core.setTransitionHooks)(child, (0, _vue_runtime_core.resolveTransitionHooks)(child, cssTransitionProps, state, instance));
1096
+ if (_vue_runtime_core.isVaporInteropEnabled && child.vs) child.vs.group = group;
1097
+ else if (child.key != null) (0, _vue_runtime_core.setTransitionHooks)(child, (0, _vue_runtime_core.resolveTransitionHooks)(child, cssTransitionProps, state, instance));
1088
1098
  else if (child.type !== _vue_runtime_core.Text) (0, _vue_runtime_core.warn)(`<TransitionGroup> children must be keyed.`);
1089
1099
  }
1090
1100
  if (prevChildren.length) {
@@ -1099,6 +1109,7 @@ const TransitionGroup = /* @__PURE__ */ decorate({
1099
1109
  };
1100
1110
  }
1101
1111
  });
1112
+ const TransitionGroup = /*@__PURE__*/ (0, _vue_runtime_core.withTransitionEnabled)(TransitionGroupImpl);
1102
1113
  function callPendingCbs(el) {
1103
1114
  if (el[moveCbKey]) el[moveCbKey]();
1104
1115
  if (el[enterCbKey]) el[enterCbKey]();
@@ -1242,7 +1253,7 @@ const vModelTextInit = (el, trim, number, lazy, set) => {
1242
1253
  if (e.target.composing) return;
1243
1254
  (set || el[assignKey])(castValue(el.value, trim, number || el.type === "number"));
1244
1255
  });
1245
- if (trim || number) addEventListener(el, "change", () => {
1256
+ if (trim || number || el.type === "number") addEventListener(el, "change", () => {
1246
1257
  el.value = castValue(el.value, trim, number || el.type === "number");
1247
1258
  });
1248
1259
  if (!lazy) {
@@ -1,5 +1,5 @@
1
1
  /**
2
- * @vue/runtime-dom v3.6.0-rc.12
2
+ * @vue/runtime-dom v3.6.0-rc.14
3
3
  * (c) 2018-present Yuxi (Evan) You and Vue contributors
4
4
  * @license MIT
5
5
  **/
@@ -971,7 +971,7 @@ const decorate = (t) => {
971
971
  delete t.props.mode;
972
972
  return t;
973
973
  };
974
- const TransitionGroup = /* @__PURE__ */ decorate({
974
+ const TransitionGroupImpl = /*@__PURE__*/ decorate({
975
975
  name: "TransitionGroup",
976
976
  props: /*@__PURE__*/ (0, _vue_shared.extend)({}, TransitionPropsValidators, {
977
977
  tag: String,
@@ -980,6 +980,11 @@ const TransitionGroup = /* @__PURE__ */ decorate({
980
980
  setup(props, { slots }) {
981
981
  const instance = (0, _vue_runtime_core.getCurrentInstance)();
982
982
  const state = (0, _vue_runtime_core.useTransitionState)();
983
+ const group = {
984
+ props: {},
985
+ state,
986
+ instance
987
+ };
983
988
  let prevChildren;
984
989
  let children;
985
990
  let origins;
@@ -1010,7 +1015,7 @@ const TransitionGroup = /* @__PURE__ */ decorate({
1010
1015
  });
1011
1016
  return () => {
1012
1017
  const rawProps = (0, _vue_runtime_core.toRaw)(props);
1013
- const cssTransitionProps = resolveTransitionProps(rawProps);
1018
+ const cssTransitionProps = group.props = resolveTransitionProps(rawProps);
1014
1019
  let tag = rawProps.tag || _vue_runtime_core.Fragment;
1015
1020
  prevChildren = [];
1016
1021
  moves = void 0;
@@ -1020,12 +1025,17 @@ const TransitionGroup = /* @__PURE__ */ decorate({
1020
1025
  prevChildren.push(child);
1021
1026
  (0, _vue_runtime_core.setTransitionHooks)(child, (0, _vue_runtime_core.resolveTransitionHooks)(child, cssTransitionProps, state, instance));
1022
1027
  positionMap.set(child, getPosition(child.el));
1023
- }
1028
+ } else if (_vue_runtime_core.isVaporInteropEnabled && child.vs && child.vb) instance.appContext.vapor.forEachGroupChild(child, (el) => {
1029
+ const row = { el };
1030
+ prevChildren.push(row);
1031
+ positionMap.set(row, getPosition(el));
1032
+ });
1024
1033
  }
1025
1034
  children = slots.default ? (0, _vue_runtime_core.getTransitionRawChildren)(slots.default()) : [];
1026
1035
  for (let i = 0; i < children.length; i++) {
1027
1036
  const child = children[i];
1028
- if (child.key != null) (0, _vue_runtime_core.setTransitionHooks)(child, (0, _vue_runtime_core.resolveTransitionHooks)(child, cssTransitionProps, state, instance));
1037
+ if (_vue_runtime_core.isVaporInteropEnabled && child.vs) child.vs.group = group;
1038
+ else if (child.key != null) (0, _vue_runtime_core.setTransitionHooks)(child, (0, _vue_runtime_core.resolveTransitionHooks)(child, cssTransitionProps, state, instance));
1029
1039
  }
1030
1040
  if (prevChildren.length) {
1031
1041
  const root = instance.vnode.el;
@@ -1039,6 +1049,7 @@ const TransitionGroup = /* @__PURE__ */ decorate({
1039
1049
  };
1040
1050
  }
1041
1051
  });
1052
+ const TransitionGroup = /*@__PURE__*/ (0, _vue_runtime_core.withTransitionEnabled)(TransitionGroupImpl);
1042
1053
  function callPendingCbs(el) {
1043
1054
  if (el[moveCbKey]) el[moveCbKey]();
1044
1055
  if (el[enterCbKey]) el[enterCbKey]();
@@ -1182,7 +1193,7 @@ const vModelTextInit = (el, trim, number, lazy, set) => {
1182
1193
  if (e.target.composing) return;
1183
1194
  (set || el[assignKey])(castValue(el.value, trim, number || el.type === "number"));
1184
1195
  });
1185
- if (trim || number) addEventListener(el, "change", () => {
1196
+ if (trim || number || el.type === "number") addEventListener(el, "change", () => {
1186
1197
  el.value = castValue(el.value, trim, number || el.type === "number");
1187
1198
  });
1188
1199
  if (!lazy) {
@@ -1,5 +1,5 @@
1
1
  /**
2
- * @vue/runtime-dom v3.6.0-rc.12
2
+ * @vue/runtime-dom v3.6.0-rc.14
3
3
  * (c) 2018-present Yuxi (Evan) You and Vue contributors
4
4
  * @license MIT
5
5
  **/
@@ -426,6 +426,21 @@ function normalizeCssVarValue(value) {
426
426
  return String(value);
427
427
  }
428
428
  //#endregion
429
+ //#region packages/shared/src/vaporFlags.ts
430
+ /**
431
+ * The data of the comment a vapor server render opens the branch of a `v-if`
432
+ * chain with, `<!--[1-->`: the digits are the branch's position in the chain,
433
+ * and `<!--]-->` closes it like a fragment.
434
+ */
435
+ function isVaporBranchStart(data) {
436
+ if (data.length < 2 || data.charCodeAt(0) !== 91) return false;
437
+ for (let i = 1; i < data.length; i++) {
438
+ const c = data.charCodeAt(i);
439
+ if (c < 48 || c > 57) return false;
440
+ }
441
+ return true;
442
+ }
443
+ //#endregion
429
444
  //#region packages/reactivity/src/debug.ts
430
445
  const triggerEventInfos = [];
431
446
  function onTrack(sub, debugInfo) {
@@ -3211,6 +3226,16 @@ function createPathGetter(ctx, path) {
3211
3226
  };
3212
3227
  }
3213
3228
  //#endregion
3229
+ //#region packages/runtime-core/src/vaporInteropState.ts
3230
+ /**
3231
+ * Set by `vaporInteropPlugin`. Stays false in apps that never import the
3232
+ * plugin, so bundlers drop the vapor-in-vdom branches of the renderer.
3233
+ */
3234
+ let isVaporInteropEnabled = false;
3235
+ function setVaporInteropEnabled() {
3236
+ isVaporInteropEnabled = true;
3237
+ }
3238
+ //#endregion
3214
3239
  //#region packages/runtime-core/src/components/Teleport.ts
3215
3240
  const pendingMounts = /* @__PURE__ */ new WeakMap();
3216
3241
  const TeleportEndKey = Symbol("_vte");
@@ -3470,13 +3495,18 @@ const BaseTransitionPropsValidators = {
3470
3495
  onAfterAppear: TransitionHookValidator,
3471
3496
  onAppearCancelled: TransitionHookValidator
3472
3497
  };
3498
+ let isTransitionEnabled = false;
3499
+ function withTransitionEnabled(value) {
3500
+ isTransitionEnabled = true;
3501
+ return value;
3502
+ }
3473
3503
  function isEmptyTransitionChild(vnode, instance) {
3474
3504
  if (vnode.type === Comment) return true;
3475
3505
  if (vnode.type === Fragment) {
3476
3506
  const child = isArray(vnode.children) && filterSingleRoot(vnode.children, false);
3477
3507
  return !child || isEmptyTransitionChild(child, instance);
3478
3508
  }
3479
- if (vnode.type === VaporSlot || isVaporComponent(vnode.type)) return !getVaporInterface(instance, vnode).hasTransitionChild(vnode);
3509
+ if (isVaporInteropEnabled && (vnode.type === VaporSlot || isVaporComponent(vnode.type))) return !getVaporInterface(instance, vnode).hasTransitionChild(vnode);
3480
3510
  return !!vnode.component && isEmptyTransitionChild(vnode.component.subTree, instance);
3481
3511
  }
3482
3512
  const BaseTransitionImpl = {
@@ -3493,7 +3523,7 @@ const BaseTransitionImpl = {
3493
3523
  const { mode } = rawProps;
3494
3524
  checkTransitionMode(mode);
3495
3525
  return prepareTransitionSwitch(instance.subTree, child, rawProps, state, instance, mode === "out-in" ? resumeAfterLeave || (resumeAfterLeave = () => {
3496
- if (!(instance.job.flags & 4)) instance.update();
3526
+ if (!(instance.effect.flags & 1024)) instance.update();
3497
3527
  }) : NOOP);
3498
3528
  };
3499
3529
  }
@@ -3513,7 +3543,7 @@ function findNonCommentChild(children) {
3513
3543
  }
3514
3544
  return child;
3515
3545
  }
3516
- const BaseTransition = BaseTransitionImpl;
3546
+ const BaseTransition = /*@__PURE__*/ withTransitionEnabled(BaseTransitionImpl);
3517
3547
  function getLeavingNodesForType(state, vnode) {
3518
3548
  const { leavingNodes } = state;
3519
3549
  let leavingVNodesCache = leavingNodes.get(vnode.type);
@@ -3551,7 +3581,7 @@ function resolveTransitionHooks(vnode, props, state, instance, postClone) {
3551
3581
  return hooks;
3552
3582
  }
3553
3583
  }, props, state, instance);
3554
- if (vnode.type === VaporSlot) extend(hooks, {
3584
+ if (isVaporInteropEnabled && vnode.type === VaporSlot) extend(hooks, {
3555
3585
  __vapor: true,
3556
3586
  props,
3557
3587
  state,
@@ -3728,7 +3758,7 @@ function applyTransitionModeSwitch(leavingVNode, leavingHooks, getEnterHooks, pr
3728
3758
  function setTransitionHooks(vnode, hooks) {
3729
3759
  if (vnode.shapeFlag & 6 && vnode.component) {
3730
3760
  vnode.transition = hooks;
3731
- if (isVaporComponent(vnode.type)) getVaporInterface(vnode.component, vnode).setTransitionHooks(vnode.component, hooks);
3761
+ if (isVaporInteropEnabled && isVaporComponent(vnode.type)) getVaporInterface(vnode.component, vnode).setTransitionHooks(vnode.component, hooks);
3732
3762
  else {
3733
3763
  const subTree = vnode.component.subTree;
3734
3764
  return setTransitionHooks(isTeleport(subTree.type) ? getInnerChild$1(subTree) || subTree : subTree, hooks);
@@ -3767,7 +3797,7 @@ function checkTransitionMode(mode) {
3767
3797
  if (mode && mode !== "in-out" && mode !== "out-in" && mode !== "default") warn$1(`invalid <transition> mode: ${mode}`);
3768
3798
  }
3769
3799
  function getTransitionRoot(vnode) {
3770
- if (vnode.component && !isVaporComponent(vnode.type)) return getTransitionRoot(vnode.component.subTree);
3800
+ if (vnode.component && (!isVaporInteropEnabled || !isVaporComponent(vnode.type))) return getTransitionRoot(vnode.component.subTree);
3771
3801
  if (vnode.type === Fragment) {
3772
3802
  const child = isArray(vnode.children) && filterSingleRoot(vnode.children, false);
3773
3803
  return child ? getTransitionRoot(child) : void 0;
@@ -3954,6 +3984,8 @@ const getContainerType = (container) => {
3954
3984
  if (isMathMLContainer(container)) return "mathml";
3955
3985
  };
3956
3986
  const isComment = (node) => node.nodeType === 8;
3987
+ /** The data of a comment opening a range a hydration steps over as one. */
3988
+ const isRangeStart = (data) => data === "[" || data === "(" || isVaporBranchStart(data);
3957
3989
  function createHydrationFunctions(rendererInternals) {
3958
3990
  const { mt: mountComponent, p: patch, o: { patchProp, createText, nextSibling, parentNode, remove, insert, createComment } } = rendererInternals;
3959
3991
  const hydrate = (vnode, container) => {
@@ -3971,7 +4003,7 @@ function createHydrationFunctions(rendererInternals) {
3971
4003
  };
3972
4004
  const hydrateNode = (node, vnode, parentComponent, parentSuspense, slotScopeIds, optimized = false) => {
3973
4005
  optimized = optimized || !!vnode.dynamicChildren;
3974
- const isFragmentStart = isComment(node) && (node.data === "[" || node.data === "(");
4006
+ const isFragmentStart = isComment(node) && (node.data === "[" || node.data === "(" || isVaporInteropEnabled && isVaporBranchStart(node.data));
3975
4007
  const onMismatch = () => handleMismatch(node, vnode, parentComponent, parentSuspense, slotScopeIds, isFragmentStart);
3976
4008
  const { type, ref, shapeFlag, patchFlag } = vnode;
3977
4009
  let domType = node.nodeType;
@@ -4027,7 +4059,7 @@ function createHydrationFunctions(rendererInternals) {
4027
4059
  else nextNode = hydrateFragment(node, vnode, parentComponent, parentSuspense, slotScopeIds, optimized);
4028
4060
  break;
4029
4061
  case VaporSlot:
4030
- nextNode = getVaporInterface(parentComponent, vnode).hydrateSlot(vnode, node, parentComponent, parentSuspense, slotScopeIds);
4062
+ if (isVaporInteropEnabled) nextNode = getVaporInterface(parentComponent, vnode).hydrateSlot(vnode, node, parentComponent, parentSuspense, slotScopeIds);
4031
4063
  break;
4032
4064
  default: if (shapeFlag & 1) {
4033
4065
  if ((domType !== 1 || vnode.type.toLowerCase() !== node.tagName.toLowerCase()) && !isTemplateNode(node)) nextNode = onMismatch();
@@ -4159,7 +4191,7 @@ function createHydrationFunctions(rendererInternals) {
4159
4191
  if (fragmentSlotScopeIds) slotScopeIds = slotScopeIds ? slotScopeIds.concat(fragmentSlotScopeIds) : fragmentSlotScopeIds;
4160
4192
  const container = parentNode(node);
4161
4193
  const first = nextSibling(node);
4162
- const next = vnode.vo && node.data === "(" ? getVaporInterface(parentComponent, vnode).hydrateSlotOutlet(vnode, node, parentComponent, parentSuspense, slotScopeIds) : hydrateChildren(first, vnode, container, parentComponent, parentSuspense, slotScopeIds, optimized);
4194
+ const next = isVaporInteropEnabled && vnode.vo && node.data === "(" ? getVaporInterface(parentComponent, vnode).hydrateSlotOutlet(vnode, node, parentComponent, parentSuspense, slotScopeIds) : hydrateChildren(first, vnode, container, parentComponent, parentSuspense, slotScopeIds, optimized);
4163
4195
  if (next && isComment(next) && next.data === (node.data === "(" ? ")" : "]")) return nextSibling(vnode.anchor = next);
4164
4196
  else {
4165
4197
  logMismatchError();
@@ -4169,7 +4201,7 @@ function createHydrationFunctions(rendererInternals) {
4169
4201
  };
4170
4202
  const handleMismatch = (node, vnode, parentComponent, parentSuspense, slotScopeIds, isFragment) => {
4171
4203
  if (!isNodeMismatchAllowed(node, vnode)) {
4172
- warn$1(`Hydration node mismatch:\n- rendered on server:`, node, node.nodeType === 3 ? `(text)` : isComment(node) && (node.data === "[" || node.data === "(") ? `(start of fragment)` : ``, `\n- expected on client:`, vnode.type);
4204
+ warn$1(`Hydration node mismatch:\n- rendered on server:`, node, node.nodeType === 3 ? `(text)` : isComment(node) && isRangeStart(node.data) ? `(start of fragment)` : ``, `\n- expected on client:`, vnode.type);
4173
4205
  logMismatchError();
4174
4206
  }
4175
4207
  vnode.el = null;
@@ -4196,7 +4228,7 @@ function createHydrationFunctions(rendererInternals) {
4196
4228
  while (node) {
4197
4229
  node = nextSibling(node);
4198
4230
  if (node && isComment(node)) {
4199
- if (node.data === open) match++;
4231
+ if (node.data === open || isVaporInteropEnabled && open === "[" && isVaporBranchStart(node.data)) match++;
4200
4232
  if (node.data === close) {
4201
4233
  if (match === 0) return nextSibling(node);
4202
4234
  else match--;
@@ -4452,9 +4484,9 @@ const hydrateOnInteraction = (interactions = []) => (hydrate, forEach) => {
4452
4484
  return teardown;
4453
4485
  };
4454
4486
  function forEachElement(node, cb) {
4455
- if (isComment(node) && (node.data === "[" || node.data === "(")) {
4487
+ if (isComment(node) && isRangeStart(node.data)) {
4456
4488
  const open = node.data;
4457
- const close = open === "[" ? "]" : ")";
4489
+ const close = open === "(" ? ")" : "]";
4458
4490
  let depth = 1;
4459
4491
  let next = node.nextSibling;
4460
4492
  while (next) {
@@ -4463,7 +4495,7 @@ function forEachElement(node, cb) {
4463
4495
  } else if (isComment(next)) {
4464
4496
  if (next.data === close) {
4465
4497
  if (--depth === 0) break;
4466
- } else if (next.data === open) depth++;
4498
+ } else if (close === "]" ? next.data === "[" || isVaporBranchStart(next.data) : next.data === open) depth++;
4467
4499
  }
4468
4500
  next = next.nextSibling;
4469
4501
  }
@@ -4566,7 +4598,7 @@ function createAsyncComponentContext(source) {
4566
4598
  setPendingRequest: (request) => pendingRequest = request
4567
4599
  };
4568
4600
  }
4569
- const useAsyncComponentState = (delay, timeout, onError, instance = currentInstance) => {
4601
+ const useAsyncComponentState = (delay = 200, timeout, onError, instance = currentInstance) => {
4570
4602
  const loaded = /* @__PURE__ */ ref(false);
4571
4603
  const error = /* @__PURE__ */ ref();
4572
4604
  const delayed = /* @__PURE__ */ ref(!!delay);
@@ -4623,7 +4655,12 @@ function performAsyncHydrate(el, instance, hydrate, getResolvedComp, load, hydra
4623
4655
  //#endregion
4624
4656
  //#region packages/runtime-core/src/components/KeepAlive.ts
4625
4657
  const isKeepAlive = (vnode) => vnode.type.__isKeepAlive;
4626
- const KeepAlive = {
4658
+ let isKeepAliveEnabled = false;
4659
+ function withKeepAliveEnabled(value) {
4660
+ isKeepAliveEnabled = true;
4661
+ return value;
4662
+ }
4663
+ const KeepAlive = /*@__PURE__*/ withKeepAliveEnabled({
4627
4664
  name: `KeepAlive`,
4628
4665
  __isKeepAlive: true,
4629
4666
  props: {
@@ -4762,7 +4799,7 @@ const KeepAlive = {
4762
4799
  return isSuspense(rawVNode.type) ? rawVNode : vnode;
4763
4800
  };
4764
4801
  }
4765
- };
4802
+ });
4766
4803
  function matches(pattern, name) {
4767
4804
  if (isArray(pattern)) return pattern.some((p) => matches(p, name));
4768
4805
  else if (isString(pattern)) return pattern.split(",").includes(name);
@@ -4994,11 +5031,12 @@ const rawVaporSlotKey = Symbol(`rawVaporSlot`);
4994
5031
  function renderSlot(slots, name, props, fallback, noSlotted, branchKey) {
4995
5032
  if (props == null) props = {};
4996
5033
  let slot = slots[name];
4997
- const vaporSlot = slot && slot[rawVaporSlotKey];
5034
+ const vaporSlot = isVaporInteropEnabled && slot && slot[rawVaporSlotKey];
4998
5035
  if (vaporSlot) {
4999
5036
  const ret = (openBlock(), createBlock(VaporSlot, props));
5000
5037
  ret.vs = {
5001
5038
  slot: vaporSlot,
5039
+ name,
5002
5040
  outlets: fallback ? [{
5003
5041
  fallback,
5004
5042
  owner: currentRenderingInstance
@@ -5029,7 +5067,7 @@ function renderSlot(slots, name, props, fallback, noSlotted, branchKey) {
5029
5067
  try {
5030
5068
  const validSlotContent = slot && ensureValidVNode(slot(props));
5031
5069
  let attached = false;
5032
- if (fallback && validSlotContent && currentRenderingInstance) {
5070
+ if (isVaporInteropEnabled && fallback && validSlotContent && currentRenderingInstance) {
5033
5071
  const interop = currentRenderingInstance.appContext.vapor;
5034
5072
  if (interop) attached = interop.attachSlotOutlet(validSlotContent, fallback, currentRenderingInstance);
5035
5073
  }
@@ -6713,7 +6751,7 @@ function baseCreateRenderer(options, createHydrationFns) {
6713
6751
  processFragment(n1, n2, container, anchor, parentComponent, parentSuspense, namespace, slotScopeIds, optimized);
6714
6752
  break;
6715
6753
  case VaporSlot:
6716
- getVaporInterface(parentComponent, n2).slot(n1, n2, container, anchor, parentComponent, parentSuspense, slotScopeIds);
6754
+ if (isVaporInteropEnabled) getVaporInterface(parentComponent, n2).slot(n1, n2, container, anchor, parentComponent, parentSuspense, slotScopeIds);
6717
6755
  break;
6718
6756
  default: if (shapeFlag & 1) processElement(n1, n2, container, anchor, parentComponent, parentSuspense, namespace, slotScopeIds, optimized);
6719
6757
  else if (shapeFlag & 6) processComponent(n1, n2, container, anchor, parentComponent, parentSuspense, namespace, slotScopeIds, optimized);
@@ -6847,7 +6885,7 @@ function baseCreateRenderer(options, createHydrationFns) {
6847
6885
  let vnodeHook;
6848
6886
  parentComponent && toggleRecurse(parentComponent, false);
6849
6887
  if (vnodeHook = newProps.onVnodeBeforeUpdate) invokeVNodeHook(vnodeHook, parentComponent, n2, n1);
6850
- if (n2.ibu) n2.ibu();
6888
+ if (isVaporInteropEnabled && n2.ibu) n2.ibu();
6851
6889
  if (dirs) invokeDirectiveHook(n2, n1, parentComponent, "beforeUpdate");
6852
6890
  parentComponent && toggleRecurse(parentComponent, true);
6853
6891
  if (isHmrUpdating || dynamicChildren && (!n1.dynamicChildren || n1.dynamicChildren.length !== dynamicChildren.length)) {
@@ -6881,9 +6919,9 @@ function baseCreateRenderer(options, createHydrationFns) {
6881
6919
  if (n1.children !== n2.children) hostSetElementText(el, n2.children);
6882
6920
  }
6883
6921
  } else if (!optimized && dynamicChildren == null) patchProps(el, oldProps, newProps, parentComponent, namespace);
6884
- if ((vnodeHook = newProps.onVnodeUpdated) || dirs || n2.iu) queuePostRenderEffect(() => {
6922
+ if ((vnodeHook = newProps.onVnodeUpdated) || dirs || isVaporInteropEnabled && n2.iu) queuePostRenderEffect(() => {
6885
6923
  vnodeHook && invokeVNodeHook(vnodeHook, parentComponent, n2, n1);
6886
- n2.iu && n2.iu();
6924
+ isVaporInteropEnabled && n2.iu && n2.iu();
6887
6925
  dirs && invokeDirectiveHook(n2, n1, parentComponent, "updated");
6888
6926
  }, void 0, parentSuspense);
6889
6927
  };
@@ -7091,7 +7129,7 @@ function baseCreateRenderer(options, createHydrationFns) {
7091
7129
  } else next = vnode;
7092
7130
  if (bu) invokeArrayFns(bu);
7093
7131
  if (vnodeHook = next.props && next.props.onVnodeBeforeUpdate) invokeVNodeHook(vnodeHook, parent, next, vnode);
7094
- if (next.ibu) next.ibu();
7132
+ if (isVaporInteropEnabled && next.ibu) next.ibu();
7095
7133
  toggleRecurse(instance, true);
7096
7134
  startMeasure(instance, `render`);
7097
7135
  const nextTree = renderComponentRoot(instance);
@@ -7104,9 +7142,9 @@ function baseCreateRenderer(options, createHydrationFns) {
7104
7142
  next.el = nextTree.el;
7105
7143
  if (originNext === null) updateHOCHostEl(instance, nextTree.el);
7106
7144
  if (u) queuePostRenderEffect(u, void 0, parentSuspense);
7107
- if ((vnodeHook = next.props && next.props.onVnodeUpdated) || next.iu) queuePostRenderEffect(() => {
7145
+ if ((vnodeHook = next.props && next.props.onVnodeUpdated) || isVaporInteropEnabled && next.iu) queuePostRenderEffect(() => {
7108
7146
  vnodeHook && invokeVNodeHook(vnodeHook, parent, next, vnode);
7109
- next.iu && next.iu();
7147
+ isVaporInteropEnabled && next.iu && next.iu();
7110
7148
  }, void 0, parentSuspense);
7111
7149
  devtoolsComponentUpdated(instance);
7112
7150
  popWarningContext();
@@ -7258,7 +7296,7 @@ function baseCreateRenderer(options, createHydrationFns) {
7258
7296
  };
7259
7297
  const move = (vnode, container, anchor, moveType, parentComponent, parentSuspense = null) => {
7260
7298
  const { el, type, transition, children, shapeFlag } = vnode;
7261
- if (isVaporComponent(type) || type === VaporSlot) {
7299
+ if (isVaporInteropEnabled && (isVaporComponent(type) || type === VaporSlot)) {
7262
7300
  getVaporInterface(parentComponent, vnode).move(vnode, container, anchor, moveType, parentSuspense);
7263
7301
  return;
7264
7302
  }
@@ -7302,11 +7340,11 @@ function baseCreateRenderer(options, createHydrationFns) {
7302
7340
  }
7303
7341
  if (cacheIndex != null && (!vnode.ctx || vnode.ctx === parentComponent)) parentComponent.renderCache[cacheIndex] = void 0;
7304
7342
  if (shapeFlag & 256) {
7305
- if (isVaporComponent(vnode.type)) getVaporInterface(parentComponent, vnode).deactivate(vnode, parentComponent.ctx.getStorageContainer(), parentSuspense);
7343
+ if (isVaporInteropEnabled && isVaporComponent(vnode.type)) getVaporInterface(parentComponent, vnode).deactivate(vnode, parentComponent.ctx.getStorageContainer(), parentSuspense);
7306
7344
  else parentComponent.ctx.deactivate(vnode);
7307
7345
  return;
7308
7346
  }
7309
- if (shapeFlag & 6 && isVaporComponent(type)) {
7347
+ if (isVaporInteropEnabled && shapeFlag & 6 && isVaporComponent(type)) {
7310
7348
  getVaporInterface(parentComponent, vnode).unmount(vnode, doRemove, parentSuspense);
7311
7349
  return;
7312
7350
  }
@@ -7324,7 +7362,7 @@ function baseCreateRenderer(options, createHydrationFns) {
7324
7362
  if (shapeFlag & 64) vnode.type.remove(vnode, parentComponent, parentSuspense, internals, doRemove);
7325
7363
  else if (dynamicChildren && !dynamicChildren.hasOnce && (type !== Fragment || patchFlag > 0 && patchFlag & 64)) unmountChildren(dynamicChildren, parentComponent, parentSuspense, false, true);
7326
7364
  else if (type === Fragment && patchFlag & 384 || !optimized && shapeFlag & 16) unmountChildren(children, parentComponent, parentSuspense);
7327
- if (type === VaporSlot) {
7365
+ if (isVaporInteropEnabled && type === VaporSlot) {
7328
7366
  getVaporInterface(parentComponent, vnode).unmount(vnode, doRemove, parentSuspense);
7329
7367
  return;
7330
7368
  }
@@ -7358,7 +7396,7 @@ function baseCreateRenderer(options, createHydrationFns) {
7358
7396
  if (transition) {
7359
7397
  let leavingEl = leavingNode && leavingNode.el;
7360
7398
  let isElement = !!(leavingNode && leavingNode.shapeFlag & 1);
7361
- if (isFragment && leavingNode && isVaporComponent(leavingNode.type)) {
7399
+ if (isVaporInteropEnabled && isFragment && leavingNode && isVaporComponent(leavingNode.type)) {
7362
7400
  leavingEl = getVaporInterface(leavingNode.component, leavingNode).getTransitionElement(leavingNode);
7363
7401
  isElement = !!leavingEl;
7364
7402
  }
@@ -7397,7 +7435,7 @@ function baseCreateRenderer(options, createHydrationFns) {
7397
7435
  };
7398
7436
  const getNextHostNode = (vnode) => {
7399
7437
  if (vnode.shapeFlag & 6) {
7400
- if (isVaporComponent(vnode.type)) return hostNextSibling(vnode.anchor);
7438
+ if (isVaporInteropEnabled && isVaporComponent(vnode.type)) return hostNextSibling(vnode.anchor);
7401
7439
  return getNextHostNode(vnode.component.subTree);
7402
7440
  }
7403
7441
  if (vnode.shapeFlag & 128) return vnode.suspense.next();
@@ -7458,7 +7496,7 @@ function resolveChildrenNamespace({ type, props }, currentNamespace) {
7458
7496
  return currentNamespace === "svg" && type === "foreignObject" || currentNamespace === "mathml" && type === "annotation-xml" && props && props.encoding && props.encoding.includes("html") ? void 0 : currentNamespace;
7459
7497
  }
7460
7498
  function toggleRecurse({ effect, job, vapor }, allowed) {
7461
- if (!vapor) {
7499
+ if (!isVaporInteropEnabled || !vapor) {
7462
7500
  if (allowed) {
7463
7501
  effect.flags |= 128;
7464
7502
  job.flags |= 2;
@@ -7570,7 +7608,7 @@ function getInheritedScopeIds(vnode, parentComponent, includeVaporRootIds = true
7570
7608
  currentParent = currentParent.parent;
7571
7609
  } else break;
7572
7610
  }
7573
- const vaporScopeIds = includeVaporRootIds && currentVNode.vaporScopeIds;
7611
+ const vaporScopeIds = isVaporInteropEnabled && includeVaporRootIds && currentVNode.vaporScopeIds;
7574
7612
  if (vaporScopeIds) inheritedScopeIds.push(...vaporScopeIds);
7575
7613
  return inheritedScopeIds;
7576
7614
  }
@@ -7583,8 +7621,13 @@ function resolveAsyncComponentPlaceholder(anchorVnode) {
7583
7621
  //#endregion
7584
7622
  //#region packages/runtime-core/src/components/Suspense.ts
7585
7623
  const isSuspense = (type) => type.__isSuspense;
7624
+ let isSuspenseEnabled = false;
7625
+ function withSuspenseEnabled(value) {
7626
+ isSuspenseEnabled = true;
7627
+ return value;
7628
+ }
7586
7629
  let suspenseId = 0;
7587
- const Suspense = {
7630
+ const Suspense = /*@__PURE__*/ withSuspenseEnabled({
7588
7631
  name: "Suspense",
7589
7632
  __isSuspense: true,
7590
7633
  process(n1, n2, container, anchor, parentComponent, parentSuspense, namespace, slotScopeIds, optimized, rendererInternals) {
@@ -7601,7 +7644,7 @@ const Suspense = {
7601
7644
  },
7602
7645
  hydrate: hydrateSuspense,
7603
7646
  normalize: normalizeSuspenseChildren
7604
- };
7647
+ });
7605
7648
  function triggerEvent(vnode, name) {
7606
7649
  const eventListener = vnode.props && vnode.props[name];
7607
7650
  if (isFunction(eventListener)) eventListener();
@@ -8136,16 +8179,23 @@ function cloneVaporSlotMeta(vnode, extraProps) {
8136
8179
  if (!vaporSlot) return vaporSlot;
8137
8180
  const cloned = {
8138
8181
  slot: vaporSlot.slot,
8182
+ name: vaporSlot.name,
8139
8183
  outlets: vaporSlot.outlets,
8140
- props: vaporSlot.props
8184
+ props: vaporSlot.props,
8185
+ attrs: vaporSlot.attrs && vaporSlot.attrs === EMPTY_OBJ ? {} : vaporSlot.attrs,
8186
+ group: vaporSlot.group
8141
8187
  };
8142
- if (vaporSlot.props && extraProps) {
8188
+ const attrs = cloned.attrs;
8189
+ if (extraProps && vaporSlot.props) {
8143
8190
  let extraSlotProps;
8144
- for (const key in extraProps) if (key !== "key") {
8191
+ for (const key in extraProps) if (attrs ? !isReservedProp(key) : key !== "key") {
8145
8192
  if (!extraSlotProps) extraSlotProps = {};
8146
8193
  extraSlotProps[key] = extraProps[key];
8147
8194
  }
8148
- if (extraSlotProps) cloned.props = mergeProps(vaporSlot.props, extraSlotProps);
8195
+ if (extraSlotProps) {
8196
+ if (attrs) cloned.attrs = mergeProps(attrs, extraSlotProps);
8197
+ else cloned.props = mergeProps(vaporSlot.props, extraSlotProps);
8198
+ }
8149
8199
  }
8150
8200
  if (vnode.el) {
8151
8201
  cloned.state = vaporSlot.state;
@@ -8418,7 +8468,7 @@ function setupComponent(instance, isSSR = false, optimized = false) {
8418
8468
  isSSR && setInSSRSetupState(isSSR);
8419
8469
  const { props, children, vi } = instance.vnode;
8420
8470
  const isStateful = isStatefulComponent(instance);
8421
- if (vi) vi(instance);
8471
+ if (isVaporInteropEnabled && vi) vi(instance);
8422
8472
  else {
8423
8473
  initProps(instance, props, isStateful, isSSR);
8424
8474
  initSlots(instance, children, optimized || isSSR);
@@ -8836,7 +8886,7 @@ function isMemoSame(cached, memo) {
8836
8886
  }
8837
8887
  //#endregion
8838
8888
  //#region packages/runtime-core/src/index.ts
8839
- const version = "3.6.0-rc.12";
8889
+ const version = "3.6.0-rc.14";
8840
8890
  const warn = warn$1;
8841
8891
  /**
8842
8892
  * Runtime error messages. Only exposed in dev or esm builds.
@@ -9249,14 +9299,14 @@ function setVarsOnVNode(vnode, vars) {
9249
9299
  }
9250
9300
  while (vnode.component) {
9251
9301
  const component = vnode.component;
9252
- if (component.vapor) {
9302
+ if (isVaporInteropEnabled && component.vapor) {
9253
9303
  component.appContext.vapor.applyCssVars(vnode, vars);
9254
9304
  return;
9255
9305
  }
9256
9306
  vnode = vnode.component.subTree;
9257
9307
  }
9258
9308
  if (vnode.shapeFlag & 1 && vnode.el) setVarsOnNode(vnode.el, vars);
9259
- else if (vnode.vb) vnode.ctx.appContext.vapor.applyCssVars(vnode, vars);
9309
+ else if (isVaporInteropEnabled && vnode.vb) vnode.ctx.appContext.vapor.applyCssVars(vnode, vars);
9260
9310
  else if (vnode.type === Fragment) vnode.children.forEach((c) => setVarsOnVNode(c, vars));
9261
9311
  else if (vnode.type === Static) {
9262
9312
  let { el, anchor } = vnode;
@@ -9951,7 +10001,7 @@ const decorate = (t) => {
9951
10001
  delete t.props.mode;
9952
10002
  return t;
9953
10003
  };
9954
- const TransitionGroup = /* @__PURE__ */ decorate({
10004
+ const TransitionGroup = /*@__PURE__*/ withTransitionEnabled(/* @__PURE__ */ decorate({
9955
10005
  name: "TransitionGroup",
9956
10006
  props: /*@__PURE__*/ extend({}, TransitionPropsValidators, {
9957
10007
  tag: String,
@@ -9960,6 +10010,11 @@ const TransitionGroup = /* @__PURE__ */ decorate({
9960
10010
  setup(props, { slots }) {
9961
10011
  const instance = getCurrentInstance();
9962
10012
  const state = useTransitionState();
10013
+ const group = {
10014
+ props: {},
10015
+ state,
10016
+ instance
10017
+ };
9963
10018
  let prevChildren;
9964
10019
  let children;
9965
10020
  let origins;
@@ -9990,7 +10045,7 @@ const TransitionGroup = /* @__PURE__ */ decorate({
9990
10045
  });
9991
10046
  return () => {
9992
10047
  const rawProps = /* @__PURE__ */ toRaw(props);
9993
- const cssTransitionProps = resolveTransitionProps(rawProps);
10048
+ const cssTransitionProps = group.props = resolveTransitionProps(rawProps);
9994
10049
  let tag = rawProps.tag || Fragment;
9995
10050
  prevChildren = [];
9996
10051
  moves = void 0;
@@ -10000,12 +10055,17 @@ const TransitionGroup = /* @__PURE__ */ decorate({
10000
10055
  prevChildren.push(child);
10001
10056
  setTransitionHooks(child, resolveTransitionHooks(child, cssTransitionProps, state, instance));
10002
10057
  positionMap.set(child, getPosition(child.el));
10003
- }
10058
+ } else if (isVaporInteropEnabled && child.vs && child.vb) instance.appContext.vapor.forEachGroupChild(child, (el) => {
10059
+ const row = { el };
10060
+ prevChildren.push(row);
10061
+ positionMap.set(row, getPosition(el));
10062
+ });
10004
10063
  }
10005
10064
  children = slots.default ? getTransitionRawChildren(slots.default()) : [];
10006
10065
  for (let i = 0; i < children.length; i++) {
10007
10066
  const child = children[i];
10008
- if (child.key != null) setTransitionHooks(child, resolveTransitionHooks(child, cssTransitionProps, state, instance));
10067
+ if (isVaporInteropEnabled && child.vs) child.vs.group = group;
10068
+ else if (child.key != null) setTransitionHooks(child, resolveTransitionHooks(child, cssTransitionProps, state, instance));
10009
10069
  else if (child.type !== Text) warn(`<TransitionGroup> children must be keyed.`);
10010
10070
  }
10011
10071
  if (prevChildren.length) {
@@ -10019,7 +10079,7 @@ const TransitionGroup = /* @__PURE__ */ decorate({
10019
10079
  return createVNode(tag, null, children);
10020
10080
  };
10021
10081
  }
10022
- });
10082
+ }));
10023
10083
  function callPendingCbs(el) {
10024
10084
  if (el[moveCbKey]) el[moveCbKey]();
10025
10085
  if (el[enterCbKey]) el[enterCbKey]();
@@ -10163,7 +10223,7 @@ const vModelTextInit = (el, trim, number, lazy, set) => {
10163
10223
  if (e.target.composing) return;
10164
10224
  (set || el[assignKey])(castValue(el.value, trim, number || el.type === "number"));
10165
10225
  });
10166
- if (trim || number) addEventListener(el, "change", () => {
10226
+ if (trim || number || el.type === "number") addEventListener(el, "change", () => {
10167
10227
  el.value = castValue(el.value, trim, number || el.type === "number");
10168
10228
  });
10169
10229
  if (!lazy) {
@@ -10534,4 +10594,4 @@ function normalizeContainer(container) {
10534
10594
  */
10535
10595
  const initDirectivesForSSR = NOOP;
10536
10596
  //#endregion
10537
- export { BaseTransition, BaseTransitionPropsValidators, Comment, DeprecationTypes, EffectScope, ErrorCodes, ErrorTypeStrings, Fragment, KeepAlive, MoveType, NULL_DYNAMIC_COMPONENT, ReactiveEffect, Static, Suspense, Teleport, Text, TrackOpTypes, Transition, TransitionGroup, TriggerOpTypes, VueElement, VueElementBase, assertNumber, callWithAsyncErrorHandling, callWithErrorHandling, camelize, capitalize, cloneVNode, compatUtils, computed, createApp, createBlock, createCommentVNode, createElementBlock, createBaseVNode as createElementVNode, createHydrationRenderer, createPropsRestProxy, createRenderer, createSSRApp, createSlots, createStaticVNode, createTextVNode, createVNode, customRef, defineAsyncComponent, defineComponent, defineCustomElement, defineEmits, defineExpose, defineModel, defineOptions, defineProps, defineSSRCustomElement, defineSlots, devtools, effect, effectScope, getCurrentInstance, getCurrentScope, getCurrentWatcher, getTransitionRawChildren, guardReactiveProps, h, handleError, hasInjectionContext, hydrate, hydrateOnIdle, hydrateOnInteraction, hydrateOnMediaQuery, hydrateOnVisible, initCustomFormatter, initDirectivesForSSR, inject, isMemoSame, isProxy, isReactive, isReadonly, isRef, isRuntimeOnly, isShallow, isVNode, markRaw, mergeDefaults, mergeModels, mergeProps, nextTick, nodeOps, normalizeClass, normalizeProps, normalizeStyle, onActivated, onBeforeMount, onBeforeUnmount, onBeforeUpdate, onDeactivated, onErrorCaptured, onMounted, onRenderTracked, onRenderTriggered, onScopeDispose, onServerPrefetch, onUnmounted, onUpdated, onWatcherCleanup, openBlock, patchProp, popScopeId, provide, proxyRefs, pushScopeId, queuePostFlushCb, reactive, readonly, ref, registerRuntimeCompiler, render, renderList, renderSlot, resolveComponent, resolveDirective, resolveDynamicComponent, resolveFilter, resolveTransitionHooks, setBlockTracking, setDevtoolsHook, setIsHydratingEnabled, setTransitionHooks, shallowReactive, shallowReadonly, shallowRef, ssrContextKey, ssrUtils, stop, toDisplayString, toHandlerKey, toHandlers, toRaw, toRef, toRefs, toValue, transformVNodeArgs, triggerRef, unref, useAttrs, useCssModule, useCssVars, useHost, useId, useInstanceOption, useModel, useSSRContext, useShadowRoot, useSlots, useTemplateRef, useTransitionState, vModelCheckbox, vModelDynamic, vModelRadio, vModelSelect, vModelText, vShow, version, warn, watch, watchEffect, watchPostEffect, watchSyncEffect, withAsyncContext, withCtx, withDefaults, withDirectives, withKeys, withMemo, withModifiers, withScopeId };
10597
+ export { BaseTransition, BaseTransitionPropsValidators, Comment, DeprecationTypes, EffectScope, ErrorCodes, ErrorTypeStrings, Fragment, KeepAlive, MoveType, NULL_DYNAMIC_COMPONENT, ReactiveEffect, Static, Suspense, Teleport, Text, TrackOpTypes, Transition, TransitionGroup, TriggerOpTypes, VueElement, VueElementBase, assertNumber, callWithAsyncErrorHandling, callWithErrorHandling, camelize, capitalize, cloneVNode, compatUtils, computed, createApp, createBlock, createCommentVNode, createElementBlock, createBaseVNode as createElementVNode, createHydrationRenderer, createPropsRestProxy, createRenderer, createSSRApp, createSlots, createStaticVNode, createTextVNode, createVNode, customRef, defineAsyncComponent, defineComponent, defineCustomElement, defineEmits, defineExpose, defineModel, defineOptions, defineProps, defineSSRCustomElement, defineSlots, devtools, effect, effectScope, getCurrentInstance, getCurrentScope, getCurrentWatcher, getTransitionRawChildren, guardReactiveProps, h, handleError, hasInjectionContext, hydrate, hydrateOnIdle, hydrateOnInteraction, hydrateOnMediaQuery, hydrateOnVisible, initCustomFormatter, initDirectivesForSSR, inject, isKeepAliveEnabled, isMemoSame, isProxy, isReactive, isReadonly, isRef, isRuntimeOnly, isShallow, isSuspenseEnabled, isTransitionEnabled, isVNode, isVaporInteropEnabled, markRaw, mergeDefaults, mergeModels, mergeProps, nextTick, nodeOps, normalizeClass, normalizeProps, normalizeStyle, onActivated, onBeforeMount, onBeforeUnmount, onBeforeUpdate, onDeactivated, onErrorCaptured, onMounted, onRenderTracked, onRenderTriggered, onScopeDispose, onServerPrefetch, onUnmounted, onUpdated, onWatcherCleanup, openBlock, patchProp, popScopeId, provide, proxyRefs, pushScopeId, queuePostFlushCb, reactive, readonly, ref, registerRuntimeCompiler, render, renderList, renderSlot, resolveComponent, resolveDirective, resolveDynamicComponent, resolveFilter, resolveTransitionHooks, setBlockTracking, setDevtoolsHook, setIsHydratingEnabled, setTransitionHooks, setVaporInteropEnabled, shallowReactive, shallowReadonly, shallowRef, ssrContextKey, ssrUtils, stop, toDisplayString, toHandlerKey, toHandlers, toRaw, toRef, toRefs, toValue, transformVNodeArgs, triggerRef, unref, useAttrs, useCssModule, useCssVars, useHost, useId, useInstanceOption, useModel, useSSRContext, useShadowRoot, useSlots, useTemplateRef, useTransitionState, vModelCheckbox, vModelDynamic, vModelRadio, vModelSelect, vModelText, vShow, version, warn, watch, watchEffect, watchPostEffect, watchSyncEffect, withAsyncContext, withCtx, withDefaults, withDirectives, withKeepAliveEnabled, withKeys, withMemo, withModifiers, withScopeId, withSuspenseEnabled, withTransitionEnabled };