@vuetify/nightly 3.8.1-master.2025-04-16 → 3.8.1-next.2025-04-15
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/CHANGELOG.md +33 -32
- package/dist/json/attributes.json +653 -653
- package/dist/json/importMap-labs.json +16 -16
- package/dist/json/importMap.json +182 -182
- package/dist/json/web-types.json +1133 -1093
- package/dist/vuetify-labs.cjs +346 -197
- package/dist/vuetify-labs.css +26038 -27768
- package/dist/vuetify-labs.d.ts +244 -647
- package/dist/vuetify-labs.esm.js +347 -198
- package/dist/vuetify-labs.esm.js.map +1 -1
- package/dist/vuetify-labs.js +346 -197
- package/dist/vuetify-labs.min.css +3 -4
- package/dist/vuetify.cjs +328 -173
- package/dist/vuetify.cjs.map +1 -1
- package/dist/vuetify.css +22491 -24217
- package/dist/vuetify.d.ts +316 -719
- package/dist/vuetify.esm.js +329 -174
- package/dist/vuetify.esm.js.map +1 -1
- package/dist/vuetify.js +328 -173
- package/dist/vuetify.js.map +1 -1
- package/dist/vuetify.min.css +3 -4
- package/dist/vuetify.min.js +1152 -1161
- package/dist/vuetify.min.js.map +1 -1
- package/lib/blueprints/md3.js +5 -18
- package/lib/blueprints/md3.js.map +1 -1
- package/lib/components/VAlert/VAlert.css +207 -215
- package/lib/components/VApp/VApp.css +16 -15
- package/lib/components/VAppBar/VAppBar.css +14 -12
- package/lib/components/VAutocomplete/VAutocomplete.css +85 -84
- package/lib/components/VAutocomplete/VAutocomplete.d.ts +18 -9
- package/lib/components/VAutocomplete/VAutocomplete.js +6 -3
- package/lib/components/VAutocomplete/VAutocomplete.js.map +1 -1
- package/lib/components/VAvatar/VAvatar.css +108 -106
- package/lib/components/VBadge/VBadge.css +77 -77
- package/lib/components/VBanner/VBanner.css +161 -166
- package/lib/components/VBottomNavigation/VBottomNavigation.css +65 -64
- package/lib/components/VBottomSheet/VBottomSheet.css +34 -31
- package/lib/components/VBreadcrumbs/VBreadcrumbs.css +54 -57
- package/lib/components/VBtn/VBtn.css +385 -408
- package/lib/components/VBtn/VBtn.sass +4 -4
- package/lib/components/VBtnGroup/VBtnGroup.css +63 -64
- package/lib/components/VBtnToggle/VBtnToggle.css +16 -14
- package/lib/components/VCard/VCard.css +294 -302
- package/lib/components/VCarousel/VCarousel.css +63 -65
- package/lib/components/VCarousel/VCarousel.sass +1 -1
- package/lib/components/VCheckbox/VCheckbox.css +7 -5
- package/lib/components/VChip/VChip.css +378 -411
- package/lib/components/VChipGroup/VChipGroup.css +19 -18
- package/lib/components/VCode/VCode.css +10 -11
- package/lib/components/VCode/VCode.sass +0 -3
- package/lib/components/VColorPicker/VColorPicker.css +23 -23
- package/lib/components/VColorPicker/VColorPickerCanvas.css +24 -22
- package/lib/components/VColorPicker/VColorPickerEdit.css +29 -28
- package/lib/components/VColorPicker/VColorPickerPreview.css +69 -67
- package/lib/components/VColorPicker/VColorPickerPreview.sass +4 -2
- package/lib/components/VColorPicker/VColorPickerSwatches.css +34 -34
- package/lib/components/VCombobox/VCombobox.css +85 -84
- package/lib/components/VCombobox/VCombobox.d.ts +18 -9
- package/lib/components/VCombobox/VCombobox.js +6 -3
- package/lib/components/VCombobox/VCombobox.js.map +1 -1
- package/lib/components/VCounter/VCounter.css +7 -5
- package/lib/components/VDataTable/VDataTable.css +189 -186
- package/lib/components/VDataTable/VDataTable.sass +21 -11
- package/lib/components/VDataTable/VDataTableFooter.css +33 -31
- package/lib/components/VDatePicker/VDatePicker.css +8 -6
- package/lib/components/VDatePicker/VDatePicker.d.ts +7 -7
- package/lib/components/VDatePicker/VDatePickerControls.css +55 -57
- package/lib/components/VDatePicker/VDatePickerHeader.css +56 -60
- package/lib/components/VDatePicker/VDatePickerMonth.css +51 -55
- package/lib/components/VDatePicker/VDatePickerMonth.d.ts +7 -7
- package/lib/components/VDatePicker/VDatePickerMonths.css +20 -19
- package/lib/components/VDatePicker/VDatePickerYears.css +16 -15
- package/lib/components/VDialog/VDialog.css +98 -98
- package/lib/components/VDivider/VDivider.css +52 -52
- package/lib/components/VEmptyState/VEmptyState.css +62 -67
- package/lib/components/VExpansionPanel/VExpansionPanel.css +203 -209
- package/lib/components/VExpansionPanel/VExpansionPanel.sass +27 -25
- package/lib/components/VFab/VFab.css +78 -73
- package/lib/components/VFab/VFab.sass +5 -4
- package/lib/components/VField/VField.css +548 -589
- package/lib/components/VFileInput/VFileInput.css +30 -28
- package/lib/components/VFooter/VFooter.css +38 -36
- package/lib/components/VForm/VForm.d.ts +111 -531
- package/lib/components/VForm/VForm.js +11 -1
- package/lib/components/VForm/VForm.js.map +1 -1
- package/lib/components/VGrid/VGrid.css +565 -592
- package/lib/components/VIcon/VIcon.css +52 -53
- package/lib/components/VImg/VImg.css +50 -51
- package/lib/components/VInfiniteScroll/VInfiniteScroll.css +36 -37
- package/lib/components/VInput/VInput.css +136 -147
- package/lib/components/VItemGroup/VItemGroup.css +7 -5
- package/lib/components/VKbd/VKbd.css +13 -11
- package/lib/components/VLabel/VLabel.css +16 -15
- package/lib/components/VLayout/VLayout.css +10 -8
- package/lib/components/VLayout/VLayoutItem.css +8 -7
- package/lib/components/VList/VList.css +104 -108
- package/lib/components/VList/VList.sass +1 -1
- package/lib/components/VList/VListItem.css +440 -452
- package/lib/components/VList/VListItem.sass +2 -1
- package/lib/components/VLocaleProvider/VLocaleProvider.css +4 -2
- package/lib/components/VMain/VMain.css +32 -30
- package/lib/components/VMenu/VMenu.css +21 -19
- package/lib/components/VMessages/VMessages.css +17 -15
- package/lib/components/VNavigationDrawer/VNavigationDrawer.css +102 -104
- package/lib/components/VNumberInput/VNumberInput.css +48 -46
- package/lib/components/VOtpInput/VOtpInput.css +56 -58
- package/lib/components/VOverlay/VOverlay.css +61 -64
- package/lib/components/VOverlay/VOverlay.sass +14 -13
- package/lib/components/VPagination/VPagination.css +10 -8
- package/lib/components/VParallax/VParallax.css +8 -6
- package/lib/components/VProgressCircular/VProgressCircular.css +95 -101
- package/lib/components/VProgressLinear/VProgressLinear.css +209 -222
- package/lib/components/VRadioGroup/VRadioGroup.css +14 -12
- package/lib/components/VRating/VRating.css +52 -53
- package/lib/components/VResponsive/VResponsive.css +25 -26
- package/lib/components/VSelect/VSelect.css +53 -51
- package/lib/components/VSelect/VSelect.d.ts +18 -9
- package/lib/components/VSelect/VSelect.js +6 -3
- package/lib/components/VSelect/VSelect.js.map +1 -1
- package/lib/components/VSelectionControl/VSelectionControl.css +98 -100
- package/lib/components/VSelectionControlGroup/VSelectionControlGroup.css +10 -8
- package/lib/components/VSheet/VSheet.css +38 -36
- package/lib/components/VSkeletonLoader/VSkeletonLoader.css +225 -224
- package/lib/components/VSlideGroup/VSlideGroup.css +53 -55
- package/lib/components/VSlider/VSlider.css +53 -57
- package/lib/components/VSlider/VSliderThumb.css +142 -153
- package/lib/components/VSlider/VSliderTrack.css +155 -174
- package/lib/components/VSnackbar/VSnackbar.css +140 -140
- package/lib/components/VSpeedDial/VSpeedDial.css +43 -41
- package/lib/components/VStepper/VStepper.css +55 -56
- package/lib/components/VStepper/VStepperItem.css +112 -115
- package/lib/components/VSwitch/VSwitch.css +129 -139
- package/lib/components/VSystemBar/VSystemBar.css +45 -43
- package/lib/components/VTable/VTable.css +140 -141
- package/lib/components/VTable/VTable.sass +4 -2
- package/lib/components/VTabs/VTab.css +30 -29
- package/lib/components/VTabs/VTabs.css +59 -65
- package/lib/components/VTextField/VTextField.css +77 -85
- package/lib/components/VTextarea/VTextarea.css +48 -40
- package/lib/components/VTextarea/VTextarea.sass +4 -2
- package/lib/components/VThemeProvider/VThemeProvider.css +5 -3
- package/lib/components/VTimeline/VTimeline.css +388 -427
- package/lib/components/VToolbar/VToolbar.css +137 -144
- package/lib/components/VTooltip/VTooltip.css +27 -23
- package/lib/components/VTooltip/VTooltip.sass +8 -6
- package/lib/components/VVirtualScroll/VVirtualScroll.css +11 -9
- package/lib/components/VWindow/VWindow.css +73 -70
- package/lib/composables/calendar.d.ts +2 -2
- package/lib/composables/calendar.js +7 -5
- package/lib/composables/calendar.js.map +1 -1
- package/lib/composables/date/DateAdapter.d.ts +0 -1
- package/lib/composables/date/DateAdapter.js.map +1 -1
- package/lib/composables/date/adapters/vuetify.d.ts +0 -1
- package/lib/composables/date/adapters/vuetify.js +160 -101
- package/lib/composables/date/adapters/vuetify.js.map +1 -1
- package/lib/composables/date/date.d.ts +1 -1
- package/lib/composables/date/date.js +20 -0
- package/lib/composables/date/date.js.map +1 -1
- package/lib/composables/filter.js +1 -2
- package/lib/composables/filter.js.map +1 -1
- package/lib/composables/theme.d.ts +6 -1
- package/lib/composables/theme.js +98 -30
- package/lib/composables/theme.js.map +1 -1
- package/lib/composables/validation.js +0 -5
- package/lib/composables/validation.js.map +1 -1
- package/lib/composables/virtual.js +6 -1
- package/lib/composables/virtual.js.map +1 -1
- package/lib/directives/ripple/VRipple.css +38 -36
- package/lib/entry-bundler.d.ts +0 -1
- package/lib/entry-bundler.js +1 -1
- package/lib/entry-bundler.js.map +1 -1
- package/lib/framework.d.ts +71 -69
- package/lib/framework.js +1 -1
- package/lib/framework.js.map +1 -1
- package/lib/labs/VCalendar/VCalendar.css +219 -225
- package/lib/labs/VCalendar/VCalendar.d.ts +7 -7
- package/lib/labs/VCalendar/VCalendarDay.css +33 -32
- package/lib/labs/VCalendar/VCalendarHeader.css +13 -13
- package/lib/labs/VCalendar/VCalendarInterval.css +43 -42
- package/lib/labs/VCalendar/VCalendarInterval.js +19 -25
- package/lib/labs/VCalendar/VCalendarInterval.js.map +1 -1
- package/lib/labs/VCalendar/VCalendarIntervalEvent.css +7 -5
- package/lib/labs/VCalendar/VCalendarMonthDay.css +61 -58
- package/lib/labs/VCalendar/VCalendarMonthDay.sass +3 -2
- package/lib/labs/VDateInput/VDateInput.d.ts +7 -7
- package/lib/labs/VFileUpload/VFileUpload.css +74 -77
- package/lib/labs/VIconBtn/VIconBtn.css +162 -164
- package/lib/labs/VPicker/VPicker.css +58 -63
- package/lib/labs/VTimePicker/VTimePicker.css +9 -7
- package/lib/labs/VTimePicker/VTimePickerClock.css +126 -129
- package/lib/labs/VTimePicker/VTimePickerControls.css +102 -103
- package/lib/labs/VTreeview/VTreeviewItem.css +30 -28
- package/lib/labs/VTreeview/VTreeviewItem.sass +3 -2
- package/lib/labs/entry-bundler.d.ts +0 -1
- package/lib/styles/elements/_global.sass +1 -1
- package/lib/styles/generic/_colors.scss +3 -3
- package/lib/styles/generic/_layers.scss +13 -1
- package/lib/styles/generic/_reset.scss +0 -1
- package/lib/styles/generic/_transitions.scss +32 -32
- package/lib/styles/main.css +14668 -16143
- package/lib/styles/settings/_utilities.scss +0 -5
- package/lib/styles/settings/_variables.scss +1 -2
- package/lib/styles/tools/_border.sass +4 -4
- package/lib/styles/tools/_display.sass +0 -10
- package/lib/styles/tools/_elevation.sass +2 -2
- package/lib/styles/tools/_index.sass +0 -2
- package/lib/styles/tools/_layer.scss +4 -2
- package/lib/styles/tools/_position.sass +2 -2
- package/lib/styles/tools/_rounded.sass +2 -2
- package/lib/styles/tools/_utilities.sass +1 -5
- package/lib/styles/utilities/_elevation.scss +1 -1
- package/lib/util/globals.d.ts +1 -0
- package/lib/util/globals.js +1 -0
- package/lib/util/globals.js.map +1 -1
- package/package.json +45 -46
- package/lib/styles/tools/_bootable.sass +0 -3
- package/lib/styles/tools/_radius.sass +0 -10
package/dist/vuetify-labs.js
CHANGED
@@ -1,5 +1,5 @@
|
|
1
1
|
/*!
|
2
|
-
* Vuetify v3.8.1-
|
2
|
+
* Vuetify v3.8.1-next.2025-04-15
|
3
3
|
* Forged by John Leider
|
4
4
|
* Released under the MIT License.
|
5
5
|
*/
|
@@ -85,6 +85,7 @@
|
|
85
85
|
const SUPPORTS_INTERSECTION = IN_BROWSER && 'IntersectionObserver' in window;
|
86
86
|
const SUPPORTS_TOUCH = IN_BROWSER && ('ontouchstart' in window || window.navigator.maxTouchPoints > 0);
|
87
87
|
const SUPPORTS_EYE_DROPPER = IN_BROWSER && 'EyeDropper' in window;
|
88
|
+
const SUPPORTS_MATCH_MEDIA = IN_BROWSER && 'matchMedia' in window && typeof window.matchMedia === 'function';
|
88
89
|
|
89
90
|
function _classPrivateFieldInitSpec(e, t, a) { _checkPrivateRedeclaration(e, t), t.set(e, a); }
|
90
91
|
function _checkPrivateRedeclaration(e, t) { if (t.has(e)) throw new TypeError("Cannot initialize the same private elements twice on an object"); }
|
@@ -2284,7 +2285,8 @@
|
|
2284
2285
|
}, 'theme');
|
2285
2286
|
function genDefaults$2() {
|
2286
2287
|
return {
|
2287
|
-
defaultTheme: '
|
2288
|
+
defaultTheme: 'system',
|
2289
|
+
prefix: 'v-',
|
2288
2290
|
variations: {
|
2289
2291
|
colors: [],
|
2290
2292
|
lighten: 0,
|
@@ -2335,8 +2337,8 @@
|
|
2335
2337
|
surface: '#212121',
|
2336
2338
|
'surface-bright': '#ccbfd6',
|
2337
2339
|
'surface-light': '#424242',
|
2338
|
-
'surface-variant': '#
|
2339
|
-
'on-surface-variant': '#
|
2340
|
+
'surface-variant': '#a3a3a3',
|
2341
|
+
'on-surface-variant': '#424242',
|
2340
2342
|
primary: '#2196F3',
|
2341
2343
|
'primary-darken-1': '#277CC1',
|
2342
2344
|
secondary: '#54B6B2',
|
@@ -2366,7 +2368,10 @@
|
|
2366
2368
|
}
|
2367
2369
|
}
|
2368
2370
|
},
|
2369
|
-
stylesheetId: 'vuetify-theme-stylesheet'
|
2371
|
+
stylesheetId: 'vuetify-theme-stylesheet',
|
2372
|
+
scoped: false,
|
2373
|
+
unimportant: true,
|
2374
|
+
utilities: true
|
2370
2375
|
};
|
2371
2376
|
}
|
2372
2377
|
function parseThemeOptions() {
|
@@ -2389,21 +2394,21 @@
|
|
2389
2394
|
function createCssClass(lines, selector, content, scope) {
|
2390
2395
|
lines.push(`${getScopedSelector(selector, scope)} {\n`, ...content.map(line => ` ${line};\n`), '}\n');
|
2391
2396
|
}
|
2392
|
-
function genCssVariables(theme) {
|
2397
|
+
function genCssVariables(theme, prefix) {
|
2393
2398
|
const lightOverlay = theme.dark ? 2 : 1;
|
2394
2399
|
const darkOverlay = theme.dark ? 1 : 2;
|
2395
2400
|
const variables = [];
|
2396
2401
|
for (const [key, value] of Object.entries(theme.colors)) {
|
2397
2402
|
const rgb = parseColor(value);
|
2398
|
-
variables.push(
|
2403
|
+
variables.push(`--${prefix}theme-${key}: ${rgb.r},${rgb.g},${rgb.b}`);
|
2399
2404
|
if (!key.startsWith('on-')) {
|
2400
|
-
variables.push(
|
2405
|
+
variables.push(`--${prefix}theme-${key}-overlay-multiplier: ${getLuma(value) > 0.18 ? lightOverlay : darkOverlay}`);
|
2401
2406
|
}
|
2402
2407
|
}
|
2403
2408
|
for (const [key, value] of Object.entries(theme.variables)) {
|
2404
2409
|
const color = typeof value === 'string' && value.startsWith('#') ? parseColor(value) : undefined;
|
2405
2410
|
const rgb = color ? `${color.r}, ${color.g}, ${color.b}` : undefined;
|
2406
|
-
variables.push(
|
2411
|
+
variables.push(`--${prefix}${key}: ${rgb ?? value}`);
|
2407
2412
|
}
|
2408
2413
|
return variables;
|
2409
2414
|
}
|
@@ -2447,7 +2452,8 @@
|
|
2447
2452
|
const scopeSelector = `:where(${scope})`;
|
2448
2453
|
return selector === ':root' ? scopeSelector : `${scopeSelector} ${selector}`;
|
2449
2454
|
}
|
2450
|
-
function upsertStyles(
|
2455
|
+
function upsertStyles(id, cspNonce, styles) {
|
2456
|
+
const styleEl = getOrCreateStyleElement(id, cspNonce);
|
2451
2457
|
if (!styleEl) return;
|
2452
2458
|
styleEl.innerHTML = styles;
|
2453
2459
|
}
|
@@ -2467,8 +2473,17 @@
|
|
2467
2473
|
// Composables
|
2468
2474
|
function createTheme(options) {
|
2469
2475
|
const parsedOptions = parseThemeOptions(options);
|
2470
|
-
const
|
2476
|
+
const _name = vue.shallowRef(parsedOptions.defaultTheme);
|
2471
2477
|
const themes = vue.ref(parsedOptions.themes);
|
2478
|
+
const systemName = vue.shallowRef('light');
|
2479
|
+
const name = vue.computed({
|
2480
|
+
get() {
|
2481
|
+
return _name.value === 'system' ? systemName.value : _name.value;
|
2482
|
+
},
|
2483
|
+
set(val) {
|
2484
|
+
_name.value = val;
|
2485
|
+
}
|
2486
|
+
});
|
2472
2487
|
const computedThemes = vue.computed(() => {
|
2473
2488
|
const acc = {};
|
2474
2489
|
for (const [name, original] of Object.entries(themes.value)) {
|
@@ -2489,28 +2504,49 @@
|
|
2489
2504
|
const current = vue.computed(() => computedThemes.value[name.value]);
|
2490
2505
|
const styles = vue.computed(() => {
|
2491
2506
|
const lines = [];
|
2507
|
+
const important = parsedOptions.unimportant ? '' : ' !important';
|
2508
|
+
const scoped = parsedOptions.scoped ? parsedOptions.prefix : '';
|
2492
2509
|
if (current.value?.dark) {
|
2493
2510
|
createCssClass(lines, ':root', ['color-scheme: dark'], parsedOptions.scope);
|
2494
2511
|
}
|
2495
|
-
createCssClass(lines, ':root', genCssVariables(current.value), parsedOptions.scope);
|
2512
|
+
createCssClass(lines, ':root', genCssVariables(current.value, parsedOptions.prefix), parsedOptions.scope);
|
2496
2513
|
for (const [themeName, theme] of Object.entries(computedThemes.value)) {
|
2497
|
-
createCssClass(lines,
|
2498
|
-
}
|
2499
|
-
|
2500
|
-
|
2501
|
-
|
2502
|
-
|
2503
|
-
|
2504
|
-
|
2505
|
-
|
2506
|
-
|
2507
|
-
|
2508
|
-
|
2514
|
+
createCssClass(lines, `.${parsedOptions.prefix}theme--${themeName}`, [`color-scheme: ${theme.dark ? 'dark' : 'normal'}`, ...genCssVariables(theme, parsedOptions.prefix)], parsedOptions.scope);
|
2515
|
+
}
|
2516
|
+
if (parsedOptions.utilities) {
|
2517
|
+
const bgLines = [];
|
2518
|
+
const fgLines = [];
|
2519
|
+
const colors = new Set(Object.values(computedThemes.value).flatMap(theme => Object.keys(theme.colors)));
|
2520
|
+
for (const key of colors) {
|
2521
|
+
if (key.startsWith('on-')) {
|
2522
|
+
createCssClass(fgLines, `.${key}`, [`color: rgb(var(--${parsedOptions.prefix}theme-${key}))${important}`], parsedOptions.scope);
|
2523
|
+
} else {
|
2524
|
+
createCssClass(bgLines, `.${scoped}bg-${key}`, [`--${parsedOptions.prefix}theme-overlay-multiplier: var(--${parsedOptions.prefix}theme-${key}-overlay-multiplier)`, `background-color: rgb(var(--${parsedOptions.prefix}theme-${key}))${important}`, `color: rgb(var(--${parsedOptions.prefix}theme-on-${key}))${important}`], parsedOptions.scope);
|
2525
|
+
createCssClass(fgLines, `.${scoped}text-${key}`, [`color: rgb(var(--${parsedOptions.prefix}theme-${key}))${important}`], parsedOptions.scope);
|
2526
|
+
createCssClass(fgLines, `.${scoped}border-${key}`, [`--${parsedOptions.prefix}border-color: var(--${parsedOptions.prefix}theme-${key})`], parsedOptions.scope);
|
2527
|
+
}
|
2509
2528
|
}
|
2529
|
+
lines.push(...bgLines, ...fgLines);
|
2510
2530
|
}
|
2511
|
-
lines.
|
2512
|
-
return lines.map((str, i) => i === 0 ? str : ` ${str}`).join('');
|
2531
|
+
return '@layer vuetify.theme {\n' + lines.map(v => ` ${v}`).join('') + '\n}';
|
2513
2532
|
});
|
2533
|
+
const themeClasses = vue.computed(() => parsedOptions.isDisabled ? undefined : `${parsedOptions.prefix}theme--${name.value}`);
|
2534
|
+
const themeNames = vue.computed(() => Object.keys(computedThemes.value));
|
2535
|
+
if (SUPPORTS_MATCH_MEDIA) {
|
2536
|
+
const media = window.matchMedia('(prefers-color-scheme: dark)');
|
2537
|
+
function updateSystemName() {
|
2538
|
+
systemName.value = media.matches ? 'dark' : 'light';
|
2539
|
+
}
|
2540
|
+
updateSystemName();
|
2541
|
+
media.addEventListener('change', updateSystemName, {
|
2542
|
+
passive: true
|
2543
|
+
});
|
2544
|
+
if (vue.getCurrentScope()) {
|
2545
|
+
vue.onScopeDispose(() => {
|
2546
|
+
media.removeEventListener('change', updateSystemName);
|
2547
|
+
});
|
2548
|
+
}
|
2549
|
+
}
|
2514
2550
|
function install(app) {
|
2515
2551
|
if (parsedOptions.isDisabled) return;
|
2516
2552
|
const head = app._context.provides.usehead;
|
@@ -2548,22 +2584,55 @@
|
|
2548
2584
|
updateStyles();
|
2549
2585
|
}
|
2550
2586
|
function updateStyles() {
|
2551
|
-
upsertStyles(
|
2587
|
+
upsertStyles(parsedOptions.stylesheetId, parsedOptions.cspNonce, styles.value);
|
2552
2588
|
}
|
2553
2589
|
}
|
2554
2590
|
}
|
2555
|
-
|
2591
|
+
function change(themeName) {
|
2592
|
+
if (!themeNames.value.includes(themeName)) {
|
2593
|
+
consoleWarn(`Theme "${themeName}" not found on the Vuetify theme instance`);
|
2594
|
+
return;
|
2595
|
+
}
|
2596
|
+
name.value = themeName;
|
2597
|
+
}
|
2598
|
+
function cycle() {
|
2599
|
+
let themeArray = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : themeNames.value;
|
2600
|
+
const currentIndex = themeArray.indexOf(name.value);
|
2601
|
+
const nextIndex = currentIndex === -1 ? 0 : (currentIndex + 1) % themeArray.length;
|
2602
|
+
change(themeArray[nextIndex]);
|
2603
|
+
}
|
2604
|
+
function toggle() {
|
2605
|
+
let themeArray = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : ['light', 'dark'];
|
2606
|
+
cycle(themeArray);
|
2607
|
+
}
|
2608
|
+
const globalName = new Proxy(name, {
|
2609
|
+
get(target, prop) {
|
2610
|
+
return target[prop];
|
2611
|
+
},
|
2612
|
+
set(target, prop, val) {
|
2613
|
+
if (prop === 'value') {
|
2614
|
+
deprecate(`theme.global.name.value = ${val}`, `theme.change('${val}')`);
|
2615
|
+
}
|
2616
|
+
// @ts-expect-error
|
2617
|
+
target[prop] = val;
|
2618
|
+
return true;
|
2619
|
+
}
|
2620
|
+
});
|
2556
2621
|
return {
|
2557
2622
|
install,
|
2623
|
+
change,
|
2624
|
+
cycle,
|
2625
|
+
toggle,
|
2558
2626
|
isDisabled: parsedOptions.isDisabled,
|
2559
2627
|
name,
|
2560
2628
|
themes,
|
2561
2629
|
current,
|
2562
2630
|
computedThemes,
|
2631
|
+
prefix: parsedOptions.prefix,
|
2563
2632
|
themeClasses,
|
2564
2633
|
styles,
|
2565
2634
|
global: {
|
2566
|
-
name,
|
2635
|
+
name: globalName,
|
2567
2636
|
current
|
2568
2637
|
}
|
2569
2638
|
};
|
@@ -2574,7 +2643,7 @@
|
|
2574
2643
|
if (!theme) throw new Error('Could not find Vuetify theme injection');
|
2575
2644
|
const name = vue.computed(() => props.theme ?? theme.name.value);
|
2576
2645
|
const current = vue.computed(() => theme.themes.value[name.value]);
|
2577
|
-
const themeClasses = vue.computed(() => theme.isDisabled ? undefined :
|
2646
|
+
const themeClasses = vue.computed(() => theme.isDisabled ? undefined : `${theme.prefix}theme--${name.value}`);
|
2578
2647
|
const newTheme = {
|
2579
2648
|
...theme,
|
2580
2649
|
name,
|
@@ -6898,11 +6967,6 @@
|
|
6898
6967
|
}
|
6899
6968
|
async function validate() {
|
6900
6969
|
let silent = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : false;
|
6901
|
-
if (props.disabled || props.readonly) {
|
6902
|
-
internalErrorMessages.value = [];
|
6903
|
-
isValidating.value = false;
|
6904
|
-
return internalErrorMessages.value;
|
6905
|
-
}
|
6906
6970
|
const results = [];
|
6907
6971
|
isValidating.value = true;
|
6908
6972
|
for (const rule of props.rules) {
|
@@ -12312,7 +12376,12 @@
|
|
12312
12376
|
}
|
12313
12377
|
function calculateOffset(index) {
|
12314
12378
|
index = clamp(index, 0, items.value.length - 1);
|
12315
|
-
|
12379
|
+
const whole = Math.floor(index);
|
12380
|
+
const fraction = index % 1;
|
12381
|
+
const next = whole + 1;
|
12382
|
+
const wholeOffset = offsets[whole] || 0;
|
12383
|
+
const nextOffset = offsets[next] || wholeOffset;
|
12384
|
+
return wholeOffset + (nextOffset - wholeOffset) * fraction;
|
12316
12385
|
}
|
12317
12386
|
function calculateIndex(scrollTop) {
|
12318
12387
|
return binaryClosest(offsets, scrollTop);
|
@@ -12941,7 +13010,8 @@
|
|
12941
13010
|
onClick: () => select(item, null)
|
12942
13011
|
});
|
12943
13012
|
return slots.item?.({
|
12944
|
-
item,
|
13013
|
+
item: item.raw,
|
13014
|
+
internalItem: item,
|
12945
13015
|
index,
|
12946
13016
|
props: itemProps
|
12947
13017
|
}) ?? vue.createVNode(VListItem, vue.mergeProps(itemProps, {
|
@@ -12989,11 +13059,13 @@
|
|
12989
13059
|
};
|
12990
13060
|
const hasSlot = hasChips ? !!slots.chip : !!slots.selection;
|
12991
13061
|
const slotContent = hasSlot ? ensureValidVNode(hasChips ? slots.chip({
|
12992
|
-
item,
|
13062
|
+
item: item.raw,
|
13063
|
+
internalItem: item,
|
12993
13064
|
index,
|
12994
13065
|
props: slotProps
|
12995
13066
|
}) : slots.selection({
|
12996
|
-
item,
|
13067
|
+
item: item.raw,
|
13068
|
+
internalItem: item,
|
12997
13069
|
index
|
12998
13070
|
})) : undefined;
|
12999
13071
|
if (hasSlot && !slotContent) return undefined;
|
@@ -13059,7 +13131,6 @@
|
|
13059
13131
|
// Composables
|
13060
13132
|
const defaultFilter = (value, query, item) => {
|
13061
13133
|
if (value == null || query == null) return -1;
|
13062
|
-
if (!query.length) return 0;
|
13063
13134
|
value = value.toString().toLocaleLowerCase();
|
13064
13135
|
query = query.toString().toLocaleLowerCase();
|
13065
13136
|
const result = [];
|
@@ -13072,7 +13143,7 @@
|
|
13072
13143
|
};
|
13073
13144
|
function normaliseMatch(match, query) {
|
13074
13145
|
if (match == null || typeof match === 'boolean' || match === -1) return;
|
13075
|
-
if (typeof match === 'number') return [[match,
|
13146
|
+
if (typeof match === 'number') return [[match, query.length]];
|
13076
13147
|
if (Array.isArray(match[0])) return match;
|
13077
13148
|
return [match];
|
13078
13149
|
}
|
@@ -13540,7 +13611,8 @@
|
|
13540
13611
|
onClick: () => select(item, null)
|
13541
13612
|
});
|
13542
13613
|
return slots.item?.({
|
13543
|
-
item,
|
13614
|
+
item: item.raw,
|
13615
|
+
internalItem: item,
|
13544
13616
|
index,
|
13545
13617
|
props: itemProps
|
13546
13618
|
}) ?? vue.createVNode(VListItem, vue.mergeProps(itemProps, {
|
@@ -13591,11 +13663,13 @@
|
|
13591
13663
|
};
|
13592
13664
|
const hasSlot = hasChips.value ? !!slots.chip : !!slots.selection;
|
13593
13665
|
const slotContent = hasSlot ? ensureValidVNode(hasChips.value ? slots.chip({
|
13594
|
-
item,
|
13666
|
+
item: item.raw,
|
13667
|
+
internalItem: item,
|
13595
13668
|
index,
|
13596
13669
|
props: slotProps
|
13597
13670
|
}) : slots.selection({
|
13598
|
-
item,
|
13671
|
+
item: item.raw,
|
13672
|
+
internalItem: item,
|
13599
13673
|
index
|
13600
13674
|
})) : undefined;
|
13601
13675
|
if (hasSlot && !slotContent) return undefined;
|
@@ -16987,81 +17061,165 @@
|
|
16987
17061
|
|
16988
17062
|
// Types
|
16989
17063
|
|
16990
|
-
|
16991
|
-
|
16992
|
-
|
16993
|
-
|
16994
|
-
|
16995
|
-
|
16996
|
-
|
16997
|
-
|
16998
|
-
|
16999
|
-
|
17000
|
-
|
17001
|
-
|
17002
|
-
|
17003
|
-
|
17004
|
-
|
17005
|
-
|
17006
|
-
|
17007
|
-
|
17008
|
-
|
17009
|
-
|
17010
|
-
|
17011
|
-
|
17012
|
-
|
17013
|
-
|
17014
|
-
|
17015
|
-
|
17016
|
-
|
17017
|
-
|
17018
|
-
|
17019
|
-
|
17020
|
-
|
17021
|
-
|
17022
|
-
|
17023
|
-
|
17024
|
-
|
17025
|
-
|
17026
|
-
|
17027
|
-
|
17028
|
-
|
17029
|
-
|
17030
|
-
|
17031
|
-
|
17032
|
-
|
17033
|
-
|
17034
|
-
|
17035
|
-
|
17036
|
-
|
17037
|
-
|
17038
|
-
|
17039
|
-
|
17040
|
-
|
17041
|
-
|
17042
|
-
|
17043
|
-
|
17044
|
-
|
17045
|
-
|
17046
|
-
|
17047
|
-
|
17048
|
-
|
17049
|
-
|
17050
|
-
|
17051
|
-
|
17052
|
-
|
17053
|
-
|
17054
|
-
|
17055
|
-
|
17056
|
-
|
17057
|
-
|
17058
|
-
|
17064
|
+
const firstDay = {
|
17065
|
+
'001': 1,
|
17066
|
+
AD: 1,
|
17067
|
+
AE: 6,
|
17068
|
+
AF: 6,
|
17069
|
+
AG: 0,
|
17070
|
+
AI: 1,
|
17071
|
+
AL: 1,
|
17072
|
+
AM: 1,
|
17073
|
+
AN: 1,
|
17074
|
+
AR: 1,
|
17075
|
+
AS: 0,
|
17076
|
+
AT: 1,
|
17077
|
+
AU: 1,
|
17078
|
+
AX: 1,
|
17079
|
+
AZ: 1,
|
17080
|
+
BA: 1,
|
17081
|
+
BD: 0,
|
17082
|
+
BE: 1,
|
17083
|
+
BG: 1,
|
17084
|
+
BH: 6,
|
17085
|
+
BM: 1,
|
17086
|
+
BN: 1,
|
17087
|
+
BR: 0,
|
17088
|
+
BS: 0,
|
17089
|
+
BT: 0,
|
17090
|
+
BW: 0,
|
17091
|
+
BY: 1,
|
17092
|
+
BZ: 0,
|
17093
|
+
CA: 0,
|
17094
|
+
CH: 1,
|
17095
|
+
CL: 1,
|
17096
|
+
CM: 1,
|
17097
|
+
CN: 1,
|
17098
|
+
CO: 0,
|
17099
|
+
CR: 1,
|
17100
|
+
CY: 1,
|
17101
|
+
CZ: 1,
|
17102
|
+
DE: 1,
|
17103
|
+
DJ: 6,
|
17104
|
+
DK: 1,
|
17105
|
+
DM: 0,
|
17106
|
+
DO: 0,
|
17107
|
+
DZ: 6,
|
17108
|
+
EC: 1,
|
17109
|
+
EE: 1,
|
17110
|
+
EG: 6,
|
17111
|
+
ES: 1,
|
17112
|
+
ET: 0,
|
17113
|
+
FI: 1,
|
17114
|
+
FJ: 1,
|
17115
|
+
FO: 1,
|
17116
|
+
FR: 1,
|
17117
|
+
GB: 1,
|
17118
|
+
'GB-alt-variant': 0,
|
17119
|
+
GE: 1,
|
17120
|
+
GF: 1,
|
17121
|
+
GP: 1,
|
17122
|
+
GR: 1,
|
17123
|
+
GT: 0,
|
17124
|
+
GU: 0,
|
17125
|
+
HK: 0,
|
17126
|
+
HN: 0,
|
17127
|
+
HR: 1,
|
17128
|
+
HU: 1,
|
17129
|
+
ID: 0,
|
17130
|
+
IE: 1,
|
17131
|
+
IL: 0,
|
17132
|
+
IN: 0,
|
17133
|
+
IQ: 6,
|
17134
|
+
IR: 6,
|
17135
|
+
IS: 1,
|
17136
|
+
IT: 1,
|
17137
|
+
JM: 0,
|
17138
|
+
JO: 6,
|
17139
|
+
JP: 0,
|
17140
|
+
KE: 0,
|
17141
|
+
KG: 1,
|
17142
|
+
KH: 0,
|
17143
|
+
KR: 0,
|
17144
|
+
KW: 6,
|
17145
|
+
KZ: 1,
|
17146
|
+
LA: 0,
|
17147
|
+
LB: 1,
|
17148
|
+
LI: 1,
|
17149
|
+
LK: 1,
|
17150
|
+
LT: 1,
|
17151
|
+
LU: 1,
|
17152
|
+
LV: 1,
|
17153
|
+
LY: 6,
|
17154
|
+
MC: 1,
|
17155
|
+
MD: 1,
|
17156
|
+
ME: 1,
|
17157
|
+
MH: 0,
|
17158
|
+
MK: 1,
|
17159
|
+
MM: 0,
|
17160
|
+
MN: 1,
|
17161
|
+
MO: 0,
|
17162
|
+
MQ: 1,
|
17163
|
+
MT: 0,
|
17164
|
+
MV: 5,
|
17165
|
+
MX: 0,
|
17166
|
+
MY: 1,
|
17167
|
+
MZ: 0,
|
17168
|
+
NI: 0,
|
17169
|
+
NL: 1,
|
17170
|
+
NO: 1,
|
17171
|
+
NP: 0,
|
17172
|
+
NZ: 1,
|
17173
|
+
OM: 6,
|
17174
|
+
PA: 0,
|
17175
|
+
PE: 0,
|
17176
|
+
PH: 0,
|
17177
|
+
PK: 0,
|
17178
|
+
PL: 1,
|
17179
|
+
PR: 0,
|
17180
|
+
PT: 0,
|
17181
|
+
PY: 0,
|
17182
|
+
QA: 6,
|
17183
|
+
RE: 1,
|
17184
|
+
RO: 1,
|
17185
|
+
RS: 1,
|
17186
|
+
RU: 1,
|
17187
|
+
SA: 0,
|
17188
|
+
SD: 6,
|
17189
|
+
SE: 1,
|
17190
|
+
SG: 0,
|
17191
|
+
SI: 1,
|
17192
|
+
SK: 1,
|
17193
|
+
SM: 1,
|
17194
|
+
SV: 0,
|
17195
|
+
SY: 6,
|
17196
|
+
TH: 0,
|
17197
|
+
TJ: 1,
|
17198
|
+
TM: 1,
|
17199
|
+
TR: 1,
|
17200
|
+
TT: 0,
|
17201
|
+
TW: 0,
|
17202
|
+
UA: 1,
|
17203
|
+
UM: 0,
|
17204
|
+
US: 0,
|
17205
|
+
UY: 1,
|
17206
|
+
UZ: 1,
|
17207
|
+
VA: 1,
|
17208
|
+
VE: 0,
|
17209
|
+
VI: 0,
|
17210
|
+
VN: 1,
|
17211
|
+
WS: 0,
|
17212
|
+
XK: 1,
|
17213
|
+
YE: 0,
|
17214
|
+
ZA: 0,
|
17215
|
+
ZW: 0
|
17216
|
+
};
|
17059
17217
|
function getWeekArray(date, locale, firstDayOfWeek) {
|
17060
17218
|
const weeks = [];
|
17061
17219
|
let currentWeek = [];
|
17062
17220
|
const firstDayOfMonth = startOfMonth(date);
|
17063
17221
|
const lastDayOfMonth = endOfMonth(date);
|
17064
|
-
const first = firstDayOfWeek ??
|
17222
|
+
const first = firstDayOfWeek ?? firstDay[locale.slice(-2).toUpperCase()] ?? 0;
|
17065
17223
|
const firstDayWeekIndex = (firstDayOfMonth.getDay() - first + 7) % 7;
|
17066
17224
|
const lastDayWeekIndex = (lastDayOfMonth.getDay() - first + 7) % 7;
|
17067
17225
|
for (let i = 0; i < firstDayWeekIndex; i++) {
|
@@ -17092,7 +17250,7 @@
|
|
17092
17250
|
return weeks;
|
17093
17251
|
}
|
17094
17252
|
function startOfWeek(date, locale, firstDayOfWeek) {
|
17095
|
-
const day = firstDayOfWeek ??
|
17253
|
+
const day = firstDayOfWeek ?? firstDay[locale.slice(-2).toUpperCase()] ?? 0;
|
17096
17254
|
const d = new Date(date);
|
17097
17255
|
while (d.getDay() !== day) {
|
17098
17256
|
d.setDate(d.getDate() - 1);
|
@@ -17101,7 +17259,7 @@
|
|
17101
17259
|
}
|
17102
17260
|
function endOfWeek(date, locale) {
|
17103
17261
|
const d = new Date(date);
|
17104
|
-
const lastDay = ((
|
17262
|
+
const lastDay = ((firstDay[locale.slice(-2).toUpperCase()] ?? 0) + 6) % 7;
|
17105
17263
|
while (d.getDay() !== lastDay) {
|
17106
17264
|
d.setDate(d.getDate() + 1);
|
17107
17265
|
}
|
@@ -17136,7 +17294,7 @@
|
|
17136
17294
|
}
|
17137
17295
|
const sundayJanuarySecond2000 = new Date(2000, 0, 2);
|
17138
17296
|
function getWeekdays(locale, firstDayOfWeek) {
|
17139
|
-
const daysFromSunday = firstDayOfWeek ??
|
17297
|
+
const daysFromSunday = firstDayOfWeek ?? firstDay[locale.slice(-2).toUpperCase()] ?? 0;
|
17140
17298
|
return createRange(7).map(i => {
|
17141
17299
|
const weekday = new Date(sundayJanuarySecond2000);
|
17142
17300
|
weekday.setDate(sundayJanuarySecond2000.getDate() + daysFromSunday + i);
|
@@ -17384,24 +17542,6 @@
|
|
17384
17542
|
function getMonth(date) {
|
17385
17543
|
return date.getMonth();
|
17386
17544
|
}
|
17387
|
-
function getWeek(date, locale, firstDayOfWeek, firstWeekMinSize) {
|
17388
|
-
const weekInfoFromLocale = weekInfo(locale);
|
17389
|
-
const weekStart = firstDayOfWeek ?? weekInfoFromLocale?.firstDay ?? 0;
|
17390
|
-
const minWeekSize = firstWeekMinSize ?? weekInfoFromLocale?.firstWeekSize ?? 1;
|
17391
|
-
function firstWeekSize(year) {
|
17392
|
-
const yearStart = new Date(year, 0, 1);
|
17393
|
-
return 7 - getDiff(yearStart, startOfWeek(yearStart, locale, weekStart), 'days');
|
17394
|
-
}
|
17395
|
-
let year = getYear(date);
|
17396
|
-
const currentWeekEnd = addDays(startOfWeek(date, locale, weekStart), 6);
|
17397
|
-
if (year < getYear(currentWeekEnd) && firstWeekSize(year + 1) >= minWeekSize) {
|
17398
|
-
year++;
|
17399
|
-
}
|
17400
|
-
const yearStart = new Date(year, 0, 1);
|
17401
|
-
const size = firstWeekSize(year);
|
17402
|
-
const d1w1 = size >= minWeekSize ? addDays(yearStart, size - 7) : addDays(yearStart, size);
|
17403
|
-
return 1 + getDiff(date, d1w1, 'weeks');
|
17404
|
-
}
|
17405
17545
|
function getDate(date) {
|
17406
17546
|
return date.getDate();
|
17407
17547
|
}
|
@@ -17541,12 +17681,10 @@
|
|
17541
17681
|
return addMonths(date, amount);
|
17542
17682
|
}
|
17543
17683
|
getWeekArray(date, firstDayOfWeek) {
|
17544
|
-
|
17545
|
-
return getWeekArray(date, this.locale, firstDay);
|
17684
|
+
return getWeekArray(date, this.locale, firstDayOfWeek ? Number(firstDayOfWeek) : undefined);
|
17546
17685
|
}
|
17547
17686
|
startOfWeek(date, firstDayOfWeek) {
|
17548
|
-
|
17549
|
-
return startOfWeek(date, this.locale, firstDay);
|
17687
|
+
return startOfWeek(date, this.locale, firstDayOfWeek ? Number(firstDayOfWeek) : undefined);
|
17550
17688
|
}
|
17551
17689
|
endOfWeek(date) {
|
17552
17690
|
return endOfWeek(date, this.locale);
|
@@ -17606,8 +17744,7 @@
|
|
17606
17744
|
return getDiff(date, comparing, unit);
|
17607
17745
|
}
|
17608
17746
|
getWeekdays(firstDayOfWeek) {
|
17609
|
-
|
17610
|
-
return getWeekdays(this.locale, firstDay);
|
17747
|
+
return getWeekdays(this.locale, firstDayOfWeek ? Number(firstDayOfWeek) : undefined);
|
17611
17748
|
}
|
17612
17749
|
getYear(date) {
|
17613
17750
|
return getYear(date);
|
@@ -17615,10 +17752,6 @@
|
|
17615
17752
|
getMonth(date) {
|
17616
17753
|
return getMonth(date);
|
17617
17754
|
}
|
17618
|
-
getWeek(date, firstDayOfWeek, firstWeekMinSize) {
|
17619
|
-
const firstDay = firstDayOfWeek !== undefined ? Number(firstDayOfWeek) : undefined;
|
17620
|
-
return getWeek(date, this.locale, firstDay, firstWeekMinSize);
|
17621
|
-
}
|
17622
17755
|
getDate(date) {
|
17623
17756
|
return getDate(date);
|
17624
17757
|
}
|
@@ -17722,6 +17855,26 @@
|
|
17722
17855
|
return createInstance(options, locale);
|
17723
17856
|
}
|
17724
17857
|
|
17858
|
+
// https://stackoverflow.com/questions/274861/how-do-i-calculate-the-week-number-given-a-date/275024#275024
|
17859
|
+
function getWeek(adapter, value) {
|
17860
|
+
const date = adapter.toJsDate(value);
|
17861
|
+
let year = date.getFullYear();
|
17862
|
+
let d1w1 = new Date(year, 0, 1);
|
17863
|
+
if (date < d1w1) {
|
17864
|
+
year = year - 1;
|
17865
|
+
d1w1 = new Date(year, 0, 1);
|
17866
|
+
} else {
|
17867
|
+
const tv = new Date(year + 1, 0, 1);
|
17868
|
+
if (date >= tv) {
|
17869
|
+
year = year + 1;
|
17870
|
+
d1w1 = tv;
|
17871
|
+
}
|
17872
|
+
}
|
17873
|
+
const diffTime = Math.abs(date.getTime() - d1w1.getTime());
|
17874
|
+
const diffDays = Math.ceil(diffTime / (1000 * 60 * 60 * 24));
|
17875
|
+
return Math.floor(diffDays / 7) + 1;
|
17876
|
+
}
|
17877
|
+
|
17725
17878
|
// Types
|
17726
17879
|
|
17727
17880
|
const makeVColorPickerProps = propsFactory({
|
@@ -18268,7 +18421,8 @@
|
|
18268
18421
|
onClick: () => select(item, null)
|
18269
18422
|
});
|
18270
18423
|
return slots.item?.({
|
18271
|
-
item,
|
18424
|
+
item: item.raw,
|
18425
|
+
internalItem: item,
|
18272
18426
|
index,
|
18273
18427
|
props: itemProps
|
18274
18428
|
}) ?? vue.createVNode(VListItem, vue.mergeProps(itemProps, {
|
@@ -18319,11 +18473,13 @@
|
|
18319
18473
|
};
|
18320
18474
|
const hasSlot = hasChips.value ? !!slots.chip : !!slots.selection;
|
18321
18475
|
const slotContent = hasSlot ? ensureValidVNode(hasChips.value ? slots.chip({
|
18322
|
-
item,
|
18476
|
+
item: item.raw,
|
18477
|
+
internalItem: item,
|
18323
18478
|
index,
|
18324
18479
|
props: slotProps
|
18325
18480
|
}) : slots.selection({
|
18326
|
-
item,
|
18481
|
+
item: item.raw,
|
18482
|
+
internalItem: item,
|
18327
18483
|
index
|
18328
18484
|
})) : undefined;
|
18329
18485
|
if (hasSlot && !slotContent) return undefined;
|
@@ -21910,7 +22066,7 @@
|
|
21910
22066
|
},
|
21911
22067
|
firstDayOfWeek: {
|
21912
22068
|
type: [Number, String],
|
21913
|
-
default:
|
22069
|
+
default: 0
|
21914
22070
|
}
|
21915
22071
|
}, 'calendar');
|
21916
22072
|
function useCalendar(props) {
|
@@ -21933,12 +22089,14 @@
|
|
21933
22089
|
return adapter.setMonth(date, value);
|
21934
22090
|
}, v => adapter.getMonth(v));
|
21935
22091
|
const weekDays = vue.computed(() => {
|
21936
|
-
const firstDayOfWeek =
|
22092
|
+
const firstDayOfWeek = Number(props.firstDayOfWeek);
|
22093
|
+
|
21937
22094
|
// Always generate all days, regardless of props.weekdays
|
21938
22095
|
return [0, 1, 2, 3, 4, 5, 6].map(day => (day + firstDayOfWeek) % 7);
|
21939
22096
|
});
|
21940
22097
|
const weeksInMonth = vue.computed(() => {
|
21941
|
-
const
|
22098
|
+
const firstDayOfWeek = Number(props.firstDayOfWeek);
|
22099
|
+
const weeks = adapter.getWeekArray(month.value, firstDayOfWeek);
|
21942
22100
|
const days = weeks.flat();
|
21943
22101
|
|
21944
22102
|
// Make sure there's always 6 weeks in month (6 * 7 days)
|
@@ -22002,7 +22160,7 @@
|
|
22002
22160
|
});
|
22003
22161
|
const weekNumbers = vue.computed(() => {
|
22004
22162
|
return weeksInMonth.value.map(week => {
|
22005
|
-
return week.length ?
|
22163
|
+
return week.length ? getWeek(adapter, week[0]) : null;
|
22006
22164
|
});
|
22007
22165
|
});
|
22008
22166
|
function isDisabled(value) {
|
@@ -23491,7 +23649,17 @@
|
|
23491
23649
|
"novalidate": true,
|
23492
23650
|
"onReset": onReset,
|
23493
23651
|
"onSubmit": onSubmit
|
23494
|
-
}, [slots.default?.(
|
23652
|
+
}, [slots.default?.({
|
23653
|
+
errors: form.errors.value,
|
23654
|
+
isDisabled: form.isDisabled.value,
|
23655
|
+
isReadonly: form.isReadonly.value,
|
23656
|
+
isValidating: form.isValidating.value,
|
23657
|
+
isValid: form.isValid.value,
|
23658
|
+
items: form.items.value,
|
23659
|
+
validate: form.validate,
|
23660
|
+
reset: form.reset,
|
23661
|
+
resetValidation: form.resetValidation
|
23662
|
+
})]));
|
23495
23663
|
return forwardRefs(form, formRef);
|
23496
23664
|
}
|
23497
23665
|
});
|
@@ -28550,43 +28718,37 @@
|
|
28550
28718
|
"style": `height: ${convertToUnit(props.intervalHeight)}`
|
28551
28719
|
}, [vue.createVNode("div", {
|
28552
28720
|
"class": "v-calendar-day__row-label"
|
28553
|
-
}, [vue.createVNode(
|
28721
|
+
}, [vue.createVNode("slot", {
|
28554
28722
|
"name": "intervalFormat",
|
28555
28723
|
"interval": interval.value
|
28556
|
-
}, {
|
28557
|
-
default: () => [props.index ? props.intervalFormat ? typeof props.intervalFormat === 'string' ? adapter.format(interval.value.start, 'hours12h') : props.intervalFormat(interval.value) : interval.value.label : '']
|
28558
|
-
})]), vue.createVNode("div", {
|
28724
|
+
}, [props.index ? props.intervalFormat ? typeof props.intervalFormat === 'string' ? adapter.format(interval.value.start, 'hours12h') : props.intervalFormat(interval.value) : interval.value.label : ''])]), vue.createVNode("div", {
|
28559
28725
|
"class": "v-calendar-day__row-hairline"
|
28560
28726
|
}, null), vue.createVNode("div", {
|
28561
28727
|
"class": ['v-calendar-day__row-content', interval.value.events.some(e => !e.last) ? 'v-calendar-day__row-content-through' : '']
|
28562
|
-
}, [vue.createVNode(
|
28728
|
+
}, [vue.createVNode("slot", {
|
28563
28729
|
"name": "intervalBody",
|
28564
28730
|
"interval": interval.value
|
28565
|
-
}, {
|
28566
|
-
|
28567
|
-
|
28568
|
-
|
28569
|
-
|
28570
|
-
|
28571
|
-
|
28572
|
-
}, null))]
|
28573
|
-
})])]) : vue.createVNode("div", {
|
28731
|
+
}, [interval.value.events?.map(event => vue.createVNode(VCalendarIntervalEvent, {
|
28732
|
+
"event": event,
|
28733
|
+
"interval": interval.value,
|
28734
|
+
"intervalDivisions": props.intervalDivisions,
|
28735
|
+
"intervalDuration": props.intervalDuration,
|
28736
|
+
"intervalHeight": props.intervalHeight
|
28737
|
+
}, null))])])]) : vue.createVNode("div", {
|
28574
28738
|
"class": "v-calendar-day__row-without-label",
|
28575
28739
|
"style": `height: ${convertToUnit(props.intervalHeight)}`
|
28576
28740
|
}, [vue.createVNode("div", {
|
28577
28741
|
"class": ['v-calendar-day__row-content', interval.value.events.some(e => !e.last) ? 'v-calendar-day__row-content-through' : '']
|
28578
|
-
}, [vue.createVNode(
|
28742
|
+
}, [vue.createVNode("slot", {
|
28579
28743
|
"name": "intervalBody",
|
28580
28744
|
"interval": interval.value
|
28581
|
-
}, {
|
28582
|
-
|
28583
|
-
|
28584
|
-
|
28585
|
-
|
28586
|
-
|
28587
|
-
|
28588
|
-
}, null))]
|
28589
|
-
})])]);
|
28745
|
+
}, [interval.value.events?.filter(event => !event.allDay).map(event => vue.createVNode(VCalendarIntervalEvent, {
|
28746
|
+
"event": event,
|
28747
|
+
"interval": interval.value,
|
28748
|
+
"intervalDivisions": props.intervalDivisions,
|
28749
|
+
"intervalDuration": props.intervalDuration,
|
28750
|
+
"intervalHeight": props.intervalHeight
|
28751
|
+
}, null))])])]);
|
28590
28752
|
});
|
28591
28753
|
return {
|
28592
28754
|
interval
|
@@ -31495,7 +31657,7 @@
|
|
31495
31657
|
};
|
31496
31658
|
});
|
31497
31659
|
}
|
31498
|
-
const version$1 = "3.8.1-
|
31660
|
+
const version$1 = "3.8.1-next.2025-04-15";
|
31499
31661
|
createVuetify$1.version = version$1;
|
31500
31662
|
|
31501
31663
|
// Vue's inject() can only be used in setup
|
@@ -31678,7 +31840,7 @@
|
|
31678
31840
|
flat: true
|
31679
31841
|
},
|
31680
31842
|
VAutocomplete: {
|
31681
|
-
variant: '
|
31843
|
+
variant: 'filled'
|
31682
31844
|
},
|
31683
31845
|
VBanner: {
|
31684
31846
|
color: 'primary'
|
@@ -31707,10 +31869,7 @@
|
|
31707
31869
|
rounded: 'sm'
|
31708
31870
|
},
|
31709
31871
|
VCombobox: {
|
31710
|
-
variant: '
|
31711
|
-
},
|
31712
|
-
VDateInput: {
|
31713
|
-
variant: 'outlined'
|
31872
|
+
variant: 'filled'
|
31714
31873
|
},
|
31715
31874
|
VDatePicker: {
|
31716
31875
|
controlHeight: 48,
|
@@ -31724,9 +31883,6 @@
|
|
31724
31883
|
rounded: 'circle'
|
31725
31884
|
}
|
31726
31885
|
},
|
31727
|
-
VFileInput: {
|
31728
|
-
variant: 'outlined'
|
31729
|
-
},
|
31730
31886
|
VNavigationDrawer: {
|
31731
31887
|
// VList: {
|
31732
31888
|
// nav: true,
|
@@ -31735,15 +31891,8 @@
|
|
31735
31891
|
// },
|
31736
31892
|
// },
|
31737
31893
|
},
|
31738
|
-
VNumberInput: {
|
31739
|
-
variant: 'outlined',
|
31740
|
-
VBtn: {
|
31741
|
-
color: undefined,
|
31742
|
-
rounded: undefined
|
31743
|
-
}
|
31744
|
-
},
|
31745
31894
|
VSelect: {
|
31746
|
-
variant: '
|
31895
|
+
variant: 'filled'
|
31747
31896
|
},
|
31748
31897
|
VSlider: {
|
31749
31898
|
color: 'primary'
|
@@ -31752,10 +31901,10 @@
|
|
31752
31901
|
color: 'primary'
|
31753
31902
|
},
|
31754
31903
|
VTextarea: {
|
31755
|
-
variant: '
|
31904
|
+
variant: 'filled'
|
31756
31905
|
},
|
31757
31906
|
VTextField: {
|
31758
|
-
variant: '
|
31907
|
+
variant: 'filled'
|
31759
31908
|
},
|
31760
31909
|
VToolbar: {
|
31761
31910
|
VBtn: {
|
@@ -31793,7 +31942,7 @@
|
|
31793
31942
|
|
31794
31943
|
/* eslint-disable local-rules/sort-imports */
|
31795
31944
|
|
31796
|
-
const version = "3.8.1-
|
31945
|
+
const version = "3.8.1-next.2025-04-15";
|
31797
31946
|
|
31798
31947
|
/* eslint-disable local-rules/sort-imports */
|
31799
31948
|
|