@vue/compat 3.6.0-alpha.7 → 3.6.0-beta.2

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-alpha.7
2
+ * @vue/compat v3.6.0-beta.2
3
3
  * (c) 2018-present Yuxi (Evan) You and Vue contributors
4
4
  * @license MIT
5
5
  **/
@@ -824,13 +824,13 @@ class Dep {
824
824
  }
825
825
  }
826
826
  const targetMap = /* @__PURE__ */ new WeakMap();
827
- const ITERATE_KEY = Symbol(
827
+ const ITERATE_KEY = /* @__PURE__ */ Symbol(
828
828
  "Object iterate"
829
829
  );
830
- const MAP_KEY_ITERATE_KEY = Symbol(
830
+ const MAP_KEY_ITERATE_KEY = /* @__PURE__ */ Symbol(
831
831
  "Map keys iterate"
832
832
  );
833
- const ARRAY_ITERATE_KEY = Symbol(
833
+ const ARRAY_ITERATE_KEY = /* @__PURE__ */ Symbol(
834
834
  "Array iterate"
835
835
  );
836
836
  function track(target, type, key) {
@@ -2451,7 +2451,6 @@ function warn$1(msg, ...args) {
2451
2451
  instance,
2452
2452
  11,
2453
2453
  [
2454
- // eslint-disable-next-line no-restricted-syntax
2455
2454
  msg + args.map((a) => {
2456
2455
  var _a, _b;
2457
2456
  return (_b = (_a = a.toString) == null ? void 0 : _a.call(a)) != null ? _b : JSON.stringify(a);
@@ -2831,10 +2830,10 @@ function flushPostFlushCbs(seen) {
2831
2830
  }
2832
2831
  }
2833
2832
  let isFlushing = false;
2834
- function flushOnAppMount() {
2833
+ function flushOnAppMount(instance) {
2835
2834
  if (!isFlushing) {
2836
2835
  isFlushing = true;
2837
- flushPreFlushCbs();
2836
+ flushPreFlushCbs(instance);
2838
2837
  flushPostFlushCbs();
2839
2838
  isFlushing = false;
2840
2839
  }
@@ -3076,7 +3075,6 @@ function setDevtoolsHook$1(hook, target) {
3076
3075
  // (#4815)
3077
3076
  typeof window !== "undefined" && // some envs mock window but not fully
3078
3077
  window.HTMLElement && // also exclude jsdom
3079
- // eslint-disable-next-line no-restricted-syntax
3080
3078
  !((_b = (_a = window.navigator) == null ? void 0 : _a.userAgent) == null ? void 0 : _b.includes("jsdom"))
3081
3079
  ) {
3082
3080
  const replay = target.__VUE_DEVTOOLS_HOOK_REPLAY__ = target.__VUE_DEVTOOLS_HOOK_REPLAY__ || [];
@@ -3568,65 +3566,6 @@ function emit$1(instance, event, args) {
3568
3566
  return instance.proxy;
3569
3567
  }
3570
3568
 
3571
- const compatModelEventPrefix = `onModelCompat:`;
3572
- const warnedTypes = /* @__PURE__ */ new WeakSet();
3573
- function convertLegacyVModelProps(vnode) {
3574
- const { type, shapeFlag, props, dynamicProps } = vnode;
3575
- const comp = type;
3576
- if (shapeFlag & 6 && props && "modelValue" in props) {
3577
- if (!isCompatEnabled$1(
3578
- "COMPONENT_V_MODEL",
3579
- // this is a special case where we want to use the vnode component's
3580
- // compat config instead of the current rendering instance (which is the
3581
- // parent of the component that exposes v-model)
3582
- { type }
3583
- )) {
3584
- return;
3585
- }
3586
- if (!warnedTypes.has(comp)) {
3587
- pushWarningContext(vnode);
3588
- warnDeprecation$1("COMPONENT_V_MODEL", { type }, comp);
3589
- popWarningContext();
3590
- warnedTypes.add(comp);
3591
- }
3592
- const model = comp.model || {};
3593
- applyModelFromMixins(model, comp.mixins);
3594
- const { prop = "value", event = "input" } = model;
3595
- if (prop !== "modelValue") {
3596
- props[prop] = props.modelValue;
3597
- delete props.modelValue;
3598
- }
3599
- if (dynamicProps) {
3600
- dynamicProps[dynamicProps.indexOf("modelValue")] = prop;
3601
- }
3602
- props[compatModelEventPrefix + event] = props["onUpdate:modelValue"];
3603
- delete props["onUpdate:modelValue"];
3604
- }
3605
- }
3606
- function applyModelFromMixins(model, mixins) {
3607
- if (mixins) {
3608
- mixins.forEach((m) => {
3609
- if (m.model) extend(model, m.model);
3610
- if (m.mixins) applyModelFromMixins(model, m.mixins);
3611
- });
3612
- }
3613
- }
3614
- function compatModelEmit(instance, event, args) {
3615
- if (!isCompatEnabled$1("COMPONENT_V_MODEL", instance)) {
3616
- return;
3617
- }
3618
- const props = instance.vnode.props;
3619
- const modelHandler = props && props[compatModelEventPrefix + event];
3620
- if (modelHandler) {
3621
- callWithErrorHandling(
3622
- modelHandler,
3623
- instance,
3624
- 6,
3625
- args
3626
- );
3627
- }
3628
- }
3629
-
3630
3569
  let currentRenderingInstance = null;
3631
3570
  let currentScopeId = null;
3632
3571
  function setCurrentRenderingInstance(instance) {
@@ -3777,7 +3716,203 @@ function invokeDirectiveHook(vnode, prevVNode, instance, name) {
3777
3716
  }
3778
3717
  }
3779
3718
 
3780
- const TeleportEndKey = Symbol("_vte");
3719
+ function provide(key, value) {
3720
+ {
3721
+ if (!currentInstance || currentInstance.isMounted && !isHmrUpdating) {
3722
+ warn$1(`provide() can only be used inside setup().`);
3723
+ }
3724
+ }
3725
+ if (currentInstance) {
3726
+ let provides = currentInstance.provides;
3727
+ const parentProvides = currentInstance.parent && currentInstance.parent.provides;
3728
+ if (parentProvides === provides) {
3729
+ provides = currentInstance.provides = Object.create(parentProvides);
3730
+ }
3731
+ provides[key] = value;
3732
+ }
3733
+ }
3734
+ function inject(key, defaultValue, treatDefaultAsFactory = false) {
3735
+ const instance = getCurrentGenericInstance();
3736
+ if (instance || currentApp) {
3737
+ let provides = currentApp ? currentApp._context.provides : instance ? instance.parent == null || instance.ce ? instance.appContext && instance.appContext.provides : instance.parent.provides : void 0;
3738
+ if (provides && key in provides) {
3739
+ return provides[key];
3740
+ } else if (arguments.length > 1) {
3741
+ return treatDefaultAsFactory && isFunction(defaultValue) ? defaultValue.call(instance && instance.proxy) : defaultValue;
3742
+ } else {
3743
+ warn$1(`injection "${String(key)}" not found.`);
3744
+ }
3745
+ } else {
3746
+ warn$1(`inject() can only be used inside setup() or functional components.`);
3747
+ }
3748
+ }
3749
+ function hasInjectionContext() {
3750
+ return !!(getCurrentGenericInstance() || currentApp);
3751
+ }
3752
+
3753
+ const ssrContextKey = /* @__PURE__ */ Symbol.for("v-scx");
3754
+ const useSSRContext = () => {
3755
+ {
3756
+ const ctx = inject(ssrContextKey);
3757
+ if (!ctx) {
3758
+ warn$1(
3759
+ `Server rendering context not provided. Make sure to only call useSSRContext() conditionally in the server build.`
3760
+ );
3761
+ }
3762
+ return ctx;
3763
+ }
3764
+ };
3765
+
3766
+ function watchEffect(effect, options) {
3767
+ return doWatch(effect, null, options);
3768
+ }
3769
+ function watchPostEffect(effect, options) {
3770
+ return doWatch(
3771
+ effect,
3772
+ null,
3773
+ extend({}, options, { flush: "post" })
3774
+ );
3775
+ }
3776
+ function watchSyncEffect(effect, options) {
3777
+ return doWatch(
3778
+ effect,
3779
+ null,
3780
+ extend({}, options, { flush: "sync" })
3781
+ );
3782
+ }
3783
+ function watch(source, cb, options) {
3784
+ if (!isFunction(cb)) {
3785
+ warn$1(
3786
+ `\`watch(fn, options?)\` signature has been moved to a separate API. Use \`watchEffect(fn, options?)\` instead. \`watch\` now only supports \`watch(source, cb, options?) signature.`
3787
+ );
3788
+ }
3789
+ return doWatch(source, cb, options);
3790
+ }
3791
+ class RenderWatcherEffect extends WatcherEffect {
3792
+ constructor(instance, source, cb, options, flush) {
3793
+ super(source, cb, options);
3794
+ this.flush = flush;
3795
+ const job = () => {
3796
+ if (this.dirty) {
3797
+ this.run();
3798
+ }
3799
+ };
3800
+ if (cb) {
3801
+ this.flags |= 128;
3802
+ job.flags |= 2;
3803
+ }
3804
+ if (instance) {
3805
+ job.i = instance;
3806
+ }
3807
+ this.job = job;
3808
+ }
3809
+ notify() {
3810
+ const flags = this.flags;
3811
+ if (!(flags & 256)) {
3812
+ const flush = this.flush;
3813
+ const job = this.job;
3814
+ if (flush === "post") {
3815
+ queuePostRenderEffect(job, void 0, job.i ? job.i.suspense : null);
3816
+ } else if (flush === "pre") {
3817
+ queueJob(job, job.i ? job.i.uid : void 0, true);
3818
+ } else {
3819
+ job();
3820
+ }
3821
+ }
3822
+ }
3823
+ }
3824
+ function doWatch(source, cb, options = EMPTY_OBJ) {
3825
+ const { immediate, deep, flush = "pre", once } = options;
3826
+ if (!cb) {
3827
+ if (immediate !== void 0) {
3828
+ warn$1(
3829
+ `watch() "immediate" option is only respected when using the watch(source, callback, options?) signature.`
3830
+ );
3831
+ }
3832
+ if (deep !== void 0) {
3833
+ warn$1(
3834
+ `watch() "deep" option is only respected when using the watch(source, callback, options?) signature.`
3835
+ );
3836
+ }
3837
+ if (once !== void 0) {
3838
+ warn$1(
3839
+ `watch() "once" option is only respected when using the watch(source, callback, options?) signature.`
3840
+ );
3841
+ }
3842
+ }
3843
+ const baseWatchOptions = extend({}, options);
3844
+ baseWatchOptions.onWarn = warn$1;
3845
+ const runsImmediately = cb && immediate || !cb && flush !== "post";
3846
+ let ssrCleanup;
3847
+ if (isInSSRComponentSetup) {
3848
+ if (flush === "sync") {
3849
+ const ctx = useSSRContext();
3850
+ ssrCleanup = ctx.__watcherHandles || (ctx.__watcherHandles = []);
3851
+ } else if (!runsImmediately) {
3852
+ const watchStopHandle = () => {
3853
+ };
3854
+ watchStopHandle.stop = NOOP;
3855
+ watchStopHandle.resume = NOOP;
3856
+ watchStopHandle.pause = NOOP;
3857
+ return watchStopHandle;
3858
+ }
3859
+ }
3860
+ const instance = currentInstance;
3861
+ baseWatchOptions.call = (fn, type, args) => callWithAsyncErrorHandling(fn, instance, type, args);
3862
+ const effect = new RenderWatcherEffect(
3863
+ instance,
3864
+ source,
3865
+ cb,
3866
+ baseWatchOptions,
3867
+ flush
3868
+ );
3869
+ if (cb) {
3870
+ effect.run(true);
3871
+ } else if (flush === "post") {
3872
+ queuePostRenderEffect(effect.job, void 0, instance && instance.suspense);
3873
+ } else {
3874
+ effect.run(true);
3875
+ }
3876
+ const stop = effect.stop.bind(effect);
3877
+ stop.pause = effect.pause.bind(effect);
3878
+ stop.resume = effect.resume.bind(effect);
3879
+ stop.stop = stop;
3880
+ if (isInSSRComponentSetup) {
3881
+ if (ssrCleanup) {
3882
+ ssrCleanup.push(stop);
3883
+ } else if (runsImmediately) {
3884
+ stop();
3885
+ }
3886
+ }
3887
+ return stop;
3888
+ }
3889
+ function instanceWatch(source, value, options) {
3890
+ const publicThis = this.proxy;
3891
+ const getter = isString(source) ? source.includes(".") ? createPathGetter(publicThis, source) : () => publicThis[source] : source.bind(publicThis, publicThis);
3892
+ let cb;
3893
+ if (isFunction(value)) {
3894
+ cb = value;
3895
+ } else {
3896
+ cb = value.handler;
3897
+ options = value;
3898
+ }
3899
+ const prev = setCurrentInstance(this);
3900
+ const res = doWatch(getter, cb.bind(publicThis), options);
3901
+ setCurrentInstance(...prev);
3902
+ return res;
3903
+ }
3904
+ function createPathGetter(ctx, path) {
3905
+ const segments = path.split(".");
3906
+ return () => {
3907
+ let cur = ctx;
3908
+ for (let i = 0; i < segments.length && cur; i++) {
3909
+ cur = cur[segments[i]];
3910
+ }
3911
+ return cur;
3912
+ };
3913
+ }
3914
+
3915
+ const TeleportEndKey = /* @__PURE__ */ Symbol("_vte");
3781
3916
  const isTeleport = (type) => type.__isTeleport;
3782
3917
  const isTeleportDisabled = (props) => props && (props.disabled || props.disabled === "");
3783
3918
  const isTeleportDeferred = (props) => props && (props.defer || props.defer === "");
@@ -4149,8 +4284,8 @@ function prepareAnchor(target, vnode, createText, insert) {
4149
4284
  return targetAnchor;
4150
4285
  }
4151
4286
 
4152
- const leaveCbKey = Symbol("_leaveCb");
4153
- const enterCbKey$1 = Symbol("_enterCb");
4287
+ const leaveCbKey = /* @__PURE__ */ Symbol("_leaveCb");
4288
+ const enterCbKey$1 = /* @__PURE__ */ Symbol("_enterCb");
4154
4289
  function useTransitionState() {
4155
4290
  const state = {
4156
4291
  isMounted: false,
@@ -5406,9 +5541,17 @@ function isMismatchAllowed(el, allowedType) {
5406
5541
  }
5407
5542
  }
5408
5543
 
5409
- const requestIdleCallback = getGlobalThis().requestIdleCallback || ((cb) => setTimeout(cb, 1));
5410
- const cancelIdleCallback = getGlobalThis().cancelIdleCallback || ((id) => clearTimeout(id));
5544
+ let requestIdleCallback;
5545
+ let cancelIdleCallback;
5546
+ function ensureIdleCallbacks() {
5547
+ if (!requestIdleCallback) {
5548
+ const g = getGlobalThis();
5549
+ requestIdleCallback = g.requestIdleCallback || ((cb) => setTimeout(cb, 1));
5550
+ cancelIdleCallback = g.cancelIdleCallback || ((id) => clearTimeout(id));
5551
+ }
5552
+ }
5411
5553
  const hydrateOnIdle = (timeout = 1e4) => (hydrate) => {
5554
+ ensureIdleCallbacks();
5412
5555
  const id = requestIdleCallback(hydrate, { timeout });
5413
5556
  return () => cancelIdleCallback(id);
5414
5557
  };
@@ -5766,7 +5909,9 @@ const KeepAliveImpl = {
5766
5909
  }
5767
5910
  function pruneCache(filter) {
5768
5911
  cache.forEach((vnode, key) => {
5769
- const name = getComponentName(vnode.type);
5912
+ const name = getComponentName(
5913
+ isAsyncWrapper(vnode) ? vnode.type.__asyncResolved || {} : vnode.type
5914
+ );
5770
5915
  if (name && !filter(name)) {
5771
5916
  pruneCacheEntry(key);
5772
5917
  }
@@ -6108,7 +6253,7 @@ const FILTERS = "filters";
6108
6253
  function resolveComponent(name, maybeSelfReference) {
6109
6254
  return resolveAsset(COMPONENTS, name, true, maybeSelfReference) || name;
6110
6255
  }
6111
- const NULL_DYNAMIC_COMPONENT = Symbol.for("v-ndc");
6256
+ const NULL_DYNAMIC_COMPONENT = /* @__PURE__ */ Symbol.for("v-ndc");
6112
6257
  function resolveDynamicComponent(component) {
6113
6258
  if (isString(component)) {
6114
6259
  return resolveAsset(COMPONENTS, component, false) || component;
@@ -6550,14 +6695,14 @@ function ensureVaporSlotFallback(vnodes, fallback) {
6550
6695
  }
6551
6696
  }
6552
6697
 
6553
- function toHandlers(obj, preserveCaseIfNecessary) {
6698
+ function toHandlers(obj, preserveCaseIfNecessary, needWrap) {
6554
6699
  const ret = {};
6555
6700
  if (!isObject(obj)) {
6556
6701
  warn$1(`v-on with no argument expects an object value.`);
6557
6702
  return ret;
6558
6703
  }
6559
6704
  for (const key in obj) {
6560
- ret[preserveCaseIfNecessary && /[A-Z]/.test(key) ? `on:${key}` : toHandlerKey(key)] = obj[key];
6705
+ ret[preserveCaseIfNecessary && /[A-Z]/.test(key) ? `on:${key}` : toHandlerKey(key)] = needWrap ? () => obj[key] : obj[key];
6561
6706
  }
6562
6707
  return ret;
6563
6708
  }
@@ -7698,7 +7843,7 @@ function createCompatVue$1(createApp, createSingletonApp) {
7698
7843
  return vm;
7699
7844
  }
7700
7845
  }
7701
- Vue.version = `2.6.14-compat:${"3.6.0-alpha.7"}`;
7846
+ Vue.version = `2.6.14-compat:${"3.6.0-beta.2"}`;
7702
7847
  Vue.config = singletonApp.config;
7703
7848
  Vue.use = (plugin, ...options) => {
7704
7849
  if (plugin && isFunction(plugin.install)) {
@@ -8192,270 +8337,140 @@ function createAppAPI(mount, unmount, getPublicInstance, render) {
8192
8337
  app._container = rootContainer;
8193
8338
  rootContainer.__vue_app__ = app;
8194
8339
  return getPublicInstance(instance);
8195
- } else {
8196
- warn$1(
8197
- `App has already been mounted.
8198
- If you want to remount the same app, move your app creation logic into a factory function and create fresh app instances for each mount - e.g. \`const createMyApp = () => createApp(App)\``
8199
- );
8200
- }
8201
- },
8202
- onUnmount(cleanupFn) {
8203
- if (typeof cleanupFn !== "function") {
8204
- warn$1(
8205
- `Expected function as first argument to app.onUnmount(), but got ${typeof cleanupFn}`
8206
- );
8207
- }
8208
- pluginCleanupFns.push(cleanupFn);
8209
- },
8210
- unmount() {
8211
- if (isMounted) {
8212
- callWithAsyncErrorHandling(
8213
- pluginCleanupFns,
8214
- app._instance,
8215
- 16
8216
- );
8217
- unmount(app);
8218
- {
8219
- app._instance = null;
8220
- devtoolsUnmountApp(app);
8221
- }
8222
- delete app._container.__vue_app__;
8223
- } else {
8224
- warn$1(`Cannot unmount an app that is not mounted.`);
8225
- }
8226
- },
8227
- provide(key, value) {
8228
- if (key in context.provides) {
8229
- if (hasOwn(context.provides, key)) {
8230
- warn$1(
8231
- `App already provides property with key "${String(key)}". It will be overwritten with the new value.`
8232
- );
8233
- } else {
8234
- warn$1(
8235
- `App already provides property with key "${String(key)}" inherited from its parent element. It will be overwritten with the new value.`
8236
- );
8237
- }
8238
- }
8239
- context.provides[key] = value;
8240
- return app;
8241
- },
8242
- runWithContext(fn) {
8243
- const lastApp = currentApp;
8244
- currentApp = app;
8245
- try {
8246
- return fn();
8247
- } finally {
8248
- currentApp = lastApp;
8249
- }
8250
- }
8251
- };
8252
- {
8253
- installAppCompatProperties(
8254
- app,
8255
- context,
8256
- // vapor doesn't have compat mode so this is always passed
8257
- render
8258
- );
8259
- }
8260
- return app;
8261
- };
8262
- }
8263
- let currentApp = null;
8264
-
8265
- function provide(key, value) {
8266
- {
8267
- if (!currentInstance || currentInstance.isMounted) {
8268
- warn$1(`provide() can only be used inside setup().`);
8269
- }
8270
- }
8271
- if (currentInstance) {
8272
- let provides = currentInstance.provides;
8273
- const parentProvides = currentInstance.parent && currentInstance.parent.provides;
8274
- if (parentProvides === provides) {
8275
- provides = currentInstance.provides = Object.create(parentProvides);
8276
- }
8277
- provides[key] = value;
8278
- }
8279
- }
8280
- function inject(key, defaultValue, treatDefaultAsFactory = false) {
8281
- const instance = getCurrentGenericInstance();
8282
- if (instance || currentApp) {
8283
- let provides = currentApp ? currentApp._context.provides : instance ? instance.parent == null || instance.ce ? instance.appContext && instance.appContext.provides : instance.parent.provides : void 0;
8284
- if (provides && key in provides) {
8285
- return provides[key];
8286
- } else if (arguments.length > 1) {
8287
- return treatDefaultAsFactory && isFunction(defaultValue) ? defaultValue.call(instance && instance.proxy) : defaultValue;
8288
- } else {
8289
- warn$1(`injection "${String(key)}" not found.`);
8290
- }
8291
- } else {
8292
- warn$1(`inject() can only be used inside setup() or functional components.`);
8293
- }
8294
- }
8295
- function hasInjectionContext() {
8296
- return !!(getCurrentGenericInstance() || currentApp);
8297
- }
8298
-
8299
- const ssrContextKey = Symbol.for("v-scx");
8300
- const useSSRContext = () => {
8301
- {
8302
- const ctx = inject(ssrContextKey);
8303
- if (!ctx) {
8304
- warn$1(
8305
- `Server rendering context not provided. Make sure to only call useSSRContext() conditionally in the server build.`
8306
- );
8307
- }
8308
- return ctx;
8309
- }
8310
- };
8311
-
8312
- function watchEffect(effect, options) {
8313
- return doWatch(effect, null, options);
8314
- }
8315
- function watchPostEffect(effect, options) {
8316
- return doWatch(
8317
- effect,
8318
- null,
8319
- extend({}, options, { flush: "post" })
8320
- );
8321
- }
8322
- function watchSyncEffect(effect, options) {
8323
- return doWatch(
8324
- effect,
8325
- null,
8326
- extend({}, options, { flush: "sync" })
8327
- );
8328
- }
8329
- function watch(source, cb, options) {
8330
- if (!isFunction(cb)) {
8331
- warn$1(
8332
- `\`watch(fn, options?)\` signature has been moved to a separate API. Use \`watchEffect(fn, options?)\` instead. \`watch\` now only supports \`watch(source, cb, options?) signature.`
8333
- );
8334
- }
8335
- return doWatch(source, cb, options);
8336
- }
8337
- class RenderWatcherEffect extends WatcherEffect {
8338
- constructor(instance, source, cb, options, flush) {
8339
- super(source, cb, options);
8340
- this.flush = flush;
8341
- const job = () => {
8342
- if (this.dirty) {
8343
- this.run();
8340
+ } else {
8341
+ warn$1(
8342
+ `App has already been mounted.
8343
+ If you want to remount the same app, move your app creation logic into a factory function and create fresh app instances for each mount - e.g. \`const createMyApp = () => createApp(App)\``
8344
+ );
8345
+ }
8346
+ },
8347
+ onUnmount(cleanupFn) {
8348
+ if (typeof cleanupFn !== "function") {
8349
+ warn$1(
8350
+ `Expected function as first argument to app.onUnmount(), but got ${typeof cleanupFn}`
8351
+ );
8352
+ }
8353
+ pluginCleanupFns.push(cleanupFn);
8354
+ },
8355
+ unmount() {
8356
+ if (isMounted) {
8357
+ callWithAsyncErrorHandling(
8358
+ pluginCleanupFns,
8359
+ app._instance,
8360
+ 16
8361
+ );
8362
+ unmount(app);
8363
+ {
8364
+ app._instance = null;
8365
+ devtoolsUnmountApp(app);
8366
+ }
8367
+ delete app._container.__vue_app__;
8368
+ } else {
8369
+ warn$1(`Cannot unmount an app that is not mounted.`);
8370
+ }
8371
+ },
8372
+ provide(key, value) {
8373
+ if (key in context.provides) {
8374
+ if (hasOwn(context.provides, key)) {
8375
+ warn$1(
8376
+ `App already provides property with key "${String(key)}". It will be overwritten with the new value.`
8377
+ );
8378
+ } else {
8379
+ warn$1(
8380
+ `App already provides property with key "${String(key)}" inherited from its parent element. It will be overwritten with the new value.`
8381
+ );
8382
+ }
8383
+ }
8384
+ context.provides[key] = value;
8385
+ return app;
8386
+ },
8387
+ runWithContext(fn) {
8388
+ const lastApp = currentApp;
8389
+ currentApp = app;
8390
+ try {
8391
+ return fn();
8392
+ } finally {
8393
+ currentApp = lastApp;
8394
+ }
8344
8395
  }
8345
8396
  };
8346
- if (cb) {
8347
- this.flags |= 128;
8348
- job.flags |= 2;
8349
- }
8350
- if (instance) {
8351
- job.i = instance;
8352
- }
8353
- this.job = job;
8354
- }
8355
- notify() {
8356
- const flags = this.flags;
8357
- if (!(flags & 256)) {
8358
- const flush = this.flush;
8359
- const job = this.job;
8360
- if (flush === "post") {
8361
- queuePostRenderEffect(job, void 0, job.i ? job.i.suspense : null);
8362
- } else if (flush === "pre") {
8363
- queueJob(job, job.i ? job.i.uid : void 0, true);
8364
- } else {
8365
- job();
8366
- }
8367
- }
8368
- }
8369
- }
8370
- function doWatch(source, cb, options = EMPTY_OBJ) {
8371
- const { immediate, deep, flush = "pre", once } = options;
8372
- if (!cb) {
8373
- if (immediate !== void 0) {
8374
- warn$1(
8375
- `watch() "immediate" option is only respected when using the watch(source, callback, options?) signature.`
8397
+ {
8398
+ installAppCompatProperties(
8399
+ app,
8400
+ context,
8401
+ // vapor doesn't have compat mode so this is always passed
8402
+ render
8376
8403
  );
8377
8404
  }
8378
- if (deep !== void 0) {
8379
- warn$1(
8380
- `watch() "deep" option is only respected when using the watch(source, callback, options?) signature.`
8381
- );
8405
+ return app;
8406
+ };
8407
+ }
8408
+ let currentApp = null;
8409
+
8410
+ const compatModelEventPrefix = `onModelCompat:`;
8411
+ const warnedTypes = /* @__PURE__ */ new WeakSet();
8412
+ function convertLegacyVModelProps(vnode) {
8413
+ const { type, shapeFlag, props, dynamicProps } = vnode;
8414
+ const comp = type;
8415
+ if (shapeFlag & 6 && props && "modelValue" in props) {
8416
+ if (!isCompatEnabled$1(
8417
+ "COMPONENT_V_MODEL",
8418
+ // this is a special case where we want to use the vnode component's
8419
+ // compat config instead of the current rendering instance (which is the
8420
+ // parent of the component that exposes v-model)
8421
+ { type }
8422
+ )) {
8423
+ return;
8382
8424
  }
8383
- if (once !== void 0) {
8384
- warn$1(
8385
- `watch() "once" option is only respected when using the watch(source, callback, options?) signature.`
8425
+ if (!warnedTypes.has(comp)) {
8426
+ pushWarningContext(vnode);
8427
+ warnDeprecation$1(
8428
+ "COMPONENT_V_MODEL",
8429
+ {
8430
+ type,
8431
+ appContext: vnode.ctx && vnode.ctx.appContext || createAppContext()
8432
+ },
8433
+ comp
8386
8434
  );
8435
+ popWarningContext();
8436
+ warnedTypes.add(comp);
8387
8437
  }
8388
- }
8389
- const baseWatchOptions = extend({}, options);
8390
- baseWatchOptions.onWarn = warn$1;
8391
- const runsImmediately = cb && immediate || !cb && flush !== "post";
8392
- let ssrCleanup;
8393
- if (isInSSRComponentSetup) {
8394
- if (flush === "sync") {
8395
- const ctx = useSSRContext();
8396
- ssrCleanup = ctx.__watcherHandles || (ctx.__watcherHandles = []);
8397
- } else if (!runsImmediately) {
8398
- const watchStopHandle = () => {
8399
- };
8400
- watchStopHandle.stop = NOOP;
8401
- watchStopHandle.resume = NOOP;
8402
- watchStopHandle.pause = NOOP;
8403
- return watchStopHandle;
8438
+ const model = comp.model || {};
8439
+ applyModelFromMixins(model, comp.mixins);
8440
+ const { prop = "value", event = "input" } = model;
8441
+ if (prop !== "modelValue") {
8442
+ props[prop] = props.modelValue;
8443
+ delete props.modelValue;
8404
8444
  }
8405
- }
8406
- const instance = currentInstance;
8407
- baseWatchOptions.call = (fn, type, args) => callWithAsyncErrorHandling(fn, instance, type, args);
8408
- const effect = new RenderWatcherEffect(
8409
- instance,
8410
- source,
8411
- cb,
8412
- baseWatchOptions,
8413
- flush
8414
- );
8415
- if (cb) {
8416
- effect.run(true);
8417
- } else if (flush === "post") {
8418
- queuePostRenderEffect(effect.job, void 0, instance && instance.suspense);
8419
- } else {
8420
- effect.run(true);
8421
- }
8422
- const stop = effect.stop.bind(effect);
8423
- stop.pause = effect.pause.bind(effect);
8424
- stop.resume = effect.resume.bind(effect);
8425
- stop.stop = stop;
8426
- if (isInSSRComponentSetup) {
8427
- if (ssrCleanup) {
8428
- ssrCleanup.push(stop);
8429
- } else if (runsImmediately) {
8430
- stop();
8445
+ if (dynamicProps) {
8446
+ dynamicProps[dynamicProps.indexOf("modelValue")] = prop;
8431
8447
  }
8448
+ props[compatModelEventPrefix + event] = props["onUpdate:modelValue"];
8449
+ delete props["onUpdate:modelValue"];
8432
8450
  }
8433
- return stop;
8434
8451
  }
8435
- function instanceWatch(source, value, options) {
8436
- const publicThis = this.proxy;
8437
- const getter = isString(source) ? source.includes(".") ? createPathGetter(publicThis, source) : () => publicThis[source] : source.bind(publicThis, publicThis);
8438
- let cb;
8439
- if (isFunction(value)) {
8440
- cb = value;
8441
- } else {
8442
- cb = value.handler;
8443
- options = value;
8452
+ function applyModelFromMixins(model, mixins) {
8453
+ if (mixins) {
8454
+ mixins.forEach((m) => {
8455
+ if (m.model) extend(model, m.model);
8456
+ if (m.mixins) applyModelFromMixins(model, m.mixins);
8457
+ });
8444
8458
  }
8445
- const prev = setCurrentInstance(this);
8446
- const res = doWatch(getter, cb.bind(publicThis), options);
8447
- setCurrentInstance(...prev);
8448
- return res;
8449
8459
  }
8450
- function createPathGetter(ctx, path) {
8451
- const segments = path.split(".");
8452
- return () => {
8453
- let cur = ctx;
8454
- for (let i = 0; i < segments.length && cur; i++) {
8455
- cur = cur[segments[i]];
8456
- }
8457
- return cur;
8458
- };
8460
+ function compatModelEmit(instance, event, args) {
8461
+ if (!isCompatEnabled$1("COMPONENT_V_MODEL", instance)) {
8462
+ return;
8463
+ }
8464
+ const props = instance.vnode.props;
8465
+ const modelHandler = props && props[compatModelEventPrefix + event];
8466
+ if (modelHandler) {
8467
+ callWithErrorHandling(
8468
+ modelHandler,
8469
+ instance,
8470
+ 6,
8471
+ args
8472
+ );
8473
+ }
8459
8474
  }
8460
8475
 
8461
8476
  function useModel(props, name, options = EMPTY_OBJ) {
@@ -9647,6 +9662,14 @@ function isSupported() {
9647
9662
  return supported;
9648
9663
  }
9649
9664
 
9665
+ const MoveType = {
9666
+ "ENTER": 0,
9667
+ "0": "ENTER",
9668
+ "LEAVE": 1,
9669
+ "1": "LEAVE",
9670
+ "REORDER": 2,
9671
+ "2": "REORDER"
9672
+ };
9650
9673
  const queuePostRenderEffect = queueEffectWithSuspense ;
9651
9674
  function createRenderer(options) {
9652
9675
  return baseCreateRenderer(options);
@@ -9795,7 +9818,15 @@ function baseCreateRenderer(options, createHydrationFns) {
9795
9818
  } else {
9796
9819
  const el = n2.el = n1.el;
9797
9820
  if (n2.children !== n1.children) {
9798
- hostSetText(el, n2.children);
9821
+ if (isHmrUpdating && n2.patchFlag === -1 && "__elIndex" in n1) {
9822
+ const childNodes = container.childNodes;
9823
+ const newChild = hostCreateText(n2.children);
9824
+ const oldChild = childNodes[n2.__elIndex = n1.__elIndex];
9825
+ hostInsert(newChild, container, oldChild);
9826
+ hostRemove(oldChild);
9827
+ } else {
9828
+ hostSetText(el, n2.children);
9829
+ }
9799
9830
  }
9800
9831
  }
9801
9832
  };
@@ -10181,7 +10212,7 @@ function baseCreateRenderer(options, createHydrationFns) {
10181
10212
  } else {
10182
10213
  if (patchFlag > 0 && patchFlag & 64 && dynamicChildren && // #2715 the previous fragment could've been a BAILed one as a result
10183
10214
  // of renderSlot() with no valid children
10184
- n1.dynamicChildren) {
10215
+ n1.dynamicChildren && n1.dynamicChildren.length === dynamicChildren.length) {
10185
10216
  patchBlockChildren(
10186
10217
  n1.dynamicChildren,
10187
10218
  dynamicChildren,
@@ -10897,8 +10928,8 @@ function baseCreateRenderer(options, createHydrationFns) {
10897
10928
  const nextChild = c2[nextIndex];
10898
10929
  const anchorVNode = c2[nextIndex + 1];
10899
10930
  const anchor = nextIndex + 1 < l2 ? (
10900
- // #13559, fallback to el placeholder for unresolved async component
10901
- anchorVNode.el || anchorVNode.placeholder
10931
+ // #13559, #14173 fallback to el placeholder for unresolved async component
10932
+ anchorVNode.el || resolveAsyncComponentPlaceholder(anchorVNode)
10902
10933
  ) : parentAnchor;
10903
10934
  if (newIndexToOldIndexMap[i] === 0) {
10904
10935
  patch(
@@ -11213,9 +11244,11 @@ function baseCreateRenderer(options, createHydrationFns) {
11213
11244
  return teleportEnd ? hostNextSibling(teleportEnd) : el;
11214
11245
  };
11215
11246
  const render = (vnode, container, namespace) => {
11247
+ let instance;
11216
11248
  if (vnode == null) {
11217
11249
  if (container._vnode) {
11218
11250
  unmount(container._vnode, null, null, true);
11251
+ instance = container._vnode.component;
11219
11252
  }
11220
11253
  } else {
11221
11254
  patch(
@@ -11229,7 +11262,7 @@ function baseCreateRenderer(options, createHydrationFns) {
11229
11262
  );
11230
11263
  }
11231
11264
  container._vnode = vnode;
11232
- flushOnAppMount();
11265
+ flushOnAppMount(instance);
11233
11266
  };
11234
11267
  const internals = {
11235
11268
  p: patch,
@@ -11321,9 +11354,13 @@ function traverseStaticChildren(n1, n2, shallow = false) {
11321
11354
  if (!shallow && c2.patchFlag !== -2)
11322
11355
  traverseStaticChildren(c1, c2);
11323
11356
  }
11324
- if (c2.type === Text && // avoid cached text nodes retaining detached dom nodes
11325
- c2.patchFlag !== -1) {
11326
- c2.el = c1.el;
11357
+ if (c2.type === Text) {
11358
+ if (c2.patchFlag !== -1) {
11359
+ c2.el = c1.el;
11360
+ } else {
11361
+ c2.__elIndex = i + // take fragment start anchor into account
11362
+ (n1.type === Fragment ? 1 : 0);
11363
+ }
11327
11364
  }
11328
11365
  if (c2.type === Comment && !c2.el) {
11329
11366
  c2.el = c1.el;
@@ -11359,16 +11396,24 @@ function performTransitionEnter(el, transition, insert, parentSuspense, force =
11359
11396
  insert();
11360
11397
  }
11361
11398
  }
11362
- function performTransitionLeave(el, transition, remove, isElement = true) {
11399
+ function performTransitionLeave(el, transition, remove, isElement = true, force = false) {
11363
11400
  const performRemove = () => {
11364
11401
  remove();
11365
11402
  if (transition && !transition.persisted && transition.afterLeave) {
11366
11403
  transition.afterLeave();
11367
11404
  }
11368
11405
  };
11369
- if (isElement && transition && !transition.persisted) {
11406
+ if (force || isElement && transition && !transition.persisted) {
11370
11407
  const { leave, delayLeave } = transition;
11371
- const performLeave = () => leave(el, performRemove);
11408
+ const performLeave = () => {
11409
+ if (el._isLeaving && force) {
11410
+ el[leaveCbKey](
11411
+ true
11412
+ /* cancelled */
11413
+ );
11414
+ }
11415
+ leave(el, performRemove);
11416
+ };
11372
11417
  if (delayLeave) {
11373
11418
  delayLeave(el, performRemove, performLeave);
11374
11419
  } else {
@@ -11424,6 +11469,16 @@ function getInheritedScopeIds(vnode, parentComponent) {
11424
11469
  }
11425
11470
  return inheritedScopeIds;
11426
11471
  }
11472
+ function resolveAsyncComponentPlaceholder(anchorVnode) {
11473
+ if (anchorVnode.placeholder) {
11474
+ return anchorVnode.placeholder;
11475
+ }
11476
+ const instance = anchorVnode.component;
11477
+ if (instance) {
11478
+ return resolveAsyncComponentPlaceholder(instance.subTree);
11479
+ }
11480
+ return null;
11481
+ }
11427
11482
 
11428
11483
  const isSuspense = (type) => type.__isSuspense;
11429
11484
  let suspenseId = 0;
@@ -11918,7 +11973,7 @@ function hydrateSuspense(node, vnode, parentComponent, parentSuspense, namespace
11918
11973
  parentSuspense,
11919
11974
  parentComponent,
11920
11975
  node.parentNode,
11921
- // eslint-disable-next-line no-restricted-globals
11976
+ // oxlint-disable-next-line no-restricted-globals
11922
11977
  document.createElement("div"),
11923
11978
  null,
11924
11979
  namespace,
@@ -12063,11 +12118,11 @@ function convertLegacyComponent(comp, instance) {
12063
12118
  return comp;
12064
12119
  }
12065
12120
 
12066
- const Fragment = Symbol.for("v-fgt");
12067
- const Text = Symbol.for("v-txt");
12068
- const Comment = Symbol.for("v-cmt");
12069
- const Static = Symbol.for("v-stc");
12070
- const VaporSlot = Symbol.for("v-vps");
12121
+ const Fragment = /* @__PURE__ */ Symbol.for("v-fgt");
12122
+ const Text = /* @__PURE__ */ Symbol.for("v-txt");
12123
+ const Comment = /* @__PURE__ */ Symbol.for("v-cmt");
12124
+ const Static = /* @__PURE__ */ Symbol.for("v-stc");
12125
+ const VaporSlot = /* @__PURE__ */ Symbol.for("v-vps");
12071
12126
  const blockStack = [];
12072
12127
  let currentBlock = null;
12073
12128
  function openBlock(disableTracking = false) {
@@ -12481,7 +12536,7 @@ const setCurrentInstance = (instance, scope = instance !== null ? instance.scope
12481
12536
  simpleSetCurrentInstance(instance);
12482
12537
  }
12483
12538
  };
12484
- const internalOptions = ["ce", "type"];
12539
+ const internalOptions = ["ce", "type", "uid"];
12485
12540
  const useInstanceOption = (key, silent = false) => {
12486
12541
  const instance = getCurrentGenericInstance();
12487
12542
  if (!instance) {
@@ -12501,7 +12556,7 @@ const useInstanceOption = (key, silent = false) => {
12501
12556
  return { hasInstance: true, value: instance[key] };
12502
12557
  };
12503
12558
 
12504
- const emptyAppContext = createAppContext();
12559
+ const emptyAppContext = /* @__PURE__ */ createAppContext();
12505
12560
  let uid = 0;
12506
12561
  function createComponentInstance(vnode, parent, suspense) {
12507
12562
  const type = vnode.type;
@@ -13145,7 +13200,7 @@ function isMemoSame(cached, memo) {
13145
13200
  return true;
13146
13201
  }
13147
13202
 
13148
- const version = "3.6.0-alpha.7";
13203
+ const version = "3.6.0-beta.2";
13149
13204
  const warn = warn$1 ;
13150
13205
  const ErrorTypeStrings = ErrorTypeStrings$1 ;
13151
13206
  const devtools = devtools$1 ;
@@ -13257,7 +13312,7 @@ const nodeOps = {
13257
13312
 
13258
13313
  const TRANSITION$1 = "transition";
13259
13314
  const ANIMATION = "animation";
13260
- const vtcKey = Symbol("_vtc");
13315
+ const vtcKey = /* @__PURE__ */ Symbol("_vtc");
13261
13316
  const DOMTransitionPropsValidators = {
13262
13317
  name: String,
13263
13318
  type: String,
@@ -13587,8 +13642,8 @@ function patchClass(el, value, isSVG) {
13587
13642
  }
13588
13643
  }
13589
13644
 
13590
- const vShowOriginalDisplay = Symbol("_vod");
13591
- const vShowHidden = Symbol("_vsh");
13645
+ const vShowOriginalDisplay = /* @__PURE__ */ Symbol("_vod");
13646
+ const vShowHidden = /* @__PURE__ */ Symbol("_vsh");
13592
13647
  const vShow = {
13593
13648
  // used for prop mismatch check during hydration
13594
13649
  name: "show",
@@ -13637,7 +13692,7 @@ function initVShowForSSR() {
13637
13692
  };
13638
13693
  }
13639
13694
 
13640
- const CSS_VAR_TEXT = Symbol("CSS_VAR_TEXT" );
13695
+ const CSS_VAR_TEXT = /* @__PURE__ */ Symbol("CSS_VAR_TEXT" );
13641
13696
  function useCssVars(getter) {
13642
13697
  const instance = getCurrentInstance();
13643
13698
  const getVars = () => getter(instance.proxy);
@@ -13847,7 +13902,7 @@ function patchAttr(el, key, value, isSVG, instance, isBoolean = isSpecialBoolean
13847
13902
  const isEnumeratedAttr = /* @__PURE__ */ makeMap("contenteditable,draggable,spellcheck") ;
13848
13903
  function compatCoerceAttr(el, key, value, instance = null) {
13849
13904
  if (isEnumeratedAttr(key)) {
13850
- const v2CoercedValue = value === null ? "false" : typeof value !== "boolean" && value !== void 0 ? "true" : null;
13905
+ const v2CoercedValue = value === void 0 ? null : value === null || value === false || value === "false" ? "false" : "true";
13851
13906
  if (v2CoercedValue && compatUtils.softAssertCompatEnabled(
13852
13907
  "ATTR_ENUMERATED_COERCION",
13853
13908
  instance,
@@ -13942,7 +13997,7 @@ function addEventListener(el, event, handler, options) {
13942
13997
  function removeEventListener(el, event, handler, options) {
13943
13998
  el.removeEventListener(event, handler, options);
13944
13999
  }
13945
- const veiKey = Symbol("_vei");
14000
+ const veiKey = /* @__PURE__ */ Symbol("_vei");
13946
14001
  function patchEvent(el, rawName, prevValue, nextValue, instance = null) {
13947
14002
  const invokers = el[veiKey] || (el[veiKey] = {});
13948
14003
  const existingInvoker = invokers[rawName];
@@ -14604,8 +14659,8 @@ function useCssModule(name = "$style") {
14604
14659
 
14605
14660
  const positionMap = /* @__PURE__ */ new WeakMap();
14606
14661
  const newPositionMap = /* @__PURE__ */ new WeakMap();
14607
- const moveCbKey = Symbol("_moveCb");
14608
- const enterCbKey = Symbol("_enterCb");
14662
+ const moveCbKey = /* @__PURE__ */ Symbol("_moveCb");
14663
+ const enterCbKey = /* @__PURE__ */ Symbol("_enterCb");
14609
14664
  const decorate = (t) => {
14610
14665
  delete t.props.mode;
14611
14666
  {
@@ -14777,7 +14832,7 @@ function onCompositionEnd(e) {
14777
14832
  target.dispatchEvent(new Event("input"));
14778
14833
  }
14779
14834
  }
14780
- const assignKey = Symbol("_assign");
14835
+ const assignKey = /* @__PURE__ */ Symbol("_assign");
14781
14836
  const vModelText = {
14782
14837
  created(el, { modifiers: { lazy, trim, number } }, vnode) {
14783
14838
  el[assignKey] = getModelAssigner(vnode);
@@ -15313,6 +15368,7 @@ var runtimeDom = /*#__PURE__*/Object.freeze({
15313
15368
  ErrorTypeStrings: ErrorTypeStrings,
15314
15369
  Fragment: Fragment,
15315
15370
  KeepAlive: KeepAlive,
15371
+ MoveType: MoveType,
15316
15372
  ReactiveEffect: ReactiveEffect,
15317
15373
  Static: Static,
15318
15374
  Suspense: Suspense,
@@ -15510,81 +15566,81 @@ function createCompatVue() {
15510
15566
  return Vue;
15511
15567
  }
15512
15568
 
15513
- const FRAGMENT = Symbol(`Fragment` );
15514
- const TELEPORT = Symbol(`Teleport` );
15515
- const SUSPENSE = Symbol(`Suspense` );
15516
- const KEEP_ALIVE = Symbol(`KeepAlive` );
15517
- const BASE_TRANSITION = Symbol(
15569
+ const FRAGMENT = /* @__PURE__ */ Symbol(`Fragment` );
15570
+ const TELEPORT = /* @__PURE__ */ Symbol(`Teleport` );
15571
+ const SUSPENSE = /* @__PURE__ */ Symbol(`Suspense` );
15572
+ const KEEP_ALIVE = /* @__PURE__ */ Symbol(`KeepAlive` );
15573
+ const BASE_TRANSITION = /* @__PURE__ */ Symbol(
15518
15574
  `BaseTransition`
15519
15575
  );
15520
- const OPEN_BLOCK = Symbol(`openBlock` );
15521
- const CREATE_BLOCK = Symbol(`createBlock` );
15522
- const CREATE_ELEMENT_BLOCK = Symbol(
15576
+ const OPEN_BLOCK = /* @__PURE__ */ Symbol(`openBlock` );
15577
+ const CREATE_BLOCK = /* @__PURE__ */ Symbol(`createBlock` );
15578
+ const CREATE_ELEMENT_BLOCK = /* @__PURE__ */ Symbol(
15523
15579
  `createElementBlock`
15524
15580
  );
15525
- const CREATE_VNODE = Symbol(`createVNode` );
15526
- const CREATE_ELEMENT_VNODE = Symbol(
15581
+ const CREATE_VNODE = /* @__PURE__ */ Symbol(`createVNode` );
15582
+ const CREATE_ELEMENT_VNODE = /* @__PURE__ */ Symbol(
15527
15583
  `createElementVNode`
15528
15584
  );
15529
- const CREATE_COMMENT = Symbol(
15585
+ const CREATE_COMMENT = /* @__PURE__ */ Symbol(
15530
15586
  `createCommentVNode`
15531
15587
  );
15532
- const CREATE_TEXT = Symbol(
15588
+ const CREATE_TEXT = /* @__PURE__ */ Symbol(
15533
15589
  `createTextVNode`
15534
15590
  );
15535
- const CREATE_STATIC = Symbol(
15591
+ const CREATE_STATIC = /* @__PURE__ */ Symbol(
15536
15592
  `createStaticVNode`
15537
15593
  );
15538
- const RESOLVE_COMPONENT = Symbol(
15594
+ const RESOLVE_COMPONENT = /* @__PURE__ */ Symbol(
15539
15595
  `resolveComponent`
15540
15596
  );
15541
- const RESOLVE_DYNAMIC_COMPONENT = Symbol(
15597
+ const RESOLVE_DYNAMIC_COMPONENT = /* @__PURE__ */ Symbol(
15542
15598
  `resolveDynamicComponent`
15543
15599
  );
15544
- const RESOLVE_DIRECTIVE = Symbol(
15600
+ const RESOLVE_DIRECTIVE = /* @__PURE__ */ Symbol(
15545
15601
  `resolveDirective`
15546
15602
  );
15547
- const RESOLVE_FILTER = Symbol(
15603
+ const RESOLVE_FILTER = /* @__PURE__ */ Symbol(
15548
15604
  `resolveFilter`
15549
15605
  );
15550
- const WITH_DIRECTIVES = Symbol(
15606
+ const WITH_DIRECTIVES = /* @__PURE__ */ Symbol(
15551
15607
  `withDirectives`
15552
15608
  );
15553
- const RENDER_LIST = Symbol(`renderList` );
15554
- const RENDER_SLOT = Symbol(`renderSlot` );
15555
- const CREATE_SLOTS = Symbol(`createSlots` );
15556
- const TO_DISPLAY_STRING = Symbol(
15609
+ const RENDER_LIST = /* @__PURE__ */ Symbol(`renderList` );
15610
+ const RENDER_SLOT = /* @__PURE__ */ Symbol(`renderSlot` );
15611
+ const CREATE_SLOTS = /* @__PURE__ */ Symbol(`createSlots` );
15612
+ const TO_DISPLAY_STRING = /* @__PURE__ */ Symbol(
15557
15613
  `toDisplayString`
15558
15614
  );
15559
- const MERGE_PROPS = Symbol(`mergeProps` );
15560
- const NORMALIZE_CLASS = Symbol(
15615
+ const MERGE_PROPS = /* @__PURE__ */ Symbol(`mergeProps` );
15616
+ const NORMALIZE_CLASS = /* @__PURE__ */ Symbol(
15561
15617
  `normalizeClass`
15562
15618
  );
15563
- const NORMALIZE_STYLE = Symbol(
15619
+ const NORMALIZE_STYLE = /* @__PURE__ */ Symbol(
15564
15620
  `normalizeStyle`
15565
15621
  );
15566
- const NORMALIZE_PROPS = Symbol(
15622
+ const NORMALIZE_PROPS = /* @__PURE__ */ Symbol(
15567
15623
  `normalizeProps`
15568
15624
  );
15569
- const GUARD_REACTIVE_PROPS = Symbol(
15625
+ const GUARD_REACTIVE_PROPS = /* @__PURE__ */ Symbol(
15570
15626
  `guardReactiveProps`
15571
15627
  );
15572
- const TO_HANDLERS = Symbol(`toHandlers` );
15573
- const CAMELIZE = Symbol(`camelize` );
15574
- const CAPITALIZE = Symbol(`capitalize` );
15575
- const TO_HANDLER_KEY = Symbol(
15628
+ const TO_HANDLERS = /* @__PURE__ */ Symbol(`toHandlers` );
15629
+ const CAMELIZE = /* @__PURE__ */ Symbol(`camelize` );
15630
+ const CAPITALIZE = /* @__PURE__ */ Symbol(`capitalize` );
15631
+ const TO_HANDLER_KEY = /* @__PURE__ */ Symbol(
15576
15632
  `toHandlerKey`
15577
15633
  );
15578
- const SET_BLOCK_TRACKING = Symbol(
15634
+ const SET_BLOCK_TRACKING = /* @__PURE__ */ Symbol(
15579
15635
  `setBlockTracking`
15580
15636
  );
15581
- const PUSH_SCOPE_ID = Symbol(`pushScopeId` );
15582
- const POP_SCOPE_ID = Symbol(`popScopeId` );
15583
- const WITH_CTX = Symbol(`withCtx` );
15584
- const UNREF = Symbol(`unref` );
15585
- const IS_REF = Symbol(`isRef` );
15586
- const WITH_MEMO = Symbol(`withMemo` );
15587
- const IS_MEMO_SAME = Symbol(`isMemoSame` );
15637
+ const PUSH_SCOPE_ID = /* @__PURE__ */ Symbol(`pushScopeId` );
15638
+ const POP_SCOPE_ID = /* @__PURE__ */ Symbol(`popScopeId` );
15639
+ const WITH_CTX = /* @__PURE__ */ Symbol(`withCtx` );
15640
+ const UNREF = /* @__PURE__ */ Symbol(`unref` );
15641
+ const IS_REF = /* @__PURE__ */ Symbol(`isRef` );
15642
+ const WITH_MEMO = /* @__PURE__ */ Symbol(`withMemo` );
15643
+ const IS_MEMO_SAME = /* @__PURE__ */ Symbol(`isMemoSame` );
15588
15644
  const helperNameMap = {
15589
15645
  [FRAGMENT]: `Fragment`,
15590
15646
  [TELEPORT]: `Teleport`,
@@ -15879,14 +15935,28 @@ class Tokenizer {
15879
15935
  getPos(index) {
15880
15936
  let line = 1;
15881
15937
  let column = index + 1;
15882
- for (let i = this.newlines.length - 1; i >= 0; i--) {
15883
- const newlineIndex = this.newlines[i];
15884
- if (index > newlineIndex) {
15885
- line = i + 2;
15886
- column = index - newlineIndex;
15887
- break;
15938
+ const length = this.newlines.length;
15939
+ let j = -1;
15940
+ if (length > 100) {
15941
+ let l = -1;
15942
+ let r = length;
15943
+ while (l + 1 < r) {
15944
+ const m = l + r >>> 1;
15945
+ this.newlines[m] < index ? l = m : r = m;
15946
+ }
15947
+ j = l;
15948
+ } else {
15949
+ for (let i = length - 1; i >= 0; i--) {
15950
+ if (index > this.newlines[i]) {
15951
+ j = i;
15952
+ break;
15953
+ }
15888
15954
  }
15889
15955
  }
15956
+ if (j >= 0) {
15957
+ line = j + 2;
15958
+ column = index - this.newlines[j];
15959
+ }
15890
15960
  return {
15891
15961
  column,
15892
15962
  line,
@@ -16701,7 +16771,7 @@ const errorMessages = {
16701
16771
  [32]: `v-for has invalid expression.`,
16702
16772
  [33]: `<template v-for> key should be placed on the <template> tag.`,
16703
16773
  [34]: `v-bind is missing expression.`,
16704
- [52]: `v-bind with same-name shorthand only allows static argument.`,
16774
+ [53]: `v-bind with same-name shorthand only allows static argument.`,
16705
16775
  [35]: `v-on is missing expression.`,
16706
16776
  [36]: `Unexpected custom directive on <slot> outlet.`,
16707
16777
  [37]: `Mixed v-slot usage on both the component and nested <template>. When there are multiple named slots, all slots should use <template> syntax to avoid scope ambiguity.`,
@@ -16713,16 +16783,17 @@ const errorMessages = {
16713
16783
  [43]: `v-model cannot be used on v-for or v-slot scope variables because they are not writable.`,
16714
16784
  [44]: `v-model cannot be used on a prop, because local prop bindings are not writable.
16715
16785
  Use a v-bind binding combined with a v-on listener that emits update:x event instead.`,
16716
- [45]: `Error parsing JavaScript expression: `,
16717
- [46]: `<KeepAlive> expects exactly one child component.`,
16718
- [51]: `@vnode-* hooks in templates are no longer supported. Use the vue: prefix instead. For example, @vnode-mounted should be changed to @vue:mounted. @vnode-* hooks support has been removed in 3.4.`,
16786
+ [45]: `v-model cannot be used on a const binding because it is not writable.`,
16787
+ [46]: `Error parsing JavaScript expression: `,
16788
+ [47]: `<KeepAlive> expects exactly one child component.`,
16789
+ [52]: `@vnode-* hooks in templates are no longer supported. Use the vue: prefix instead. For example, @vnode-mounted should be changed to @vue:mounted. @vnode-* hooks support has been removed in 3.4.`,
16719
16790
  // generic errors
16720
- [47]: `"prefixIdentifiers" option is not supported in this build of compiler.`,
16721
- [48]: `ES module mode is not supported in this build of compiler.`,
16722
- [49]: `"cacheHandlers" option is only supported when the "prefixIdentifiers" option is enabled.`,
16723
- [50]: `"scopeId" option is only supported in module mode.`,
16791
+ [48]: `"prefixIdentifiers" option is not supported in this build of compiler.`,
16792
+ [49]: `ES module mode is not supported in this build of compiler.`,
16793
+ [50]: `"cacheHandlers" option is only supported when the "prefixIdentifiers" option is enabled.`,
16794
+ [51]: `"scopeId" option is only supported in module mode.`,
16724
16795
  // just to fulfill types
16725
- [53]: ``
16796
+ [54]: ``
16726
16797
  };
16727
16798
 
16728
16799
  const isStaticExp = (p) => p.type === 4 && p.isStatic;
@@ -18912,7 +18983,7 @@ function validateBrowserExpression(node, context, asParams = false, asRawStateme
18912
18983
  }
18913
18984
  context.onError(
18914
18985
  createCompilerError(
18915
- 45,
18986
+ 46,
18916
18987
  node.loc,
18917
18988
  void 0,
18918
18989
  message
@@ -19678,7 +19749,7 @@ const transformElement = (node, context) => {
19678
19749
  patchFlag |= 1024;
19679
19750
  if (node.children.length > 1) {
19680
19751
  context.onError(
19681
- createCompilerError(46, {
19752
+ createCompilerError(47, {
19682
19753
  start: node.children[0].loc.start,
19683
19754
  end: node.children[node.children.length - 1].loc.end,
19684
19755
  source: ""
@@ -20265,7 +20336,7 @@ const transformOn$1 = (dir, node, context, augmentor) => {
20265
20336
  if (arg.isStatic) {
20266
20337
  let rawName = arg.content;
20267
20338
  if (rawName.startsWith("vnode")) {
20268
- context.onError(createCompilerError(51, arg.loc));
20339
+ context.onError(createCompilerError(52, arg.loc));
20269
20340
  }
20270
20341
  if (rawName.startsWith("vue:")) {
20271
20342
  rawName = `vnode-${rawName.slice(4)}`;
@@ -20498,6 +20569,10 @@ const transformModel$1 = (dir, node, context) => {
20498
20569
  context.onError(createCompilerError(44, exp.loc));
20499
20570
  return createTransformProps();
20500
20571
  }
20572
+ if (bindingType === "literal-const" || bindingType === "setup-const") {
20573
+ context.onError(createCompilerError(45, exp.loc));
20574
+ return createTransformProps();
20575
+ }
20501
20576
  if (!expString.trim() || !isMemberExpression(exp) && true) {
20502
20577
  context.onError(
20503
20578
  createCompilerError(42, exp.loc)
@@ -20726,7 +20801,7 @@ const transformVBindShorthand = (node, context) => {
20726
20801
  if (arg.type !== 4 || !arg.isStatic) {
20727
20802
  context.onError(
20728
20803
  createCompilerError(
20729
- 52,
20804
+ 53,
20730
20805
  arg.loc
20731
20806
  )
20732
20807
  );
@@ -20770,17 +20845,17 @@ function baseCompile(source, options = {}) {
20770
20845
  const isModuleMode = options.mode === "module";
20771
20846
  {
20772
20847
  if (options.prefixIdentifiers === true) {
20773
- onError(createCompilerError(47));
20774
- } else if (isModuleMode) {
20775
20848
  onError(createCompilerError(48));
20849
+ } else if (isModuleMode) {
20850
+ onError(createCompilerError(49));
20776
20851
  }
20777
20852
  }
20778
20853
  const prefixIdentifiers = false;
20779
20854
  if (options.cacheHandlers) {
20780
- onError(createCompilerError(49));
20855
+ onError(createCompilerError(50));
20781
20856
  }
20782
20857
  if (options.scopeId && !isModuleMode) {
20783
- onError(createCompilerError(50));
20858
+ onError(createCompilerError(51));
20784
20859
  }
20785
20860
  const resolvedOptions = extend({}, options, {
20786
20861
  prefixIdentifiers
@@ -20808,26 +20883,26 @@ function baseCompile(source, options = {}) {
20808
20883
 
20809
20884
  const noopDirectiveTransform = () => ({ props: [] });
20810
20885
 
20811
- const V_MODEL_RADIO = Symbol(`vModelRadio` );
20812
- const V_MODEL_CHECKBOX = Symbol(
20886
+ const V_MODEL_RADIO = /* @__PURE__ */ Symbol(`vModelRadio` );
20887
+ const V_MODEL_CHECKBOX = /* @__PURE__ */ Symbol(
20813
20888
  `vModelCheckbox`
20814
20889
  );
20815
- const V_MODEL_TEXT = Symbol(`vModelText` );
20816
- const V_MODEL_SELECT = Symbol(
20890
+ const V_MODEL_TEXT = /* @__PURE__ */ Symbol(`vModelText` );
20891
+ const V_MODEL_SELECT = /* @__PURE__ */ Symbol(
20817
20892
  `vModelSelect`
20818
20893
  );
20819
- const V_MODEL_DYNAMIC = Symbol(
20894
+ const V_MODEL_DYNAMIC = /* @__PURE__ */ Symbol(
20820
20895
  `vModelDynamic`
20821
20896
  );
20822
- const V_ON_WITH_MODIFIERS = Symbol(
20897
+ const V_ON_WITH_MODIFIERS = /* @__PURE__ */ Symbol(
20823
20898
  `vOnModifiersGuard`
20824
20899
  );
20825
- const V_ON_WITH_KEYS = Symbol(
20900
+ const V_ON_WITH_KEYS = /* @__PURE__ */ Symbol(
20826
20901
  `vOnKeysGuard`
20827
20902
  );
20828
- const V_SHOW = Symbol(`vShow` );
20829
- const TRANSITION = Symbol(`Transition` );
20830
- const TRANSITION_GROUP = Symbol(
20903
+ const V_SHOW = /* @__PURE__ */ Symbol(`vShow` );
20904
+ const TRANSITION = /* @__PURE__ */ Symbol(`Transition` );
20905
+ const TRANSITION_GROUP = /* @__PURE__ */ Symbol(
20831
20906
  `TransitionGroup`
20832
20907
  );
20833
20908
  registerRuntimeHelpers({
@@ -20938,31 +21013,31 @@ function createDOMCompilerError(code, loc) {
20938
21013
  );
20939
21014
  }
20940
21015
  const DOMErrorMessages = {
20941
- [53]: `v-html is missing expression.`,
20942
- [54]: `v-html will override element children.`,
20943
- [55]: `v-text is missing expression.`,
20944
- [56]: `v-text will override element children.`,
20945
- [57]: `v-model can only be used on <input>, <textarea> and <select> elements.`,
20946
- [58]: `v-model argument is not supported on plain elements.`,
20947
- [59]: `v-model cannot be used on file inputs since they are read-only. Use a v-on:change listener instead.`,
20948
- [60]: `Unnecessary value binding used alongside v-model. It will interfere with v-model's behavior.`,
20949
- [61]: `v-show is missing expression.`,
20950
- [62]: `<Transition> expects exactly one child element or component.`,
20951
- [63]: `Tags with side effect (<script> and <style>) are ignored in client component templates.`,
21016
+ [54]: `v-html is missing expression.`,
21017
+ [55]: `v-html will override element children.`,
21018
+ [56]: `v-text is missing expression.`,
21019
+ [57]: `v-text will override element children.`,
21020
+ [58]: `v-model can only be used on <input>, <textarea> and <select> elements.`,
21021
+ [59]: `v-model argument is not supported on plain elements.`,
21022
+ [60]: `v-model cannot be used on file inputs since they are read-only. Use a v-on:change listener instead.`,
21023
+ [61]: `Unnecessary value binding used alongside v-model. It will interfere with v-model's behavior.`,
21024
+ [62]: `v-show is missing expression.`,
21025
+ [63]: `<Transition> expects exactly one child element or component.`,
21026
+ [64]: `Tags with side effect (<script> and <style>) are ignored in client component templates.`,
20952
21027
  // just to fulfill types
20953
- [64]: ``
21028
+ [65]: ``
20954
21029
  };
20955
21030
 
20956
21031
  const transformVHtml = (dir, node, context) => {
20957
21032
  const { exp, loc } = dir;
20958
21033
  if (!exp) {
20959
21034
  context.onError(
20960
- createDOMCompilerError(53, loc)
21035
+ createDOMCompilerError(54, loc)
20961
21036
  );
20962
21037
  }
20963
21038
  if (node.children.length) {
20964
21039
  context.onError(
20965
- createDOMCompilerError(54, loc)
21040
+ createDOMCompilerError(55, loc)
20966
21041
  );
20967
21042
  node.children.length = 0;
20968
21043
  }
@@ -20980,12 +21055,12 @@ const transformVText = (dir, node, context) => {
20980
21055
  const { exp, loc } = dir;
20981
21056
  if (!exp) {
20982
21057
  context.onError(
20983
- createDOMCompilerError(55, loc)
21058
+ createDOMCompilerError(56, loc)
20984
21059
  );
20985
21060
  }
20986
21061
  if (node.children.length) {
20987
21062
  context.onError(
20988
- createDOMCompilerError(56, loc)
21063
+ createDOMCompilerError(57, loc)
20989
21064
  );
20990
21065
  node.children.length = 0;
20991
21066
  }
@@ -21011,7 +21086,7 @@ const transformModel = (dir, node, context) => {
21011
21086
  if (dir.arg) {
21012
21087
  context.onError(
21013
21088
  createDOMCompilerError(
21014
- 58,
21089
+ 59,
21015
21090
  dir.arg.loc
21016
21091
  )
21017
21092
  );
@@ -21021,7 +21096,7 @@ const transformModel = (dir, node, context) => {
21021
21096
  if (value && isStaticArgOf(value.arg, "value")) {
21022
21097
  context.onError(
21023
21098
  createDOMCompilerError(
21024
- 60,
21099
+ 61,
21025
21100
  value.loc
21026
21101
  )
21027
21102
  );
@@ -21049,7 +21124,7 @@ const transformModel = (dir, node, context) => {
21049
21124
  isInvalidType = true;
21050
21125
  context.onError(
21051
21126
  createDOMCompilerError(
21052
- 59,
21127
+ 60,
21053
21128
  dir.loc
21054
21129
  )
21055
21130
  );
@@ -21075,7 +21150,7 @@ const transformModel = (dir, node, context) => {
21075
21150
  } else {
21076
21151
  context.onError(
21077
21152
  createDOMCompilerError(
21078
- 57,
21153
+ 58,
21079
21154
  dir.loc
21080
21155
  )
21081
21156
  );
@@ -21186,7 +21261,7 @@ const transformShow = (dir, node, context) => {
21186
21261
  const { exp, loc } = dir;
21187
21262
  if (!exp) {
21188
21263
  context.onError(
21189
- createDOMCompilerError(61, loc)
21264
+ createDOMCompilerError(62, loc)
21190
21265
  );
21191
21266
  }
21192
21267
  return {
@@ -21210,7 +21285,7 @@ function postTransformTransition(node, onError, hasMultipleChildren = defaultHas
21210
21285
  }
21211
21286
  if (hasMultipleChildren(node)) {
21212
21287
  onError(
21213
- createDOMCompilerError(62, {
21288
+ createDOMCompilerError(63, {
21214
21289
  start: node.children[0].loc.start,
21215
21290
  end: node.children[node.children.length - 1].loc.end,
21216
21291
  source: ""
@@ -21245,7 +21320,7 @@ const ignoreSideEffectTags = (node, context) => {
21245
21320
  if (node.type === 1 && node.tagType === 0 && (node.tag === "script" || node.tag === "style")) {
21246
21321
  context.onError(
21247
21322
  createDOMCompilerError(
21248
- 63,
21323
+ 64,
21249
21324
  node.loc
21250
21325
  )
21251
21326
  );
@@ -21521,4 +21596,4 @@ Vue.compile = compileToFunction;
21521
21596
 
21522
21597
  const configureCompat = Vue.configureCompat;
21523
21598
 
21524
- export { BaseTransition, BaseTransitionPropsValidators, Comment, DeprecationTypes, EffectScope, ErrorCodes, ErrorTypeStrings, Fragment, KeepAlive, ReactiveEffect, Static, Suspense, Teleport, Text, TrackOpTypes, Transition, TransitionGroup, TriggerOpTypes, VueElement, VueElementBase, assertNumber, callWithAsyncErrorHandling, callWithErrorHandling, camelize, capitalize, cloneVNode, compatUtils, computed, configureCompat, createApp, createBlock, createCommentVNode, createElementBlock, createBaseVNode as createElementVNode, createHydrationRenderer, createPropsRestProxy, createRenderer, createSSRApp, createSlots, createStaticVNode, createTextVNode, createVNode, customRef, Vue as default, 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, 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 };
21599
+ export { BaseTransition, BaseTransitionPropsValidators, Comment, DeprecationTypes, EffectScope, ErrorCodes, ErrorTypeStrings, Fragment, KeepAlive, MoveType, ReactiveEffect, Static, Suspense, Teleport, Text, TrackOpTypes, Transition, TransitionGroup, TriggerOpTypes, VueElement, VueElementBase, assertNumber, callWithAsyncErrorHandling, callWithErrorHandling, camelize, capitalize, cloneVNode, compatUtils, computed, configureCompat, createApp, createBlock, createCommentVNode, createElementBlock, createBaseVNode as createElementVNode, createHydrationRenderer, createPropsRestProxy, createRenderer, createSSRApp, createSlots, createStaticVNode, createTextVNode, createVNode, customRef, Vue as default, 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, 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 };