@vuetify/v0 1.0.0-alpha.2 → 1.0.0-alpha.3
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.
- package/README.md +3 -1
- package/dist/{adapters-BJ5n7rgh.mjs → adapters-BSiqsTZN.mjs} +1 -1
- package/dist/adapters-C3QXhf4I.mjs +2 -0
- package/dist/adapters-_ZqxCD8f.mjs +4 -0
- package/dist/browser/index.js +3660 -212
- package/dist/components/index.d.mts +3 -3
- package/dist/components/index.mjs +2 -2
- package/dist/{components-CqDewYTU.mjs → components-C4jI-78d.mjs} +3654 -339
- package/dist/composables/index.d.mts +2 -2
- package/dist/composables/index.mjs +19 -19
- package/dist/constants/index.mjs +1 -1
- package/dist/{createDataTable-rXBqGglI.mjs → createDataTable-iODP6aKB.mjs} +2 -2
- package/dist/{createGroup-BU4olYtB.mjs → createGroup-CGk6hY_Y.mjs} +1 -1
- package/dist/{createRegistry-Dl-bSSTr.mjs → createRegistry-BXzdXAjq.mjs} +1 -1
- package/dist/{createSelection-Csaa-C8p.mjs → createSelection-B3HJEPNg.mjs} +1 -1
- package/dist/{createSingle-8xbHAIpY.mjs → createSingle-Dql8mRi-.mjs} +1 -1
- package/dist/{createTokens-lNg2M_P_.mjs → createTokens-DgFYsOrv.mjs} +2 -2
- package/dist/data-table/index.mjs +1 -1
- package/dist/date/index.mjs +1 -1
- package/dist/features/adapters/posthog/index.mjs +1 -1
- package/dist/features/index.d.mts +1 -1
- package/dist/features/index.mjs +1 -1
- package/dist/{globals-CKdzjeLe.mjs → globals-zEjWBKCr.mjs} +1 -1
- package/dist/{index-BxKMMWnQ.d.mts → index-B76iGRE3.d.mts} +155 -6
- package/dist/{index-B7cqgTBL.d.mts → index-DNDuacmH.d.mts} +584 -359
- package/dist/index.d.mts +3 -3
- package/dist/index.mjs +21 -21
- package/dist/json/attributes.json +56 -0
- package/dist/json/importMap.json +16 -0
- package/dist/json/tags.json +29 -0
- package/dist/json/web-types.json +180 -2
- package/dist/locale/adapters/index.mjs +2 -2
- package/dist/locale/adapters/v0/index.mjs +1 -1
- package/dist/locale/index.d.mts +1 -1
- package/dist/locale/index.mjs +2 -2
- package/dist/logger/adapters/index.mjs +2 -2
- package/dist/logger/adapters/v0/index.mjs +1 -1
- package/dist/logger/index.d.mts +1 -1
- package/dist/logger/index.mjs +2 -2
- package/dist/notifications/index.d.mts +1 -1
- package/dist/notifications/index.mjs +2 -2
- package/dist/palettes/index.d.mts +1 -1
- package/dist/palettes/leonardo/generate/index.mjs +2 -1
- package/dist/permissions/adapters/index.d.mts +1 -1
- package/dist/permissions/adapters/v0/index.d.mts +1 -1
- package/dist/permissions/index.d.mts +1 -1
- package/dist/permissions/index.mjs +1 -1
- package/dist/{posthog-DZNnPXxS.mjs → posthog-DmuyycaR.mjs} +1 -1
- package/dist/rules/index.d.mts +1 -1
- package/dist/rules/index.mjs +1 -1
- package/dist/storage/index.d.mts +1 -1
- package/dist/storage/index.mjs +1 -1
- package/dist/theme/adapters/index.d.mts +1 -1
- package/dist/theme/adapters/index.mjs +3 -3
- package/dist/theme/adapters/unhead/index.d.mts +1 -1
- package/dist/theme/adapters/unhead/index.mjs +1 -1
- package/dist/theme/adapters/v0/index.d.mts +1 -1
- package/dist/theme/adapters/v0/index.mjs +1 -1
- package/dist/theme/index.d.mts +1 -1
- package/dist/theme/index.mjs +3 -3
- package/dist/{unhead-DZiD-4Tx.mjs → unhead-B-I2OS6i.mjs} +1 -1
- package/dist/{useClickOutside-CmCUD_Pf.mjs → useClickOutside-CY4U2J9W.mjs} +145 -24
- package/dist/{useFeatures-ZIvzzuEV.mjs → useFeatures-BPOke6iP.mjs} +4 -4
- package/dist/{useLocale-DTJx3aKR.mjs → useLocale-BV8e3imF.mjs} +5 -5
- package/dist/{useLogger-BBTcMN61.mjs → useLogger-DvdRTrqC.mjs} +3 -3
- package/dist/{useNotifications-H4knpvNw.mjs → useNotifications-vSJE6z6t.mjs} +21 -10
- package/dist/{usePermissions-B_G12Dwd.mjs → usePermissions-D3zPwKQc.mjs} +2 -2
- package/dist/{useRules--7Qoo60I.mjs → useRules-BT6cgoTj.mjs} +2 -2
- package/dist/{useTheme-Co05TEeD.mjs → useTheme-cUZb2A9O.mjs} +5 -5
- package/dist/utilities/index.mjs +2 -1
- package/dist/{v0-D0Mh3EVG.mjs → v0-C49OI_wc.mjs} +1 -1
- package/dist/{v0-DeiZuexg.mjs → v0-CHZpnMeP.mjs} +1 -1
- package/dist/{v0-BrTEO5sv.mjs → v0-gpExNexS.mjs} +1 -1
- package/package.json +10 -10
- package/dist/adapters-BnKW0BF_.mjs +0 -2
- package/dist/adapters-CBrvizWb.mjs +0 -4
package/dist/browser/index.js
CHANGED
|
@@ -108,7 +108,7 @@ const SUPPORTS_MATCH_MEDIA = IN_BROWSER && "matchMedia" in window && typeof wind
|
|
|
108
108
|
const SUPPORTS_OBSERVER = IN_BROWSER && "ResizeObserver" in window;
|
|
109
109
|
const SUPPORTS_INTERSECTION_OBSERVER = IN_BROWSER && "IntersectionObserver" in window;
|
|
110
110
|
const SUPPORTS_MUTATION_OBSERVER = IN_BROWSER && "MutationObserver" in window;
|
|
111
|
-
const version = "1.0.0-alpha.
|
|
111
|
+
const version = "1.0.0-alpha.3";
|
|
112
112
|
/* v8 ignore next -- build-time constant, __DEV__ short-circuits in tests */
|
|
113
113
|
const __LOGGER_ENABLED__ = false;
|
|
114
114
|
//#endregion
|
|
@@ -490,6 +490,7 @@ function useId() {
|
|
|
490
490
|
*/
|
|
491
491
|
/* @__NO_SIDE_EFFECTS__ */
|
|
492
492
|
function clamp(value, min = 0, max = 1) {
|
|
493
|
+
if (!Number.isFinite(value)) return min;
|
|
493
494
|
return Math.max(min, Math.min(max, value));
|
|
494
495
|
}
|
|
495
496
|
/**
|
|
@@ -3037,6 +3038,7 @@ function useBreadcrumbs(namespace = "v0:breadcrumbs") {
|
|
|
3037
3038
|
* Key features:
|
|
3038
3039
|
* - Start/stop/pause/resume controls
|
|
3039
3040
|
* - Reactive remaining time tracking
|
|
3041
|
+
* - Reactive `duration` via `MaybeRefOrGetter` — read fresh on each `start()`
|
|
3040
3042
|
* - One-shot (default) or repeating mode
|
|
3041
3043
|
* - Automatic cleanup on scope disposal
|
|
3042
3044
|
* - SSR-safe
|
|
@@ -3066,17 +3068,26 @@ function useBreadcrumbs(namespace = "v0:breadcrumbs") {
|
|
|
3066
3068
|
* timer.pause()
|
|
3067
3069
|
* timer.resume()
|
|
3068
3070
|
* timer.stop()
|
|
3071
|
+
*
|
|
3072
|
+
* // Reactive duration — re-read on each start()
|
|
3073
|
+
* const duration = shallowRef(1000)
|
|
3074
|
+
* const reactive = useTimer(handler, { duration })
|
|
3075
|
+
* duration.value = 2000
|
|
3076
|
+
* reactive.start() // fires after 2000ms
|
|
3069
3077
|
* ```
|
|
3070
3078
|
*/
|
|
3071
3079
|
function useTimer(handler, options = {}) {
|
|
3072
3080
|
const { duration = 1e3, repeat = false } = options;
|
|
3073
|
-
|
|
3081
|
+
function resolveDuration() {
|
|
3082
|
+
return toValue(duration);
|
|
3083
|
+
}
|
|
3084
|
+
const remaining = shallowRef(resolveDuration());
|
|
3074
3085
|
const isActive = shallowRef(false);
|
|
3075
3086
|
const isPaused = shallowRef(false);
|
|
3076
3087
|
let timeoutId;
|
|
3077
3088
|
let trackingId;
|
|
3078
3089
|
let startedAt = 0;
|
|
3079
|
-
let budget =
|
|
3090
|
+
let budget = remaining.value;
|
|
3080
3091
|
function clearTimer() {
|
|
3081
3092
|
if (!/* @__PURE__ */ isUndefined(timeoutId)) {
|
|
3082
3093
|
globalThis.clearTimeout(timeoutId);
|
|
@@ -3102,7 +3113,7 @@ function useTimer(handler, options = {}) {
|
|
|
3102
3113
|
clearTimer();
|
|
3103
3114
|
stopTracking();
|
|
3104
3115
|
handler();
|
|
3105
|
-
if (repeat) begin(
|
|
3116
|
+
if (repeat) begin(resolveDuration());
|
|
3106
3117
|
else {
|
|
3107
3118
|
isActive.value = false;
|
|
3108
3119
|
remaining.value = 0;
|
|
@@ -3120,15 +3131,16 @@ function useTimer(handler, options = {}) {
|
|
|
3120
3131
|
startTracking();
|
|
3121
3132
|
}
|
|
3122
3133
|
function start() {
|
|
3123
|
-
|
|
3124
|
-
|
|
3134
|
+
const ms = resolveDuration();
|
|
3135
|
+
if (ms < 0) return;
|
|
3136
|
+
begin(ms);
|
|
3125
3137
|
}
|
|
3126
3138
|
function stop() {
|
|
3127
3139
|
clearTimer();
|
|
3128
3140
|
stopTracking();
|
|
3129
3141
|
isActive.value = false;
|
|
3130
3142
|
isPaused.value = false;
|
|
3131
|
-
remaining.value =
|
|
3143
|
+
remaining.value = resolveDuration();
|
|
3132
3144
|
}
|
|
3133
3145
|
function pause() {
|
|
3134
3146
|
if (!isActive.value || isPaused.value) return;
|
|
@@ -5671,7 +5683,7 @@ function createValidation(_options = {}) {
|
|
|
5671
5683
|
if (!silent) isValidating.value = true;
|
|
5672
5684
|
try {
|
|
5673
5685
|
const results = await Promise.all(activeRules.map((rule) => rule(val)));
|
|
5674
|
-
if (gen !== generation) return
|
|
5686
|
+
if (gen !== generation) return false;
|
|
5675
5687
|
const errorMessages = results.filter((result) => /* @__PURE__ */ isString(result) || result === false).map((result) => result === false ? "Validation failed" : result);
|
|
5676
5688
|
if (!silent) {
|
|
5677
5689
|
errors.value = errorMessages;
|
|
@@ -5679,7 +5691,7 @@ function createValidation(_options = {}) {
|
|
|
5679
5691
|
}
|
|
5680
5692
|
return errorMessages.length === 0;
|
|
5681
5693
|
} catch (error) {
|
|
5682
|
-
if (gen !== generation) return
|
|
5694
|
+
if (gen !== generation) return false;
|
|
5683
5695
|
if (!silent) {
|
|
5684
5696
|
errors.value = [error instanceof Error ? error.message : "Validation error"];
|
|
5685
5697
|
isValid.value = false;
|
|
@@ -6618,7 +6630,7 @@ function createNumberField(options = {}) {
|
|
|
6618
6630
|
}
|
|
6619
6631
|
function increment(multiplier) {
|
|
6620
6632
|
if (isLocked()) return;
|
|
6621
|
-
if (/* @__PURE__ */ isNull(value.value)) {
|
|
6633
|
+
if (/* @__PURE__ */ isNull(value.value) || !Number.isFinite(value.value)) {
|
|
6622
6634
|
value.value = initialize();
|
|
6623
6635
|
return;
|
|
6624
6636
|
}
|
|
@@ -6626,7 +6638,7 @@ function createNumberField(options = {}) {
|
|
|
6626
6638
|
}
|
|
6627
6639
|
function decrement(multiplier) {
|
|
6628
6640
|
if (isLocked()) return;
|
|
6629
|
-
if (/* @__PURE__ */ isNull(value.value)) {
|
|
6641
|
+
if (/* @__PURE__ */ isNull(value.value) || !Number.isFinite(value.value)) {
|
|
6630
6642
|
value.value = initialize();
|
|
6631
6643
|
return;
|
|
6632
6644
|
}
|
|
@@ -6833,10 +6845,12 @@ const [createHydrationContext, createHydrationPlugin, useHydration] = createPlug
|
|
|
6833
6845
|
*/
|
|
6834
6846
|
/* @__NO_SIDE_EFFECTS__ */
|
|
6835
6847
|
function toElement(target) {
|
|
6836
|
-
|
|
6848
|
+
if (!target) return void 0;
|
|
6849
|
+
if (/* @__PURE__ */ isElement(target)) return target;
|
|
6850
|
+
const raw = /* @__PURE__ */ isFunction(target) ? target() : /* @__PURE__ */ isObject(target) && "value" in target ? target.value : target;
|
|
6837
6851
|
if (!raw) return void 0;
|
|
6838
6852
|
if (/* @__PURE__ */ isElement(raw)) return raw;
|
|
6839
|
-
if ("$el" in raw) return raw.$el;
|
|
6853
|
+
if (/* @__PURE__ */ isObject(raw) && "$el" in raw) return raw.$el;
|
|
6840
6854
|
}
|
|
6841
6855
|
//#endregion
|
|
6842
6856
|
//#region src/composables/createObserver/index.ts
|
|
@@ -7872,8 +7886,8 @@ function createSlider(options = {}) {
|
|
|
7872
7886
|
return inverted.value ? 100 - p : p;
|
|
7873
7887
|
}
|
|
7874
7888
|
function fromPercent(p) {
|
|
7875
|
-
const
|
|
7876
|
-
return numeric.
|
|
7889
|
+
const value = numeric.fromPercent(p);
|
|
7890
|
+
return inverted.value ? numeric.max - (value - numeric.min) : value;
|
|
7877
7891
|
}
|
|
7878
7892
|
function register(input) {
|
|
7879
7893
|
const initialValue = /* @__PURE__ */ isObject(input) ? input.value : input;
|
|
@@ -9297,6 +9311,123 @@ function useDate(namespace = "v0:date") {
|
|
|
9297
9311
|
return useContext(namespace);
|
|
9298
9312
|
}
|
|
9299
9313
|
//#endregion
|
|
9314
|
+
//#region src/composables/useDelay/index.ts
|
|
9315
|
+
/**
|
|
9316
|
+
* @module useDelay
|
|
9317
|
+
*
|
|
9318
|
+
* @see https://0.vuetifyjs.com/composables/system/use-delay
|
|
9319
|
+
*
|
|
9320
|
+
* @remarks
|
|
9321
|
+
* Schedule open and close transitions with configurable delays.
|
|
9322
|
+
*
|
|
9323
|
+
* Composes `useTimer` for the underlying lifecycle (start / stop / pause / resume,
|
|
9324
|
+
* plus reactive `isActive`, `isPaused`, `remaining`) and adds direction tracking
|
|
9325
|
+
* (`isOpening`) and promise-based resolution.
|
|
9326
|
+
*
|
|
9327
|
+
* Key features:
|
|
9328
|
+
* - Reactive `openDelay` and `closeDelay` via `MaybeRefOrGetter`
|
|
9329
|
+
* - `start(isOpening)` returns a `Promise<boolean>` that resolves once the delay elapses
|
|
9330
|
+
* - Per-call `minDelay` floor enforces a minimum delay
|
|
9331
|
+
* - Automatic cleanup on scope disposal (timer cleared, pending promise settled with current direction)
|
|
9332
|
+
* - SSR-safe
|
|
9333
|
+
*
|
|
9334
|
+
* @example
|
|
9335
|
+
* ```ts
|
|
9336
|
+
* import { useDelay } from '@vuetify/v0'
|
|
9337
|
+
*
|
|
9338
|
+
* const delay = useDelay(isOpening => isVisible.value = isOpening, {
|
|
9339
|
+
* openDelay: 300,
|
|
9340
|
+
* closeDelay: 200,
|
|
9341
|
+
* })
|
|
9342
|
+
*
|
|
9343
|
+
* delay.start(true)
|
|
9344
|
+
* delay.start(false, { minDelay: 500 })
|
|
9345
|
+
* ```
|
|
9346
|
+
*/
|
|
9347
|
+
/**
|
|
9348
|
+
* Schedule open and close transitions with configurable delays.
|
|
9349
|
+
*
|
|
9350
|
+
* Composes `useTimer` for the lifecycle (`start` / `stop` / `pause` / `resume` plus
|
|
9351
|
+
* reactive `isActive`, `isPaused`, `remaining`) and adds direction tracking
|
|
9352
|
+
* (`isOpening`) and promise-based resolution.
|
|
9353
|
+
*
|
|
9354
|
+
* @param callback Optional callback invoked once a started delay elapses; receives the resolved direction.
|
|
9355
|
+
* @param options Reactive delay settings.
|
|
9356
|
+
* @returns Lifecycle controls and reactive state.
|
|
9357
|
+
*
|
|
9358
|
+
* @see https://0.vuetifyjs.com/composables/system/use-delay
|
|
9359
|
+
*
|
|
9360
|
+
* @example
|
|
9361
|
+
* ```ts
|
|
9362
|
+
* const delay = useDelay(isOpening => isVisible.value = isOpening, {
|
|
9363
|
+
* openDelay: 300,
|
|
9364
|
+
* closeDelay: 200,
|
|
9365
|
+
* })
|
|
9366
|
+
*
|
|
9367
|
+
* delay.start(true)
|
|
9368
|
+
* delay.start(false, { minDelay: 500 })
|
|
9369
|
+
* delay.pause()
|
|
9370
|
+
* delay.resume()
|
|
9371
|
+
* delay.stop()
|
|
9372
|
+
* ```
|
|
9373
|
+
*/
|
|
9374
|
+
function useDelay(callback, options = {}) {
|
|
9375
|
+
const { openDelay, closeDelay } = options;
|
|
9376
|
+
const isOpening = shallowRef(false);
|
|
9377
|
+
let minDelay = 0;
|
|
9378
|
+
let resolver;
|
|
9379
|
+
function fire() {
|
|
9380
|
+
const direction = isOpening.value;
|
|
9381
|
+
const resolve = resolver;
|
|
9382
|
+
resolver = void 0;
|
|
9383
|
+
resolve?.(direction);
|
|
9384
|
+
callback?.(direction);
|
|
9385
|
+
}
|
|
9386
|
+
function duration() {
|
|
9387
|
+
const raw = isOpening.value ? toValue(openDelay) : toValue(closeDelay);
|
|
9388
|
+
return Math.max(minDelay, raw ?? 0);
|
|
9389
|
+
}
|
|
9390
|
+
const timer = useTimer(fire, { duration });
|
|
9391
|
+
function start(direction, options = {}) {
|
|
9392
|
+
const previous = resolver;
|
|
9393
|
+
resolver = void 0;
|
|
9394
|
+
isOpening.value = direction;
|
|
9395
|
+
minDelay = options.minDelay ?? 0;
|
|
9396
|
+
previous?.(direction);
|
|
9397
|
+
const ms = duration();
|
|
9398
|
+
return new Promise((resolve) => {
|
|
9399
|
+
resolver = resolve;
|
|
9400
|
+
if (ms <= 0) {
|
|
9401
|
+
timer.stop();
|
|
9402
|
+
fire();
|
|
9403
|
+
return;
|
|
9404
|
+
}
|
|
9405
|
+
timer.start();
|
|
9406
|
+
});
|
|
9407
|
+
}
|
|
9408
|
+
function stop() {
|
|
9409
|
+
const resolve = resolver;
|
|
9410
|
+
resolver = void 0;
|
|
9411
|
+
timer.stop();
|
|
9412
|
+
resolve?.(isOpening.value);
|
|
9413
|
+
}
|
|
9414
|
+
onScopeDispose(() => {
|
|
9415
|
+
const resolve = resolver;
|
|
9416
|
+
resolver = void 0;
|
|
9417
|
+
resolve?.(isOpening.value);
|
|
9418
|
+
}, true);
|
|
9419
|
+
return {
|
|
9420
|
+
start,
|
|
9421
|
+
stop,
|
|
9422
|
+
pause: timer.pause,
|
|
9423
|
+
resume: timer.resume,
|
|
9424
|
+
isActive: shallowReadonly(timer.isActive),
|
|
9425
|
+
isPaused: shallowReadonly(timer.isPaused),
|
|
9426
|
+
remaining: shallowReadonly(timer.remaining),
|
|
9427
|
+
isOpening: shallowReadonly(isOpening)
|
|
9428
|
+
};
|
|
9429
|
+
}
|
|
9430
|
+
//#endregion
|
|
9300
9431
|
//#region src/composables/useFeatures/adapters/generic/index.ts
|
|
9301
9432
|
var FeaturesAdapter = class {};
|
|
9302
9433
|
//#endregion
|
|
@@ -12589,6 +12720,7 @@ function useClickOutside(target, handler, options = {}) {
|
|
|
12589
12720
|
x: 0,
|
|
12590
12721
|
y: 0
|
|
12591
12722
|
};
|
|
12723
|
+
let startedOutsideBounds = false;
|
|
12592
12724
|
let cleanupPointerDown;
|
|
12593
12725
|
let cleanupPointerUp;
|
|
12594
12726
|
let cleanupBlur;
|
|
@@ -12679,6 +12811,7 @@ function useClickOutside(target, handler, options = {}) {
|
|
|
12679
12811
|
x: event.clientX,
|
|
12680
12812
|
y: event.clientY
|
|
12681
12813
|
};
|
|
12814
|
+
startedOutsideBounds = bounds ? isOutsideBounds(event.clientX, event.clientY) : false;
|
|
12682
12815
|
}
|
|
12683
12816
|
/**
|
|
12684
12817
|
* Handle pointerup - check if it's an outside click.
|
|
@@ -12697,7 +12830,7 @@ function useClickOutside(target, handler, options = {}) {
|
|
|
12697
12830
|
const dy = Math.abs(event.clientY - startPosition.y);
|
|
12698
12831
|
if (dx >= touchScrollThreshold || dy >= touchScrollThreshold) return;
|
|
12699
12832
|
}
|
|
12700
|
-
if ((bounds ?
|
|
12833
|
+
if ((bounds ? startedOutsideBounds && isOutsideBounds(event.clientX, event.clientY) : isOutside(pointerdownTarget) && isOutside(pointerupTarget)) && !shouldIgnore(path)) handler(event);
|
|
12701
12834
|
}
|
|
12702
12835
|
/**
|
|
12703
12836
|
* Handle window blur - detect focus moving to iframe.
|
|
@@ -12918,13 +13051,157 @@ const _sfc_main$7 = /* @__PURE__ */ defineComponent({
|
|
|
12918
13051
|
* ```
|
|
12919
13052
|
*/
|
|
12920
13053
|
const AlertDialog = {
|
|
13054
|
+
/**
|
|
13055
|
+
* Root component for alert dialogs.
|
|
13056
|
+
*
|
|
13057
|
+
* @see https://0.vuetifyjs.com/components/disclosure/alert-dialog
|
|
13058
|
+
*
|
|
13059
|
+
* @example
|
|
13060
|
+
* ```vue
|
|
13061
|
+
* <script lang="ts" setup>
|
|
13062
|
+
* import { AlertDialog } from '@vuetify/v0'
|
|
13063
|
+
* <\/script>
|
|
13064
|
+
*
|
|
13065
|
+
* <template>
|
|
13066
|
+
* <AlertDialog.Root>
|
|
13067
|
+
* <AlertDialog.Activator>Delete</AlertDialog.Activator>
|
|
13068
|
+
* <AlertDialog.Content>
|
|
13069
|
+
* <AlertDialog.Title>Are you sure?</AlertDialog.Title>
|
|
13070
|
+
* <AlertDialog.Cancel>Cancel</AlertDialog.Cancel>
|
|
13071
|
+
* <AlertDialog.Action>Confirm</AlertDialog.Action>
|
|
13072
|
+
* </AlertDialog.Content>
|
|
13073
|
+
* </AlertDialog.Root>
|
|
13074
|
+
* </template>
|
|
13075
|
+
* ```
|
|
13076
|
+
*/
|
|
12921
13077
|
Root: _sfc_main$6,
|
|
13078
|
+
/**
|
|
13079
|
+
* Activator component that opens the alert dialog.
|
|
13080
|
+
*
|
|
13081
|
+
* @see https://0.vuetifyjs.com/components/disclosure/alert-dialog
|
|
13082
|
+
*
|
|
13083
|
+
* @example
|
|
13084
|
+
* ```vue
|
|
13085
|
+
* <script lang="ts" setup>
|
|
13086
|
+
* import { AlertDialog } from '@vuetify/v0'
|
|
13087
|
+
* <\/script>
|
|
13088
|
+
*
|
|
13089
|
+
* <template>
|
|
13090
|
+
* <AlertDialog.Activator>
|
|
13091
|
+
* Delete Item
|
|
13092
|
+
* </AlertDialog.Activator>
|
|
13093
|
+
* </template>
|
|
13094
|
+
* ```
|
|
13095
|
+
*/
|
|
12922
13096
|
Activator: _sfc_main$1,
|
|
13097
|
+
/**
|
|
13098
|
+
* Content container for the alert dialog using native `<dialog>` element.
|
|
13099
|
+
*
|
|
13100
|
+
* @see https://0.vuetifyjs.com/components/disclosure/alert-dialog
|
|
13101
|
+
*
|
|
13102
|
+
* @example
|
|
13103
|
+
* ```vue
|
|
13104
|
+
* <script lang="ts" setup>
|
|
13105
|
+
* import { AlertDialog } from '@vuetify/v0'
|
|
13106
|
+
* <\/script>
|
|
13107
|
+
*
|
|
13108
|
+
* <template>
|
|
13109
|
+
* <AlertDialog.Content>
|
|
13110
|
+
* <AlertDialog.Title>Are you sure?</AlertDialog.Title>
|
|
13111
|
+
* <AlertDialog.Description>This cannot be undone.</AlertDialog.Description>
|
|
13112
|
+
* <AlertDialog.Cancel>Cancel</AlertDialog.Cancel>
|
|
13113
|
+
* <AlertDialog.Action>Confirm</AlertDialog.Action>
|
|
13114
|
+
* </AlertDialog.Content>
|
|
13115
|
+
* </template>
|
|
13116
|
+
* ```
|
|
13117
|
+
*/
|
|
12923
13118
|
Content: _sfc_main$4,
|
|
13119
|
+
/**
|
|
13120
|
+
* Title component for accessible alert dialog labeling.
|
|
13121
|
+
*
|
|
13122
|
+
* @see https://0.vuetifyjs.com/components/disclosure/alert-dialog
|
|
13123
|
+
*
|
|
13124
|
+
* @example
|
|
13125
|
+
* ```vue
|
|
13126
|
+
* <script lang="ts" setup>
|
|
13127
|
+
* import { AlertDialog } from '@vuetify/v0'
|
|
13128
|
+
* <\/script>
|
|
13129
|
+
*
|
|
13130
|
+
* <template>
|
|
13131
|
+
* <AlertDialog.Title>Are you sure?</AlertDialog.Title>
|
|
13132
|
+
* </template>
|
|
13133
|
+
* ```
|
|
13134
|
+
*/
|
|
12924
13135
|
Title: _sfc_main$7,
|
|
13136
|
+
/**
|
|
13137
|
+
* Description component for accessible alert dialog description.
|
|
13138
|
+
*
|
|
13139
|
+
* @see https://0.vuetifyjs.com/components/disclosure/alert-dialog
|
|
13140
|
+
*
|
|
13141
|
+
* @example
|
|
13142
|
+
* ```vue
|
|
13143
|
+
* <script lang="ts" setup>
|
|
13144
|
+
* import { AlertDialog } from '@vuetify/v0'
|
|
13145
|
+
* <\/script>
|
|
13146
|
+
*
|
|
13147
|
+
* <template>
|
|
13148
|
+
* <AlertDialog.Description>
|
|
13149
|
+
* This action cannot be undone.
|
|
13150
|
+
* </AlertDialog.Description>
|
|
13151
|
+
* </template>
|
|
13152
|
+
* ```
|
|
13153
|
+
*/
|
|
12925
13154
|
Description: _sfc_main$5,
|
|
13155
|
+
/**
|
|
13156
|
+
* Cancel button component for dismissing the alert dialog.
|
|
13157
|
+
*
|
|
13158
|
+
* @see https://0.vuetifyjs.com/components/disclosure/alert-dialog
|
|
13159
|
+
*
|
|
13160
|
+
* @example
|
|
13161
|
+
* ```vue
|
|
13162
|
+
* <script lang="ts" setup>
|
|
13163
|
+
* import { AlertDialog } from '@vuetify/v0'
|
|
13164
|
+
* <\/script>
|
|
13165
|
+
*
|
|
13166
|
+
* <template>
|
|
13167
|
+
* <AlertDialog.Cancel>Cancel</AlertDialog.Cancel>
|
|
13168
|
+
* </template>
|
|
13169
|
+
* ```
|
|
13170
|
+
*/
|
|
12926
13171
|
Cancel: _sfc_main$2,
|
|
13172
|
+
/**
|
|
13173
|
+
* Close button component for closing the alert dialog.
|
|
13174
|
+
*
|
|
13175
|
+
* @see https://0.vuetifyjs.com/components/disclosure/alert-dialog
|
|
13176
|
+
*
|
|
13177
|
+
* @example
|
|
13178
|
+
* ```vue
|
|
13179
|
+
* <script lang="ts" setup>
|
|
13180
|
+
* import { AlertDialog } from '@vuetify/v0'
|
|
13181
|
+
* <\/script>
|
|
13182
|
+
*
|
|
13183
|
+
* <template>
|
|
13184
|
+
* <AlertDialog.Close>Close</AlertDialog.Close>
|
|
13185
|
+
* </template>
|
|
13186
|
+
* ```
|
|
13187
|
+
*/
|
|
12927
13188
|
Close: _sfc_main$3,
|
|
13189
|
+
/**
|
|
13190
|
+
* Action button component for confirming the alert dialog.
|
|
13191
|
+
*
|
|
13192
|
+
* @see https://0.vuetifyjs.com/components/disclosure/alert-dialog
|
|
13193
|
+
*
|
|
13194
|
+
* @example
|
|
13195
|
+
* ```vue
|
|
13196
|
+
* <script lang="ts" setup>
|
|
13197
|
+
* import { AlertDialog } from '@vuetify/v0'
|
|
13198
|
+
* <\/script>
|
|
13199
|
+
*
|
|
13200
|
+
* <template>
|
|
13201
|
+
* <AlertDialog.Action>Confirm</AlertDialog.Action>
|
|
13202
|
+
* </template>
|
|
13203
|
+
* ```
|
|
13204
|
+
*/
|
|
12928
13205
|
Action: _sfc_main
|
|
12929
13206
|
};
|
|
12930
13207
|
//#endregion
|
|
@@ -13088,8 +13365,62 @@ const _sfc_main$11 = /* @__PURE__ */ defineComponent({
|
|
|
13088
13365
|
* @see https://0.vuetifyjs.com/components/semantic/avatar
|
|
13089
13366
|
*/
|
|
13090
13367
|
const Avatar = {
|
|
13368
|
+
/**
|
|
13369
|
+
* Root component for avatars.
|
|
13370
|
+
*
|
|
13371
|
+
* @see https://0.vuetifyjs.com/components/semantic/avatar
|
|
13372
|
+
*
|
|
13373
|
+
* @example
|
|
13374
|
+
* ```vue
|
|
13375
|
+
* <script lang="ts" setup>
|
|
13376
|
+
* import { Avatar } from '@vuetify/v0'
|
|
13377
|
+
* <\/script>
|
|
13378
|
+
*
|
|
13379
|
+
* <template>
|
|
13380
|
+
* <Avatar.Root>
|
|
13381
|
+
* <Avatar.Image src="/avatar.jpg" />
|
|
13382
|
+
*
|
|
13383
|
+
* <Avatar.Fallback>JD</Avatar.Fallback>
|
|
13384
|
+
* </Avatar.Root>
|
|
13385
|
+
* </template>
|
|
13386
|
+
* ```
|
|
13387
|
+
*/
|
|
13091
13388
|
Root: _sfc_main$12,
|
|
13389
|
+
/**
|
|
13390
|
+
* Component for displaying the avatar image.
|
|
13391
|
+
*
|
|
13392
|
+
* @see https://0.vuetifyjs.com/components/semantic/avatar
|
|
13393
|
+
*
|
|
13394
|
+
* @example
|
|
13395
|
+
* ```vue
|
|
13396
|
+
* <script lang="ts" setup>
|
|
13397
|
+
* import { Avatar } from '@vuetify/v0'
|
|
13398
|
+
* <\/script>
|
|
13399
|
+
*
|
|
13400
|
+
* <template>
|
|
13401
|
+
* <Avatar.Image src="/avatar.jpg" alt="User avatar" />
|
|
13402
|
+
* </template>
|
|
13403
|
+
* ```
|
|
13404
|
+
*/
|
|
13092
13405
|
Image: _sfc_main$11,
|
|
13406
|
+
/**
|
|
13407
|
+
* Component for displaying fallback content when image fails to load.
|
|
13408
|
+
*
|
|
13409
|
+
* @see https://0.vuetifyjs.com/components/semantic/avatar
|
|
13410
|
+
*
|
|
13411
|
+
* @example
|
|
13412
|
+
* ```vue
|
|
13413
|
+
* <script lang="ts" setup>
|
|
13414
|
+
* import { Avatar } from '@vuetify/v0'
|
|
13415
|
+
* <\/script>
|
|
13416
|
+
*
|
|
13417
|
+
* <template>
|
|
13418
|
+
* <Avatar.Fallback>
|
|
13419
|
+
* JD
|
|
13420
|
+
* </Avatar.Fallback>
|
|
13421
|
+
* </template>
|
|
13422
|
+
* ```
|
|
13423
|
+
*/
|
|
13093
13424
|
Fallback: _sfc_main$10
|
|
13094
13425
|
};
|
|
13095
13426
|
//#endregion
|
|
@@ -13464,12 +13795,175 @@ const _sfc_main$18 = /* @__PURE__ */ defineComponent({
|
|
|
13464
13795
|
* @see https://0.vuetifyjs.com/components/semantic/breadcrumbs
|
|
13465
13796
|
*/
|
|
13466
13797
|
const Breadcrumbs = {
|
|
13798
|
+
/**
|
|
13799
|
+
* Root component for breadcrumb navigation.
|
|
13800
|
+
* Creates breadcrumbs composable + Group + Overflow context.
|
|
13801
|
+
*
|
|
13802
|
+
* @see https://0.vuetifyjs.com/components/semantic/breadcrumbs
|
|
13803
|
+
*
|
|
13804
|
+
* @example
|
|
13805
|
+
* ```vue
|
|
13806
|
+
* <script setup lang="ts">
|
|
13807
|
+
* import { Breadcrumbs } from '@vuetify/v0'
|
|
13808
|
+
* <\/script>
|
|
13809
|
+
*
|
|
13810
|
+
* <template>
|
|
13811
|
+
* <Breadcrumbs.Root>
|
|
13812
|
+
* <Breadcrumbs.List>
|
|
13813
|
+
* <Breadcrumbs.Item text="Home">
|
|
13814
|
+
* <Breadcrumbs.Link href="/">Home</Breadcrumbs.Link>
|
|
13815
|
+
* </Breadcrumbs.Item>
|
|
13816
|
+
*
|
|
13817
|
+
* <Breadcrumbs.Divider />
|
|
13818
|
+
*
|
|
13819
|
+
* <Breadcrumbs.Ellipsis />
|
|
13820
|
+
*
|
|
13821
|
+
* <Breadcrumbs.Item text="Products">
|
|
13822
|
+
* <Breadcrumbs.Link href="/products">Products</Breadcrumbs.Link>
|
|
13823
|
+
* </Breadcrumbs.Item>
|
|
13824
|
+
*
|
|
13825
|
+
* <Breadcrumbs.Divider />
|
|
13826
|
+
*
|
|
13827
|
+
* <Breadcrumbs.Item text="Shoes">
|
|
13828
|
+
* <Breadcrumbs.Page>Shoes</Breadcrumbs.Page>
|
|
13829
|
+
* </Breadcrumbs.Item>
|
|
13830
|
+
* </Breadcrumbs.List>
|
|
13831
|
+
* </Breadcrumbs.Root>
|
|
13832
|
+
* </template>
|
|
13833
|
+
* ```
|
|
13834
|
+
*/
|
|
13467
13835
|
Root: _sfc_main$19,
|
|
13836
|
+
/**
|
|
13837
|
+
* Semantic list wrapper for breadcrumb items.
|
|
13838
|
+
* Renders as an ordered list with role="list".
|
|
13839
|
+
*
|
|
13840
|
+
* @see https://0.vuetifyjs.com/components/semantic/breadcrumbs
|
|
13841
|
+
*
|
|
13842
|
+
* @example
|
|
13843
|
+
* ```vue
|
|
13844
|
+
* <template>
|
|
13845
|
+
* <Breadcrumbs.List>
|
|
13846
|
+
* <!-- Items, dividers, ellipsis go here -->
|
|
13847
|
+
* </Breadcrumbs.List>
|
|
13848
|
+
* </template>
|
|
13849
|
+
* ```
|
|
13850
|
+
*/
|
|
13468
13851
|
List: _sfc_main$17,
|
|
13852
|
+
/**
|
|
13853
|
+
* Individual breadcrumb item. Registers with root and
|
|
13854
|
+
* self-measures for overflow visibility.
|
|
13855
|
+
*
|
|
13856
|
+
* @see https://0.vuetifyjs.com/components/semantic/breadcrumbs
|
|
13857
|
+
*
|
|
13858
|
+
* @example
|
|
13859
|
+
* ```vue
|
|
13860
|
+
* <template>
|
|
13861
|
+
* <!-- With a link -->
|
|
13862
|
+
* <Breadcrumbs.Item text="Products">
|
|
13863
|
+
* <Breadcrumbs.Link href="/products">Products</Breadcrumbs.Link>
|
|
13864
|
+
* </Breadcrumbs.Item>
|
|
13865
|
+
*
|
|
13866
|
+
* <!-- Current page (no link) -->
|
|
13867
|
+
* <Breadcrumbs.Item text="Shoes">
|
|
13868
|
+
* <Breadcrumbs.Page>Shoes</Breadcrumbs.Page>
|
|
13869
|
+
* </Breadcrumbs.Item>
|
|
13870
|
+
*
|
|
13871
|
+
* <!-- With slot props -->
|
|
13872
|
+
* <Breadcrumbs.Item text="Home" v-slot="{ isSelected }">
|
|
13873
|
+
* <span v-show="isSelected">Home</span>
|
|
13874
|
+
* </Breadcrumbs.Item>
|
|
13875
|
+
* </template>
|
|
13876
|
+
* ```
|
|
13877
|
+
*/
|
|
13469
13878
|
Item: _sfc_main$15,
|
|
13879
|
+
/**
|
|
13880
|
+
* Navigable breadcrumb link. Renders as an anchor by default.
|
|
13881
|
+
* All attributes (href, to, etc.) fall through to the underlying element.
|
|
13882
|
+
*
|
|
13883
|
+
* @see https://0.vuetifyjs.com/components/semantic/breadcrumbs
|
|
13884
|
+
*
|
|
13885
|
+
* @example
|
|
13886
|
+
* ```vue
|
|
13887
|
+
* <template>
|
|
13888
|
+
* <!-- Standard anchor -->
|
|
13889
|
+
* <Breadcrumbs.Link href="/products">
|
|
13890
|
+
* Products
|
|
13891
|
+
* </Breadcrumbs.Link>
|
|
13892
|
+
*
|
|
13893
|
+
* <!-- With RouterLink via :as -->
|
|
13894
|
+
* <Breadcrumbs.Link :as="RouterLink" to="/products">
|
|
13895
|
+
* Products
|
|
13896
|
+
* </Breadcrumbs.Link>
|
|
13897
|
+
*
|
|
13898
|
+
* <!-- Custom element -->
|
|
13899
|
+
* <Breadcrumbs.Link as="button" @click="navigate">
|
|
13900
|
+
* Products
|
|
13901
|
+
* </Breadcrumbs.Link>
|
|
13902
|
+
* </template>
|
|
13903
|
+
* ```
|
|
13904
|
+
*/
|
|
13470
13905
|
Link: _sfc_main$16,
|
|
13906
|
+
/**
|
|
13907
|
+
* Current page indicator. Renders as a span with
|
|
13908
|
+
* aria-current="page".
|
|
13909
|
+
*
|
|
13910
|
+
* @see https://0.vuetifyjs.com/components/semantic/breadcrumbs
|
|
13911
|
+
*
|
|
13912
|
+
* @example
|
|
13913
|
+
* ```vue
|
|
13914
|
+
* <template>
|
|
13915
|
+
* <Breadcrumbs.Page>Current Page</Breadcrumbs.Page>
|
|
13916
|
+
*
|
|
13917
|
+
* <!-- With custom element -->
|
|
13918
|
+
* <Breadcrumbs.Page as="strong">Current Page</Breadcrumbs.Page>
|
|
13919
|
+
* </template>
|
|
13920
|
+
* ```
|
|
13921
|
+
*/
|
|
13471
13922
|
Page: _sfc_main$18,
|
|
13923
|
+
/**
|
|
13924
|
+
* Visual separator between breadcrumb items. Renders as a list
|
|
13925
|
+
* item with aria-hidden="true". Uses divider character from Root
|
|
13926
|
+
* by default, or override via prop or slot content.
|
|
13927
|
+
*
|
|
13928
|
+
* @see https://0.vuetifyjs.com/components/semantic/breadcrumbs
|
|
13929
|
+
*
|
|
13930
|
+
* @example
|
|
13931
|
+
* ```vue
|
|
13932
|
+
* <template>
|
|
13933
|
+
* <!-- Uses default divider from Root -->
|
|
13934
|
+
* <Breadcrumbs.Divider />
|
|
13935
|
+
*
|
|
13936
|
+
* <!-- Override divider character -->
|
|
13937
|
+
* <Breadcrumbs.Divider divider=">" />
|
|
13938
|
+
*
|
|
13939
|
+
* <!-- Custom slot content (e.g., SVG chevron) -->
|
|
13940
|
+
* <Breadcrumbs.Divider>
|
|
13941
|
+
* <svg class="size-3.5" fill="none" stroke="currentColor" viewBox="0 0 24 24">
|
|
13942
|
+
* <path d="M9 5l7 7-7 7" stroke-linecap="round" stroke-linejoin="round" stroke-width="2" />
|
|
13943
|
+
* </svg>
|
|
13944
|
+
* </Breadcrumbs.Divider>
|
|
13945
|
+
* </template>
|
|
13946
|
+
* ```
|
|
13947
|
+
*/
|
|
13472
13948
|
Divider: _sfc_main$13,
|
|
13949
|
+
/**
|
|
13950
|
+
* Ellipsis indicator shown when items are truncated by overflow.
|
|
13951
|
+
* Auto-hidden until overflow is detected. Renders with
|
|
13952
|
+
* aria-hidden="true".
|
|
13953
|
+
*
|
|
13954
|
+
* @see https://0.vuetifyjs.com/components/semantic/breadcrumbs
|
|
13955
|
+
*
|
|
13956
|
+
* @example
|
|
13957
|
+
* ```vue
|
|
13958
|
+
* <template>
|
|
13959
|
+
* <!-- Uses default "..." from Root -->
|
|
13960
|
+
* <Breadcrumbs.Ellipsis />
|
|
13961
|
+
*
|
|
13962
|
+
* <!-- Override ellipsis character -->
|
|
13963
|
+
* <Breadcrumbs.Ellipsis ellipsis="…" />
|
|
13964
|
+
* </template>
|
|
13965
|
+
* ```
|
|
13966
|
+
*/
|
|
13473
13967
|
Ellipsis: _sfc_main$14
|
|
13474
13968
|
};
|
|
13475
13969
|
//#endregion
|
|
@@ -13674,7 +14168,7 @@ const _sfc_main$25 = /* @__PURE__ */ defineComponent({
|
|
|
13674
14168
|
"type": __props.as === "button" ? "button" : void 0,
|
|
13675
14169
|
"role": "button",
|
|
13676
14170
|
"disabled": isDisabled.value ? true : void 0,
|
|
13677
|
-
"aria-disabled":
|
|
14171
|
+
"aria-disabled": isDisabled.value || isPassive.value,
|
|
13678
14172
|
"aria-busy": isLoading.value ? true : void 0,
|
|
13679
14173
|
"aria-pressed": group ? isSelected.value : void 0,
|
|
13680
14174
|
"aria-label": __props.ariaLabel || (isSolo.value ? locale.t("Button.label") : void 0),
|
|
@@ -13808,11 +14302,143 @@ const _sfc_main$24 = /* @__PURE__ */ defineComponent({
|
|
|
13808
14302
|
* ```
|
|
13809
14303
|
*/
|
|
13810
14304
|
const Button = {
|
|
14305
|
+
/**
|
|
14306
|
+
* Default content area for buttons.
|
|
14307
|
+
*
|
|
14308
|
+
* Registers with Root's internal selection as the fallback.
|
|
14309
|
+
* Always rendered, selected when Loading is not active.
|
|
14310
|
+
*
|
|
14311
|
+
* @see https://0.vuetifyjs.com/components/actions/button
|
|
14312
|
+
*
|
|
14313
|
+
* @example
|
|
14314
|
+
* ```vue
|
|
14315
|
+
* <script setup lang="ts">
|
|
14316
|
+
* import { Button } from '@vuetify/v0'
|
|
14317
|
+
* <\/script>
|
|
14318
|
+
*
|
|
14319
|
+
* <template>
|
|
14320
|
+
* <Button.Root>
|
|
14321
|
+
* <Button.Content>Submit</Button.Content>
|
|
14322
|
+
* </Button.Root>
|
|
14323
|
+
* </template>
|
|
14324
|
+
* ```
|
|
14325
|
+
*/
|
|
13811
14326
|
Content: _sfc_main$20,
|
|
14327
|
+
/**
|
|
14328
|
+
* Selection container for toggle button groups.
|
|
14329
|
+
*
|
|
14330
|
+
* @see https://0.vuetifyjs.com/components/actions/button
|
|
14331
|
+
*
|
|
14332
|
+
* @example
|
|
14333
|
+
* ```vue
|
|
14334
|
+
* <script setup lang="ts">
|
|
14335
|
+
* import { Button } from '@vuetify/v0'
|
|
14336
|
+
* import { ref } from 'vue'
|
|
14337
|
+
*
|
|
14338
|
+
* const selected = ref<string>()
|
|
14339
|
+
* <\/script>
|
|
14340
|
+
*
|
|
14341
|
+
* <template>
|
|
14342
|
+
* <Button.Group v-model="selected">
|
|
14343
|
+
* <Button.Root value="bold">B</Button.Root>
|
|
14344
|
+
* <Button.Root value="italic">I</Button.Root>
|
|
14345
|
+
* </Button.Group>
|
|
14346
|
+
* </template>
|
|
14347
|
+
* ```
|
|
14348
|
+
*/
|
|
13812
14349
|
Group: _sfc_main$21,
|
|
14350
|
+
/**
|
|
14351
|
+
* Hidden input component for form submission.
|
|
14352
|
+
*
|
|
14353
|
+
* @see https://0.vuetifyjs.com/components/actions/button
|
|
14354
|
+
*
|
|
14355
|
+
* @example
|
|
14356
|
+
* ```vue
|
|
14357
|
+
* <script setup lang="ts">
|
|
14358
|
+
* import { Button } from '@vuetify/v0'
|
|
14359
|
+
* <\/script>
|
|
14360
|
+
*
|
|
14361
|
+
* <template>
|
|
14362
|
+
* <Button.Group>
|
|
14363
|
+
* <Button.Root value="yes">
|
|
14364
|
+
* Yes
|
|
14365
|
+
* <Button.HiddenInput name="answer" />
|
|
14366
|
+
* </Button.Root>
|
|
14367
|
+
* </Button.Group>
|
|
14368
|
+
* </template>
|
|
14369
|
+
* ```
|
|
14370
|
+
*/
|
|
13813
14371
|
HiddenInput: _sfc_main$22,
|
|
14372
|
+
/**
|
|
14373
|
+
* Icon wrapper with accessibility enforcement.
|
|
14374
|
+
*
|
|
14375
|
+
* Sets `aria-hidden="true"` on itself. Detects solo buttons
|
|
14376
|
+
* and warns when `aria-label` is missing on Root.
|
|
14377
|
+
*
|
|
14378
|
+
* @see https://0.vuetifyjs.com/components/actions/button
|
|
14379
|
+
*
|
|
14380
|
+
* @example
|
|
14381
|
+
* ```vue
|
|
14382
|
+
* <script setup lang="ts">
|
|
14383
|
+
* import { Button } from '@vuetify/v0'
|
|
14384
|
+
* <\/script>
|
|
14385
|
+
*
|
|
14386
|
+
* <template>
|
|
14387
|
+
* <Button.Root aria-label="Close">
|
|
14388
|
+
* <Button.Icon>✕</Button.Icon>
|
|
14389
|
+
* </Button.Root>
|
|
14390
|
+
* </template>
|
|
14391
|
+
* ```
|
|
14392
|
+
*/
|
|
13814
14393
|
Icon: _sfc_main$23,
|
|
14394
|
+
/**
|
|
14395
|
+
* Loading indicator that becomes visible after the grace period.
|
|
14396
|
+
*
|
|
14397
|
+
* Registers with Root's internal selection. Enabled and selected
|
|
14398
|
+
* when Root's isLoading becomes true (after grace period).
|
|
14399
|
+
*
|
|
14400
|
+
* @see https://0.vuetifyjs.com/components/actions/button
|
|
14401
|
+
*
|
|
14402
|
+
* @example
|
|
14403
|
+
* ```vue
|
|
14404
|
+
* <script setup lang="ts">
|
|
14405
|
+
* import { Button } from '@vuetify/v0'
|
|
14406
|
+
* import { shallowRef } from 'vue'
|
|
14407
|
+
*
|
|
14408
|
+
* const loading = shallowRef(false)
|
|
14409
|
+
* <\/script>
|
|
14410
|
+
*
|
|
14411
|
+
* <template>
|
|
14412
|
+
* <Button.Root :loading @click="loading = true">
|
|
14413
|
+
* <Button.Loading>Saving...</Button.Loading>
|
|
14414
|
+
* <Button.Content>Save</Button.Content>
|
|
14415
|
+
* </Button.Root>
|
|
14416
|
+
* </template>
|
|
14417
|
+
* ```
|
|
14418
|
+
*/
|
|
13815
14419
|
Loading: _sfc_main$24,
|
|
14420
|
+
/**
|
|
14421
|
+
* Root component for buttons.
|
|
14422
|
+
*
|
|
14423
|
+
* Renders as a button with proper ARIA attributes. Supports
|
|
14424
|
+
* disabled, readonly, passive, and loading states. When inside
|
|
14425
|
+
* a Button.Group, registers as a toggle button.
|
|
14426
|
+
*
|
|
14427
|
+
* @see https://0.vuetifyjs.com/components/actions/button
|
|
14428
|
+
*
|
|
14429
|
+
* @example
|
|
14430
|
+
* ```vue
|
|
14431
|
+
* <script setup lang="ts">
|
|
14432
|
+
* import { Button } from '@vuetify/v0'
|
|
14433
|
+
* <\/script>
|
|
14434
|
+
*
|
|
14435
|
+
* <template>
|
|
14436
|
+
* <Button.Root>
|
|
14437
|
+
* <Button.Content>Click me</Button.Content>
|
|
14438
|
+
* </Button.Root>
|
|
14439
|
+
* </template>
|
|
14440
|
+
* ```
|
|
14441
|
+
*/
|
|
13816
14442
|
Root: _sfc_main$25
|
|
13817
14443
|
};
|
|
13818
14444
|
//#endregion
|
|
@@ -14581,15 +15207,194 @@ const _sfc_main$28 = /* @__PURE__ */ defineComponent({
|
|
|
14581
15207
|
* ```
|
|
14582
15208
|
*/
|
|
14583
15209
|
const Carousel = {
|
|
15210
|
+
/**
|
|
15211
|
+
* Root component that provides carousel context.
|
|
15212
|
+
*
|
|
15213
|
+
* @see https://0.vuetifyjs.com/components/semantic/carousel
|
|
15214
|
+
*
|
|
15215
|
+
* @example
|
|
15216
|
+
* ```vue
|
|
15217
|
+
* <script setup lang="ts">
|
|
15218
|
+
* import { Carousel } from '@vuetify/v0'
|
|
15219
|
+
* <\/script>
|
|
15220
|
+
*
|
|
15221
|
+
* <template>
|
|
15222
|
+
* <Carousel.Root circular :autoplay="5000">
|
|
15223
|
+
* <Carousel.Viewport>
|
|
15224
|
+
* <Carousel.Item v-for="i in 5" :key="i" :value="i">
|
|
15225
|
+
* Slide {{ i }}
|
|
15226
|
+
* </Carousel.Item>
|
|
15227
|
+
* </Carousel.Viewport>
|
|
15228
|
+
*
|
|
15229
|
+
* <Carousel.Previous>Previous</Carousel.Previous>
|
|
15230
|
+
* <Carousel.Next>Next</Carousel.Next>
|
|
15231
|
+
* <Carousel.LiveRegion class="sr-only" />
|
|
15232
|
+
* </Carousel.Root>
|
|
15233
|
+
* </template>
|
|
15234
|
+
* ```
|
|
15235
|
+
*/
|
|
14584
15236
|
Root: _sfc_main$32,
|
|
15237
|
+
/**
|
|
15238
|
+
* Scroll-snap container for carousel items. Handles native drag/swipe
|
|
15239
|
+
* via CSS scroll-snap and synchronizes scroll position with selection.
|
|
15240
|
+
*
|
|
15241
|
+
* @see https://0.vuetifyjs.com/components/semantic/carousel
|
|
15242
|
+
*
|
|
15243
|
+
* @example
|
|
15244
|
+
* ```vue
|
|
15245
|
+
* <template>
|
|
15246
|
+
* <Carousel.Viewport class="cursor-grab data-[dragging]:cursor-grabbing">
|
|
15247
|
+
* <Carousel.Item v-for="i in 5" :key="i" :value="i">
|
|
15248
|
+
* Slide {{ i }}
|
|
15249
|
+
* </Carousel.Item>
|
|
15250
|
+
* </Carousel.Viewport>
|
|
15251
|
+
*
|
|
15252
|
+
* <!-- With slot props -->
|
|
15253
|
+
* <Carousel.Viewport v-slot="{ isDragging }">
|
|
15254
|
+
* <span v-if="isDragging">Dragging...</span>
|
|
15255
|
+
* </Carousel.Viewport>
|
|
15256
|
+
* </template>
|
|
15257
|
+
* ```
|
|
15258
|
+
*/
|
|
14585
15259
|
Viewport: _sfc_main$33,
|
|
15260
|
+
/**
|
|
15261
|
+
* Individual carousel slide that registers with the step context.
|
|
15262
|
+
* Exposes selection state, visibility, and ARIA attributes.
|
|
15263
|
+
*
|
|
15264
|
+
* @see https://0.vuetifyjs.com/components/semantic/carousel
|
|
15265
|
+
*
|
|
15266
|
+
* @example
|
|
15267
|
+
* ```vue
|
|
15268
|
+
* <template>
|
|
15269
|
+
* <Carousel.Item :value="1">Slide 1</Carousel.Item>
|
|
15270
|
+
*
|
|
15271
|
+
* <!-- With slot props -->
|
|
15272
|
+
* <Carousel.Item :value="2" v-slot="{ isActive, isSelected }">
|
|
15273
|
+
* <div :class="{ 'opacity-100': isActive, 'opacity-40': !isActive }">
|
|
15274
|
+
* Slide 2
|
|
15275
|
+
* </div>
|
|
15276
|
+
* </Carousel.Item>
|
|
15277
|
+
*
|
|
15278
|
+
* <!-- With data attributes -->
|
|
15279
|
+
* <Carousel.Item :value="3" class="data-[active]:opacity-100 opacity-40">
|
|
15280
|
+
* Slide 3
|
|
15281
|
+
* </Carousel.Item>
|
|
15282
|
+
* </template>
|
|
15283
|
+
* ```
|
|
15284
|
+
*/
|
|
14586
15285
|
Item: _sfc_main$27,
|
|
14587
|
-
|
|
14588
|
-
|
|
14589
|
-
|
|
14590
|
-
|
|
14591
|
-
|
|
14592
|
-
|
|
15286
|
+
/**
|
|
15287
|
+
* Navigation button that moves to the previous slide. Automatically
|
|
15288
|
+
* disables at the first slide in non-circular mode.
|
|
15289
|
+
*
|
|
15290
|
+
* @see https://0.vuetifyjs.com/components/semantic/carousel
|
|
15291
|
+
*
|
|
15292
|
+
* @example
|
|
15293
|
+
* ```vue
|
|
15294
|
+
* <template>
|
|
15295
|
+
* <Carousel.Previous>Previous</Carousel.Previous>
|
|
15296
|
+
*
|
|
15297
|
+
* <!-- With slot props -->
|
|
15298
|
+
* <Carousel.Previous v-slot="{ isDisabled, isAtEdge }">
|
|
15299
|
+
* <span :class="{ 'opacity-50': isDisabled }">‹</span>
|
|
15300
|
+
* </Carousel.Previous>
|
|
15301
|
+
*
|
|
15302
|
+
* <!-- With data attributes -->
|
|
15303
|
+
* <Carousel.Previous class="data-[disabled]:opacity-40">
|
|
15304
|
+
* Previous
|
|
15305
|
+
* </Carousel.Previous>
|
|
15306
|
+
* </template>
|
|
15307
|
+
* ```
|
|
15308
|
+
*/
|
|
15309
|
+
Previous: _sfc_main$30,
|
|
15310
|
+
/**
|
|
15311
|
+
* Navigation button that moves to the next slide. Automatically
|
|
15312
|
+
* disables at the last visible boundary in non-circular mode.
|
|
15313
|
+
*
|
|
15314
|
+
* @see https://0.vuetifyjs.com/components/semantic/carousel
|
|
15315
|
+
*
|
|
15316
|
+
* @example
|
|
15317
|
+
* ```vue
|
|
15318
|
+
* <template>
|
|
15319
|
+
* <Carousel.Next>Next</Carousel.Next>
|
|
15320
|
+
*
|
|
15321
|
+
* <!-- With slot props -->
|
|
15322
|
+
* <Carousel.Next v-slot="{ isDisabled, isAtEdge }">
|
|
15323
|
+
* <span :class="{ 'opacity-50': isDisabled }">›</span>
|
|
15324
|
+
* </Carousel.Next>
|
|
15325
|
+
*
|
|
15326
|
+
* <!-- With data attributes -->
|
|
15327
|
+
* <Carousel.Next class="data-[disabled]:opacity-40">
|
|
15328
|
+
* Next
|
|
15329
|
+
* </Carousel.Next>
|
|
15330
|
+
* </template>
|
|
15331
|
+
* ```
|
|
15332
|
+
*/
|
|
15333
|
+
Next: _sfc_main$29,
|
|
15334
|
+
/**
|
|
15335
|
+
* Dot indicator navigation showing the active slide. Exposes an
|
|
15336
|
+
* `items` array via slot props — one entry per slide with selection
|
|
15337
|
+
* state and ARIA attributes. Uses roving tabindex for keyboard nav.
|
|
15338
|
+
*
|
|
15339
|
+
* @see https://0.vuetifyjs.com/components/semantic/carousel
|
|
15340
|
+
*
|
|
15341
|
+
* @example
|
|
15342
|
+
* ```vue
|
|
15343
|
+
* <template>
|
|
15344
|
+
* <Carousel.Indicator v-slot="{ items }">
|
|
15345
|
+
* <button
|
|
15346
|
+
* v-for="item in items"
|
|
15347
|
+
* :key="item.index"
|
|
15348
|
+
* v-bind="item.attrs"
|
|
15349
|
+
* class="size-2 rounded-full bg-surface-variant data-[selected]:bg-primary"
|
|
15350
|
+
* />
|
|
15351
|
+
* </Carousel.Indicator>
|
|
15352
|
+
* </template>
|
|
15353
|
+
* ```
|
|
15354
|
+
*/
|
|
15355
|
+
Indicator: _sfc_main$26,
|
|
15356
|
+
/**
|
|
15357
|
+
* Autoplay progress bar that fills based on remaining timer duration.
|
|
15358
|
+
* Exposes progress (0–1), autoplay state, and width styling via
|
|
15359
|
+
* slot props. Use `data-state` to style active/paused/idle states.
|
|
15360
|
+
*
|
|
15361
|
+
* @see https://0.vuetifyjs.com/components/semantic/carousel
|
|
15362
|
+
*
|
|
15363
|
+
* @example
|
|
15364
|
+
* ```vue
|
|
15365
|
+
* <template>
|
|
15366
|
+
* <Carousel.Progress
|
|
15367
|
+
* class="h-1 bg-surface-variant data-[state=idle]:hidden"
|
|
15368
|
+
* >
|
|
15369
|
+
* <template #default="{ attrs }">
|
|
15370
|
+
* <div
|
|
15371
|
+
* class="h-full bg-primary transition-[width]"
|
|
15372
|
+
* :style="attrs.style"
|
|
15373
|
+
* />
|
|
15374
|
+
* </template>
|
|
15375
|
+
* </Carousel.Progress>
|
|
15376
|
+
* </template>
|
|
15377
|
+
* ```
|
|
15378
|
+
*/
|
|
15379
|
+
Progress: _sfc_main$31,
|
|
15380
|
+
/**
|
|
15381
|
+
* Visually-hidden live region that announces slide changes to screen
|
|
15382
|
+
* readers. Should be styled with sr-only/visually-hidden CSS.
|
|
15383
|
+
*
|
|
15384
|
+
* @see https://0.vuetifyjs.com/components/semantic/carousel
|
|
15385
|
+
*
|
|
15386
|
+
* @example
|
|
15387
|
+
* ```vue
|
|
15388
|
+
* <template>
|
|
15389
|
+
* <Carousel.Root>
|
|
15390
|
+
* <Carousel.LiveRegion class="sr-only" />
|
|
15391
|
+
* <!-- other carousel items -->
|
|
15392
|
+
* </Carousel.Root>
|
|
15393
|
+
* </template>
|
|
15394
|
+
* ```
|
|
15395
|
+
*/
|
|
15396
|
+
LiveRegion: _sfc_main$28
|
|
15397
|
+
};
|
|
14593
15398
|
//#endregion
|
|
14594
15399
|
//#region src/components/Checkbox/CheckboxGroup.vue
|
|
14595
15400
|
const [useCheckboxGroup, provideCheckboxGroup] = createContext();
|
|
@@ -14770,7 +15575,7 @@ const _sfc_main$37 = /* @__PURE__ */ defineComponent({
|
|
|
14770
15575
|
"type": __props.as === "button" ? "button" : void 0,
|
|
14771
15576
|
"role": "checkbox",
|
|
14772
15577
|
"aria-checked": isMixed.value ? "mixed" : isChecked.value,
|
|
14773
|
-
"aria-disabled": isDisabled.value
|
|
15578
|
+
"aria-disabled": isDisabled.value,
|
|
14774
15579
|
"aria-label": __props.label || void 0,
|
|
14775
15580
|
"aria-labelledby": __props.ariaLabelledby || void 0,
|
|
14776
15581
|
"aria-describedby": __props.ariaDescribedby || void 0,
|
|
@@ -14946,7 +15751,7 @@ const _sfc_main$38 = /* @__PURE__ */ defineComponent({
|
|
|
14946
15751
|
"type": __props.as === "button" ? "button" : void 0,
|
|
14947
15752
|
"role": "checkbox",
|
|
14948
15753
|
"aria-checked": isMixed.value ? "mixed" : isAllSelected.value,
|
|
14949
|
-
"aria-disabled": isDisabled.value
|
|
15754
|
+
"aria-disabled": isDisabled.value,
|
|
14950
15755
|
"aria-label": __props.label || void 0,
|
|
14951
15756
|
"aria-labelledby": __props.ariaLabelledby || void 0,
|
|
14952
15757
|
"aria-describedby": __props.ariaDescribedby || void 0,
|
|
@@ -14992,10 +15797,148 @@ const _sfc_main$38 = /* @__PURE__ */ defineComponent({
|
|
|
14992
15797
|
* ```
|
|
14993
15798
|
*/
|
|
14994
15799
|
const Checkbox = {
|
|
15800
|
+
/**
|
|
15801
|
+
* Group component for managing multiple checkboxes.
|
|
15802
|
+
*
|
|
15803
|
+
* @see https://0.vuetifyjs.com/components/forms/checkbox
|
|
15804
|
+
*
|
|
15805
|
+
* @example
|
|
15806
|
+
* ```vue
|
|
15807
|
+
* <script setup lang="ts">
|
|
15808
|
+
* import { Checkbox } from '@vuetify/v0'
|
|
15809
|
+
* import { ref } from 'vue'
|
|
15810
|
+
*
|
|
15811
|
+
* const selected = ref<string[]>([])
|
|
15812
|
+
* <\/script>
|
|
15813
|
+
*
|
|
15814
|
+
* <template>
|
|
15815
|
+
* <Checkbox.Group v-model="selected">
|
|
15816
|
+
* <Checkbox.Root value="a">
|
|
15817
|
+
* <Checkbox.Indicator>✓</Checkbox.Indicator>
|
|
15818
|
+
* Option A
|
|
15819
|
+
* </Checkbox.Root>
|
|
15820
|
+
* <Checkbox.Root value="b">
|
|
15821
|
+
* <Checkbox.Indicator>✓</Checkbox.Indicator>
|
|
15822
|
+
* Option B
|
|
15823
|
+
* </Checkbox.Root>
|
|
15824
|
+
* </Checkbox.Group>
|
|
15825
|
+
* </template>
|
|
15826
|
+
* ```
|
|
15827
|
+
*/
|
|
14995
15828
|
Group: _sfc_main$34,
|
|
15829
|
+
/**
|
|
15830
|
+
* Hidden input component for form submission.
|
|
15831
|
+
*
|
|
15832
|
+
* Auto-rendered by Root when `name` prop is provided.
|
|
15833
|
+
* Can also be used explicitly for custom form integration.
|
|
15834
|
+
*
|
|
15835
|
+
* @see https://0.vuetifyjs.com/components/forms/checkbox
|
|
15836
|
+
*
|
|
15837
|
+
* @example
|
|
15838
|
+
* ```vue
|
|
15839
|
+
* <script setup lang="ts">
|
|
15840
|
+
* import { Checkbox } from '@vuetify/v0'
|
|
15841
|
+
* <\/script>
|
|
15842
|
+
*
|
|
15843
|
+
* <template>
|
|
15844
|
+
* <Checkbox.Root>
|
|
15845
|
+
* <Checkbox.Indicator>✓</Checkbox.Indicator>
|
|
15846
|
+
* <Checkbox.HiddenInput name="agree" value="yes" />
|
|
15847
|
+
* </Checkbox.Root>
|
|
15848
|
+
* </template>
|
|
15849
|
+
* ```
|
|
15850
|
+
*/
|
|
14996
15851
|
HiddenInput: _sfc_main$35,
|
|
15852
|
+
/**
|
|
15853
|
+
* Visual indicator component for checkboxes.
|
|
15854
|
+
*
|
|
15855
|
+
* Renders as a span and only displays when checked or indeterminate.
|
|
15856
|
+
* Must be used within a Checkbox.Root component.
|
|
15857
|
+
*
|
|
15858
|
+
* @see https://0.vuetifyjs.com/components/forms/checkbox
|
|
15859
|
+
*
|
|
15860
|
+
* @example
|
|
15861
|
+
* ```vue
|
|
15862
|
+
* <script setup lang="ts">
|
|
15863
|
+
* import { Checkbox } from '@vuetify/v0'
|
|
15864
|
+
* <\/script>
|
|
15865
|
+
*
|
|
15866
|
+
* <template>
|
|
15867
|
+
* <Checkbox.Root>
|
|
15868
|
+
* <Checkbox.Indicator>
|
|
15869
|
+
* <svg viewBox="0 0 24 24">
|
|
15870
|
+
* <path d="M9 16.17L4.83 12l-1.42 1.41L9 19 21 7l-1.41-1.41z" />
|
|
15871
|
+
* </svg>
|
|
15872
|
+
* </Checkbox.Indicator>
|
|
15873
|
+
* </Checkbox.Root>
|
|
15874
|
+
* </template>
|
|
15875
|
+
* ```
|
|
15876
|
+
*/
|
|
14997
15877
|
Indicator: _sfc_main$36,
|
|
15878
|
+
/**
|
|
15879
|
+
* Root component for individual checkboxes.
|
|
15880
|
+
*
|
|
15881
|
+
* Renders as a button with proper ARIA attributes and handles
|
|
15882
|
+
* click/keyboard interactions. Supports standalone mode with
|
|
15883
|
+
* v-model or group mode within Checkbox.Group. When `name` prop
|
|
15884
|
+
* is provided, automatically renders a hidden input for form submission.
|
|
15885
|
+
*
|
|
15886
|
+
* @see https://0.vuetifyjs.com/components/forms/checkbox
|
|
15887
|
+
*
|
|
15888
|
+
* @example
|
|
15889
|
+
* ```vue
|
|
15890
|
+
* <script setup lang="ts">
|
|
15891
|
+
* import { Checkbox } from '@vuetify/v0'
|
|
15892
|
+
* import { ref } from 'vue'
|
|
15893
|
+
*
|
|
15894
|
+
* const agreed = ref(false)
|
|
15895
|
+
* <\/script>
|
|
15896
|
+
*
|
|
15897
|
+
* <template>
|
|
15898
|
+
* <label>
|
|
15899
|
+
* <Checkbox.Root v-model="agreed">
|
|
15900
|
+
* <Checkbox.Indicator>✓</Checkbox.Indicator>
|
|
15901
|
+
* </Checkbox.Root>
|
|
15902
|
+
* I agree to the terms
|
|
15903
|
+
* </label>
|
|
15904
|
+
* </template>
|
|
15905
|
+
* ```
|
|
15906
|
+
*/
|
|
14998
15907
|
Root: _sfc_main$37,
|
|
15908
|
+
/**
|
|
15909
|
+
* Select all checkbox for group multi-selection.
|
|
15910
|
+
*
|
|
15911
|
+
* Binds to parent Checkbox.Group's aggregate state. Reflects
|
|
15912
|
+
* isAllSelected/isMixed and calls toggleAll on click. Does NOT
|
|
15913
|
+
* register as a group item. Must be used within a Checkbox.Group.
|
|
15914
|
+
*
|
|
15915
|
+
* @see https://0.vuetifyjs.com/components/forms/checkbox
|
|
15916
|
+
*
|
|
15917
|
+
* @example
|
|
15918
|
+
* ```vue
|
|
15919
|
+
* <script setup lang="ts">
|
|
15920
|
+
* import { Checkbox } from '@vuetify/v0'
|
|
15921
|
+
* import { ref } from 'vue'
|
|
15922
|
+
*
|
|
15923
|
+
* const selected = ref<string[]>([])
|
|
15924
|
+
* <\/script>
|
|
15925
|
+
*
|
|
15926
|
+
* <template>
|
|
15927
|
+
* <Checkbox.Group v-model="selected">
|
|
15928
|
+
* <Checkbox.SelectAll>
|
|
15929
|
+
* <Checkbox.Indicator v-slot="{ isMixed }">
|
|
15930
|
+
* <span v-if="isMixed">−</span>
|
|
15931
|
+
* <span v-else>✓</span>
|
|
15932
|
+
* </Checkbox.Indicator>
|
|
15933
|
+
* </Checkbox.SelectAll>
|
|
15934
|
+
*
|
|
15935
|
+
* <Checkbox.Root value="a">
|
|
15936
|
+
* <Checkbox.Indicator>✓</Checkbox.Indicator>
|
|
15937
|
+
* </Checkbox.Root>
|
|
15938
|
+
* </Checkbox.Group>
|
|
15939
|
+
* </template>
|
|
15940
|
+
* ```
|
|
15941
|
+
*/
|
|
14999
15942
|
SelectAll: _sfc_main$38
|
|
15000
15943
|
};
|
|
15001
15944
|
//#endregion
|
|
@@ -15240,7 +16183,7 @@ const visuallyHiddenStyle$3 = {
|
|
|
15240
16183
|
whiteSpace: "nowrap",
|
|
15241
16184
|
border: "0"
|
|
15242
16185
|
};
|
|
15243
|
-
const _sfc_main$
|
|
16186
|
+
const _sfc_main$165 = /* @__PURE__ */ defineComponent({
|
|
15244
16187
|
name: "ComboboxHiddenInput",
|
|
15245
16188
|
__name: "ComboboxHiddenInput",
|
|
15246
16189
|
props: { namespace: { default: "v0:combobox" } },
|
|
@@ -15350,7 +16293,7 @@ const _sfc_main$51 = /* @__PURE__ */ defineComponent({
|
|
|
15350
16293
|
}, {
|
|
15351
16294
|
default: withCtx(() => [renderSlot(_ctx.$slots, "default", normalizeProps(guardReactiveProps(slotProps.value)))]),
|
|
15352
16295
|
_: 3
|
|
15353
|
-
}, 8, ["as"]), __props.name ? (openBlock(), createBlock(_sfc_main$
|
|
16296
|
+
}, 8, ["as"]), __props.name ? (openBlock(), createBlock(_sfc_main$165, { key: 0 })) : createCommentVNode("v-if", true)], 64);
|
|
15354
16297
|
};
|
|
15355
16298
|
}
|
|
15356
16299
|
});
|
|
@@ -15510,7 +16453,7 @@ const _sfc_main$45 = /* @__PURE__ */ defineComponent({
|
|
|
15510
16453
|
"aria-describedby": context.hasDescription.value ? context.descriptionId : void 0,
|
|
15511
16454
|
"aria-errormessage": context.hasError.value && context.errors.value.length > 0 ? context.errorId : void 0,
|
|
15512
16455
|
"aria-invalid": invalid.value || void 0,
|
|
15513
|
-
"aria-disabled": toValue(context.disabled)
|
|
16456
|
+
"aria-disabled": toValue(context.disabled),
|
|
15514
16457
|
"disabled": toValue(context.disabled) || void 0,
|
|
15515
16458
|
"onInput": onInput,
|
|
15516
16459
|
"onFocus": onFocus,
|
|
@@ -15710,7 +16653,7 @@ const _sfc_main$50 = /* @__PURE__ */ defineComponent({
|
|
|
15710
16653
|
"id": elementId,
|
|
15711
16654
|
"role": "option",
|
|
15712
16655
|
"aria-selected": isSelected.value,
|
|
15713
|
-
"aria-disabled": isDisabled.value
|
|
16656
|
+
"aria-disabled": isDisabled.value,
|
|
15714
16657
|
"data-selected": isSelected.value || void 0,
|
|
15715
16658
|
"data-highlighted": isHighlighted.value ? "" : void 0,
|
|
15716
16659
|
"data-disabled": isDisabled.value || void 0,
|
|
@@ -15773,14 +16716,165 @@ const _sfc_main$50 = /* @__PURE__ */ defineComponent({
|
|
|
15773
16716
|
* ```
|
|
15774
16717
|
*/
|
|
15775
16718
|
const Combobox = {
|
|
16719
|
+
/**
|
|
16720
|
+
* Root component for comboboxes. Creates selection, virtual focus, popover,
|
|
16721
|
+
* and adapter contexts. Bridges v-model to the internal selection state.
|
|
16722
|
+
*
|
|
16723
|
+
* @see https://0.vuetifyjs.com/components/forms/combobox
|
|
16724
|
+
*
|
|
16725
|
+
* @example
|
|
16726
|
+
* ```vue
|
|
16727
|
+
* <script lang="ts" setup>
|
|
16728
|
+
* import { Combobox } from '@vuetify/v0'
|
|
16729
|
+
* import { ref } from 'vue'
|
|
16730
|
+
*
|
|
16731
|
+
* const selected = ref()
|
|
16732
|
+
* <\/script>
|
|
16733
|
+
*
|
|
16734
|
+
* <template>
|
|
16735
|
+
* <Combobox.Root v-model="selected" strict>
|
|
16736
|
+
* <Combobox.Activator>
|
|
16737
|
+
* <Combobox.Control placeholder="Search..." />
|
|
16738
|
+
* <Combobox.Cue />
|
|
16739
|
+
* </Combobox.Activator>
|
|
16740
|
+
* <Combobox.Content>
|
|
16741
|
+
* <Combobox.Item id="a" value="A">Option A</Combobox.Item>
|
|
16742
|
+
* </Combobox.Content>
|
|
16743
|
+
* </Combobox.Root>
|
|
16744
|
+
* </template>
|
|
16745
|
+
* ```
|
|
16746
|
+
*/
|
|
15776
16747
|
Root: _sfc_main$51,
|
|
16748
|
+
/**
|
|
16749
|
+
* Wrapper for the control and cue. Sets CSS anchor-name so the dropdown
|
|
16750
|
+
* positions relative to this element.
|
|
16751
|
+
*
|
|
16752
|
+
* @see https://0.vuetifyjs.com/components/forms/combobox
|
|
16753
|
+
*
|
|
16754
|
+
* @example
|
|
16755
|
+
* ```vue
|
|
16756
|
+
* <Combobox.Activator>
|
|
16757
|
+
* <Combobox.Control placeholder="Type to search..." />
|
|
16758
|
+
* <Combobox.Cue />
|
|
16759
|
+
* </Combobox.Activator>
|
|
16760
|
+
* ```
|
|
16761
|
+
*/
|
|
15777
16762
|
Activator: _sfc_main$43,
|
|
16763
|
+
/**
|
|
16764
|
+
* Text input that drives the query string and keyboard navigation.
|
|
16765
|
+
* Binds `role="combobox"` and manages `aria-activedescendant` via virtual focus.
|
|
16766
|
+
*
|
|
16767
|
+
* @see https://0.vuetifyjs.com/components/forms/combobox
|
|
16768
|
+
*
|
|
16769
|
+
* @example
|
|
16770
|
+
* ```vue
|
|
16771
|
+
* <!-- Opens on focus (default) -->
|
|
16772
|
+
* <Combobox.Control placeholder="Search fruits..." />
|
|
16773
|
+
*
|
|
16774
|
+
* <!-- Opens only when the user starts typing -->
|
|
16775
|
+
* <Combobox.Control open-on="input" placeholder="Start typing..." />
|
|
16776
|
+
* ```
|
|
16777
|
+
*/
|
|
15778
16778
|
Control: _sfc_main$45,
|
|
16779
|
+
/**
|
|
16780
|
+
* Visual cue for open/close state. Exposes `data-state="open|closed"` for
|
|
16781
|
+
* CSS-driven styling. Clicking toggles the dropdown.
|
|
16782
|
+
*
|
|
16783
|
+
* @see https://0.vuetifyjs.com/components/forms/combobox
|
|
16784
|
+
*
|
|
16785
|
+
* @example
|
|
16786
|
+
* ```vue
|
|
16787
|
+
* <Combobox.Cue v-slot="{ isOpen }">
|
|
16788
|
+
* {{ isOpen ? '▲' : '▼' }}
|
|
16789
|
+
* </Combobox.Cue>
|
|
16790
|
+
* ```
|
|
16791
|
+
*/
|
|
15779
16792
|
Cue: _sfc_main$46,
|
|
16793
|
+
/**
|
|
16794
|
+
* Dropdown content container using native popover API with CSS anchor
|
|
16795
|
+
* positioning. Renders `role="listbox"` with lazy mounting.
|
|
16796
|
+
*
|
|
16797
|
+
* @see https://0.vuetifyjs.com/components/forms/combobox
|
|
16798
|
+
*
|
|
16799
|
+
* @example
|
|
16800
|
+
* ```vue
|
|
16801
|
+
* <Combobox.Content>
|
|
16802
|
+
* <Combobox.Item id="a" value="A">Option A</Combobox.Item>
|
|
16803
|
+
* <Combobox.Item id="b" value="B">Option B</Combobox.Item>
|
|
16804
|
+
* <Combobox.Empty>No results found</Combobox.Empty>
|
|
16805
|
+
* </Combobox.Content>
|
|
16806
|
+
* ```
|
|
16807
|
+
*/
|
|
15780
16808
|
Content: _sfc_main$44,
|
|
16809
|
+
/**
|
|
16810
|
+
* Option item within the combobox dropdown. Registers with selection and
|
|
16811
|
+
* virtual focus. Hidden via `v-show` when filtered out so selection state
|
|
16812
|
+
* is preserved.
|
|
16813
|
+
*
|
|
16814
|
+
* @see https://0.vuetifyjs.com/components/forms/combobox
|
|
16815
|
+
*
|
|
16816
|
+
* @example
|
|
16817
|
+
* ```vue
|
|
16818
|
+
* <Combobox.Item id="apple" value="Apple" v-slot="{ isSelected, isHighlighted, attrs }">
|
|
16819
|
+
* <div v-bind="attrs" :class="{ highlighted: isHighlighted }">
|
|
16820
|
+
* Apple {{ isSelected ? '✓' : '' }}
|
|
16821
|
+
* </div>
|
|
16822
|
+
* </Combobox.Item>
|
|
16823
|
+
* ```
|
|
16824
|
+
*/
|
|
15781
16825
|
Item: _sfc_main$50,
|
|
16826
|
+
/**
|
|
16827
|
+
* Empty state shown when no items match the current query. Exposes the
|
|
16828
|
+
* query string via slot props for contextual messaging.
|
|
16829
|
+
*
|
|
16830
|
+
* @see https://0.vuetifyjs.com/components/forms/combobox
|
|
16831
|
+
*
|
|
16832
|
+
* @example
|
|
16833
|
+
* ```vue
|
|
16834
|
+
* <Combobox.Empty v-slot="{ query }">
|
|
16835
|
+
* No results for "{{ query }}"
|
|
16836
|
+
* </Combobox.Empty>
|
|
16837
|
+
* ```
|
|
16838
|
+
*/
|
|
15782
16839
|
Empty: _sfc_main$48,
|
|
16840
|
+
/**
|
|
16841
|
+
* Help text component connected via aria-describedby.
|
|
16842
|
+
* Auto-generates an ID that Combobox.Control references in its
|
|
16843
|
+
* aria-describedby attribute for accessibility.
|
|
16844
|
+
*
|
|
16845
|
+
* @see https://0.vuetifyjs.com/components/forms/combobox
|
|
16846
|
+
*
|
|
16847
|
+
* @example
|
|
16848
|
+
* ```vue
|
|
16849
|
+
* <Combobox.Root v-model="selected">
|
|
16850
|
+
* <Combobox.Activator>
|
|
16851
|
+
* <Combobox.Control placeholder="Search..." />
|
|
16852
|
+
* </Combobox.Activator>
|
|
16853
|
+
* <Combobox.Description>Select a fruit from the list.</Combobox.Description>
|
|
16854
|
+
* </Combobox.Root>
|
|
16855
|
+
* ```
|
|
16856
|
+
*/
|
|
15783
16857
|
Description: _sfc_main$47,
|
|
16858
|
+
/**
|
|
16859
|
+
* Error message component with aria-live announcements.
|
|
16860
|
+
* Renders error messages from Root's errorMessages prop.
|
|
16861
|
+
* Connected to Control via aria-errormessage. Uses aria-live="polite"
|
|
16862
|
+
* for screen reader announcements when errors appear.
|
|
16863
|
+
*
|
|
16864
|
+
* @see https://0.vuetifyjs.com/components/forms/combobox
|
|
16865
|
+
*
|
|
16866
|
+
* @example
|
|
16867
|
+
* ```vue
|
|
16868
|
+
* <Combobox.Root v-model="selected" :error-messages="['Selection required']">
|
|
16869
|
+
* <Combobox.Activator>
|
|
16870
|
+
* <Combobox.Control placeholder="Search..." />
|
|
16871
|
+
* </Combobox.Activator>
|
|
16872
|
+
* <Combobox.Error v-slot="{ errors }">
|
|
16873
|
+
* <span v-for="error in errors" :key="error">{{ error }}</span>
|
|
16874
|
+
* </Combobox.Error>
|
|
16875
|
+
* </Combobox.Root>
|
|
16876
|
+
* ```
|
|
16877
|
+
*/
|
|
15784
16878
|
Error: _sfc_main$49
|
|
15785
16879
|
};
|
|
15786
16880
|
//#endregion
|
|
@@ -16059,11 +17153,121 @@ const _sfc_main$52 = /* @__PURE__ */ defineComponent({
|
|
|
16059
17153
|
* ```
|
|
16060
17154
|
*/
|
|
16061
17155
|
const Dialog = {
|
|
17156
|
+
/**
|
|
17157
|
+
* Root component for dialogs.
|
|
17158
|
+
*
|
|
17159
|
+
* @see https://0.vuetifyjs.com/components/disclosure/dialog
|
|
17160
|
+
*
|
|
17161
|
+
* @example
|
|
17162
|
+
* ```vue
|
|
17163
|
+
* <script lang="ts" setup>
|
|
17164
|
+
* import { Dialog } from '@vuetify/v0'
|
|
17165
|
+
* <\/script>
|
|
17166
|
+
*
|
|
17167
|
+
* <template>
|
|
17168
|
+
* <Dialog.Root>
|
|
17169
|
+
* <Dialog.Activator>Open</Dialog.Activator>
|
|
17170
|
+
* <Dialog.Content>
|
|
17171
|
+
* <Dialog.Title>Title</Dialog.Title>
|
|
17172
|
+
* <Dialog.Close>Close</Dialog.Close>
|
|
17173
|
+
* </Dialog.Content>
|
|
17174
|
+
* </Dialog.Root>
|
|
17175
|
+
* </template>
|
|
17176
|
+
* ```
|
|
17177
|
+
*/
|
|
16062
17178
|
Root: _sfc_main$56,
|
|
17179
|
+
/**
|
|
17180
|
+
* Activator component that opens the dialog.
|
|
17181
|
+
*
|
|
17182
|
+
* @see https://0.vuetifyjs.com/components/disclosure/dialog
|
|
17183
|
+
*
|
|
17184
|
+
* @example
|
|
17185
|
+
* ```vue
|
|
17186
|
+
* <script lang="ts" setup>
|
|
17187
|
+
* import { Dialog } from '@vuetify/v0'
|
|
17188
|
+
* <\/script>
|
|
17189
|
+
*
|
|
17190
|
+
* <template>
|
|
17191
|
+
* <Dialog.Activator>
|
|
17192
|
+
* Open Dialog
|
|
17193
|
+
* </Dialog.Activator>
|
|
17194
|
+
* </template>
|
|
17195
|
+
* ```
|
|
17196
|
+
*/
|
|
16063
17197
|
Activator: _sfc_main$52,
|
|
17198
|
+
/**
|
|
17199
|
+
* Content container for the dialog using native `<dialog>` element.
|
|
17200
|
+
*
|
|
17201
|
+
* @see https://0.vuetifyjs.com/components/disclosure/dialog
|
|
17202
|
+
*
|
|
17203
|
+
* @example
|
|
17204
|
+
* ```vue
|
|
17205
|
+
* <script lang="ts" setup>
|
|
17206
|
+
* import { Dialog } from '@vuetify/v0'
|
|
17207
|
+
* <\/script>
|
|
17208
|
+
*
|
|
17209
|
+
* <template>
|
|
17210
|
+
* <Dialog.Content>
|
|
17211
|
+
* <Dialog.Title>Title</Dialog.Title>
|
|
17212
|
+
* <p>Content goes here.</p>
|
|
17213
|
+
* <Dialog.Close>Close</Dialog.Close>
|
|
17214
|
+
* </Dialog.Content>
|
|
17215
|
+
* </template>
|
|
17216
|
+
* ```
|
|
17217
|
+
*/
|
|
16064
17218
|
Content: _sfc_main$54,
|
|
17219
|
+
/**
|
|
17220
|
+
* Title component for accessible dialog labeling.
|
|
17221
|
+
*
|
|
17222
|
+
* @see https://0.vuetifyjs.com/components/disclosure/dialog
|
|
17223
|
+
*
|
|
17224
|
+
* @example
|
|
17225
|
+
* ```vue
|
|
17226
|
+
* <script lang="ts" setup>
|
|
17227
|
+
* import { Dialog } from '@vuetify/v0'
|
|
17228
|
+
* <\/script>
|
|
17229
|
+
*
|
|
17230
|
+
* <template>
|
|
17231
|
+
* <Dialog.Title>Dialog Title</Dialog.Title>
|
|
17232
|
+
* </template>
|
|
17233
|
+
* ```
|
|
17234
|
+
*/
|
|
16065
17235
|
Title: _sfc_main$57,
|
|
17236
|
+
/**
|
|
17237
|
+
* Description component for accessible dialog description.
|
|
17238
|
+
*
|
|
17239
|
+
* @see https://0.vuetifyjs.com/components/disclosure/dialog
|
|
17240
|
+
*
|
|
17241
|
+
* @example
|
|
17242
|
+
* ```vue
|
|
17243
|
+
* <script lang="ts" setup>
|
|
17244
|
+
* import { Dialog } from '@vuetify/v0'
|
|
17245
|
+
* <\/script>
|
|
17246
|
+
*
|
|
17247
|
+
* <template>
|
|
17248
|
+
* <Dialog.Description>
|
|
17249
|
+
* This dialog allows you to configure settings.
|
|
17250
|
+
* </Dialog.Description>
|
|
17251
|
+
* </template>
|
|
17252
|
+
* ```
|
|
17253
|
+
*/
|
|
16066
17254
|
Description: _sfc_main$55,
|
|
17255
|
+
/**
|
|
17256
|
+
* Close button component for closing the dialog.
|
|
17257
|
+
*
|
|
17258
|
+
* @see https://0.vuetifyjs.com/components/disclosure/dialog
|
|
17259
|
+
*
|
|
17260
|
+
* @example
|
|
17261
|
+
* ```vue
|
|
17262
|
+
* <script lang="ts" setup>
|
|
17263
|
+
* import { Dialog } from '@vuetify/v0'
|
|
17264
|
+
* <\/script>
|
|
17265
|
+
*
|
|
17266
|
+
* <template>
|
|
17267
|
+
* <Dialog.Close>Close</Dialog.Close>
|
|
17268
|
+
* </template>
|
|
17269
|
+
* ```
|
|
17270
|
+
*/
|
|
16067
17271
|
Close: _sfc_main$53
|
|
16068
17272
|
};
|
|
16069
17273
|
//#endregion
|
|
@@ -16339,11 +17543,117 @@ const _sfc_main$62 = /* @__PURE__ */ defineComponent({
|
|
|
16339
17543
|
* ```
|
|
16340
17544
|
*/
|
|
16341
17545
|
const ExpansionPanel = {
|
|
17546
|
+
/**
|
|
17547
|
+
* Group component for coordinating expansion panels.
|
|
17548
|
+
*
|
|
17549
|
+
* @see https://0.vuetifyjs.com/components/disclosure/expansion-panel
|
|
17550
|
+
*/
|
|
16342
17551
|
Group: _sfc_main$61,
|
|
17552
|
+
/**
|
|
17553
|
+
* Root component representing a single expansion panel.
|
|
17554
|
+
*
|
|
17555
|
+
* @see https://0.vuetifyjs.com/components/disclosure/expansion-panel
|
|
17556
|
+
*
|
|
17557
|
+
* @example
|
|
17558
|
+
* ```vue
|
|
17559
|
+
* <script lang="ts" setup>
|
|
17560
|
+
* import { ExpansionPanel } from '@vuetify/v0'
|
|
17561
|
+
* <\/script>
|
|
17562
|
+
*
|
|
17563
|
+
* <template>
|
|
17564
|
+
* <ExpansionPanel.Root>
|
|
17565
|
+
* <ExpansionPanel.Header>
|
|
17566
|
+
* <ExpansionPanel.Activator>
|
|
17567
|
+
* Click to expand
|
|
17568
|
+
* </ExpansionPanel.Activator>
|
|
17569
|
+
* </ExpansionPanel.Header>
|
|
17570
|
+
*
|
|
17571
|
+
* <ExpansionPanel.Content>
|
|
17572
|
+
* Content goes here.
|
|
17573
|
+
* </ExpansionPanel.Content>
|
|
17574
|
+
* </ExpansionPanel.Root>
|
|
17575
|
+
* </template>
|
|
17576
|
+
* ```
|
|
17577
|
+
*/
|
|
16343
17578
|
Root: _sfc_main$63,
|
|
17579
|
+
/**
|
|
17580
|
+
* (optional) Component for the header section of an expansion panel item.
|
|
17581
|
+
*
|
|
17582
|
+
* @see https://0.vuetifyjs.com/components/disclosure/expansion-panel
|
|
17583
|
+
*
|
|
17584
|
+
* @example
|
|
17585
|
+
* ```vue
|
|
17586
|
+
* <script lang="ts" setup>
|
|
17587
|
+
* import { ExpansionPanel } from '@vuetify/v0'
|
|
17588
|
+
* <\/script>
|
|
17589
|
+
*
|
|
17590
|
+
* <template>
|
|
17591
|
+
* <ExpansionPanel.Header>
|
|
17592
|
+
* <ExpansionPanel.Activator>
|
|
17593
|
+
* Click to expand
|
|
17594
|
+
* </ExpansionPanel.Activator>
|
|
17595
|
+
* </ExpansionPanel.Header>
|
|
17596
|
+
* </template>
|
|
17597
|
+
* ```
|
|
17598
|
+
*/
|
|
16344
17599
|
Header: _sfc_main$62,
|
|
17600
|
+
/**
|
|
17601
|
+
* Component for the activator section of an expansion panel header.
|
|
17602
|
+
*
|
|
17603
|
+
* @see https://0.vuetifyjs.com/components/disclosure/expansion-panel
|
|
17604
|
+
*
|
|
17605
|
+
* @example
|
|
17606
|
+
* ```vue
|
|
17607
|
+
* <script lang="ts" setup>
|
|
17608
|
+
* import { ExpansionPanel } from '@vuetify/v0'
|
|
17609
|
+
* <\/script>
|
|
17610
|
+
*
|
|
17611
|
+
* <template>
|
|
17612
|
+
* <ExpansionPanel.Activator>
|
|
17613
|
+
* Click to expand
|
|
17614
|
+
* </ExpansionPanel.Activator>
|
|
17615
|
+
* </template>
|
|
17616
|
+
* ```
|
|
17617
|
+
*/
|
|
16345
17618
|
Activator: _sfc_main$58,
|
|
17619
|
+
/**
|
|
17620
|
+
* Visual cue for expansion state (e.g., chevron icon).
|
|
17621
|
+
*
|
|
17622
|
+
* @see https://0.vuetifyjs.com/components/disclosure/expansion-panel
|
|
17623
|
+
*
|
|
17624
|
+
* @example
|
|
17625
|
+
* ```vue
|
|
17626
|
+
* <script lang="ts" setup>
|
|
17627
|
+
* import { ExpansionPanel } from '@vuetify/v0'
|
|
17628
|
+
* <\/script>
|
|
17629
|
+
*
|
|
17630
|
+
* <template>
|
|
17631
|
+
* <ExpansionPanel.Activator>
|
|
17632
|
+
* Click to expand
|
|
17633
|
+
* <ExpansionPanel.Cue />
|
|
17634
|
+
* </ExpansionPanel.Activator>
|
|
17635
|
+
* </template>
|
|
17636
|
+
* ```
|
|
17637
|
+
*/
|
|
16346
17638
|
Cue: _sfc_main$60,
|
|
17639
|
+
/**
|
|
17640
|
+
* Component for the content section of an expansion panel item.
|
|
17641
|
+
*
|
|
17642
|
+
* @see https://0.vuetifyjs.com/components/disclosure/expansion-panel
|
|
17643
|
+
*
|
|
17644
|
+
* @example
|
|
17645
|
+
* ```vue
|
|
17646
|
+
* <script lang="ts" setup>
|
|
17647
|
+
* import { ExpansionPanel } from '@vuetify/v0'
|
|
17648
|
+
* <\/script>
|
|
17649
|
+
*
|
|
17650
|
+
* <template>
|
|
17651
|
+
* <ExpansionPanel.Content>
|
|
17652
|
+
* Content goes here.
|
|
17653
|
+
* </ExpansionPanel.Content>
|
|
17654
|
+
* </template>
|
|
17655
|
+
* ```
|
|
17656
|
+
*/
|
|
16347
17657
|
Content: _sfc_main$59
|
|
16348
17658
|
};
|
|
16349
17659
|
//#endregion
|
|
@@ -16529,7 +17839,45 @@ const _sfc_main$65 = /* @__PURE__ */ defineComponent({
|
|
|
16529
17839
|
* @see https://0.vuetifyjs.com/components/providers/group
|
|
16530
17840
|
*/
|
|
16531
17841
|
const Group = {
|
|
17842
|
+
/**
|
|
17843
|
+
* Root component for multi-selection groups.
|
|
17844
|
+
*
|
|
17845
|
+
* @see https://0.vuetifyjs.com/components/providers/group
|
|
17846
|
+
*
|
|
17847
|
+
* @example
|
|
17848
|
+
* ```vue
|
|
17849
|
+
* <script lang="ts" setup>
|
|
17850
|
+
* import { Group } from '@vuetify/v0'
|
|
17851
|
+
* <\/script>
|
|
17852
|
+
*
|
|
17853
|
+
* <template>
|
|
17854
|
+
* <Group.Root v-model="selected">
|
|
17855
|
+
* <Group.Item value="a">Option A</Group.Item>
|
|
17856
|
+
*
|
|
17857
|
+
* <Group.Item value="b">Option B</Group.Item>
|
|
17858
|
+
* </Group.Root>
|
|
17859
|
+
* </template>
|
|
17860
|
+
* ```
|
|
17861
|
+
*/
|
|
16532
17862
|
Root: _sfc_main$66,
|
|
17863
|
+
/**
|
|
17864
|
+
* Item component for multi-selection groups.
|
|
17865
|
+
*
|
|
17866
|
+
* @see https://0.vuetifyjs.com/components/providers/group
|
|
17867
|
+
*
|
|
17868
|
+
* @example
|
|
17869
|
+
* ```vue
|
|
17870
|
+
* <script lang="ts" setup>
|
|
17871
|
+
* import { Group } from '@vuetify/v0'
|
|
17872
|
+
* <\/script>
|
|
17873
|
+
*
|
|
17874
|
+
* <template>
|
|
17875
|
+
* <Group.Item value="a">
|
|
17876
|
+
* Option A
|
|
17877
|
+
* </Group.Item>
|
|
17878
|
+
* </template>
|
|
17879
|
+
* ```
|
|
17880
|
+
*/
|
|
16533
17881
|
Item: _sfc_main$65
|
|
16534
17882
|
};
|
|
16535
17883
|
//#endregion
|
|
@@ -16726,11 +18074,68 @@ const _sfc_main$69 = /* @__PURE__ */ defineComponent({
|
|
|
16726
18074
|
* @see https://0.vuetifyjs.com/components/semantic/image
|
|
16727
18075
|
*/
|
|
16728
18076
|
const Image = {
|
|
18077
|
+
/**
|
|
18078
|
+
* Root component for images. Owns the loading state machine and optionally
|
|
18079
|
+
* manages lazy loading via IntersectionObserver.
|
|
18080
|
+
*
|
|
18081
|
+
* @see https://0.vuetifyjs.com/components/semantic/image
|
|
18082
|
+
*
|
|
18083
|
+
* @example
|
|
18084
|
+
* ```vue
|
|
18085
|
+
* <script lang="ts" setup>
|
|
18086
|
+
* import { Image } from '@vuetify/v0'
|
|
18087
|
+
* <\/script>
|
|
18088
|
+
*
|
|
18089
|
+
* <template>
|
|
18090
|
+
* <Image.Root src="/photo.jpg">
|
|
18091
|
+
* <Image.Img alt="A photo" width="800" height="600" />
|
|
18092
|
+
* <Image.Placeholder>Loading...</Image.Placeholder>
|
|
18093
|
+
* <Image.Fallback>Failed to load</Image.Fallback>
|
|
18094
|
+
* </Image.Root>
|
|
18095
|
+
* </template>
|
|
18096
|
+
* ```
|
|
18097
|
+
*/
|
|
16729
18098
|
Root: _sfc_main$70,
|
|
18099
|
+
/**
|
|
18100
|
+
* The `<img>` element. Reads the gated source from context and reports
|
|
18101
|
+
* load/error events.
|
|
18102
|
+
*
|
|
18103
|
+
* @see https://0.vuetifyjs.com/components/semantic/image
|
|
18104
|
+
*
|
|
18105
|
+
* @example
|
|
18106
|
+
* ```vue
|
|
18107
|
+
* <Image.Img alt="Description" width="800" height="600" />
|
|
18108
|
+
* ```
|
|
18109
|
+
*/
|
|
16730
18110
|
Img: _sfc_main$68,
|
|
16731
|
-
|
|
16732
|
-
|
|
16733
|
-
|
|
18111
|
+
/**
|
|
18112
|
+
* Placeholder content shown while the image is idle or loading.
|
|
18113
|
+
*
|
|
18114
|
+
* @see https://0.vuetifyjs.com/components/semantic/image
|
|
18115
|
+
*
|
|
18116
|
+
* @example
|
|
18117
|
+
* ```vue
|
|
18118
|
+
* <Image.Placeholder>
|
|
18119
|
+
* <div class="bg-gray-200 animate-pulse" />
|
|
18120
|
+
* </Image.Placeholder>
|
|
18121
|
+
* ```
|
|
18122
|
+
*/
|
|
18123
|
+
Placeholder: _sfc_main$69,
|
|
18124
|
+
/**
|
|
18125
|
+
* Fallback content shown when the image fails to load. Exposes `retry()`
|
|
18126
|
+
* via slot props.
|
|
18127
|
+
*
|
|
18128
|
+
* @see https://0.vuetifyjs.com/components/semantic/image
|
|
18129
|
+
*
|
|
18130
|
+
* @example
|
|
18131
|
+
* ```vue
|
|
18132
|
+
* <Image.Fallback v-slot="{ retry }">
|
|
18133
|
+
* <button @click="retry">Retry</button>
|
|
18134
|
+
* </Image.Fallback>
|
|
18135
|
+
* ```
|
|
18136
|
+
*/
|
|
18137
|
+
Fallback: _sfc_main$67
|
|
18138
|
+
};
|
|
16734
18139
|
//#endregion
|
|
16735
18140
|
//#region src/components/Input/InputRoot.vue
|
|
16736
18141
|
const [useInputRoot, provideInputRoot] = createContext();
|
|
@@ -17051,9 +18456,87 @@ const _sfc_main$73 = /* @__PURE__ */ defineComponent({
|
|
|
17051
18456
|
* ```
|
|
17052
18457
|
*/
|
|
17053
18458
|
const Input = {
|
|
18459
|
+
/**
|
|
18460
|
+
* Native input element with ARIA bindings and validation triggers.
|
|
18461
|
+
*
|
|
18462
|
+
* Renders as `<input>` by default. Binds ARIA attributes from Root context
|
|
18463
|
+
* and triggers validation on blur or input based on Root's validateOn prop.
|
|
18464
|
+
*
|
|
18465
|
+
* @see https://0.vuetifyjs.com/components/forms/input
|
|
18466
|
+
*
|
|
18467
|
+
* @example
|
|
18468
|
+
* ```vue
|
|
18469
|
+
* <Input.Root v-model="value" label="Name">
|
|
18470
|
+
* <Input.Control />
|
|
18471
|
+
* </Input.Root>
|
|
18472
|
+
* ```
|
|
18473
|
+
*/
|
|
17054
18474
|
Control: _sfc_main$71,
|
|
18475
|
+
/**
|
|
18476
|
+
* Help text component connected via aria-describedby.
|
|
18477
|
+
*
|
|
18478
|
+
* Auto-generates an ID that Input.Control references in its
|
|
18479
|
+
* aria-describedby attribute for accessibility.
|
|
18480
|
+
*
|
|
18481
|
+
* @see https://0.vuetifyjs.com/components/forms/input
|
|
18482
|
+
*
|
|
18483
|
+
* @example
|
|
18484
|
+
* ```vue
|
|
18485
|
+
* <Input.Root v-model="value" label="Username">
|
|
18486
|
+
* <Input.Control />
|
|
18487
|
+
* <Input.Description>Must be 3-20 characters.</Input.Description>
|
|
18488
|
+
* </Input.Root>
|
|
18489
|
+
* ```
|
|
18490
|
+
*/
|
|
17055
18491
|
Description: _sfc_main$72,
|
|
18492
|
+
/**
|
|
18493
|
+
* Error message component with aria-live announcements.
|
|
18494
|
+
*
|
|
18495
|
+
* Renders validation errors from Root's validation context.
|
|
18496
|
+
* Connected to Control via aria-errormessage. Uses aria-live="polite"
|
|
18497
|
+
* for screen reader announcements when errors appear.
|
|
18498
|
+
*
|
|
18499
|
+
* @see https://0.vuetifyjs.com/components/forms/input
|
|
18500
|
+
*
|
|
18501
|
+
* @example
|
|
18502
|
+
* ```vue
|
|
18503
|
+
* <Input.Root v-model="value" :rules="[(v) => !!v || 'Required']">
|
|
18504
|
+
* <Input.Control />
|
|
18505
|
+
* <Input.Error v-slot="{ errors }">
|
|
18506
|
+
* <span v-for="error in errors" :key="error">{{ error }}</span>
|
|
18507
|
+
* </Input.Error>
|
|
18508
|
+
* </Input.Root>
|
|
18509
|
+
* ```
|
|
18510
|
+
*/
|
|
17056
18511
|
Error: _sfc_main$73,
|
|
18512
|
+
/**
|
|
18513
|
+
* Root component for text inputs with validation.
|
|
18514
|
+
*
|
|
18515
|
+
* Creates a validation context, registers a single field, and provides
|
|
18516
|
+
* context to child components. Supports v-model for value binding and
|
|
18517
|
+
* auto-registers with parent form when used inside createForm.
|
|
18518
|
+
*
|
|
18519
|
+
* @see https://0.vuetifyjs.com/components/forms/input
|
|
18520
|
+
*
|
|
18521
|
+
* @example
|
|
18522
|
+
* ```vue
|
|
18523
|
+
* <script setup lang="ts">
|
|
18524
|
+
* import { Input } from '@vuetify/v0'
|
|
18525
|
+
* import { ref } from 'vue'
|
|
18526
|
+
*
|
|
18527
|
+
* const name = ref('')
|
|
18528
|
+
* <\/script>
|
|
18529
|
+
*
|
|
18530
|
+
* <template>
|
|
18531
|
+
* <Input.Root v-model="name" label="Full name" :rules="[(v) => !!v || 'Required']">
|
|
18532
|
+
* <Input.Control />
|
|
18533
|
+
* <Input.Error v-slot="{ errors }">
|
|
18534
|
+
* <span v-for="error in errors" :key="error">{{ error }}</span>
|
|
18535
|
+
* </Input.Error>
|
|
18536
|
+
* </Input.Root>
|
|
18537
|
+
* </template>
|
|
18538
|
+
* ```
|
|
18539
|
+
*/
|
|
17057
18540
|
Root: _sfc_main$74
|
|
17058
18541
|
};
|
|
17059
18542
|
//#endregion
|
|
@@ -17733,20 +19216,439 @@ const _sfc_main$82 = /* @__PURE__ */ defineComponent({
|
|
|
17733
19216
|
* ```
|
|
17734
19217
|
*/
|
|
17735
19218
|
const NumberField = {
|
|
19219
|
+
/**
|
|
19220
|
+
* Root component for number fields.
|
|
19221
|
+
*
|
|
19222
|
+
* Creates number field context, provides it to child components, and
|
|
19223
|
+
* bridges v-model. Manages validation timing via validateOn prop.
|
|
19224
|
+
* Configure min, max, step, locale, and format via props.
|
|
19225
|
+
*
|
|
19226
|
+
* @see https://0.vuetifyjs.com/components/number-field
|
|
19227
|
+
*
|
|
19228
|
+
* @example
|
|
19229
|
+
* ```vue
|
|
19230
|
+
* <script setup lang="ts">
|
|
19231
|
+
* import { NumberField } from '@vuetify/v0'
|
|
19232
|
+
* import { ref } from 'vue'
|
|
19233
|
+
*
|
|
19234
|
+
* const value = ref<number | null>(0)
|
|
19235
|
+
* <\/script>
|
|
19236
|
+
*
|
|
19237
|
+
* <template>
|
|
19238
|
+
* <NumberField.Root v-model="value" :min="0" :max="100">
|
|
19239
|
+
* <NumberField.Control />
|
|
19240
|
+
* </NumberField.Root>
|
|
19241
|
+
* </template>
|
|
19242
|
+
* ```
|
|
19243
|
+
*/
|
|
17736
19244
|
Root: _sfc_main$81,
|
|
19245
|
+
/**
|
|
19246
|
+
* Native input element with spinbutton semantics.
|
|
19247
|
+
*
|
|
19248
|
+
* Provides keyboard navigation (Arrow, Page, Home/End, Shift+Arrow, Enter),
|
|
19249
|
+
* text parsing, and focus-dependent display (raw while focused, formatted
|
|
19250
|
+
* while blurred). Emits full ARIA spinbutton attributes.
|
|
19251
|
+
*
|
|
19252
|
+
* @see https://0.vuetifyjs.com/components/number-field#anatomy
|
|
19253
|
+
*
|
|
19254
|
+
* @example
|
|
19255
|
+
* ```vue
|
|
19256
|
+
* <NumberField.Control />
|
|
19257
|
+
* ```
|
|
19258
|
+
*/
|
|
17737
19259
|
Control: _sfc_main$76,
|
|
19260
|
+
/**
|
|
19261
|
+
* Increment button with spin-on-hold behavior.
|
|
19262
|
+
*
|
|
19263
|
+
* On pointerdown, increments immediately then starts repeating
|
|
19264
|
+
* after spinDelay at spinRate interval. Disabled when value is
|
|
19265
|
+
* at maximum or field is disabled/readonly.
|
|
19266
|
+
*
|
|
19267
|
+
* @see https://0.vuetifyjs.com/components/number-field#anatomy
|
|
19268
|
+
*
|
|
19269
|
+
* @example
|
|
19270
|
+
* ```vue
|
|
19271
|
+
* <NumberField.Increment>+</NumberField.Increment>
|
|
19272
|
+
* ```
|
|
19273
|
+
*/
|
|
17738
19274
|
Increment: _sfc_main$80,
|
|
19275
|
+
/**
|
|
19276
|
+
* Decrement button with spin-on-hold behavior.
|
|
19277
|
+
*
|
|
19278
|
+
* On pointerdown, decrements immediately then starts repeating
|
|
19279
|
+
* after spinDelay at spinRate interval. Disabled when value is
|
|
19280
|
+
* at minimum or field is disabled/readonly.
|
|
19281
|
+
*
|
|
19282
|
+
* @see https://0.vuetifyjs.com/components/number-field#anatomy
|
|
19283
|
+
*
|
|
19284
|
+
* @example
|
|
19285
|
+
* ```vue
|
|
19286
|
+
* <NumberField.Decrement>-</NumberField.Decrement>
|
|
19287
|
+
* ```
|
|
19288
|
+
*/
|
|
17739
19289
|
Decrement: _sfc_main$77,
|
|
19290
|
+
/**
|
|
19291
|
+
* Click-and-drag scrub control using Pointer Lock API.
|
|
19292
|
+
*
|
|
19293
|
+
* Allows unbounded horizontal dragging to adjust the value.
|
|
19294
|
+
* Configure sensitivity (pixels per step) via prop. Shows
|
|
19295
|
+
* ew-resize cursor on hover. Renders as label by default.
|
|
19296
|
+
*
|
|
19297
|
+
* @see https://0.vuetifyjs.com/components/number-field#scrub
|
|
19298
|
+
*
|
|
19299
|
+
* @example
|
|
19300
|
+
* ```vue
|
|
19301
|
+
* <NumberField.Scrub>Amount</NumberField.Scrub>
|
|
19302
|
+
* ```
|
|
19303
|
+
*/
|
|
17740
19304
|
Scrub: _sfc_main$82,
|
|
19305
|
+
/**
|
|
19306
|
+
* Help text component connected via aria-describedby.
|
|
19307
|
+
*
|
|
19308
|
+
* Auto-registers with parent Root to wire up the ARIA relationship
|
|
19309
|
+
* to the Control element.
|
|
19310
|
+
*
|
|
19311
|
+
* @see https://0.vuetifyjs.com/components/number-field#description
|
|
19312
|
+
*
|
|
19313
|
+
* @example
|
|
19314
|
+
* ```vue
|
|
19315
|
+
* <NumberField.Description>Enter a value between 0 and 100</NumberField.Description>
|
|
19316
|
+
* ```
|
|
19317
|
+
*/
|
|
17741
19318
|
Description: _sfc_main$78,
|
|
19319
|
+
/**
|
|
19320
|
+
* Error message component connected via aria-errormessage.
|
|
19321
|
+
*
|
|
19322
|
+
* Renders validation error messages from the parent Root's validation
|
|
19323
|
+
* context. Uses aria-live="polite" for screen reader announcements.
|
|
19324
|
+
*
|
|
19325
|
+
* @see https://0.vuetifyjs.com/components/number-field#validation
|
|
19326
|
+
*
|
|
19327
|
+
* @example
|
|
19328
|
+
* ```vue
|
|
19329
|
+
* <NumberField.Error v-slot="{ errors }">
|
|
19330
|
+
* <span v-for="error in errors">{{ error }}</span>
|
|
19331
|
+
* </NumberField.Error>
|
|
19332
|
+
* ```
|
|
19333
|
+
*/
|
|
17742
19334
|
Error: _sfc_main$79
|
|
17743
19335
|
};
|
|
17744
19336
|
//#endregion
|
|
19337
|
+
//#region src/components/Overflow/OverflowRoot.vue
|
|
19338
|
+
/**
|
|
19339
|
+
* @module OverflowRoot
|
|
19340
|
+
*
|
|
19341
|
+
* @see https://0.vuetifyjs.com/components/semantic/overflow
|
|
19342
|
+
*
|
|
19343
|
+
* Root component for the Overflow primitive. Owns the createOverflow context,
|
|
19344
|
+
* the child Item registry, and the capacity computation that drives item
|
|
19345
|
+
* visibility and the indicator's appearance.
|
|
19346
|
+
*
|
|
19347
|
+
* @remarks
|
|
19348
|
+
* Visibility is computed against the *non-disabled* sibling order: a disabled
|
|
19349
|
+
* Item is exempt from capacity math and never counts against the cap, so the
|
|
19350
|
+
* Items around it occupy the same number of visible slots regardless of where
|
|
19351
|
+
* the disabled Item sits. The reactive `gap` prop is forwarded to
|
|
19352
|
+
* `createOverflow` as a getter so capacity recomputes when the prop changes.
|
|
19353
|
+
*/
|
|
19354
|
+
const [useOverflowRoot, provideOverflowRoot] = createContext();
|
|
19355
|
+
const _sfc_main$85 = /* @__PURE__ */ defineComponent({
|
|
19356
|
+
name: "OverflowRoot",
|
|
19357
|
+
__name: "OverflowRoot",
|
|
19358
|
+
props: {
|
|
19359
|
+
namespace: { default: "v0:overflow" },
|
|
19360
|
+
gap: { default: 0 },
|
|
19361
|
+
priority: { default: "start" },
|
|
19362
|
+
disabled: {
|
|
19363
|
+
type: Boolean,
|
|
19364
|
+
default: false
|
|
19365
|
+
},
|
|
19366
|
+
as: { default: "div" },
|
|
19367
|
+
renderless: {
|
|
19368
|
+
type: Boolean,
|
|
19369
|
+
default: false
|
|
19370
|
+
}
|
|
19371
|
+
},
|
|
19372
|
+
setup(__props) {
|
|
19373
|
+
const containerRef = useTemplateRef("container");
|
|
19374
|
+
const indicatorWidth = shallowRef(0);
|
|
19375
|
+
const registry = createRegistry({ reactive: true });
|
|
19376
|
+
const overflow = createOverflow({
|
|
19377
|
+
container: () => /* @__PURE__ */ toElement(containerRef.value?.element),
|
|
19378
|
+
gap: () => __props.gap,
|
|
19379
|
+
reserved: indicatorWidth,
|
|
19380
|
+
reverse: () => __props.priority === "end"
|
|
19381
|
+
});
|
|
19382
|
+
function isVisible(index) {
|
|
19383
|
+
if (__props.disabled) return true;
|
|
19384
|
+
const tickets = registry.values();
|
|
19385
|
+
const ticket = tickets[index];
|
|
19386
|
+
if (!ticket) return true;
|
|
19387
|
+
if (toValue(ticket.disabled)) return true;
|
|
19388
|
+
const cap = overflow.capacity.value;
|
|
19389
|
+
if (cap === Infinity) return true;
|
|
19390
|
+
let rank = 0;
|
|
19391
|
+
let total = 0;
|
|
19392
|
+
for (const [i, ticket_] of tickets.entries()) {
|
|
19393
|
+
if (toValue(ticket_.disabled)) continue;
|
|
19394
|
+
if (i === index) rank = total;
|
|
19395
|
+
total++;
|
|
19396
|
+
}
|
|
19397
|
+
if (__props.priority === "end") return rank >= total - cap;
|
|
19398
|
+
return rank < cap;
|
|
19399
|
+
}
|
|
19400
|
+
provideOverflowRoot(__props.namespace, {
|
|
19401
|
+
overflow,
|
|
19402
|
+
registry,
|
|
19403
|
+
priority: toRef(() => __props.priority),
|
|
19404
|
+
disabled: toRef(() => __props.disabled),
|
|
19405
|
+
indicatorWidth,
|
|
19406
|
+
isOverflowing: overflow.isOverflowing,
|
|
19407
|
+
isVisible
|
|
19408
|
+
});
|
|
19409
|
+
const slotProps = toRef(() => ({
|
|
19410
|
+
capacity: overflow.capacity.value,
|
|
19411
|
+
size: registry.size,
|
|
19412
|
+
isOverflowing: overflow.isOverflowing.value,
|
|
19413
|
+
attrs: {
|
|
19414
|
+
"data-overflow": overflow.isOverflowing.value || void 0,
|
|
19415
|
+
"data-priority": __props.priority
|
|
19416
|
+
}
|
|
19417
|
+
}));
|
|
19418
|
+
return (_ctx, _cache) => {
|
|
19419
|
+
return openBlock(), createBlock(unref(_sfc_main$9), mergeProps({
|
|
19420
|
+
ref: "container",
|
|
19421
|
+
as: __props.as,
|
|
19422
|
+
renderless: __props.renderless
|
|
19423
|
+
}, slotProps.value.attrs), {
|
|
19424
|
+
default: withCtx(() => [renderSlot(_ctx.$slots, "default", normalizeProps(guardReactiveProps(slotProps.value)))]),
|
|
19425
|
+
_: 3
|
|
19426
|
+
}, 16, ["as", "renderless"]);
|
|
19427
|
+
};
|
|
19428
|
+
}
|
|
19429
|
+
});
|
|
19430
|
+
//#endregion
|
|
19431
|
+
//#region src/components/Overflow/OverflowIndicator.vue
|
|
19432
|
+
/**
|
|
19433
|
+
* @module OverflowIndicator
|
|
19434
|
+
*
|
|
19435
|
+
* @see https://0.vuetifyjs.com/components/semantic/overflow
|
|
19436
|
+
*
|
|
19437
|
+
* Indicator that renders only when items overflow. Self-measures its own
|
|
19438
|
+
* width and writes it back to OverflowRoot so capacity computation can
|
|
19439
|
+
* reserve space for the indicator's footprint.
|
|
19440
|
+
*
|
|
19441
|
+
* @remarks
|
|
19442
|
+
* In non-renderless mode, the wrapper carries `data-overflow-indicator`
|
|
19443
|
+
* and `aria-live="polite"`. **Renderless mode** drops the wrapper, so the
|
|
19444
|
+
* slot consumer must spread `slotProps.attrs` onto their own element to
|
|
19445
|
+
* preserve the data hook and live-region semantics.
|
|
19446
|
+
*/
|
|
19447
|
+
const _sfc_main$83 = /* @__PURE__ */ defineComponent({
|
|
19448
|
+
name: "OverflowIndicator",
|
|
19449
|
+
__name: "OverflowIndicator",
|
|
19450
|
+
props: {
|
|
19451
|
+
namespace: { default: "v0:overflow" },
|
|
19452
|
+
as: { default: "div" },
|
|
19453
|
+
renderless: {
|
|
19454
|
+
type: Boolean,
|
|
19455
|
+
default: false
|
|
19456
|
+
}
|
|
19457
|
+
},
|
|
19458
|
+
setup(__props) {
|
|
19459
|
+
const root = useOverflowRoot(__props.namespace);
|
|
19460
|
+
const atomRef = useTemplateRef("atom");
|
|
19461
|
+
const el = toRef(() => /* @__PURE__ */ toElement(atomRef.value?.element) ?? null);
|
|
19462
|
+
function measure() {
|
|
19463
|
+
if (!IN_BROWSER || !el.value) {
|
|
19464
|
+
root.indicatorWidth.value = 0;
|
|
19465
|
+
return;
|
|
19466
|
+
}
|
|
19467
|
+
const style = getComputedStyle(el.value);
|
|
19468
|
+
const marginX = Number.parseFloat(style.marginLeft) + Number.parseFloat(style.marginRight);
|
|
19469
|
+
root.indicatorWidth.value = el.value.offsetWidth + marginX;
|
|
19470
|
+
}
|
|
19471
|
+
watch(el, () => measure(), { immediate: true });
|
|
19472
|
+
useResizeObserver(el, () => measure());
|
|
19473
|
+
onBeforeUnmount(() => {
|
|
19474
|
+
root.indicatorWidth.value = 0;
|
|
19475
|
+
});
|
|
19476
|
+
const hidden = computed(() => {
|
|
19477
|
+
return root.registry.values().filter((_, index) => !root.isVisible(index));
|
|
19478
|
+
});
|
|
19479
|
+
const slotProps = toRef(() => ({
|
|
19480
|
+
count: hidden.value.length,
|
|
19481
|
+
hidden: hidden.value,
|
|
19482
|
+
attrs: {
|
|
19483
|
+
"data-overflow-indicator": "true",
|
|
19484
|
+
"aria-live": "polite"
|
|
19485
|
+
}
|
|
19486
|
+
}));
|
|
19487
|
+
return (_ctx, _cache) => {
|
|
19488
|
+
return unref(root).isOverflowing.value ? (openBlock(), createBlock(unref(_sfc_main$9), mergeProps({
|
|
19489
|
+
key: 0,
|
|
19490
|
+
ref: "atom",
|
|
19491
|
+
as: __props.as,
|
|
19492
|
+
renderless: __props.renderless
|
|
19493
|
+
}, slotProps.value.attrs), {
|
|
19494
|
+
default: withCtx(() => [renderSlot(_ctx.$slots, "default", normalizeProps(guardReactiveProps(slotProps.value)))]),
|
|
19495
|
+
_: 3
|
|
19496
|
+
}, 16, ["as", "renderless"])) : createCommentVNode("v-if", true);
|
|
19497
|
+
};
|
|
19498
|
+
}
|
|
19499
|
+
});
|
|
19500
|
+
//#endregion
|
|
19501
|
+
//#region src/components/Overflow/OverflowItem.vue
|
|
19502
|
+
/**
|
|
19503
|
+
* @module OverflowItem
|
|
19504
|
+
*
|
|
19505
|
+
* @see https://0.vuetifyjs.com/components/semantic/overflow
|
|
19506
|
+
*
|
|
19507
|
+
* Individual overflow item. Registers with OverflowRoot, self-measures,
|
|
19508
|
+
* and renders/hides based on capacity.
|
|
19509
|
+
*
|
|
19510
|
+
* @remarks
|
|
19511
|
+
* In non-renderless mode, the wrapper applies a structural `display: none`
|
|
19512
|
+
* inline style when the item is hidden. **Renderless mode** drops the wrapper,
|
|
19513
|
+
* so the slot consumer is responsible for honoring `isHidden` themselves —
|
|
19514
|
+
* read it from `slotProps.isHidden` and conditionally render or apply CSS.
|
|
19515
|
+
*/
|
|
19516
|
+
const _sfc_main$84 = /* @__PURE__ */ defineComponent({
|
|
19517
|
+
name: "OverflowItem",
|
|
19518
|
+
__name: "OverflowItem",
|
|
19519
|
+
props: {
|
|
19520
|
+
namespace: { default: "v0:overflow" },
|
|
19521
|
+
value: {},
|
|
19522
|
+
disabled: {
|
|
19523
|
+
type: Boolean,
|
|
19524
|
+
default: false
|
|
19525
|
+
},
|
|
19526
|
+
as: { default: "div" },
|
|
19527
|
+
renderless: {
|
|
19528
|
+
type: Boolean,
|
|
19529
|
+
default: false
|
|
19530
|
+
}
|
|
19531
|
+
},
|
|
19532
|
+
setup(__props) {
|
|
19533
|
+
const root = useOverflowRoot(__props.namespace);
|
|
19534
|
+
const atomRef = useTemplateRef("atom");
|
|
19535
|
+
const el = toRef(() => /* @__PURE__ */ toElement(atomRef.value?.element) ?? null);
|
|
19536
|
+
const _disabled = toRef(() => __props.disabled);
|
|
19537
|
+
const ticket = root.registry.register({
|
|
19538
|
+
value: __props.value,
|
|
19539
|
+
disabled: _disabled
|
|
19540
|
+
});
|
|
19541
|
+
let lastMeasuredIndex = null;
|
|
19542
|
+
watch(() => [
|
|
19543
|
+
_disabled.value,
|
|
19544
|
+
el.value,
|
|
19545
|
+
ticket.index
|
|
19546
|
+
], ([isDisabled, element, index]) => {
|
|
19547
|
+
if (!/* @__PURE__ */ isNull(lastMeasuredIndex) && lastMeasuredIndex !== index) root.overflow.measure(lastMeasuredIndex, void 0);
|
|
19548
|
+
lastMeasuredIndex = index;
|
|
19549
|
+
root.overflow.measure(index, isDisabled ? void 0 : element ?? void 0);
|
|
19550
|
+
}, { immediate: true });
|
|
19551
|
+
onBeforeUnmount(() => {
|
|
19552
|
+
if (!/* @__PURE__ */ isNull(lastMeasuredIndex)) root.overflow.measure(lastMeasuredIndex, void 0);
|
|
19553
|
+
root.registry.unregister(ticket.id);
|
|
19554
|
+
});
|
|
19555
|
+
const isVisible = toRef(() => __props.disabled || root.isVisible(ticket.index));
|
|
19556
|
+
const isHidden = toRef(() => !isVisible.value);
|
|
19557
|
+
const slotProps = toRef(() => ({
|
|
19558
|
+
isVisible: isVisible.value,
|
|
19559
|
+
isHidden: isHidden.value,
|
|
19560
|
+
attrs: {
|
|
19561
|
+
"data-hidden": isHidden.value || void 0,
|
|
19562
|
+
"aria-hidden": isHidden.value ? "true" : void 0
|
|
19563
|
+
}
|
|
19564
|
+
}));
|
|
19565
|
+
return (_ctx, _cache) => {
|
|
19566
|
+
return withDirectives((openBlock(), createBlock(unref(_sfc_main$9), mergeProps({
|
|
19567
|
+
ref: "atom",
|
|
19568
|
+
as: __props.as,
|
|
19569
|
+
renderless: __props.renderless
|
|
19570
|
+
}, slotProps.value.attrs), {
|
|
19571
|
+
default: withCtx(() => [renderSlot(_ctx.$slots, "default", normalizeProps(guardReactiveProps(slotProps.value)))]),
|
|
19572
|
+
_: 3
|
|
19573
|
+
}, 16, ["as", "renderless"])), [[vShow, isVisible.value]]);
|
|
19574
|
+
};
|
|
19575
|
+
}
|
|
19576
|
+
});
|
|
19577
|
+
//#endregion
|
|
19578
|
+
//#region src/components/Overflow/index.ts
|
|
19579
|
+
/**
|
|
19580
|
+
* Headless responsive truncation primitive. Children render until the
|
|
19581
|
+
* container runs out of width, then overflowing children are hidden
|
|
19582
|
+
* and an indicator surfaces the hidden count.
|
|
19583
|
+
*
|
|
19584
|
+
* @see https://0.vuetifyjs.com/components/semantic/overflow
|
|
19585
|
+
*/
|
|
19586
|
+
const Overflow = {
|
|
19587
|
+
/**
|
|
19588
|
+
* Root component. Owns the createOverflow context, child registry,
|
|
19589
|
+
* and capacity computation.
|
|
19590
|
+
*
|
|
19591
|
+
* @see https://0.vuetifyjs.com/components/semantic/overflow
|
|
19592
|
+
*
|
|
19593
|
+
* @example
|
|
19594
|
+
* ```vue
|
|
19595
|
+
* <script setup lang="ts">
|
|
19596
|
+
* import { Overflow } from '@vuetify/v0'
|
|
19597
|
+
* <\/script>
|
|
19598
|
+
*
|
|
19599
|
+
* <template>
|
|
19600
|
+
* <Overflow.Root class="flex gap-2 overflow-hidden">
|
|
19601
|
+
* <Overflow.Item v-for="tag in tags" :key="tag">
|
|
19602
|
+
* {{ tag }}
|
|
19603
|
+
* </Overflow.Item>
|
|
19604
|
+
*
|
|
19605
|
+
* <Overflow.Indicator v-slot="{ count }">
|
|
19606
|
+
* +{{ count }} more
|
|
19607
|
+
* </Overflow.Indicator>
|
|
19608
|
+
* </Overflow.Root>
|
|
19609
|
+
* </template>
|
|
19610
|
+
* ```
|
|
19611
|
+
*/
|
|
19612
|
+
Root: _sfc_main$85,
|
|
19613
|
+
/**
|
|
19614
|
+
* Individual overflow item. Registers with Root and self-measures.
|
|
19615
|
+
* Hidden when its index falls outside capacity.
|
|
19616
|
+
*
|
|
19617
|
+
* @see https://0.vuetifyjs.com/components/semantic/overflow
|
|
19618
|
+
*
|
|
19619
|
+
* @example
|
|
19620
|
+
* ```vue
|
|
19621
|
+
* <template>
|
|
19622
|
+
* <Overflow.Item v-slot="{ isHidden }">
|
|
19623
|
+
* <span :class="{ 'opacity-50': isHidden }">Tag</span>
|
|
19624
|
+
* </Overflow.Item>
|
|
19625
|
+
* </template>
|
|
19626
|
+
* ```
|
|
19627
|
+
*/
|
|
19628
|
+
Item: _sfc_main$84,
|
|
19629
|
+
/**
|
|
19630
|
+
* Indicator that renders only when items are hidden. Exposes the
|
|
19631
|
+
* hidden count and the array of hidden tickets via slot props.
|
|
19632
|
+
*
|
|
19633
|
+
* @see https://0.vuetifyjs.com/components/semantic/overflow
|
|
19634
|
+
*
|
|
19635
|
+
* @example
|
|
19636
|
+
* ```vue
|
|
19637
|
+
* <template>
|
|
19638
|
+
* <Overflow.Indicator v-slot="{ count, hidden }">
|
|
19639
|
+
* +{{ count }} more
|
|
19640
|
+
* </Overflow.Indicator>
|
|
19641
|
+
* </template>
|
|
19642
|
+
* ```
|
|
19643
|
+
*/
|
|
19644
|
+
Indicator: _sfc_main$83
|
|
19645
|
+
};
|
|
19646
|
+
//#endregion
|
|
17745
19647
|
//#region src/components/Pagination/PaginationRoot.vue
|
|
17746
19648
|
const [usePaginationRoot, providePaginationRoot] = createContext();
|
|
17747
19649
|
const [usePaginationControls, providePaginationControls] = createContext({ suffix: "controls" });
|
|
17748
19650
|
const [usePaginationItems, providePaginationItems] = createContext({ suffix: "items" });
|
|
17749
|
-
const _sfc_main$
|
|
19651
|
+
const _sfc_main$92 = /* @__PURE__ */ defineComponent({
|
|
17750
19652
|
name: "PaginationRoot",
|
|
17751
19653
|
__name: "PaginationRoot",
|
|
17752
19654
|
props: /* @__PURE__ */ mergeModels({
|
|
@@ -17848,7 +19750,7 @@ const _sfc_main$89 = /* @__PURE__ */ defineComponent({
|
|
|
17848
19750
|
});
|
|
17849
19751
|
//#endregion
|
|
17850
19752
|
//#region src/components/Pagination/PaginationEllipsis.vue
|
|
17851
|
-
const _sfc_main$
|
|
19753
|
+
const _sfc_main$86 = /* @__PURE__ */ defineComponent({
|
|
17852
19754
|
name: "PaginationEllipsis",
|
|
17853
19755
|
__name: "PaginationEllipsis",
|
|
17854
19756
|
props: {
|
|
@@ -17891,7 +19793,7 @@ const _sfc_main$83 = /* @__PURE__ */ defineComponent({
|
|
|
17891
19793
|
});
|
|
17892
19794
|
//#endregion
|
|
17893
19795
|
//#region src/components/Pagination/PaginationFirst.vue
|
|
17894
|
-
const _sfc_main$
|
|
19796
|
+
const _sfc_main$87 = /* @__PURE__ */ defineComponent({
|
|
17895
19797
|
name: "PaginationFirst",
|
|
17896
19798
|
__name: "PaginationFirst",
|
|
17897
19799
|
props: {
|
|
@@ -17948,7 +19850,7 @@ const _sfc_main$84 = /* @__PURE__ */ defineComponent({
|
|
|
17948
19850
|
});
|
|
17949
19851
|
//#endregion
|
|
17950
19852
|
//#region src/components/Pagination/PaginationItem.vue
|
|
17951
|
-
const _sfc_main$
|
|
19853
|
+
const _sfc_main$88 = /* @__PURE__ */ defineComponent({
|
|
17952
19854
|
name: "PaginationItem",
|
|
17953
19855
|
__name: "PaginationItem",
|
|
17954
19856
|
props: {
|
|
@@ -18016,7 +19918,7 @@ const _sfc_main$85 = /* @__PURE__ */ defineComponent({
|
|
|
18016
19918
|
});
|
|
18017
19919
|
//#endregion
|
|
18018
19920
|
//#region src/components/Pagination/PaginationLast.vue
|
|
18019
|
-
const _sfc_main$
|
|
19921
|
+
const _sfc_main$89 = /* @__PURE__ */ defineComponent({
|
|
18020
19922
|
name: "PaginationLast",
|
|
18021
19923
|
__name: "PaginationLast",
|
|
18022
19924
|
props: {
|
|
@@ -18073,7 +19975,7 @@ const _sfc_main$86 = /* @__PURE__ */ defineComponent({
|
|
|
18073
19975
|
});
|
|
18074
19976
|
//#endregion
|
|
18075
19977
|
//#region src/components/Pagination/PaginationNext.vue
|
|
18076
|
-
const _sfc_main$
|
|
19978
|
+
const _sfc_main$90 = /* @__PURE__ */ defineComponent({
|
|
18077
19979
|
name: "PaginationNext",
|
|
18078
19980
|
__name: "PaginationNext",
|
|
18079
19981
|
props: {
|
|
@@ -18130,7 +20032,7 @@ const _sfc_main$87 = /* @__PURE__ */ defineComponent({
|
|
|
18130
20032
|
});
|
|
18131
20033
|
//#endregion
|
|
18132
20034
|
//#region src/components/Pagination/PaginationPrev.vue
|
|
18133
|
-
const _sfc_main$
|
|
20035
|
+
const _sfc_main$91 = /* @__PURE__ */ defineComponent({
|
|
18134
20036
|
name: "PaginationPrev",
|
|
18135
20037
|
__name: "PaginationPrev",
|
|
18136
20038
|
props: {
|
|
@@ -18187,7 +20089,7 @@ const _sfc_main$88 = /* @__PURE__ */ defineComponent({
|
|
|
18187
20089
|
});
|
|
18188
20090
|
//#endregion
|
|
18189
20091
|
//#region src/components/Pagination/PaginationStatus.vue
|
|
18190
|
-
const _sfc_main$
|
|
20092
|
+
const _sfc_main$93 = /* @__PURE__ */ defineComponent({
|
|
18191
20093
|
name: "PaginationStatus",
|
|
18192
20094
|
__name: "PaginationStatus",
|
|
18193
20095
|
props: {
|
|
@@ -18200,15 +20102,18 @@ const _sfc_main$90 = /* @__PURE__ */ defineComponent({
|
|
|
18200
20102
|
const pagination = usePaginationRoot(__props.namespace);
|
|
18201
20103
|
const text = shallowRef("");
|
|
18202
20104
|
/* v8 ignore start -- watch fires after mount, setTimeout callback requires timer */
|
|
20105
|
+
let pending;
|
|
18203
20106
|
watch(() => pagination.page.value, (page, prevPage) => {
|
|
18204
20107
|
if (/* @__PURE__ */ isUndefined(prevPage)) return;
|
|
18205
|
-
|
|
20108
|
+
clearTimeout(pending);
|
|
20109
|
+
pending = setTimeout(() => {
|
|
18206
20110
|
text.value = locale.t("Pagination.status", {
|
|
18207
20111
|
page,
|
|
18208
20112
|
pages: pagination.pages
|
|
18209
20113
|
});
|
|
18210
20114
|
}, 100);
|
|
18211
20115
|
});
|
|
20116
|
+
onBeforeUnmount(() => clearTimeout(pending));
|
|
18212
20117
|
/* v8 ignore stop */
|
|
18213
20118
|
const slotProps = toRef(() => ({
|
|
18214
20119
|
page: pagination.page.value,
|
|
@@ -18239,19 +20144,220 @@ const _sfc_main$90 = /* @__PURE__ */ defineComponent({
|
|
|
18239
20144
|
* @see https://0.vuetifyjs.com/components/semantic/pagination
|
|
18240
20145
|
*/
|
|
18241
20146
|
const Pagination = {
|
|
18242
|
-
|
|
18243
|
-
|
|
18244
|
-
|
|
18245
|
-
|
|
18246
|
-
|
|
18247
|
-
|
|
18248
|
-
|
|
18249
|
-
|
|
20147
|
+
/**
|
|
20148
|
+
* Root component for pagination controls.
|
|
20149
|
+
*
|
|
20150
|
+
* @see https://0.vuetifyjs.com/components/semantic/pagination
|
|
20151
|
+
*
|
|
20152
|
+
* @example
|
|
20153
|
+
* ```vue
|
|
20154
|
+
* <script lang="ts" setup>
|
|
20155
|
+
* import { Pagination } from '@vuetify/v0'
|
|
20156
|
+
* <\/script>
|
|
20157
|
+
*
|
|
20158
|
+
* <template>
|
|
20159
|
+
* <Pagination.Root v-model="page" :size="100">
|
|
20160
|
+
* <Pagination.First />
|
|
20161
|
+
*
|
|
20162
|
+
* <Pagination.Prev />
|
|
20163
|
+
*
|
|
20164
|
+
* <template v-for="item in items" :key="item.value">
|
|
20165
|
+
* <Pagination.Item v-if="item.type === 'page'" :value="item.value" />
|
|
20166
|
+
*
|
|
20167
|
+
* <Pagination.Ellipsis v-else />
|
|
20168
|
+
* </template>
|
|
20169
|
+
*
|
|
20170
|
+
* <Pagination.Next />
|
|
20171
|
+
*
|
|
20172
|
+
* <Pagination.Last />
|
|
20173
|
+
* </Pagination.Root>
|
|
20174
|
+
* </template>
|
|
20175
|
+
* ```
|
|
20176
|
+
*/
|
|
20177
|
+
Root: _sfc_main$92,
|
|
20178
|
+
/**
|
|
20179
|
+
* Individual page button that navigates to a specific page number.
|
|
20180
|
+
*
|
|
20181
|
+
* @see https://0.vuetifyjs.com/components/semantic/pagination
|
|
20182
|
+
*
|
|
20183
|
+
* @example
|
|
20184
|
+
* ```vue
|
|
20185
|
+
* <script lang="ts" setup>
|
|
20186
|
+
* import { Pagination } from '@vuetify/v0'
|
|
20187
|
+
* <\/script>
|
|
20188
|
+
*
|
|
20189
|
+
* <template>
|
|
20190
|
+
* <Pagination.Item :value="1">1</Pagination.Item>
|
|
20191
|
+
*
|
|
20192
|
+
* <!-- With slot props -->
|
|
20193
|
+
* <Pagination.Item :value="2" v-slot="{ isSelected }">
|
|
20194
|
+
* <span :class="{ 'font-bold': isSelected }">2</span>
|
|
20195
|
+
* </Pagination.Item>
|
|
20196
|
+
* </template>
|
|
20197
|
+
* ```
|
|
20198
|
+
*/
|
|
20199
|
+
Item: _sfc_main$88,
|
|
20200
|
+
/**
|
|
20201
|
+
* Navigation button that jumps to the first page. Automatically
|
|
20202
|
+
* disables when already on the first page.
|
|
20203
|
+
*
|
|
20204
|
+
* @see https://0.vuetifyjs.com/components/semantic/pagination
|
|
20205
|
+
*
|
|
20206
|
+
* @example
|
|
20207
|
+
* ```vue
|
|
20208
|
+
* <script lang="ts" setup>
|
|
20209
|
+
* import { Pagination } from '@vuetify/v0'
|
|
20210
|
+
* <\/script>
|
|
20211
|
+
*
|
|
20212
|
+
* <template>
|
|
20213
|
+
* <Pagination.First>First</Pagination.First>
|
|
20214
|
+
*
|
|
20215
|
+
* <!-- With slot props -->
|
|
20216
|
+
* <Pagination.First v-slot="{ isDisabled }">
|
|
20217
|
+
* <span :class="{ 'opacity-50': isDisabled }">«</span>
|
|
20218
|
+
* </Pagination.First>
|
|
20219
|
+
*
|
|
20220
|
+
* <!-- With data attributes -->
|
|
20221
|
+
* <Pagination.First class="data-[disabled]:opacity-50">
|
|
20222
|
+
* First
|
|
20223
|
+
* </Pagination.First>
|
|
20224
|
+
* </template>
|
|
20225
|
+
* ```
|
|
20226
|
+
*/
|
|
20227
|
+
First: _sfc_main$87,
|
|
20228
|
+
/**
|
|
20229
|
+
* Navigation button that moves to the previous page. Automatically
|
|
20230
|
+
* disables when already on the first page.
|
|
20231
|
+
*
|
|
20232
|
+
* @see https://0.vuetifyjs.com/components/semantic/pagination
|
|
20233
|
+
*
|
|
20234
|
+
* @example
|
|
20235
|
+
* ```vue
|
|
20236
|
+
* <script lang="ts" setup>
|
|
20237
|
+
* import { Pagination } from '@vuetify/v0'
|
|
20238
|
+
* <\/script>
|
|
20239
|
+
*
|
|
20240
|
+
* <template>
|
|
20241
|
+
* <Pagination.Prev>Prev</Pagination.Prev>
|
|
20242
|
+
*
|
|
20243
|
+
* <!-- With slot props -->
|
|
20244
|
+
* <Pagination.Prev v-slot="{ isDisabled }">
|
|
20245
|
+
* <span :class="{ 'opacity-50': isDisabled }">‹</span>
|
|
20246
|
+
* </Pagination.Prev>
|
|
20247
|
+
*
|
|
20248
|
+
* <!-- With data attributes -->
|
|
20249
|
+
* <Pagination.Prev class="data-[disabled]:opacity-50">
|
|
20250
|
+
* Prev
|
|
20251
|
+
* </Pagination.Prev>
|
|
20252
|
+
* </template>
|
|
20253
|
+
* ```
|
|
20254
|
+
*/
|
|
20255
|
+
Prev: _sfc_main$91,
|
|
20256
|
+
/**
|
|
20257
|
+
* Visual indicator for omitted page numbers. Hidden from screen
|
|
20258
|
+
* readers via aria-hidden. Inherits ellipsis character from Root
|
|
20259
|
+
* or can be overridden via prop.
|
|
20260
|
+
*
|
|
20261
|
+
* @see https://0.vuetifyjs.com/components/semantic/pagination
|
|
20262
|
+
*
|
|
20263
|
+
* @example
|
|
20264
|
+
* ```vue
|
|
20265
|
+
* <script lang="ts" setup>
|
|
20266
|
+
* import { Pagination } from '@vuetify/v0'
|
|
20267
|
+
* <\/script>
|
|
20268
|
+
*
|
|
20269
|
+
* <template>
|
|
20270
|
+
* <!-- Uses default "..." from Root -->
|
|
20271
|
+
* <Pagination.Ellipsis />
|
|
20272
|
+
*
|
|
20273
|
+
* <!-- Override ellipsis character -->
|
|
20274
|
+
* <Pagination.Ellipsis ellipsis="…" />
|
|
20275
|
+
* </template>
|
|
20276
|
+
* ```
|
|
20277
|
+
*/
|
|
20278
|
+
Ellipsis: _sfc_main$86,
|
|
20279
|
+
/**
|
|
20280
|
+
* Navigation button that moves to the next page. Automatically
|
|
20281
|
+
* disables when already on the last page.
|
|
20282
|
+
*
|
|
20283
|
+
* @see https://0.vuetifyjs.com/components/semantic/pagination
|
|
20284
|
+
*
|
|
20285
|
+
* @example
|
|
20286
|
+
* ```vue
|
|
20287
|
+
* <script lang="ts" setup>
|
|
20288
|
+
* import { Pagination } from '@vuetify/v0'
|
|
20289
|
+
* <\/script>
|
|
20290
|
+
*
|
|
20291
|
+
* <template>
|
|
20292
|
+
* <Pagination.Next>Next</Pagination.Next>
|
|
20293
|
+
*
|
|
20294
|
+
* <!-- With slot props -->
|
|
20295
|
+
* <Pagination.Next v-slot="{ isDisabled }">
|
|
20296
|
+
* <span :class="{ 'opacity-50': isDisabled }">›</span>
|
|
20297
|
+
* </Pagination.Next>
|
|
20298
|
+
*
|
|
20299
|
+
* <!-- With data attributes -->
|
|
20300
|
+
* <Pagination.Next class="data-[disabled]:opacity-50">
|
|
20301
|
+
* Next
|
|
20302
|
+
* </Pagination.Next>
|
|
20303
|
+
* </template>
|
|
20304
|
+
* ```
|
|
20305
|
+
*/
|
|
20306
|
+
Next: _sfc_main$90,
|
|
20307
|
+
/**
|
|
20308
|
+
* Navigation button that jumps to the last page. Automatically
|
|
20309
|
+
* disables when already on the last page.
|
|
20310
|
+
*
|
|
20311
|
+
* @see https://0.vuetifyjs.com/components/semantic/pagination
|
|
20312
|
+
*
|
|
20313
|
+
* @example
|
|
20314
|
+
* ```vue
|
|
20315
|
+
* <script lang="ts" setup>
|
|
20316
|
+
* import { Pagination } from '@vuetify/v0'
|
|
20317
|
+
* <\/script>
|
|
20318
|
+
*
|
|
20319
|
+
* <template>
|
|
20320
|
+
* <Pagination.Last>Last</Pagination.Last>
|
|
20321
|
+
*
|
|
20322
|
+
* <!-- With slot props -->
|
|
20323
|
+
* <Pagination.Last v-slot="{ isDisabled }">
|
|
20324
|
+
* <span :class="{ 'opacity-50': isDisabled }">»</span>
|
|
20325
|
+
* </Pagination.Last>
|
|
20326
|
+
*
|
|
20327
|
+
* <!-- With data attributes -->
|
|
20328
|
+
* <Pagination.Last class="data-[disabled]:opacity-50">
|
|
20329
|
+
* Last
|
|
20330
|
+
* </Pagination.Last>
|
|
20331
|
+
* </template>
|
|
20332
|
+
* ```
|
|
20333
|
+
*/
|
|
20334
|
+
Last: _sfc_main$89,
|
|
20335
|
+
/**
|
|
20336
|
+
* Visually-hidden live region that announces page changes to screen
|
|
20337
|
+
* readers. Should be styled with sr-only/visually-hidden CSS.
|
|
20338
|
+
*
|
|
20339
|
+
* @see https://0.vuetifyjs.com/components/semantic/pagination
|
|
20340
|
+
*
|
|
20341
|
+
* @example
|
|
20342
|
+
* ```vue
|
|
20343
|
+
* <script lang="ts" setup>
|
|
20344
|
+
* import { Pagination } from '@vuetify/v0'
|
|
20345
|
+
* <\/script>
|
|
20346
|
+
*
|
|
20347
|
+
* <template>
|
|
20348
|
+
* <Pagination.Root v-model="page" :size="100">
|
|
20349
|
+
* <Pagination.Status class="sr-only" />
|
|
20350
|
+
* <!-- other pagination items -->
|
|
20351
|
+
* </Pagination.Root>
|
|
20352
|
+
* </template>
|
|
20353
|
+
* ```
|
|
20354
|
+
*/
|
|
20355
|
+
Status: _sfc_main$93
|
|
18250
20356
|
};
|
|
18251
20357
|
//#endregion
|
|
18252
20358
|
//#region src/components/Popover/PopoverRoot.vue
|
|
18253
20359
|
const [usePopoverContext, providePopoverContext] = createContext("v0:popover");
|
|
18254
|
-
const _sfc_main$
|
|
20360
|
+
const _sfc_main$96 = /* @__PURE__ */ defineComponent({
|
|
18255
20361
|
name: "PopoverRoot",
|
|
18256
20362
|
__name: "PopoverRoot",
|
|
18257
20363
|
props: /* @__PURE__ */ mergeModels({
|
|
@@ -18291,7 +20397,7 @@ const _sfc_main$93 = /* @__PURE__ */ defineComponent({
|
|
|
18291
20397
|
});
|
|
18292
20398
|
//#endregion
|
|
18293
20399
|
//#region src/components/Popover/PopoverActivator.vue
|
|
18294
|
-
const _sfc_main$
|
|
20400
|
+
const _sfc_main$94 = /* @__PURE__ */ defineComponent({
|
|
18295
20401
|
name: "PopoverActivator",
|
|
18296
20402
|
__name: "PopoverActivator",
|
|
18297
20403
|
props: {
|
|
@@ -18327,7 +20433,7 @@ const _sfc_main$91 = /* @__PURE__ */ defineComponent({
|
|
|
18327
20433
|
});
|
|
18328
20434
|
//#endregion
|
|
18329
20435
|
//#region src/components/Popover/PopoverContent.vue
|
|
18330
|
-
const _sfc_main$
|
|
20436
|
+
const _sfc_main$95 = /* @__PURE__ */ defineComponent({
|
|
18331
20437
|
name: "PopoverContent",
|
|
18332
20438
|
__name: "PopoverContent",
|
|
18333
20439
|
props: {
|
|
@@ -18386,9 +20492,69 @@ const _sfc_main$92 = /* @__PURE__ */ defineComponent({
|
|
|
18386
20492
|
* @see https://0.vuetifyjs.com/components/disclosure/popover
|
|
18387
20493
|
*/
|
|
18388
20494
|
const Popover = {
|
|
18389
|
-
|
|
18390
|
-
|
|
18391
|
-
|
|
20495
|
+
/**
|
|
20496
|
+
* Root component for popovers.
|
|
20497
|
+
*
|
|
20498
|
+
* @see https://0.vuetifyjs.com/components/disclosure/popover
|
|
20499
|
+
*
|
|
20500
|
+
* @example
|
|
20501
|
+
* ```vue
|
|
20502
|
+
* <script lang="ts" setup>
|
|
20503
|
+
* import { Popover } from '@vuetify/v0'
|
|
20504
|
+
* <\/script>
|
|
20505
|
+
*
|
|
20506
|
+
* <template>
|
|
20507
|
+
* <Popover.Root>
|
|
20508
|
+
* <Popover.Activator>
|
|
20509
|
+
* Click to toggle
|
|
20510
|
+
* </Popover.Activator>
|
|
20511
|
+
*
|
|
20512
|
+
* <Popover.Content>
|
|
20513
|
+
* Popover content goes here.
|
|
20514
|
+
* </Popover.Content>
|
|
20515
|
+
* </Popover.Root>
|
|
20516
|
+
* </template>
|
|
20517
|
+
* ```
|
|
20518
|
+
*/
|
|
20519
|
+
Root: _sfc_main$96,
|
|
20520
|
+
/**
|
|
20521
|
+
* Activator component that opens the popover.
|
|
20522
|
+
*
|
|
20523
|
+
* @see https://0.vuetifyjs.com/components/disclosure/popover
|
|
20524
|
+
*
|
|
20525
|
+
* @example
|
|
20526
|
+
* ```vue
|
|
20527
|
+
* <script lang="ts" setup>
|
|
20528
|
+
* import { Popover } from '@vuetify/v0'
|
|
20529
|
+
* <\/script>
|
|
20530
|
+
*
|
|
20531
|
+
* <template>
|
|
20532
|
+
* <Popover.Activator>
|
|
20533
|
+
* Click to toggle
|
|
20534
|
+
* </Popover.Activator>
|
|
20535
|
+
* </template>
|
|
20536
|
+
* ```
|
|
20537
|
+
*/
|
|
20538
|
+
Activator: _sfc_main$94,
|
|
20539
|
+
/**
|
|
20540
|
+
* Component for the content section of a popover.
|
|
20541
|
+
*
|
|
20542
|
+
* @see https://0.vuetifyjs.com/components/disclosure/popover
|
|
20543
|
+
*
|
|
20544
|
+
* @example
|
|
20545
|
+
* ```vue
|
|
20546
|
+
* <script lang="ts" setup>
|
|
20547
|
+
* import { Popover } from '@vuetify/v0'
|
|
20548
|
+
* <\/script>
|
|
20549
|
+
*
|
|
20550
|
+
* <template>
|
|
20551
|
+
* <Popover.Content>
|
|
20552
|
+
* Popover content goes here.
|
|
20553
|
+
* </Popover.Content>
|
|
20554
|
+
* </template>
|
|
20555
|
+
* ```
|
|
20556
|
+
*/
|
|
20557
|
+
Content: _sfc_main$95
|
|
18392
20558
|
};
|
|
18393
20559
|
//#endregion
|
|
18394
20560
|
//#region src/components/Portal/Portal.vue
|
|
@@ -18404,7 +20570,7 @@ const Popover = {
|
|
|
18404
20570
|
* Standardizes the teleport + stack registration pattern used by
|
|
18405
20571
|
* overlay components (Snackbar, Toast, Dialog, etc.).
|
|
18406
20572
|
*/
|
|
18407
|
-
const _sfc_main$
|
|
20573
|
+
const _sfc_main$97 = /* @__PURE__ */ defineComponent({
|
|
18408
20574
|
name: "Portal",
|
|
18409
20575
|
__name: "Portal",
|
|
18410
20576
|
props: {
|
|
@@ -18461,7 +20627,7 @@ const _sfc_main$94 = /* @__PURE__ */ defineComponent({
|
|
|
18461
20627
|
* - Lifecycle events: `enter`, `leave`, `after-leave`
|
|
18462
20628
|
* - Animation-agnostic: works with CSS, WAAPI, GSAP, or nothing
|
|
18463
20629
|
*/
|
|
18464
|
-
const _sfc_main$
|
|
20630
|
+
const _sfc_main$98 = /* @__PURE__ */ defineComponent({
|
|
18465
20631
|
name: "Presence",
|
|
18466
20632
|
__name: "Presence",
|
|
18467
20633
|
props: /* @__PURE__ */ mergeModels({
|
|
@@ -18521,7 +20687,7 @@ const _sfc_main$95 = /* @__PURE__ */ defineComponent({
|
|
|
18521
20687
|
//#endregion
|
|
18522
20688
|
//#region src/components/Progress/ProgressHiddenInput.vue
|
|
18523
20689
|
const _hoisted_1$5 = ["name", "value"];
|
|
18524
|
-
const _sfc_main$
|
|
20690
|
+
const _sfc_main$101 = /* @__PURE__ */ defineComponent({
|
|
18525
20691
|
name: "ProgressHiddenInput",
|
|
18526
20692
|
__name: "ProgressHiddenInput",
|
|
18527
20693
|
props: { namespace: { default: "v0:progress:root" } },
|
|
@@ -18541,7 +20707,7 @@ const _sfc_main$98 = /* @__PURE__ */ defineComponent({
|
|
|
18541
20707
|
//#endregion
|
|
18542
20708
|
//#region src/components/Progress/ProgressRoot.vue
|
|
18543
20709
|
const [useProgressRoot, provideProgressRoot] = createContext();
|
|
18544
|
-
const _sfc_main$
|
|
20710
|
+
const _sfc_main$103 = /* @__PURE__ */ defineComponent({
|
|
18545
20711
|
name: "ProgressRoot",
|
|
18546
20712
|
inheritAttrs: false,
|
|
18547
20713
|
__name: "ProgressRoot",
|
|
@@ -18616,13 +20782,13 @@ const _sfc_main$100 = /* @__PURE__ */ defineComponent({
|
|
|
18616
20782
|
}), {
|
|
18617
20783
|
default: withCtx(() => [renderSlot(_ctx.$slots, "default", normalizeProps(guardReactiveProps(slotProps.value)))]),
|
|
18618
20784
|
_: 3
|
|
18619
|
-
}, 16, ["as", "renderless"]), __props.name ? (openBlock(), createBlock(_sfc_main$
|
|
20785
|
+
}, 16, ["as", "renderless"]), __props.name ? (openBlock(), createBlock(_sfc_main$101, { key: 0 })) : createCommentVNode("v-if", true)], 64);
|
|
18620
20786
|
};
|
|
18621
20787
|
}
|
|
18622
20788
|
});
|
|
18623
20789
|
//#endregion
|
|
18624
20790
|
//#region src/components/Progress/ProgressBuffer.vue
|
|
18625
|
-
const _sfc_main$
|
|
20791
|
+
const _sfc_main$99 = /* @__PURE__ */ defineComponent({
|
|
18626
20792
|
name: "ProgressBuffer",
|
|
18627
20793
|
inheritAttrs: false,
|
|
18628
20794
|
__name: "ProgressBuffer",
|
|
@@ -18668,7 +20834,7 @@ const _sfc_main$96 = /* @__PURE__ */ defineComponent({
|
|
|
18668
20834
|
});
|
|
18669
20835
|
//#endregion
|
|
18670
20836
|
//#region src/components/Progress/ProgressFill.vue
|
|
18671
|
-
const _sfc_main$
|
|
20837
|
+
const _sfc_main$100 = /* @__PURE__ */ defineComponent({
|
|
18672
20838
|
name: "ProgressFill",
|
|
18673
20839
|
inheritAttrs: false,
|
|
18674
20840
|
__name: "ProgressFill",
|
|
@@ -18715,7 +20881,7 @@ const _sfc_main$97 = /* @__PURE__ */ defineComponent({
|
|
|
18715
20881
|
});
|
|
18716
20882
|
//#endregion
|
|
18717
20883
|
//#region src/components/Progress/ProgressLabel.vue
|
|
18718
|
-
const _sfc_main$
|
|
20884
|
+
const _sfc_main$102 = /* @__PURE__ */ defineComponent({
|
|
18719
20885
|
name: "ProgressLabel",
|
|
18720
20886
|
inheritAttrs: false,
|
|
18721
20887
|
__name: "ProgressLabel",
|
|
@@ -18746,7 +20912,7 @@ const _sfc_main$99 = /* @__PURE__ */ defineComponent({
|
|
|
18746
20912
|
});
|
|
18747
20913
|
//#endregion
|
|
18748
20914
|
//#region src/components/Progress/ProgressTrack.vue
|
|
18749
|
-
const _sfc_main$
|
|
20915
|
+
const _sfc_main$104 = /* @__PURE__ */ defineComponent({
|
|
18750
20916
|
name: "ProgressTrack",
|
|
18751
20917
|
inheritAttrs: false,
|
|
18752
20918
|
__name: "ProgressTrack",
|
|
@@ -18772,7 +20938,7 @@ const _sfc_main$101 = /* @__PURE__ */ defineComponent({
|
|
|
18772
20938
|
});
|
|
18773
20939
|
//#endregion
|
|
18774
20940
|
//#region src/components/Progress/ProgressValue.vue
|
|
18775
|
-
const _sfc_main$
|
|
20941
|
+
const _sfc_main$105 = /* @__PURE__ */ defineComponent({
|
|
18776
20942
|
name: "ProgressValue",
|
|
18777
20943
|
inheritAttrs: false,
|
|
18778
20944
|
__name: "ProgressValue",
|
|
@@ -18835,18 +21001,183 @@ const _sfc_main$102 = /* @__PURE__ */ defineComponent({
|
|
|
18835
21001
|
* ```
|
|
18836
21002
|
*/
|
|
18837
21003
|
const Progress = {
|
|
18838
|
-
|
|
18839
|
-
|
|
18840
|
-
|
|
18841
|
-
|
|
18842
|
-
|
|
18843
|
-
|
|
18844
|
-
|
|
21004
|
+
/**
|
|
21005
|
+
* Root component for progress indicators.
|
|
21006
|
+
*
|
|
21007
|
+
* Creates progress context, provides it to child components, and
|
|
21008
|
+
* bridges v-model. Manages value clamping, percentage calculation,
|
|
21009
|
+
* and ARIA attributes. Supports determinate, indeterminate, and
|
|
21010
|
+
* buffer modes. When `name` prop is provided, automatically renders
|
|
21011
|
+
* a hidden input for form submission.
|
|
21012
|
+
*
|
|
21013
|
+
* @see https://0.vuetifyjs.com/components/progress
|
|
21014
|
+
*
|
|
21015
|
+
* @example
|
|
21016
|
+
* ```vue
|
|
21017
|
+
* <script setup lang="ts">
|
|
21018
|
+
* import { Progress } from '@vuetify/v0'
|
|
21019
|
+
* import { shallowRef } from 'vue'
|
|
21020
|
+
*
|
|
21021
|
+
* const value = shallowRef(60)
|
|
21022
|
+
* <\/script>
|
|
21023
|
+
*
|
|
21024
|
+
* <template>
|
|
21025
|
+
* <Progress.Root :model-value="value" :max="100">
|
|
21026
|
+
* <Progress.Track>
|
|
21027
|
+
* <Progress.Fill />
|
|
21028
|
+
* </Progress.Track>
|
|
21029
|
+
* </Progress.Root>
|
|
21030
|
+
* </template>
|
|
21031
|
+
* ```
|
|
21032
|
+
*/
|
|
21033
|
+
Root: _sfc_main$103,
|
|
21034
|
+
/**
|
|
21035
|
+
* Track container for the progress bar.
|
|
21036
|
+
*
|
|
21037
|
+
* Renders the background track that contains the fill and buffer
|
|
21038
|
+
* elements. Supports segmented mode via the `segments` prop on Root.
|
|
21039
|
+
* Exposes segment data through its slot for custom rendering.
|
|
21040
|
+
*
|
|
21041
|
+
* @see https://0.vuetifyjs.com/components/progress#anatomy
|
|
21042
|
+
*
|
|
21043
|
+
* @example
|
|
21044
|
+
* ```vue
|
|
21045
|
+
* <script setup lang="ts">
|
|
21046
|
+
* import { Progress } from '@vuetify/v0'
|
|
21047
|
+
* <\/script>
|
|
21048
|
+
*
|
|
21049
|
+
* <template>
|
|
21050
|
+
* <Progress.Track>
|
|
21051
|
+
* <Progress.Fill />
|
|
21052
|
+
* </Progress.Track>
|
|
21053
|
+
* </template>
|
|
21054
|
+
* ```
|
|
21055
|
+
*/
|
|
21056
|
+
Track: _sfc_main$104,
|
|
21057
|
+
/**
|
|
21058
|
+
* Fill element representing the current progress value.
|
|
21059
|
+
*
|
|
21060
|
+
* Renders inside the Track and sizes itself to reflect the current
|
|
21061
|
+
* percentage. Applies `--v0-progress-fill` CSS variable for styling.
|
|
21062
|
+
* In indeterminate mode, omits inline sizing to allow CSS animations.
|
|
21063
|
+
*
|
|
21064
|
+
* @see https://0.vuetifyjs.com/components/progress#anatomy
|
|
21065
|
+
*
|
|
21066
|
+
* @example
|
|
21067
|
+
* ```vue
|
|
21068
|
+
* <script setup lang="ts">
|
|
21069
|
+
* import { Progress } from '@vuetify/v0'
|
|
21070
|
+
* <\/script>
|
|
21071
|
+
*
|
|
21072
|
+
* <template>
|
|
21073
|
+
* <Progress.Fill class="bg-blue-500 h-full transition-all" />
|
|
21074
|
+
* </template>
|
|
21075
|
+
* ```
|
|
21076
|
+
*/
|
|
21077
|
+
Fill: _sfc_main$100,
|
|
21078
|
+
/**
|
|
21079
|
+
* Buffer indicator for streaming or loading progress.
|
|
21080
|
+
*
|
|
21081
|
+
* Renders a secondary fill representing buffered content ahead of
|
|
21082
|
+
* the primary progress. Applies `--v0-progress-buffer` CSS variable
|
|
21083
|
+
* for styling. Useful for media players and file uploads.
|
|
21084
|
+
*
|
|
21085
|
+
* @see https://0.vuetifyjs.com/components/progress#buffer
|
|
21086
|
+
*
|
|
21087
|
+
* @example
|
|
21088
|
+
* ```vue
|
|
21089
|
+
* <script setup lang="ts">
|
|
21090
|
+
* import { Progress } from '@vuetify/v0'
|
|
21091
|
+
* <\/script>
|
|
21092
|
+
*
|
|
21093
|
+
* <template>
|
|
21094
|
+
* <Progress.Track>
|
|
21095
|
+
* <Progress.Buffer class="bg-blue-200 h-full" />
|
|
21096
|
+
* <Progress.Fill class="bg-blue-500 h-full" />
|
|
21097
|
+
* </Progress.Track>
|
|
21098
|
+
* </template>
|
|
21099
|
+
* ```
|
|
21100
|
+
*/
|
|
21101
|
+
Buffer: _sfc_main$99,
|
|
21102
|
+
/**
|
|
21103
|
+
* Text display for the current progress value.
|
|
21104
|
+
*
|
|
21105
|
+
* Renders the formatted progress value as text. Uses the `format`
|
|
21106
|
+
* function from Root context if provided, otherwise displays the
|
|
21107
|
+
* raw percentage. Supports custom formatting via the default slot.
|
|
21108
|
+
*
|
|
21109
|
+
* @see https://0.vuetifyjs.com/components/progress#value-display
|
|
21110
|
+
*
|
|
21111
|
+
* @example
|
|
21112
|
+
* ```vue
|
|
21113
|
+
* <script setup lang="ts">
|
|
21114
|
+
* import { Progress } from '@vuetify/v0'
|
|
21115
|
+
* <\/script>
|
|
21116
|
+
*
|
|
21117
|
+
* <template>
|
|
21118
|
+
* <Progress.Value v-slot="{ percent }">
|
|
21119
|
+
* {{ Math.round(percent) }}%
|
|
21120
|
+
* </Progress.Value>
|
|
21121
|
+
* </template>
|
|
21122
|
+
* ```
|
|
21123
|
+
*/
|
|
21124
|
+
Value: _sfc_main$105,
|
|
21125
|
+
/**
|
|
21126
|
+
* Accessible label for the progress indicator.
|
|
21127
|
+
*
|
|
21128
|
+
* Associates a visible label with the progress Root via `aria-labelledby`.
|
|
21129
|
+
* Renders as a `<label>` element by default. Exposes progress state
|
|
21130
|
+
* through its slot for dynamic label content.
|
|
21131
|
+
*
|
|
21132
|
+
* @see https://0.vuetifyjs.com/components/progress#accessibility
|
|
21133
|
+
*
|
|
21134
|
+
* @example
|
|
21135
|
+
* ```vue
|
|
21136
|
+
* <script setup lang="ts">
|
|
21137
|
+
* import { Progress } from '@vuetify/v0'
|
|
21138
|
+
* <\/script>
|
|
21139
|
+
*
|
|
21140
|
+
* <template>
|
|
21141
|
+
* <Progress.Label>Loading...</Progress.Label>
|
|
21142
|
+
* </template>
|
|
21143
|
+
* ```
|
|
21144
|
+
*/
|
|
21145
|
+
Label: _sfc_main$102,
|
|
21146
|
+
/**
|
|
21147
|
+
* Hidden native input for form submission.
|
|
21148
|
+
*
|
|
21149
|
+
* Auto-rendered by Root when the `name` prop is provided. Submits
|
|
21150
|
+
* the current numeric progress value as part of the form. Can also
|
|
21151
|
+
* be used explicitly for custom form integration scenarios where
|
|
21152
|
+
* you need manual control over the hidden input placement.
|
|
21153
|
+
*
|
|
21154
|
+
* @see https://0.vuetifyjs.com/components/progress#form-integration
|
|
21155
|
+
* @internal
|
|
21156
|
+
*
|
|
21157
|
+
* @example
|
|
21158
|
+
* ```vue
|
|
21159
|
+
* <script setup lang="ts">
|
|
21160
|
+
* import { Progress } from '@vuetify/v0'
|
|
21161
|
+
* import { shallowRef } from 'vue'
|
|
21162
|
+
*
|
|
21163
|
+
* const value = shallowRef(75)
|
|
21164
|
+
* <\/script>
|
|
21165
|
+
*
|
|
21166
|
+
* <template>
|
|
21167
|
+
* <Progress.Root :model-value="value" name="upload-progress">
|
|
21168
|
+
* <Progress.Track>
|
|
21169
|
+
* <Progress.Fill />
|
|
21170
|
+
* </Progress.Track>
|
|
21171
|
+
* </Progress.Root>
|
|
21172
|
+
* </template>
|
|
21173
|
+
* ```
|
|
21174
|
+
*/
|
|
21175
|
+
HiddenInput: _sfc_main$101
|
|
18845
21176
|
};
|
|
18846
21177
|
//#endregion
|
|
18847
21178
|
//#region src/components/Radio/RadioGroup.vue
|
|
18848
21179
|
const [useRadioGroup, provideRadioGroup] = createContext();
|
|
18849
|
-
const _sfc_main$
|
|
21180
|
+
const _sfc_main$106 = /* @__PURE__ */ defineComponent({
|
|
18850
21181
|
name: "RadioGroup",
|
|
18851
21182
|
__name: "RadioGroup",
|
|
18852
21183
|
props: /* @__PURE__ */ mergeModels({
|
|
@@ -18911,7 +21242,7 @@ const _sfc_main$103 = /* @__PURE__ */ defineComponent({
|
|
|
18911
21242
|
//#endregion
|
|
18912
21243
|
//#region src/components/Radio/RadioRoot.vue
|
|
18913
21244
|
const [useRadioRoot, provideRadioRoot] = createContext();
|
|
18914
|
-
const _sfc_main$
|
|
21245
|
+
const _sfc_main$109 = /* @__PURE__ */ defineComponent({
|
|
18915
21246
|
name: "RadioRoot",
|
|
18916
21247
|
inheritAttrs: false,
|
|
18917
21248
|
__name: "RadioRoot",
|
|
@@ -18935,7 +21266,7 @@ const _sfc_main$106 = /* @__PURE__ */ defineComponent({
|
|
|
18935
21266
|
const rootRef = useTemplateRef("root");
|
|
18936
21267
|
const group = useRadioGroup(__props.groupNamespace);
|
|
18937
21268
|
const name = __props.name ?? group.name;
|
|
18938
|
-
const el = toRef(() => rootRef.value?.element ?? void 0);
|
|
21269
|
+
const el = toRef(() => /* @__PURE__ */ toElement(rootRef.value?.element) ?? void 0);
|
|
18939
21270
|
const ticket = group.register({
|
|
18940
21271
|
id: __props.id,
|
|
18941
21272
|
value: __props.value,
|
|
@@ -19009,7 +21340,7 @@ const _sfc_main$106 = /* @__PURE__ */ defineComponent({
|
|
|
19009
21340
|
"type": __props.as === "button" ? "button" : void 0,
|
|
19010
21341
|
"role": "radio",
|
|
19011
21342
|
"aria-checked": isChecked.value,
|
|
19012
|
-
"aria-disabled": isDisabled.value
|
|
21343
|
+
"aria-disabled": isDisabled.value,
|
|
19013
21344
|
"aria-label": __props.label || void 0,
|
|
19014
21345
|
"aria-labelledby": __props.ariaLabelledby || void 0,
|
|
19015
21346
|
"aria-describedby": __props.ariaDescribedby || void 0,
|
|
@@ -19029,7 +21360,7 @@ const _sfc_main$106 = /* @__PURE__ */ defineComponent({
|
|
|
19029
21360
|
}), {
|
|
19030
21361
|
default: withCtx(() => [renderSlot(_ctx.$slots, "default", normalizeProps(guardReactiveProps(slotProps.value)))]),
|
|
19031
21362
|
_: 3
|
|
19032
|
-
}, 16, ["as", "renderless"]), unref(name) ? (openBlock(), createBlock(_sfc_main$
|
|
21363
|
+
}, 16, ["as", "renderless"]), unref(name) ? (openBlock(), createBlock(_sfc_main$107, { key: 0 })) : createCommentVNode("v-if", true)], 64);
|
|
19033
21364
|
};
|
|
19034
21365
|
}
|
|
19035
21366
|
});
|
|
@@ -19053,7 +21384,7 @@ const visuallyHiddenStyle$2 = {
|
|
|
19053
21384
|
whiteSpace: "nowrap",
|
|
19054
21385
|
border: "0"
|
|
19055
21386
|
};
|
|
19056
|
-
const _sfc_main$
|
|
21387
|
+
const _sfc_main$107 = /* @__PURE__ */ defineComponent({
|
|
19057
21388
|
name: "RadioHiddenInput",
|
|
19058
21389
|
__name: "RadioHiddenInput",
|
|
19059
21390
|
props: {
|
|
@@ -19090,7 +21421,7 @@ const _sfc_main$104 = /* @__PURE__ */ defineComponent({
|
|
|
19090
21421
|
});
|
|
19091
21422
|
//#endregion
|
|
19092
21423
|
//#region src/components/Radio/RadioIndicator.vue
|
|
19093
|
-
const _sfc_main$
|
|
21424
|
+
const _sfc_main$108 = /* @__PURE__ */ defineComponent({
|
|
19094
21425
|
name: "RadioIndicator",
|
|
19095
21426
|
__name: "RadioIndicator",
|
|
19096
21427
|
props: {
|
|
@@ -19155,15 +21486,120 @@ const _sfc_main$105 = /* @__PURE__ */ defineComponent({
|
|
|
19155
21486
|
* ```
|
|
19156
21487
|
*/
|
|
19157
21488
|
const Radio = {
|
|
19158
|
-
|
|
19159
|
-
|
|
19160
|
-
|
|
19161
|
-
|
|
21489
|
+
/**
|
|
21490
|
+
* Group component for managing radio buttons with single-selection.
|
|
21491
|
+
*
|
|
21492
|
+
* @see https://0.vuetifyjs.com/components/forms/radio
|
|
21493
|
+
*
|
|
21494
|
+
* @example
|
|
21495
|
+
* ```vue
|
|
21496
|
+
* <script setup lang="ts">
|
|
21497
|
+
* import { Radio } from '@vuetify/v0'
|
|
21498
|
+
* import { ref } from 'vue'
|
|
21499
|
+
*
|
|
21500
|
+
* const selected = ref<string>()
|
|
21501
|
+
* <\/script>
|
|
21502
|
+
*
|
|
21503
|
+
* <template>
|
|
21504
|
+
* <Radio.Group v-model="selected" mandatory>
|
|
21505
|
+
* <Radio.Root value="a">
|
|
21506
|
+
* <Radio.Indicator>●</Radio.Indicator>
|
|
21507
|
+
* Option A
|
|
21508
|
+
* </Radio.Root>
|
|
21509
|
+
* <Radio.Root value="b">
|
|
21510
|
+
* <Radio.Indicator>●</Radio.Indicator>
|
|
21511
|
+
* Option B
|
|
21512
|
+
* </Radio.Root>
|
|
21513
|
+
* </Radio.Group>
|
|
21514
|
+
* </template>
|
|
21515
|
+
* ```
|
|
21516
|
+
*/
|
|
21517
|
+
Group: _sfc_main$106,
|
|
21518
|
+
/**
|
|
21519
|
+
* Hidden input component for form submission.
|
|
21520
|
+
*
|
|
21521
|
+
* Auto-rendered by Root when Group has a `name` prop.
|
|
21522
|
+
* Can also be used explicitly for custom form integration.
|
|
21523
|
+
*
|
|
21524
|
+
* @see https://0.vuetifyjs.com/components/forms/radio
|
|
21525
|
+
*
|
|
21526
|
+
* @example
|
|
21527
|
+
* ```vue
|
|
21528
|
+
* <script setup lang="ts">
|
|
21529
|
+
* import { Radio } from '@vuetify/v0'
|
|
21530
|
+
* <\/script>
|
|
21531
|
+
*
|
|
21532
|
+
* <template>
|
|
21533
|
+
* <Radio.Group v-model="selected">
|
|
21534
|
+
* <Radio.Root value="yes">
|
|
21535
|
+
* <Radio.Indicator>●</Radio.Indicator>
|
|
21536
|
+
* <Radio.HiddenInput name="choice" />
|
|
21537
|
+
* </Radio.Root>
|
|
21538
|
+
* </Radio.Group>
|
|
21539
|
+
* </template>
|
|
21540
|
+
* ```
|
|
21541
|
+
*/
|
|
21542
|
+
HiddenInput: _sfc_main$107,
|
|
21543
|
+
/**
|
|
21544
|
+
* Visual indicator component for radio buttons.
|
|
21545
|
+
*
|
|
21546
|
+
* Renders as a span and only displays when checked.
|
|
21547
|
+
* Must be used within a Radio.Root component.
|
|
21548
|
+
*
|
|
21549
|
+
* @see https://0.vuetifyjs.com/components/forms/radio
|
|
21550
|
+
*
|
|
21551
|
+
* @example
|
|
21552
|
+
* ```vue
|
|
21553
|
+
* <script setup lang="ts">
|
|
21554
|
+
* import { Radio } from '@vuetify/v0'
|
|
21555
|
+
* <\/script>
|
|
21556
|
+
*
|
|
21557
|
+
* <template>
|
|
21558
|
+
* <Radio.Group v-model="selected">
|
|
21559
|
+
* <Radio.Root value="a">
|
|
21560
|
+
* <Radio.Indicator>
|
|
21561
|
+
* <svg viewBox="0 0 24 24">
|
|
21562
|
+
* <circle cx="12" cy="12" r="6" />
|
|
21563
|
+
* </svg>
|
|
21564
|
+
* </Radio.Indicator>
|
|
21565
|
+
* </Radio.Root>
|
|
21566
|
+
* </Radio.Group>
|
|
21567
|
+
* </template>
|
|
21568
|
+
* ```
|
|
21569
|
+
*/
|
|
21570
|
+
Indicator: _sfc_main$108,
|
|
21571
|
+
/**
|
|
21572
|
+
* Root component for individual radio buttons.
|
|
21573
|
+
*
|
|
21574
|
+
* Must be used within a Radio.Group. Renders as a button with proper
|
|
21575
|
+
* ARIA attributes and handles click/keyboard interactions. When the
|
|
21576
|
+
* group has a `name` prop, automatically renders a hidden input for
|
|
21577
|
+
* form submission.
|
|
21578
|
+
*
|
|
21579
|
+
* @see https://0.vuetifyjs.com/components/forms/radio
|
|
21580
|
+
*
|
|
21581
|
+
* @example
|
|
21582
|
+
* ```vue
|
|
21583
|
+
* <script setup lang="ts">
|
|
21584
|
+
* import { Radio } from '@vuetify/v0'
|
|
21585
|
+
* <\/script>
|
|
21586
|
+
*
|
|
21587
|
+
* <template>
|
|
21588
|
+
* <Radio.Group v-model="selected">
|
|
21589
|
+
* <Radio.Root value="option1">
|
|
21590
|
+
* <Radio.Indicator>●</Radio.Indicator>
|
|
21591
|
+
* Option 1
|
|
21592
|
+
* </Radio.Root>
|
|
21593
|
+
* </Radio.Group>
|
|
21594
|
+
* </template>
|
|
21595
|
+
* ```
|
|
21596
|
+
*/
|
|
21597
|
+
Root: _sfc_main$109
|
|
19162
21598
|
};
|
|
19163
21599
|
//#endregion
|
|
19164
21600
|
//#region src/components/Rating/RatingRoot.vue
|
|
19165
21601
|
const [useRatingRoot, provideRatingRoot] = createContext();
|
|
19166
|
-
const _sfc_main$
|
|
21602
|
+
const _sfc_main$112 = /* @__PURE__ */ defineComponent({
|
|
19167
21603
|
name: "RatingRoot",
|
|
19168
21604
|
inheritAttrs: false,
|
|
19169
21605
|
__name: "RatingRoot",
|
|
@@ -19256,7 +21692,7 @@ const _sfc_main$109 = /* @__PURE__ */ defineComponent({
|
|
|
19256
21692
|
}), {
|
|
19257
21693
|
default: withCtx(() => [renderSlot(_ctx.$slots, "default", normalizeProps(guardReactiveProps(slotProps.value)))]),
|
|
19258
21694
|
_: 3
|
|
19259
|
-
}, 16, ["as", "renderless"]), __props.name ? (openBlock(), createBlock(_sfc_main$
|
|
21695
|
+
}, 16, ["as", "renderless"]), __props.name ? (openBlock(), createBlock(_sfc_main$110, { key: 0 })) : createCommentVNode("v-if", true)], 64);
|
|
19260
21696
|
};
|
|
19261
21697
|
}
|
|
19262
21698
|
});
|
|
@@ -19267,7 +21703,7 @@ const _hoisted_1$3 = [
|
|
|
19267
21703
|
"name",
|
|
19268
21704
|
"value"
|
|
19269
21705
|
];
|
|
19270
|
-
const _sfc_main$
|
|
21706
|
+
const _sfc_main$110 = /* @__PURE__ */ defineComponent({
|
|
19271
21707
|
name: "RatingHiddenInput",
|
|
19272
21708
|
__name: "RatingHiddenInput",
|
|
19273
21709
|
props: { namespace: { default: "v0:rating:root" } },
|
|
@@ -19288,7 +21724,7 @@ const _sfc_main$107 = /* @__PURE__ */ defineComponent({
|
|
|
19288
21724
|
});
|
|
19289
21725
|
//#endregion
|
|
19290
21726
|
//#region src/components/Rating/RatingItem.vue
|
|
19291
|
-
const _sfc_main$
|
|
21727
|
+
const _sfc_main$111 = /* @__PURE__ */ defineComponent({
|
|
19292
21728
|
name: "RatingItem",
|
|
19293
21729
|
inheritAttrs: false,
|
|
19294
21730
|
__name: "RatingItem",
|
|
@@ -19388,13 +21824,113 @@ const _sfc_main$108 = /* @__PURE__ */ defineComponent({
|
|
|
19388
21824
|
* ```
|
|
19389
21825
|
*/
|
|
19390
21826
|
const Rating = {
|
|
19391
|
-
|
|
19392
|
-
|
|
19393
|
-
|
|
21827
|
+
/**
|
|
21828
|
+
* Root component for ratings.
|
|
21829
|
+
*
|
|
21830
|
+
* Creates rating context, provides it to child components, and
|
|
21831
|
+
* bridges v-model. Handles hover tracking, keyboard navigation,
|
|
21832
|
+
* and ARIA attributes. When `name` prop is provided, automatically
|
|
21833
|
+
* renders a hidden input for form submission. Supports both whole
|
|
21834
|
+
* and half-star modes via the `half` prop.
|
|
21835
|
+
*
|
|
21836
|
+
* @see https://0.vuetifyjs.com/components/forms/rating
|
|
21837
|
+
*
|
|
21838
|
+
* @example
|
|
21839
|
+
* ```vue
|
|
21840
|
+
* <script setup lang="ts">
|
|
21841
|
+
* import { Rating } from '@vuetify/v0'
|
|
21842
|
+
* import { shallowRef } from 'vue'
|
|
21843
|
+
*
|
|
21844
|
+
* const rating = shallowRef(0)
|
|
21845
|
+
* <\/script>
|
|
21846
|
+
*
|
|
21847
|
+
* <template>
|
|
21848
|
+
* <Rating.Root v-model="rating" :size="5">
|
|
21849
|
+
* <Rating.Item
|
|
21850
|
+
* v-for="i in 5"
|
|
21851
|
+
* :key="i"
|
|
21852
|
+
* :index="i"
|
|
21853
|
+
* as="button"
|
|
21854
|
+
* v-slot="{ state }"
|
|
21855
|
+
* >
|
|
21856
|
+
* {{ state === 'full' ? '★' : '☆' }}
|
|
21857
|
+
* </Rating.Item>
|
|
21858
|
+
* </Rating.Root>
|
|
21859
|
+
* </template>
|
|
21860
|
+
* ```
|
|
21861
|
+
*/
|
|
21862
|
+
Root: _sfc_main$112,
|
|
21863
|
+
/**
|
|
21864
|
+
* Individual rating item (star/icon).
|
|
21865
|
+
*
|
|
21866
|
+
* Consumes Rating context and computes its visual state from the
|
|
21867
|
+
* current or hovered value. Exposes state via data attributes
|
|
21868
|
+
* (`data-state`, `data-highlighted`) for CSS-only styling. Handles
|
|
21869
|
+
* pointer events for hover preview and click to commit. When half
|
|
21870
|
+
* mode is active, detects left/right half of the element for
|
|
21871
|
+
* half-star hover precision.
|
|
21872
|
+
*
|
|
21873
|
+
* @see https://0.vuetifyjs.com/components/forms/rating#anatomy
|
|
21874
|
+
*
|
|
21875
|
+
* @example
|
|
21876
|
+
* ```vue
|
|
21877
|
+
* <script setup lang="ts">
|
|
21878
|
+
* import { Rating } from '@vuetify/v0'
|
|
21879
|
+
* <\/script>
|
|
21880
|
+
*
|
|
21881
|
+
* <template>
|
|
21882
|
+
* <Rating.Item
|
|
21883
|
+
* :index="1"
|
|
21884
|
+
* as="button"
|
|
21885
|
+
* class="[&[data-state=full]]:text-amber-500 [&[data-state=empty]]:text-gray-300"
|
|
21886
|
+
* v-slot="{ state }"
|
|
21887
|
+
* >
|
|
21888
|
+
* {{ state === 'full' ? '★' : state === 'half' ? '⯨' : '☆' }}
|
|
21889
|
+
* </Rating.Item>
|
|
21890
|
+
* </template>
|
|
21891
|
+
* ```
|
|
21892
|
+
*/
|
|
21893
|
+
Item: _sfc_main$111,
|
|
21894
|
+
/**
|
|
21895
|
+
* Hidden native input for form submission.
|
|
21896
|
+
*
|
|
21897
|
+
* Auto-rendered by Root when the `name` prop is provided. Submits
|
|
21898
|
+
* the current numeric rating value as part of the form. Can also
|
|
21899
|
+
* be used explicitly for custom form integration scenarios where
|
|
21900
|
+
* you need manual control over the hidden input placement.
|
|
21901
|
+
*
|
|
21902
|
+
* @see https://0.vuetifyjs.com/components/forms/rating
|
|
21903
|
+
* @internal
|
|
21904
|
+
*
|
|
21905
|
+
* @example
|
|
21906
|
+
* ```vue
|
|
21907
|
+
* <script setup lang="ts">
|
|
21908
|
+
* import { Rating } from '@vuetify/v0'
|
|
21909
|
+
* import { shallowRef } from 'vue'
|
|
21910
|
+
*
|
|
21911
|
+
* const rating = shallowRef(3)
|
|
21912
|
+
* <\/script>
|
|
21913
|
+
*
|
|
21914
|
+
* <template>
|
|
21915
|
+
* <Rating.Root v-model="rating" name="review-rating">
|
|
21916
|
+
* <Rating.Item
|
|
21917
|
+
* v-for="i in 5"
|
|
21918
|
+
* :key="i"
|
|
21919
|
+
* :index="i"
|
|
21920
|
+
* as="button"
|
|
21921
|
+
* v-slot="{ state }"
|
|
21922
|
+
* >
|
|
21923
|
+
* {{ state === 'full' ? '★' : '☆' }}
|
|
21924
|
+
* </Rating.Item>
|
|
21925
|
+
* </Rating.Root>
|
|
21926
|
+
* </template>
|
|
21927
|
+
* ```
|
|
21928
|
+
*/
|
|
21929
|
+
HiddenInput: _sfc_main$110
|
|
19394
21930
|
};
|
|
19395
21931
|
//#endregion
|
|
19396
21932
|
//#region src/components/Scrim/Scrim.vue
|
|
19397
|
-
const _sfc_main$
|
|
21933
|
+
const _sfc_main$113 = /* @__PURE__ */ defineComponent({
|
|
19398
21934
|
name: "Scrim",
|
|
19399
21935
|
inheritAttrs: false,
|
|
19400
21936
|
__name: "Scrim",
|
|
@@ -19488,7 +22024,7 @@ const visuallyHiddenStyle$1 = {
|
|
|
19488
22024
|
whiteSpace: "nowrap",
|
|
19489
22025
|
border: "0"
|
|
19490
22026
|
};
|
|
19491
|
-
const _sfc_main$
|
|
22027
|
+
const _sfc_main$164 = /* @__PURE__ */ defineComponent({
|
|
19492
22028
|
name: "SelectHiddenInput",
|
|
19493
22029
|
__name: "SelectHiddenInput",
|
|
19494
22030
|
props: { namespace: { default: "v0:select" } },
|
|
@@ -19522,7 +22058,7 @@ const _sfc_main$161 = /* @__PURE__ */ defineComponent({
|
|
|
19522
22058
|
//#endregion
|
|
19523
22059
|
//#region src/components/Select/SelectRoot.vue
|
|
19524
22060
|
const [useSelectContext, provideSelectContext] = createContext();
|
|
19525
|
-
const _sfc_main$
|
|
22061
|
+
const _sfc_main$119 = /* @__PURE__ */ defineComponent({
|
|
19526
22062
|
name: "SelectRoot",
|
|
19527
22063
|
__name: "SelectRoot",
|
|
19528
22064
|
props: /* @__PURE__ */ mergeModels({
|
|
@@ -19635,13 +22171,13 @@ const _sfc_main$116 = /* @__PURE__ */ defineComponent({
|
|
|
19635
22171
|
}, {
|
|
19636
22172
|
default: withCtx(() => [renderSlot(_ctx.$slots, "default", normalizeProps(guardReactiveProps(slotProps.value)))]),
|
|
19637
22173
|
_: 3
|
|
19638
|
-
}, 8, ["as"]), __props.name ? (openBlock(), createBlock(_sfc_main$
|
|
22174
|
+
}, 8, ["as"]), __props.name ? (openBlock(), createBlock(_sfc_main$164, { key: 0 })) : createCommentVNode("v-if", true)], 64);
|
|
19639
22175
|
};
|
|
19640
22176
|
}
|
|
19641
22177
|
});
|
|
19642
22178
|
//#endregion
|
|
19643
22179
|
//#region src/components/Select/SelectActivator.vue
|
|
19644
|
-
const _sfc_main$
|
|
22180
|
+
const _sfc_main$114 = /* @__PURE__ */ defineComponent({
|
|
19645
22181
|
name: "SelectActivator",
|
|
19646
22182
|
__name: "SelectActivator",
|
|
19647
22183
|
props: {
|
|
@@ -19719,7 +22255,7 @@ const _sfc_main$111 = /* @__PURE__ */ defineComponent({
|
|
|
19719
22255
|
});
|
|
19720
22256
|
//#endregion
|
|
19721
22257
|
//#region src/components/Select/SelectContent.vue
|
|
19722
|
-
const _sfc_main$
|
|
22258
|
+
const _sfc_main$115 = /* @__PURE__ */ defineComponent({
|
|
19723
22259
|
name: "SelectContent",
|
|
19724
22260
|
__name: "SelectContent",
|
|
19725
22261
|
props: {
|
|
@@ -19763,7 +22299,7 @@ const _sfc_main$112 = /* @__PURE__ */ defineComponent({
|
|
|
19763
22299
|
});
|
|
19764
22300
|
//#endregion
|
|
19765
22301
|
//#region src/components/Select/SelectCue.vue
|
|
19766
|
-
const _sfc_main$
|
|
22302
|
+
const _sfc_main$116 = /* @__PURE__ */ defineComponent({
|
|
19767
22303
|
name: "SelectCue",
|
|
19768
22304
|
__name: "SelectCue",
|
|
19769
22305
|
props: {
|
|
@@ -19790,7 +22326,7 @@ const _sfc_main$113 = /* @__PURE__ */ defineComponent({
|
|
|
19790
22326
|
});
|
|
19791
22327
|
//#endregion
|
|
19792
22328
|
//#region src/components/Select/SelectItem.vue
|
|
19793
|
-
const _sfc_main$
|
|
22329
|
+
const _sfc_main$117 = /* @__PURE__ */ defineComponent({
|
|
19794
22330
|
name: "SelectItem",
|
|
19795
22331
|
__name: "SelectItem",
|
|
19796
22332
|
props: {
|
|
@@ -19828,7 +22364,7 @@ const _sfc_main$114 = /* @__PURE__ */ defineComponent({
|
|
|
19828
22364
|
"id": elementId,
|
|
19829
22365
|
"role": "option",
|
|
19830
22366
|
"aria-selected": isSelected.value,
|
|
19831
|
-
"aria-disabled": isDisabled.value
|
|
22367
|
+
"aria-disabled": isDisabled.value,
|
|
19832
22368
|
"data-selected": isSelected.value || void 0,
|
|
19833
22369
|
"data-highlighted": isHighlighted.value ? "" : void 0,
|
|
19834
22370
|
"data-disabled": isDisabled.value || void 0,
|
|
@@ -19845,7 +22381,7 @@ const _sfc_main$114 = /* @__PURE__ */ defineComponent({
|
|
|
19845
22381
|
});
|
|
19846
22382
|
//#endregion
|
|
19847
22383
|
//#region src/components/Select/SelectPlaceholder.vue
|
|
19848
|
-
const _sfc_main$
|
|
22384
|
+
const _sfc_main$118 = /* @__PURE__ */ defineComponent({
|
|
19849
22385
|
name: "SelectPlaceholder",
|
|
19850
22386
|
__name: "SelectPlaceholder",
|
|
19851
22387
|
props: {
|
|
@@ -19869,7 +22405,7 @@ const _sfc_main$115 = /* @__PURE__ */ defineComponent({
|
|
|
19869
22405
|
});
|
|
19870
22406
|
//#endregion
|
|
19871
22407
|
//#region src/components/Select/SelectValue.vue
|
|
19872
|
-
const _sfc_main$
|
|
22408
|
+
const _sfc_main$120 = /* @__PURE__ */ defineComponent({
|
|
19873
22409
|
name: "SelectValue",
|
|
19874
22410
|
__name: "SelectValue",
|
|
19875
22411
|
props: {
|
|
@@ -19956,18 +22492,149 @@ const _sfc_main$117 = /* @__PURE__ */ defineComponent({
|
|
|
19956
22492
|
* ```
|
|
19957
22493
|
*/
|
|
19958
22494
|
const Select = {
|
|
19959
|
-
|
|
19960
|
-
|
|
19961
|
-
|
|
19962
|
-
|
|
19963
|
-
|
|
19964
|
-
|
|
19965
|
-
|
|
22495
|
+
/**
|
|
22496
|
+
* Root component for selects. Creates selection, virtual focus, and popover contexts.
|
|
22497
|
+
*
|
|
22498
|
+
* @see https://0.vuetifyjs.com/components/forms/select
|
|
22499
|
+
*
|
|
22500
|
+
* @example
|
|
22501
|
+
* ```vue
|
|
22502
|
+
* <script lang="ts" setup>
|
|
22503
|
+
* import { Select } from '@vuetify/v0'
|
|
22504
|
+
* import { ref } from 'vue'
|
|
22505
|
+
*
|
|
22506
|
+
* const selected = ref()
|
|
22507
|
+
* <\/script>
|
|
22508
|
+
*
|
|
22509
|
+
* <template>
|
|
22510
|
+
* <Select.Root v-model="selected">
|
|
22511
|
+
* <Select.Activator>
|
|
22512
|
+
* <Select.Value />
|
|
22513
|
+
* <Select.Placeholder>Choose...</Select.Placeholder>
|
|
22514
|
+
* </Select.Activator>
|
|
22515
|
+
* <Select.Content>
|
|
22516
|
+
* <Select.Item id="a" value="A">Option A</Select.Item>
|
|
22517
|
+
* </Select.Content>
|
|
22518
|
+
* </Select.Root>
|
|
22519
|
+
* </template>
|
|
22520
|
+
* ```
|
|
22521
|
+
*/
|
|
22522
|
+
Root: _sfc_main$119,
|
|
22523
|
+
/**
|
|
22524
|
+
* Activator button that opens the select dropdown.
|
|
22525
|
+
*
|
|
22526
|
+
* @see https://0.vuetifyjs.com/components/forms/select
|
|
22527
|
+
*
|
|
22528
|
+
* @example
|
|
22529
|
+
* ```vue
|
|
22530
|
+
* <script lang="ts" setup>
|
|
22531
|
+
* import { Select } from '@vuetify/v0'
|
|
22532
|
+
* <\/script>
|
|
22533
|
+
*
|
|
22534
|
+
* <template>
|
|
22535
|
+
* <Select.Activator>
|
|
22536
|
+
* Click to open
|
|
22537
|
+
* </Select.Activator>
|
|
22538
|
+
* </template>
|
|
22539
|
+
* ```
|
|
22540
|
+
*/
|
|
22541
|
+
Activator: _sfc_main$114,
|
|
22542
|
+
/**
|
|
22543
|
+
* Display component for the selected value. Slot-based — consumers provide rendering.
|
|
22544
|
+
*
|
|
22545
|
+
* @see https://0.vuetifyjs.com/components/forms/select
|
|
22546
|
+
*
|
|
22547
|
+
* @example
|
|
22548
|
+
* ```vue
|
|
22549
|
+
* <script lang="ts" setup>
|
|
22550
|
+
* import { Select } from '@vuetify/v0'
|
|
22551
|
+
* <\/script>
|
|
22552
|
+
*
|
|
22553
|
+
* <template>
|
|
22554
|
+
* <Select.Value v-slot="{ selectedValue }">
|
|
22555
|
+
* {{ selectedValue }}
|
|
22556
|
+
* </Select.Value>
|
|
22557
|
+
* <Select.Placeholder>Pick one</Select.Placeholder>
|
|
22558
|
+
* </template>
|
|
22559
|
+
* ```
|
|
22560
|
+
*/
|
|
22561
|
+
Value: _sfc_main$120,
|
|
22562
|
+
/**
|
|
22563
|
+
* Dropdown content container using native popover API with CSS anchor positioning.
|
|
22564
|
+
*
|
|
22565
|
+
* @see https://0.vuetifyjs.com/components/forms/select
|
|
22566
|
+
*
|
|
22567
|
+
* @example
|
|
22568
|
+
* ```vue
|
|
22569
|
+
* <script lang="ts" setup>
|
|
22570
|
+
* import { Select } from '@vuetify/v0'
|
|
22571
|
+
* <\/script>
|
|
22572
|
+
*
|
|
22573
|
+
* <template>
|
|
22574
|
+
* <Select.Content>
|
|
22575
|
+
* <Select.Item id="a" value="A">Option A</Select.Item>
|
|
22576
|
+
* <Select.Item id="b" value="B">Option B</Select.Item>
|
|
22577
|
+
* </Select.Content>
|
|
22578
|
+
* </template>
|
|
22579
|
+
* ```
|
|
22580
|
+
*/
|
|
22581
|
+
Content: _sfc_main$115,
|
|
22582
|
+
/**
|
|
22583
|
+
* Visual cue for open/close state. Exposes `data-state="open|closed"` for CSS-driven styling.
|
|
22584
|
+
*
|
|
22585
|
+
* @see https://0.vuetifyjs.com/components/forms/select
|
|
22586
|
+
*
|
|
22587
|
+
* @example
|
|
22588
|
+
* ```vue
|
|
22589
|
+
* <Select.Activator>
|
|
22590
|
+
* <Select.Value />
|
|
22591
|
+
* <Select.Placeholder>Choose...</Select.Placeholder>
|
|
22592
|
+
* <Select.Cue v-slot="{ isOpen }">
|
|
22593
|
+
* {{ isOpen ? '▲' : '▼' }}
|
|
22594
|
+
* </Select.Cue>
|
|
22595
|
+
* </Select.Activator>
|
|
22596
|
+
* ```
|
|
22597
|
+
*/
|
|
22598
|
+
Cue: _sfc_main$116,
|
|
22599
|
+
/**
|
|
22600
|
+
* Option item within the select dropdown. Registers with selection and virtual focus.
|
|
22601
|
+
*
|
|
22602
|
+
* @see https://0.vuetifyjs.com/components/forms/select
|
|
22603
|
+
*
|
|
22604
|
+
* @example
|
|
22605
|
+
* ```vue
|
|
22606
|
+
* <script lang="ts" setup>
|
|
22607
|
+
* import { Select } from '@vuetify/v0'
|
|
22608
|
+
* <\/script>
|
|
22609
|
+
*
|
|
22610
|
+
* <template>
|
|
22611
|
+
* <Select.Item id="apple" value="Apple" v-slot="{ isSelected, attrs }">
|
|
22612
|
+
* <div v-bind="attrs">Apple {{ isSelected ? '✓' : '' }}</div>
|
|
22613
|
+
* </Select.Item>
|
|
22614
|
+
* </template>
|
|
22615
|
+
* ```
|
|
22616
|
+
*/
|
|
22617
|
+
Item: _sfc_main$117,
|
|
22618
|
+
/**
|
|
22619
|
+
* Placeholder text shown when no value is selected. Automatically hidden when a selection exists.
|
|
22620
|
+
*
|
|
22621
|
+
* @see https://0.vuetifyjs.com/components/forms/select
|
|
22622
|
+
*
|
|
22623
|
+
* @example
|
|
22624
|
+
* ```vue
|
|
22625
|
+
* <Select.Activator>
|
|
22626
|
+
* <Select.Value />
|
|
22627
|
+
* <Select.Placeholder>Choose an option…</Select.Placeholder>
|
|
22628
|
+
* <Select.Cue />
|
|
22629
|
+
* </Select.Activator>
|
|
22630
|
+
* ```
|
|
22631
|
+
*/
|
|
22632
|
+
Placeholder: _sfc_main$118
|
|
19966
22633
|
};
|
|
19967
22634
|
//#endregion
|
|
19968
22635
|
//#region src/components/Selection/SelectionRoot.vue
|
|
19969
22636
|
const [useSelectionRoot, provideSelectionRoot] = createContext();
|
|
19970
|
-
const _sfc_main$
|
|
22637
|
+
const _sfc_main$122 = /* @__PURE__ */ defineComponent({
|
|
19971
22638
|
name: "SelectionRoot",
|
|
19972
22639
|
__name: "SelectionRoot",
|
|
19973
22640
|
props: /* @__PURE__ */ mergeModels({
|
|
@@ -20019,7 +22686,7 @@ const _sfc_main$119 = /* @__PURE__ */ defineComponent({
|
|
|
20019
22686
|
});
|
|
20020
22687
|
//#endregion
|
|
20021
22688
|
//#region src/components/Selection/SelectionItem.vue
|
|
20022
|
-
const _sfc_main$
|
|
22689
|
+
const _sfc_main$121 = /* @__PURE__ */ defineComponent({
|
|
20023
22690
|
name: "SelectionItem",
|
|
20024
22691
|
__name: "SelectionItem",
|
|
20025
22692
|
props: {
|
|
@@ -20070,13 +22737,55 @@ const _sfc_main$118 = /* @__PURE__ */ defineComponent({
|
|
|
20070
22737
|
* @see https://0.vuetifyjs.com/components/providers/selection
|
|
20071
22738
|
*/
|
|
20072
22739
|
const Selection = {
|
|
20073
|
-
|
|
20074
|
-
|
|
22740
|
+
/**
|
|
22741
|
+
* Root component for selection contexts.
|
|
22742
|
+
*
|
|
22743
|
+
* @see https://0.vuetifyjs.com/components/providers/selection
|
|
22744
|
+
*
|
|
22745
|
+
* @example
|
|
22746
|
+
* ```vue
|
|
22747
|
+
* <script lang="ts" setup>
|
|
22748
|
+
* import { Selection } from '@vuetify/v0'
|
|
22749
|
+
* <\/script>
|
|
22750
|
+
*
|
|
22751
|
+
* <template>
|
|
22752
|
+
* <Selection.Root v-model="selected" multiple>
|
|
22753
|
+
* <Selection.Item value="a" v-slot="{ attrs }">
|
|
22754
|
+
* <button v-bind="attrs">Option A</button>
|
|
22755
|
+
* </Selection.Item>
|
|
22756
|
+
*
|
|
22757
|
+
* <Selection.Item value="b" v-slot="{ attrs }">
|
|
22758
|
+
* <button v-bind="attrs">Option B</button>
|
|
22759
|
+
* </Selection.Item>
|
|
22760
|
+
* </Selection.Root>
|
|
22761
|
+
* </template>
|
|
22762
|
+
* ```
|
|
22763
|
+
*/
|
|
22764
|
+
Root: _sfc_main$122,
|
|
22765
|
+
/**
|
|
22766
|
+
* Item component for selection contexts.
|
|
22767
|
+
*
|
|
22768
|
+
* @see https://0.vuetifyjs.com/components/providers/selection
|
|
22769
|
+
*
|
|
22770
|
+
* @example
|
|
22771
|
+
* ```vue
|
|
22772
|
+
* <script lang="ts" setup>
|
|
22773
|
+
* import { Selection } from '@vuetify/v0'
|
|
22774
|
+
* <\/script>
|
|
22775
|
+
*
|
|
22776
|
+
* <template>
|
|
22777
|
+
* <Selection.Item value="a" v-slot="{ attrs }">
|
|
22778
|
+
* <button v-bind="attrs">Option A</button>
|
|
22779
|
+
* </Selection.Item>
|
|
22780
|
+
* </template>
|
|
22781
|
+
* ```
|
|
22782
|
+
*/
|
|
22783
|
+
Item: _sfc_main$121
|
|
20075
22784
|
};
|
|
20076
22785
|
//#endregion
|
|
20077
22786
|
//#region src/components/Single/SingleRoot.vue
|
|
20078
22787
|
const [useSingleRoot, provideSingleRoot] = createContext();
|
|
20079
|
-
const _sfc_main$
|
|
22788
|
+
const _sfc_main$124 = /* @__PURE__ */ defineComponent({
|
|
20080
22789
|
name: "SingleRoot",
|
|
20081
22790
|
__name: "SingleRoot",
|
|
20082
22791
|
props: /* @__PURE__ */ mergeModels({
|
|
@@ -20122,7 +22831,7 @@ const _sfc_main$121 = /* @__PURE__ */ defineComponent({
|
|
|
20122
22831
|
});
|
|
20123
22832
|
//#endregion
|
|
20124
22833
|
//#region src/components/Single/SingleItem.vue
|
|
20125
|
-
const _sfc_main$
|
|
22834
|
+
const _sfc_main$123 = /* @__PURE__ */ defineComponent({
|
|
20126
22835
|
name: "SingleItem",
|
|
20127
22836
|
__name: "SingleItem",
|
|
20128
22837
|
props: {
|
|
@@ -20173,13 +22882,57 @@ const _sfc_main$120 = /* @__PURE__ */ defineComponent({
|
|
|
20173
22882
|
* @see https://0.vuetifyjs.com/components/providers/single
|
|
20174
22883
|
*/
|
|
20175
22884
|
const Single = {
|
|
20176
|
-
|
|
20177
|
-
|
|
22885
|
+
/**
|
|
22886
|
+
* Root component for single-selection. Only one item can be selected at a time.
|
|
22887
|
+
*
|
|
22888
|
+
* @see https://0.vuetifyjs.com/components/providers/single
|
|
22889
|
+
*
|
|
22890
|
+
* @example
|
|
22891
|
+
* ```vue
|
|
22892
|
+
* <script lang="ts" setup>
|
|
22893
|
+
* import { Single } from '@vuetify/v0'
|
|
22894
|
+
* <\/script>
|
|
22895
|
+
*
|
|
22896
|
+
* <template>
|
|
22897
|
+
* <Single.Root v-model="selected">
|
|
22898
|
+
* <Single.Item value="option1">
|
|
22899
|
+
* Option 1
|
|
22900
|
+
* </Single.Item>
|
|
22901
|
+
*
|
|
22902
|
+
* <Single.Item value="option2">
|
|
22903
|
+
* Option 2
|
|
22904
|
+
* </Single.Item>
|
|
22905
|
+
* </Single.Root>
|
|
22906
|
+
* </template>
|
|
22907
|
+
* ```
|
|
22908
|
+
*/
|
|
22909
|
+
Root: _sfc_main$124,
|
|
22910
|
+
/**
|
|
22911
|
+
* Component representing a selectable item within Single.Root.
|
|
22912
|
+
*
|
|
22913
|
+
* @see https://0.vuetifyjs.com/components/providers/single
|
|
22914
|
+
*
|
|
22915
|
+
* @example
|
|
22916
|
+
* ```vue
|
|
22917
|
+
* <script lang="ts" setup>
|
|
22918
|
+
* import { Single } from '@vuetify/v0'
|
|
22919
|
+
* <\/script>
|
|
22920
|
+
*
|
|
22921
|
+
* <template>
|
|
22922
|
+
* <Single.Item value="option1" #default="{ isSelected }">
|
|
22923
|
+
* <div :class="{ selected: isSelected }">
|
|
22924
|
+
* Option 1
|
|
22925
|
+
* </div>
|
|
22926
|
+
* </Single.Item>
|
|
22927
|
+
* </template>
|
|
22928
|
+
* ```
|
|
22929
|
+
*/
|
|
22930
|
+
Item: _sfc_main$123
|
|
20178
22931
|
};
|
|
20179
22932
|
//#endregion
|
|
20180
22933
|
//#region src/components/Slider/SliderRoot.vue
|
|
20181
22934
|
const [useSliderRoot, provideSliderRoot] = createContext();
|
|
20182
|
-
const _sfc_main$
|
|
22935
|
+
const _sfc_main$127 = /* @__PURE__ */ defineComponent({
|
|
20183
22936
|
name: "SliderRoot",
|
|
20184
22937
|
inheritAttrs: false,
|
|
20185
22938
|
__name: "SliderRoot",
|
|
@@ -20316,7 +23069,7 @@ const _sfc_main$124 = /* @__PURE__ */ defineComponent({
|
|
|
20316
23069
|
default: withCtx(() => [renderSlot(_ctx.$slots, "default", normalizeProps(guardReactiveProps(slotProps.value)))]),
|
|
20317
23070
|
_: 3
|
|
20318
23071
|
}, 16, ["as", "renderless"]), __props.name ? (openBlock(true), createElementBlock(Fragment, { key: 0 }, renderList(unref(slider).values.value, (_, index) => {
|
|
20319
|
-
return openBlock(), createBlock(_sfc_main$
|
|
23072
|
+
return openBlock(), createBlock(_sfc_main$125, {
|
|
20320
23073
|
key: index,
|
|
20321
23074
|
index
|
|
20322
23075
|
}, null, 8, ["index"]);
|
|
@@ -20332,7 +23085,7 @@ const _hoisted_1$1 = [
|
|
|
20332
23085
|
"name",
|
|
20333
23086
|
"value"
|
|
20334
23087
|
];
|
|
20335
|
-
const _sfc_main$
|
|
23088
|
+
const _sfc_main$125 = /* @__PURE__ */ defineComponent({
|
|
20336
23089
|
name: "SliderHiddenInput",
|
|
20337
23090
|
__name: "SliderHiddenInput",
|
|
20338
23091
|
props: {
|
|
@@ -20357,7 +23110,7 @@ const _sfc_main$122 = /* @__PURE__ */ defineComponent({
|
|
|
20357
23110
|
});
|
|
20358
23111
|
//#endregion
|
|
20359
23112
|
//#region src/components/Slider/SliderRange.vue
|
|
20360
|
-
const _sfc_main$
|
|
23113
|
+
const _sfc_main$126 = /* @__PURE__ */ defineComponent({
|
|
20361
23114
|
name: "SliderRange",
|
|
20362
23115
|
inheritAttrs: false,
|
|
20363
23116
|
__name: "SliderRange",
|
|
@@ -20415,7 +23168,7 @@ const _sfc_main$123 = /* @__PURE__ */ defineComponent({
|
|
|
20415
23168
|
});
|
|
20416
23169
|
//#endregion
|
|
20417
23170
|
//#region src/components/Slider/SliderThumb.vue
|
|
20418
|
-
const _sfc_main$
|
|
23171
|
+
const _sfc_main$128 = /* @__PURE__ */ defineComponent({
|
|
20419
23172
|
name: "SliderThumb",
|
|
20420
23173
|
inheritAttrs: false,
|
|
20421
23174
|
__name: "SliderThumb",
|
|
@@ -20526,7 +23279,7 @@ const _sfc_main$125 = /* @__PURE__ */ defineComponent({
|
|
|
20526
23279
|
});
|
|
20527
23280
|
//#endregion
|
|
20528
23281
|
//#region src/components/Slider/SliderTrack.vue
|
|
20529
|
-
const _sfc_main$
|
|
23282
|
+
const _sfc_main$129 = /* @__PURE__ */ defineComponent({
|
|
20530
23283
|
name: "SliderTrack",
|
|
20531
23284
|
inheritAttrs: false,
|
|
20532
23285
|
__name: "SliderTrack",
|
|
@@ -20617,15 +23370,126 @@ const _sfc_main$126 = /* @__PURE__ */ defineComponent({
|
|
|
20617
23370
|
* ```
|
|
20618
23371
|
*/
|
|
20619
23372
|
const Slider = {
|
|
20620
|
-
|
|
20621
|
-
|
|
20622
|
-
|
|
20623
|
-
|
|
20624
|
-
|
|
23373
|
+
/**
|
|
23374
|
+
* Root component for sliders.
|
|
23375
|
+
*
|
|
23376
|
+
* Creates slider context, provides it to child components, and
|
|
23377
|
+
* bridges v-model. Value is always `number[]`: single thumb = `[50]`,
|
|
23378
|
+
* range = `[25, 75]`. Configure min, max, step, and orientation via
|
|
23379
|
+
* props. When `name` prop is provided, automatically renders hidden
|
|
23380
|
+
* inputs for form submission.
|
|
23381
|
+
*
|
|
23382
|
+
* @see https://0.vuetifyjs.com/components/forms/slider
|
|
23383
|
+
*
|
|
23384
|
+
* @example
|
|
23385
|
+
* ```vue
|
|
23386
|
+
* <script setup lang="ts">
|
|
23387
|
+
* import { Slider } from '@vuetify/v0'
|
|
23388
|
+
* import { ref } from 'vue'
|
|
23389
|
+
*
|
|
23390
|
+
* const value = ref([50])
|
|
23391
|
+
* <\/script>
|
|
23392
|
+
*
|
|
23393
|
+
* <template>
|
|
23394
|
+
* <Slider.Root v-model="value" :min="0" :max="100">
|
|
23395
|
+
* <Slider.Track>
|
|
23396
|
+
* <Slider.Range />
|
|
23397
|
+
* </Slider.Track>
|
|
23398
|
+
* <Slider.Thumb />
|
|
23399
|
+
* </Slider.Root>
|
|
23400
|
+
* </template>
|
|
23401
|
+
* ```
|
|
23402
|
+
*/
|
|
23403
|
+
Root: _sfc_main$127,
|
|
23404
|
+
/**
|
|
23405
|
+
* Track element that contains the Range and handles click-to-position.
|
|
23406
|
+
*
|
|
23407
|
+
* On pointerdown, calculates the value from pointer position, snaps
|
|
23408
|
+
* the nearest thumb to that value, and initiates drag. Must contain
|
|
23409
|
+
* Slider.Range as a child.
|
|
23410
|
+
*
|
|
23411
|
+
* @see https://0.vuetifyjs.com/components/forms/slider#anatomy
|
|
23412
|
+
*
|
|
23413
|
+
* @example
|
|
23414
|
+
* ```vue
|
|
23415
|
+
* <Slider.Track>
|
|
23416
|
+
* <Slider.Range />
|
|
23417
|
+
* </Slider.Track>
|
|
23418
|
+
* ```
|
|
23419
|
+
*/
|
|
23420
|
+
Track: _sfc_main$129,
|
|
23421
|
+
/**
|
|
23422
|
+
* Filled region between thumb positions.
|
|
23423
|
+
*
|
|
23424
|
+
* For single-thumb sliders, fills from min to the thumb value.
|
|
23425
|
+
* For range sliders, fills between the lowest and highest thumb
|
|
23426
|
+
* values. Must be used within a Slider.Track component.
|
|
23427
|
+
*
|
|
23428
|
+
* @see https://0.vuetifyjs.com/components/forms/slider#anatomy
|
|
23429
|
+
*
|
|
23430
|
+
* @example
|
|
23431
|
+
* ```vue
|
|
23432
|
+
* <Slider.Track>
|
|
23433
|
+
* <Slider.Range />
|
|
23434
|
+
* </Slider.Track>
|
|
23435
|
+
* ```
|
|
23436
|
+
*/
|
|
23437
|
+
Range: _sfc_main$126,
|
|
23438
|
+
/**
|
|
23439
|
+
* Draggable thumb control with keyboard navigation.
|
|
23440
|
+
*
|
|
23441
|
+
* Auto-registers with parent Root to receive its index. Supports
|
|
23442
|
+
* pointer drag and full keyboard navigation (Arrow, Page, Home/End).
|
|
23443
|
+
* Provides ARIA slider attributes including per-thumb constrained
|
|
23444
|
+
* valuemin/valuemax for multi-thumb sliders. Render multiple Thumbs
|
|
23445
|
+
* for range sliders.
|
|
23446
|
+
*
|
|
23447
|
+
* @see https://0.vuetifyjs.com/components/forms/slider#anatomy
|
|
23448
|
+
*
|
|
23449
|
+
* @example
|
|
23450
|
+
* ```vue
|
|
23451
|
+
* <Slider.Thumb />
|
|
23452
|
+
* ```
|
|
23453
|
+
*/
|
|
23454
|
+
Thumb: _sfc_main$128,
|
|
23455
|
+
/**
|
|
23456
|
+
* Hidden native input for form submission.
|
|
23457
|
+
*
|
|
23458
|
+
* Auto-rendered by Root when `name` prop is provided — one input
|
|
23459
|
+
* per thumb value. Can also be used explicitly for custom form
|
|
23460
|
+
* integration.
|
|
23461
|
+
*
|
|
23462
|
+
* @see https://0.vuetifyjs.com/components/forms/slider#form-integration
|
|
23463
|
+
* @internal
|
|
23464
|
+
*
|
|
23465
|
+
* @example
|
|
23466
|
+
* ```vue
|
|
23467
|
+
* <script setup lang="ts">
|
|
23468
|
+
* import { Slider } from '@vuetify/v0'
|
|
23469
|
+
* import { ref } from 'vue'
|
|
23470
|
+
*
|
|
23471
|
+
* const value = ref([50])
|
|
23472
|
+
* <\/script>
|
|
23473
|
+
*
|
|
23474
|
+
* <template>
|
|
23475
|
+
* <!-- You don't need to do this — Root auto-renders hidden
|
|
23476
|
+
* inputs when the `name` prop is set. This is only needed
|
|
23477
|
+
* for custom form integration. -->
|
|
23478
|
+
* <Slider.Root v-model="value">
|
|
23479
|
+
* <Slider.Track>
|
|
23480
|
+
* <Slider.Range />
|
|
23481
|
+
* </Slider.Track>
|
|
23482
|
+
* <Slider.Thumb />
|
|
23483
|
+
* <Slider.HiddenInput name="volume" :index="0" />
|
|
23484
|
+
* </Slider.Root>
|
|
23485
|
+
* </template>
|
|
23486
|
+
* ```
|
|
23487
|
+
*/
|
|
23488
|
+
HiddenInput: _sfc_main$125
|
|
20625
23489
|
};
|
|
20626
23490
|
//#endregion
|
|
20627
23491
|
//#region src/components/Snackbar/SnackbarPortal.vue
|
|
20628
|
-
const _sfc_main$
|
|
23492
|
+
const _sfc_main$132 = /* @__PURE__ */ defineComponent({
|
|
20629
23493
|
name: "SnackbarPortal",
|
|
20630
23494
|
inheritAttrs: false,
|
|
20631
23495
|
__name: "SnackbarPortal",
|
|
@@ -20639,7 +23503,7 @@ const _sfc_main$129 = /* @__PURE__ */ defineComponent({
|
|
|
20639
23503
|
},
|
|
20640
23504
|
setup(__props) {
|
|
20641
23505
|
return (_ctx, _cache) => {
|
|
20642
|
-
return openBlock(), createBlock(unref(_sfc_main$
|
|
23506
|
+
return openBlock(), createBlock(unref(_sfc_main$97), {
|
|
20643
23507
|
disabled: __props.teleport === false,
|
|
20644
23508
|
to: __props.teleport || "body"
|
|
20645
23509
|
}, {
|
|
@@ -20658,7 +23522,7 @@ const _sfc_main$129 = /* @__PURE__ */ defineComponent({
|
|
|
20658
23522
|
//#endregion
|
|
20659
23523
|
//#region src/components/Snackbar/SnackbarQueue.vue
|
|
20660
23524
|
const [useSnackbarQueueContext, provideSnackbarQueueContext] = createContext({ suffix: "queue" });
|
|
20661
|
-
const _sfc_main$
|
|
23525
|
+
const _sfc_main$133 = /* @__PURE__ */ defineComponent({
|
|
20662
23526
|
name: "SnackbarQueue",
|
|
20663
23527
|
__name: "SnackbarQueue",
|
|
20664
23528
|
props: {
|
|
@@ -20727,7 +23591,7 @@ const _sfc_main$130 = /* @__PURE__ */ defineComponent({
|
|
|
20727
23591
|
//#endregion
|
|
20728
23592
|
//#region src/components/Snackbar/SnackbarRoot.vue
|
|
20729
23593
|
const [useSnackbarRootContext, provideSnackbarRootContext] = createContext({ suffix: "root" });
|
|
20730
|
-
const _sfc_main$
|
|
23594
|
+
const _sfc_main$134 = /* @__PURE__ */ defineComponent({
|
|
20731
23595
|
name: "SnackbarRoot",
|
|
20732
23596
|
__name: "SnackbarRoot",
|
|
20733
23597
|
props: {
|
|
@@ -20762,7 +23626,7 @@ const _sfc_main$131 = /* @__PURE__ */ defineComponent({
|
|
|
20762
23626
|
});
|
|
20763
23627
|
//#endregion
|
|
20764
23628
|
//#region src/components/Snackbar/SnackbarContent.vue
|
|
20765
|
-
const _sfc_main$
|
|
23629
|
+
const _sfc_main$131 = /* @__PURE__ */ defineComponent({
|
|
20766
23630
|
name: "SnackbarContent",
|
|
20767
23631
|
__name: "SnackbarContent",
|
|
20768
23632
|
props: {
|
|
@@ -20780,7 +23644,7 @@ const _sfc_main$128 = /* @__PURE__ */ defineComponent({
|
|
|
20780
23644
|
});
|
|
20781
23645
|
//#endregion
|
|
20782
23646
|
//#region src/components/Snackbar/SnackbarClose.vue
|
|
20783
|
-
const _sfc_main$
|
|
23647
|
+
const _sfc_main$130 = /* @__PURE__ */ defineComponent({
|
|
20784
23648
|
name: "SnackbarClose",
|
|
20785
23649
|
__name: "SnackbarClose",
|
|
20786
23650
|
props: {
|
|
@@ -20835,16 +23699,118 @@ const _sfc_main$127 = /* @__PURE__ */ defineComponent({
|
|
|
20835
23699
|
* ```
|
|
20836
23700
|
*/
|
|
20837
23701
|
const Snackbar = {
|
|
20838
|
-
|
|
20839
|
-
|
|
20840
|
-
|
|
20841
|
-
|
|
20842
|
-
|
|
23702
|
+
/**
|
|
23703
|
+
* Container that teleports to `<body>` and manages z-index via useStack.
|
|
23704
|
+
* Coordinates layering with Dialog and Scrim. Pass `:teleport="false"`
|
|
23705
|
+
* for inline rendering (docs, Storybook, scoped containers).
|
|
23706
|
+
*
|
|
23707
|
+
* @see https://0.vuetifyjs.com/components/semantic/snackbar
|
|
23708
|
+
*
|
|
23709
|
+
* @example
|
|
23710
|
+
* ```vue
|
|
23711
|
+
* <script setup lang="ts">
|
|
23712
|
+
* import { Snackbar } from '@vuetify/v0'
|
|
23713
|
+
* <\/script>
|
|
23714
|
+
*
|
|
23715
|
+
* <template>
|
|
23716
|
+
* <Snackbar.Portal>
|
|
23717
|
+
* <Snackbar.Root>
|
|
23718
|
+
* <Snackbar.Content>Saved</Snackbar.Content>
|
|
23719
|
+
* <Snackbar.Close />
|
|
23720
|
+
* </Snackbar.Root>
|
|
23721
|
+
* </Snackbar.Portal>
|
|
23722
|
+
* </template>
|
|
23723
|
+
* ```
|
|
23724
|
+
*/
|
|
23725
|
+
Portal: _sfc_main$132,
|
|
23726
|
+
/**
|
|
23727
|
+
* Connects to useNotifications by namespace and exposes queue items
|
|
23728
|
+
* via scoped slot. Pauses auto-dismiss on hover and focus (WCAG 2.2.1).
|
|
23729
|
+
* Re-pauses after dismiss when hover/focus is still active.
|
|
23730
|
+
*
|
|
23731
|
+
* @see https://0.vuetifyjs.com/components/semantic/snackbar
|
|
23732
|
+
*
|
|
23733
|
+
* @example
|
|
23734
|
+
* ```vue
|
|
23735
|
+
* <script setup lang="ts">
|
|
23736
|
+
* import { Snackbar } from '@vuetify/v0'
|
|
23737
|
+
* <\/script>
|
|
23738
|
+
*
|
|
23739
|
+
* <template>
|
|
23740
|
+
* <Snackbar.Queue v-slot="{ items }">
|
|
23741
|
+
* <Snackbar.Root v-for="item in items" :key="item.id" :id="item.id">
|
|
23742
|
+
* <Snackbar.Content>{{ item.subject }}</Snackbar.Content>
|
|
23743
|
+
* <Snackbar.Close />
|
|
23744
|
+
* </Snackbar.Root>
|
|
23745
|
+
* </Snackbar.Queue>
|
|
23746
|
+
* </template>
|
|
23747
|
+
* ```
|
|
23748
|
+
*/
|
|
23749
|
+
Queue: _sfc_main$133,
|
|
23750
|
+
/**
|
|
23751
|
+
* A single snackbar instance. Provides dismiss context to child
|
|
23752
|
+
* Snackbar.Close components. Defaults to `role="status"` (polite
|
|
23753
|
+
* live region) — override with `role="alert"` for urgent notifications.
|
|
23754
|
+
*
|
|
23755
|
+
* @see https://0.vuetifyjs.com/components/semantic/snackbar
|
|
23756
|
+
*
|
|
23757
|
+
* @example
|
|
23758
|
+
* ```vue
|
|
23759
|
+
* <script setup lang="ts">
|
|
23760
|
+
* import { Snackbar } from '@vuetify/v0'
|
|
23761
|
+
* <\/script>
|
|
23762
|
+
*
|
|
23763
|
+
* <template>
|
|
23764
|
+
* <Snackbar.Root :id="item.id">
|
|
23765
|
+
* <Snackbar.Content>{{ item.subject }}</Snackbar.Content>
|
|
23766
|
+
* <Snackbar.Close />
|
|
23767
|
+
* </Snackbar.Root>
|
|
23768
|
+
* </template>
|
|
23769
|
+
* ```
|
|
23770
|
+
*/
|
|
23771
|
+
Root: _sfc_main$134,
|
|
23772
|
+
/**
|
|
23773
|
+
* Semantic wrapper for the notification message text.
|
|
23774
|
+
* Renders as a `<div>` by default. Polymorphic via the `as` prop.
|
|
23775
|
+
*
|
|
23776
|
+
* @see https://0.vuetifyjs.com/components/semantic/snackbar
|
|
23777
|
+
*
|
|
23778
|
+
* @example
|
|
23779
|
+
* ```vue
|
|
23780
|
+
* <script setup lang="ts">
|
|
23781
|
+
* import { Snackbar } from '@vuetify/v0'
|
|
23782
|
+
* <\/script>
|
|
23783
|
+
*
|
|
23784
|
+
* <template>
|
|
23785
|
+
* <Snackbar.Content>Changes saved</Snackbar.Content>
|
|
23786
|
+
* </template>
|
|
23787
|
+
* ```
|
|
23788
|
+
*/
|
|
23789
|
+
Content: _sfc_main$131,
|
|
23790
|
+
/**
|
|
23791
|
+
* Dismiss button that auto-wires to the nearest Snackbar.Root context.
|
|
23792
|
+
* Renders with `aria-label="Close"` and `type="button"`. In renderless
|
|
23793
|
+
* mode, all attributes including `onClick` are available via `slotProps.attrs`.
|
|
23794
|
+
*
|
|
23795
|
+
* @see https://0.vuetifyjs.com/components/semantic/snackbar
|
|
23796
|
+
*
|
|
23797
|
+
* @example
|
|
23798
|
+
* ```vue
|
|
23799
|
+
* <script setup lang="ts">
|
|
23800
|
+
* import { Snackbar } from '@vuetify/v0'
|
|
23801
|
+
* <\/script>
|
|
23802
|
+
*
|
|
23803
|
+
* <template>
|
|
23804
|
+
* <Snackbar.Close />
|
|
23805
|
+
* </template>
|
|
23806
|
+
* ```
|
|
23807
|
+
*/
|
|
23808
|
+
Close: _sfc_main$130
|
|
20843
23809
|
};
|
|
20844
23810
|
//#endregion
|
|
20845
23811
|
//#region src/components/Splitter/SplitterRoot.vue
|
|
20846
23812
|
const [useSplitterRoot, provideSplitterRoot] = createContext("v0:splitter");
|
|
20847
|
-
const _sfc_main$
|
|
23813
|
+
const _sfc_main$137 = /* @__PURE__ */ defineComponent({
|
|
20848
23814
|
name: "SplitterRoot",
|
|
20849
23815
|
inheritAttrs: false,
|
|
20850
23816
|
__name: "SplitterRoot",
|
|
@@ -20862,7 +23828,7 @@ const _sfc_main$134 = /* @__PURE__ */ defineComponent({
|
|
|
20862
23828
|
const attrs = useAttrs();
|
|
20863
23829
|
const emit = __emit;
|
|
20864
23830
|
const rootAtom = useTemplateRef("root");
|
|
20865
|
-
const rootEl = toRef(() => rootAtom.value?.element ?? null);
|
|
23831
|
+
const rootEl = toRef(() => /* @__PURE__ */ toElement(rootAtom.value?.element) ?? null);
|
|
20866
23832
|
const draggingHandle = shallowRef(null);
|
|
20867
23833
|
const dragging = toRef(() => !/* @__PURE__ */ isNull(draggingHandle.value));
|
|
20868
23834
|
const expandAccum = /* @__PURE__ */ new Map();
|
|
@@ -21059,7 +24025,7 @@ const _sfc_main$134 = /* @__PURE__ */ defineComponent({
|
|
|
21059
24025
|
});
|
|
21060
24026
|
//#endregion
|
|
21061
24027
|
//#region src/components/Splitter/SplitterPanel.vue
|
|
21062
|
-
const _sfc_main$
|
|
24028
|
+
const _sfc_main$136 = /* @__PURE__ */ defineComponent({
|
|
21063
24029
|
name: "SplitterPanel",
|
|
21064
24030
|
inheritAttrs: false,
|
|
21065
24031
|
__name: "SplitterPanel",
|
|
@@ -21101,7 +24067,8 @@ const _sfc_main$133 = /* @__PURE__ */ defineComponent({
|
|
|
21101
24067
|
const num = Number.parseFloat(value);
|
|
21102
24068
|
if (Number.isNaN(num)) return fallback;
|
|
21103
24069
|
if (value.endsWith("px")) {
|
|
21104
|
-
const
|
|
24070
|
+
const root = splitter.rootEl.value;
|
|
24071
|
+
const dimension = rootSize.value || (splitter.orientation.value === "horizontal" ? root?.offsetWidth : root?.offsetHeight) || 0;
|
|
21105
24072
|
return dimension > 0 ? num / dimension * 100 : fallback;
|
|
21106
24073
|
}
|
|
21107
24074
|
return num;
|
|
@@ -21191,7 +24158,7 @@ const _sfc_main$133 = /* @__PURE__ */ defineComponent({
|
|
|
21191
24158
|
});
|
|
21192
24159
|
//#endregion
|
|
21193
24160
|
//#region src/components/Splitter/SplitterHandle.vue
|
|
21194
|
-
const _sfc_main$
|
|
24161
|
+
const _sfc_main$135 = /* @__PURE__ */ defineComponent({
|
|
21195
24162
|
name: "SplitterHandle",
|
|
21196
24163
|
inheritAttrs: false,
|
|
21197
24164
|
__name: "SplitterHandle",
|
|
@@ -21351,7 +24318,7 @@ const _sfc_main$132 = /* @__PURE__ */ defineComponent({
|
|
|
21351
24318
|
"aria-orientation": ariaOrientation.value,
|
|
21352
24319
|
"aria-controls": ariaControls.value,
|
|
21353
24320
|
"aria-label": __props.label || void 0,
|
|
21354
|
-
"aria-disabled": isDisabled.value
|
|
24321
|
+
"aria-disabled": isDisabled.value,
|
|
21355
24322
|
"data-state": state.value,
|
|
21356
24323
|
"data-orientation": splitter.orientation.value,
|
|
21357
24324
|
"data-disabled": isDisabled.value || void 0,
|
|
@@ -21411,14 +24378,62 @@ const _sfc_main$132 = /* @__PURE__ */ defineComponent({
|
|
|
21411
24378
|
* ```
|
|
21412
24379
|
*/
|
|
21413
24380
|
const Splitter = {
|
|
21414
|
-
|
|
21415
|
-
|
|
21416
|
-
|
|
24381
|
+
/**
|
|
24382
|
+
* Root container that provides splitter context and manages panel sizes.
|
|
24383
|
+
*
|
|
24384
|
+
* @see https://0.vuetifyjs.com/components/semantic/splitter
|
|
24385
|
+
*
|
|
24386
|
+
* @example
|
|
24387
|
+
* ```vue
|
|
24388
|
+
* <script lang="ts" setup>
|
|
24389
|
+
* import { Splitter } from '@vuetify/v0'
|
|
24390
|
+
* <\/script>
|
|
24391
|
+
*
|
|
24392
|
+
* <template>
|
|
24393
|
+
* <Splitter.Root orientation="horizontal">
|
|
24394
|
+
* <Splitter.Panel :default-size="60" :min-size="20">
|
|
24395
|
+
* Left content
|
|
24396
|
+
* </Splitter.Panel>
|
|
24397
|
+
*
|
|
24398
|
+
* <Splitter.Handle label="Resize panels" />
|
|
24399
|
+
*
|
|
24400
|
+
* <Splitter.Panel :default-size="40" :min-size="20">
|
|
24401
|
+
* Right content
|
|
24402
|
+
* </Splitter.Panel>
|
|
24403
|
+
* </Splitter.Root>
|
|
24404
|
+
* </template>
|
|
24405
|
+
* ```
|
|
24406
|
+
*/
|
|
24407
|
+
Root: _sfc_main$137,
|
|
24408
|
+
/**
|
|
24409
|
+
* Resizable panel within a splitter layout, sized via flex-basis percentage.
|
|
24410
|
+
*
|
|
24411
|
+
* @see https://0.vuetifyjs.com/components/semantic/splitter
|
|
24412
|
+
*
|
|
24413
|
+
* @example
|
|
24414
|
+
* ```vue
|
|
24415
|
+
* <Splitter.Panel :default-size="50" :min-size="20" :max-size="80">
|
|
24416
|
+
* Panel content
|
|
24417
|
+
* </Splitter.Panel>
|
|
24418
|
+
* ```
|
|
24419
|
+
*/
|
|
24420
|
+
Panel: _sfc_main$136,
|
|
24421
|
+
/**
|
|
24422
|
+
* Draggable resize handle between two adjacent panels.
|
|
24423
|
+
*
|
|
24424
|
+
* @see https://0.vuetifyjs.com/components/semantic/splitter
|
|
24425
|
+
*
|
|
24426
|
+
* @example
|
|
24427
|
+
* ```vue
|
|
24428
|
+
* <Splitter.Handle label="Resize panels" />
|
|
24429
|
+
* ```
|
|
24430
|
+
*/
|
|
24431
|
+
Handle: _sfc_main$135
|
|
21417
24432
|
};
|
|
21418
24433
|
//#endregion
|
|
21419
24434
|
//#region src/components/Step/StepRoot.vue
|
|
21420
24435
|
const [useStepRoot, provideStepRoot] = createContext();
|
|
21421
|
-
const _sfc_main$
|
|
24436
|
+
const _sfc_main$139 = /* @__PURE__ */ defineComponent({
|
|
21422
24437
|
name: "StepRoot",
|
|
21423
24438
|
__name: "StepRoot",
|
|
21424
24439
|
props: /* @__PURE__ */ mergeModels({
|
|
@@ -21469,7 +24484,7 @@ const _sfc_main$136 = /* @__PURE__ */ defineComponent({
|
|
|
21469
24484
|
});
|
|
21470
24485
|
//#endregion
|
|
21471
24486
|
//#region src/components/Step/StepItem.vue
|
|
21472
|
-
const _sfc_main$
|
|
24487
|
+
const _sfc_main$138 = /* @__PURE__ */ defineComponent({
|
|
21473
24488
|
name: "StepItem",
|
|
21474
24489
|
__name: "StepItem",
|
|
21475
24490
|
props: {
|
|
@@ -21520,13 +24535,53 @@ const _sfc_main$135 = /* @__PURE__ */ defineComponent({
|
|
|
21520
24535
|
* @see https://0.vuetifyjs.com/components/providers/step
|
|
21521
24536
|
*/
|
|
21522
24537
|
const Step = {
|
|
21523
|
-
|
|
21524
|
-
|
|
24538
|
+
/**
|
|
24539
|
+
* Root component for step navigation.
|
|
24540
|
+
*
|
|
24541
|
+
* @see https://0.vuetifyjs.com/components/providers/step
|
|
24542
|
+
*
|
|
24543
|
+
* @example
|
|
24544
|
+
* ```vue
|
|
24545
|
+
* <script lang="ts" setup>
|
|
24546
|
+
* import { Step } from '@vuetify/v0'
|
|
24547
|
+
* <\/script>
|
|
24548
|
+
*
|
|
24549
|
+
* <template>
|
|
24550
|
+
* <Step.Root>
|
|
24551
|
+
* <Step.Item value="account">Account</Step.Item>
|
|
24552
|
+
*
|
|
24553
|
+
* <Step.Item value="profile">Profile</Step.Item>
|
|
24554
|
+
*
|
|
24555
|
+
* <Step.Item value="review">Review</Step.Item>
|
|
24556
|
+
* </Step.Root>
|
|
24557
|
+
* </template>
|
|
24558
|
+
* ```
|
|
24559
|
+
*/
|
|
24560
|
+
Root: _sfc_main$139,
|
|
24561
|
+
/**
|
|
24562
|
+
* Component representing a single step item.
|
|
24563
|
+
*
|
|
24564
|
+
* @see https://0.vuetifyjs.com/components/providers/step
|
|
24565
|
+
*
|
|
24566
|
+
* @example
|
|
24567
|
+
* ```vue
|
|
24568
|
+
* <script lang="ts" setup>
|
|
24569
|
+
* import { Step } from '@vuetify/v0'
|
|
24570
|
+
* <\/script>
|
|
24571
|
+
*
|
|
24572
|
+
* <template>
|
|
24573
|
+
* <Step.Item value="account">
|
|
24574
|
+
* Account Setup
|
|
24575
|
+
* </Step.Item>
|
|
24576
|
+
* </template>
|
|
24577
|
+
* ```
|
|
24578
|
+
*/
|
|
24579
|
+
Item: _sfc_main$138
|
|
21525
24580
|
};
|
|
21526
24581
|
//#endregion
|
|
21527
24582
|
//#region src/components/Switch/SwitchGroup.vue
|
|
21528
24583
|
const [useSwitchGroup, provideSwitchGroup] = createContext();
|
|
21529
|
-
const _sfc_main$
|
|
24584
|
+
const _sfc_main$140 = /* @__PURE__ */ defineComponent({
|
|
21530
24585
|
name: "SwitchGroup",
|
|
21531
24586
|
__name: "SwitchGroup",
|
|
21532
24587
|
props: /* @__PURE__ */ mergeModels({
|
|
@@ -21595,7 +24650,7 @@ const _sfc_main$137 = /* @__PURE__ */ defineComponent({
|
|
|
21595
24650
|
//#endregion
|
|
21596
24651
|
//#region src/components/Switch/SwitchRoot.vue
|
|
21597
24652
|
const [useSwitchRoot, provideSwitchRoot] = createContext();
|
|
21598
|
-
const _sfc_main$
|
|
24653
|
+
const _sfc_main$142 = /* @__PURE__ */ defineComponent({
|
|
21599
24654
|
name: "SwitchRoot",
|
|
21600
24655
|
inheritAttrs: false,
|
|
21601
24656
|
__name: "SwitchRoot",
|
|
@@ -21703,7 +24758,7 @@ const _sfc_main$139 = /* @__PURE__ */ defineComponent({
|
|
|
21703
24758
|
"type": __props.as === "button" ? "button" : void 0,
|
|
21704
24759
|
"role": "switch",
|
|
21705
24760
|
"aria-checked": isMixed.value ? "mixed" : isChecked.value,
|
|
21706
|
-
"aria-disabled": isDisabled.value
|
|
24761
|
+
"aria-disabled": isDisabled.value,
|
|
21707
24762
|
"aria-label": __props.label || void 0,
|
|
21708
24763
|
"aria-labelledby": __props.ariaLabelledby || void 0,
|
|
21709
24764
|
"aria-describedby": __props.ariaDescribedby || void 0,
|
|
@@ -21722,7 +24777,7 @@ const _sfc_main$139 = /* @__PURE__ */ defineComponent({
|
|
|
21722
24777
|
}), {
|
|
21723
24778
|
default: withCtx(() => [renderSlot(_ctx.$slots, "default", normalizeProps(guardReactiveProps(slotProps.value)))]),
|
|
21724
24779
|
_: 3
|
|
21725
|
-
}, 16, ["as", "renderless"]), __props.name ? (openBlock(), createBlock(_sfc_main$
|
|
24780
|
+
}, 16, ["as", "renderless"]), __props.name ? (openBlock(), createBlock(_sfc_main$141, { key: 0 })) : createCommentVNode("v-if", true)], 64);
|
|
21726
24781
|
};
|
|
21727
24782
|
}
|
|
21728
24783
|
});
|
|
@@ -21746,7 +24801,7 @@ const visuallyHiddenStyle = {
|
|
|
21746
24801
|
whiteSpace: "nowrap",
|
|
21747
24802
|
border: "0"
|
|
21748
24803
|
};
|
|
21749
|
-
const _sfc_main$
|
|
24804
|
+
const _sfc_main$141 = /* @__PURE__ */ defineComponent({
|
|
21750
24805
|
name: "SwitchHiddenInput",
|
|
21751
24806
|
__name: "SwitchHiddenInput",
|
|
21752
24807
|
props: {
|
|
@@ -21784,7 +24839,7 @@ const _sfc_main$138 = /* @__PURE__ */ defineComponent({
|
|
|
21784
24839
|
});
|
|
21785
24840
|
//#endregion
|
|
21786
24841
|
//#region src/components/Switch/SwitchSelectAll.vue
|
|
21787
|
-
const _sfc_main$
|
|
24842
|
+
const _sfc_main$143 = /* @__PURE__ */ defineComponent({
|
|
21788
24843
|
name: "SwitchSelectAll",
|
|
21789
24844
|
inheritAttrs: false,
|
|
21790
24845
|
__name: "SwitchSelectAll",
|
|
@@ -21844,7 +24899,7 @@ const _sfc_main$140 = /* @__PURE__ */ defineComponent({
|
|
|
21844
24899
|
"type": __props.as === "button" ? "button" : void 0,
|
|
21845
24900
|
"role": "switch",
|
|
21846
24901
|
"aria-checked": isMixed.value ? "mixed" : isAllSelected.value,
|
|
21847
|
-
"aria-disabled": isDisabled.value
|
|
24902
|
+
"aria-disabled": isDisabled.value,
|
|
21848
24903
|
"aria-label": __props.label || void 0,
|
|
21849
24904
|
"aria-labelledby": __props.ariaLabelledby || void 0,
|
|
21850
24905
|
"aria-describedby": __props.ariaDescribedby || void 0,
|
|
@@ -21868,7 +24923,7 @@ const _sfc_main$140 = /* @__PURE__ */ defineComponent({
|
|
|
21868
24923
|
});
|
|
21869
24924
|
//#endregion
|
|
21870
24925
|
//#region src/components/Switch/SwitchThumb.vue
|
|
21871
|
-
const _sfc_main$
|
|
24926
|
+
const _sfc_main$144 = /* @__PURE__ */ defineComponent({
|
|
21872
24927
|
name: "SwitchThumb",
|
|
21873
24928
|
__name: "SwitchThumb",
|
|
21874
24929
|
props: {
|
|
@@ -21903,7 +24958,7 @@ const _sfc_main$141 = /* @__PURE__ */ defineComponent({
|
|
|
21903
24958
|
});
|
|
21904
24959
|
//#endregion
|
|
21905
24960
|
//#region src/components/Switch/SwitchTrack.vue
|
|
21906
|
-
const _sfc_main$
|
|
24961
|
+
const _sfc_main$145 = /* @__PURE__ */ defineComponent({
|
|
21907
24962
|
name: "SwitchTrack",
|
|
21908
24963
|
__name: "SwitchTrack",
|
|
21909
24964
|
props: {
|
|
@@ -21962,17 +25017,174 @@ const _sfc_main$142 = /* @__PURE__ */ defineComponent({
|
|
|
21962
25017
|
* ```
|
|
21963
25018
|
*/
|
|
21964
25019
|
const Switch = {
|
|
21965
|
-
|
|
21966
|
-
|
|
21967
|
-
|
|
21968
|
-
|
|
21969
|
-
|
|
21970
|
-
|
|
25020
|
+
/**
|
|
25021
|
+
* Group component for managing multiple switches with tri-state support.
|
|
25022
|
+
*
|
|
25023
|
+
* @see https://0.vuetifyjs.com/components/forms/switch
|
|
25024
|
+
*
|
|
25025
|
+
* @example
|
|
25026
|
+
* ```vue
|
|
25027
|
+
* <script setup lang="ts">
|
|
25028
|
+
* import { Switch } from '@vuetify/v0'
|
|
25029
|
+
* import { ref } from 'vue'
|
|
25030
|
+
*
|
|
25031
|
+
* const selected = ref<string[]>([])
|
|
25032
|
+
* <\/script>
|
|
25033
|
+
*
|
|
25034
|
+
* <template>
|
|
25035
|
+
* <Switch.Group v-model="selected">
|
|
25036
|
+
* <label>
|
|
25037
|
+
* <Switch.Root value="a">
|
|
25038
|
+
* <Switch.Track><Switch.Thumb /></Switch.Track>
|
|
25039
|
+
* </Switch.Root>
|
|
25040
|
+
* Option A
|
|
25041
|
+
* </label>
|
|
25042
|
+
* <label>
|
|
25043
|
+
* <Switch.Root value="b">
|
|
25044
|
+
* <Switch.Track><Switch.Thumb /></Switch.Track>
|
|
25045
|
+
* </Switch.Root>
|
|
25046
|
+
* Option B
|
|
25047
|
+
* </label>
|
|
25048
|
+
* </Switch.Group>
|
|
25049
|
+
* </template>
|
|
25050
|
+
* ```
|
|
25051
|
+
*/
|
|
25052
|
+
Group: _sfc_main$140,
|
|
25053
|
+
/**
|
|
25054
|
+
* Hidden input component for form submission.
|
|
25055
|
+
*
|
|
25056
|
+
* Auto-rendered by Root when `name` prop is provided.
|
|
25057
|
+
* Can also be used explicitly for custom form integration.
|
|
25058
|
+
*
|
|
25059
|
+
* @see https://0.vuetifyjs.com/components/forms/switch
|
|
25060
|
+
*
|
|
25061
|
+
* @example
|
|
25062
|
+
* ```vue
|
|
25063
|
+
* <script setup lang="ts">
|
|
25064
|
+
* import { Switch } from '@vuetify/v0'
|
|
25065
|
+
* <\/script>
|
|
25066
|
+
*
|
|
25067
|
+
* <template>
|
|
25068
|
+
* <Switch.Root>
|
|
25069
|
+
* <Switch.Track><Switch.Thumb /></Switch.Track>
|
|
25070
|
+
* <Switch.HiddenInput name="notifications" value="on" />
|
|
25071
|
+
* </Switch.Root>
|
|
25072
|
+
* </template>
|
|
25073
|
+
* ```
|
|
25074
|
+
*/
|
|
25075
|
+
HiddenInput: _sfc_main$141,
|
|
25076
|
+
/**
|
|
25077
|
+
* Root component for individual switches.
|
|
25078
|
+
*
|
|
25079
|
+
* Renders as a button with `role="switch"` and proper ARIA attributes.
|
|
25080
|
+
* Handles click/keyboard interactions. Supports standalone mode with
|
|
25081
|
+
* v-model or group mode within Switch.Group. When `name` prop is
|
|
25082
|
+
* provided, automatically renders a hidden input for form submission.
|
|
25083
|
+
*
|
|
25084
|
+
* @see https://0.vuetifyjs.com/components/forms/switch
|
|
25085
|
+
*
|
|
25086
|
+
* @example
|
|
25087
|
+
* ```vue
|
|
25088
|
+
* <script setup lang="ts">
|
|
25089
|
+
* import { Switch } from '@vuetify/v0'
|
|
25090
|
+
* import { ref } from 'vue'
|
|
25091
|
+
*
|
|
25092
|
+
* const enabled = ref(false)
|
|
25093
|
+
* <\/script>
|
|
25094
|
+
*
|
|
25095
|
+
* <template>
|
|
25096
|
+
* <label>
|
|
25097
|
+
* <Switch.Root v-model="enabled">
|
|
25098
|
+
* <Switch.Track>
|
|
25099
|
+
* <Switch.Thumb />
|
|
25100
|
+
* </Switch.Track>
|
|
25101
|
+
* </Switch.Root>
|
|
25102
|
+
* Enable notifications
|
|
25103
|
+
* </label>
|
|
25104
|
+
* </template>
|
|
25105
|
+
* ```
|
|
25106
|
+
*/
|
|
25107
|
+
Root: _sfc_main$142,
|
|
25108
|
+
/**
|
|
25109
|
+
* Select-all toggle for group multi-selection.
|
|
25110
|
+
*
|
|
25111
|
+
* Binds to parent Switch.Group's aggregate state. Reflects
|
|
25112
|
+
* isAllSelected/isMixed and calls toggleAll on click. Does NOT
|
|
25113
|
+
* register as a group item. Must be used within a Switch.Group.
|
|
25114
|
+
*
|
|
25115
|
+
* @see https://0.vuetifyjs.com/components/forms/switch
|
|
25116
|
+
*
|
|
25117
|
+
* @example
|
|
25118
|
+
* ```vue
|
|
25119
|
+
* <script setup lang="ts">
|
|
25120
|
+
* import { Switch } from '@vuetify/v0'
|
|
25121
|
+
* import { ref } from 'vue'
|
|
25122
|
+
*
|
|
25123
|
+
* const selected = ref<string[]>([])
|
|
25124
|
+
* <\/script>
|
|
25125
|
+
*
|
|
25126
|
+
* <template>
|
|
25127
|
+
* <Switch.Group v-model="selected">
|
|
25128
|
+
* <label>
|
|
25129
|
+
* <Switch.SelectAll label="Toggle all">
|
|
25130
|
+
* <Switch.Track><Switch.Thumb /></Switch.Track>
|
|
25131
|
+
* </Switch.SelectAll>
|
|
25132
|
+
* Select all
|
|
25133
|
+
* </label>
|
|
25134
|
+
*
|
|
25135
|
+
* <label>
|
|
25136
|
+
* <Switch.Root value="a">
|
|
25137
|
+
* <Switch.Track><Switch.Thumb /></Switch.Track>
|
|
25138
|
+
* </Switch.Root>
|
|
25139
|
+
* Option A
|
|
25140
|
+
* </label>
|
|
25141
|
+
* </Switch.Group>
|
|
25142
|
+
* </template>
|
|
25143
|
+
* ```
|
|
25144
|
+
*/
|
|
25145
|
+
SelectAll: _sfc_main$143,
|
|
25146
|
+
/**
|
|
25147
|
+
* Sliding knob indicator for switches.
|
|
25148
|
+
*
|
|
25149
|
+
* Renders as a span with `data-state` attribute for CSS styling.
|
|
25150
|
+
* Hidden via `visibility: hidden` when unchecked and not mixed.
|
|
25151
|
+
* Must be used within a Switch.Root or Switch.SelectAll.
|
|
25152
|
+
*
|
|
25153
|
+
* @see https://0.vuetifyjs.com/components/forms/switch
|
|
25154
|
+
*
|
|
25155
|
+
* @example
|
|
25156
|
+
* ```vue
|
|
25157
|
+
* <Switch.Root v-model="enabled">
|
|
25158
|
+
* <Switch.Track>
|
|
25159
|
+
* <Switch.Thumb />
|
|
25160
|
+
* </Switch.Track>
|
|
25161
|
+
* </Switch.Root>
|
|
25162
|
+
* ```
|
|
25163
|
+
*/
|
|
25164
|
+
Thumb: _sfc_main$144,
|
|
25165
|
+
/**
|
|
25166
|
+
* Track/rail component for switches.
|
|
25167
|
+
*
|
|
25168
|
+
* Always visible, provides `data-state` attribute for CSS styling.
|
|
25169
|
+
* Must be used within a Switch.Root or Switch.SelectAll.
|
|
25170
|
+
*
|
|
25171
|
+
* @see https://0.vuetifyjs.com/components/forms/switch
|
|
25172
|
+
*
|
|
25173
|
+
* @example
|
|
25174
|
+
* ```vue
|
|
25175
|
+
* <Switch.Root v-model="enabled">
|
|
25176
|
+
* <Switch.Track>
|
|
25177
|
+
* <Switch.Thumb />
|
|
25178
|
+
* </Switch.Track>
|
|
25179
|
+
* </Switch.Root>
|
|
25180
|
+
* ```
|
|
25181
|
+
*/
|
|
25182
|
+
Track: _sfc_main$145
|
|
21971
25183
|
};
|
|
21972
25184
|
//#endregion
|
|
21973
25185
|
//#region src/components/Tabs/TabsRoot.vue
|
|
21974
25186
|
const [useTabsRoot, provideTabsRoot] = createContext();
|
|
21975
|
-
const _sfc_main$
|
|
25187
|
+
const _sfc_main$149 = /* @__PURE__ */ defineComponent({
|
|
21976
25188
|
name: "TabsRoot",
|
|
21977
25189
|
__name: "TabsRoot",
|
|
21978
25190
|
props: /* @__PURE__ */ mergeModels({
|
|
@@ -22040,7 +25252,7 @@ const _sfc_main$146 = /* @__PURE__ */ defineComponent({
|
|
|
22040
25252
|
});
|
|
22041
25253
|
//#endregion
|
|
22042
25254
|
//#region src/components/Tabs/TabsList.vue
|
|
22043
|
-
const _sfc_main$
|
|
25255
|
+
const _sfc_main$147 = /* @__PURE__ */ defineComponent({
|
|
22044
25256
|
name: "TabsList",
|
|
22045
25257
|
inheritAttrs: false,
|
|
22046
25258
|
__name: "TabsList",
|
|
@@ -22061,7 +25273,7 @@ const _sfc_main$144 = /* @__PURE__ */ defineComponent({
|
|
|
22061
25273
|
"role": "tablist",
|
|
22062
25274
|
"aria-orientation": tabs.orientation.value,
|
|
22063
25275
|
"aria-label": __props.label,
|
|
22064
|
-
"aria-disabled": isDisabled.value
|
|
25276
|
+
"aria-disabled": isDisabled.value,
|
|
22065
25277
|
"data-disabled": isDisabled.value || void 0
|
|
22066
25278
|
}
|
|
22067
25279
|
}));
|
|
@@ -22078,7 +25290,7 @@ const _sfc_main$144 = /* @__PURE__ */ defineComponent({
|
|
|
22078
25290
|
});
|
|
22079
25291
|
//#endregion
|
|
22080
25292
|
//#region src/components/Tabs/TabsItem.vue
|
|
22081
|
-
const _sfc_main$
|
|
25293
|
+
const _sfc_main$146 = /* @__PURE__ */ defineComponent({
|
|
22082
25294
|
name: "TabsItem",
|
|
22083
25295
|
inheritAttrs: false,
|
|
22084
25296
|
__name: "TabsItem",
|
|
@@ -22097,7 +25309,7 @@ const _sfc_main$143 = /* @__PURE__ */ defineComponent({
|
|
|
22097
25309
|
const attrs = useAttrs();
|
|
22098
25310
|
const rootRef = useTemplateRef("root");
|
|
22099
25311
|
const tabs = useTabsRoot(__props.namespace);
|
|
22100
|
-
const el = toRef(() => rootRef.value?.element ?? void 0);
|
|
25312
|
+
const el = toRef(() => /* @__PURE__ */ toElement(rootRef.value?.element) ?? void 0);
|
|
22101
25313
|
const ticket = tabs.register({
|
|
22102
25314
|
id: __props.id,
|
|
22103
25315
|
value: __props.value,
|
|
@@ -22200,7 +25412,7 @@ const _sfc_main$143 = /* @__PURE__ */ defineComponent({
|
|
|
22200
25412
|
"tabindex": toValue(ticket.isSelected) ? 0 : -1,
|
|
22201
25413
|
"aria-selected": toValue(ticket.isSelected),
|
|
22202
25414
|
"aria-controls": panelId.value,
|
|
22203
|
-
"aria-disabled": toValue(isDisabled)
|
|
25415
|
+
"aria-disabled": toValue(isDisabled),
|
|
22204
25416
|
"aria-label": __props.ariaLabel,
|
|
22205
25417
|
"aria-labelledby": __props.ariaLabelledby,
|
|
22206
25418
|
"aria-describedby": __props.ariaDescribedby,
|
|
@@ -22226,7 +25438,7 @@ const _sfc_main$143 = /* @__PURE__ */ defineComponent({
|
|
|
22226
25438
|
});
|
|
22227
25439
|
//#endregion
|
|
22228
25440
|
//#region src/components/Tabs/TabsPanel.vue
|
|
22229
|
-
const _sfc_main$
|
|
25441
|
+
const _sfc_main$148 = /* @__PURE__ */ defineComponent({
|
|
22230
25442
|
name: "TabsPanel",
|
|
22231
25443
|
inheritAttrs: false,
|
|
22232
25444
|
__name: "TabsPanel",
|
|
@@ -22304,14 +25516,34 @@ const _sfc_main$145 = /* @__PURE__ */ defineComponent({
|
|
|
22304
25516
|
* ```
|
|
22305
25517
|
*/
|
|
22306
25518
|
const Tabs = {
|
|
22307
|
-
|
|
22308
|
-
|
|
22309
|
-
|
|
22310
|
-
|
|
25519
|
+
/**
|
|
25520
|
+
* Root component that provides tabs context.
|
|
25521
|
+
*
|
|
25522
|
+
* @see https://0.vuetifyjs.com/components/disclosure/tabs
|
|
25523
|
+
*/
|
|
25524
|
+
Root: _sfc_main$149,
|
|
25525
|
+
/**
|
|
25526
|
+
* Container for tab triggers with tablist role.
|
|
25527
|
+
*
|
|
25528
|
+
* @see https://0.vuetifyjs.com/components/disclosure/tabs
|
|
25529
|
+
*/
|
|
25530
|
+
List: _sfc_main$147,
|
|
25531
|
+
/**
|
|
25532
|
+
* Individual tab trigger.
|
|
25533
|
+
*
|
|
25534
|
+
* @see https://0.vuetifyjs.com/components/disclosure/tabs
|
|
25535
|
+
*/
|
|
25536
|
+
Item: _sfc_main$146,
|
|
25537
|
+
/**
|
|
25538
|
+
* Content panel associated with a tab.
|
|
25539
|
+
*
|
|
25540
|
+
* @see https://0.vuetifyjs.com/components/disclosure/tabs
|
|
25541
|
+
*/
|
|
25542
|
+
Panel: _sfc_main$148
|
|
22311
25543
|
};
|
|
22312
25544
|
//#endregion
|
|
22313
25545
|
//#region src/components/Theme/Theme.vue
|
|
22314
|
-
const _sfc_main$
|
|
25546
|
+
const _sfc_main$150 = /* @__PURE__ */ defineComponent({
|
|
22315
25547
|
name: "Theme",
|
|
22316
25548
|
inheritAttrs: false,
|
|
22317
25549
|
__name: "Theme",
|
|
@@ -22371,7 +25603,7 @@ const _sfc_main$147 = /* @__PURE__ */ defineComponent({
|
|
|
22371
25603
|
//#endregion
|
|
22372
25604
|
//#region src/components/Toggle/ToggleGroup.vue
|
|
22373
25605
|
const [useToggleGroup, provideToggleGroup] = createContext();
|
|
22374
|
-
const _sfc_main$
|
|
25606
|
+
const _sfc_main$151 = /* @__PURE__ */ defineComponent({
|
|
22375
25607
|
name: "ToggleGroup",
|
|
22376
25608
|
__name: "ToggleGroup",
|
|
22377
25609
|
props: /* @__PURE__ */ mergeModels({
|
|
@@ -22418,7 +25650,7 @@ const _sfc_main$148 = /* @__PURE__ */ defineComponent({
|
|
|
22418
25650
|
attrs: {
|
|
22419
25651
|
"role": "group",
|
|
22420
25652
|
"aria-orientation": __props.orientation,
|
|
22421
|
-
"aria-disabled": __props.disabled
|
|
25653
|
+
"aria-disabled": __props.disabled,
|
|
22422
25654
|
"data-orientation": __props.orientation,
|
|
22423
25655
|
"data-disabled": __props.disabled ? true : void 0
|
|
22424
25656
|
}
|
|
@@ -22437,7 +25669,7 @@ const _sfc_main$148 = /* @__PURE__ */ defineComponent({
|
|
|
22437
25669
|
//#endregion
|
|
22438
25670
|
//#region src/components/Toggle/ToggleRoot.vue
|
|
22439
25671
|
const [useToggleRoot, provideToggleRoot] = createContext();
|
|
22440
|
-
const _sfc_main$
|
|
25672
|
+
const _sfc_main$153 = /* @__PURE__ */ defineComponent({
|
|
22441
25673
|
name: "ToggleRoot",
|
|
22442
25674
|
inheritAttrs: false,
|
|
22443
25675
|
__name: "ToggleRoot",
|
|
@@ -22507,7 +25739,7 @@ const _sfc_main$150 = /* @__PURE__ */ defineComponent({
|
|
|
22507
25739
|
attrs: {
|
|
22508
25740
|
"type": __props.as === "button" ? "button" : void 0,
|
|
22509
25741
|
"aria-pressed": isPressed.value,
|
|
22510
|
-
"aria-disabled": isDisabled.value
|
|
25742
|
+
"aria-disabled": isDisabled.value,
|
|
22511
25743
|
"tabindex": isDisabled.value ? void 0 : 0,
|
|
22512
25744
|
"data-state": isPressed.value ? "on" : "off",
|
|
22513
25745
|
"data-disabled": isDisabled.value ? true : void 0
|
|
@@ -22528,7 +25760,7 @@ const _sfc_main$150 = /* @__PURE__ */ defineComponent({
|
|
|
22528
25760
|
});
|
|
22529
25761
|
//#endregion
|
|
22530
25762
|
//#region src/components/Toggle/ToggleIndicator.vue
|
|
22531
|
-
const _sfc_main$
|
|
25763
|
+
const _sfc_main$152 = /* @__PURE__ */ defineComponent({
|
|
22532
25764
|
name: "ToggleIndicator",
|
|
22533
25765
|
__name: "ToggleIndicator",
|
|
22534
25766
|
props: {
|
|
@@ -22579,14 +25811,80 @@ const _sfc_main$149 = /* @__PURE__ */ defineComponent({
|
|
|
22579
25811
|
* ```
|
|
22580
25812
|
*/
|
|
22581
25813
|
const Toggle = {
|
|
22582
|
-
|
|
22583
|
-
|
|
22584
|
-
|
|
25814
|
+
/**
|
|
25815
|
+
* Group container managing selection across child Toggle.Root components.
|
|
25816
|
+
*
|
|
25817
|
+
* @see https://0.vuetifyjs.com/components/actions/toggle
|
|
25818
|
+
*
|
|
25819
|
+
* @example
|
|
25820
|
+
* ```vue
|
|
25821
|
+
* <script setup lang="ts">
|
|
25822
|
+
* import { Toggle } from '@vuetify/v0'
|
|
25823
|
+
* import { ref } from 'vue'
|
|
25824
|
+
*
|
|
25825
|
+
* const alignment = ref('left')
|
|
25826
|
+
* <\/script>
|
|
25827
|
+
*
|
|
25828
|
+
* <template>
|
|
25829
|
+
* <Toggle.Group v-model="alignment">
|
|
25830
|
+
* <Toggle.Root value="left">Left</Toggle.Root>
|
|
25831
|
+
* <Toggle.Root value="center">Center</Toggle.Root>
|
|
25832
|
+
* <Toggle.Root value="right">Right</Toggle.Root>
|
|
25833
|
+
* </Toggle.Group>
|
|
25834
|
+
* </template>
|
|
25835
|
+
* ```
|
|
25836
|
+
*/
|
|
25837
|
+
Group: _sfc_main$151,
|
|
25838
|
+
/**
|
|
25839
|
+
* Visual indicator for the pressed state.
|
|
25840
|
+
*
|
|
25841
|
+
* Renders as a span and only displays when pressed.
|
|
25842
|
+
* Must be used within a Toggle.Root component.
|
|
25843
|
+
*
|
|
25844
|
+
* @see https://0.vuetifyjs.com/components/actions/toggle
|
|
25845
|
+
*
|
|
25846
|
+
* @example
|
|
25847
|
+
* ```vue
|
|
25848
|
+
* <script setup lang="ts">
|
|
25849
|
+
* import { Toggle } from '@vuetify/v0'
|
|
25850
|
+
* <\/script>
|
|
25851
|
+
*
|
|
25852
|
+
* <template>
|
|
25853
|
+
* <Toggle.Root>
|
|
25854
|
+
* <Toggle.Indicator>✓</Toggle.Indicator>
|
|
25855
|
+
* </Toggle.Root>
|
|
25856
|
+
* </template>
|
|
25857
|
+
* ```
|
|
25858
|
+
*/
|
|
25859
|
+
Indicator: _sfc_main$152,
|
|
25860
|
+
/**
|
|
25861
|
+
* Pressable toggle button with on/off state.
|
|
25862
|
+
*
|
|
25863
|
+
* Supports standalone mode with v-model (boolean) or group mode
|
|
25864
|
+
* within Toggle.Group where pressed state is derived from selection.
|
|
25865
|
+
*
|
|
25866
|
+
* @see https://0.vuetifyjs.com/components/actions/toggle
|
|
25867
|
+
*
|
|
25868
|
+
* @example
|
|
25869
|
+
* ```vue
|
|
25870
|
+
* <script setup lang="ts">
|
|
25871
|
+
* import { Toggle } from '@vuetify/v0'
|
|
25872
|
+
* import { ref } from 'vue'
|
|
25873
|
+
*
|
|
25874
|
+
* const bold = ref(false)
|
|
25875
|
+
* <\/script>
|
|
25876
|
+
*
|
|
25877
|
+
* <template>
|
|
25878
|
+
* <Toggle.Root v-model="bold">Bold</Toggle.Root>
|
|
25879
|
+
* </template>
|
|
25880
|
+
* ```
|
|
25881
|
+
*/
|
|
25882
|
+
Root: _sfc_main$153
|
|
22585
25883
|
};
|
|
22586
25884
|
//#endregion
|
|
22587
25885
|
//#region src/components/Treeview/TreeviewRoot.vue
|
|
22588
25886
|
const [useTreeviewRoot, provideTreeviewRoot] = createContext();
|
|
22589
|
-
const _sfc_main$
|
|
25887
|
+
const _sfc_main$162 = /* @__PURE__ */ defineComponent({
|
|
22590
25888
|
name: "TreeviewRoot",
|
|
22591
25889
|
__name: "TreeviewRoot",
|
|
22592
25890
|
props: /* @__PURE__ */ mergeModels({
|
|
@@ -22660,7 +25958,7 @@ const _sfc_main$159 = /* @__PURE__ */ defineComponent({
|
|
|
22660
25958
|
//#endregion
|
|
22661
25959
|
//#region src/components/Treeview/TreeviewList.vue
|
|
22662
25960
|
const [useTreeviewList, provideTreeviewList] = createContext({ suffix: "list" });
|
|
22663
|
-
const _sfc_main$
|
|
25961
|
+
const _sfc_main$161 = /* @__PURE__ */ defineComponent({
|
|
22664
25962
|
name: "TreeviewList",
|
|
22665
25963
|
__name: "TreeviewList",
|
|
22666
25964
|
props: {
|
|
@@ -22778,7 +26076,7 @@ const _sfc_main$158 = /* @__PURE__ */ defineComponent({
|
|
|
22778
26076
|
//#endregion
|
|
22779
26077
|
//#region src/components/Treeview/TreeviewItem.vue
|
|
22780
26078
|
const [useTreeviewItem, provideTreeviewItem] = createContext({ suffix: "item" });
|
|
22781
|
-
const _sfc_main$
|
|
26079
|
+
const _sfc_main$160 = /* @__PURE__ */ defineComponent({
|
|
22782
26080
|
name: "TreeviewItem",
|
|
22783
26081
|
__name: "TreeviewItem",
|
|
22784
26082
|
props: {
|
|
@@ -22792,7 +26090,7 @@ const _sfc_main$157 = /* @__PURE__ */ defineComponent({
|
|
|
22792
26090
|
setup(__props) {
|
|
22793
26091
|
const nested = useTreeviewRoot(__props.namespace);
|
|
22794
26092
|
const rootRef = useTemplateRef("root");
|
|
22795
|
-
const el = toRef(() => rootRef.value?.element ?? void 0);
|
|
26093
|
+
const el = toRef(() => /* @__PURE__ */ toElement(rootRef.value?.element) ?? void 0);
|
|
22796
26094
|
const parentId = useTreeviewItem(__props.namespace, null)?.ticket.id;
|
|
22797
26095
|
const ticket = nested.register({
|
|
22798
26096
|
id: __props.id,
|
|
@@ -22832,7 +26130,7 @@ const _sfc_main$157 = /* @__PURE__ */ defineComponent({
|
|
|
22832
26130
|
return (_ctx, _cache) => {
|
|
22833
26131
|
return openBlock(), createBlock(unref(_sfc_main$9), {
|
|
22834
26132
|
ref: "root",
|
|
22835
|
-
"aria-disabled": slotProps.value.isDisabled
|
|
26133
|
+
"aria-disabled": slotProps.value.isDisabled,
|
|
22836
26134
|
"aria-expanded": hasContent.value ? slotProps.value.isOpen : void 0,
|
|
22837
26135
|
"aria-level": slotProps.value.depth + 1,
|
|
22838
26136
|
"aria-posinset": unref(ticket).position(),
|
|
@@ -22871,7 +26169,7 @@ const _sfc_main$157 = /* @__PURE__ */ defineComponent({
|
|
|
22871
26169
|
});
|
|
22872
26170
|
//#endregion
|
|
22873
26171
|
//#region src/components/Treeview/TreeviewActivator.vue
|
|
22874
|
-
const _sfc_main$
|
|
26172
|
+
const _sfc_main$154 = /* @__PURE__ */ defineComponent({
|
|
22875
26173
|
name: "TreeviewActivator",
|
|
22876
26174
|
__name: "TreeviewActivator",
|
|
22877
26175
|
props: {
|
|
@@ -22889,7 +26187,7 @@ const _sfc_main$151 = /* @__PURE__ */ defineComponent({
|
|
|
22889
26187
|
attrs: {
|
|
22890
26188
|
"role": __props.as === "button" ? void 0 : "button",
|
|
22891
26189
|
"tabindex": -1,
|
|
22892
|
-
"aria-disabled": item.isDisabled.value
|
|
26190
|
+
"aria-disabled": item.isDisabled.value,
|
|
22893
26191
|
"data-disabled": item.isDisabled.value || void 0,
|
|
22894
26192
|
"data-open": toValue(item.ticket.isOpen) || void 0,
|
|
22895
26193
|
"disabled": __props.as === "button" ? item.isDisabled.value : void 0,
|
|
@@ -22910,7 +26208,7 @@ const _sfc_main$151 = /* @__PURE__ */ defineComponent({
|
|
|
22910
26208
|
});
|
|
22911
26209
|
//#endregion
|
|
22912
26210
|
//#region src/components/Treeview/TreeviewCheckbox.vue
|
|
22913
|
-
const _sfc_main$
|
|
26211
|
+
const _sfc_main$155 = /* @__PURE__ */ defineComponent({
|
|
22914
26212
|
name: "TreeviewCheckbox",
|
|
22915
26213
|
__name: "TreeviewCheckbox",
|
|
22916
26214
|
props: {
|
|
@@ -22930,7 +26228,7 @@ const _sfc_main$152 = /* @__PURE__ */ defineComponent({
|
|
|
22930
26228
|
attrs: {
|
|
22931
26229
|
"role": "checkbox",
|
|
22932
26230
|
"aria-checked": toValue(item.ticket.isMixed) ? "mixed" : toValue(item.ticket.isSelected),
|
|
22933
|
-
"aria-disabled": item.isDisabled.value
|
|
26231
|
+
"aria-disabled": item.isDisabled.value,
|
|
22934
26232
|
"tabindex": -1,
|
|
22935
26233
|
"data-selected": toValue(item.ticket.isSelected) || void 0,
|
|
22936
26234
|
"data-disabled": item.isDisabled.value || void 0,
|
|
@@ -22951,7 +26249,7 @@ const _sfc_main$152 = /* @__PURE__ */ defineComponent({
|
|
|
22951
26249
|
});
|
|
22952
26250
|
//#endregion
|
|
22953
26251
|
//#region src/components/Treeview/TreeviewContent.vue
|
|
22954
|
-
const _sfc_main$
|
|
26252
|
+
const _sfc_main$156 = /* @__PURE__ */ defineComponent({
|
|
22955
26253
|
name: "TreeviewContent",
|
|
22956
26254
|
__name: "TreeviewContent",
|
|
22957
26255
|
props: { namespace: { default: "v0:treeview" } },
|
|
@@ -22977,7 +26275,7 @@ const _sfc_main$153 = /* @__PURE__ */ defineComponent({
|
|
|
22977
26275
|
});
|
|
22978
26276
|
//#endregion
|
|
22979
26277
|
//#region src/components/Treeview/TreeviewCue.vue
|
|
22980
|
-
const _sfc_main$
|
|
26278
|
+
const _sfc_main$157 = /* @__PURE__ */ defineComponent({
|
|
22981
26279
|
name: "TreeviewCue",
|
|
22982
26280
|
__name: "TreeviewCue",
|
|
22983
26281
|
props: {
|
|
@@ -23011,7 +26309,7 @@ const _sfc_main$154 = /* @__PURE__ */ defineComponent({
|
|
|
23011
26309
|
});
|
|
23012
26310
|
//#endregion
|
|
23013
26311
|
//#region src/components/Treeview/TreeviewGroup.vue
|
|
23014
|
-
const _sfc_main$
|
|
26312
|
+
const _sfc_main$158 = /* @__PURE__ */ defineComponent({
|
|
23015
26313
|
name: "TreeviewGroup",
|
|
23016
26314
|
__name: "TreeviewGroup",
|
|
23017
26315
|
props: {
|
|
@@ -23033,7 +26331,7 @@ const _sfc_main$155 = /* @__PURE__ */ defineComponent({
|
|
|
23033
26331
|
});
|
|
23034
26332
|
//#endregion
|
|
23035
26333
|
//#region src/components/Treeview/TreeviewIndicator.vue
|
|
23036
|
-
const _sfc_main$
|
|
26334
|
+
const _sfc_main$159 = /* @__PURE__ */ defineComponent({
|
|
23037
26335
|
name: "TreeviewIndicator",
|
|
23038
26336
|
__name: "TreeviewIndicator",
|
|
23039
26337
|
props: {
|
|
@@ -23069,7 +26367,7 @@ const _sfc_main$156 = /* @__PURE__ */ defineComponent({
|
|
|
23069
26367
|
});
|
|
23070
26368
|
//#endregion
|
|
23071
26369
|
//#region src/components/Treeview/TreeviewSelectAll.vue
|
|
23072
|
-
const _sfc_main$
|
|
26370
|
+
const _sfc_main$163 = /* @__PURE__ */ defineComponent({
|
|
23073
26371
|
name: "TreeviewSelectAll",
|
|
23074
26372
|
__name: "TreeviewSelectAll",
|
|
23075
26373
|
props: {
|
|
@@ -23149,7 +26447,7 @@ const _sfc_main$160 = /* @__PURE__ */ defineComponent({
|
|
|
23149
26447
|
attrs: {
|
|
23150
26448
|
"role": "checkbox",
|
|
23151
26449
|
"aria-checked": isMixed.value ? "mixed" : isAllSelected.value,
|
|
23152
|
-
"aria-disabled": isDisabled.value
|
|
26450
|
+
"aria-disabled": isDisabled.value,
|
|
23153
26451
|
"aria-label": __props.label || void 0,
|
|
23154
26452
|
"tabindex": isDisabled.value ? void 0 : 0,
|
|
23155
26453
|
"data-state": state.value,
|
|
@@ -23201,16 +26499,166 @@ const _sfc_main$160 = /* @__PURE__ */ defineComponent({
|
|
|
23201
26499
|
* ```
|
|
23202
26500
|
*/
|
|
23203
26501
|
const Treeview = {
|
|
23204
|
-
|
|
23205
|
-
|
|
23206
|
-
|
|
23207
|
-
|
|
23208
|
-
|
|
23209
|
-
|
|
23210
|
-
|
|
23211
|
-
|
|
23212
|
-
|
|
23213
|
-
|
|
26502
|
+
/**
|
|
26503
|
+
* Root component that creates and provides the nested context.
|
|
26504
|
+
*
|
|
26505
|
+
* @see https://0.vuetifyjs.com/components/disclosure/treeview
|
|
26506
|
+
*
|
|
26507
|
+
* @example
|
|
26508
|
+
* ```vue
|
|
26509
|
+
* <script setup lang="ts">
|
|
26510
|
+
* import { Treeview } from '@vuetify/v0'
|
|
26511
|
+
* <\/script>
|
|
26512
|
+
*
|
|
26513
|
+
* <template>
|
|
26514
|
+
* <Treeview.Root v-model="selected" :multiple="true">
|
|
26515
|
+
* <Treeview.List>
|
|
26516
|
+
* <Treeview.Item value="a">Node A</Treeview.Item>
|
|
26517
|
+
* </Treeview.List>
|
|
26518
|
+
* </Treeview.Root>
|
|
26519
|
+
* </template>
|
|
26520
|
+
* ```
|
|
26521
|
+
*/
|
|
26522
|
+
Root: _sfc_main$162,
|
|
26523
|
+
/**
|
|
26524
|
+
* Top-level list container with `role="tree"` and `aria-multiselectable`.
|
|
26525
|
+
*
|
|
26526
|
+
* @see https://0.vuetifyjs.com/components/disclosure/treeview
|
|
26527
|
+
*
|
|
26528
|
+
* @example
|
|
26529
|
+
* ```vue
|
|
26530
|
+
* <Treeview.List label="File browser">
|
|
26531
|
+
* <Treeview.Item>...</Treeview.Item>
|
|
26532
|
+
* </Treeview.List>
|
|
26533
|
+
* ```
|
|
26534
|
+
*/
|
|
26535
|
+
List: _sfc_main$161,
|
|
26536
|
+
/**
|
|
26537
|
+
* Tree node with `role="treeitem"`. Registers with the nearest Root context
|
|
26538
|
+
* and auto-nests under the closest ancestor Item.
|
|
26539
|
+
*
|
|
26540
|
+
* @see https://0.vuetifyjs.com/components/disclosure/treeview
|
|
26541
|
+
*
|
|
26542
|
+
* @example
|
|
26543
|
+
* ```vue
|
|
26544
|
+
* <Treeview.Item id="docs" value="documents">
|
|
26545
|
+
* <Treeview.Activator>Documents</Treeview.Activator>
|
|
26546
|
+
* <Treeview.Content>
|
|
26547
|
+
* <Treeview.Group>
|
|
26548
|
+
* <Treeview.Item id="resume" value="resume.pdf">
|
|
26549
|
+
* <Treeview.Activator>Resume.pdf</Treeview.Activator>
|
|
26550
|
+
* </Treeview.Item>
|
|
26551
|
+
* </Treeview.Group>
|
|
26552
|
+
* </Treeview.Content>
|
|
26553
|
+
* </Treeview.Item>
|
|
26554
|
+
* ```
|
|
26555
|
+
*/
|
|
26556
|
+
Item: _sfc_main$160,
|
|
26557
|
+
/**
|
|
26558
|
+
* Click-to-toggle trigger for expand/collapse. Renders a button by default.
|
|
26559
|
+
*
|
|
26560
|
+
* @see https://0.vuetifyjs.com/components/disclosure/treeview
|
|
26561
|
+
*
|
|
26562
|
+
* @example
|
|
26563
|
+
* ```vue
|
|
26564
|
+
* <Treeview.Activator v-slot="{ isOpen }">
|
|
26565
|
+
* {{ isOpen ? '▼' : '▶' }} Documents
|
|
26566
|
+
* </Treeview.Activator>
|
|
26567
|
+
* ```
|
|
26568
|
+
*/
|
|
26569
|
+
Activator: _sfc_main$154,
|
|
26570
|
+
/**
|
|
26571
|
+
* Collapse gate for child nodes. Conditionally renders when the parent Item is open.
|
|
26572
|
+
*
|
|
26573
|
+
* @see https://0.vuetifyjs.com/components/disclosure/treeview
|
|
26574
|
+
*
|
|
26575
|
+
* @example
|
|
26576
|
+
* ```vue
|
|
26577
|
+
* <Treeview.Content>
|
|
26578
|
+
* <Treeview.Group>
|
|
26579
|
+
* <Treeview.Item>...</Treeview.Item>
|
|
26580
|
+
* </Treeview.Group>
|
|
26581
|
+
* </Treeview.Content>
|
|
26582
|
+
* ```
|
|
26583
|
+
*/
|
|
26584
|
+
Content: _sfc_main$156,
|
|
26585
|
+
/**
|
|
26586
|
+
* Visual cue for expand/collapse state. Hides itself on leaf nodes.
|
|
26587
|
+
* Exposes `data-state="open|closed"` for CSS-driven styling.
|
|
26588
|
+
*
|
|
26589
|
+
* @see https://0.vuetifyjs.com/components/disclosure/treeview
|
|
26590
|
+
*
|
|
26591
|
+
* @example
|
|
26592
|
+
* ```vue
|
|
26593
|
+
* <Treeview.Cue v-slot="{ attrs }">
|
|
26594
|
+
* <span v-bind="attrs">▶</span>
|
|
26595
|
+
* </Treeview.Cue>
|
|
26596
|
+
* ```
|
|
26597
|
+
*/
|
|
26598
|
+
Cue: _sfc_main$157,
|
|
26599
|
+
/**
|
|
26600
|
+
* Wrapper with `role="group"` for nested child items inside Content.
|
|
26601
|
+
*
|
|
26602
|
+
* @see https://0.vuetifyjs.com/components/disclosure/treeview
|
|
26603
|
+
*
|
|
26604
|
+
* @example
|
|
26605
|
+
* ```vue
|
|
26606
|
+
* <Treeview.Content>
|
|
26607
|
+
* <Treeview.Group>
|
|
26608
|
+
* <Treeview.Item>Child A</Treeview.Item>
|
|
26609
|
+
* <Treeview.Item>Child B</Treeview.Item>
|
|
26610
|
+
* </Treeview.Group>
|
|
26611
|
+
* </Treeview.Content>
|
|
26612
|
+
* ```
|
|
26613
|
+
*/
|
|
26614
|
+
Group: _sfc_main$158,
|
|
26615
|
+
/**
|
|
26616
|
+
* Tri-state checkbox for selection. Toggles selection on click
|
|
26617
|
+
* and shows mixed state for partially-selected parents.
|
|
26618
|
+
*
|
|
26619
|
+
* @see https://0.vuetifyjs.com/components/disclosure/treeview
|
|
26620
|
+
*
|
|
26621
|
+
* @example
|
|
26622
|
+
* ```vue
|
|
26623
|
+
* <Treeview.Checkbox v-slot="{ attrs, isSelected, isMixed }">
|
|
26624
|
+
* <span v-bind="attrs">{{ isMixed ? '−' : isSelected ? '✓' : '○' }}</span>
|
|
26625
|
+
* </Treeview.Checkbox>
|
|
26626
|
+
* ```
|
|
26627
|
+
*/
|
|
26628
|
+
Checkbox: _sfc_main$155,
|
|
26629
|
+
/**
|
|
26630
|
+
* Visual indicator for selection state. Shows checked, unchecked,
|
|
26631
|
+
* or indeterminate via `data-state`.
|
|
26632
|
+
*
|
|
26633
|
+
* @see https://0.vuetifyjs.com/components/disclosure/treeview
|
|
26634
|
+
*
|
|
26635
|
+
* @example
|
|
26636
|
+
* ```vue
|
|
26637
|
+
* <Treeview.Indicator v-slot="{ attrs }">
|
|
26638
|
+
* <span v-bind="attrs">●</span>
|
|
26639
|
+
* </Treeview.Indicator>
|
|
26640
|
+
* ```
|
|
26641
|
+
*/
|
|
26642
|
+
Indicator: _sfc_main$159,
|
|
26643
|
+
/**
|
|
26644
|
+
* Select all checkbox for tree-wide multi-selection.
|
|
26645
|
+
*
|
|
26646
|
+
* Binds to parent TreeviewRoot's aggregate state. Reflects
|
|
26647
|
+
* isAllSelected/isMixed and calls toggleAll on click. Does NOT
|
|
26648
|
+
* register as a tree item. Must be used within a Treeview.Root.
|
|
26649
|
+
*
|
|
26650
|
+
* @see https://0.vuetifyjs.com/components/disclosure/treeview
|
|
26651
|
+
*
|
|
26652
|
+
* @example
|
|
26653
|
+
* ```vue
|
|
26654
|
+
* <Treeview.SelectAll v-slot="{ attrs, isAllSelected, isMixed }">
|
|
26655
|
+
* <button v-bind="attrs">
|
|
26656
|
+
* {{ isMixed ? '−' : isAllSelected ? '✓' : '○' }} Select All
|
|
26657
|
+
* </button>
|
|
26658
|
+
* </Treeview.SelectAll>
|
|
26659
|
+
* ```
|
|
26660
|
+
*/
|
|
26661
|
+
SelectAll: _sfc_main$163
|
|
23214
26662
|
};
|
|
23215
26663
|
//#endregion
|
|
23216
|
-
export { AlertDialog, _sfc_main as AlertDialogAction, _sfc_main$1 as AlertDialogActivator, _sfc_main$2 as AlertDialogCancel, _sfc_main$3 as AlertDialogClose, _sfc_main$4 as AlertDialogContent, _sfc_main$5 as AlertDialogDescription, _sfc_main$6 as AlertDialogRoot, _sfc_main$7 as AlertDialogTitle, _sfc_main$8 as AspectRatio, _sfc_main$9 as Atom, Avatar, _sfc_main$10 as AvatarFallback, _sfc_main$11 as AvatarImage, _sfc_main$12 as AvatarRoot, Breadcrumbs, _sfc_main$13 as BreadcrumbsDivider, _sfc_main$14 as BreadcrumbsEllipsis, _sfc_main$15 as BreadcrumbsItem, _sfc_main$16 as BreadcrumbsLink, _sfc_main$17 as BreadcrumbsList, _sfc_main$18 as BreadcrumbsPage, _sfc_main$19 as BreadcrumbsRoot, Button, _sfc_main$20 as ButtonContent, _sfc_main$21 as ButtonGroup, _sfc_main$22 as ButtonHiddenInput, _sfc_main$23 as ButtonIcon, _sfc_main$24 as ButtonLoading, _sfc_main$25 as ButtonRoot, Carousel, _sfc_main$26 as CarouselIndicator, _sfc_main$27 as CarouselItem, _sfc_main$28 as CarouselLiveRegion, _sfc_main$29 as CarouselNext, _sfc_main$30 as CarouselPrevious, _sfc_main$31 as CarouselProgress, _sfc_main$32 as CarouselRoot, _sfc_main$33 as CarouselViewport, Checkbox, _sfc_main$34 as CheckboxGroup, _sfc_main$35 as CheckboxHiddenInput, _sfc_main$36 as CheckboxIndicator, _sfc_main$37 as CheckboxRoot, _sfc_main$38 as CheckboxSelectAll, ClientAdapter, Collapsible, _sfc_main$39 as CollapsibleActivator, _sfc_main$40 as CollapsibleContent, _sfc_main$41 as CollapsibleCue, _sfc_main$42 as CollapsibleRoot, Combobox, _sfc_main$43 as ComboboxActivator, ClientAdapter$1 as ComboboxClientAdapter, _sfc_main$44 as ComboboxContent, _sfc_main$45 as ComboboxControl, _sfc_main$46 as ComboboxCue, _sfc_main$47 as ComboboxDescription, _sfc_main$48 as ComboboxEmpty, _sfc_main$49 as ComboboxError, _sfc_main$50 as ComboboxItem, _sfc_main$51 as ComboboxRoot, ServerAdapter as ComboboxServerAdapter, ConsolaLoggerAdapter, DataTableAdapter, Dialog, _sfc_main$52 as DialogActivator, _sfc_main$53 as DialogClose, _sfc_main$54 as DialogContent, _sfc_main$55 as DialogDescription, _sfc_main$56 as DialogRoot, _sfc_main$57 as DialogTitle, ExpansionPanel, _sfc_main$58 as ExpansionPanelActivator, _sfc_main$59 as ExpansionPanelContent, _sfc_main$60 as ExpansionPanelCue, _sfc_main$61 as ExpansionPanelGroup, _sfc_main$62 as ExpansionPanelHeader, _sfc_main$63 as ExpansionPanelRoot, FeaturesAdapter, _sfc_main$64 as Form, Group, _sfc_main$65 as GroupItem, _sfc_main$66 as GroupRoot, IN_BROWSER, Image, _sfc_main$67 as ImageFallback, _sfc_main$68 as ImageImg, _sfc_main$69 as ImagePlaceholder, _sfc_main$70 as ImageRoot, Input, _sfc_main$71 as InputControl, _sfc_main$72 as InputDescription, _sfc_main$73 as InputError, _sfc_main$74 as InputRoot, _sfc_main$75 as Locale, MemoryAdapter, NumberField, _sfc_main$76 as NumberFieldControl, _sfc_main$77 as NumberFieldDecrement, _sfc_main$78 as NumberFieldDescription, _sfc_main$79 as NumberFieldError, _sfc_main$80 as NumberFieldIncrement, _sfc_main$81 as NumberFieldRoot, _sfc_main$82 as NumberFieldScrub, Pagination, _sfc_main$83 as PaginationEllipsis, _sfc_main$84 as PaginationFirst, _sfc_main$85 as PaginationItem, _sfc_main$86 as PaginationLast, _sfc_main$87 as PaginationNext, _sfc_main$88 as PaginationPrev, _sfc_main$89 as PaginationRoot, _sfc_main$90 as PaginationStatus, PermissionAdapter, PinoLoggerAdapter, Popover, _sfc_main$91 as PopoverActivator, _sfc_main$92 as PopoverContent, _sfc_main$93 as PopoverRoot, _sfc_main$94 as Portal, _sfc_main$95 as Presence, Progress, _sfc_main$96 as ProgressBuffer, _sfc_main$97 as ProgressFill, _sfc_main$98 as ProgressHiddenInput, _sfc_main$99 as ProgressLabel, _sfc_main$100 as ProgressRoot, _sfc_main$101 as ProgressTrack, _sfc_main$102 as ProgressValue, Radio, _sfc_main$103 as RadioGroup, _sfc_main$104 as RadioHiddenInput, _sfc_main$105 as RadioIndicator, _sfc_main$106 as RadioRoot, Rating, _sfc_main$107 as RatingHiddenInput, _sfc_main$108 as RatingItem, _sfc_main$109 as RatingRoot, SELF_CLOSING_TAGS, SUPPORTS_INTERSECTION_OBSERVER, SUPPORTS_MATCH_MEDIA, SUPPORTS_MUTATION_OBSERVER, SUPPORTS_OBSERVER, SUPPORTS_TOUCH, _sfc_main$110 as Scrim, Select, _sfc_main$111 as SelectActivator, _sfc_main$112 as SelectContent, _sfc_main$113 as SelectCue, _sfc_main$114 as SelectItem, _sfc_main$115 as SelectPlaceholder, _sfc_main$116 as SelectRoot, _sfc_main$117 as SelectValue, Selection, _sfc_main$118 as SelectionItem, _sfc_main$119 as SelectionRoot, ServerAdapter$1 as ServerAdapter, Single, _sfc_main$120 as SingleItem, _sfc_main$121 as SingleRoot, Slider, _sfc_main$122 as SliderHiddenInput, _sfc_main$123 as SliderRange, _sfc_main$124 as SliderRoot, _sfc_main$125 as SliderThumb, _sfc_main$126 as SliderTrack, Snackbar, _sfc_main$127 as SnackbarClose, _sfc_main$128 as SnackbarContent, _sfc_main$129 as SnackbarPortal, _sfc_main$130 as SnackbarQueue, _sfc_main$131 as SnackbarRoot, Splitter, _sfc_main$132 as SplitterHandle, _sfc_main$133 as SplitterPanel, _sfc_main$134 as SplitterRoot, Step, _sfc_main$135 as StepItem, _sfc_main$136 as StepRoot, Switch, _sfc_main$137 as SwitchGroup, _sfc_main$138 as SwitchHiddenInput, _sfc_main$139 as SwitchRoot, _sfc_main$140 as SwitchSelectAll, _sfc_main$141 as SwitchThumb, _sfc_main$142 as SwitchTrack, Tabs, _sfc_main$143 as TabsItem, _sfc_main$144 as TabsList, _sfc_main$145 as TabsPanel, _sfc_main$146 as TabsRoot, _sfc_main$147 as Theme, Toggle, _sfc_main$148 as ToggleGroup, _sfc_main$149 as ToggleIndicator, _sfc_main$150 as ToggleRoot, Treeview, _sfc_main$151 as TreeviewActivator, _sfc_main$152 as TreeviewCheckbox, _sfc_main$153 as TreeviewContent, _sfc_main$154 as TreeviewCue, _sfc_main$155 as TreeviewGroup, _sfc_main$156 as TreeviewIndicator, _sfc_main$157 as TreeviewItem, _sfc_main$158 as TreeviewList, _sfc_main$159 as TreeviewRoot, _sfc_main$160 as TreeviewSelectAll, V0StyleSheetThemeAdapter, V0UnheadThemeAdapter, VirtualAdapter, Vuetify0LocaleAdapter, Vuetify0LoggerAdapter, Vuetify0RtlAdapter, __LOGGER_ENABLED__, apca, clamp, computeDepth, createBreadcrumbs, createBreadcrumbsContext, createBreakpoints, createBreakpointsContext, createBreakpointsPlugin, createCombobox, createComboboxContext, createContext, createDataTable, createDataTableContext, createDate, createDateContext, createDatePlugin, createFallbackHydration, createFeatures, createFeaturesContext, createFeaturesPlugin, createFilter, createFilterContext, createForm, createFormContext, createGroup, createGroupContext, createHydration, createHydrationContext, createHydrationPlugin, createInput, createLocale, createLocaleContext, createLocaleFallback, createLocalePlugin, createLogger, createLoggerContext, createLoggerPlugin, createModel, createNested, createNestedContext, createNotifications, createNotificationsContext, createNotificationsPlugin, createNumberField, createNumeric, createOverflow, createOverflowContext, createPagination, createPaginationContext, createPermissions, createPermissionsContext, createPermissionsPlugin, createPlugin, createPluginContext, createProgress, createProgressContext, createQueue, createQueueContext, createRating, createRatingContext, createRegistry, createRegistryContext, createRtl, createRtlContext, createRtlFallback, createRtlPlugin, createRules, createRulesContext, createRulesFallback, createRulesPlugin, createSelection, createSelectionContext, createSingle, createSingleContext, createSlider, createStack, createStackContext, createStackPlugin, createStep, createStepContext, createStorage, createStorageContext, createStoragePlugin, createTheme, createThemeContext, createThemePlugin, createTimeline, createTimelineContext, createTokens, createTokensContext, createTrinity, createValidation, createVirtual, createVirtualContext, extractLeaves, flatten, foreground, hexToRgb, instanceExists, instanceName, isArray, isBoolean, isElement, isFunction, isNaN, isNull, isNullOrUndefined, isNumber, isObject, isPrimitive, isSelfClosingTag, isStandardSchema, isString, isSymbol, isUndefined, mergeDeep, provideAlertDialogContext, provideAvatarRoot, provideBreadcrumbsRoot, provideButtonGroup, provideButtonRoot, provideCarouselRoot, provideCheckboxGroup, provideCheckboxRoot, provideCollapsible, provideComboboxContext, provideContext, provideDialogContext, provideExpansionPanelGroup, provideExpansionPanelRoot, provideGroupRoot, provideImageRoot, provideInputRoot, provideNumberFieldRoot, providePaginationControls, providePaginationItems, providePaginationRoot, providePopoverContext, provideProgressRoot, provideRadioGroup, provideRadioRoot, provideRatingRoot, provideSelectContext, provideSelectionRoot, provideSingleRoot, provideSliderRoot, provideSnackbarQueueContext, provideSnackbarRootContext, provideSplitterRoot, provideStepRoot, provideSwitchGroup, provideSwitchRoot, provideTabsRoot, provideToggleGroup, provideToggleRoot, provideTreeviewItem, provideTreeviewList, provideTreeviewRoot, range, resolveHeaders, resolveIds, resolveIndexes, rgbToHex, toArray, toElement, toReactive, useAlertDialogContext, useAvatarRoot, useBreadcrumbs, useBreadcrumbsRoot, useBreakpoints, useButtonGroup, useButtonRoot, useCarouselRoot, useCheckboxGroup, useCheckboxRoot, useClickOutside, useCollapsible, useCombobox, useComboboxContext, useContext, useDataTable, useDate, useDialogContext, useDocumentEventListener, useElementIntersection, useElementSize, useEventListener, useExpansionPanelGroup, useExpansionPanelRoot, useFeatures, useFilter, useForm, useGroup, useGroupRoot, useHotkey, useHydration, useId, useImage, useImageRoot, useInputRoot, useIntersectionObserver, useLazy, useLocale, useLogger, useMediaQuery, useMutationObserver, useNested, useNotifications, useNumberFieldRoot, useOverflow, usePagination, usePaginationControls, usePaginationItems, usePaginationRoot, usePermissions, usePopover, usePopoverContext, usePrefersContrast, usePrefersDark, usePrefersReducedMotion, usePresence, useProgress, useProgressRoot, useProxyModel, useProxyRegistry, useQueue, useRadioGroup, useRadioRoot, useRaf, useRating, useRatingRoot, useRegistry, useResizeObserver, useRovingFocus, useRtl, useRules, useSelectContext, useSelection, useSelectionRoot, useSingle, useSingleRoot, useSliderRoot, useSnackbarQueueContext, useSnackbarRootContext, useSplitterRoot, useStack, useStep, useStepRoot, useStorage, useSwitchGroup, useSwitchRoot, useTabsRoot, useTheme, useTimeline, useTimer, useToggleGroup, useToggleRoot, useToggleScope, useTokens, useTreeviewItem, useTreeviewList, useTreeviewRoot, useVirtual, useVirtualFocus, useWindowEventListener, version };
|
|
26664
|
+
export { AlertDialog, _sfc_main as AlertDialogAction, _sfc_main$1 as AlertDialogActivator, _sfc_main$2 as AlertDialogCancel, _sfc_main$3 as AlertDialogClose, _sfc_main$4 as AlertDialogContent, _sfc_main$5 as AlertDialogDescription, _sfc_main$6 as AlertDialogRoot, _sfc_main$7 as AlertDialogTitle, _sfc_main$8 as AspectRatio, _sfc_main$9 as Atom, Avatar, _sfc_main$10 as AvatarFallback, _sfc_main$11 as AvatarImage, _sfc_main$12 as AvatarRoot, Breadcrumbs, _sfc_main$13 as BreadcrumbsDivider, _sfc_main$14 as BreadcrumbsEllipsis, _sfc_main$15 as BreadcrumbsItem, _sfc_main$16 as BreadcrumbsLink, _sfc_main$17 as BreadcrumbsList, _sfc_main$18 as BreadcrumbsPage, _sfc_main$19 as BreadcrumbsRoot, Button, _sfc_main$20 as ButtonContent, _sfc_main$21 as ButtonGroup, _sfc_main$22 as ButtonHiddenInput, _sfc_main$23 as ButtonIcon, _sfc_main$24 as ButtonLoading, _sfc_main$25 as ButtonRoot, Carousel, _sfc_main$26 as CarouselIndicator, _sfc_main$27 as CarouselItem, _sfc_main$28 as CarouselLiveRegion, _sfc_main$29 as CarouselNext, _sfc_main$30 as CarouselPrevious, _sfc_main$31 as CarouselProgress, _sfc_main$32 as CarouselRoot, _sfc_main$33 as CarouselViewport, Checkbox, _sfc_main$34 as CheckboxGroup, _sfc_main$35 as CheckboxHiddenInput, _sfc_main$36 as CheckboxIndicator, _sfc_main$37 as CheckboxRoot, _sfc_main$38 as CheckboxSelectAll, ClientAdapter, Collapsible, _sfc_main$39 as CollapsibleActivator, _sfc_main$40 as CollapsibleContent, _sfc_main$41 as CollapsibleCue, _sfc_main$42 as CollapsibleRoot, Combobox, _sfc_main$43 as ComboboxActivator, ClientAdapter$1 as ComboboxClientAdapter, _sfc_main$44 as ComboboxContent, _sfc_main$45 as ComboboxControl, _sfc_main$46 as ComboboxCue, _sfc_main$47 as ComboboxDescription, _sfc_main$48 as ComboboxEmpty, _sfc_main$49 as ComboboxError, _sfc_main$50 as ComboboxItem, _sfc_main$51 as ComboboxRoot, ServerAdapter as ComboboxServerAdapter, ConsolaLoggerAdapter, DataTableAdapter, Dialog, _sfc_main$52 as DialogActivator, _sfc_main$53 as DialogClose, _sfc_main$54 as DialogContent, _sfc_main$55 as DialogDescription, _sfc_main$56 as DialogRoot, _sfc_main$57 as DialogTitle, ExpansionPanel, _sfc_main$58 as ExpansionPanelActivator, _sfc_main$59 as ExpansionPanelContent, _sfc_main$60 as ExpansionPanelCue, _sfc_main$61 as ExpansionPanelGroup, _sfc_main$62 as ExpansionPanelHeader, _sfc_main$63 as ExpansionPanelRoot, FeaturesAdapter, _sfc_main$64 as Form, Group, _sfc_main$65 as GroupItem, _sfc_main$66 as GroupRoot, IN_BROWSER, Image, _sfc_main$67 as ImageFallback, _sfc_main$68 as ImageImg, _sfc_main$69 as ImagePlaceholder, _sfc_main$70 as ImageRoot, Input, _sfc_main$71 as InputControl, _sfc_main$72 as InputDescription, _sfc_main$73 as InputError, _sfc_main$74 as InputRoot, _sfc_main$75 as Locale, MemoryAdapter, NumberField, _sfc_main$76 as NumberFieldControl, _sfc_main$77 as NumberFieldDecrement, _sfc_main$78 as NumberFieldDescription, _sfc_main$79 as NumberFieldError, _sfc_main$80 as NumberFieldIncrement, _sfc_main$81 as NumberFieldRoot, _sfc_main$82 as NumberFieldScrub, Overflow, _sfc_main$83 as OverflowIndicator, _sfc_main$84 as OverflowItem, _sfc_main$85 as OverflowRoot, Pagination, _sfc_main$86 as PaginationEllipsis, _sfc_main$87 as PaginationFirst, _sfc_main$88 as PaginationItem, _sfc_main$89 as PaginationLast, _sfc_main$90 as PaginationNext, _sfc_main$91 as PaginationPrev, _sfc_main$92 as PaginationRoot, _sfc_main$93 as PaginationStatus, PermissionAdapter, PinoLoggerAdapter, Popover, _sfc_main$94 as PopoverActivator, _sfc_main$95 as PopoverContent, _sfc_main$96 as PopoverRoot, _sfc_main$97 as Portal, _sfc_main$98 as Presence, Progress, _sfc_main$99 as ProgressBuffer, _sfc_main$100 as ProgressFill, _sfc_main$101 as ProgressHiddenInput, _sfc_main$102 as ProgressLabel, _sfc_main$103 as ProgressRoot, _sfc_main$104 as ProgressTrack, _sfc_main$105 as ProgressValue, Radio, _sfc_main$106 as RadioGroup, _sfc_main$107 as RadioHiddenInput, _sfc_main$108 as RadioIndicator, _sfc_main$109 as RadioRoot, Rating, _sfc_main$110 as RatingHiddenInput, _sfc_main$111 as RatingItem, _sfc_main$112 as RatingRoot, SELF_CLOSING_TAGS, SUPPORTS_INTERSECTION_OBSERVER, SUPPORTS_MATCH_MEDIA, SUPPORTS_MUTATION_OBSERVER, SUPPORTS_OBSERVER, SUPPORTS_TOUCH, _sfc_main$113 as Scrim, Select, _sfc_main$114 as SelectActivator, _sfc_main$115 as SelectContent, _sfc_main$116 as SelectCue, _sfc_main$117 as SelectItem, _sfc_main$118 as SelectPlaceholder, _sfc_main$119 as SelectRoot, _sfc_main$120 as SelectValue, Selection, _sfc_main$121 as SelectionItem, _sfc_main$122 as SelectionRoot, ServerAdapter$1 as ServerAdapter, Single, _sfc_main$123 as SingleItem, _sfc_main$124 as SingleRoot, Slider, _sfc_main$125 as SliderHiddenInput, _sfc_main$126 as SliderRange, _sfc_main$127 as SliderRoot, _sfc_main$128 as SliderThumb, _sfc_main$129 as SliderTrack, Snackbar, _sfc_main$130 as SnackbarClose, _sfc_main$131 as SnackbarContent, _sfc_main$132 as SnackbarPortal, _sfc_main$133 as SnackbarQueue, _sfc_main$134 as SnackbarRoot, Splitter, _sfc_main$135 as SplitterHandle, _sfc_main$136 as SplitterPanel, _sfc_main$137 as SplitterRoot, Step, _sfc_main$138 as StepItem, _sfc_main$139 as StepRoot, Switch, _sfc_main$140 as SwitchGroup, _sfc_main$141 as SwitchHiddenInput, _sfc_main$142 as SwitchRoot, _sfc_main$143 as SwitchSelectAll, _sfc_main$144 as SwitchThumb, _sfc_main$145 as SwitchTrack, Tabs, _sfc_main$146 as TabsItem, _sfc_main$147 as TabsList, _sfc_main$148 as TabsPanel, _sfc_main$149 as TabsRoot, _sfc_main$150 as Theme, Toggle, _sfc_main$151 as ToggleGroup, _sfc_main$152 as ToggleIndicator, _sfc_main$153 as ToggleRoot, Treeview, _sfc_main$154 as TreeviewActivator, _sfc_main$155 as TreeviewCheckbox, _sfc_main$156 as TreeviewContent, _sfc_main$157 as TreeviewCue, _sfc_main$158 as TreeviewGroup, _sfc_main$159 as TreeviewIndicator, _sfc_main$160 as TreeviewItem, _sfc_main$161 as TreeviewList, _sfc_main$162 as TreeviewRoot, _sfc_main$163 as TreeviewSelectAll, V0StyleSheetThemeAdapter, V0UnheadThemeAdapter, VirtualAdapter, Vuetify0LocaleAdapter, Vuetify0LoggerAdapter, Vuetify0RtlAdapter, __LOGGER_ENABLED__, apca, clamp, computeDepth, createBreadcrumbs, createBreadcrumbsContext, createBreakpoints, createBreakpointsContext, createBreakpointsPlugin, createCombobox, createComboboxContext, createContext, createDataTable, createDataTableContext, createDate, createDateContext, createDatePlugin, createFallbackHydration, createFeatures, createFeaturesContext, createFeaturesPlugin, createFilter, createFilterContext, createForm, createFormContext, createGroup, createGroupContext, createHydration, createHydrationContext, createHydrationPlugin, createInput, createLocale, createLocaleContext, createLocaleFallback, createLocalePlugin, createLogger, createLoggerContext, createLoggerPlugin, createModel, createNested, createNestedContext, createNotifications, createNotificationsContext, createNotificationsPlugin, createNumberField, createNumeric, createOverflow, createOverflowContext, createPagination, createPaginationContext, createPermissions, createPermissionsContext, createPermissionsPlugin, createPlugin, createPluginContext, createProgress, createProgressContext, createQueue, createQueueContext, createRating, createRatingContext, createRegistry, createRegistryContext, createRtl, createRtlContext, createRtlFallback, createRtlPlugin, createRules, createRulesContext, createRulesFallback, createRulesPlugin, createSelection, createSelectionContext, createSingle, createSingleContext, createSlider, createStack, createStackContext, createStackPlugin, createStep, createStepContext, createStorage, createStorageContext, createStoragePlugin, createTheme, createThemeContext, createThemePlugin, createTimeline, createTimelineContext, createTokens, createTokensContext, createTrinity, createValidation, createVirtual, createVirtualContext, extractLeaves, flatten, foreground, hexToRgb, instanceExists, instanceName, isArray, isBoolean, isElement, isFunction, isNaN, isNull, isNullOrUndefined, isNumber, isObject, isPrimitive, isSelfClosingTag, isStandardSchema, isString, isSymbol, isUndefined, mergeDeep, provideAlertDialogContext, provideAvatarRoot, provideBreadcrumbsRoot, provideButtonGroup, provideButtonRoot, provideCarouselRoot, provideCheckboxGroup, provideCheckboxRoot, provideCollapsible, provideComboboxContext, provideContext, provideDialogContext, provideExpansionPanelGroup, provideExpansionPanelRoot, provideGroupRoot, provideImageRoot, provideInputRoot, provideNumberFieldRoot, provideOverflowRoot, providePaginationControls, providePaginationItems, providePaginationRoot, providePopoverContext, provideProgressRoot, provideRadioGroup, provideRadioRoot, provideRatingRoot, provideSelectContext, provideSelectionRoot, provideSingleRoot, provideSliderRoot, provideSnackbarQueueContext, provideSnackbarRootContext, provideSplitterRoot, provideStepRoot, provideSwitchGroup, provideSwitchRoot, provideTabsRoot, provideToggleGroup, provideToggleRoot, provideTreeviewItem, provideTreeviewList, provideTreeviewRoot, range, resolveHeaders, resolveIds, resolveIndexes, rgbToHex, toArray, toElement, toReactive, useAlertDialogContext, useAvatarRoot, useBreadcrumbs, useBreadcrumbsRoot, useBreakpoints, useButtonGroup, useButtonRoot, useCarouselRoot, useCheckboxGroup, useCheckboxRoot, useClickOutside, useCollapsible, useCombobox, useComboboxContext, useContext, useDataTable, useDate, useDelay, useDialogContext, useDocumentEventListener, useElementIntersection, useElementSize, useEventListener, useExpansionPanelGroup, useExpansionPanelRoot, useFeatures, useFilter, useForm, useGroup, useGroupRoot, useHotkey, useHydration, useId, useImage, useImageRoot, useInputRoot, useIntersectionObserver, useLazy, useLocale, useLogger, useMediaQuery, useMutationObserver, useNested, useNotifications, useNumberFieldRoot, useOverflow, useOverflowRoot, usePagination, usePaginationControls, usePaginationItems, usePaginationRoot, usePermissions, usePopover, usePopoverContext, usePrefersContrast, usePrefersDark, usePrefersReducedMotion, usePresence, useProgress, useProgressRoot, useProxyModel, useProxyRegistry, useQueue, useRadioGroup, useRadioRoot, useRaf, useRating, useRatingRoot, useRegistry, useResizeObserver, useRovingFocus, useRtl, useRules, useSelectContext, useSelection, useSelectionRoot, useSingle, useSingleRoot, useSliderRoot, useSnackbarQueueContext, useSnackbarRootContext, useSplitterRoot, useStack, useStep, useStepRoot, useStorage, useSwitchGroup, useSwitchRoot, useTabsRoot, useTheme, useTimeline, useTimer, useToggleGroup, useToggleRoot, useToggleScope, useTokens, useTreeviewItem, useTreeviewList, useTreeviewRoot, useVirtual, useVirtualFocus, useWindowEventListener, version };
|