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