@vuetify/nightly 3.8.2-master.2025-04-19 → 3.8.2-master.2025-04-23
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 +23 -3
- package/dist/json/attributes.json +3523 -3523
- package/dist/json/importMap-labs.json +22 -22
- package/dist/json/importMap.json +144 -144
- package/dist/json/web-types.json +6716 -6457
- package/dist/vuetify-labs.cjs +624 -510
- package/dist/vuetify-labs.css +3327 -3318
- package/dist/vuetify-labs.d.ts +1835 -886
- package/dist/vuetify-labs.esm.js +625 -511
- package/dist/vuetify-labs.esm.js.map +1 -1
- package/dist/vuetify-labs.js +624 -510
- package/dist/vuetify-labs.min.css +2 -2
- package/dist/vuetify.cjs +402 -396
- package/dist/vuetify.cjs.map +1 -1
- package/dist/vuetify.css +3130 -3130
- package/dist/vuetify.d.ts +153 -151
- package/dist/vuetify.esm.js +403 -397
- package/dist/vuetify.esm.js.map +1 -1
- package/dist/vuetify.js +402 -396
- package/dist/vuetify.js.map +1 -1
- package/dist/vuetify.min.css +2 -2
- package/dist/vuetify.min.js +893 -886
- package/dist/vuetify.min.js.map +1 -1
- package/lib/components/VAlert/VAlert.js +8 -9
- package/lib/components/VAlert/VAlert.js.map +1 -1
- package/lib/components/VAppBar/VAppBar.js +4 -4
- package/lib/components/VAppBar/VAppBar.js.map +1 -1
- package/lib/components/VAutocomplete/VAutocomplete.js +1 -2
- package/lib/components/VAutocomplete/VAutocomplete.js.map +1 -1
- package/lib/components/VBadge/VBadge.js +2 -3
- package/lib/components/VBadge/VBadge.js.map +1 -1
- package/lib/components/VBanner/VBanner.js +3 -3
- package/lib/components/VBanner/VBanner.js.map +1 -1
- package/lib/components/VBottomNavigation/VBottomNavigation.js +8 -8
- package/lib/components/VBottomNavigation/VBottomNavigation.js.map +1 -1
- package/lib/components/VBreadcrumbs/VBreadcrumbs.js +6 -6
- package/lib/components/VBreadcrumbs/VBreadcrumbs.js.map +1 -1
- package/lib/components/VBreadcrumbs/VBreadcrumbsItem.js +1 -2
- package/lib/components/VBreadcrumbs/VBreadcrumbsItem.js.map +1 -1
- package/lib/components/VBtn/VBtn.js +3 -3
- package/lib/components/VBtn/VBtn.js.map +1 -1
- package/lib/components/VBtnGroup/VBtnGroup.js +4 -4
- package/lib/components/VBtnGroup/VBtnGroup.js.map +1 -1
- package/lib/components/VCard/VCard.js +7 -8
- package/lib/components/VCard/VCard.js.map +1 -1
- package/lib/components/VCheckbox/VCheckbox.js +2 -3
- package/lib/components/VCheckbox/VCheckbox.js.map +1 -1
- package/lib/components/VCheckbox/VCheckboxBtn.js +3 -3
- package/lib/components/VCheckbox/VCheckboxBtn.js.map +1 -1
- package/lib/components/VChip/VChip.js +8 -9
- package/lib/components/VChip/VChip.js.map +1 -1
- package/lib/components/VChipGroup/VChipGroup.js +5 -5
- package/lib/components/VChipGroup/VChipGroup.js.map +1 -1
- package/lib/components/VCombobox/VCombobox.js +3 -4
- package/lib/components/VCombobox/VCombobox.js.map +1 -1
- package/lib/components/VCounter/VCounter.js +2 -2
- package/lib/components/VCounter/VCounter.js.map +1 -1
- package/lib/components/VDataIterator/VDataIterator.js +2 -2
- package/lib/components/VDataIterator/VDataIterator.js.map +1 -1
- package/lib/components/VDataTable/VDataTable.js +7 -7
- package/lib/components/VDataTable/VDataTable.js.map +1 -1
- package/lib/components/VDataTable/VDataTableHeaders.js +1 -1
- package/lib/components/VDataTable/VDataTableHeaders.js.map +1 -1
- package/lib/components/VDataTable/VDataTableServer.js +7 -7
- package/lib/components/VDataTable/VDataTableServer.js.map +1 -1
- package/lib/components/VDataTable/VDataTableVirtual.js +7 -7
- package/lib/components/VDataTable/VDataTableVirtual.js.map +1 -1
- package/lib/components/VDataTable/composables/expand.d.ts +1 -1
- package/lib/components/VDataTable/composables/expand.js +1 -1
- package/lib/components/VDataTable/composables/expand.js.map +1 -1
- package/lib/components/VDataTable/composables/options.js +8 -8
- package/lib/components/VDataTable/composables/options.js.map +1 -1
- package/lib/components/VDataTable/composables/select.d.ts +2 -2
- package/lib/components/VDataTable/composables/select.js +2 -2
- package/lib/components/VDataTable/composables/select.js.map +1 -1
- package/lib/components/VDataTable/composables/sort.d.ts +2 -2
- package/lib/components/VDataTable/composables/sort.js +2 -2
- package/lib/components/VDataTable/composables/sort.js.map +1 -1
- package/lib/components/VDatePicker/VDatePicker.js +4 -4
- package/lib/components/VDatePicker/VDatePicker.js.map +1 -1
- package/lib/components/VDatePicker/VDatePickerHeader.js +1 -1
- package/lib/components/VDatePicker/VDatePickerHeader.js.map +1 -1
- package/lib/components/VDatePicker/VDatePickerMonth.js +2 -2
- package/lib/components/VDatePicker/VDatePickerMonth.js.map +1 -1
- package/lib/components/VDialog/VDialog.d.ts +9 -9
- package/lib/components/VDivider/VDivider.js +2 -2
- package/lib/components/VDivider/VDivider.js.map +1 -1
- package/lib/components/VEmptyState/VEmptyState.js +1 -2
- package/lib/components/VEmptyState/VEmptyState.js.map +1 -1
- package/lib/components/VExpansionPanel/VExpansionPanel.js +3 -3
- package/lib/components/VExpansionPanel/VExpansionPanel.js.map +1 -1
- package/lib/components/VExpansionPanel/VExpansionPanelTitle.js +3 -3
- package/lib/components/VExpansionPanel/VExpansionPanelTitle.js.map +1 -1
- package/lib/components/VExpansionPanel/VExpansionPanels.js +14 -14
- package/lib/components/VExpansionPanel/VExpansionPanels.js.map +1 -1
- package/lib/components/VFab/VFab.js +2 -2
- package/lib/components/VFab/VFab.js.map +1 -1
- package/lib/components/VField/VField.js +5 -5
- package/lib/components/VField/VField.js.map +1 -1
- package/lib/components/VFileInput/VFileInput.js +2 -2
- package/lib/components/VFileInput/VFileInput.js.map +1 -1
- package/lib/components/VFooter/VFooter.js +4 -4
- package/lib/components/VFooter/VFooter.js.map +1 -1
- package/lib/components/VForm/VForm.d.ts +40 -40
- package/lib/components/VIcon/VIcon.js +4 -4
- package/lib/components/VIcon/VIcon.js.map +1 -1
- package/lib/components/VImg/VImg.js +2 -2
- package/lib/components/VImg/VImg.js.map +1 -1
- package/lib/components/VInput/VInput.js +3 -3
- package/lib/components/VInput/VInput.js.map +1 -1
- package/lib/components/VLayout/VLayoutItem.js +5 -5
- package/lib/components/VLayout/VLayoutItem.js.map +1 -1
- package/lib/components/VList/VList.js +14 -14
- package/lib/components/VList/VList.js.map +1 -1
- package/lib/components/VList/VListGroup.js +2 -2
- package/lib/components/VList/VListGroup.js.map +1 -1
- package/lib/components/VList/VListItem.d.ts +3 -3
- package/lib/components/VList/VListItem.js +6 -6
- package/lib/components/VList/VListItem.js.map +1 -1
- package/lib/components/VList/VListSubheader.js +1 -2
- package/lib/components/VList/VListSubheader.js.map +1 -1
- package/lib/components/VMenu/VMenu.d.ts +15 -15
- package/lib/components/VMenu/VMenu.js +2 -2
- package/lib/components/VMenu/VMenu.js.map +1 -1
- package/lib/components/VMessages/VMessages.js +1 -1
- package/lib/components/VMessages/VMessages.js.map +1 -1
- package/lib/components/VNavigationDrawer/VNavigationDrawer.js +6 -6
- package/lib/components/VNavigationDrawer/VNavigationDrawer.js.map +1 -1
- package/lib/components/VNumberInput/VNumberInput.js +11 -11
- package/lib/components/VNumberInput/VNumberInput.js.map +1 -1
- package/lib/components/VOtpInput/VOtpInput.js +7 -7
- package/lib/components/VOtpInput/VOtpInput.js.map +1 -1
- package/lib/components/VOverlay/VOverlay.d.ts +3 -3
- package/lib/components/VOverlay/VOverlay.js +4 -4
- package/lib/components/VOverlay/VOverlay.js.map +1 -1
- package/lib/components/VOverlay/locationStrategies.js +10 -1
- package/lib/components/VOverlay/locationStrategies.js.map +1 -1
- package/lib/components/VPagination/VPagination.js +7 -7
- package/lib/components/VPagination/VPagination.js.map +1 -1
- package/lib/components/VProgressCircular/VProgressCircular.js +9 -9
- package/lib/components/VProgressCircular/VProgressCircular.js.map +1 -1
- package/lib/components/VProgressLinear/VProgressLinear.js +4 -4
- package/lib/components/VProgressLinear/VProgressLinear.js.map +1 -1
- package/lib/components/VSelect/VSelect.js +2 -2
- package/lib/components/VSelect/VSelect.js.map +1 -1
- package/lib/components/VSelectionControl/VSelectionControl.d.ts +1 -1
- package/lib/components/VSelectionControl/VSelectionControl.js +7 -7
- package/lib/components/VSelectionControl/VSelectionControl.js.map +1 -1
- package/lib/components/VSelectionControlGroup/VSelectionControlGroup.js +15 -15
- package/lib/components/VSelectionControlGroup/VSelectionControlGroup.js.map +1 -1
- package/lib/components/VSheet/VSheet.js +1 -2
- package/lib/components/VSheet/VSheet.js.map +1 -1
- package/lib/components/VSkeletonLoader/VSkeletonLoader.js +2 -2
- package/lib/components/VSkeletonLoader/VSkeletonLoader.js.map +1 -1
- package/lib/components/VSlider/slider.js +10 -10
- package/lib/components/VSlider/slider.js.map +1 -1
- package/lib/components/VSnackbar/VSnackbar.d.ts +9 -9
- package/lib/components/VSparkline/VSparkline.js +2 -2
- package/lib/components/VSparkline/VSparkline.js.map +1 -1
- package/lib/components/VSwitch/VSwitch.js +3 -3
- package/lib/components/VSwitch/VSwitch.js.map +1 -1
- package/lib/components/VSystemBar/VSystemBar.js +2 -2
- package/lib/components/VSystemBar/VSystemBar.js.map +1 -1
- package/lib/components/VTabs/VTab.d.ts +3 -3
- package/lib/components/VTabs/VTab.js +1 -1
- package/lib/components/VTabs/VTab.js.map +1 -1
- package/lib/components/VTabs/VTabs.js +7 -7
- package/lib/components/VTabs/VTabs.js.map +1 -1
- package/lib/components/VTimeline/VTimeline.js +9 -9
- package/lib/components/VTimeline/VTimeline.js.map +1 -1
- package/lib/components/VTimeline/VTimelineDivider.js +2 -3
- package/lib/components/VTimeline/VTimelineDivider.js.map +1 -1
- package/lib/components/VToolbar/VToolbar.js +2 -2
- package/lib/components/VToolbar/VToolbar.js.map +1 -1
- package/lib/components/VToolbar/VToolbarItems.js +2 -2
- package/lib/components/VToolbar/VToolbarItems.js.map +1 -1
- package/lib/components/VTooltip/VTooltip.d.ts +9 -9
- package/lib/components/VTooltip/VTooltip.js +3 -3
- package/lib/components/VTooltip/VTooltip.js.map +1 -1
- package/lib/components/VVirtualScroll/VVirtualScroll.js +1 -1
- package/lib/components/VVirtualScroll/VVirtualScroll.js.map +1 -1
- package/lib/components/VWindow/VWindow.js +3 -3
- package/lib/components/VWindow/VWindow.js.map +1 -1
- package/lib/components/transitions/dialog-transition.js +11 -2
- package/lib/components/transitions/dialog-transition.js.map +1 -1
- package/lib/composables/border.d.ts +1 -1
- package/lib/composables/border.js +5 -8
- package/lib/composables/border.js.map +1 -1
- package/lib/composables/calendar.d.ts +21 -54
- package/lib/composables/calendar.js +11 -11
- package/lib/composables/calendar.js.map +1 -1
- package/lib/composables/color.d.ts +8 -10
- package/lib/composables/color.js +21 -22
- package/lib/composables/color.js.map +1 -1
- package/lib/composables/density.d.ts +1 -1
- package/lib/composables/density.js +2 -2
- package/lib/composables/density.js.map +1 -1
- package/lib/composables/display.d.ts +4 -2
- package/lib/composables/display.js +2 -2
- package/lib/composables/display.js.map +1 -1
- package/lib/composables/elevation.js +4 -6
- package/lib/composables/elevation.js.map +1 -1
- package/lib/composables/focus.d.ts +4 -2
- package/lib/composables/focus.js +2 -2
- package/lib/composables/focus.js.map +1 -1
- package/lib/composables/form.d.ts +7 -7
- package/lib/composables/form.js +3 -3
- package/lib/composables/form.js.map +1 -1
- package/lib/composables/goto.js +2 -2
- package/lib/composables/goto.js.map +1 -1
- package/lib/composables/group.d.ts +3 -3
- package/lib/composables/group.js +4 -4
- package/lib/composables/group.js.map +1 -1
- package/lib/composables/icons.d.ts +2 -2
- package/lib/composables/icons.js +2 -2
- package/lib/composables/icons.js.map +1 -1
- package/lib/composables/layout.d.ts +10 -4
- package/lib/composables/layout.js +4 -4
- package/lib/composables/layout.js.map +1 -1
- package/lib/composables/lazy.d.ts +1 -1
- package/lib/composables/lazy.js +2 -2
- package/lib/composables/lazy.js.map +1 -1
- package/lib/composables/loader.d.ts +4 -2
- package/lib/composables/loader.js +2 -2
- package/lib/composables/loader.js.map +1 -1
- package/lib/composables/locale.js +3 -3
- package/lib/composables/locale.js.map +1 -1
- package/lib/composables/nested/nested.d.ts +3 -3
- package/lib/composables/nested/nested.js +4 -4
- package/lib/composables/nested/nested.js.map +1 -1
- package/lib/composables/position.d.ts +1 -1
- package/lib/composables/position.js +2 -2
- package/lib/composables/position.js.map +1 -1
- package/lib/composables/router.d.ts +3 -3
- package/lib/composables/router.js +8 -8
- package/lib/composables/router.js.map +1 -1
- package/lib/composables/size.d.ts +8 -5
- package/lib/composables/size.js +6 -5
- package/lib/composables/size.js.map +1 -1
- package/lib/composables/ssrBoot.d.ts +4 -2
- package/lib/composables/ssrBoot.js +2 -2
- package/lib/composables/ssrBoot.js.map +1 -1
- package/lib/composables/stack.d.ts +7 -5
- package/lib/composables/stack.js +5 -5
- package/lib/composables/stack.js.map +1 -1
- package/lib/composables/theme.js +7 -7
- 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/variant.d.ts +5 -6
- package/lib/composables/variant.js +6 -6
- package/lib/composables/variant.js.map +1 -1
- package/lib/entry-bundler.js +1 -1
- package/lib/framework.d.ts +66 -64
- package/lib/framework.js +1 -1
- package/lib/labs/VCalendar/VCalendar.d.ts +600 -211
- package/lib/labs/VCalendar/VCalendar.js +55 -27
- package/lib/labs/VCalendar/VCalendar.js.map +1 -1
- package/lib/labs/VCalendar/VCalendarDay.css +9 -0
- package/lib/labs/VCalendar/VCalendarDay.d.ts +329 -17
- package/lib/labs/VCalendar/VCalendarDay.js +18 -10
- package/lib/labs/VCalendar/VCalendarDay.js.map +1 -1
- package/lib/labs/VCalendar/VCalendarDay.sass +8 -0
- package/lib/labs/VCalendar/VCalendarEvent.js +15 -5
- package/lib/labs/VCalendar/VCalendarEvent.js.map +1 -1
- package/lib/labs/VCalendar/VCalendarHeader.d.ts +44 -17
- package/lib/labs/VCalendar/VCalendarHeader.js +5 -2
- package/lib/labs/VCalendar/VCalendarHeader.js.map +1 -1
- package/lib/labs/VCalendar/VCalendarInterval.d.ts +171 -17
- package/lib/labs/VCalendar/VCalendarInterval.js +66 -35
- package/lib/labs/VCalendar/VCalendarInterval.js.map +1 -1
- package/lib/labs/VCalendar/VCalendarIntervalEvent.d.ts +92 -17
- package/lib/labs/VCalendar/VCalendarIntervalEvent.js +30 -10
- package/lib/labs/VCalendar/VCalendarIntervalEvent.js.map +1 -1
- package/lib/labs/VCalendar/VCalendarMonthDay.d.ts +122 -88
- package/lib/labs/VCalendar/VCalendarMonthDay.js +24 -22
- package/lib/labs/VCalendar/VCalendarMonthDay.js.map +1 -1
- package/lib/labs/VIconBtn/VIconBtn.js +3 -3
- package/lib/labs/VIconBtn/VIconBtn.js.map +1 -1
- package/lib/labs/VPicker/VPicker.js +1 -2
- package/lib/labs/VPicker/VPicker.js.map +1 -1
- package/lib/labs/VTimePicker/VTimePickerClock.js +3 -3
- package/lib/labs/VTimePicker/VTimePickerClock.js.map +1 -1
- package/lib/labs/VTreeview/VTreeview.js +11 -11
- package/lib/labs/VTreeview/VTreeview.js.map +1 -1
- package/lib/util/box.js.map +1 -1
- package/lib/util/helpers.d.ts +5 -2
- package/lib/util/helpers.js +9 -5
- package/lib/util/helpers.js.map +1 -1
- package/package.json +1 -1
package/dist/vuetify-labs.esm.js
CHANGED
@@ -1,10 +1,10 @@
|
|
1
1
|
/*!
|
2
|
-
* Vuetify v3.8.2-master.2025-04-
|
2
|
+
* Vuetify v3.8.2-master.2025-04-23
|
3
3
|
* Forged by John Leider
|
4
4
|
* Released under the MIT License.
|
5
5
|
*/
|
6
6
|
|
7
|
-
import { shallowRef, reactive,
|
7
|
+
import { shallowRef, reactive, watchEffect, toRef, capitalize, unref, Fragment, isVNode, Comment, warn, getCurrentInstance as getCurrentInstance$1, ref, computed, provide, inject as inject$1, defineComponent as defineComponent$1, h, camelize, onBeforeUnmount, watch, readonly, onMounted, useId, onDeactivated, onActivated, onScopeDispose, effectScope, toRaw, createVNode, TransitionGroup, Transition, mergeProps, toRefs, toValue, isRef, onBeforeMount, nextTick, withDirectives, resolveDirective, vShow, onUpdated, Text, resolveDynamicComponent, toDisplayString, markRaw, Teleport, cloneVNode, createTextVNode, onUnmounted, onBeforeUpdate, withModifiers, vModelText, resolveComponent, render } from 'vue';
|
8
8
|
|
9
9
|
// Types
|
10
10
|
// eslint-disable-line vue/prefer-import-from-vue
|
@@ -442,15 +442,19 @@ function getEventCoordinates(e) {
|
|
442
442
|
|
443
443
|
function destructComputed(getter) {
|
444
444
|
const refs = reactive({});
|
445
|
-
const base = computed(getter);
|
446
445
|
watchEffect(() => {
|
447
|
-
|
448
|
-
|
446
|
+
const base = getter();
|
447
|
+
for (const key in base) {
|
448
|
+
refs[key] = base[key];
|
449
449
|
}
|
450
450
|
}, {
|
451
451
|
flush: 'sync'
|
452
452
|
});
|
453
|
-
|
453
|
+
const obj = {};
|
454
|
+
for (const key in refs) {
|
455
|
+
obj[key] = toRef(() => refs[key]);
|
456
|
+
}
|
457
|
+
return obj;
|
454
458
|
}
|
455
459
|
|
456
460
|
/** Array.includes but value can be any type */
|
@@ -1741,7 +1745,7 @@ function createLayout(props) {
|
|
1741
1745
|
const mainRect = computed(() => {
|
1742
1746
|
return layers.value[layers.value.length - 1].layer;
|
1743
1747
|
});
|
1744
|
-
const mainStyles =
|
1748
|
+
const mainStyles = toRef(() => {
|
1745
1749
|
return {
|
1746
1750
|
'--v-layout-left': convertToUnit(mainRect.value.left),
|
1747
1751
|
'--v-layout-right': convertToUnit(mainRect.value.right),
|
@@ -1856,10 +1860,10 @@ function createLayout(props) {
|
|
1856
1860
|
layoutRect,
|
1857
1861
|
rootZIndex
|
1858
1862
|
});
|
1859
|
-
const layoutClasses =
|
1863
|
+
const layoutClasses = toRef(() => ['v-layout', {
|
1860
1864
|
'v-layout--full-height': props.fullHeight
|
1861
1865
|
}]);
|
1862
|
-
const layoutStyles =
|
1866
|
+
const layoutStyles = toRef(() => ({
|
1863
1867
|
zIndex: parentLayout ? rootZIndex.value : undefined,
|
1864
1868
|
position: parentLayout ? 'relative' : undefined,
|
1865
1869
|
overflow: parentLayout ? 'hidden' : undefined
|
@@ -2250,7 +2254,7 @@ function createRtl(i18n, options) {
|
|
2250
2254
|
return {
|
2251
2255
|
isRtl,
|
2252
2256
|
rtl,
|
2253
|
-
rtlClasses:
|
2257
|
+
rtlClasses: toRef(() => `v-locale--is-${isRtl.value ? 'rtl' : 'ltr'}`)
|
2254
2258
|
};
|
2255
2259
|
}
|
2256
2260
|
function provideRtl(locale, rtl, props) {
|
@@ -2258,7 +2262,7 @@ function provideRtl(locale, rtl, props) {
|
|
2258
2262
|
return {
|
2259
2263
|
isRtl,
|
2260
2264
|
rtl,
|
2261
|
-
rtlClasses:
|
2265
|
+
rtlClasses: toRef(() => `v-locale--is-${isRtl.value ? 'rtl' : 'ltr'}`)
|
2262
2266
|
};
|
2263
2267
|
}
|
2264
2268
|
function useRtl() {
|
@@ -2482,7 +2486,7 @@ function createTheme(options) {
|
|
2482
2486
|
}
|
2483
2487
|
return acc;
|
2484
2488
|
});
|
2485
|
-
const current =
|
2489
|
+
const current = toRef(() => computedThemes.value[name.value]);
|
2486
2490
|
const styles = computed(() => {
|
2487
2491
|
const lines = [];
|
2488
2492
|
if (current.value?.dark) {
|
@@ -2529,7 +2533,7 @@ function createTheme(options) {
|
|
2529
2533
|
}
|
2530
2534
|
} else {
|
2531
2535
|
if (IN_BROWSER) {
|
2532
|
-
head.addHeadObjs(
|
2536
|
+
head.addHeadObjs(toRef(getHead));
|
2533
2537
|
watchEffect(() => head.updateDOM());
|
2534
2538
|
} else {
|
2535
2539
|
head.addHeadObjs(getHead());
|
@@ -2548,7 +2552,7 @@ function createTheme(options) {
|
|
2548
2552
|
}
|
2549
2553
|
}
|
2550
2554
|
}
|
2551
|
-
const themeClasses =
|
2555
|
+
const themeClasses = toRef(() => parsedOptions.isDisabled ? undefined : `v-theme--${name.value}`);
|
2552
2556
|
return {
|
2553
2557
|
install,
|
2554
2558
|
isDisabled: parsedOptions.isDisabled,
|
@@ -2568,9 +2572,9 @@ function provideTheme(props) {
|
|
2568
2572
|
getCurrentInstance('provideTheme');
|
2569
2573
|
const theme = inject$1(ThemeSymbol, null);
|
2570
2574
|
if (!theme) throw new Error('Could not find Vuetify theme injection');
|
2571
|
-
const name =
|
2572
|
-
const current =
|
2573
|
-
const themeClasses =
|
2575
|
+
const name = toRef(() => props.theme ?? theme.name.value);
|
2576
|
+
const current = toRef(() => theme.themes.value[name.value]);
|
2577
|
+
const themeClasses = toRef(() => theme.isDisabled ? undefined : `v-theme--${name.value}`);
|
2574
2578
|
const newTheme = {
|
2575
2579
|
...theme,
|
2576
2580
|
name,
|
@@ -2854,6 +2858,7 @@ function ExpandTransitionGenerator () {
|
|
2854
2858
|
const makeVDialogTransitionProps = propsFactory({
|
2855
2859
|
target: [Object, Array]
|
2856
2860
|
}, 'v-dialog-transition');
|
2861
|
+
const saved = new WeakMap();
|
2857
2862
|
const VDialogTransition = genericComponent()({
|
2858
2863
|
name: 'VDialogTransition',
|
2859
2864
|
props: makeVDialogTransitionProps(),
|
@@ -2870,13 +2875,15 @@ const VDialogTransition = genericComponent()({
|
|
2870
2875
|
await new Promise(resolve => requestAnimationFrame(resolve));
|
2871
2876
|
await new Promise(resolve => requestAnimationFrame(resolve));
|
2872
2877
|
el.style.visibility = '';
|
2878
|
+
const dimensions = getDimensions(props.target, el);
|
2873
2879
|
const {
|
2874
2880
|
x,
|
2875
2881
|
y,
|
2876
2882
|
sx,
|
2877
2883
|
sy,
|
2878
2884
|
speed
|
2879
|
-
} =
|
2885
|
+
} = dimensions;
|
2886
|
+
saved.set(el, dimensions);
|
2880
2887
|
const animation = animate(el, [{
|
2881
2888
|
transform: `translate(${x}px, ${y}px) scale(${sx}, ${sy})`,
|
2882
2889
|
opacity: 0
|
@@ -2905,13 +2912,19 @@ const VDialogTransition = genericComponent()({
|
|
2905
2912
|
},
|
2906
2913
|
async onLeave(el, done) {
|
2907
2914
|
await new Promise(resolve => requestAnimationFrame(resolve));
|
2915
|
+
let dimensions;
|
2916
|
+
if (!Array.isArray(props.target) && !props.target.offsetParent && saved.has(el)) {
|
2917
|
+
dimensions = saved.get(el);
|
2918
|
+
} else {
|
2919
|
+
dimensions = getDimensions(props.target, el);
|
2920
|
+
}
|
2908
2921
|
const {
|
2909
2922
|
x,
|
2910
2923
|
y,
|
2911
2924
|
sx,
|
2912
2925
|
sy,
|
2913
2926
|
speed
|
2914
|
-
} =
|
2927
|
+
} = dimensions;
|
2915
2928
|
const animation = animate(el, [{}, {
|
2916
2929
|
transform: `translate(${x}px, ${y}px) scale(${sx}, ${sy})`,
|
2917
2930
|
opacity: 0
|
@@ -3131,13 +3144,14 @@ const VResponsive = genericComponent()({
|
|
3131
3144
|
// Composables
|
3132
3145
|
function useColor(colors) {
|
3133
3146
|
return destructComputed(() => {
|
3147
|
+
const _colors = toValue(colors);
|
3134
3148
|
const classes = [];
|
3135
3149
|
const styles = {};
|
3136
|
-
if (
|
3137
|
-
if (isCssColor(
|
3138
|
-
styles.backgroundColor =
|
3139
|
-
if (!
|
3140
|
-
const backgroundColor = parseColor(
|
3150
|
+
if (_colors.background) {
|
3151
|
+
if (isCssColor(_colors.background)) {
|
3152
|
+
styles.backgroundColor = _colors.background;
|
3153
|
+
if (!_colors.text && isParsableColor(_colors.background)) {
|
3154
|
+
const backgroundColor = parseColor(_colors.background);
|
3141
3155
|
if (backgroundColor.a == null || backgroundColor.a === 1) {
|
3142
3156
|
const textColor = getForeground(backgroundColor);
|
3143
3157
|
styles.color = textColor;
|
@@ -3145,15 +3159,15 @@ function useColor(colors) {
|
|
3145
3159
|
}
|
3146
3160
|
}
|
3147
3161
|
} else {
|
3148
|
-
classes.push(`bg-${
|
3162
|
+
classes.push(`bg-${_colors.background}`);
|
3149
3163
|
}
|
3150
3164
|
}
|
3151
|
-
if (
|
3152
|
-
if (isCssColor(
|
3153
|
-
styles.color =
|
3154
|
-
styles.caretColor =
|
3165
|
+
if (_colors.text) {
|
3166
|
+
if (isCssColor(_colors.text)) {
|
3167
|
+
styles.color = _colors.text;
|
3168
|
+
styles.caretColor = _colors.text;
|
3155
3169
|
} else {
|
3156
|
-
classes.push(`text-${
|
3170
|
+
classes.push(`text-${_colors.text}`);
|
3157
3171
|
}
|
3158
3172
|
}
|
3159
3173
|
return {
|
@@ -3162,27 +3176,25 @@ function useColor(colors) {
|
|
3162
3176
|
};
|
3163
3177
|
});
|
3164
3178
|
}
|
3165
|
-
function useTextColor(
|
3166
|
-
const colors = computed(() => ({
|
3167
|
-
text: isRef(props) ? props.value : name ? props[name] : null
|
3168
|
-
}));
|
3179
|
+
function useTextColor(color) {
|
3169
3180
|
const {
|
3170
3181
|
colorClasses: textColorClasses,
|
3171
3182
|
colorStyles: textColorStyles
|
3172
|
-
} = useColor(
|
3183
|
+
} = useColor(() => ({
|
3184
|
+
text: toValue(color)
|
3185
|
+
}));
|
3173
3186
|
return {
|
3174
3187
|
textColorClasses,
|
3175
3188
|
textColorStyles
|
3176
3189
|
};
|
3177
3190
|
}
|
3178
|
-
function useBackgroundColor(
|
3179
|
-
const colors = computed(() => ({
|
3180
|
-
background: isRef(props) ? props.value : name ? props[name] : null
|
3181
|
-
}));
|
3191
|
+
function useBackgroundColor(color) {
|
3182
3192
|
const {
|
3183
3193
|
colorClasses: backgroundColorClasses,
|
3184
3194
|
colorStyles: backgroundColorStyles
|
3185
|
-
} = useColor(
|
3195
|
+
} = useColor(() => ({
|
3196
|
+
background: toValue(color)
|
3197
|
+
}));
|
3186
3198
|
return {
|
3187
3199
|
backgroundColorClasses,
|
3188
3200
|
backgroundColorStyles
|
@@ -3366,7 +3378,7 @@ const VImg = genericComponent()({
|
|
3366
3378
|
const {
|
3367
3379
|
backgroundColorClasses,
|
3368
3380
|
backgroundColorStyles
|
3369
|
-
} = useBackgroundColor(
|
3381
|
+
} = useBackgroundColor(() => props.color);
|
3370
3382
|
const {
|
3371
3383
|
roundedClasses
|
3372
3384
|
} = useRounded(props);
|
@@ -3473,7 +3485,7 @@ const VImg = genericComponent()({
|
|
3473
3485
|
};
|
3474
3486
|
poll();
|
3475
3487
|
}
|
3476
|
-
const containClasses =
|
3488
|
+
const containClasses = toRef(() => ({
|
3477
3489
|
'v-img__img--cover': props.cover,
|
3478
3490
|
'v-img__img--contain': !props.cover
|
3479
3491
|
}));
|
@@ -3610,16 +3622,13 @@ const makeBorderProps = propsFactory({
|
|
3610
3622
|
function useBorder(props) {
|
3611
3623
|
let name = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : getCurrentInstanceName();
|
3612
3624
|
const borderClasses = computed(() => {
|
3613
|
-
const border =
|
3614
|
-
const classes = [];
|
3625
|
+
const border = props.border;
|
3615
3626
|
if (border === true || border === '') {
|
3616
|
-
|
3627
|
+
return `${name}--border`;
|
3617
3628
|
} else if (typeof border === 'string' || border === 0) {
|
3618
|
-
|
3619
|
-
classes.push(`border-${value}`);
|
3620
|
-
}
|
3629
|
+
return String(border).split(' ').map(v => `border-${v}`);
|
3621
3630
|
}
|
3622
|
-
return
|
3631
|
+
return [];
|
3623
3632
|
});
|
3624
3633
|
return {
|
3625
3634
|
borderClasses
|
@@ -3644,12 +3653,10 @@ const makeElevationProps = propsFactory({
|
|
3644
3653
|
}
|
3645
3654
|
}, 'elevation');
|
3646
3655
|
function useElevation(props) {
|
3647
|
-
const elevationClasses =
|
3656
|
+
const elevationClasses = toRef(() => {
|
3648
3657
|
const elevation = isRef(props) ? props.value : props.elevation;
|
3649
|
-
|
3650
|
-
|
3651
|
-
classes.push(`elevation-${elevation}`);
|
3652
|
-
return classes;
|
3658
|
+
if (elevation == null) return [];
|
3659
|
+
return [`elevation-${elevation}`];
|
3653
3660
|
});
|
3654
3661
|
return {
|
3655
3662
|
elevationClasses
|
@@ -3700,7 +3707,7 @@ const VToolbar = genericComponent()({
|
|
3700
3707
|
const {
|
3701
3708
|
backgroundColorClasses,
|
3702
3709
|
backgroundColorStyles
|
3703
|
-
} = useBackgroundColor(
|
3710
|
+
} = useBackgroundColor(() => props.color);
|
3704
3711
|
const {
|
3705
3712
|
borderClasses
|
3706
3713
|
} = useBorder(props);
|
@@ -3909,7 +3916,7 @@ function useSsrBoot() {
|
|
3909
3916
|
isBooted.value = true;
|
3910
3917
|
});
|
3911
3918
|
});
|
3912
|
-
const ssrBootStyles =
|
3919
|
+
const ssrBootStyles = toRef(() => !isBooted.value ? {
|
3913
3920
|
transition: 'none !important'
|
3914
3921
|
} : undefined);
|
3915
3922
|
return {
|
@@ -3977,7 +3984,7 @@ const VAppBar = genericComponent()({
|
|
3977
3984
|
} = useScroll(props, {
|
3978
3985
|
canScroll
|
3979
3986
|
});
|
3980
|
-
const canHide =
|
3987
|
+
const canHide = toRef(() => scrollBehavior.value.hide || scrollBehavior.value.fullyHide);
|
3981
3988
|
const isCollapsed = computed(() => props.collapse || scrollBehavior.value.collapse && (scrollBehavior.value.inverted ? scrollRatio.value > 0 : scrollRatio.value === 0));
|
3982
3989
|
const isFlat = computed(() => props.flat || scrollBehavior.value.fullyHide && !isActive.value || scrollBehavior.value.elevate && (scrollBehavior.value.inverted ? currentScroll.value > 0 : currentScroll.value === 0));
|
3983
3990
|
const opacity = computed(() => scrollBehavior.value.fadeImage ? scrollBehavior.value.inverted ? 1 - scrollRatio.value : scrollRatio.value : undefined);
|
@@ -3988,7 +3995,7 @@ const VAppBar = genericComponent()({
|
|
3988
3995
|
if (!canHide.value) return height + extensionHeight;
|
3989
3996
|
return currentScroll.value < scrollThreshold.value || scrollBehavior.value.fullyHide ? height + extensionHeight : height;
|
3990
3997
|
});
|
3991
|
-
useToggleScope(
|
3998
|
+
useToggleScope(() => !!props.scrollBehavior, () => {
|
3992
3999
|
watchEffect(() => {
|
3993
4000
|
if (canHide.value) {
|
3994
4001
|
if (scrollBehavior.value.inverted) {
|
@@ -4009,11 +4016,11 @@ const VAppBar = genericComponent()({
|
|
4009
4016
|
} = useLayoutItem({
|
4010
4017
|
id: props.name,
|
4011
4018
|
order: computed(() => parseInt(props.order, 10)),
|
4012
|
-
position: toRef(props
|
4019
|
+
position: toRef(() => props.location),
|
4013
4020
|
layoutSize: height,
|
4014
4021
|
elementSize: shallowRef(undefined),
|
4015
4022
|
active: isActive,
|
4016
|
-
absolute: toRef(props
|
4023
|
+
absolute: toRef(() => props.absolute)
|
4017
4024
|
});
|
4018
4025
|
useRender(() => {
|
4019
4026
|
const toolbarProps = VToolbar.filterProps(props);
|
@@ -4056,7 +4063,7 @@ const makeDensityProps = propsFactory({
|
|
4056
4063
|
}, 'density');
|
4057
4064
|
function useDensity(props) {
|
4058
4065
|
let name = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : getCurrentInstanceName();
|
4059
|
-
const densityClasses =
|
4066
|
+
const densityClasses = toRef(() => {
|
4060
4067
|
return `${name}--density-${props.density}`;
|
4061
4068
|
});
|
4062
4069
|
return {
|
@@ -4086,24 +4093,24 @@ const makeVariantProps = propsFactory({
|
|
4086
4093
|
}, 'variant');
|
4087
4094
|
function useVariant(props) {
|
4088
4095
|
let name = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : getCurrentInstanceName();
|
4089
|
-
const variantClasses =
|
4096
|
+
const variantClasses = toRef(() => {
|
4090
4097
|
const {
|
4091
4098
|
variant
|
4092
|
-
} =
|
4099
|
+
} = toValue(props);
|
4093
4100
|
return `${name}--variant-${variant}`;
|
4094
4101
|
});
|
4095
4102
|
const {
|
4096
4103
|
colorClasses,
|
4097
4104
|
colorStyles
|
4098
|
-
} = useColor(
|
4105
|
+
} = useColor(() => {
|
4099
4106
|
const {
|
4100
4107
|
variant,
|
4101
4108
|
color
|
4102
|
-
} =
|
4109
|
+
} = toValue(props);
|
4103
4110
|
return {
|
4104
4111
|
[['elevated', 'flat'].includes(variant) ? 'background' : 'text']: color
|
4105
4112
|
};
|
4106
|
-
})
|
4113
|
+
});
|
4107
4114
|
return {
|
4108
4115
|
colorClasses,
|
4109
4116
|
colorStyles,
|
@@ -4148,11 +4155,11 @@ const VBtnGroup = genericComponent()({
|
|
4148
4155
|
provideDefaults({
|
4149
4156
|
VBtn: {
|
4150
4157
|
height: 'auto',
|
4151
|
-
baseColor: toRef(props
|
4152
|
-
color: toRef(props
|
4153
|
-
density: toRef(props
|
4158
|
+
baseColor: toRef(() => props.baseColor),
|
4159
|
+
color: toRef(() => props.color),
|
4160
|
+
density: toRef(() => props.density),
|
4154
4161
|
flat: true,
|
4155
|
-
variant: toRef(props
|
4162
|
+
variant: toRef(() => props.variant)
|
4156
4163
|
}
|
4157
4164
|
});
|
4158
4165
|
useRender(() => {
|
@@ -4202,7 +4209,7 @@ function useGroupItem(props, injectKey) {
|
|
4202
4209
|
if (!required) return group;
|
4203
4210
|
throw new Error(`[Vuetify] Could not find useGroup injection with symbol ${injectKey.description}`);
|
4204
4211
|
}
|
4205
|
-
const value = toRef(props
|
4212
|
+
const value = toRef(() => props.value);
|
4206
4213
|
const disabled = computed(() => !!(group.disabled.value || props.disabled));
|
4207
4214
|
group.register({
|
4208
4215
|
id,
|
@@ -4351,12 +4358,12 @@ function useGroup(props, injectKey) {
|
|
4351
4358
|
unregister,
|
4352
4359
|
selected,
|
4353
4360
|
select,
|
4354
|
-
disabled: toRef(props
|
4361
|
+
disabled: toRef(() => props.disabled),
|
4355
4362
|
prev: () => step(items.length - 1),
|
4356
4363
|
next: () => step(1),
|
4357
4364
|
isSelected: id => selected.value.includes(id),
|
4358
|
-
selectedClass:
|
4359
|
-
items:
|
4365
|
+
selectedClass: toRef(() => props.selectedClass),
|
4366
|
+
items: toRef(() => items),
|
4360
4367
|
getItemIndex: value => getItemIndex(items, value)
|
4361
4368
|
};
|
4362
4369
|
provide(injectKey, state);
|
@@ -4612,7 +4619,7 @@ const useIcon = props => {
|
|
4612
4619
|
const icons = inject$1(IconSymbol);
|
4613
4620
|
if (!icons) throw new Error('Missing Vuetify Icons provide!');
|
4614
4621
|
const iconData = computed(() => {
|
4615
|
-
const iconAlias =
|
4622
|
+
const iconAlias = toValue(props);
|
4616
4623
|
if (!iconAlias) return {
|
4617
4624
|
component: VComponentIcon
|
4618
4625
|
};
|
@@ -4662,14 +4669,15 @@ const makeSizeProps = propsFactory({
|
|
4662
4669
|
function useSize(props) {
|
4663
4670
|
let name = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : getCurrentInstanceName();
|
4664
4671
|
return destructComputed(() => {
|
4672
|
+
const size = props.size;
|
4665
4673
|
let sizeClasses;
|
4666
4674
|
let sizeStyles;
|
4667
|
-
if (includes(predefinedSizes,
|
4668
|
-
sizeClasses = `${name}--size-${
|
4669
|
-
} else if (
|
4675
|
+
if (includes(predefinedSizes, size)) {
|
4676
|
+
sizeClasses = `${name}--size-${size}`;
|
4677
|
+
} else if (size) {
|
4670
4678
|
sizeStyles = {
|
4671
|
-
width: convertToUnit(
|
4672
|
-
height: convertToUnit(
|
4679
|
+
width: convertToUnit(size),
|
4680
|
+
height: convertToUnit(size)
|
4673
4681
|
};
|
4674
4682
|
}
|
4675
4683
|
return {
|
@@ -4701,20 +4709,20 @@ const VIcon = genericComponent()({
|
|
4701
4709
|
attrs,
|
4702
4710
|
slots
|
4703
4711
|
} = _ref;
|
4704
|
-
const slotIcon =
|
4712
|
+
const slotIcon = shallowRef();
|
4705
4713
|
const {
|
4706
4714
|
themeClasses
|
4707
4715
|
} = useTheme();
|
4708
4716
|
const {
|
4709
4717
|
iconData
|
4710
|
-
} = useIcon(
|
4718
|
+
} = useIcon(() => slotIcon.value || props.icon);
|
4711
4719
|
const {
|
4712
4720
|
sizeClasses
|
4713
4721
|
} = useSize(props);
|
4714
4722
|
const {
|
4715
4723
|
textColorClasses,
|
4716
4724
|
textColorStyles
|
4717
|
-
} = useTextColor(
|
4725
|
+
} = useTextColor(() => props.color);
|
4718
4726
|
useRender(() => {
|
4719
4727
|
const slotValue = slots.default?.();
|
4720
4728
|
if (slotValue) {
|
@@ -4820,11 +4828,11 @@ const VProgressCircular = genericComponent()({
|
|
4820
4828
|
const {
|
4821
4829
|
textColorClasses,
|
4822
4830
|
textColorStyles
|
4823
|
-
} = useTextColor(
|
4831
|
+
} = useTextColor(() => props.color);
|
4824
4832
|
const {
|
4825
4833
|
textColorClasses: underlayColorClasses,
|
4826
4834
|
textColorStyles: underlayColorStyles
|
4827
|
-
} = useTextColor(
|
4835
|
+
} = useTextColor(() => props.bgColor);
|
4828
4836
|
const {
|
4829
4837
|
intersectionRef,
|
4830
4838
|
isIntersecting
|
@@ -4833,15 +4841,15 @@ const VProgressCircular = genericComponent()({
|
|
4833
4841
|
resizeRef,
|
4834
4842
|
contentRect
|
4835
4843
|
} = useResizeObserver();
|
4836
|
-
const normalizedValue =
|
4837
|
-
const width =
|
4838
|
-
const size =
|
4844
|
+
const normalizedValue = toRef(() => Math.max(0, Math.min(100, parseFloat(props.modelValue))));
|
4845
|
+
const width = toRef(() => Number(props.width));
|
4846
|
+
const size = toRef(() => {
|
4839
4847
|
// Get size from element if size prop value is small, large etc
|
4840
4848
|
return sizeStyles.value ? Number(props.size) : contentRect.value ? contentRect.value.width : Math.max(width.value, 32);
|
4841
4849
|
});
|
4842
|
-
const diameter =
|
4843
|
-
const strokeWidth =
|
4844
|
-
const strokeDashOffset =
|
4850
|
+
const diameter = toRef(() => MAGIC_RADIUS_CONSTANT / (1 - width.value / size.value) * 2);
|
4851
|
+
const strokeWidth = toRef(() => width.value / size.value * diameter.value);
|
4852
|
+
const strokeDashOffset = toRef(() => convertToUnit((100 - normalizedValue.value) / 100 * CIRCUMFERENCE));
|
4845
4853
|
watchEffect(() => {
|
4846
4854
|
intersectionRef.value = root.value;
|
4847
4855
|
resizeRef.value = root.value;
|
@@ -5019,19 +5027,19 @@ const VProgressLinear = genericComponent()({
|
|
5019
5027
|
const {
|
5020
5028
|
textColorClasses,
|
5021
5029
|
textColorStyles
|
5022
|
-
} = useTextColor(props
|
5030
|
+
} = useTextColor(() => props.color);
|
5023
5031
|
const {
|
5024
5032
|
backgroundColorClasses,
|
5025
5033
|
backgroundColorStyles
|
5026
|
-
} = useBackgroundColor(
|
5034
|
+
} = useBackgroundColor(() => props.bgColor || props.color);
|
5027
5035
|
const {
|
5028
5036
|
backgroundColorClasses: bufferColorClasses,
|
5029
5037
|
backgroundColorStyles: bufferColorStyles
|
5030
|
-
} = useBackgroundColor(
|
5038
|
+
} = useBackgroundColor(() => props.bufferColor || props.bgColor || props.color);
|
5031
5039
|
const {
|
5032
5040
|
backgroundColorClasses: barColorClasses,
|
5033
5041
|
backgroundColorStyles: barColorStyles
|
5034
|
-
} = useBackgroundColor(props
|
5042
|
+
} = useBackgroundColor(() => props.color);
|
5035
5043
|
const {
|
5036
5044
|
roundedClasses
|
5037
5045
|
} = useRounded(props);
|
@@ -5138,7 +5146,7 @@ const makeLoaderProps = propsFactory({
|
|
5138
5146
|
}, 'loader');
|
5139
5147
|
function useLoader(props) {
|
5140
5148
|
let name = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : getCurrentInstanceName();
|
5141
|
-
const loaderClasses =
|
5149
|
+
const loaderClasses = toRef(() => ({
|
5142
5150
|
[`${name}--loading`]: props.loading
|
5143
5151
|
}));
|
5144
5152
|
return {
|
@@ -5177,7 +5185,7 @@ const makePositionProps = propsFactory({
|
|
5177
5185
|
}, 'position');
|
5178
5186
|
function usePosition(props) {
|
5179
5187
|
let name = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : getCurrentInstanceName();
|
5180
|
-
const positionClasses =
|
5188
|
+
const positionClasses = toRef(() => {
|
5181
5189
|
return props.position ? `${name}--${props.position}` : undefined;
|
5182
5190
|
});
|
5183
5191
|
return {
|
@@ -5198,12 +5206,12 @@ function useRouter() {
|
|
5198
5206
|
}
|
5199
5207
|
function useLink(props, attrs) {
|
5200
5208
|
const RouterLink = resolveDynamicComponent('RouterLink');
|
5201
|
-
const isLink =
|
5209
|
+
const isLink = toRef(() => !!(props.href || props.to));
|
5202
5210
|
const isClickable = computed(() => {
|
5203
5211
|
return isLink?.value || hasEvent(attrs, 'click') || hasEvent(props, 'click');
|
5204
5212
|
});
|
5205
5213
|
if (typeof RouterLink === 'string' || !('useLink' in RouterLink)) {
|
5206
|
-
const href = toRef(props
|
5214
|
+
const href = toRef(() => props.href);
|
5207
5215
|
return {
|
5208
5216
|
isLink,
|
5209
5217
|
isClickable,
|
@@ -5213,12 +5221,12 @@ function useLink(props, attrs) {
|
|
5213
5221
|
})
|
5214
5222
|
};
|
5215
5223
|
}
|
5224
|
+
|
5216
5225
|
// vue-router useLink `to` prop needs to be reactive and useLink will crash if undefined
|
5217
|
-
const
|
5218
|
-
|
5219
|
-
|
5220
|
-
})
|
5221
|
-
const routerLink = RouterLink.useLink(linkProps.value);
|
5226
|
+
const routerLink = RouterLink.useLink({
|
5227
|
+
to: toRef(() => props.to || ''),
|
5228
|
+
replace: toRef(() => props.replace)
|
5229
|
+
});
|
5222
5230
|
// Actual link needs to be undefined when to prop is not used
|
5223
5231
|
const link = computed(() => props.to ? routerLink : undefined);
|
5224
5232
|
const route = useRoute();
|
@@ -5238,7 +5246,7 @@ function useLink(props, attrs) {
|
|
5238
5246
|
href,
|
5239
5247
|
linkProps: reactive({
|
5240
5248
|
href,
|
5241
|
-
'aria-current':
|
5249
|
+
'aria-current': toRef(() => isActive.value ? 'page' : undefined)
|
5242
5250
|
})
|
5243
5251
|
};
|
5244
5252
|
}
|
@@ -5687,7 +5695,7 @@ const VBtn = genericComponent()({
|
|
5687
5695
|
}
|
5688
5696
|
return group?.isSelected.value;
|
5689
5697
|
});
|
5690
|
-
const color =
|
5698
|
+
const color = toRef(() => isActive.value ? props.activeColor ?? props.color : props.color);
|
5691
5699
|
const variantProps = computed(() => {
|
5692
5700
|
const showColor = group?.isSelected.value && (!link.isLink.value || link.isActive?.value) || !group || link.isActive?.value;
|
5693
5701
|
return {
|
@@ -5701,7 +5709,7 @@ const VBtn = genericComponent()({
|
|
5701
5709
|
variantClasses
|
5702
5710
|
} = useVariant(variantProps);
|
5703
5711
|
const isDisabled = computed(() => group?.disabled.value || props.disabled);
|
5704
|
-
const isElevated =
|
5712
|
+
const isElevated = toRef(() => {
|
5705
5713
|
return props.variant === 'elevated' && !(props.disabled || props.flat || props.border);
|
5706
5714
|
});
|
5707
5715
|
const valueAttr = computed(() => {
|
@@ -5904,15 +5912,11 @@ const VAlert = genericComponent()({
|
|
5904
5912
|
slots
|
5905
5913
|
} = _ref;
|
5906
5914
|
const isActive = useProxiedModel(props, 'modelValue');
|
5907
|
-
const icon =
|
5915
|
+
const icon = toRef(() => {
|
5908
5916
|
if (props.icon === false) return undefined;
|
5909
5917
|
if (!props.type) return props.icon;
|
5910
5918
|
return props.icon ?? `$${props.type}`;
|
5911
5919
|
});
|
5912
|
-
const variantProps = computed(() => ({
|
5913
|
-
color: props.color ?? props.type,
|
5914
|
-
variant: props.variant
|
5915
|
-
}));
|
5916
5920
|
const {
|
5917
5921
|
themeClasses
|
5918
5922
|
} = provideTheme(props);
|
@@ -5920,7 +5924,10 @@ const VAlert = genericComponent()({
|
|
5920
5924
|
colorClasses,
|
5921
5925
|
colorStyles,
|
5922
5926
|
variantClasses
|
5923
|
-
} = useVariant(
|
5927
|
+
} = useVariant(() => ({
|
5928
|
+
color: props.color ?? props.type,
|
5929
|
+
variant: props.variant
|
5930
|
+
}));
|
5924
5931
|
const {
|
5925
5932
|
densityClasses
|
5926
5933
|
} = useDensity(props);
|
@@ -5942,11 +5949,11 @@ const VAlert = genericComponent()({
|
|
5942
5949
|
const {
|
5943
5950
|
textColorClasses,
|
5944
5951
|
textColorStyles
|
5945
|
-
} = useTextColor(
|
5952
|
+
} = useTextColor(() => props.borderColor);
|
5946
5953
|
const {
|
5947
5954
|
t
|
5948
5955
|
} = useLocale();
|
5949
|
-
const closeProps =
|
5956
|
+
const closeProps = toRef(() => ({
|
5950
5957
|
'aria-label': t(props.closeLabel),
|
5951
5958
|
onClick(e) {
|
5952
5959
|
isActive.value = false;
|
@@ -6183,8 +6190,8 @@ const VSelectionControlGroup = genericComponent()({
|
|
6183
6190
|
} = _ref;
|
6184
6191
|
const modelValue = useProxiedModel(props, 'modelValue');
|
6185
6192
|
const uid = useId();
|
6186
|
-
const id =
|
6187
|
-
const name =
|
6193
|
+
const id = toRef(() => props.id || `v-selection-control-group-${uid}`);
|
6194
|
+
const name = toRef(() => props.name || id.value);
|
6188
6195
|
const updateHandlers = new Set();
|
6189
6196
|
provide(VSelectionControlGroupSymbol, {
|
6190
6197
|
modelValue,
|
@@ -6200,20 +6207,20 @@ const VSelectionControlGroup = genericComponent()({
|
|
6200
6207
|
});
|
6201
6208
|
provideDefaults({
|
6202
6209
|
[props.defaultsTarget]: {
|
6203
|
-
color: toRef(props
|
6204
|
-
disabled: toRef(props
|
6205
|
-
density: toRef(props
|
6206
|
-
error: toRef(props
|
6207
|
-
inline: toRef(props
|
6210
|
+
color: toRef(() => props.color),
|
6211
|
+
disabled: toRef(() => props.disabled),
|
6212
|
+
density: toRef(() => props.density),
|
6213
|
+
error: toRef(() => props.error),
|
6214
|
+
inline: toRef(() => props.inline),
|
6208
6215
|
modelValue,
|
6209
|
-
multiple:
|
6216
|
+
multiple: toRef(() => !!props.multiple || props.multiple == null && Array.isArray(modelValue.value)),
|
6210
6217
|
name,
|
6211
|
-
falseIcon: toRef(props
|
6212
|
-
trueIcon: toRef(props
|
6213
|
-
readonly: toRef(props
|
6214
|
-
ripple: toRef(props
|
6215
|
-
type: toRef(props
|
6216
|
-
valueComparator: toRef(props
|
6218
|
+
falseIcon: toRef(() => props.falseIcon),
|
6219
|
+
trueIcon: toRef(() => props.trueIcon),
|
6220
|
+
readonly: toRef(() => props.readonly),
|
6221
|
+
ripple: toRef(() => props.ripple),
|
6222
|
+
type: toRef(() => props.type),
|
6223
|
+
valueComparator: toRef(() => props.valueComparator)
|
6217
6224
|
}
|
6218
6225
|
});
|
6219
6226
|
useRender(() => createVNode("div", {
|
@@ -6269,16 +6276,16 @@ function useSelectionControl(props) {
|
|
6269
6276
|
const {
|
6270
6277
|
textColorClasses,
|
6271
6278
|
textColorStyles
|
6272
|
-
} = useTextColor(
|
6279
|
+
} = useTextColor(() => {
|
6273
6280
|
if (props.error || props.disabled) return undefined;
|
6274
6281
|
return model.value ? props.color : props.baseColor;
|
6275
|
-
})
|
6282
|
+
});
|
6276
6283
|
const {
|
6277
6284
|
backgroundColorClasses,
|
6278
6285
|
backgroundColorStyles
|
6279
|
-
} = useBackgroundColor(
|
6286
|
+
} = useBackgroundColor(() => {
|
6280
6287
|
return model.value && !props.error && !props.disabled ? props.color : props.baseColor;
|
6281
|
-
})
|
6288
|
+
});
|
6282
6289
|
const icon = computed(() => model.value ? props.trueIcon : props.falseIcon);
|
6283
6290
|
return {
|
6284
6291
|
group,
|
@@ -6323,8 +6330,8 @@ const VSelectionControl = genericComponent()({
|
|
6323
6330
|
const isFocused = shallowRef(false);
|
6324
6331
|
const isFocusVisible = shallowRef(false);
|
6325
6332
|
const input = ref();
|
6326
|
-
const id =
|
6327
|
-
const isInteractive =
|
6333
|
+
const id = toRef(() => props.id || `input-${uid}`);
|
6334
|
+
const isInteractive = toRef(() => !props.disabled && !props.readonly);
|
6328
6335
|
group?.onForceUpdate(() => {
|
6329
6336
|
if (input.value) {
|
6330
6337
|
input.value.checked = model.value;
|
@@ -6462,10 +6469,10 @@ const VCheckboxBtn = genericComponent()({
|
|
6462
6469
|
indeterminate.value = false;
|
6463
6470
|
}
|
6464
6471
|
}
|
6465
|
-
const falseIcon =
|
6472
|
+
const falseIcon = toRef(() => {
|
6466
6473
|
return indeterminate.value ? props.indeterminateIcon : props.falseIcon;
|
6467
6474
|
});
|
6468
|
-
const trueIcon =
|
6475
|
+
const trueIcon = toRef(() => {
|
6469
6476
|
return indeterminate.value ? props.indeterminateIcon : props.trueIcon;
|
6470
6477
|
});
|
6471
6478
|
useRender(() => {
|
@@ -6553,7 +6560,7 @@ const VMessages = genericComponent()({
|
|
6553
6560
|
const {
|
6554
6561
|
textColorClasses,
|
6555
6562
|
textColorStyles
|
6556
|
-
} = useTextColor(
|
6563
|
+
} = useTextColor(() => props.color);
|
6557
6564
|
useRender(() => createVNode(MaybeTransition, {
|
6558
6565
|
"transition": props.transition,
|
6559
6566
|
"tag": "div",
|
@@ -6583,7 +6590,7 @@ const makeFocusProps = propsFactory({
|
|
6583
6590
|
function useFocus(props) {
|
6584
6591
|
let name = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : getCurrentInstanceName();
|
6585
6592
|
const isFocused = useProxiedModel(props, 'focused');
|
6586
|
-
const focusClasses =
|
6593
|
+
const focusClasses = toRef(() => {
|
6587
6594
|
return {
|
6588
6595
|
[`${name}--focused`]: isFocused.value
|
6589
6596
|
};
|
@@ -6622,8 +6629,8 @@ const makeFormProps = propsFactory({
|
|
6622
6629
|
}, 'form');
|
6623
6630
|
function createForm(props) {
|
6624
6631
|
const model = useProxiedModel(props, 'modelValue');
|
6625
|
-
const isDisabled =
|
6626
|
-
const isReadonly =
|
6632
|
+
const isDisabled = toRef(() => props.disabled);
|
6633
|
+
const isReadonly = toRef(() => props.readonly);
|
6627
6634
|
const isValidating = shallowRef(false);
|
6628
6635
|
const items = ref([]);
|
6629
6636
|
const errors = ref([]);
|
@@ -6713,7 +6720,7 @@ function createForm(props) {
|
|
6713
6720
|
isValidating,
|
6714
6721
|
isValid: model,
|
6715
6722
|
items,
|
6716
|
-
validateOn: toRef(props
|
6723
|
+
validateOn: toRef(() => props.validateOn)
|
6717
6724
|
});
|
6718
6725
|
return {
|
6719
6726
|
errors,
|
@@ -6894,11 +6901,6 @@ function useValidation(props) {
|
|
6894
6901
|
}
|
6895
6902
|
async function validate() {
|
6896
6903
|
let silent = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : false;
|
6897
|
-
if (props.disabled || props.readonly) {
|
6898
|
-
internalErrorMessages.value = [];
|
6899
|
-
isValidating.value = false;
|
6900
|
-
return internalErrorMessages.value;
|
6901
|
-
}
|
6902
6904
|
const results = [];
|
6903
6905
|
isValidating.value = true;
|
6904
6906
|
for (const rule of props.rules) {
|
@@ -7028,10 +7030,10 @@ const VInput = genericComponent()({
|
|
7028
7030
|
resetValidation,
|
7029
7031
|
validate
|
7030
7032
|
}));
|
7031
|
-
const color =
|
7033
|
+
const color = toRef(() => {
|
7032
7034
|
return props.error || props.disabled ? undefined : props.focused ? props.color : props.baseColor;
|
7033
7035
|
});
|
7034
|
-
const iconColor =
|
7036
|
+
const iconColor = toRef(() => {
|
7035
7037
|
if (!props.iconColor) return undefined;
|
7036
7038
|
return props.iconColor === true ? color.value : props.iconColor;
|
7037
7039
|
});
|
@@ -7121,7 +7123,6 @@ const VCheckbox = genericComponent()({
|
|
7121
7123
|
blur
|
7122
7124
|
} = useFocus(props);
|
7123
7125
|
const uid = useId();
|
7124
|
-
const id = computed(() => props.id || `checkbox-${uid}`);
|
7125
7126
|
useRender(() => {
|
7126
7127
|
const [rootAttrs, controlAttrs] = filterInputAttrs(attrs);
|
7127
7128
|
const inputProps = VInput.filterProps(props);
|
@@ -7131,7 +7132,7 @@ const VCheckbox = genericComponent()({
|
|
7131
7132
|
}, rootAttrs, inputProps, {
|
7132
7133
|
"modelValue": model.value,
|
7133
7134
|
"onUpdate:modelValue": $event => model.value = $event,
|
7134
|
-
"id": id
|
7135
|
+
"id": props.id || `checkbox-${uid}`,
|
7135
7136
|
"focused": isFocused.value,
|
7136
7137
|
"style": props.style
|
7137
7138
|
}), {
|
@@ -7315,7 +7316,7 @@ function useDisplay() {
|
|
7315
7316
|
return false;
|
7316
7317
|
}
|
7317
7318
|
});
|
7318
|
-
const displayClasses =
|
7319
|
+
const displayClasses = toRef(() => {
|
7319
7320
|
if (!name) return {};
|
7320
7321
|
return {
|
7321
7322
|
[`${name}--mobile`]: mobile.value
|
@@ -7430,7 +7431,7 @@ function useGoTo() {
|
|
7430
7431
|
const goTo = {
|
7431
7432
|
...goToInstance,
|
7432
7433
|
// can be set via VLocaleProvider
|
7433
|
-
rtl:
|
7434
|
+
rtl: toRef(() => goToInstance.rtl.value || isRtl.value)
|
7434
7435
|
};
|
7435
7436
|
async function go(target, options) {
|
7436
7437
|
return scrollTo(target, mergeDeep(_options, options), false, goTo);
|
@@ -7922,11 +7923,11 @@ const VChipGroup = genericComponent()({
|
|
7922
7923
|
} = useGroup(props, VChipGroupSymbol);
|
7923
7924
|
provideDefaults({
|
7924
7925
|
VChip: {
|
7925
|
-
baseColor: toRef(props
|
7926
|
-
color: toRef(props
|
7927
|
-
disabled: toRef(props
|
7928
|
-
filter: toRef(props
|
7929
|
-
variant: toRef(props
|
7926
|
+
baseColor: toRef(() => props.baseColor),
|
7927
|
+
color: toRef(() => props.color),
|
7928
|
+
disabled: toRef(() => props.disabled),
|
7929
|
+
filter: toRef(() => props.filter),
|
7930
|
+
variant: toRef(() => props.variant)
|
7930
7931
|
}
|
7931
7932
|
});
|
7932
7933
|
useRender(() => {
|
@@ -8052,9 +8053,9 @@ const VChip = genericComponent()({
|
|
8052
8053
|
const isActive = useProxiedModel(props, 'modelValue');
|
8053
8054
|
const group = useGroupItem(props, VChipGroupSymbol, false);
|
8054
8055
|
const link = useLink(props, attrs);
|
8055
|
-
const isLink =
|
8056
|
+
const isLink = toRef(() => props.link !== false && link.isLink.value);
|
8056
8057
|
const isClickable = computed(() => !props.disabled && props.link !== false && (!!group || props.link || link.isClickable.value));
|
8057
|
-
const closeProps =
|
8058
|
+
const closeProps = toRef(() => ({
|
8058
8059
|
'aria-label': t(props.closeLabel),
|
8059
8060
|
onClick(e) {
|
8060
8061
|
e.preventDefault();
|
@@ -8063,18 +8064,17 @@ const VChip = genericComponent()({
|
|
8063
8064
|
emit('click:close', e);
|
8064
8065
|
}
|
8065
8066
|
}));
|
8066
|
-
const
|
8067
|
+
const {
|
8068
|
+
colorClasses,
|
8069
|
+
colorStyles,
|
8070
|
+
variantClasses
|
8071
|
+
} = useVariant(() => {
|
8067
8072
|
const showColor = !group || group.isSelected.value;
|
8068
8073
|
return {
|
8069
8074
|
color: showColor ? props.color ?? props.baseColor : props.baseColor,
|
8070
8075
|
variant: props.variant
|
8071
8076
|
};
|
8072
8077
|
});
|
8073
|
-
const {
|
8074
|
-
colorClasses,
|
8075
|
-
colorStyles,
|
8076
|
-
variantClasses
|
8077
|
-
} = useVariant(variantProps);
|
8078
8078
|
function onClick(e) {
|
8079
8079
|
emit('click', e);
|
8080
8080
|
if (!isClickable.value) return;
|
@@ -8741,8 +8741,8 @@ const useNested = props => {
|
|
8741
8741
|
id: shallowRef(),
|
8742
8742
|
root: {
|
8743
8743
|
opened,
|
8744
|
-
activatable: toRef(props
|
8745
|
-
selectable: toRef(props
|
8744
|
+
activatable: toRef(() => props.activatable),
|
8745
|
+
selectable: toRef(() => props.selectable),
|
8746
8746
|
activated,
|
8747
8747
|
selected,
|
8748
8748
|
selectedValues: computed(() => {
|
@@ -8871,7 +8871,7 @@ const useNested = props => {
|
|
8871
8871
|
const useNestedItem = (id, isGroup) => {
|
8872
8872
|
const parent = inject$1(VNestedSymbol, emptyNested);
|
8873
8873
|
const uidSymbol = Symbol('nested item');
|
8874
|
-
const computedId = computed(() => id
|
8874
|
+
const computedId = computed(() => toValue(id) ?? uidSymbol);
|
8875
8875
|
const item = {
|
8876
8876
|
...parent,
|
8877
8877
|
id: computedId,
|
@@ -8947,7 +8947,7 @@ const VListGroup = genericComponent()({
|
|
8947
8947
|
isOpen,
|
8948
8948
|
open,
|
8949
8949
|
id: _id
|
8950
|
-
} = useNestedItem(
|
8950
|
+
} = useNestedItem(() => props.value, true);
|
8951
8951
|
const id = computed(() => `v-list-group--id-${String(_id.value)}`);
|
8952
8952
|
const list = useList();
|
8953
8953
|
const {
|
@@ -9121,12 +9121,12 @@ const VListItem = genericComponent()({
|
|
9121
9121
|
} = useNestedItem(id, false);
|
9122
9122
|
const list = useList();
|
9123
9123
|
const isActive = computed(() => props.active !== false && (props.active || link.isActive?.value || (root.activatable.value ? isActivated.value : isSelected.value)));
|
9124
|
-
const isLink =
|
9124
|
+
const isLink = toRef(() => props.link !== false && link.isLink.value);
|
9125
9125
|
const isSelectable = computed(() => !!list && (root.selectable.value || root.activatable.value || props.value != null));
|
9126
9126
|
const isClickable = computed(() => !props.disabled && props.link !== false && (props.link || link.isClickable.value || isSelectable.value));
|
9127
|
-
const roundedProps =
|
9128
|
-
const color =
|
9129
|
-
const variantProps =
|
9127
|
+
const roundedProps = toRef(() => props.rounded || props.nav);
|
9128
|
+
const color = toRef(() => props.color ?? props.activeColor);
|
9129
|
+
const variantProps = toRef(() => ({
|
9130
9130
|
color: isActive.value ? color.value ?? props.baseColor : props.baseColor,
|
9131
9131
|
variant: props.variant
|
9132
9132
|
}));
|
@@ -9169,7 +9169,7 @@ const VListItem = genericComponent()({
|
|
9169
9169
|
const {
|
9170
9170
|
roundedClasses
|
9171
9171
|
} = useRounded(roundedProps);
|
9172
|
-
const lineClasses =
|
9172
|
+
const lineClasses = toRef(() => props.lines ? `v-list-item--${props.lines}-line` : undefined);
|
9173
9173
|
const slotProps = computed(() => ({
|
9174
9174
|
isActive: isActive.value,
|
9175
9175
|
select,
|
@@ -9339,7 +9339,7 @@ const VListSubheader = genericComponent()({
|
|
9339
9339
|
const {
|
9340
9340
|
textColorClasses,
|
9341
9341
|
textColorStyles
|
9342
|
-
} = useTextColor(
|
9342
|
+
} = useTextColor(() => props.color);
|
9343
9343
|
useRender(() => {
|
9344
9344
|
const hasText = !!(slots.default || props.title);
|
9345
9345
|
return createVNode(props.tag, {
|
@@ -9384,7 +9384,7 @@ const VDivider = genericComponent()({
|
|
9384
9384
|
const {
|
9385
9385
|
textColorClasses,
|
9386
9386
|
textColorStyles
|
9387
|
-
} = useTextColor(
|
9387
|
+
} = useTextColor(() => props.color);
|
9388
9388
|
const dividerStyles = computed(() => {
|
9389
9389
|
const styles = {};
|
9390
9390
|
if (props.length) {
|
@@ -9746,7 +9746,7 @@ const VList = genericComponent()({
|
|
9746
9746
|
const {
|
9747
9747
|
backgroundColorClasses,
|
9748
9748
|
backgroundColorStyles
|
9749
|
-
} = useBackgroundColor(
|
9749
|
+
} = useBackgroundColor(() => props.bgColor);
|
9750
9750
|
const {
|
9751
9751
|
borderClasses
|
9752
9752
|
} = useBorder(props);
|
@@ -9769,30 +9769,30 @@ const VList = genericComponent()({
|
|
9769
9769
|
select,
|
9770
9770
|
getPath
|
9771
9771
|
} = useNested(props);
|
9772
|
-
const lineClasses =
|
9773
|
-
const activeColor = toRef(props
|
9774
|
-
const baseColor = toRef(props
|
9775
|
-
const color = toRef(props
|
9772
|
+
const lineClasses = toRef(() => props.lines ? `v-list--${props.lines}-line` : undefined);
|
9773
|
+
const activeColor = toRef(() => props.activeColor);
|
9774
|
+
const baseColor = toRef(() => props.baseColor);
|
9775
|
+
const color = toRef(() => props.color);
|
9776
9776
|
createList();
|
9777
9777
|
provideDefaults({
|
9778
9778
|
VListGroup: {
|
9779
9779
|
activeColor,
|
9780
9780
|
baseColor,
|
9781
9781
|
color,
|
9782
|
-
expandIcon: toRef(props
|
9783
|
-
collapseIcon: toRef(props
|
9782
|
+
expandIcon: toRef(() => props.expandIcon),
|
9783
|
+
collapseIcon: toRef(() => props.collapseIcon)
|
9784
9784
|
},
|
9785
9785
|
VListItem: {
|
9786
|
-
activeClass: toRef(props
|
9786
|
+
activeClass: toRef(() => props.activeClass),
|
9787
9787
|
activeColor,
|
9788
9788
|
baseColor,
|
9789
9789
|
color,
|
9790
|
-
density: toRef(props
|
9791
|
-
disabled: toRef(props
|
9792
|
-
lines: toRef(props
|
9793
|
-
nav: toRef(props
|
9794
|
-
slim: toRef(props
|
9795
|
-
variant: toRef(props
|
9790
|
+
density: toRef(() => props.density),
|
9791
|
+
disabled: toRef(() => props.disabled),
|
9792
|
+
lines: toRef(() => props.lines),
|
9793
|
+
nav: toRef(() => props.nav),
|
9794
|
+
slim: toRef(() => props.slim),
|
9795
|
+
variant: toRef(() => props.variant)
|
9796
9796
|
}
|
9797
9797
|
});
|
9798
9798
|
const isFocused = shallowRef(false);
|
@@ -10120,13 +10120,22 @@ function connectedLocationStrategy(data, props, contentStyles) {
|
|
10120
10120
|
onScopeDispose(() => {
|
10121
10121
|
observer.disconnect();
|
10122
10122
|
});
|
10123
|
+
let targetBox = new Box({
|
10124
|
+
x: 0,
|
10125
|
+
y: 0,
|
10126
|
+
width: 0,
|
10127
|
+
height: 0
|
10128
|
+
});
|
10123
10129
|
|
10124
10130
|
// eslint-disable-next-line max-statements
|
10125
10131
|
function updateLocation() {
|
10126
10132
|
observe = false;
|
10127
10133
|
requestAnimationFrame(() => observe = true);
|
10128
10134
|
if (!data.target.value || !data.contentEl.value) return;
|
10129
|
-
|
10135
|
+
if (Array.isArray(data.target.value) || data.target.value.offsetParent) {
|
10136
|
+
targetBox = getTargetBox(data.target.value);
|
10137
|
+
} // Otherwise target element is hidden, use last known value
|
10138
|
+
|
10130
10139
|
const contentBox = getIntrinsicSize(data.contentEl.value, data.isRtl.value);
|
10131
10140
|
const scrollParents = getScrollParents(data.contentEl.value);
|
10132
10141
|
const viewportMargin = 12;
|
@@ -10836,7 +10845,7 @@ const makeLazyProps = propsFactory({
|
|
10836
10845
|
}, 'lazy');
|
10837
10846
|
function useLazy(props, active) {
|
10838
10847
|
const isBooted = shallowRef(false);
|
10839
|
-
const hasContent =
|
10848
|
+
const hasContent = toRef(() => isBooted.value || props.eager || active.value);
|
10840
10849
|
watch(active, () => isBooted.value = true);
|
10841
10850
|
function onAfterLeave() {
|
10842
10851
|
if (!props.eager) isBooted.value = false;
|
@@ -10873,10 +10882,10 @@ function useStack(isActive, zIndex, disableGlobalStack) {
|
|
10873
10882
|
activeChildren: new Set()
|
10874
10883
|
});
|
10875
10884
|
provide(StackSymbol, stack);
|
10876
|
-
const _zIndex = shallowRef(Number(zIndex
|
10885
|
+
const _zIndex = shallowRef(Number(toValue(zIndex)));
|
10877
10886
|
useToggleScope(isActive, () => {
|
10878
10887
|
const lastZIndex = globalStack.at(-1)?.[1];
|
10879
|
-
_zIndex.value = lastZIndex ? lastZIndex + 10 : Number(zIndex
|
10888
|
+
_zIndex.value = lastZIndex ? lastZIndex + 10 : Number(toValue(zIndex));
|
10880
10889
|
if (createStackEntry) {
|
10881
10890
|
globalStack.push([vm.uid, _zIndex.value]);
|
10882
10891
|
}
|
@@ -10896,11 +10905,11 @@ function useStack(isActive, zIndex, disableGlobalStack) {
|
|
10896
10905
|
setTimeout(() => globalTop.value = _isTop);
|
10897
10906
|
});
|
10898
10907
|
}
|
10899
|
-
const localTop =
|
10908
|
+
const localTop = toRef(() => !stack.activeChildren.size);
|
10900
10909
|
return {
|
10901
10910
|
globalTop: readonly(globalTop),
|
10902
10911
|
localTop,
|
10903
|
-
stackStyles:
|
10912
|
+
stackStyles: toRef(() => ({
|
10904
10913
|
zIndex: _zIndex.value
|
10905
10914
|
}))
|
10906
10915
|
};
|
@@ -11117,14 +11126,14 @@ const VOverlay = genericComponent()({
|
|
11117
11126
|
hasContent,
|
11118
11127
|
onAfterLeave: _onAfterLeave
|
11119
11128
|
} = useLazy(props, isActive);
|
11120
|
-
const scrimColor = useBackgroundColor(
|
11129
|
+
const scrimColor = useBackgroundColor(() => {
|
11121
11130
|
return typeof props.scrim === 'string' ? props.scrim : null;
|
11122
|
-
})
|
11131
|
+
});
|
11123
11132
|
const {
|
11124
11133
|
globalTop,
|
11125
11134
|
localTop,
|
11126
11135
|
stackStyles
|
11127
|
-
} = useStack(isActive,
|
11136
|
+
} = useStack(isActive, () => props.zIndex, props._disableGlobalStack);
|
11128
11137
|
const {
|
11129
11138
|
activatorEl,
|
11130
11139
|
activatorRef,
|
@@ -11450,7 +11459,7 @@ const VMenu = genericComponent()({
|
|
11450
11459
|
isRtl
|
11451
11460
|
} = useRtl();
|
11452
11461
|
const uid = useId();
|
11453
|
-
const id =
|
11462
|
+
const id = toRef(() => props.id || `v-menu-${uid}`);
|
11454
11463
|
const overlay = ref();
|
11455
11464
|
const parent = inject$1(VMenuSymbol, null);
|
11456
11465
|
const openChildren = shallowRef(new Set());
|
@@ -11618,7 +11627,7 @@ const VCounter = genericComponent()({
|
|
11618
11627
|
let {
|
11619
11628
|
slots
|
11620
11629
|
} = _ref;
|
11621
|
-
const counter =
|
11630
|
+
const counter = toRef(() => {
|
11622
11631
|
return props.max ? `${props.value} / ${props.max}` : String(props.value);
|
11623
11632
|
});
|
11624
11633
|
useRender(() => createVNode(MaybeTransition, {
|
@@ -11745,12 +11754,12 @@ const VField = genericComponent()({
|
|
11745
11754
|
const {
|
11746
11755
|
rtlClasses
|
11747
11756
|
} = useRtl();
|
11748
|
-
const isActive =
|
11749
|
-
const hasLabel =
|
11750
|
-
const hasFloatingLabel =
|
11757
|
+
const isActive = toRef(() => props.dirty || props.active);
|
11758
|
+
const hasLabel = toRef(() => !!(props.label || slots.label));
|
11759
|
+
const hasFloatingLabel = toRef(() => !props.singleLine && hasLabel.value);
|
11751
11760
|
const uid = useId();
|
11752
11761
|
const id = computed(() => props.id || `input-${uid}`);
|
11753
|
-
const messagesId =
|
11762
|
+
const messagesId = toRef(() => `${id.value}-messages`);
|
11754
11763
|
const labelRef = ref();
|
11755
11764
|
const floatingLabelRef = ref();
|
11756
11765
|
const controlRef = ref();
|
@@ -11765,7 +11774,7 @@ const VField = genericComponent()({
|
|
11765
11774
|
const {
|
11766
11775
|
backgroundColorClasses,
|
11767
11776
|
backgroundColorStyles
|
11768
|
-
} = useBackgroundColor(
|
11777
|
+
} = useBackgroundColor(() => props.bgColor);
|
11769
11778
|
const {
|
11770
11779
|
textColorClasses,
|
11771
11780
|
textColorStyles
|
@@ -12492,7 +12501,7 @@ const VVirtualScroll = genericComponent()({
|
|
12492
12501
|
paddingTop,
|
12493
12502
|
paddingBottom,
|
12494
12503
|
computedItems
|
12495
|
-
} = useVirtual(props, toRef(props
|
12504
|
+
} = useVirtual(props, toRef(() => props.items));
|
12496
12505
|
useToggleScope(() => props.renderless, () => {
|
12497
12506
|
function handleListeners() {
|
12498
12507
|
let add = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : false;
|
@@ -12729,7 +12738,7 @@ const VSelect = genericComponent()({
|
|
12729
12738
|
_menu.value = v;
|
12730
12739
|
}
|
12731
12740
|
});
|
12732
|
-
const label =
|
12741
|
+
const label = toRef(() => menu.value ? props.closeText : props.openText);
|
12733
12742
|
const computedMenuProps = computed(() => {
|
12734
12743
|
return {
|
12735
12744
|
...props.menuProps,
|
@@ -13231,7 +13240,6 @@ const VAutocomplete = genericComponent()({
|
|
13231
13240
|
const vMenuRef = ref();
|
13232
13241
|
const vVirtualScrollRef = ref();
|
13233
13242
|
const selectionIndex = shallowRef(-1);
|
13234
|
-
const color = computed(() => vTextFieldRef.value?.color);
|
13235
13243
|
const {
|
13236
13244
|
items,
|
13237
13245
|
transformIn,
|
@@ -13240,7 +13248,7 @@ const VAutocomplete = genericComponent()({
|
|
13240
13248
|
const {
|
13241
13249
|
textColorClasses,
|
13242
13250
|
textColorStyles
|
13243
|
-
} = useTextColor(color);
|
13251
|
+
} = useTextColor(() => vTextFieldRef.value?.color);
|
13244
13252
|
const search = useProxiedModel(props, 'search', '');
|
13245
13253
|
const model = useProxiedModel(props, 'modelValue', [], v => transformIn(v === null ? [null] : wrapInArray(v)), v => {
|
13246
13254
|
const transformed = transformOut(v);
|
@@ -13689,7 +13697,7 @@ const VBadge = genericComponent()({
|
|
13689
13697
|
const {
|
13690
13698
|
backgroundColorClasses,
|
13691
13699
|
backgroundColorStyles
|
13692
|
-
} = useBackgroundColor(
|
13700
|
+
} = useBackgroundColor(() => props.color);
|
13693
13701
|
const {
|
13694
13702
|
roundedClasses
|
13695
13703
|
} = useRounded(props);
|
@@ -13699,7 +13707,7 @@ const VBadge = genericComponent()({
|
|
13699
13707
|
const {
|
13700
13708
|
textColorClasses,
|
13701
13709
|
textColorStyles
|
13702
|
-
} = useTextColor(
|
13710
|
+
} = useTextColor(() => props.textColor);
|
13703
13711
|
const {
|
13704
13712
|
themeClasses
|
13705
13713
|
} = useTheme();
|
@@ -13811,7 +13819,7 @@ const VBanner = genericComponent()({
|
|
13811
13819
|
const {
|
13812
13820
|
backgroundColorClasses,
|
13813
13821
|
backgroundColorStyles
|
13814
|
-
} = useBackgroundColor(props
|
13822
|
+
} = useBackgroundColor(() => props.bgColor);
|
13815
13823
|
const {
|
13816
13824
|
borderClasses
|
13817
13825
|
} = useBorder(props);
|
@@ -13840,8 +13848,8 @@ const VBanner = genericComponent()({
|
|
13840
13848
|
const {
|
13841
13849
|
themeClasses
|
13842
13850
|
} = provideTheme(props);
|
13843
|
-
const color = toRef(props
|
13844
|
-
const density = toRef(props
|
13851
|
+
const color = toRef(() => props.color);
|
13852
|
+
const density = toRef(() => props.density);
|
13845
13853
|
provideDefaults({
|
13846
13854
|
VBannerActions: {
|
13847
13855
|
color,
|
@@ -13950,7 +13958,7 @@ const VBottomNavigation = genericComponent()({
|
|
13950
13958
|
const {
|
13951
13959
|
backgroundColorClasses,
|
13952
13960
|
backgroundColorStyles
|
13953
|
-
} = useBackgroundColor(
|
13961
|
+
} = useBackgroundColor(() => props.bgColor);
|
13954
13962
|
const {
|
13955
13963
|
densityClasses
|
13956
13964
|
} = useDensity(props);
|
@@ -13970,19 +13978,19 @@ const VBottomNavigation = genericComponent()({
|
|
13970
13978
|
} = useLayoutItem({
|
13971
13979
|
id: props.name,
|
13972
13980
|
order: computed(() => parseInt(props.order, 10)),
|
13973
|
-
position:
|
13974
|
-
layoutSize:
|
13981
|
+
position: toRef(() => 'bottom'),
|
13982
|
+
layoutSize: toRef(() => isActive.value ? height.value : 0),
|
13975
13983
|
elementSize: height,
|
13976
13984
|
active: isActive,
|
13977
|
-
absolute: toRef(props
|
13985
|
+
absolute: toRef(() => props.absolute)
|
13978
13986
|
});
|
13979
13987
|
useGroup(props, VBtnToggleSymbol);
|
13980
13988
|
provideDefaults({
|
13981
13989
|
VBtn: {
|
13982
|
-
baseColor: toRef(props
|
13983
|
-
color: toRef(props
|
13984
|
-
density: toRef(props
|
13985
|
-
stacked:
|
13990
|
+
baseColor: toRef(() => props.baseColor),
|
13991
|
+
color: toRef(() => props.color),
|
13992
|
+
density: toRef(() => props.density),
|
13993
|
+
stacked: toRef(() => props.mode !== 'horizontal'),
|
13986
13994
|
variant: 'text'
|
13987
13995
|
}
|
13988
13996
|
}, {
|
@@ -14218,11 +14226,10 @@ const VBreadcrumbsItem = genericComponent()({
|
|
14218
14226
|
} = _ref;
|
14219
14227
|
const link = useLink(props, attrs);
|
14220
14228
|
const isActive = computed(() => props.active || link.isActive?.value);
|
14221
|
-
const color = computed(() => isActive.value ? props.activeColor : props.color);
|
14222
14229
|
const {
|
14223
14230
|
textColorClasses,
|
14224
14231
|
textColorStyles
|
14225
|
-
} = useTextColor(color);
|
14232
|
+
} = useTextColor(() => isActive.value ? props.activeColor : props.color);
|
14226
14233
|
useRender(() => {
|
14227
14234
|
return createVNode(props.tag, {
|
14228
14235
|
"class": ['v-breadcrumbs-item', {
|
@@ -14277,7 +14284,7 @@ const VBreadcrumbs = genericComponent()({
|
|
14277
14284
|
const {
|
14278
14285
|
backgroundColorClasses,
|
14279
14286
|
backgroundColorStyles
|
14280
|
-
} = useBackgroundColor(
|
14287
|
+
} = useBackgroundColor(() => props.bgColor);
|
14281
14288
|
const {
|
14282
14289
|
densityClasses
|
14283
14290
|
} = useDensity(props);
|
@@ -14286,13 +14293,13 @@ const VBreadcrumbs = genericComponent()({
|
|
14286
14293
|
} = useRounded(props);
|
14287
14294
|
provideDefaults({
|
14288
14295
|
VBreadcrumbsDivider: {
|
14289
|
-
divider: toRef(props
|
14296
|
+
divider: toRef(() => props.divider)
|
14290
14297
|
},
|
14291
14298
|
VBreadcrumbsItem: {
|
14292
|
-
activeClass: toRef(props
|
14293
|
-
activeColor: toRef(props
|
14294
|
-
color: toRef(props
|
14295
|
-
disabled: toRef(props
|
14299
|
+
activeClass: toRef(() => props.activeClass),
|
14300
|
+
activeColor: toRef(() => props.activeColor),
|
14301
|
+
color: toRef(() => props.color),
|
14302
|
+
disabled: toRef(() => props.disabled)
|
14296
14303
|
}
|
14297
14304
|
});
|
14298
14305
|
const items = computed(() => props.items.map(item => {
|
@@ -14615,10 +14622,10 @@ const VCard = genericComponent()({
|
|
14615
14622
|
roundedClasses
|
14616
14623
|
} = useRounded(props);
|
14617
14624
|
const link = useLink(props, attrs);
|
14618
|
-
const isLink = computed(() => props.link !== false && link.isLink.value);
|
14619
|
-
const isClickable = computed(() => !props.disabled && props.link !== false && (props.link || link.isClickable.value));
|
14620
14625
|
useRender(() => {
|
14621
|
-
const
|
14626
|
+
const isLink = props.link !== false && link.isLink.value;
|
14627
|
+
const isClickable = !props.disabled && props.link !== false && (props.link || link.isClickable.value);
|
14628
|
+
const Tag = isLink ? 'a' : props.tag;
|
14622
14629
|
const hasTitle = !!(slots.title || props.title != null);
|
14623
14630
|
const hasSubtitle = !!(slots.subtitle || props.subtitle != null);
|
14624
14631
|
const hasHeader = hasTitle || hasSubtitle;
|
@@ -14632,10 +14639,10 @@ const VCard = genericComponent()({
|
|
14632
14639
|
'v-card--disabled': props.disabled,
|
14633
14640
|
'v-card--flat': props.flat,
|
14634
14641
|
'v-card--hover': props.hover && !(props.disabled || props.flat),
|
14635
|
-
'v-card--link': isClickable
|
14642
|
+
'v-card--link': isClickable
|
14636
14643
|
}, themeClasses.value, borderClasses.value, colorClasses.value, densityClasses.value, elevationClasses.value, loaderClasses.value, positionClasses.value, roundedClasses.value, variantClasses.value, props.class],
|
14637
14644
|
"style": [colorStyles.value, dimensionStyles.value, locationStyles.value, props.style],
|
14638
|
-
"onClick": isClickable
|
14645
|
+
"onClick": isClickable && link.navigate,
|
14639
14646
|
"tabindex": props.disabled ? -1 : undefined
|
14640
14647
|
}, link.linkProps), {
|
14641
14648
|
default: () => [hasImage && createVNode("div", {
|
@@ -14680,8 +14687,8 @@ const VCard = genericComponent()({
|
|
14680
14687
|
default: () => [slots.text?.() ?? props.text]
|
14681
14688
|
}), slots.default?.(), slots.actions && createVNode(VCardActions, null, {
|
14682
14689
|
default: slots.actions
|
14683
|
-
}), genOverlays(isClickable
|
14684
|
-
}), [[resolveDirective("ripple"), isClickable
|
14690
|
+
}), genOverlays(isClickable, 'v-card')]
|
14691
|
+
}), [[resolveDirective("ripple"), isClickable && props.ripple]]);
|
14685
14692
|
});
|
14686
14693
|
return {};
|
14687
14694
|
}
|
@@ -14894,8 +14901,8 @@ const VWindow = genericComponent()({
|
|
14894
14901
|
transitionHeight,
|
14895
14902
|
rootRef
|
14896
14903
|
});
|
14897
|
-
const canMoveBack =
|
14898
|
-
const canMoveForward =
|
14904
|
+
const canMoveBack = toRef(() => props.continuous || activeIndex.value !== 0);
|
14905
|
+
const canMoveForward = toRef(() => props.continuous || activeIndex.value !== group.items.value.length - 1);
|
14899
14906
|
function prev() {
|
14900
14907
|
canMoveBack.value && group.prev();
|
14901
14908
|
}
|
@@ -15797,7 +15804,7 @@ const useSlider = _ref => {
|
|
15797
15804
|
const {
|
15798
15805
|
isRtl
|
15799
15806
|
} = useRtl();
|
15800
|
-
const isReversed = toRef(props
|
15807
|
+
const isReversed = toRef(() => props.reverse);
|
15801
15808
|
const vertical = computed(() => props.direction === 'vertical');
|
15802
15809
|
const indexFromEnd = computed(() => vertical.value !== isReversed.value);
|
15803
15810
|
const {
|
@@ -15811,7 +15818,7 @@ const useSlider = _ref => {
|
|
15811
15818
|
const tickSize = computed(() => parseInt(props.tickSize, 10));
|
15812
15819
|
const trackSize = computed(() => parseInt(props.trackSize, 10));
|
15813
15820
|
const numTicks = computed(() => (max.value - min.value) / step.value);
|
15814
|
-
const disabled = toRef(props
|
15821
|
+
const disabled = toRef(() => props.disabled);
|
15815
15822
|
const thumbColor = computed(() => props.error || props.disabled ? undefined : props.thumbColor ?? props.color);
|
15816
15823
|
const trackColor = computed(() => props.error || props.disabled ? undefined : props.trackColor ?? props.color);
|
15817
15824
|
const trackFillColor = computed(() => props.error || props.disabled ? undefined : props.trackFillColor ?? props.color);
|
@@ -15913,7 +15920,7 @@ const useSlider = _ref => {
|
|
15913
15920
|
const percentage = (val - min.value) / (max.value - min.value) * 100;
|
15914
15921
|
return clamp(isNaN(percentage) ? 0 : percentage, 0, 100);
|
15915
15922
|
};
|
15916
|
-
const showTicks = toRef(props
|
15923
|
+
const showTicks = toRef(() => props.showTicks);
|
15917
15924
|
const parsedTicks = computed(() => {
|
15918
15925
|
if (!showTicks.value) return [];
|
15919
15926
|
if (!props.ticks) {
|
@@ -15944,11 +15951,11 @@ const useSlider = _ref => {
|
|
15944
15951
|
}));
|
15945
15952
|
const data = {
|
15946
15953
|
activeThumbRef,
|
15947
|
-
color: toRef(props
|
15954
|
+
color: toRef(() => props.color),
|
15948
15955
|
decimals,
|
15949
15956
|
disabled,
|
15950
|
-
direction: toRef(props
|
15951
|
-
elevation: toRef(props
|
15957
|
+
direction: toRef(() => props.direction),
|
15958
|
+
elevation: toRef(() => props.elevation),
|
15952
15959
|
hasLabels,
|
15953
15960
|
isReversed,
|
15954
15961
|
indexFromEnd,
|
@@ -15961,16 +15968,16 @@ const useSlider = _ref => {
|
|
15961
15968
|
parsedTicks,
|
15962
15969
|
parseMouseMove,
|
15963
15970
|
position,
|
15964
|
-
readonly: toRef(props
|
15965
|
-
rounded: toRef(props
|
15971
|
+
readonly: toRef(() => props.readonly),
|
15972
|
+
rounded: toRef(() => props.rounded),
|
15966
15973
|
roundValue,
|
15967
15974
|
showTicks,
|
15968
15975
|
startOffset,
|
15969
15976
|
step,
|
15970
15977
|
thumbSize,
|
15971
15978
|
thumbColor,
|
15972
|
-
thumbLabel: toRef(props
|
15973
|
-
ticks: toRef(props
|
15979
|
+
thumbLabel: toRef(() => props.thumbLabel),
|
15980
|
+
ticks: toRef(() => props.ticks),
|
15974
15981
|
tickSize,
|
15975
15982
|
trackColor,
|
15976
15983
|
trackContainerRef,
|
@@ -16889,7 +16896,7 @@ const VSheet = genericComponent()({
|
|
16889
16896
|
const {
|
16890
16897
|
backgroundColorClasses,
|
16891
16898
|
backgroundColorStyles
|
16892
|
-
} = useBackgroundColor(
|
16899
|
+
} = useBackgroundColor(() => props.color);
|
16893
16900
|
const {
|
16894
16901
|
borderClasses
|
16895
16902
|
} = useBorder(props);
|
@@ -16936,7 +16943,7 @@ const VPicker = genericComponent()({
|
|
16936
16943
|
const {
|
16937
16944
|
backgroundColorClasses,
|
16938
16945
|
backgroundColorStyles
|
16939
|
-
} = useBackgroundColor(
|
16946
|
+
} = useBackgroundColor(() => props.color);
|
16940
16947
|
useRender(() => {
|
16941
16948
|
const sheetProps = VSheet.filterProps(props);
|
16942
16949
|
const hasTitle = !!(props.title || slots.title);
|
@@ -17921,7 +17928,6 @@ const VCombobox = genericComponent()({
|
|
17921
17928
|
const vVirtualScrollRef = ref();
|
17922
17929
|
const selectionIndex = shallowRef(-1);
|
17923
17930
|
let cleared = false;
|
17924
|
-
const color = computed(() => vTextFieldRef.value?.color);
|
17925
17931
|
const {
|
17926
17932
|
items,
|
17927
17933
|
transformIn,
|
@@ -17930,7 +17936,7 @@ const VCombobox = genericComponent()({
|
|
17930
17936
|
const {
|
17931
17937
|
textColorClasses,
|
17932
17938
|
textColorStyles
|
17933
|
-
} = useTextColor(color);
|
17939
|
+
} = useTextColor(() => vTextFieldRef.value?.color);
|
17934
17940
|
const model = useProxiedModel(props, 'modelValue', [], v => transformIn(wrapInArray(v)), v => {
|
17935
17941
|
const transformed = transformOut(v);
|
17936
17942
|
return props.multiple ? transformed : transformed[0] ?? null;
|
@@ -17985,7 +17991,7 @@ const VCombobox = genericComponent()({
|
|
17985
17991
|
_menu.value = v;
|
17986
17992
|
}
|
17987
17993
|
});
|
17988
|
-
const label =
|
17994
|
+
const label = toRef(() => menu.value ? props.closeText : props.openText);
|
17989
17995
|
watch(_search, value => {
|
17990
17996
|
if (cleared) {
|
17991
17997
|
// wait for clear to finish, VTextField sets _search to null
|
@@ -18491,7 +18497,7 @@ const makeDataTableExpandProps = propsFactory({
|
|
18491
18497
|
}, 'DataTable-expand');
|
18492
18498
|
const VDataTableExpandedKey = Symbol.for('vuetify:datatable:expanded');
|
18493
18499
|
function provideExpanded(props) {
|
18494
|
-
const expandOnClick = toRef(props
|
18500
|
+
const expandOnClick = toRef(() => props.expandOnClick);
|
18495
18501
|
const expanded = useProxiedModel(props, 'expanded', props.expanded, v => {
|
18496
18502
|
return new Set(v);
|
18497
18503
|
}, v => {
|
@@ -18678,23 +18684,23 @@ function useOptions(_ref) {
|
|
18678
18684
|
search
|
18679
18685
|
} = _ref;
|
18680
18686
|
const vm = getCurrentInstance('VDataTable');
|
18681
|
-
const options =
|
18687
|
+
const options = () => ({
|
18682
18688
|
page: page.value,
|
18683
18689
|
itemsPerPage: itemsPerPage.value,
|
18684
18690
|
sortBy: sortBy.value,
|
18685
18691
|
groupBy: groupBy.value,
|
18686
18692
|
search: search.value
|
18687
|
-
})
|
18693
|
+
});
|
18688
18694
|
let oldOptions = null;
|
18689
|
-
watch(options,
|
18690
|
-
if (deepEqual(oldOptions,
|
18695
|
+
watch(options, value => {
|
18696
|
+
if (deepEqual(oldOptions, value)) return;
|
18691
18697
|
|
18692
18698
|
// Reset page when searching
|
18693
|
-
if (oldOptions && oldOptions.search !==
|
18699
|
+
if (oldOptions && oldOptions.search !== value.search) {
|
18694
18700
|
page.value = 1;
|
18695
18701
|
}
|
18696
|
-
vm.emit('update:options',
|
18697
|
-
oldOptions =
|
18702
|
+
vm.emit('update:options', value);
|
18703
|
+
oldOptions = value;
|
18698
18704
|
}, {
|
18699
18705
|
deep: true,
|
18700
18706
|
immediate: true
|
@@ -18975,7 +18981,7 @@ function provideSelection(props, _ref9) {
|
|
18975
18981
|
});
|
18976
18982
|
return !!items.length && isSelected(items);
|
18977
18983
|
});
|
18978
|
-
const showSelectAll =
|
18984
|
+
const showSelectAll = toRef(() => selectStrategy.value.showSelectAll);
|
18979
18985
|
const data = {
|
18980
18986
|
toggleSelect,
|
18981
18987
|
select,
|
@@ -19013,8 +19019,8 @@ const makeDataTableSortProps = propsFactory({
|
|
19013
19019
|
const VDataTableSortSymbol = Symbol.for('vuetify:data-table-sort');
|
19014
19020
|
function createSort(props) {
|
19015
19021
|
const sortBy = useProxiedModel(props, 'sortBy');
|
19016
|
-
const mustSort = toRef(props
|
19017
|
-
const multiSort = toRef(props
|
19022
|
+
const mustSort = toRef(() => props.mustSort);
|
19023
|
+
const multiSort = toRef(() => props.multiSort);
|
19018
19024
|
return {
|
19019
19025
|
sortBy,
|
19020
19026
|
mustSort,
|
@@ -19232,7 +19238,7 @@ const VDataIterator = genericComponent()({
|
|
19232
19238
|
slots
|
19233
19239
|
} = _ref;
|
19234
19240
|
const groupBy = useProxiedModel(props, 'groupBy');
|
19235
|
-
const search = toRef(props
|
19241
|
+
const search = toRef(() => props.search);
|
19236
19242
|
const {
|
19237
19243
|
items
|
19238
19244
|
} = useDataIteratorItems(props);
|
@@ -19276,7 +19282,7 @@ const VDataIterator = genericComponent()({
|
|
19276
19282
|
const {
|
19277
19283
|
flatItems
|
19278
19284
|
} = useGroupedItems(sortedItems, groupBy, opened);
|
19279
|
-
const itemsLength =
|
19285
|
+
const itemsLength = toRef(() => flatItems.value.length);
|
19280
19286
|
const {
|
19281
19287
|
startIndex,
|
19282
19288
|
stopIndex,
|
@@ -19556,13 +19562,13 @@ const VPagination = genericComponent()({
|
|
19556
19562
|
} = useRefs();
|
19557
19563
|
provideDefaults({
|
19558
19564
|
VPaginationBtn: {
|
19559
|
-
color: toRef(props
|
19560
|
-
border: toRef(props
|
19561
|
-
density: toRef(props
|
19562
|
-
size: toRef(props
|
19563
|
-
variant: toRef(props
|
19564
|
-
rounded: toRef(props
|
19565
|
-
elevation: toRef(props
|
19565
|
+
color: toRef(() => props.color),
|
19566
|
+
border: toRef(() => props.border),
|
19567
|
+
density: toRef(() => props.density),
|
19568
|
+
size: toRef(() => props.size),
|
19569
|
+
variant: toRef(() => props.variant),
|
19570
|
+
rounded: toRef(() => props.rounded),
|
19571
|
+
elevation: toRef(() => props.elevation)
|
19566
19572
|
}
|
19567
19573
|
});
|
19568
19574
|
const items = computed(() => {
|
@@ -20203,7 +20209,7 @@ const VDataTableHeaders = genericComponent()({
|
|
20203
20209
|
const {
|
20204
20210
|
backgroundColorClasses,
|
20205
20211
|
backgroundColorStyles
|
20206
|
-
} = useBackgroundColor(props
|
20212
|
+
} = useBackgroundColor(() => props.color);
|
20207
20213
|
const {
|
20208
20214
|
displayClasses,
|
20209
20215
|
mobile
|
@@ -20861,13 +20867,13 @@ const VDataTable = genericComponent()({
|
|
20861
20867
|
filterFunctions
|
20862
20868
|
} = createHeaders(props, {
|
20863
20869
|
groupBy,
|
20864
|
-
showSelect: toRef(props
|
20865
|
-
showExpand: toRef(props
|
20870
|
+
showSelect: toRef(() => props.showSelect),
|
20871
|
+
showExpand: toRef(() => props.showExpand)
|
20866
20872
|
});
|
20867
20873
|
const {
|
20868
20874
|
items
|
20869
20875
|
} = useDataTableItems(props, columns);
|
20870
|
-
const search = toRef(props
|
20876
|
+
const search = toRef(() => props.search);
|
20871
20877
|
const {
|
20872
20878
|
filteredItems
|
20873
20879
|
} = useFilter(props, items, search, {
|
@@ -20950,10 +20956,10 @@ const VDataTable = genericComponent()({
|
|
20950
20956
|
});
|
20951
20957
|
provideDefaults({
|
20952
20958
|
VDataTableRows: {
|
20953
|
-
hideNoData: toRef(props
|
20954
|
-
noDataText: toRef(props
|
20955
|
-
loading: toRef(props
|
20956
|
-
loadingText: toRef(props
|
20959
|
+
hideNoData: toRef(() => props.hideNoData),
|
20960
|
+
noDataText: toRef(() => props.noDataText),
|
20961
|
+
loading: toRef(() => props.loading),
|
20962
|
+
loadingText: toRef(() => props.loadingText)
|
20957
20963
|
}
|
20958
20964
|
});
|
20959
20965
|
const slotProps = computed(() => ({
|
@@ -21050,13 +21056,13 @@ const VDataTableVirtual = genericComponent()({
|
|
21050
21056
|
sortRawFunctions
|
21051
21057
|
} = createHeaders(props, {
|
21052
21058
|
groupBy,
|
21053
|
-
showSelect: toRef(props
|
21054
|
-
showExpand: toRef(props
|
21059
|
+
showSelect: toRef(() => props.showSelect),
|
21060
|
+
showExpand: toRef(() => props.showExpand)
|
21055
21061
|
});
|
21056
21062
|
const {
|
21057
21063
|
items
|
21058
21064
|
} = useDataTableItems(props, columns);
|
21059
|
-
const search = toRef(props
|
21065
|
+
const search = toRef(() => props.search);
|
21060
21066
|
const {
|
21061
21067
|
filteredItems
|
21062
21068
|
} = useFilter(props, items, search, {
|
@@ -21132,10 +21138,10 @@ const VDataTableVirtual = genericComponent()({
|
|
21132
21138
|
});
|
21133
21139
|
provideDefaults({
|
21134
21140
|
VDataTableRows: {
|
21135
|
-
hideNoData: toRef(props
|
21136
|
-
noDataText: toRef(props
|
21137
|
-
loading: toRef(props
|
21138
|
-
loadingText: toRef(props
|
21141
|
+
hideNoData: toRef(() => props.hideNoData),
|
21142
|
+
noDataText: toRef(() => props.noDataText),
|
21143
|
+
loading: toRef(() => props.loading),
|
21144
|
+
loadingText: toRef(() => props.loadingText)
|
21139
21145
|
}
|
21140
21146
|
});
|
21141
21147
|
const slotProps = computed(() => ({
|
@@ -21288,8 +21294,8 @@ const VDataTableServer = genericComponent()({
|
|
21288
21294
|
headers
|
21289
21295
|
} = createHeaders(props, {
|
21290
21296
|
groupBy,
|
21291
|
-
showSelect: toRef(props
|
21292
|
-
showExpand: toRef(props
|
21297
|
+
showSelect: toRef(() => props.showSelect),
|
21298
|
+
showExpand: toRef(() => props.showExpand)
|
21293
21299
|
});
|
21294
21300
|
const {
|
21295
21301
|
items
|
@@ -21344,7 +21350,7 @@ const VDataTableServer = genericComponent()({
|
|
21344
21350
|
itemsPerPage,
|
21345
21351
|
sortBy,
|
21346
21352
|
groupBy,
|
21347
|
-
search: toRef(props
|
21353
|
+
search: toRef(() => props.search)
|
21348
21354
|
});
|
21349
21355
|
provide('v-data-table', {
|
21350
21356
|
toggleSort,
|
@@ -21352,10 +21358,10 @@ const VDataTableServer = genericComponent()({
|
|
21352
21358
|
});
|
21353
21359
|
provideDefaults({
|
21354
21360
|
VDataTableRows: {
|
21355
|
-
hideNoData: toRef(props
|
21356
|
-
noDataText: toRef(props
|
21357
|
-
loading: toRef(props
|
21358
|
-
loadingText: toRef(props
|
21361
|
+
hideNoData: toRef(() => props.hideNoData),
|
21362
|
+
noDataText: toRef(() => props.noDataText),
|
21363
|
+
loading: toRef(() => props.loading),
|
21364
|
+
loadingText: toRef(() => props.loadingText)
|
21359
21365
|
}
|
21360
21366
|
});
|
21361
21367
|
const slotProps = computed(() => ({
|
@@ -21825,7 +21831,7 @@ const VDatePickerHeader = genericComponent()({
|
|
21825
21831
|
const {
|
21826
21832
|
backgroundColorClasses,
|
21827
21833
|
backgroundColorStyles
|
21828
|
-
} = useBackgroundColor(props
|
21834
|
+
} = useBackgroundColor(() => props.color);
|
21829
21835
|
function onClick() {
|
21830
21836
|
emit('click');
|
21831
21837
|
}
|
@@ -21964,21 +21970,21 @@ function useCalendar(props) {
|
|
21964
21970
|
const isSame = adapter.isSameDay(date, month.value);
|
21965
21971
|
return {
|
21966
21972
|
date,
|
21967
|
-
isoDate,
|
21968
21973
|
formatted: adapter.format(date, 'keyboardDate'),
|
21969
|
-
year: adapter.getYear(date),
|
21970
|
-
month: adapter.getMonth(date),
|
21971
|
-
isDisabled: isDisabled(date),
|
21972
|
-
isWeekStart: index % 7 === 0,
|
21973
|
-
isWeekEnd: index % 7 === 6,
|
21974
|
-
isToday: adapter.isSameDay(date, today),
|
21975
21974
|
isAdjacent,
|
21976
|
-
|
21977
|
-
isStart,
|
21978
|
-
isSelected: model.value.some(value => adapter.isSameDay(date, value)),
|
21975
|
+
isDisabled: isDisabled(date),
|
21979
21976
|
isEnd,
|
21977
|
+
isHidden: isAdjacent && !props.showAdjacentMonths,
|
21980
21978
|
isSame,
|
21981
|
-
|
21979
|
+
isSelected: model.value.some(value => adapter.isSameDay(date, value)),
|
21980
|
+
isStart,
|
21981
|
+
isToday: adapter.isSameDay(date, today),
|
21982
|
+
isWeekEnd: index % 7 === 6,
|
21983
|
+
isWeekStart: index % 7 === 0,
|
21984
|
+
isoDate,
|
21985
|
+
localized: adapter.format(date, 'dayOfMonth'),
|
21986
|
+
month: adapter.getMonth(date),
|
21987
|
+
year: adapter.getYear(date)
|
21982
21988
|
};
|
21983
21989
|
});
|
21984
21990
|
}
|
@@ -22066,7 +22072,7 @@ const VDatePickerMonth = genericComponent()({
|
|
22066
22072
|
const rangeStart = shallowRef();
|
22067
22073
|
const rangeStop = shallowRef();
|
22068
22074
|
const isReverse = shallowRef(false);
|
22069
|
-
const transition =
|
22075
|
+
const transition = toRef(() => {
|
22070
22076
|
return !isReverse.value ? props.transition : props.reverseTransition;
|
22071
22077
|
});
|
22072
22078
|
if (props.multiple === 'range' && model.value.length > 0) {
|
@@ -22446,7 +22452,7 @@ const VDatePicker = genericComponent()({
|
|
22446
22452
|
}
|
22447
22453
|
return value && adapter.isValid(value) ? value : today;
|
22448
22454
|
});
|
22449
|
-
const headerColor =
|
22455
|
+
const headerColor = toRef(() => props.headerColor ?? props.color);
|
22450
22456
|
const month = ref(Number(props.month ?? adapter.getMonth(adapter.startOfMonth(internal.value))));
|
22451
22457
|
const year = ref(Number(props.year ?? adapter.getYear(adapter.startOfYear(adapter.setMonth(internal.value, month.value)))));
|
22452
22458
|
const isReversing = shallowRef(false);
|
@@ -22463,8 +22469,8 @@ const VDatePicker = genericComponent()({
|
|
22463
22469
|
date = adapter.setYear(date, year.value);
|
22464
22470
|
return adapter.format(date, 'monthAndYear');
|
22465
22471
|
});
|
22466
|
-
// const headerIcon =
|
22467
|
-
const headerTransition =
|
22472
|
+
// const headerIcon = toRef(() => props.inputMode === 'calendar' ? props.keyboardIcon : props.calendarIcon)
|
22473
|
+
const headerTransition = toRef(() => `date-picker-header${isReversing.value ? '-reverse' : ''}-transition`);
|
22468
22474
|
const disabled = computed(() => {
|
22469
22475
|
if (props.disabled) return true;
|
22470
22476
|
const targets = [];
|
@@ -22676,7 +22682,7 @@ const VEmptyState = genericComponent()({
|
|
22676
22682
|
const {
|
22677
22683
|
backgroundColorClasses,
|
22678
22684
|
backgroundColorStyles
|
22679
|
-
} = useBackgroundColor(
|
22685
|
+
} = useBackgroundColor(() => props.bgColor);
|
22680
22686
|
const {
|
22681
22687
|
dimensionStyles
|
22682
22688
|
} = useDimension(props);
|
@@ -22839,7 +22845,7 @@ const VExpansionPanelTitle = genericComponent()({
|
|
22839
22845
|
const {
|
22840
22846
|
backgroundColorClasses,
|
22841
22847
|
backgroundColorStyles
|
22842
|
-
} = useBackgroundColor(props
|
22848
|
+
} = useBackgroundColor(() => props.color);
|
22843
22849
|
const {
|
22844
22850
|
dimensionStyles
|
22845
22851
|
} = useDimension(props);
|
@@ -22850,7 +22856,7 @@ const VExpansionPanelTitle = genericComponent()({
|
|
22850
22856
|
expandIcon: props.expandIcon,
|
22851
22857
|
readonly: props.readonly
|
22852
22858
|
}));
|
22853
|
-
const icon =
|
22859
|
+
const icon = toRef(() => expansionPanel.isSelected.value ? props.collapseIcon : props.expandIcon);
|
22854
22860
|
useRender(() => withDirectives(createVNode("button", {
|
22855
22861
|
"class": ['v-expansion-panel-title', {
|
22856
22862
|
'v-expansion-panel-title--active': expansionPanel.isSelected.value,
|
@@ -22905,14 +22911,14 @@ const VExpansionPanel = genericComponent()({
|
|
22905
22911
|
const {
|
22906
22912
|
backgroundColorClasses,
|
22907
22913
|
backgroundColorStyles
|
22908
|
-
} = useBackgroundColor(props
|
22914
|
+
} = useBackgroundColor(() => props.bgColor);
|
22909
22915
|
const {
|
22910
22916
|
elevationClasses
|
22911
22917
|
} = useElevation(props);
|
22912
22918
|
const {
|
22913
22919
|
roundedClasses
|
22914
22920
|
} = useRounded(props);
|
22915
|
-
const isDisabled =
|
22921
|
+
const isDisabled = toRef(() => groupItem?.disabled.value || props.disabled);
|
22916
22922
|
const selectedIndices = computed(() => groupItem.group.items.value.reduce((arr, item, index) => {
|
22917
22923
|
if (groupItem.group.selected.value.includes(item.id)) arr.push(index);
|
22918
22924
|
return arr;
|
@@ -23003,21 +23009,21 @@ const VExpansionPanels = genericComponent()({
|
|
23003
23009
|
const {
|
23004
23010
|
themeClasses
|
23005
23011
|
} = provideTheme(props);
|
23006
|
-
const variantClass =
|
23012
|
+
const variantClass = toRef(() => props.variant && `v-expansion-panels--variant-${props.variant}`);
|
23007
23013
|
provideDefaults({
|
23008
23014
|
VExpansionPanel: {
|
23009
|
-
bgColor: toRef(props
|
23010
|
-
collapseIcon: toRef(props
|
23011
|
-
color: toRef(props
|
23012
|
-
eager: toRef(props
|
23013
|
-
elevation: toRef(props
|
23014
|
-
expandIcon: toRef(props
|
23015
|
-
focusable: toRef(props
|
23016
|
-
hideActions: toRef(props
|
23017
|
-
readonly: toRef(props
|
23018
|
-
ripple: toRef(props
|
23019
|
-
rounded: toRef(props
|
23020
|
-
static: toRef(props
|
23015
|
+
bgColor: toRef(() => props.bgColor),
|
23016
|
+
collapseIcon: toRef(() => props.collapseIcon),
|
23017
|
+
color: toRef(() => props.color),
|
23018
|
+
eager: toRef(() => props.eager),
|
23019
|
+
elevation: toRef(() => props.elevation),
|
23020
|
+
expandIcon: toRef(() => props.expandIcon),
|
23021
|
+
focusable: toRef(() => props.focusable),
|
23022
|
+
hideActions: toRef(() => props.hideActions),
|
23023
|
+
readonly: toRef(() => props.readonly),
|
23024
|
+
ripple: toRef(() => props.ripple),
|
23025
|
+
rounded: toRef(() => props.rounded),
|
23026
|
+
static: toRef(() => props.static)
|
23021
23027
|
}
|
23022
23028
|
});
|
23023
23029
|
useRender(() => createVNode(props.tag, {
|
@@ -23079,7 +23085,7 @@ const VFab = genericComponent()({
|
|
23079
23085
|
if (!entries.length) return;
|
23080
23086
|
height.value = entries[0].target.clientHeight;
|
23081
23087
|
});
|
23082
|
-
const hasPosition =
|
23088
|
+
const hasPosition = toRef(() => props.app || props.absolute);
|
23083
23089
|
const position = computed(() => {
|
23084
23090
|
if (!hasPosition.value) return false;
|
23085
23091
|
return props.location?.split(' ').shift() ?? 'bottom';
|
@@ -23096,7 +23102,7 @@ const VFab = genericComponent()({
|
|
23096
23102
|
layoutSize: computed(() => props.layout ? height.value + 24 : 0),
|
23097
23103
|
elementSize: computed(() => height.value + 24),
|
23098
23104
|
active: computed(() => props.app && model.value),
|
23099
|
-
absolute: toRef(props
|
23105
|
+
absolute: toRef(() => props.absolute)
|
23100
23106
|
});
|
23101
23107
|
watchEffect(() => {
|
23102
23108
|
layoutItemStyles.value = layout.layoutItemStyles.value;
|
@@ -23221,7 +23227,7 @@ const VFileInput = genericComponent()({
|
|
23221
23227
|
const vInputRef = ref();
|
23222
23228
|
const vFieldRef = ref();
|
23223
23229
|
const inputRef = ref();
|
23224
|
-
const isActive =
|
23230
|
+
const isActive = toRef(() => isFocused.value || props.active);
|
23225
23231
|
const isPlainOrUnderlined = computed(() => ['plain', 'underlined'].includes(props.variant));
|
23226
23232
|
function onFocus() {
|
23227
23233
|
if (inputRef.value !== document.activeElement) {
|
@@ -23394,7 +23400,7 @@ const VFooter = genericComponent()({
|
|
23394
23400
|
const {
|
23395
23401
|
backgroundColorClasses,
|
23396
23402
|
backgroundColorStyles
|
23397
|
-
} = useBackgroundColor(
|
23403
|
+
} = useBackgroundColor(() => props.color);
|
23398
23404
|
const {
|
23399
23405
|
borderClasses
|
23400
23406
|
} = useBorder(props);
|
@@ -23416,11 +23422,11 @@ const VFooter = genericComponent()({
|
|
23416
23422
|
const layout = useLayoutItem({
|
23417
23423
|
id: props.name,
|
23418
23424
|
order: computed(() => parseInt(props.order, 10)),
|
23419
|
-
position:
|
23425
|
+
position: toRef(() => 'bottom'),
|
23420
23426
|
layoutSize: height,
|
23421
23427
|
elementSize: computed(() => props.height === 'auto' ? undefined : height.value),
|
23422
|
-
active:
|
23423
|
-
absolute: toRef(props
|
23428
|
+
active: toRef(() => props.app),
|
23429
|
+
absolute: toRef(() => props.absolute)
|
23424
23430
|
});
|
23425
23431
|
watchEffect(() => {
|
23426
23432
|
layoutItemStyles.value = layout.layoutItemStyles.value;
|
@@ -23893,11 +23899,11 @@ const VLayoutItem = genericComponent()({
|
|
23893
23899
|
} = useLayoutItem({
|
23894
23900
|
id: props.name,
|
23895
23901
|
order: computed(() => parseInt(props.order, 10)),
|
23896
|
-
position: toRef(props
|
23897
|
-
elementSize: toRef(props
|
23898
|
-
layoutSize: toRef(props
|
23899
|
-
active: toRef(props
|
23900
|
-
absolute: toRef(props
|
23902
|
+
position: toRef(() => props.position),
|
23903
|
+
elementSize: toRef(() => props.size),
|
23904
|
+
layoutSize: toRef(() => props.size),
|
23905
|
+
active: toRef(() => props.modelValue),
|
23906
|
+
absolute: toRef(() => props.absolute)
|
23901
23907
|
});
|
23902
23908
|
return () => createVNode("div", {
|
23903
23909
|
"class": ['v-layout-item', props.class],
|
@@ -24429,7 +24435,7 @@ const VNavigationDrawer = genericComponent()({
|
|
24429
24435
|
const {
|
24430
24436
|
backgroundColorClasses,
|
24431
24437
|
backgroundColorStyles
|
24432
|
-
} = useBackgroundColor(
|
24438
|
+
} = useBackgroundColor(() => props.color);
|
24433
24439
|
const {
|
24434
24440
|
elevationClasses
|
24435
24441
|
} = useElevation(props);
|
@@ -24462,7 +24468,7 @@ const VNavigationDrawer = genericComponent()({
|
|
24462
24468
|
const location = computed(() => {
|
24463
24469
|
return toPhysical(props.location, isRtl.value);
|
24464
24470
|
});
|
24465
|
-
const isPersistent =
|
24471
|
+
const isPersistent = toRef(() => props.persistent);
|
24466
24472
|
const isTemporary = computed(() => !props.permanent && (mobile.value || props.temporary));
|
24467
24473
|
const isSticky = computed(() => props.sticky && !isTemporary.value && location.value !== 'bottom');
|
24468
24474
|
useToggleScope(() => props.expandOnHover && props.rail != null, () => {
|
@@ -24488,7 +24494,7 @@ const VNavigationDrawer = genericComponent()({
|
|
24488
24494
|
isActive,
|
24489
24495
|
isTemporary,
|
24490
24496
|
width,
|
24491
|
-
touchless: toRef(props
|
24497
|
+
touchless: toRef(() => props.touchless),
|
24492
24498
|
position: location
|
24493
24499
|
});
|
24494
24500
|
const layoutSize = computed(() => {
|
@@ -24505,7 +24511,7 @@ const VNavigationDrawer = genericComponent()({
|
|
24505
24511
|
layoutSize,
|
24506
24512
|
elementSize: width,
|
24507
24513
|
active: readonly(isActive),
|
24508
|
-
disableTransitions:
|
24514
|
+
disableTransitions: toRef(() => isDragging.value),
|
24509
24515
|
absolute: computed(() =>
|
24510
24516
|
// eslint-disable-next-line @typescript-eslint/no-use-before-define
|
24511
24517
|
props.absolute || isSticky.value && typeof isStuck.value !== 'string')
|
@@ -24518,9 +24524,9 @@ const VNavigationDrawer = genericComponent()({
|
|
24518
24524
|
isSticky,
|
24519
24525
|
layoutItemStyles
|
24520
24526
|
});
|
24521
|
-
const scrimColor = useBackgroundColor(
|
24527
|
+
const scrimColor = useBackgroundColor(() => {
|
24522
24528
|
return typeof props.scrim === 'string' ? props.scrim : null;
|
24523
|
-
})
|
24529
|
+
});
|
24524
24530
|
const scrimStyles = computed(() => ({
|
24525
24531
|
...(isDragging.value ? {
|
24526
24532
|
opacity: dragProgress.value * 0.2,
|
@@ -24734,24 +24740,24 @@ const VNumberInput = genericComponent()({
|
|
24734
24740
|
const controlVariant = computed(() => {
|
24735
24741
|
return props.hideInput ? 'stacked' : props.controlVariant;
|
24736
24742
|
});
|
24737
|
-
const incrementIcon =
|
24738
|
-
const decrementIcon =
|
24739
|
-
const controlNodeSize =
|
24740
|
-
const controlNodeDefaultHeight =
|
24741
|
-
const incrementSlotProps =
|
24743
|
+
const incrementIcon = toRef(() => controlVariant.value === 'split' ? '$plus' : '$collapse');
|
24744
|
+
const decrementIcon = toRef(() => controlVariant.value === 'split' ? '$minus' : '$expand');
|
24745
|
+
const controlNodeSize = toRef(() => controlVariant.value === 'split' ? 'default' : 'small');
|
24746
|
+
const controlNodeDefaultHeight = toRef(() => controlVariant.value === 'stacked' ? 'auto' : '100%');
|
24747
|
+
const incrementSlotProps = {
|
24742
24748
|
props: {
|
24743
24749
|
onClick: onControlClick,
|
24744
24750
|
onPointerup: onControlMouseup,
|
24745
24751
|
onPointerdown: onUpControlMousedown
|
24746
24752
|
}
|
24747
|
-
}
|
24748
|
-
const decrementSlotProps =
|
24753
|
+
};
|
24754
|
+
const decrementSlotProps = {
|
24749
24755
|
props: {
|
24750
24756
|
onClick: onControlClick,
|
24751
24757
|
onPointerup: onControlMouseup,
|
24752
24758
|
onPointerdown: onDownControlMousedown
|
24753
24759
|
}
|
24754
|
-
}
|
24760
|
+
};
|
24755
24761
|
watch(() => props.precision, () => formatInputValue());
|
24756
24762
|
onMounted(() => {
|
24757
24763
|
clampModel();
|
@@ -24903,7 +24909,7 @@ const VNumberInput = genericComponent()({
|
|
24903
24909
|
}
|
24904
24910
|
}
|
24905
24911
|
}, {
|
24906
|
-
default: () => [slots.increment(incrementSlotProps
|
24912
|
+
default: () => [slots.increment(incrementSlotProps)]
|
24907
24913
|
});
|
24908
24914
|
}
|
24909
24915
|
function decrementControlNode() {
|
@@ -24932,7 +24938,7 @@ const VNumberInput = genericComponent()({
|
|
24932
24938
|
}
|
24933
24939
|
}
|
24934
24940
|
}, {
|
24935
|
-
default: () => [slots.decrement(decrementSlotProps
|
24941
|
+
default: () => [slots.decrement(decrementSlotProps)]
|
24936
24942
|
});
|
24937
24943
|
}
|
24938
24944
|
function controlNode() {
|
@@ -25132,12 +25138,12 @@ const VOtpInput = genericComponent()({
|
|
25132
25138
|
}
|
25133
25139
|
provideDefaults({
|
25134
25140
|
VField: {
|
25135
|
-
color:
|
25136
|
-
bgColor:
|
25137
|
-
baseColor:
|
25138
|
-
disabled:
|
25139
|
-
error:
|
25140
|
-
variant:
|
25141
|
+
color: toRef(() => props.color),
|
25142
|
+
bgColor: toRef(() => props.color),
|
25143
|
+
baseColor: toRef(() => props.baseColor),
|
25144
|
+
disabled: toRef(() => props.disabled),
|
25145
|
+
error: toRef(() => props.error),
|
25146
|
+
variant: toRef(() => props.variant)
|
25141
25147
|
}
|
25142
25148
|
}, {
|
25143
25149
|
scoped: true
|
@@ -25938,7 +25944,7 @@ const VSkeletonLoader = genericComponent()({
|
|
25938
25944
|
const {
|
25939
25945
|
backgroundColorClasses,
|
25940
25946
|
backgroundColorStyles
|
25941
|
-
} = useBackgroundColor(
|
25947
|
+
} = useBackgroundColor(() => props.color);
|
25942
25948
|
const {
|
25943
25949
|
dimensionStyles
|
25944
25950
|
} = useDimension(props);
|
@@ -26737,7 +26743,7 @@ const VSparkline = genericComponent()({
|
|
26737
26743
|
const {
|
26738
26744
|
textColorClasses,
|
26739
26745
|
textColorStyles
|
26740
|
-
} = useTextColor(
|
26746
|
+
} = useTextColor(() => props.color);
|
26741
26747
|
const hasLabels = computed(() => {
|
26742
26748
|
return Boolean(props.showLabels || props.labels.length > 0 || !!slots?.label);
|
26743
26749
|
});
|
@@ -27283,11 +27289,11 @@ const VSwitch = genericComponent()({
|
|
27283
27289
|
} = useFocus(props);
|
27284
27290
|
const control = ref();
|
27285
27291
|
const isForcedColorsModeActive = IN_BROWSER && window.matchMedia('(forced-colors: active)').matches;
|
27286
|
-
const loaderColor =
|
27292
|
+
const loaderColor = toRef(() => {
|
27287
27293
|
return typeof props.loading === 'string' && props.loading !== '' ? props.loading : props.color;
|
27288
27294
|
});
|
27289
27295
|
const uid = useId();
|
27290
|
-
const id =
|
27296
|
+
const id = toRef(() => props.id || `switch-${uid}`);
|
27291
27297
|
function onChange() {
|
27292
27298
|
if (indeterminate.value) {
|
27293
27299
|
indeterminate.value = false;
|
@@ -27438,7 +27444,7 @@ const VSystemBar = genericComponent()({
|
|
27438
27444
|
const {
|
27439
27445
|
backgroundColorClasses,
|
27440
27446
|
backgroundColorStyles
|
27441
|
-
} = useBackgroundColor(
|
27447
|
+
} = useBackgroundColor(() => props.color);
|
27442
27448
|
const {
|
27443
27449
|
elevationClasses
|
27444
27450
|
} = useElevation(props);
|
@@ -27458,7 +27464,7 @@ const VSystemBar = genericComponent()({
|
|
27458
27464
|
layoutSize: height,
|
27459
27465
|
elementSize: height,
|
27460
27466
|
active: computed(() => true),
|
27461
|
-
absolute: toRef(props
|
27467
|
+
absolute: toRef(() => props.absolute)
|
27462
27468
|
});
|
27463
27469
|
useRender(() => createVNode(props.tag, {
|
27464
27470
|
"class": ['v-system-bar', {
|
@@ -27500,7 +27506,7 @@ const VTab = genericComponent()({
|
|
27500
27506
|
const {
|
27501
27507
|
textColorClasses: sliderColorClasses,
|
27502
27508
|
textColorStyles: sliderColorStyles
|
27503
|
-
} = useTextColor(props
|
27509
|
+
} = useTextColor(() => props.sliderColor);
|
27504
27510
|
const rootEl = ref();
|
27505
27511
|
const sliderEl = ref();
|
27506
27512
|
const isHorizontal = computed(() => props.direction === 'horizontal');
|
@@ -27693,18 +27699,18 @@ const VTabs = genericComponent()({
|
|
27693
27699
|
const {
|
27694
27700
|
backgroundColorClasses,
|
27695
27701
|
backgroundColorStyles
|
27696
|
-
} = useBackgroundColor(
|
27702
|
+
} = useBackgroundColor(() => props.bgColor);
|
27697
27703
|
const {
|
27698
27704
|
scopeId
|
27699
27705
|
} = useScopeId();
|
27700
27706
|
provideDefaults({
|
27701
27707
|
VTab: {
|
27702
|
-
color: toRef(props
|
27703
|
-
direction: toRef(props
|
27704
|
-
stacked: toRef(props
|
27705
|
-
fixed: toRef(props
|
27706
|
-
sliderColor: toRef(props
|
27707
|
-
hideSlider: toRef(props
|
27708
|
+
color: toRef(() => props.color),
|
27709
|
+
direction: toRef(() => props.direction),
|
27710
|
+
stacked: toRef(() => props.stacked),
|
27711
|
+
fixed: toRef(() => props.fixedTabs),
|
27712
|
+
sliderColor: toRef(() => props.sliderColor),
|
27713
|
+
hideSlider: toRef(() => props.hideSlider)
|
27708
27714
|
}
|
27709
27715
|
});
|
27710
27716
|
useRender(() => {
|
@@ -28054,7 +28060,7 @@ const VTimelineDivider = genericComponent()({
|
|
28054
28060
|
const {
|
28055
28061
|
backgroundColorStyles,
|
28056
28062
|
backgroundColorClasses
|
28057
|
-
} = useBackgroundColor(
|
28063
|
+
} = useBackgroundColor(() => props.dotColor);
|
28058
28064
|
const {
|
28059
28065
|
roundedClasses
|
28060
28066
|
} = useRounded(props, 'v-timeline-divider__dot');
|
@@ -28064,7 +28070,7 @@ const VTimelineDivider = genericComponent()({
|
|
28064
28070
|
const {
|
28065
28071
|
backgroundColorClasses: lineColorClasses,
|
28066
28072
|
backgroundColorStyles: lineColorStyles
|
28067
|
-
} = useBackgroundColor(
|
28073
|
+
} = useBackgroundColor(() => props.lineColor);
|
28068
28074
|
useRender(() => createVNode("div", {
|
28069
28075
|
"class": ['v-timeline-divider', {
|
28070
28076
|
'v-timeline-divider--fill-dot': props.fillDot
|
@@ -28235,17 +28241,17 @@ const VTimeline = genericComponent()({
|
|
28235
28241
|
} = useRtl();
|
28236
28242
|
provideDefaults({
|
28237
28243
|
VTimelineDivider: {
|
28238
|
-
lineColor: toRef(props
|
28244
|
+
lineColor: toRef(() => props.lineColor)
|
28239
28245
|
},
|
28240
28246
|
VTimelineItem: {
|
28241
|
-
density: toRef(props
|
28242
|
-
dotColor: toRef(props
|
28243
|
-
fillDot: toRef(props
|
28244
|
-
hideOpposite: toRef(props
|
28245
|
-
iconColor: toRef(props
|
28246
|
-
lineColor: toRef(props
|
28247
|
-
lineInset: toRef(props
|
28248
|
-
size: toRef(props
|
28247
|
+
density: toRef(() => props.density),
|
28248
|
+
dotColor: toRef(() => props.dotColor),
|
28249
|
+
fillDot: toRef(() => props.fillDot),
|
28250
|
+
hideOpposite: toRef(() => props.hideOpposite),
|
28251
|
+
iconColor: toRef(() => props.iconColor),
|
28252
|
+
lineColor: toRef(() => props.lineColor),
|
28253
|
+
lineInset: toRef(() => props.lineInset),
|
28254
|
+
size: toRef(() => props.size)
|
28249
28255
|
}
|
28250
28256
|
});
|
28251
28257
|
const sideClasses = computed(() => {
|
@@ -28292,9 +28298,9 @@ const VToolbarItems = genericComponent()({
|
|
28292
28298
|
} = _ref;
|
28293
28299
|
provideDefaults({
|
28294
28300
|
VBtn: {
|
28295
|
-
color: toRef(props
|
28301
|
+
color: toRef(() => props.color),
|
28296
28302
|
height: 'inherit',
|
28297
|
-
variant: toRef(props
|
28303
|
+
variant: toRef(() => props.variant)
|
28298
28304
|
}
|
28299
28305
|
});
|
28300
28306
|
useRender(() => createVNode("div", {
|
@@ -28341,7 +28347,7 @@ const VTooltip = genericComponent()({
|
|
28341
28347
|
scopeId
|
28342
28348
|
} = useScopeId();
|
28343
28349
|
const uid = useId();
|
28344
|
-
const id =
|
28350
|
+
const id = toRef(() => props.id || `v-tooltip-${uid}`);
|
28345
28351
|
const overlay = ref();
|
28346
28352
|
const location = computed(() => {
|
28347
28353
|
return props.location.split(' ').length > 1 ? props.location : props.location + ' center';
|
@@ -28349,7 +28355,7 @@ const VTooltip = genericComponent()({
|
|
28349
28355
|
const origin = computed(() => {
|
28350
28356
|
return props.origin === 'auto' || props.origin === 'overlap' || props.origin.split(' ').length > 1 || props.location.split(' ').length > 1 ? props.origin : props.origin + ' center';
|
28351
28357
|
});
|
28352
|
-
const transition =
|
28358
|
+
const transition = toRef(() => {
|
28353
28359
|
if (props.transition) return props.transition;
|
28354
28360
|
return isActive.value ? 'scale-transition' : 'fade-transition';
|
28355
28361
|
});
|
@@ -28428,13 +28434,19 @@ const makeVCalendarIntervalEventProps = propsFactory({
|
|
28428
28434
|
}, 'VCalendarIntervalEvent');
|
28429
28435
|
const VCalendarIntervalEvent = genericComponent()({
|
28430
28436
|
name: 'VCalendarIntervalEvent',
|
28437
|
+
inheritAttrs: false,
|
28431
28438
|
props: makeVCalendarIntervalEventProps(),
|
28432
|
-
setup(props) {
|
28439
|
+
setup(props, _ref) {
|
28440
|
+
let {
|
28441
|
+
attrs,
|
28442
|
+
emit,
|
28443
|
+
slots
|
28444
|
+
} = _ref;
|
28433
28445
|
const adapter = useDate();
|
28434
28446
|
const calcHeight = () => {
|
28435
|
-
if (!props.event?.first && !props.event?.last || adapter.isEqual(props.event?.
|
28447
|
+
if (!props.event?.first && !props.event?.last || adapter.isEqual(props.event?.end, props.interval?.end)) {
|
28436
28448
|
return {
|
28437
|
-
height:
|
28449
|
+
height: `${props.intervalHeight}px`,
|
28438
28450
|
margin: convertToUnit(0)
|
28439
28451
|
};
|
28440
28452
|
} else {
|
@@ -28443,8 +28455,8 @@ const VCalendarIntervalEvent = genericComponent()({
|
|
28443
28455
|
margin
|
28444
28456
|
} = Array.from({
|
28445
28457
|
length: props.intervalDivisions
|
28446
|
-
}, x => x * (props.intervalDuration / props.intervalDivisions)).reduce((total, div, index) => {
|
28447
|
-
if (adapter.isBefore(adapter.addMinutes(props.interval?.start, div), props.event?.
|
28458
|
+
}, (_, x) => (x + 1) * (props.intervalDuration / props.intervalDivisions)).reduce((total, div, index) => {
|
28459
|
+
if (adapter.isBefore(adapter.addMinutes(props.interval?.start, div), props.event?.end)) {
|
28448
28460
|
return {
|
28449
28461
|
height: convertToUnit(props.intervalHeight / props.intervalDivisions * index),
|
28450
28462
|
margin: convertToUnit(props.intervalHeight / props.intervalDivisions * index)
|
@@ -28465,16 +28477,30 @@ const VCalendarIntervalEvent = genericComponent()({
|
|
28465
28477
|
}
|
28466
28478
|
};
|
28467
28479
|
useRender(() => {
|
28468
|
-
return createVNode(
|
28480
|
+
return createVNode("div", null, [slots.intervalEvent?.({
|
28481
|
+
height: calcHeight().height,
|
28482
|
+
margin: calcHeight().margin,
|
28483
|
+
eventClass: 'v-calendar-internal-event',
|
28484
|
+
event: props.event,
|
28485
|
+
interval: props.interval
|
28486
|
+
}) ?? createVNode(VSheet, mergeProps({
|
28469
28487
|
"height": calcHeight().height,
|
28470
28488
|
"density": "comfortable",
|
28471
28489
|
"style": `margin-top: ${calcHeight().margin}`,
|
28472
28490
|
"class": "v-calendar-internal-event",
|
28473
28491
|
"color": props.event?.color ?? undefined,
|
28474
28492
|
"rounded": props.event?.first && props.event?.last ? true : props.event?.first ? 't' : props.event?.last ? 'b' : false
|
28475
|
-
}, {
|
28493
|
+
}, getPrefixedEventHandlers(attrs, ':event', () => ({
|
28494
|
+
event: props.event,
|
28495
|
+
allDay: false,
|
28496
|
+
day: null,
|
28497
|
+
interval: props.interval,
|
28498
|
+
intervalDivisions: props.intervalDivisions,
|
28499
|
+
intervalDuration: props.intervalDuration,
|
28500
|
+
intervalHeight: props.intervalHeight
|
28501
|
+
}))), {
|
28476
28502
|
default: () => [props.event?.first ? props.event?.title : '']
|
28477
|
-
});
|
28503
|
+
})]);
|
28478
28504
|
});
|
28479
28505
|
return {};
|
28480
28506
|
}
|
@@ -28510,6 +28536,7 @@ const makeVCalendarIntervalProps = propsFactory({
|
|
28510
28536
|
}, 'VCalendarInterval');
|
28511
28537
|
const VCalendarInterval = genericComponent()({
|
28512
28538
|
name: 'VCalendarInterval',
|
28539
|
+
inheritAttrs: false,
|
28513
28540
|
props: {
|
28514
28541
|
index: {
|
28515
28542
|
type: Number,
|
@@ -28519,6 +28546,7 @@ const VCalendarInterval = genericComponent()({
|
|
28519
28546
|
},
|
28520
28547
|
setup(props, _ref) {
|
28521
28548
|
let {
|
28549
|
+
attrs,
|
28522
28550
|
emit,
|
28523
28551
|
slots
|
28524
28552
|
} = _ref;
|
@@ -28544,45 +28572,74 @@ const VCalendarInterval = genericComponent()({
|
|
28544
28572
|
return props.dayIndex === 0 ? createVNode("div", {
|
28545
28573
|
"class": "v-calendar-day__row-with-label",
|
28546
28574
|
"style": `height: ${convertToUnit(props.intervalHeight)}`
|
28547
|
-
}, [createVNode("div", {
|
28575
|
+
}, [createVNode("div", mergeProps({
|
28548
28576
|
"class": "v-calendar-day__row-label"
|
28549
|
-
},
|
28550
|
-
|
28551
|
-
|
28552
|
-
}, {
|
28553
|
-
default: () => [props.index ? props.intervalFormat ? typeof props.intervalFormat === 'string' ? adapter.format(interval.value.start, 'hours12h') : props.intervalFormat(interval.value) : interval.value.label : '']
|
28554
|
-
})]), createVNode("div", {
|
28577
|
+
}, getPrefixedEventHandlers(attrs, ':time', () => props)), [slots.intervalTitle?.({
|
28578
|
+
interval: interval.value
|
28579
|
+
}) ?? (props.index ? props.intervalFormat ? typeof props.intervalFormat === 'string' ? adapter.format(interval.value.start, 'hours12h') : props.intervalFormat(interval.value) : interval.value.label : '12 AM')]), createVNode("div", {
|
28555
28580
|
"class": "v-calendar-day__row-hairline"
|
28556
|
-
}, null), createVNode("div", {
|
28581
|
+
}, null), createVNode("div", mergeProps({
|
28557
28582
|
"class": ['v-calendar-day__row-content', interval.value.events.some(e => !e.last) ? 'v-calendar-day__row-content-through' : '']
|
28558
|
-
},
|
28559
|
-
|
28560
|
-
|
28561
|
-
|
28562
|
-
|
28563
|
-
|
28564
|
-
|
28565
|
-
|
28566
|
-
|
28567
|
-
|
28568
|
-
|
28569
|
-
|
28583
|
+
}, getPrefixedEventHandlers(attrs, ':interval', () => interval.value)), [slots.intervalBody?.({
|
28584
|
+
interval: interval.value
|
28585
|
+
}) ?? createVNode("div", null, [interval.value.events?.map(event => createVNode(VCalendarIntervalEvent, mergeProps({
|
28586
|
+
"event": event,
|
28587
|
+
"interval": interval.value,
|
28588
|
+
"intervalDivisions": props.intervalDivisions,
|
28589
|
+
"intervalDuration": props.intervalDuration,
|
28590
|
+
"intervalHeight": props.intervalHeight
|
28591
|
+
}, attrs), {
|
28592
|
+
...(slots.intervalEvent ? {
|
28593
|
+
intervalEvent: _ref2 => {
|
28594
|
+
let {
|
28595
|
+
height,
|
28596
|
+
margin,
|
28597
|
+
eventClass,
|
28598
|
+
event,
|
28599
|
+
interval
|
28600
|
+
} = _ref2;
|
28601
|
+
return slots.intervalEvent?.({
|
28602
|
+
height,
|
28603
|
+
margin,
|
28604
|
+
eventClass,
|
28605
|
+
event,
|
28606
|
+
interval
|
28607
|
+
});
|
28608
|
+
}
|
28609
|
+
} : {})
|
28610
|
+
}))])])]) : createVNode("div", {
|
28570
28611
|
"class": "v-calendar-day__row-without-label",
|
28571
28612
|
"style": `height: ${convertToUnit(props.intervalHeight)}`
|
28572
|
-
}, [createVNode("div", {
|
28613
|
+
}, [createVNode("div", mergeProps({
|
28573
28614
|
"class": ['v-calendar-day__row-content', interval.value.events.some(e => !e.last) ? 'v-calendar-day__row-content-through' : '']
|
28574
|
-
},
|
28575
|
-
|
28576
|
-
|
28577
|
-
|
28578
|
-
|
28579
|
-
|
28580
|
-
|
28581
|
-
|
28582
|
-
|
28583
|
-
|
28584
|
-
|
28585
|
-
|
28615
|
+
}, getPrefixedEventHandlers(attrs, ':interval', () => interval.value)), [slots.intervalBody?.({
|
28616
|
+
interval: interval.value
|
28617
|
+
}) ?? interval.value.events?.map(event => createVNode(VCalendarIntervalEvent, mergeProps({
|
28618
|
+
"event": event,
|
28619
|
+
"interval": interval.value,
|
28620
|
+
"intervalDivisions": props.intervalDivisions,
|
28621
|
+
"intervalDuration": props.intervalDuration,
|
28622
|
+
"intervalHeight": props.intervalHeight
|
28623
|
+
}, attrs), {
|
28624
|
+
...(slots.intervalEvent ? {
|
28625
|
+
intervalEvent: _ref3 => {
|
28626
|
+
let {
|
28627
|
+
height,
|
28628
|
+
margin,
|
28629
|
+
eventClass,
|
28630
|
+
event,
|
28631
|
+
interval
|
28632
|
+
} = _ref3;
|
28633
|
+
return slots.intervalEvent?.({
|
28634
|
+
height,
|
28635
|
+
margin,
|
28636
|
+
eventClass,
|
28637
|
+
event,
|
28638
|
+
interval
|
28639
|
+
});
|
28640
|
+
}
|
28641
|
+
} : {})
|
28642
|
+
}))])]);
|
28586
28643
|
});
|
28587
28644
|
return {
|
28588
28645
|
interval
|
@@ -28590,6 +28647,8 @@ const VCalendarInterval = genericComponent()({
|
|
28590
28647
|
}
|
28591
28648
|
});
|
28592
28649
|
|
28650
|
+
// Types
|
28651
|
+
|
28593
28652
|
const makeVCalendarDayProps = propsFactory({
|
28594
28653
|
hideDayHeader: Boolean,
|
28595
28654
|
intervals: {
|
@@ -28600,26 +28659,34 @@ const makeVCalendarDayProps = propsFactory({
|
|
28600
28659
|
}, 'VCalendarDay');
|
28601
28660
|
const VCalendarDay = genericComponent()({
|
28602
28661
|
name: 'VCalendarDay',
|
28662
|
+
inheritAttrs: false,
|
28603
28663
|
props: makeVCalendarDayProps(),
|
28604
|
-
setup(props) {
|
28664
|
+
setup(props, _ref) {
|
28665
|
+
let {
|
28666
|
+
attrs,
|
28667
|
+
slots
|
28668
|
+
} = _ref;
|
28605
28669
|
const adapter = useDate();
|
28606
28670
|
const intervals = computed(() => [...Array.from({
|
28607
28671
|
length: props.intervals
|
28608
|
-
}, (v, i) => i).filter((
|
28672
|
+
}, (v, i) => i).filter((_, index) => props.intervalDuration * (index + props.intervalStart) < 1440)]);
|
28609
28673
|
useRender(() => {
|
28610
28674
|
const calendarIntervalProps = VCalendarInterval.filterProps(props);
|
28611
28675
|
return createVNode("div", {
|
28612
28676
|
"class": "v-calendar-day__container"
|
28613
|
-
}, [!props.hideDayHeader && createVNode("div", {
|
28614
|
-
"key": "
|
28677
|
+
}, [!props.hideDayHeader && createVNode("div", mergeProps({
|
28678
|
+
"key": "calendar-week-name",
|
28615
28679
|
"class": "v-calendar-weekly__head-weekday"
|
28616
|
-
}, [adapter.format(props.day.date, 'weekdayShort'), createVNode("div", null, [createVNode(VBtn, {
|
28680
|
+
}, getPrefixedEventHandlers(attrs, ':day', () => props.day)), [adapter.format(props.day.date, 'weekdayShort'), createVNode("div", null, [createVNode(VBtn, mergeProps(getPrefixedEventHandlers(attrs, ':date', () => props.day), {
|
28681
|
+
"class": props.day?.isToday ? 'v-calendar-day-label__today' : undefined,
|
28617
28682
|
"icon": true,
|
28618
28683
|
"text": adapter.format(props.day.date, 'dayOfMonth'),
|
28619
|
-
"variant":
|
28620
|
-
}, null)])]), intervals.value.map((_, index) => createVNode(VCalendarInterval, mergeProps({
|
28684
|
+
"variant": props.day?.isToday ? undefined : 'text'
|
28685
|
+
}), null)])]), intervals.value.map((_, index) => slots.interval?.(calendarIntervalProps) ?? createVNode(VCalendarInterval, mergeProps({
|
28621
28686
|
"index": index
|
28622
|
-
}, calendarIntervalProps
|
28687
|
+
}, calendarIntervalProps, attrs, getPrefixedEventHandlers(attrs, ':interval', () => calendarIntervalProps)), {
|
28688
|
+
...pick(slots, ['intervalBody', 'intervalEvent', 'intervalTitle'])
|
28689
|
+
}))]);
|
28623
28690
|
});
|
28624
28691
|
return {
|
28625
28692
|
intervals
|
@@ -28658,7 +28725,8 @@ const VCalendarHeader = genericComponent()({
|
|
28658
28725
|
},
|
28659
28726
|
setup(props, _ref) {
|
28660
28727
|
let {
|
28661
|
-
emit
|
28728
|
+
emit,
|
28729
|
+
slots
|
28662
28730
|
} = _ref;
|
28663
28731
|
const {
|
28664
28732
|
t
|
@@ -28692,7 +28760,9 @@ const VCalendarHeader = genericComponent()({
|
|
28692
28760
|
"onClick": next
|
28693
28761
|
}, null), createVNode("div", {
|
28694
28762
|
"class": "v-calendar-header__title"
|
28695
|
-
}, [
|
28763
|
+
}, [slots.title?.({
|
28764
|
+
title: props.title
|
28765
|
+
}) ?? createVNode("span", null, [props.title])])]));
|
28696
28766
|
return {};
|
28697
28767
|
}
|
28698
28768
|
});
|
@@ -28704,14 +28774,24 @@ const makeVCalendarEventProps = propsFactory({
|
|
28704
28774
|
}, 'VCalendarEvent');
|
28705
28775
|
const VCalendarEvent = genericComponent()({
|
28706
28776
|
name: 'VCalendarEvent',
|
28777
|
+
inheritAttrs: false,
|
28707
28778
|
props: makeVCalendarEventProps(),
|
28708
|
-
setup(props) {
|
28709
|
-
|
28779
|
+
setup(props, _ref) {
|
28780
|
+
let {
|
28781
|
+
attrs,
|
28782
|
+
emit,
|
28783
|
+
slots
|
28784
|
+
} = _ref;
|
28785
|
+
useRender(() => createVNode(VChip, mergeProps({
|
28710
28786
|
"color": props.allDay ? 'primary' : undefined,
|
28711
28787
|
"density": "comfortable",
|
28712
28788
|
"label": props.allDay,
|
28713
28789
|
"width": "100%"
|
28714
|
-
}, {
|
28790
|
+
}, getPrefixedEventHandlers(attrs, ':event', () => ({
|
28791
|
+
allDay: props.allDay,
|
28792
|
+
day: props.day,
|
28793
|
+
event: props.event
|
28794
|
+
}))), {
|
28715
28795
|
default: () => [createVNode(VBadge, {
|
28716
28796
|
"inline": true,
|
28717
28797
|
"dot": true,
|
@@ -28722,87 +28802,95 @@ const VCalendarEvent = genericComponent()({
|
|
28722
28802
|
}
|
28723
28803
|
});
|
28724
28804
|
|
28805
|
+
// Types
|
28806
|
+
|
28725
28807
|
const makeVCalendarMonthDayProps = propsFactory({
|
28726
28808
|
active: Boolean,
|
28727
28809
|
color: String,
|
28728
|
-
day:
|
28810
|
+
day: {
|
28811
|
+
type: Object
|
28812
|
+
},
|
28729
28813
|
disabled: Boolean,
|
28730
28814
|
events: Array,
|
28731
28815
|
title: [Number, String]
|
28732
28816
|
}, 'VCalendarMonthDay');
|
28733
28817
|
const VCalendarMonthDay = genericComponent()({
|
28734
28818
|
name: 'VCalendarMonthDay',
|
28819
|
+
inheritAttrs: false,
|
28735
28820
|
props: makeVCalendarMonthDayProps(),
|
28736
28821
|
setup(props, _ref) {
|
28737
28822
|
let {
|
28738
|
-
|
28823
|
+
attrs,
|
28739
28824
|
slots
|
28740
28825
|
} = _ref;
|
28741
28826
|
useRender(() => {
|
28742
|
-
|
28743
|
-
title: props.title
|
28744
|
-
}));
|
28745
|
-
return createVNode("div", {
|
28827
|
+
return createVNode("div", mergeProps({
|
28746
28828
|
"class": ['v-calendar-month__day']
|
28747
|
-
}, [!props.day?.isHidden
|
28829
|
+
}, getPrefixedEventHandlers(attrs, ':day', () => props)), [!props.day?.isHidden ? createVNode("div", {
|
28748
28830
|
"key": "title",
|
28749
28831
|
"class": "v-calendar-weekly__day-label"
|
28750
|
-
}, [slots.
|
28832
|
+
}, [slots.dayTitle?.({
|
28751
28833
|
title: props.title
|
28752
|
-
}) ?? createVNode(VBtn, {
|
28834
|
+
}) ?? createVNode(VBtn, mergeProps({
|
28753
28835
|
"class": props.day?.isToday ? 'v-calendar-weekly__day-label__today' : undefined,
|
28754
28836
|
"color": props.color,
|
28755
28837
|
"disabled": props.disabled,
|
28756
28838
|
"icon": true,
|
28757
28839
|
"size": "x-small",
|
28758
|
-
"variant": props.day?.isToday ? undefined : 'flat'
|
28759
|
-
|
28760
|
-
|
28761
|
-
})]), !props.day?.isHidden && createVNode("div", {
|
28840
|
+
"variant": props.day?.isToday ? undefined : 'flat',
|
28841
|
+
"text": `${props.title}`
|
28842
|
+
}, getPrefixedEventHandlers(attrs, ':date', () => props)), null)]) : undefined, !props.day?.isHidden ? createVNode("div", {
|
28762
28843
|
"key": "content",
|
28763
28844
|
"class": "v-calendar-weekly__day-content"
|
28764
|
-
}, [slots.
|
28845
|
+
}, [slots.dayBody?.({
|
28846
|
+
day: props.day,
|
28847
|
+
events: props.events
|
28848
|
+
}) ?? createVNode("div", null, [createVNode("div", {
|
28765
28849
|
"class": "v-calendar-weekly__day-alldayevents-container"
|
28766
|
-
}, [props.events?.filter(event => event.allDay).map(event => slots.
|
28850
|
+
}, [props.events?.filter(event => event.allDay).map(event => slots.dayEvent ? slots.dayEvent({
|
28767
28851
|
day: props.day,
|
28768
28852
|
allDay: true,
|
28769
28853
|
event
|
28770
|
-
}) : createVNode(VCalendarEvent, {
|
28854
|
+
}) : createVNode(VCalendarEvent, mergeProps({
|
28771
28855
|
"day": props.day,
|
28772
28856
|
"event": event,
|
28773
28857
|
"allDay": true
|
28774
|
-
}, null))]), createVNode("div", {
|
28858
|
+
}, attrs), null))]), createVNode("div", {
|
28775
28859
|
"class": "v-calendar-weekly__day-events-container"
|
28776
|
-
}, [props.events?.filter(event => !event.allDay).map(event => slots.
|
28860
|
+
}, [props.events?.filter(event => !event.allDay).map(event => slots.dayEvent ? slots.dayEvent({
|
28777
28861
|
day: props.day,
|
28778
28862
|
event,
|
28779
28863
|
allDay: false
|
28780
|
-
}) : createVNode(VCalendarEvent, {
|
28864
|
+
}) : createVNode(VCalendarEvent, mergeProps({
|
28781
28865
|
"day": props.day,
|
28782
28866
|
"event": event
|
28783
|
-
}, null))])])])
|
28867
|
+
}, attrs), null))])])]) : undefined]);
|
28784
28868
|
});
|
28785
28869
|
return {};
|
28786
28870
|
}
|
28787
28871
|
});
|
28788
28872
|
|
28873
|
+
// Types
|
28874
|
+
|
28789
28875
|
const makeVCalendarProps = propsFactory({
|
28790
28876
|
hideHeader: Boolean,
|
28791
28877
|
hideWeekNumber: Boolean,
|
28792
28878
|
...makeCalendarProps(),
|
28793
28879
|
...makeVCalendarDayProps(),
|
28794
28880
|
...makeVCalendarHeaderProps()
|
28795
|
-
}, '
|
28881
|
+
}, 'VCalendar');
|
28796
28882
|
const VCalendar = genericComponent()({
|
28797
28883
|
name: 'VCalendar',
|
28798
28884
|
props: makeVCalendarProps(),
|
28799
28885
|
emits: {
|
28800
28886
|
next: null,
|
28801
28887
|
prev: null,
|
28888
|
+
today: null,
|
28802
28889
|
'update:modelValue': null
|
28803
28890
|
},
|
28804
28891
|
setup(props, _ref) {
|
28805
28892
|
let {
|
28893
|
+
attrs,
|
28806
28894
|
emit,
|
28807
28895
|
slots
|
28808
28896
|
} = _ref;
|
@@ -28820,27 +28908,33 @@ const VCalendar = genericComponent()({
|
|
28820
28908
|
function onClickNext() {
|
28821
28909
|
if (props.viewMode === 'month') {
|
28822
28910
|
model.value = [adapter.addMonths(displayValue.value, 1)];
|
28823
|
-
}
|
28824
|
-
if (props.viewMode === 'week') {
|
28911
|
+
} else if (props.viewMode === 'week') {
|
28825
28912
|
model.value = [adapter.addDays(displayValue.value, 7)];
|
28826
|
-
}
|
28827
|
-
if (props.viewMode === 'day') {
|
28913
|
+
} else if (props.viewMode === 'day') {
|
28828
28914
|
model.value = [adapter.addDays(displayValue.value, 1)];
|
28829
28915
|
}
|
28916
|
+
nextTick(() => {
|
28917
|
+
emit('next', model.value[0]);
|
28918
|
+
});
|
28830
28919
|
}
|
28831
28920
|
function onClickPrev() {
|
28832
28921
|
if (props.viewMode === 'month') {
|
28833
28922
|
model.value = [adapter.addMonths(displayValue.value, -1)];
|
28834
|
-
}
|
28835
|
-
if (props.viewMode === 'week') {
|
28923
|
+
} else if (props.viewMode === 'week') {
|
28836
28924
|
model.value = [adapter.addDays(displayValue.value, -7)];
|
28837
|
-
}
|
28838
|
-
if (props.viewMode === 'day') {
|
28925
|
+
} else if (props.viewMode === 'day') {
|
28839
28926
|
model.value = [adapter.addDays(displayValue.value, -1)];
|
28840
28927
|
}
|
28928
|
+
nextTick(() => {
|
28929
|
+
emit('prev', model.value[0]);
|
28930
|
+
});
|
28841
28931
|
}
|
28842
28932
|
function onClickToday() {
|
28843
|
-
|
28933
|
+
const date = adapter.date();
|
28934
|
+
model.value = [date];
|
28935
|
+
nextTick(() => {
|
28936
|
+
emit('today', model.value[0]);
|
28937
|
+
});
|
28844
28938
|
}
|
28845
28939
|
const title = computed(() => {
|
28846
28940
|
return adapter.format(displayValue.value, 'monthAndYear');
|
@@ -28854,20 +28948,25 @@ const VCalendar = genericComponent()({
|
|
28854
28948
|
'v-calendar-weekly': props.viewMode === 'week',
|
28855
28949
|
'v-calendar-day': props.viewMode === 'day'
|
28856
28950
|
}]
|
28857
|
-
}, [createVNode("div", null, [!props.hideHeader && (
|
28951
|
+
}, [createVNode("div", null, [!props.hideHeader && (slots.header?.({
|
28952
|
+
title: title.value,
|
28953
|
+
clickNext: onClickNext,
|
28954
|
+
clickPrev: onClickPrev,
|
28955
|
+
clickToday: onClickToday
|
28956
|
+
}) ?? createVNode(VCalendarHeader, mergeProps({
|
28858
28957
|
"key": "calendar-header"
|
28859
28958
|
}, calendarHeaderProps, {
|
28860
28959
|
"title": title.value,
|
28861
28960
|
"onClick:next": onClickNext,
|
28862
28961
|
"onClick:prev": onClickPrev,
|
28863
28962
|
"onClick:toToday": onClickToday
|
28864
|
-
}),
|
28865
|
-
title: title
|
28963
|
+
}), {
|
28964
|
+
title: slots.title
|
28866
28965
|
}))]), createVNode("div", {
|
28867
28966
|
"class": ['v-calendar__container', `days__${weekDays.value.length}`]
|
28868
28967
|
}, [props.viewMode === 'month' && !props.hideDayHeader && createVNode("div", {
|
28869
28968
|
"class": ['v-calendar-weekly__head', `days__${weekDays.value.length}`, ...(!props.hideWeekNumber ? ['v-calendar-weekly__head-weeknumbers'] : [])],
|
28870
|
-
"key": "
|
28969
|
+
"key": "calendarWeeklyHead"
|
28871
28970
|
}, [!props.hideWeekNumber ? createVNode("div", {
|
28872
28971
|
"key": "weekNumber0",
|
28873
28972
|
"class": "v-calendar-weekly__head-weeknumber"
|
@@ -28876,24 +28975,39 @@ const VCalendar = genericComponent()({
|
|
28876
28975
|
}, [dayNames[weekday]]))]), props.viewMode === 'month' && createVNode("div", {
|
28877
28976
|
"key": "VCalendarMonth",
|
28878
28977
|
"class": ['v-calendar-month__days', `days${!props.hideWeekNumber ? '-with-weeknumbers' : ''}__${weekDays.value.length}`, ...(!props.hideWeekNumber ? ['v-calendar-month__weeknumbers'] : [])]
|
28879
|
-
}, [chunkArray(daysInMonth.value, weekDays.value.length).map((week, wi) => [!props.hideWeekNumber ? createVNode("div", {
|
28978
|
+
}, [chunkArray(daysInMonth.value, weekDays.value.length).map((week, wi) => [!props.hideWeekNumber ? createVNode("div", mergeProps({
|
28880
28979
|
"class": "v-calendar-month__weeknumber"
|
28881
|
-
},
|
28882
|
-
|
28980
|
+
}, getPrefixedEventHandlers(attrs, ':weekNumber', () => ({
|
28981
|
+
weekNumber: weekNumbers.value[wi],
|
28982
|
+
week
|
28983
|
+
}))), [weekNumbers.value[wi]]) : '', week.map(day => createVNode(VCalendarMonthDay, mergeProps({
|
28984
|
+
"key": day.date.getTime()
|
28985
|
+
}, calendarDayProps, {
|
28883
28986
|
"day": day,
|
28884
|
-
"title":
|
28987
|
+
"title": adapter.format(day.date, 'dayOfMonth'),
|
28885
28988
|
"events": props.events?.filter(e => adapter.isSameDay(day.date, e.start) || adapter.isSameDay(day.date, e.end))
|
28886
|
-
}, {
|
28887
|
-
event
|
28888
|
-
}))])]), props.viewMode === 'week' && daysInWeek.value.map((day, i) =>
|
28989
|
+
}, attrs), {
|
28990
|
+
...pick(slots, ['day-body', 'day-event', 'day-title'])
|
28991
|
+
}))])]), props.viewMode === 'week' && daysInWeek.value.map((day, i) => slots['day-interval'] ? slots['day-interval']?.({
|
28992
|
+
...calendarDayProps,
|
28993
|
+
day,
|
28994
|
+
dayIndex: i,
|
28995
|
+
events: props.events?.filter(e => adapter.isSameDay(e.start, day.date) || adapter.isSameDay(e.end, day.date))
|
28996
|
+
}) : createVNode(VCalendarDay, mergeProps(calendarDayProps, {
|
28889
28997
|
"day": day,
|
28890
28998
|
"dayIndex": i,
|
28891
28999
|
"events": props.events?.filter(e => adapter.isSameDay(e.start, day.date) || adapter.isSameDay(e.end, day.date))
|
28892
|
-
}
|
28893
|
-
|
29000
|
+
}, attrs), {
|
29001
|
+
...pick(slots, ['interval', 'intervalBody', 'intervalEvent', 'intervalTitle'])
|
29002
|
+
})), props.viewMode === 'day' && (slots['day-interval'] ? slots['day-interval']({
|
29003
|
+
day: genDays([displayValue.value], adapter.date())[0],
|
29004
|
+
dayIndex: 0,
|
29005
|
+
events: props.events?.filter(e => adapter.isSameDay(e.start, genDays([displayValue.value], adapter.date())[0].date) || adapter.isSameDay(e.end, genDays([displayValue.value], adapter.date())[0].date))
|
29006
|
+
}) : createVNode(VCalendarDay, mergeProps(calendarDayProps, {
|
29007
|
+
"day": genDays([model.value[0]], adapter.date())[0],
|
28894
29008
|
"dayIndex": 0,
|
28895
|
-
"events": props.events?.filter(e => adapter.isSameDay(e.start, genDays([
|
28896
|
-
}), null)])]);
|
29009
|
+
"events": props.events?.filter(e => adapter.isSameDay(e.start, genDays([model.value[0]], adapter.date())[0].date) || adapter.isSameDay(e.end, genDays([model.value[0]], adapter.date())[0].date))
|
29010
|
+
}, attrs), null))])]);
|
28897
29011
|
});
|
28898
29012
|
return {
|
28899
29013
|
daysInMonth,
|
@@ -29503,7 +29617,7 @@ const VIconBtn = genericComponent()({
|
|
29503
29617
|
colorClasses,
|
29504
29618
|
colorStyles,
|
29505
29619
|
variantClasses
|
29506
|
-
} = useVariant(
|
29620
|
+
} = useVariant(() => ({
|
29507
29621
|
color: (() => {
|
29508
29622
|
if (props.disabled) return undefined;
|
29509
29623
|
if (!isActive.value) return props.color;
|
@@ -29518,7 +29632,7 @@ const VIconBtn = genericComponent()({
|
|
29518
29632
|
if (isActive.value) return props.activeVariant ?? props.variant;
|
29519
29633
|
return props.baseVariant ?? props.variant;
|
29520
29634
|
})()
|
29521
|
-
}))
|
29635
|
+
}));
|
29522
29636
|
const btnSizeMap = new Map(props.sizes);
|
29523
29637
|
const iconSizeMap = new Map(props.iconSizes);
|
29524
29638
|
function onClick() {
|
@@ -30015,11 +30129,11 @@ const VTimePickerClock = genericComponent()({
|
|
30015
30129
|
const {
|
30016
30130
|
textColorClasses,
|
30017
30131
|
textColorStyles
|
30018
|
-
} = useTextColor(
|
30132
|
+
} = useTextColor(() => props.color);
|
30019
30133
|
const {
|
30020
30134
|
backgroundColorClasses,
|
30021
30135
|
backgroundColorStyles
|
30022
|
-
} = useBackgroundColor(
|
30136
|
+
} = useBackgroundColor(() => props.color);
|
30023
30137
|
const count = computed(() => props.max - props.min + 1);
|
30024
30138
|
const roundCount = computed(() => props.double ? count.value / 2 : count.value);
|
30025
30139
|
const degreesPerUnit = computed(() => 360 / roundCount.value);
|
@@ -30879,9 +30993,9 @@ const VTreeview = genericComponent()({
|
|
30879
30993
|
const {
|
30880
30994
|
items
|
30881
30995
|
} = useListItems(props);
|
30882
|
-
const activeColor = toRef(props
|
30883
|
-
const baseColor = toRef(props
|
30884
|
-
const color = toRef(props
|
30996
|
+
const activeColor = toRef(() => props.activeColor);
|
30997
|
+
const baseColor = toRef(() => props.baseColor);
|
30998
|
+
const color = toRef(() => props.color);
|
30885
30999
|
const activated = useProxiedModel(props, 'activated');
|
30886
31000
|
const model = useProxiedModel(props, 'modelValue');
|
30887
31001
|
const _selected = useProxiedModel(props, 'selected', props.modelValue);
|
@@ -30895,7 +31009,7 @@ const VTreeview = genericComponent()({
|
|
30895
31009
|
const vListRef = ref();
|
30896
31010
|
const opened = computed(() => props.openAll ? openAll(items.value) : props.opened);
|
30897
31011
|
const flatItems = computed(() => flatten(items.value));
|
30898
|
-
const search = toRef(props
|
31012
|
+
const search = toRef(() => props.search);
|
30899
31013
|
const {
|
30900
31014
|
filteredItems
|
30901
31015
|
} = useFilter(props, flatItems, search);
|
@@ -30938,18 +31052,18 @@ const VTreeview = genericComponent()({
|
|
30938
31052
|
activeColor,
|
30939
31053
|
baseColor,
|
30940
31054
|
color,
|
30941
|
-
collapseIcon: toRef(props
|
30942
|
-
expandIcon: toRef(props
|
31055
|
+
collapseIcon: toRef(() => props.collapseIcon),
|
31056
|
+
expandIcon: toRef(() => props.expandIcon)
|
30943
31057
|
},
|
30944
31058
|
VTreeviewItem: {
|
30945
|
-
activeClass: toRef(props
|
31059
|
+
activeClass: toRef(() => props.activeClass),
|
30946
31060
|
activeColor,
|
30947
31061
|
baseColor,
|
30948
31062
|
color,
|
30949
|
-
density: toRef(props
|
30950
|
-
disabled: toRef(props
|
30951
|
-
lines: toRef(props
|
30952
|
-
variant: toRef(props
|
31063
|
+
density: toRef(() => props.density),
|
31064
|
+
disabled: toRef(() => props.disabled),
|
31065
|
+
lines: toRef(() => props.lines),
|
31066
|
+
variant: toRef(() => props.variant)
|
30953
31067
|
}
|
30954
31068
|
});
|
30955
31069
|
useRender(() => {
|
@@ -31489,7 +31603,7 @@ function createVuetify$1() {
|
|
31489
31603
|
};
|
31490
31604
|
});
|
31491
31605
|
}
|
31492
|
-
const version$1 = "3.8.2-master.2025-04-
|
31606
|
+
const version$1 = "3.8.2-master.2025-04-23";
|
31493
31607
|
createVuetify$1.version = version$1;
|
31494
31608
|
|
31495
31609
|
// Vue's inject() can only be used in setup
|
@@ -31787,7 +31901,7 @@ var index = /*#__PURE__*/Object.freeze({
|
|
31787
31901
|
|
31788
31902
|
/* eslint-disable local-rules/sort-imports */
|
31789
31903
|
|
31790
|
-
const version = "3.8.2-master.2025-04-
|
31904
|
+
const version = "3.8.2-master.2025-04-23";
|
31791
31905
|
|
31792
31906
|
/* eslint-disable local-rules/sort-imports */
|
31793
31907
|
|