vuetify 3.1.16 → 3.2.0
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/dist/_component-variables-labs.sass +1 -0
- package/dist/json/attributes.json +331 -179
- package/dist/json/importMap-labs.json +4 -4
- package/dist/json/importMap.json +8 -4
- package/dist/json/tags.json +45 -2
- package/dist/json/web-types.json +851 -329
- package/dist/vuetify-labs.css +844 -621
- package/dist/vuetify-labs.d.ts +5908 -7618
- package/dist/vuetify-labs.esm.js +1628 -652
- package/dist/vuetify-labs.esm.js.map +1 -1
- package/dist/vuetify-labs.js +1627 -650
- package/dist/vuetify-labs.min.css +2 -2
- package/dist/vuetify.css +272 -65
- package/dist/vuetify.d.ts +6192 -7178
- package/dist/vuetify.esm.js +1365 -423
- package/dist/vuetify.esm.js.map +1 -1
- package/dist/vuetify.js +1364 -421
- package/dist/vuetify.js.map +1 -1
- package/dist/vuetify.min.css +2 -2
- package/dist/vuetify.min.js +798 -728
- package/dist/vuetify.min.js.map +1 -1
- package/lib/blueprints/index.d.ts +35 -1
- package/lib/blueprints/md1.d.ts +35 -1
- package/lib/blueprints/md2.d.ts +35 -1
- package/lib/blueprints/md3.d.ts +35 -1
- package/lib/components/VAlert/VAlert.mjs +6 -4
- package/lib/components/VAlert/VAlert.mjs.map +1 -1
- package/lib/components/VAlert/index.d.ts +57 -55
- package/lib/components/VApp/VApp.mjs +4 -2
- package/lib/components/VApp/VApp.mjs.map +1 -1
- package/lib/components/VApp/index.d.ts +22 -13
- package/lib/components/VAppBar/VAppBar.mjs +65 -13
- package/lib/components/VAppBar/VAppBar.mjs.map +1 -1
- package/lib/components/VAppBar/VAppBarNavIcon.mjs +7 -4
- package/lib/components/VAppBar/VAppBarNavIcon.mjs.map +1 -1
- package/lib/components/VAppBar/index.d.ts +113 -92
- package/lib/components/VAutocomplete/VAutocomplete.mjs +2 -1
- package/lib/components/VAutocomplete/VAutocomplete.mjs.map +1 -1
- package/lib/components/VAutocomplete/index.d.ts +276 -418
- package/lib/components/VAvatar/VAvatar.mjs +4 -2
- package/lib/components/VAvatar/VAvatar.mjs.map +1 -1
- package/lib/components/VAvatar/index.d.ts +23 -14
- package/lib/components/VBadge/VBadge.mjs +6 -5
- package/lib/components/VBadge/VBadge.mjs.map +1 -1
- package/lib/components/VBadge/index.d.ts +27 -22
- package/lib/components/VBanner/VBanner.mjs +6 -4
- package/lib/components/VBanner/VBanner.mjs.map +1 -1
- package/lib/components/VBanner/VBannerActions.mjs +5 -2
- package/lib/components/VBanner/VBannerActions.mjs.map +1 -1
- package/lib/components/VBanner/index.d.ts +92 -66
- package/lib/components/VBottomNavigation/VBottomNavigation.mjs +4 -2
- package/lib/components/VBottomNavigation/VBottomNavigation.mjs.map +1 -1
- package/lib/components/VBottomNavigation/index.d.ts +22 -13
- package/lib/components/VBreadcrumbs/VBreadcrumbs.mjs +4 -2
- package/lib/components/VBreadcrumbs/VBreadcrumbs.mjs.map +1 -1
- package/lib/components/VBreadcrumbs/VBreadcrumbsDivider.mjs +6 -3
- package/lib/components/VBreadcrumbs/VBreadcrumbsDivider.mjs.map +1 -1
- package/lib/components/VBreadcrumbs/VBreadcrumbsItem.mjs +4 -2
- package/lib/components/VBreadcrumbs/VBreadcrumbsItem.mjs.map +1 -1
- package/lib/components/VBreadcrumbs/index.d.ts +132 -91
- package/lib/components/VBtn/VBtn.mjs +9 -4
- package/lib/components/VBtn/VBtn.mjs.map +1 -1
- package/lib/components/VBtn/_mixins.scss +1 -1
- package/lib/components/VBtn/index.d.ts +39 -36
- package/lib/components/VBtnGroup/VBtnGroup.mjs +4 -1
- package/lib/components/VBtnGroup/VBtnGroup.mjs.map +1 -1
- package/lib/components/VBtnGroup/index.d.ts +22 -13
- package/lib/components/VBtnToggle/VBtnToggle.mjs +4 -2
- package/lib/components/VBtnToggle/VBtnToggle.mjs.map +1 -1
- package/lib/components/VBtnToggle/index.d.ts +30 -21
- package/lib/components/VCard/VCard.mjs +5 -3
- package/lib/components/VCard/VCard.mjs.map +1 -1
- package/lib/components/VCard/VCardActions.mjs +7 -4
- package/lib/components/VCard/VCardActions.mjs.map +1 -1
- package/lib/components/VCard/VCardItem.mjs +5 -2
- package/lib/components/VCard/VCardItem.mjs.map +1 -1
- package/lib/components/VCard/index.d.ts +250 -141
- package/lib/components/VCarousel/VCarousel.mjs +3 -3
- package/lib/components/VCarousel/VCarousel.mjs.map +1 -1
- package/lib/components/VCarousel/VCarouselItem.mjs +6 -3
- package/lib/components/VCarousel/VCarouselItem.mjs.map +1 -1
- package/lib/components/VCarousel/index.d.ts +78 -141
- package/lib/components/VCheckbox/VCheckbox.mjs +3 -2
- package/lib/components/VCheckbox/VCheckbox.mjs.map +1 -1
- package/lib/components/VCheckbox/VCheckboxBtn.mjs +2 -1
- package/lib/components/VCheckbox/VCheckboxBtn.mjs.map +1 -1
- package/lib/components/VCheckbox/index.d.ts +75 -109
- package/lib/components/VChip/VChip.mjs +7 -8
- package/lib/components/VChip/VChip.mjs.map +1 -1
- package/lib/components/VChip/index.d.ts +27 -30
- package/lib/components/VChipGroup/VChipGroup.mjs +4 -1
- package/lib/components/VChipGroup/VChipGroup.mjs.map +1 -1
- package/lib/components/VChipGroup/index.d.ts +22 -13
- package/lib/components/VCode/index.d.ts +30 -17
- package/lib/components/VColorPicker/VColorPicker.mjs +3 -3
- package/lib/components/VColorPicker/VColorPicker.mjs.map +1 -1
- package/lib/components/VColorPicker/VColorPickerCanvas.mjs +5 -2
- package/lib/components/VColorPicker/VColorPickerCanvas.mjs.map +1 -1
- package/lib/components/VColorPicker/VColorPickerEdit.mjs +6 -3
- package/lib/components/VColorPicker/VColorPickerEdit.mjs.map +1 -1
- package/lib/components/VColorPicker/VColorPickerPreview.mjs +6 -3
- package/lib/components/VColorPicker/VColorPickerPreview.mjs.map +1 -1
- package/lib/components/VColorPicker/VColorPickerSwatches.mjs +7 -5
- package/lib/components/VColorPicker/VColorPickerSwatches.mjs.map +1 -1
- package/lib/components/VColorPicker/index.d.ts +34 -1
- package/lib/components/VCombobox/VCombobox.mjs +2 -1
- package/lib/components/VCombobox/VCombobox.mjs.map +1 -1
- package/lib/components/VCombobox/index.d.ts +276 -418
- package/lib/components/VCounter/VCounter.mjs +4 -1
- package/lib/components/VCounter/VCounter.mjs.map +1 -1
- package/lib/components/VCounter/index.d.ts +22 -145
- package/lib/components/VDefaultsProvider/index.d.ts +0 -12
- package/lib/components/VDialog/VDialog.mjs +2 -1
- package/lib/components/VDialog/VDialog.mjs.map +1 -1
- package/lib/components/VDialog/index.d.ts +104 -282
- package/lib/components/VDivider/VDivider.mjs +4 -2
- package/lib/components/VDivider/VDivider.mjs.map +1 -1
- package/lib/components/VDivider/index.d.ts +22 -13
- package/lib/components/VExpansionPanel/VExpansionPanel.mjs +4 -2
- package/lib/components/VExpansionPanel/VExpansionPanel.mjs.map +1 -1
- package/lib/components/VExpansionPanel/VExpansionPanelText.mjs +4 -1
- package/lib/components/VExpansionPanel/VExpansionPanelText.mjs.map +1 -1
- package/lib/components/VExpansionPanel/VExpansionPanelTitle.mjs +4 -2
- package/lib/components/VExpansionPanel/VExpansionPanelTitle.mjs.map +1 -1
- package/lib/components/VExpansionPanel/VExpansionPanels.mjs +4 -1
- package/lib/components/VExpansionPanel/VExpansionPanels.mjs.map +1 -1
- package/lib/components/VExpansionPanel/index.d.ts +109 -81
- package/lib/components/VField/VField.css +59 -11
- package/lib/components/VField/VField.mjs +18 -8
- package/lib/components/VField/VField.mjs.map +1 -1
- package/lib/components/VField/VField.sass +57 -5
- package/lib/components/VField/VFieldLabel.mjs +6 -3
- package/lib/components/VField/VFieldLabel.mjs.map +1 -1
- package/lib/components/VField/_variables.scss +4 -0
- package/lib/components/VField/index.d.ts +169 -84
- package/lib/components/VFileInput/VFileInput.mjs +2 -1
- package/lib/components/VFileInput/VFileInput.mjs.map +1 -1
- package/lib/components/VFileInput/index.d.ts +147 -174
- package/lib/components/VFooter/VFooter.mjs +4 -2
- package/lib/components/VFooter/VFooter.mjs.map +1 -1
- package/lib/components/VFooter/index.d.ts +22 -13
- package/lib/components/VForm/VForm.mjs +5 -2
- package/lib/components/VForm/VForm.mjs.map +1 -1
- package/lib/components/VForm/index.d.ts +30 -17
- package/lib/components/VGrid/VCol.mjs +4 -1
- package/lib/components/VGrid/VCol.mjs.map +1 -1
- package/lib/components/VGrid/VContainer.mjs +4 -1
- package/lib/components/VGrid/VContainer.mjs.map +1 -1
- package/lib/components/VGrid/VRow.mjs +4 -1
- package/lib/components/VGrid/VRow.mjs.map +1 -1
- package/lib/components/VGrid/index.d.ts +104 -60
- package/lib/components/VHover/index.d.ts +20 -44
- package/lib/components/VIcon/VIcon.mjs +4 -2
- package/lib/components/VIcon/VIcon.mjs.map +1 -1
- package/lib/components/VIcon/index.d.ts +23 -26
- package/lib/components/VImg/VImg.mjs +5 -3
- package/lib/components/VImg/VImg.mjs.map +1 -1
- package/lib/components/VImg/index.d.ts +26 -29
- package/lib/components/VInput/VInput.mjs +4 -1
- package/lib/components/VInput/VInput.mjs.map +1 -1
- package/lib/components/VInput/index.d.ts +37 -40
- package/lib/components/VItemGroup/VItemGroup.mjs +4 -1
- package/lib/components/VItemGroup/VItemGroup.mjs.map +1 -1
- package/lib/components/VItemGroup/index.d.ts +30 -33
- package/lib/components/VKbd/index.d.ts +30 -17
- package/lib/components/VLabel/VLabel.mjs +4 -1
- package/lib/components/VLabel/VLabel.mjs.map +1 -1
- package/lib/components/VLabel/index.d.ts +22 -13
- package/lib/components/VLayout/VLayout.mjs +8 -4
- package/lib/components/VLayout/VLayout.mjs.map +1 -1
- package/lib/components/VLayout/VLayoutItem.mjs +4 -2
- package/lib/components/VLayout/VLayoutItem.mjs.map +1 -1
- package/lib/components/VLayout/index.d.ts +44 -26
- package/lib/components/VLazy/VLazy.mjs +4 -2
- package/lib/components/VLazy/VLazy.mjs.map +1 -1
- package/lib/components/VLazy/index.d.ts +22 -13
- package/lib/components/VList/VList.mjs +4 -2
- package/lib/components/VList/VList.mjs.map +1 -1
- package/lib/components/VList/VListChildren.mjs.map +1 -1
- package/lib/components/VList/VListGroup.mjs +5 -2
- package/lib/components/VList/VListGroup.mjs.map +1 -1
- package/lib/components/VList/VListItem.mjs +4 -2
- package/lib/components/VList/VListItem.mjs.map +1 -1
- package/lib/components/VList/VListItemAction.mjs +4 -1
- package/lib/components/VList/VListItemAction.mjs.map +1 -1
- package/lib/components/VList/VListItemMedia.mjs +4 -1
- package/lib/components/VList/VListItemMedia.mjs.map +1 -1
- package/lib/components/VList/VListSubheader.mjs +5 -3
- package/lib/components/VList/VListSubheader.mjs.map +1 -1
- package/lib/components/VList/index.d.ts +932 -826
- package/lib/components/VLocaleProvider/VLocaleProvider.mjs +5 -2
- package/lib/components/VLocaleProvider/VLocaleProvider.mjs.map +1 -1
- package/lib/components/VLocaleProvider/index.d.ts +30 -17
- package/lib/components/VMain/VMain.mjs +4 -2
- package/lib/components/VMain/VMain.mjs.map +1 -1
- package/lib/components/VMain/index.d.ts +30 -17
- package/lib/components/VMenu/VMenu.mjs +2 -1
- package/lib/components/VMenu/VMenu.mjs.map +1 -1
- package/lib/components/VMenu/index.d.ts +104 -282
- package/lib/components/VMessages/VMessages.mjs +4 -2
- package/lib/components/VMessages/VMessages.mjs.map +1 -1
- package/lib/components/VMessages/index.d.ts +22 -145
- package/lib/components/VNavigationDrawer/VNavigationDrawer.mjs +4 -2
- package/lib/components/VNavigationDrawer/VNavigationDrawer.mjs.map +1 -1
- package/lib/components/VNavigationDrawer/index.d.ts +26 -29
- package/lib/components/VNoSsr/VNoSsr.mjs.map +1 -1
- package/lib/components/VNoSsr/index.d.ts +3 -13
- package/lib/components/VOverlay/VOverlay.mjs +5 -3
- package/lib/components/VOverlay/VOverlay.mjs.map +1 -1
- package/lib/components/VOverlay/index.d.ts +38 -45
- package/lib/components/VPagination/VPagination.mjs +4 -1
- package/lib/components/VPagination/VPagination.mjs.map +1 -1
- package/lib/components/VPagination/index.d.ts +23 -30
- package/lib/components/VParallax/VParallax.mjs +5 -2
- package/lib/components/VParallax/VParallax.mjs.map +1 -1
- package/lib/components/VParallax/index.d.ts +34 -33
- package/lib/components/VProgressCircular/VProgressCircular.mjs +4 -2
- package/lib/components/VProgressCircular/VProgressCircular.mjs.map +1 -1
- package/lib/components/VProgressCircular/index.d.ts +22 -13
- package/lib/components/VProgressLinear/VProgressLinear.mjs +6 -4
- package/lib/components/VProgressLinear/VProgressLinear.mjs.map +1 -1
- package/lib/components/VProgressLinear/index.d.ts +42 -45
- package/lib/components/VRadio/VRadio.mjs +2 -1
- package/lib/components/VRadio/VRadio.mjs.map +1 -1
- package/lib/components/VRadio/index.d.ts +27 -38
- package/lib/components/VRadioGroup/VRadioGroup.mjs +2 -1
- package/lib/components/VRadioGroup/VRadioGroup.mjs.map +1 -1
- package/lib/components/VRadioGroup/index.d.ts +45 -68
- package/lib/components/VRangeSlider/VRangeSlider.mjs +33 -21
- package/lib/components/VRangeSlider/VRangeSlider.mjs.map +1 -1
- package/lib/components/VRangeSlider/index.d.ts +50 -49
- package/lib/components/VRating/VRating.css +0 -4
- package/lib/components/VRating/VRating.mjs +10 -36
- package/lib/components/VRating/VRating.mjs.map +1 -1
- package/lib/components/VRating/VRating.sass +0 -5
- package/lib/components/VRating/index.d.ts +24 -18
- package/lib/components/VResponsive/VResponsive.mjs +4 -2
- package/lib/components/VResponsive/VResponsive.mjs.map +1 -1
- package/lib/components/VResponsive/index.d.ts +43 -31
- package/lib/components/VSelect/VSelect.mjs +2 -1
- package/lib/components/VSelect/VSelect.mjs.map +1 -1
- package/lib/components/VSelect/index.d.ts +245 -567
- package/lib/components/VSelectionControl/VSelectionControl.mjs +6 -2
- package/lib/components/VSelectionControl/VSelectionControl.mjs.map +1 -1
- package/lib/components/VSelectionControl/index.d.ts +76 -46
- package/lib/components/VSelectionControlGroup/VSelectionControlGroup.mjs +4 -1
- package/lib/components/VSelectionControlGroup/VSelectionControlGroup.mjs.map +1 -1
- package/lib/components/VSelectionControlGroup/index.d.ts +23 -14
- package/lib/components/VSheet/VSheet.mjs +4 -2
- package/lib/components/VSheet/VSheet.mjs.map +1 -1
- package/lib/components/VSheet/index.d.ts +22 -13
- package/lib/components/VSlideGroup/VSlideGroup.mjs +4 -1
- package/lib/components/VSlideGroup/VSlideGroup.mjs.map +1 -1
- package/lib/components/VSlideGroup/index.d.ts +59 -90
- package/lib/components/VSlider/VSlider.mjs +33 -14
- package/lib/components/VSlider/VSlider.mjs.map +1 -1
- package/lib/components/VSlider/VSliderThumb.mjs +6 -4
- package/lib/components/VSlider/VSliderThumb.mjs.map +1 -1
- package/lib/components/VSlider/VSliderTrack.mjs +6 -4
- package/lib/components/VSlider/VSliderTrack.mjs.map +1 -1
- package/lib/components/VSlider/index.d.ts +50 -49
- package/lib/components/VSlider/slider.mjs +43 -23
- package/lib/components/VSlider/slider.mjs.map +1 -1
- package/lib/components/VSnackbar/VSnackbar.mjs +2 -1
- package/lib/components/VSnackbar/VSnackbar.mjs.map +1 -1
- package/lib/components/VSnackbar/index.d.ts +92 -142
- package/lib/components/VSwitch/VSwitch.mjs +2 -1
- package/lib/components/VSwitch/VSwitch.mjs.map +1 -1
- package/lib/components/VSwitch/index.d.ts +45 -72
- package/lib/components/VSystemBar/VSystemBar.mjs +4 -2
- package/lib/components/VSystemBar/VSystemBar.mjs.map +1 -1
- package/lib/components/VSystemBar/index.d.ts +22 -13
- package/lib/components/VTable/VTable.mjs +4 -1
- package/lib/components/VTable/VTable.mjs.map +1 -1
- package/lib/components/VTable/index.d.ts +26 -29
- package/lib/components/VTabs/VTab.mjs +3 -4
- package/lib/components/VTabs/VTab.mjs.map +1 -1
- package/lib/components/VTabs/VTabs.mjs +2 -2
- package/lib/components/VTabs/VTabs.mjs.map +1 -1
- package/lib/components/VTabs/index.d.ts +51 -33
- package/lib/components/VTextField/VTextField.mjs +2 -1
- package/lib/components/VTextField/VTextField.mjs.map +1 -1
- package/lib/components/VTextField/index.d.ts +337 -317
- package/lib/components/VTextarea/VTextarea.mjs +2 -1
- package/lib/components/VTextarea/VTextarea.mjs.map +1 -1
- package/lib/components/VTextarea/index.d.ts +127 -146
- package/lib/components/VThemeProvider/VThemeProvider.mjs +6 -3
- package/lib/components/VThemeProvider/VThemeProvider.mjs.map +1 -1
- package/lib/components/VThemeProvider/index.d.ts +22 -13
- package/lib/components/VTimeline/VTimeline.mjs +5 -3
- package/lib/components/VTimeline/VTimeline.mjs.map +1 -1
- package/lib/components/VTimeline/VTimelineDivider.mjs +4 -1
- package/lib/components/VTimeline/VTimelineDivider.mjs.map +1 -1
- package/lib/components/VTimeline/VTimelineItem.mjs +8 -6
- package/lib/components/VTimeline/VTimelineItem.mjs.map +1 -1
- package/lib/components/VTimeline/index.d.ts +67 -57
- package/lib/components/VToolbar/VToolbar.css +3 -1
- package/lib/components/VToolbar/VToolbar.mjs +4 -2
- package/lib/components/VToolbar/VToolbar.mjs.map +1 -1
- package/lib/components/VToolbar/VToolbar.sass +3 -1
- package/lib/components/VToolbar/VToolbarItems.mjs +9 -4
- package/lib/components/VToolbar/VToolbarItems.mjs.map +1 -1
- package/lib/components/VToolbar/VToolbarTitle.mjs +5 -2
- package/lib/components/VToolbar/VToolbarTitle.mjs.map +1 -1
- package/lib/components/VToolbar/index.d.ts +74 -71
- package/lib/components/VTooltip/VTooltip.mjs +4 -3
- package/lib/components/VTooltip/VTooltip.mjs.map +1 -1
- package/lib/components/VTooltip/index.d.ts +119 -150
- package/lib/components/VValidation/index.d.ts +6 -18
- package/lib/{labs → components}/VVirtualScroll/VVirtualScroll.mjs +21 -23
- package/lib/components/VVirtualScroll/VVirtualScroll.mjs.map +1 -0
- package/lib/{labs → components}/VVirtualScroll/VVirtualScrollItem.mjs +5 -2
- package/lib/components/VVirtualScroll/VVirtualScrollItem.mjs.map +1 -0
- package/lib/{labs → components}/VVirtualScroll/index.d.ts +70 -30
- package/lib/components/VVirtualScroll/index.mjs.map +1 -0
- package/lib/components/VWindow/VWindow.mjs +4 -1
- package/lib/components/VWindow/VWindow.mjs.map +1 -1
- package/lib/components/VWindow/VWindowItem.mjs +4 -1
- package/lib/components/VWindow/VWindowItem.mjs.map +1 -1
- package/lib/components/VWindow/index.d.ts +61 -79
- package/lib/components/index.d.ts +5832 -6863
- package/lib/components/index.mjs +2 -1
- package/lib/components/index.mjs.map +1 -1
- package/lib/components/transitions/index.d.ts +0 -192
- package/lib/composables/component.mjs +11 -0
- package/lib/composables/component.mjs.map +1 -0
- package/lib/composables/defaults.mjs +53 -5
- package/lib/composables/defaults.mjs.map +1 -1
- package/lib/composables/focus.mjs.map +1 -1
- package/lib/composables/icons.mjs +15 -4
- package/lib/composables/icons.mjs.map +1 -1
- package/lib/composables/index.mjs +1 -0
- package/lib/composables/index.mjs.map +1 -1
- package/lib/composables/intersectionObserver.mjs +2 -2
- package/lib/composables/intersectionObserver.mjs.map +1 -1
- package/lib/composables/loader.mjs.map +1 -1
- package/lib/composables/scroll.mjs +3 -0
- package/lib/composables/scroll.mjs.map +1 -1
- package/lib/entry-bundler.mjs +1 -1
- package/lib/entry-bundler.mjs.map +1 -1
- package/lib/framework.mjs +8 -3
- package/lib/framework.mjs.map +1 -1
- package/lib/iconsets/fa-svg.d.ts +1 -1
- package/lib/iconsets/fa.d.ts +1 -1
- package/lib/iconsets/fa4.d.ts +1 -1
- package/lib/iconsets/md.d.ts +1 -1
- package/lib/iconsets/mdi-svg.d.ts +1 -1
- package/lib/iconsets/mdi.d.ts +1 -1
- package/lib/index.d.ts +46 -3
- package/lib/labs/VDataTable/index.d.ts +61 -933
- package/lib/labs/VInfiniteScroll/VInfiniteScroll.css +26 -0
- package/lib/labs/VInfiniteScroll/VInfiniteScroll.mjs +215 -0
- package/lib/labs/VInfiniteScroll/VInfiniteScroll.mjs.map +1 -0
- package/lib/labs/VInfiniteScroll/VInfiniteScroll.sass +25 -0
- package/lib/labs/VInfiniteScroll/_variables.scss +3 -0
- package/lib/labs/VInfiniteScroll/index.d.ts +321 -0
- package/lib/labs/VInfiniteScroll/index.mjs +2 -0
- package/lib/labs/VInfiniteScroll/index.mjs.map +1 -0
- package/lib/labs/VSkeletonLoader/index.d.ts +0 -12
- package/lib/labs/components.d.ts +377 -1097
- package/lib/labs/components.mjs +1 -1
- package/lib/labs/components.mjs.map +1 -1
- package/lib/labs/date/DateAdapter.mjs +2 -0
- package/lib/labs/date/DateAdapter.mjs.map +1 -0
- package/lib/labs/date/adapters/vuetify.d.ts +52 -0
- package/lib/labs/date/adapters/vuetify.mjs +399 -0
- package/lib/labs/date/adapters/vuetify.mjs.map +1 -0
- package/lib/labs/date/date.mjs +39 -0
- package/lib/labs/date/date.mjs.map +1 -0
- package/lib/labs/date/index.d.ts +40 -0
- package/lib/labs/date/index.mjs +2 -0
- package/lib/labs/date/index.mjs.map +1 -0
- package/lib/labs/index.mjs +3 -2
- package/lib/labs/index.mjs.map +1 -1
- package/lib/locale/af.mjs +5 -1
- package/lib/locale/af.mjs.map +1 -1
- package/lib/locale/ar.mjs +5 -1
- package/lib/locale/ar.mjs.map +1 -1
- package/lib/locale/az.mjs +5 -1
- package/lib/locale/az.mjs.map +1 -1
- package/lib/locale/bg.mjs +5 -1
- package/lib/locale/bg.mjs.map +1 -1
- package/lib/locale/ca.mjs +5 -1
- package/lib/locale/ca.mjs.map +1 -1
- package/lib/locale/ckb.mjs +5 -1
- package/lib/locale/ckb.mjs.map +1 -1
- package/lib/locale/cs.mjs +5 -1
- package/lib/locale/cs.mjs.map +1 -1
- package/lib/locale/da.mjs +5 -1
- package/lib/locale/da.mjs.map +1 -1
- package/lib/locale/de.mjs +5 -1
- package/lib/locale/de.mjs.map +1 -1
- package/lib/locale/el.mjs +5 -1
- package/lib/locale/el.mjs.map +1 -1
- package/lib/locale/en.mjs +5 -1
- package/lib/locale/en.mjs.map +1 -1
- package/lib/locale/es.mjs +5 -1
- package/lib/locale/es.mjs.map +1 -1
- package/lib/locale/et.mjs +5 -1
- package/lib/locale/et.mjs.map +1 -1
- package/lib/locale/fa.mjs +5 -1
- package/lib/locale/fa.mjs.map +1 -1
- package/lib/locale/fi.mjs +5 -1
- package/lib/locale/fi.mjs.map +1 -1
- package/lib/locale/fr.mjs +5 -1
- package/lib/locale/fr.mjs.map +1 -1
- package/lib/locale/he.mjs +5 -1
- package/lib/locale/he.mjs.map +1 -1
- package/lib/locale/hr.mjs +5 -1
- package/lib/locale/hr.mjs.map +1 -1
- package/lib/locale/hu.mjs +5 -1
- package/lib/locale/hu.mjs.map +1 -1
- package/lib/locale/id.mjs +5 -1
- package/lib/locale/id.mjs.map +1 -1
- package/lib/locale/index.d.ts +168 -0
- package/lib/locale/it.mjs +5 -1
- package/lib/locale/it.mjs.map +1 -1
- package/lib/locale/ja.mjs +5 -1
- package/lib/locale/ja.mjs.map +1 -1
- package/lib/locale/ko.mjs +5 -1
- package/lib/locale/ko.mjs.map +1 -1
- package/lib/locale/lt.mjs +5 -1
- package/lib/locale/lt.mjs.map +1 -1
- package/lib/locale/lv.mjs +5 -1
- package/lib/locale/lv.mjs.map +1 -1
- package/lib/locale/nl.mjs +5 -1
- package/lib/locale/nl.mjs.map +1 -1
- package/lib/locale/no.mjs +5 -1
- package/lib/locale/no.mjs.map +1 -1
- package/lib/locale/pl.mjs +5 -1
- package/lib/locale/pl.mjs.map +1 -1
- package/lib/locale/pt.mjs +5 -1
- package/lib/locale/pt.mjs.map +1 -1
- package/lib/locale/ro.mjs +5 -1
- package/lib/locale/ro.mjs.map +1 -1
- package/lib/locale/ru.mjs +5 -1
- package/lib/locale/ru.mjs.map +1 -1
- package/lib/locale/sk.mjs +5 -1
- package/lib/locale/sk.mjs.map +1 -1
- package/lib/locale/sl.mjs +5 -1
- package/lib/locale/sl.mjs.map +1 -1
- package/lib/locale/sr-Cyrl.mjs +5 -1
- package/lib/locale/sr-Cyrl.mjs.map +1 -1
- package/lib/locale/sr-Latn.mjs +5 -1
- package/lib/locale/sr-Latn.mjs.map +1 -1
- package/lib/locale/sv.mjs +5 -1
- package/lib/locale/sv.mjs.map +1 -1
- package/lib/locale/th.mjs +5 -1
- package/lib/locale/th.mjs.map +1 -1
- package/lib/locale/tr.mjs +5 -1
- package/lib/locale/tr.mjs.map +1 -1
- package/lib/locale/uk.mjs +5 -1
- package/lib/locale/uk.mjs.map +1 -1
- package/lib/locale/vi.mjs +5 -1
- package/lib/locale/vi.mjs.map +1 -1
- package/lib/locale/zh-Hans.mjs +5 -1
- package/lib/locale/zh-Hans.mjs.map +1 -1
- package/lib/locale/zh-Hant.mjs +5 -1
- package/lib/locale/zh-Hant.mjs.map +1 -1
- package/lib/styles/main.css +152 -0
- package/lib/styles/settings/_utilities.scss +11 -1
- package/lib/util/createSimpleFunctional.mjs +9 -4
- package/lib/util/createSimpleFunctional.mjs.map +1 -1
- package/lib/util/defineComponent.mjs +11 -43
- package/lib/util/defineComponent.mjs.map +1 -1
- package/lib/util/helpers.mjs +6 -2
- package/lib/util/helpers.mjs.map +1 -1
- package/lib/util/index.mjs +1 -0
- package/lib/util/index.mjs.map +1 -1
- package/package.json +3 -2
- package/lib/labs/VVirtualScroll/VVirtualScroll.mjs.map +0 -1
- package/lib/labs/VVirtualScroll/VVirtualScrollItem.mjs.map +0 -1
- package/lib/labs/VVirtualScroll/index.mjs.map +0 -1
- /package/lib/{labs → components}/VVirtualScroll/VVirtualScroll.css +0 -0
- /package/lib/{labs → components}/VVirtualScroll/VVirtualScroll.sass +0 -0
- /package/lib/{labs → components}/VVirtualScroll/index.mjs +0 -0
package/dist/vuetify-labs.esm.js
CHANGED
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
/*!
|
|
2
|
-
* Vuetify v3.
|
|
2
|
+
* Vuetify v3.2.0
|
|
3
3
|
* Forged by John Leider
|
|
4
4
|
* Released under the MIT License.
|
|
5
5
|
*/
|
|
6
6
|
|
|
7
|
-
import { ref, onBeforeUnmount, watch, readonly, reactive, computed, watchEffect, toRefs, capitalize,
|
|
7
|
+
import { ref, onBeforeUnmount, watch, readonly, reactive, computed, watchEffect, toRefs, capitalize, onScopeDispose, effectScope, shallowRef, inject as inject$1, unref, provide, defineComponent as defineComponent$1, camelize, h, getCurrentInstance as getCurrentInstance$1, onDeactivated, onActivated, onMounted, toRaw, createVNode, TransitionGroup, Transition, mergeProps, onBeforeMount, nextTick, withDirectives, Fragment, resolveDirective, vShow, isRef, toRef, Text, resolveDynamicComponent, cloneVNode, warn, toHandlers, Teleport, createTextVNode, onBeforeUpdate, vModelText, onUpdated, withModifiers } from 'vue';
|
|
8
8
|
|
|
9
9
|
const IN_BROWSER = typeof window !== 'undefined';
|
|
10
10
|
const SUPPORTS_INTERSECTION = IN_BROWSER && 'IntersectionObserver' in window;
|
|
@@ -167,11 +167,11 @@ const keyValues = Object.freeze({
|
|
|
167
167
|
function keys(o) {
|
|
168
168
|
return Object.keys(o);
|
|
169
169
|
}
|
|
170
|
-
function pick(obj, paths) {
|
|
170
|
+
function pick(obj, paths, exclude) {
|
|
171
171
|
const found = Object.create(null);
|
|
172
172
|
const rest = Object.create(null);
|
|
173
173
|
for (const key in obj) {
|
|
174
|
-
if (paths.some(path => path instanceof RegExp ? path.test(key) : path === key)) {
|
|
174
|
+
if (paths.some(path => path instanceof RegExp ? path.test(key) : path === key) && !exclude?.some(path => path === key)) {
|
|
175
175
|
found[key] = obj[key];
|
|
176
176
|
} else {
|
|
177
177
|
rest[key] = obj[key];
|
|
@@ -882,44 +882,6 @@ function getContrast(first, second) {
|
|
|
882
882
|
return (light + 0.05) / (dark + 0.05);
|
|
883
883
|
}
|
|
884
884
|
|
|
885
|
-
// Utilities
|
|
886
|
-
function getCurrentInstance(name, message) {
|
|
887
|
-
const vm = getCurrentInstance$1();
|
|
888
|
-
if (!vm) {
|
|
889
|
-
throw new Error(`[Vuetify] ${name} ${message || 'must be called from inside a setup function'}`);
|
|
890
|
-
}
|
|
891
|
-
return vm;
|
|
892
|
-
}
|
|
893
|
-
function getCurrentInstanceName() {
|
|
894
|
-
let name = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : 'composables';
|
|
895
|
-
const vm = getCurrentInstance(name).type;
|
|
896
|
-
return toKebabCase(vm?.aliasName || vm?.name);
|
|
897
|
-
}
|
|
898
|
-
let _uid = 0;
|
|
899
|
-
let _map = new WeakMap();
|
|
900
|
-
function getUid() {
|
|
901
|
-
const vm = getCurrentInstance('getUid');
|
|
902
|
-
if (_map.has(vm)) return _map.get(vm);else {
|
|
903
|
-
const uid = _uid++;
|
|
904
|
-
_map.set(vm, uid);
|
|
905
|
-
return uid;
|
|
906
|
-
}
|
|
907
|
-
}
|
|
908
|
-
getUid.reset = () => {
|
|
909
|
-
_uid = 0;
|
|
910
|
-
_map = new WeakMap();
|
|
911
|
-
};
|
|
912
|
-
|
|
913
|
-
function injectSelf(key) {
|
|
914
|
-
const {
|
|
915
|
-
provides
|
|
916
|
-
} = getCurrentInstance('injectSelf');
|
|
917
|
-
if (provides && key in provides) {
|
|
918
|
-
// TS doesn't allow symbol as index type
|
|
919
|
-
return provides[key];
|
|
920
|
-
}
|
|
921
|
-
}
|
|
922
|
-
|
|
923
885
|
/**
|
|
924
886
|
* Creates a factory function for props definitions.
|
|
925
887
|
* This is used to define props in a composable then override
|
|
@@ -973,17 +935,54 @@ function propsFactory(props, source) {
|
|
|
973
935
|
|
|
974
936
|
// Types
|
|
975
937
|
|
|
938
|
+
// Composables
|
|
939
|
+
const makeComponentProps = propsFactory({
|
|
940
|
+
class: [String, Array],
|
|
941
|
+
style: {
|
|
942
|
+
type: [String, Array, Object],
|
|
943
|
+
default: null
|
|
944
|
+
}
|
|
945
|
+
}, 'component');
|
|
946
|
+
|
|
947
|
+
function useToggleScope(source, fn) {
|
|
948
|
+
let scope;
|
|
949
|
+
function start() {
|
|
950
|
+
scope = effectScope();
|
|
951
|
+
scope.run(() => fn.length ? fn(() => {
|
|
952
|
+
scope?.stop();
|
|
953
|
+
start();
|
|
954
|
+
}) : fn());
|
|
955
|
+
}
|
|
956
|
+
watch(source, active => {
|
|
957
|
+
if (active && !scope) {
|
|
958
|
+
start();
|
|
959
|
+
} else if (!active) {
|
|
960
|
+
scope?.stop();
|
|
961
|
+
scope = undefined;
|
|
962
|
+
}
|
|
963
|
+
}, {
|
|
964
|
+
immediate: true
|
|
965
|
+
});
|
|
966
|
+
onScopeDispose(() => {
|
|
967
|
+
scope?.stop();
|
|
968
|
+
});
|
|
969
|
+
}
|
|
970
|
+
|
|
971
|
+
// Composables
|
|
972
|
+
|
|
973
|
+
// Types
|
|
974
|
+
|
|
976
975
|
const DefaultsSymbol = Symbol.for('vuetify:defaults');
|
|
977
976
|
function createDefaults(options) {
|
|
978
977
|
return ref(options);
|
|
979
978
|
}
|
|
980
|
-
function
|
|
979
|
+
function injectDefaults() {
|
|
981
980
|
const defaults = inject$1(DefaultsSymbol);
|
|
982
981
|
if (!defaults) throw new Error('[Vuetify] Could not find defaults instance');
|
|
983
982
|
return defaults;
|
|
984
983
|
}
|
|
985
984
|
function provideDefaults(defaults, options) {
|
|
986
|
-
const injectedDefaults =
|
|
985
|
+
const injectedDefaults = injectDefaults();
|
|
987
986
|
const providedDefaults = ref(defaults);
|
|
988
987
|
const newDefaults = computed(() => {
|
|
989
988
|
const disabled = unref(options?.disabled);
|
|
@@ -1010,41 +1009,58 @@ function provideDefaults(defaults, options) {
|
|
|
1010
1009
|
provide(DefaultsSymbol, newDefaults);
|
|
1011
1010
|
return newDefaults;
|
|
1012
1011
|
}
|
|
1013
|
-
|
|
1014
|
-
|
|
1015
|
-
|
|
1016
|
-
|
|
1017
|
-
|
|
1018
|
-
|
|
1019
|
-
|
|
1020
|
-
|
|
1021
|
-
|
|
1022
|
-
|
|
1023
|
-
|
|
1024
|
-
|
|
1025
|
-
|
|
1026
|
-
|
|
1027
|
-
|
|
1028
|
-
|
|
1012
|
+
function propIsDefined(vnode, prop) {
|
|
1013
|
+
return typeof vnode.props?.[prop] !== 'undefined' || typeof vnode.props?.[toKebabCase(prop)] !== 'undefined';
|
|
1014
|
+
}
|
|
1015
|
+
function useDefaults() {
|
|
1016
|
+
let props = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
|
|
1017
|
+
let name = arguments.length > 1 ? arguments[1] : undefined;
|
|
1018
|
+
let defaults = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : injectDefaults();
|
|
1019
|
+
const vm = getCurrentInstance('useDefaults');
|
|
1020
|
+
name = name ?? vm.type.name ?? vm.type.__name;
|
|
1021
|
+
if (!name) {
|
|
1022
|
+
throw new Error('[Vuetify] Could not determine component name');
|
|
1023
|
+
}
|
|
1024
|
+
const componentDefaults = computed(() => defaults.value?.[props._as ?? name]);
|
|
1025
|
+
const _props = new Proxy(props, {
|
|
1026
|
+
get(target, prop) {
|
|
1027
|
+
const propValue = Reflect.get(target, prop);
|
|
1028
|
+
if (prop === 'class' || prop === 'style') {
|
|
1029
|
+
return [componentDefaults.value?.[prop], propValue].filter(v => v != null);
|
|
1030
|
+
} else if (typeof prop === 'string' && !propIsDefined(vm.vnode, prop)) {
|
|
1031
|
+
return componentDefaults.value?.[prop] ?? defaults.value?.global?.[prop] ?? propValue;
|
|
1032
|
+
}
|
|
1033
|
+
return propValue;
|
|
1029
1034
|
}
|
|
1030
|
-
}, {
|
|
1031
|
-
immediate: true
|
|
1032
1035
|
});
|
|
1033
|
-
|
|
1034
|
-
|
|
1036
|
+
const _subcomponentDefaults = shallowRef();
|
|
1037
|
+
watchEffect(() => {
|
|
1038
|
+
if (componentDefaults.value) {
|
|
1039
|
+
const subComponents = Object.entries(componentDefaults.value).filter(_ref => {
|
|
1040
|
+
let [key] = _ref;
|
|
1041
|
+
return key.startsWith(key[0].toUpperCase());
|
|
1042
|
+
});
|
|
1043
|
+
if (subComponents.length) _subcomponentDefaults.value = Object.fromEntries(subComponents);
|
|
1044
|
+
}
|
|
1035
1045
|
});
|
|
1046
|
+
function provideSubDefaults() {
|
|
1047
|
+
// If subcomponent defaults are provided, override any
|
|
1048
|
+
// subcomponents provided by the component's setup function.
|
|
1049
|
+
// This uses injectSelf so must be done after the original setup to work.
|
|
1050
|
+
useToggleScope(_subcomponentDefaults, () => {
|
|
1051
|
+
provideDefaults(mergeDeep(injectSelf(DefaultsSymbol)?.value ?? {}, _subcomponentDefaults.value));
|
|
1052
|
+
});
|
|
1053
|
+
}
|
|
1054
|
+
return {
|
|
1055
|
+
props: _props,
|
|
1056
|
+
provideSubDefaults
|
|
1057
|
+
};
|
|
1036
1058
|
}
|
|
1037
1059
|
|
|
1038
1060
|
// Utils
|
|
1039
1061
|
|
|
1040
1062
|
// Types
|
|
1041
1063
|
|
|
1042
|
-
function propIsDefined(vnode, prop) {
|
|
1043
|
-
return typeof vnode.props?.[prop] !== 'undefined' || typeof vnode.props?.[toKebabCase(prop)] !== 'undefined';
|
|
1044
|
-
}
|
|
1045
|
-
|
|
1046
|
-
// No props
|
|
1047
|
-
|
|
1048
1064
|
// Implementation
|
|
1049
1065
|
function defineComponent(options) {
|
|
1050
1066
|
options._setup = options._setup ?? options.setup;
|
|
@@ -1056,43 +1072,20 @@ function defineComponent(options) {
|
|
|
1056
1072
|
options.props = propsFactory(options.props ?? {}, toKebabCase(options.name))();
|
|
1057
1073
|
const propKeys = Object.keys(options.props);
|
|
1058
1074
|
options.filterProps = function filterProps(props) {
|
|
1059
|
-
return pick(props, propKeys);
|
|
1075
|
+
return pick(props, propKeys, ['class', 'style']);
|
|
1060
1076
|
};
|
|
1061
1077
|
options.props._as = String;
|
|
1062
1078
|
options.setup = function setup(props, ctx) {
|
|
1063
|
-
const defaults =
|
|
1079
|
+
const defaults = injectDefaults();
|
|
1064
1080
|
|
|
1065
1081
|
// Skip props proxy if defaults are not provided
|
|
1066
1082
|
if (!defaults.value) return options._setup(props, ctx);
|
|
1067
|
-
const
|
|
1068
|
-
|
|
1069
|
-
|
|
1070
|
-
|
|
1071
|
-
const propValue = Reflect.get(target, prop);
|
|
1072
|
-
if (typeof prop === 'string' && !propIsDefined(vm.vnode, prop)) {
|
|
1073
|
-
return componentDefaults.value?.[prop] ?? defaults.value.global?.[prop] ?? propValue;
|
|
1074
|
-
}
|
|
1075
|
-
return propValue;
|
|
1076
|
-
}
|
|
1077
|
-
});
|
|
1078
|
-
const _subcomponentDefaults = shallowRef();
|
|
1079
|
-
watchEffect(() => {
|
|
1080
|
-
if (componentDefaults.value) {
|
|
1081
|
-
const subComponents = Object.entries(componentDefaults.value).filter(_ref => {
|
|
1082
|
-
let [key] = _ref;
|
|
1083
|
-
return key.startsWith(key[0].toUpperCase());
|
|
1084
|
-
});
|
|
1085
|
-
if (subComponents.length) _subcomponentDefaults.value = Object.fromEntries(subComponents);
|
|
1086
|
-
}
|
|
1087
|
-
});
|
|
1083
|
+
const {
|
|
1084
|
+
props: _props,
|
|
1085
|
+
provideSubDefaults
|
|
1086
|
+
} = useDefaults(props, props._as ?? options.name, defaults);
|
|
1088
1087
|
const setupBindings = options._setup(_props, ctx);
|
|
1089
|
-
|
|
1090
|
-
// If subcomponent defaults are provided, override any
|
|
1091
|
-
// subcomponents provided by the component's setup function.
|
|
1092
|
-
// This uses injectSelf so must be done after the original setup to work.
|
|
1093
|
-
useToggleScope(_subcomponentDefaults, () => {
|
|
1094
|
-
provideDefaults(mergeDeep(injectSelf(DefaultsSymbol)?.value ?? {}, _subcomponentDefaults.value));
|
|
1095
|
-
});
|
|
1088
|
+
provideSubDefaults();
|
|
1096
1089
|
return setupBindings;
|
|
1097
1090
|
};
|
|
1098
1091
|
}
|
|
@@ -1117,15 +1110,19 @@ function createSimpleFunctional(klass) {
|
|
|
1117
1110
|
tag: {
|
|
1118
1111
|
type: String,
|
|
1119
1112
|
default: tag
|
|
1120
|
-
}
|
|
1113
|
+
},
|
|
1114
|
+
...makeComponentProps()
|
|
1121
1115
|
},
|
|
1122
1116
|
setup(props, _ref) {
|
|
1123
1117
|
let {
|
|
1124
1118
|
slots
|
|
1125
1119
|
} = _ref;
|
|
1126
|
-
return () =>
|
|
1127
|
-
|
|
1128
|
-
|
|
1120
|
+
return () => {
|
|
1121
|
+
return h(props.tag, {
|
|
1122
|
+
class: [klass, props.class],
|
|
1123
|
+
style: props.style
|
|
1124
|
+
}, slots.default?.());
|
|
1125
|
+
};
|
|
1129
1126
|
}
|
|
1130
1127
|
});
|
|
1131
1128
|
}
|
|
@@ -1158,6 +1155,34 @@ const standardEasing = 'cubic-bezier(0.4, 0, 0.2, 1)';
|
|
|
1158
1155
|
const deceleratedEasing = 'cubic-bezier(0.0, 0, 0.2, 1)'; // Entering
|
|
1159
1156
|
const acceleratedEasing = 'cubic-bezier(0.4, 0, 1, 1)'; // Leaving
|
|
1160
1157
|
|
|
1158
|
+
// Utilities
|
|
1159
|
+
function getCurrentInstance(name, message) {
|
|
1160
|
+
const vm = getCurrentInstance$1();
|
|
1161
|
+
if (!vm) {
|
|
1162
|
+
throw new Error(`[Vuetify] ${name} ${message || 'must be called from inside a setup function'}`);
|
|
1163
|
+
}
|
|
1164
|
+
return vm;
|
|
1165
|
+
}
|
|
1166
|
+
function getCurrentInstanceName() {
|
|
1167
|
+
let name = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : 'composables';
|
|
1168
|
+
const vm = getCurrentInstance(name).type;
|
|
1169
|
+
return toKebabCase(vm?.aliasName || vm?.name);
|
|
1170
|
+
}
|
|
1171
|
+
let _uid = 0;
|
|
1172
|
+
let _map = new WeakMap();
|
|
1173
|
+
function getUid() {
|
|
1174
|
+
const vm = getCurrentInstance('getUid');
|
|
1175
|
+
if (_map.has(vm)) return _map.get(vm);else {
|
|
1176
|
+
const uid = _uid++;
|
|
1177
|
+
_map.set(vm, uid);
|
|
1178
|
+
return uid;
|
|
1179
|
+
}
|
|
1180
|
+
}
|
|
1181
|
+
getUid.reset = () => {
|
|
1182
|
+
_uid = 0;
|
|
1183
|
+
_map = new WeakMap();
|
|
1184
|
+
};
|
|
1185
|
+
|
|
1161
1186
|
function getScrollParent(el) {
|
|
1162
1187
|
while (el) {
|
|
1163
1188
|
if (hasScrollbar(el)) return el;
|
|
@@ -1181,6 +1206,16 @@ function hasScrollbar(el) {
|
|
|
1181
1206
|
return style.overflowY === 'scroll' || style.overflowY === 'auto' && el.scrollHeight > el.clientHeight;
|
|
1182
1207
|
}
|
|
1183
1208
|
|
|
1209
|
+
function injectSelf(key) {
|
|
1210
|
+
const {
|
|
1211
|
+
provides
|
|
1212
|
+
} = getCurrentInstance('injectSelf');
|
|
1213
|
+
if (provides && key in provides) {
|
|
1214
|
+
// TS doesn't allow symbol as index type
|
|
1215
|
+
return provides[key];
|
|
1216
|
+
}
|
|
1217
|
+
}
|
|
1218
|
+
|
|
1184
1219
|
function isFixedPosition(el) {
|
|
1185
1220
|
while (el) {
|
|
1186
1221
|
if (window.getComputedStyle(el).position === 'fixed') {
|
|
@@ -1961,7 +1996,11 @@ var en = {
|
|
|
1961
1996
|
item: 'Rating {0} of {1}'
|
|
1962
1997
|
}
|
|
1963
1998
|
},
|
|
1964
|
-
loading: 'Loading...'
|
|
1999
|
+
loading: 'Loading...',
|
|
2000
|
+
infiniteScroll: {
|
|
2001
|
+
loadMore: 'Load more',
|
|
2002
|
+
empty: 'No more'
|
|
2003
|
+
}
|
|
1965
2004
|
};
|
|
1966
2005
|
|
|
1967
2006
|
const LANG_PREFIX = '$vuetify.';
|
|
@@ -2159,6 +2198,7 @@ function useRtl() {
|
|
|
2159
2198
|
const VApp = genericComponent()({
|
|
2160
2199
|
name: 'VApp',
|
|
2161
2200
|
props: {
|
|
2201
|
+
...makeComponentProps(),
|
|
2162
2202
|
...makeLayoutProps({
|
|
2163
2203
|
fullHeight: true
|
|
2164
2204
|
}),
|
|
@@ -2181,8 +2221,8 @@ const VApp = genericComponent()({
|
|
|
2181
2221
|
} = useRtl();
|
|
2182
2222
|
useRender(() => createVNode("div", {
|
|
2183
2223
|
"ref": layoutRef,
|
|
2184
|
-
"class": ['v-application', theme.themeClasses.value, layoutClasses.value, rtlClasses.value],
|
|
2185
|
-
"style": layoutStyles.value
|
|
2224
|
+
"class": ['v-application', theme.themeClasses.value, layoutClasses.value, rtlClasses.value, props.class],
|
|
2225
|
+
"style": [layoutStyles.value, props.style]
|
|
2186
2226
|
}, [createVNode("div", {
|
|
2187
2227
|
"class": "v-application__wrap"
|
|
2188
2228
|
}, [slots.default?.()])]));
|
|
@@ -2607,6 +2647,7 @@ const VResponsive = genericComponent()({
|
|
|
2607
2647
|
props: {
|
|
2608
2648
|
aspectRatio: [String, Number],
|
|
2609
2649
|
contentClass: String,
|
|
2650
|
+
...makeComponentProps(),
|
|
2610
2651
|
...makeDimensionProps()
|
|
2611
2652
|
},
|
|
2612
2653
|
setup(props, _ref) {
|
|
@@ -2620,8 +2661,8 @@ const VResponsive = genericComponent()({
|
|
|
2620
2661
|
dimensionStyles
|
|
2621
2662
|
} = useDimension(props);
|
|
2622
2663
|
useRender(() => createVNode("div", {
|
|
2623
|
-
"class":
|
|
2624
|
-
"style": dimensionStyles.value
|
|
2664
|
+
"class": ['v-responsive', props.class],
|
|
2665
|
+
"style": [dimensionStyles.value, props.style]
|
|
2625
2666
|
}, [createVNode("div", {
|
|
2626
2667
|
"class": "v-responsive__sizer",
|
|
2627
2668
|
"style": aspectStyles.value
|
|
@@ -2739,6 +2780,7 @@ const VImg = genericComponent()({
|
|
|
2739
2780
|
},
|
|
2740
2781
|
srcset: String,
|
|
2741
2782
|
width: [String, Number],
|
|
2783
|
+
...makeComponentProps(),
|
|
2742
2784
|
...makeTransitionProps()
|
|
2743
2785
|
},
|
|
2744
2786
|
emits: {
|
|
@@ -2926,10 +2968,10 @@ const VImg = genericComponent()({
|
|
|
2926
2968
|
useRender(() => withDirectives(createVNode(VResponsive, {
|
|
2927
2969
|
"class": ['v-img', {
|
|
2928
2970
|
'v-img--booting': !isBooted.value
|
|
2929
|
-
}],
|
|
2930
|
-
"style": {
|
|
2971
|
+
}, props.class],
|
|
2972
|
+
"style": [{
|
|
2931
2973
|
width: convertToUnit(props.width === 'auto' ? naturalWidth.value : props.width)
|
|
2932
|
-
},
|
|
2974
|
+
}, props.style],
|
|
2933
2975
|
"aspectRatio": aspectRatio.value,
|
|
2934
2976
|
"aria-label": props.alt,
|
|
2935
2977
|
"role": props.alt ? 'img' : undefined
|
|
@@ -2964,10 +3006,9 @@ const makeTagProps = propsFactory({
|
|
|
2964
3006
|
}
|
|
2965
3007
|
}, 'tag');
|
|
2966
3008
|
|
|
2967
|
-
// Types
|
|
2968
|
-
|
|
2969
3009
|
const makeVToolbarTitleProps = propsFactory({
|
|
2970
3010
|
text: String,
|
|
3011
|
+
...makeComponentProps(),
|
|
2971
3012
|
...makeTagProps()
|
|
2972
3013
|
}, 'v-toolbar-title');
|
|
2973
3014
|
const VToolbarTitle = genericComponent()({
|
|
@@ -2980,7 +3021,8 @@ const VToolbarTitle = genericComponent()({
|
|
|
2980
3021
|
useRender(() => {
|
|
2981
3022
|
const hasText = !!(slots.default || slots.text || props.text);
|
|
2982
3023
|
return createVNode(props.tag, {
|
|
2983
|
-
"class":
|
|
3024
|
+
"class": ['v-toolbar-title', props.class],
|
|
3025
|
+
"style": props.style
|
|
2984
3026
|
}, {
|
|
2985
3027
|
default: () => [hasText && createVNode("div", {
|
|
2986
3028
|
"class": "v-toolbar-title__placeholder"
|
|
@@ -3161,6 +3203,7 @@ const makeVToolbarProps = propsFactory({
|
|
|
3161
3203
|
image: String,
|
|
3162
3204
|
title: String,
|
|
3163
3205
|
...makeBorderProps(),
|
|
3206
|
+
...makeComponentProps(),
|
|
3164
3207
|
...makeElevationProps(),
|
|
3165
3208
|
...makeRoundedProps(),
|
|
3166
3209
|
...makeTagProps({
|
|
@@ -3211,8 +3254,8 @@ const VToolbar = genericComponent()({
|
|
|
3211
3254
|
'v-toolbar--flat': props.flat,
|
|
3212
3255
|
'v-toolbar--floating': props.floating,
|
|
3213
3256
|
[`v-toolbar--density-${props.density}`]: true
|
|
3214
|
-
}, backgroundColorClasses.value, borderClasses.value, elevationClasses.value, roundedClasses.value, themeClasses.value],
|
|
3215
|
-
"style": [backgroundColorStyles.value]
|
|
3257
|
+
}, backgroundColorClasses.value, borderClasses.value, elevationClasses.value, roundedClasses.value, themeClasses.value, props.class],
|
|
3258
|
+
"style": [backgroundColorStyles.value, props.style]
|
|
3216
3259
|
}, {
|
|
3217
3260
|
default: () => [hasImage && createVNode("div", {
|
|
3218
3261
|
"key": "image",
|
|
@@ -3279,6 +3322,98 @@ const VToolbar = genericComponent()({
|
|
|
3279
3322
|
|
|
3280
3323
|
// Utilities
|
|
3281
3324
|
|
|
3325
|
+
// Types
|
|
3326
|
+
|
|
3327
|
+
// Composables
|
|
3328
|
+
const makeScrollProps = propsFactory({
|
|
3329
|
+
scrollTarget: {
|
|
3330
|
+
type: String
|
|
3331
|
+
},
|
|
3332
|
+
scrollThreshold: {
|
|
3333
|
+
type: [String, Number]
|
|
3334
|
+
}
|
|
3335
|
+
}, 'scroll');
|
|
3336
|
+
function useScroll(props) {
|
|
3337
|
+
let args = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
|
|
3338
|
+
const {
|
|
3339
|
+
thresholdMetCallback,
|
|
3340
|
+
scrollThreshold,
|
|
3341
|
+
canScroll
|
|
3342
|
+
} = args;
|
|
3343
|
+
let previousScroll = 0;
|
|
3344
|
+
const target = ref(null);
|
|
3345
|
+
const currentScroll = ref(0);
|
|
3346
|
+
const savedScroll = ref(0);
|
|
3347
|
+
const currentThreshold = ref(0);
|
|
3348
|
+
const isScrollActive = ref(false);
|
|
3349
|
+
const isScrollingUp = ref(false);
|
|
3350
|
+
const computedScrollThreshold = computed(() => {
|
|
3351
|
+
return Number(props.scrollThreshold ?? scrollThreshold ?? 300);
|
|
3352
|
+
});
|
|
3353
|
+
const onScroll = () => {
|
|
3354
|
+
const targetEl = target.value;
|
|
3355
|
+
if (!targetEl || canScroll && !canScroll.value) return;
|
|
3356
|
+
previousScroll = currentScroll.value;
|
|
3357
|
+
currentScroll.value = 'window' in targetEl ? targetEl.pageYOffset : targetEl.scrollTop;
|
|
3358
|
+
isScrollingUp.value = currentScroll.value < previousScroll;
|
|
3359
|
+
currentThreshold.value = Math.abs(currentScroll.value - computedScrollThreshold.value);
|
|
3360
|
+
};
|
|
3361
|
+
watch(isScrollingUp, () => {
|
|
3362
|
+
savedScroll.value = savedScroll.value || currentScroll.value;
|
|
3363
|
+
});
|
|
3364
|
+
watch(isScrollActive, () => {
|
|
3365
|
+
savedScroll.value = 0;
|
|
3366
|
+
});
|
|
3367
|
+
onMounted(() => {
|
|
3368
|
+
watch(() => props.scrollTarget, scrollTarget => {
|
|
3369
|
+
const newTarget = scrollTarget ? document.querySelector(scrollTarget) : window;
|
|
3370
|
+
if (!newTarget) {
|
|
3371
|
+
consoleWarn(`Unable to locate element with identifier ${scrollTarget}`, getCurrentInstance$1());
|
|
3372
|
+
return;
|
|
3373
|
+
}
|
|
3374
|
+
if (newTarget === target.value) return;
|
|
3375
|
+
target.value?.removeEventListener('scroll', onScroll);
|
|
3376
|
+
target.value = newTarget;
|
|
3377
|
+
target.value.addEventListener('scroll', onScroll, {
|
|
3378
|
+
passive: true
|
|
3379
|
+
});
|
|
3380
|
+
}, {
|
|
3381
|
+
immediate: true
|
|
3382
|
+
});
|
|
3383
|
+
});
|
|
3384
|
+
onBeforeUnmount(() => {
|
|
3385
|
+
target.value?.removeEventListener('scroll', onScroll);
|
|
3386
|
+
});
|
|
3387
|
+
thresholdMetCallback && watch(() => Math.abs(currentScroll.value - savedScroll.value) > computedScrollThreshold.value, thresholdMet => {
|
|
3388
|
+
thresholdMet && thresholdMetCallback({
|
|
3389
|
+
currentThreshold: currentThreshold.value,
|
|
3390
|
+
isScrollingUp: isScrollingUp.value,
|
|
3391
|
+
savedScroll
|
|
3392
|
+
});
|
|
3393
|
+
}, {
|
|
3394
|
+
immediate: true
|
|
3395
|
+
});
|
|
3396
|
+
|
|
3397
|
+
// Do we need this? If yes - seems that
|
|
3398
|
+
// there's no need to expose onScroll
|
|
3399
|
+
canScroll && watch(canScroll, onScroll, {
|
|
3400
|
+
immediate: true
|
|
3401
|
+
});
|
|
3402
|
+
return {
|
|
3403
|
+
computedScrollThreshold,
|
|
3404
|
+
currentScroll,
|
|
3405
|
+
currentThreshold,
|
|
3406
|
+
isScrollActive,
|
|
3407
|
+
// required only for testing
|
|
3408
|
+
// probably can be removed
|
|
3409
|
+
// later (2 chars chlng)
|
|
3410
|
+
isScrollingUp,
|
|
3411
|
+
savedScroll
|
|
3412
|
+
};
|
|
3413
|
+
}
|
|
3414
|
+
|
|
3415
|
+
// Utilities
|
|
3416
|
+
|
|
3282
3417
|
// Composables
|
|
3283
3418
|
function useSsrBoot() {
|
|
3284
3419
|
const isBooted = ref(false);
|
|
@@ -3301,13 +3436,7 @@ function useSsrBoot() {
|
|
|
3301
3436
|
const VAppBar = genericComponent()({
|
|
3302
3437
|
name: 'VAppBar',
|
|
3303
3438
|
props: {
|
|
3304
|
-
|
|
3305
|
-
// hideOnScroll: Boolean
|
|
3306
|
-
// invertedScroll: Boolean
|
|
3307
|
-
// collapseOnScroll: Boolean
|
|
3308
|
-
// elevateOnScroll: Boolean
|
|
3309
|
-
// shrinkOnScroll: Boolean
|
|
3310
|
-
// fadeImageOnScroll: Boolean
|
|
3439
|
+
scrollBehavior: String,
|
|
3311
3440
|
modelValue: {
|
|
3312
3441
|
type: Boolean,
|
|
3313
3442
|
default: true
|
|
@@ -3319,6 +3448,7 @@ const VAppBar = genericComponent()({
|
|
|
3319
3448
|
},
|
|
3320
3449
|
...makeVToolbarProps(),
|
|
3321
3450
|
...makeLayoutItemProps(),
|
|
3451
|
+
...makeScrollProps(),
|
|
3322
3452
|
height: {
|
|
3323
3453
|
type: [Number, String],
|
|
3324
3454
|
default: 64
|
|
@@ -3333,11 +3463,63 @@ const VAppBar = genericComponent()({
|
|
|
3333
3463
|
} = _ref;
|
|
3334
3464
|
const vToolbarRef = ref();
|
|
3335
3465
|
const isActive = useProxiedModel(props, 'modelValue');
|
|
3466
|
+
const scrollBehavior = computed(() => {
|
|
3467
|
+
const behavior = new Set(props.scrollBehavior?.split(' ') ?? []);
|
|
3468
|
+
return {
|
|
3469
|
+
hide: behavior.has('hide'),
|
|
3470
|
+
// fullyHide: behavior.has('fully-hide'),
|
|
3471
|
+
inverted: behavior.has('inverted'),
|
|
3472
|
+
collapse: behavior.has('collapse'),
|
|
3473
|
+
elevate: behavior.has('elevate'),
|
|
3474
|
+
fadeImage: behavior.has('fade-image')
|
|
3475
|
+
// shrink: behavior.has('shrink'),
|
|
3476
|
+
};
|
|
3477
|
+
});
|
|
3478
|
+
|
|
3479
|
+
const canScroll = computed(() => {
|
|
3480
|
+
const behavior = scrollBehavior.value;
|
|
3481
|
+
return behavior.hide ||
|
|
3482
|
+
// behavior.fullyHide ||
|
|
3483
|
+
behavior.inverted || behavior.collapse || behavior.elevate || behavior.fadeImage ||
|
|
3484
|
+
// behavior.shrink ||
|
|
3485
|
+
!isActive.value;
|
|
3486
|
+
});
|
|
3487
|
+
const {
|
|
3488
|
+
currentScroll,
|
|
3489
|
+
currentThreshold,
|
|
3490
|
+
computedScrollThreshold,
|
|
3491
|
+
isScrollingUp
|
|
3492
|
+
} = useScroll(props, {
|
|
3493
|
+
canScroll
|
|
3494
|
+
});
|
|
3495
|
+
const isCollapsed = computed(() => props.collapse || scrollBehavior.value.collapse && (scrollBehavior.value.inverted ? currentScroll.value < 1 : currentScroll.value > 0));
|
|
3496
|
+
const isFlat = computed(() => props.flat || scrollBehavior.value.elevate && currentScroll.value === (scrollBehavior.value.inverted ? 1 : 0));
|
|
3497
|
+
const scrollRatio = computed(() => Math.min((currentThreshold.value - currentScroll.value) / currentThreshold.value || 1, 1));
|
|
3498
|
+
const opacity = computed(() => scrollBehavior.value.fadeImage ? scrollBehavior.value.inverted ? 1 - scrollRatio.value : scrollRatio.value : undefined);
|
|
3336
3499
|
const height = computed(() => {
|
|
3500
|
+
if (scrollBehavior.value.hide && scrollBehavior.value.inverted) return 0;
|
|
3337
3501
|
const height = vToolbarRef.value?.contentHeight ?? 0;
|
|
3338
3502
|
const extensionHeight = vToolbarRef.value?.extensionHeight ?? 0;
|
|
3339
3503
|
return height + extensionHeight;
|
|
3340
3504
|
});
|
|
3505
|
+
function setActive() {
|
|
3506
|
+
const val = currentScroll.value;
|
|
3507
|
+
if (scrollBehavior.value.hide) {
|
|
3508
|
+
if (scrollBehavior.value.inverted) {
|
|
3509
|
+
isActive.value = val > computedScrollThreshold.value;
|
|
3510
|
+
} else {
|
|
3511
|
+
isActive.value = isScrollingUp.value || val < computedScrollThreshold.value;
|
|
3512
|
+
}
|
|
3513
|
+
} else if (scrollBehavior.value.inverted) {
|
|
3514
|
+
isActive.value = currentScroll.value === 0;
|
|
3515
|
+
} else {
|
|
3516
|
+
isActive.value = true;
|
|
3517
|
+
}
|
|
3518
|
+
}
|
|
3519
|
+
watch(currentScroll, setActive, {
|
|
3520
|
+
immediate: true
|
|
3521
|
+
});
|
|
3522
|
+
watch(scrollBehavior, setActive);
|
|
3341
3523
|
const {
|
|
3342
3524
|
ssrBootStyles
|
|
3343
3525
|
} = useSsrBoot();
|
|
@@ -3348,7 +3530,7 @@ const VAppBar = genericComponent()({
|
|
|
3348
3530
|
order: computed(() => parseInt(props.order, 10)),
|
|
3349
3531
|
position: toRef(props, 'location'),
|
|
3350
3532
|
layoutSize: height,
|
|
3351
|
-
elementSize:
|
|
3533
|
+
elementSize: ref(undefined),
|
|
3352
3534
|
active: isActive,
|
|
3353
3535
|
absolute: toRef(props, 'absolute')
|
|
3354
3536
|
});
|
|
@@ -3358,13 +3540,17 @@ const VAppBar = genericComponent()({
|
|
|
3358
3540
|
"ref": vToolbarRef,
|
|
3359
3541
|
"class": ['v-app-bar', {
|
|
3360
3542
|
'v-app-bar--bottom': props.location === 'bottom'
|
|
3361
|
-
}],
|
|
3362
|
-
"style": {
|
|
3543
|
+
}, props.class],
|
|
3544
|
+
"style": [{
|
|
3363
3545
|
...layoutItemStyles.value,
|
|
3546
|
+
'--v-toolbar-image-opacity': opacity.value,
|
|
3364
3547
|
height: undefined,
|
|
3365
3548
|
...ssrBootStyles.value
|
|
3366
|
-
}
|
|
3367
|
-
}, toolbarProps
|
|
3549
|
+
}, props.style]
|
|
3550
|
+
}, toolbarProps, {
|
|
3551
|
+
"collapse": isCollapsed.value,
|
|
3552
|
+
"flat": isFlat.value
|
|
3553
|
+
}), slots);
|
|
3368
3554
|
});
|
|
3369
3555
|
return {};
|
|
3370
3556
|
}
|
|
@@ -3447,6 +3633,7 @@ function useVariant(props) {
|
|
|
3447
3633
|
const makeVBtnGroupProps = propsFactory({
|
|
3448
3634
|
divided: Boolean,
|
|
3449
3635
|
...makeBorderProps(),
|
|
3636
|
+
...makeComponentProps(),
|
|
3450
3637
|
...makeDensityProps(),
|
|
3451
3638
|
...makeElevationProps(),
|
|
3452
3639
|
...makeRoundedProps(),
|
|
@@ -3489,7 +3676,8 @@ const VBtnGroup = genericComponent()({
|
|
|
3489
3676
|
return createVNode(props.tag, {
|
|
3490
3677
|
"class": ['v-btn-group', {
|
|
3491
3678
|
'v-btn-group--divided': props.divided
|
|
3492
|
-
}, themeClasses.value, borderClasses.value, densityClasses.value, elevationClasses.value, roundedClasses.value]
|
|
3679
|
+
}, themeClasses.value, borderClasses.value, densityClasses.value, elevationClasses.value, roundedClasses.value, props.class],
|
|
3680
|
+
"style": props.style
|
|
3493
3681
|
}, slots);
|
|
3494
3682
|
});
|
|
3495
3683
|
}
|
|
@@ -3722,8 +3910,10 @@ const VBtnToggle = genericComponent()({
|
|
|
3722
3910
|
useRender(() => {
|
|
3723
3911
|
const [btnGroupProps] = VBtnGroup.filterProps(props);
|
|
3724
3912
|
return createVNode(VBtnGroup, mergeProps({
|
|
3725
|
-
"class":
|
|
3726
|
-
}, btnGroupProps
|
|
3913
|
+
"class": ['v-btn-toggle', props.class]
|
|
3914
|
+
}, btnGroupProps, {
|
|
3915
|
+
"style": props.style
|
|
3916
|
+
}), {
|
|
3727
3917
|
default: () => [slots.default?.({
|
|
3728
3918
|
isSelected,
|
|
3729
3919
|
next,
|
|
@@ -3794,7 +3984,7 @@ const mdi = {
|
|
|
3794
3984
|
|
|
3795
3985
|
// Types
|
|
3796
3986
|
|
|
3797
|
-
const IconValue = [String, Function, Object];
|
|
3987
|
+
const IconValue = [String, Function, Object, Array];
|
|
3798
3988
|
const IconSymbol = Symbol.for('vuetify:icons');
|
|
3799
3989
|
const makeIconProps = propsFactory({
|
|
3800
3990
|
icon: {
|
|
@@ -3814,8 +4004,9 @@ const VComponentIcon = genericComponent()({
|
|
|
3814
4004
|
slots
|
|
3815
4005
|
} = _ref;
|
|
3816
4006
|
return () => {
|
|
4007
|
+
const Icon = props.icon;
|
|
3817
4008
|
return createVNode(props.tag, null, {
|
|
3818
|
-
default: () => [props.icon ? createVNode(
|
|
4009
|
+
default: () => [props.icon ? createVNode(Icon, null, null) : slots.default?.()]
|
|
3819
4010
|
});
|
|
3820
4011
|
};
|
|
3821
4012
|
}
|
|
@@ -3838,7 +4029,12 @@ const VSvgIcon = defineComponent({
|
|
|
3838
4029
|
"viewBox": "0 0 24 24",
|
|
3839
4030
|
"role": "img",
|
|
3840
4031
|
"aria-hidden": "true"
|
|
3841
|
-
}, [createVNode("path", {
|
|
4032
|
+
}, [Array.isArray(props.icon) ? props.icon.map(path => Array.isArray(path) ? createVNode("path", {
|
|
4033
|
+
"d": path[0],
|
|
4034
|
+
"fill-opacity": path[1]
|
|
4035
|
+
}, null) : createVNode("path", {
|
|
4036
|
+
"d": path
|
|
4037
|
+
}, null)) : createVNode("path", {
|
|
3842
4038
|
"d": props.icon
|
|
3843
4039
|
}, null)])]
|
|
3844
4040
|
});
|
|
@@ -3903,7 +4099,12 @@ const useIcon = props => {
|
|
|
3903
4099
|
}
|
|
3904
4100
|
}
|
|
3905
4101
|
if (!icon) throw new Error(`Could not find aliased icon "${iconAlias}"`);
|
|
3906
|
-
if (
|
|
4102
|
+
if (Array.isArray(icon)) {
|
|
4103
|
+
return {
|
|
4104
|
+
component: VSvgIcon,
|
|
4105
|
+
icon
|
|
4106
|
+
};
|
|
4107
|
+
} else if (typeof icon !== 'string') {
|
|
3907
4108
|
return {
|
|
3908
4109
|
component: VComponentIcon,
|
|
3909
4110
|
icon
|
|
@@ -3960,6 +4161,7 @@ const makeVIconProps = propsFactory({
|
|
|
3960
4161
|
start: Boolean,
|
|
3961
4162
|
end: Boolean,
|
|
3962
4163
|
icon: IconValue,
|
|
4164
|
+
...makeComponentProps(),
|
|
3963
4165
|
...makeSizeProps(),
|
|
3964
4166
|
...makeTagProps({
|
|
3965
4167
|
tag: 'i'
|
|
@@ -4002,12 +4204,12 @@ const VIcon = genericComponent()({
|
|
|
4002
4204
|
'v-icon--clickable': !!attrs.onClick,
|
|
4003
4205
|
'v-icon--start': props.start,
|
|
4004
4206
|
'v-icon--end': props.end
|
|
4005
|
-
}],
|
|
4207
|
+
}, props.class],
|
|
4006
4208
|
"style": [!sizeClasses.value ? {
|
|
4007
4209
|
fontSize: convertToUnit(props.size),
|
|
4008
4210
|
height: convertToUnit(props.size),
|
|
4009
4211
|
width: convertToUnit(props.size)
|
|
4010
|
-
} : undefined, textColorStyles.value],
|
|
4212
|
+
} : undefined, textColorStyles.value, props.style],
|
|
4011
4213
|
"role": attrs.onClick ? 'button' : undefined,
|
|
4012
4214
|
"aria-hidden": !attrs.onClick
|
|
4013
4215
|
}, {
|
|
@@ -4018,14 +4220,14 @@ const VIcon = genericComponent()({
|
|
|
4018
4220
|
});
|
|
4019
4221
|
|
|
4020
4222
|
// Utilities
|
|
4021
|
-
function useIntersectionObserver(callback) {
|
|
4223
|
+
function useIntersectionObserver(callback, options) {
|
|
4022
4224
|
const intersectionRef = ref();
|
|
4023
4225
|
const isIntersecting = ref(false);
|
|
4024
4226
|
if (SUPPORTS_INTERSECTION) {
|
|
4025
4227
|
const observer = new IntersectionObserver(entries => {
|
|
4026
4228
|
callback?.(entries, observer);
|
|
4027
4229
|
isIntersecting.value = !!entries.find(entry => entry.isIntersecting);
|
|
4028
|
-
});
|
|
4230
|
+
}, options);
|
|
4029
4231
|
onBeforeUnmount(() => {
|
|
4030
4232
|
observer.disconnect();
|
|
4031
4233
|
});
|
|
@@ -4065,6 +4267,7 @@ const VProgressCircular = genericComponent()({
|
|
|
4065
4267
|
type: [Number, String],
|
|
4066
4268
|
default: 4
|
|
4067
4269
|
},
|
|
4270
|
+
...makeComponentProps(),
|
|
4068
4271
|
...makeSizeProps(),
|
|
4069
4272
|
...makeTagProps({
|
|
4070
4273
|
tag: 'div'
|
|
@@ -4120,8 +4323,8 @@ const VProgressCircular = genericComponent()({
|
|
|
4120
4323
|
'v-progress-circular--indeterminate': !!props.indeterminate,
|
|
4121
4324
|
'v-progress-circular--visible': isIntersecting.value,
|
|
4122
4325
|
'v-progress-circular--disable-shrink': props.indeterminate === 'disable-shrink'
|
|
4123
|
-
}, themeClasses.value, sizeClasses.value, textColorClasses.value],
|
|
4124
|
-
"style": [sizeStyles.value, textColorStyles.value],
|
|
4326
|
+
}, themeClasses.value, sizeClasses.value, textColorClasses.value, props.class],
|
|
4327
|
+
"style": [sizeStyles.value, textColorStyles.value, props.style],
|
|
4125
4328
|
"role": "progressbar",
|
|
4126
4329
|
"aria-valuemin": "0",
|
|
4127
4330
|
"aria-valuemax": "100",
|
|
@@ -4540,6 +4743,7 @@ const VProgressLinear = genericComponent()({
|
|
|
4540
4743
|
stream: Boolean,
|
|
4541
4744
|
striped: Boolean,
|
|
4542
4745
|
roundedBar: Boolean,
|
|
4746
|
+
...makeComponentProps(),
|
|
4543
4747
|
...makeLocationProps({
|
|
4544
4748
|
location: 'top'
|
|
4545
4749
|
}),
|
|
@@ -4611,14 +4815,14 @@ const VProgressLinear = genericComponent()({
|
|
|
4611
4815
|
'v-progress-linear--rounded': props.rounded,
|
|
4612
4816
|
'v-progress-linear--rounded-bar': props.roundedBar,
|
|
4613
4817
|
'v-progress-linear--striped': props.striped
|
|
4614
|
-
}, roundedClasses.value, themeClasses.value],
|
|
4615
|
-
"style": {
|
|
4818
|
+
}, roundedClasses.value, themeClasses.value, props.class],
|
|
4819
|
+
"style": [{
|
|
4616
4820
|
bottom: props.location === 'bottom' ? 0 : undefined,
|
|
4617
4821
|
top: props.location === 'top' ? 0 : undefined,
|
|
4618
4822
|
height: props.active ? convertToUnit(height.value) : 0,
|
|
4619
4823
|
'--v-progress-linear-height': convertToUnit(height.value),
|
|
4620
4824
|
...locationStyles.value
|
|
4621
|
-
},
|
|
4825
|
+
}, props.style],
|
|
4622
4826
|
"role": "progressbar",
|
|
4623
4827
|
"aria-hidden": props.active ? 'false' : 'true',
|
|
4624
4828
|
"aria-valuemin": "0",
|
|
@@ -4827,8 +5031,9 @@ const makeVBtnProps = propsFactory({
|
|
|
4827
5031
|
type: Boolean,
|
|
4828
5032
|
default: true
|
|
4829
5033
|
},
|
|
5034
|
+
text: String,
|
|
4830
5035
|
...makeBorderProps(),
|
|
4831
|
-
...
|
|
5036
|
+
...makeComponentProps(),
|
|
4832
5037
|
...makeDensityProps(),
|
|
4833
5038
|
...makeDimensionProps(),
|
|
4834
5039
|
...makeElevationProps(),
|
|
@@ -4836,6 +5041,7 @@ const makeVBtnProps = propsFactory({
|
|
|
4836
5041
|
...makeLoaderProps(),
|
|
4837
5042
|
...makeLocationProps(),
|
|
4838
5043
|
...makePositionProps(),
|
|
5044
|
+
...makeRoundedProps(),
|
|
4839
5045
|
...makeRouterProps(),
|
|
4840
5046
|
...makeSizeProps(),
|
|
4841
5047
|
...makeTagProps({
|
|
@@ -4933,8 +5139,8 @@ const VBtn = genericComponent()({
|
|
|
4933
5139
|
'v-btn--icon': !!props.icon,
|
|
4934
5140
|
'v-btn--loading': props.loading,
|
|
4935
5141
|
'v-btn--stacked': props.stacked
|
|
4936
|
-
}, themeClasses.value, borderClasses.value, hasColor ? colorClasses.value : undefined, densityClasses.value, elevationClasses.value, loaderClasses.value, positionClasses.value, roundedClasses.value, sizeClasses.value, variantClasses.value],
|
|
4937
|
-
"style": [hasColor ? colorStyles.value : undefined, dimensionStyles.value, locationStyles.value, sizeStyles.value],
|
|
5142
|
+
}, themeClasses.value, borderClasses.value, hasColor ? colorClasses.value : undefined, densityClasses.value, elevationClasses.value, loaderClasses.value, positionClasses.value, roundedClasses.value, sizeClasses.value, variantClasses.value, props.class],
|
|
5143
|
+
"style": [hasColor ? colorStyles.value : undefined, dimensionStyles.value, locationStyles.value, sizeStyles.value, props.style],
|
|
4938
5144
|
"disabled": isDisabled.value || undefined,
|
|
4939
5145
|
"href": link.href.value,
|
|
4940
5146
|
"onClick": e => {
|
|
@@ -4972,7 +5178,9 @@ const VBtn = genericComponent()({
|
|
|
4972
5178
|
icon: props.icon
|
|
4973
5179
|
}
|
|
4974
5180
|
}
|
|
4975
|
-
},
|
|
5181
|
+
}, {
|
|
5182
|
+
default: () => [slots.default?.() ?? props.text]
|
|
5183
|
+
})]), !props.icon && hasAppend && createVNode("span", {
|
|
4976
5184
|
"key": "append",
|
|
4977
5185
|
"class": "v-btn__append"
|
|
4978
5186
|
}, [!slots.append ? createVNode(VIcon, {
|
|
@@ -5009,15 +5217,17 @@ const VAppBarNavIcon = genericComponent()({
|
|
|
5009
5217
|
icon: {
|
|
5010
5218
|
type: IconValue,
|
|
5011
5219
|
default: '$menu'
|
|
5012
|
-
}
|
|
5220
|
+
},
|
|
5221
|
+
...makeComponentProps()
|
|
5013
5222
|
},
|
|
5014
5223
|
setup(props, _ref) {
|
|
5015
5224
|
let {
|
|
5016
5225
|
slots
|
|
5017
5226
|
} = _ref;
|
|
5018
5227
|
useRender(() => createVNode(VBtn, {
|
|
5019
|
-
"class":
|
|
5020
|
-
"icon": props.icon
|
|
5228
|
+
"class": ['v-app-bar-nav-icon', props.class],
|
|
5229
|
+
"icon": props.icon,
|
|
5230
|
+
"style": props.style
|
|
5021
5231
|
}, slots));
|
|
5022
5232
|
return {};
|
|
5023
5233
|
}
|
|
@@ -5025,9 +5235,12 @@ const VAppBarNavIcon = genericComponent()({
|
|
|
5025
5235
|
|
|
5026
5236
|
const VToolbarItems = genericComponent()({
|
|
5027
5237
|
name: 'VToolbarItems',
|
|
5028
|
-
props:
|
|
5029
|
-
|
|
5030
|
-
|
|
5238
|
+
props: {
|
|
5239
|
+
...makeComponentProps(),
|
|
5240
|
+
...makeVariantProps({
|
|
5241
|
+
variant: 'text'
|
|
5242
|
+
})
|
|
5243
|
+
},
|
|
5031
5244
|
setup(props, _ref) {
|
|
5032
5245
|
let {
|
|
5033
5246
|
slots
|
|
@@ -5040,7 +5253,8 @@ const VToolbarItems = genericComponent()({
|
|
|
5040
5253
|
}
|
|
5041
5254
|
});
|
|
5042
5255
|
useRender(() => createVNode("div", {
|
|
5043
|
-
"class":
|
|
5256
|
+
"class": ['v-toolbar-items', props.class],
|
|
5257
|
+
"style": props.style
|
|
5044
5258
|
}, [slots.default?.()]));
|
|
5045
5259
|
return {};
|
|
5046
5260
|
}
|
|
@@ -5102,6 +5316,7 @@ const VAlert = genericComponent()({
|
|
|
5102
5316
|
type: String,
|
|
5103
5317
|
validator: val => allowedTypes.includes(val)
|
|
5104
5318
|
},
|
|
5319
|
+
...makeComponentProps(),
|
|
5105
5320
|
...makeDensityProps(),
|
|
5106
5321
|
...makeDimensionProps(),
|
|
5107
5322
|
...makeElevationProps(),
|
|
@@ -5184,8 +5399,8 @@ const VAlert = genericComponent()({
|
|
|
5184
5399
|
[`v-alert--border-${props.border === true ? 'start' : props.border}`]: true
|
|
5185
5400
|
}, {
|
|
5186
5401
|
'v-alert--prominent': props.prominent
|
|
5187
|
-
}, themeClasses.value, colorClasses.value, densityClasses.value, elevationClasses.value, positionClasses.value, roundedClasses.value, variantClasses.value],
|
|
5188
|
-
"style": [colorStyles.value, dimensionStyles.value, locationStyles.value],
|
|
5402
|
+
}, themeClasses.value, colorClasses.value, densityClasses.value, elevationClasses.value, positionClasses.value, roundedClasses.value, variantClasses.value, props.class],
|
|
5403
|
+
"style": [colorStyles.value, dimensionStyles.value, locationStyles.value, props.style],
|
|
5189
5404
|
"role": "alert"
|
|
5190
5405
|
}, {
|
|
5191
5406
|
default: () => [genOverlays(false, 'v-alert'), props.border && createVNode("div", {
|
|
@@ -5279,6 +5494,7 @@ const VLabel = genericComponent()({
|
|
|
5279
5494
|
props: {
|
|
5280
5495
|
text: String,
|
|
5281
5496
|
clickable: Boolean,
|
|
5497
|
+
...makeComponentProps(),
|
|
5282
5498
|
...makeThemeProps()
|
|
5283
5499
|
},
|
|
5284
5500
|
setup(props, _ref) {
|
|
@@ -5288,7 +5504,8 @@ const VLabel = genericComponent()({
|
|
|
5288
5504
|
useRender(() => createVNode("label", {
|
|
5289
5505
|
"class": ['v-label', {
|
|
5290
5506
|
'v-label--clickable': props.clickable
|
|
5291
|
-
}]
|
|
5507
|
+
}, props.class],
|
|
5508
|
+
"style": props.style
|
|
5292
5509
|
}, [props.text, slots.default?.()]));
|
|
5293
5510
|
return {};
|
|
5294
5511
|
}
|
|
@@ -5297,7 +5514,8 @@ const VLabel = genericComponent()({
|
|
|
5297
5514
|
const VFieldLabel = genericComponent()({
|
|
5298
5515
|
name: 'VFieldLabel',
|
|
5299
5516
|
props: {
|
|
5300
|
-
floating: Boolean
|
|
5517
|
+
floating: Boolean,
|
|
5518
|
+
...makeComponentProps()
|
|
5301
5519
|
},
|
|
5302
5520
|
setup(props, _ref) {
|
|
5303
5521
|
let {
|
|
@@ -5306,7 +5524,8 @@ const VFieldLabel = genericComponent()({
|
|
|
5306
5524
|
useRender(() => createVNode(VLabel, {
|
|
5307
5525
|
"class": ['v-field-label', {
|
|
5308
5526
|
'v-field-label--floating': props.floating
|
|
5309
|
-
}],
|
|
5527
|
+
}, props.class],
|
|
5528
|
+
"style": props.style,
|
|
5310
5529
|
"aria-hidden": props.floating || undefined
|
|
5311
5530
|
}, slots));
|
|
5312
5531
|
return {};
|
|
@@ -5346,7 +5565,7 @@ function useFocus(props) {
|
|
|
5346
5565
|
|
|
5347
5566
|
// Types
|
|
5348
5567
|
|
|
5349
|
-
const allowedVariants$1 = ['underlined', 'outlined', 'filled', 'solo', 'plain'];
|
|
5568
|
+
const allowedVariants$1 = ['underlined', 'outlined', 'filled', 'solo', 'solo-inverted', 'solo-filled', 'plain'];
|
|
5350
5569
|
const makeVFieldProps = propsFactory({
|
|
5351
5570
|
appendInnerIcon: IconValue,
|
|
5352
5571
|
bgColor: String,
|
|
@@ -5357,9 +5576,11 @@ const makeVFieldProps = propsFactory({
|
|
|
5357
5576
|
},
|
|
5358
5577
|
active: Boolean,
|
|
5359
5578
|
color: String,
|
|
5579
|
+
baseColor: String,
|
|
5360
5580
|
dirty: Boolean,
|
|
5361
5581
|
disabled: Boolean,
|
|
5362
5582
|
error: Boolean,
|
|
5583
|
+
flat: Boolean,
|
|
5363
5584
|
label: String,
|
|
5364
5585
|
persistentClear: Boolean,
|
|
5365
5586
|
prependInnerIcon: IconValue,
|
|
@@ -5373,8 +5594,10 @@ const makeVFieldProps = propsFactory({
|
|
|
5373
5594
|
'onClick:clear': EventProp(),
|
|
5374
5595
|
'onClick:appendInner': EventProp(),
|
|
5375
5596
|
'onClick:prependInner': EventProp(),
|
|
5376
|
-
...
|
|
5377
|
-
...makeLoaderProps()
|
|
5597
|
+
...makeComponentProps(),
|
|
5598
|
+
...makeLoaderProps(),
|
|
5599
|
+
...makeRoundedProps(),
|
|
5600
|
+
...makeThemeProps()
|
|
5378
5601
|
}, 'v-field');
|
|
5379
5602
|
const VField = genericComponent()({
|
|
5380
5603
|
name: 'VField',
|
|
@@ -5409,6 +5632,9 @@ const VField = genericComponent()({
|
|
|
5409
5632
|
const {
|
|
5410
5633
|
InputIcon
|
|
5411
5634
|
} = useInputIcon(props);
|
|
5635
|
+
const {
|
|
5636
|
+
roundedClasses
|
|
5637
|
+
} = useRounded(props);
|
|
5412
5638
|
const isActive = computed(() => props.dirty || props.active);
|
|
5413
5639
|
const hasLabel = computed(() => !props.singleLine && !!(props.label || slots.label));
|
|
5414
5640
|
const uid = getUid();
|
|
@@ -5425,7 +5651,7 @@ const VField = genericComponent()({
|
|
|
5425
5651
|
textColorClasses,
|
|
5426
5652
|
textColorStyles
|
|
5427
5653
|
} = useTextColor(computed(() => {
|
|
5428
|
-
return
|
|
5654
|
+
return props.error || props.disabled ? undefined : isActive.value && isFocused.value ? props.color : props.baseColor;
|
|
5429
5655
|
}));
|
|
5430
5656
|
watch(isActive, val => {
|
|
5431
5657
|
if (hasLabel.value) {
|
|
@@ -5494,6 +5720,7 @@ const VField = genericComponent()({
|
|
|
5494
5720
|
'v-field--disabled': props.disabled,
|
|
5495
5721
|
'v-field--dirty': props.dirty,
|
|
5496
5722
|
'v-field--error': props.error,
|
|
5723
|
+
'v-field--flat': props.flat,
|
|
5497
5724
|
'v-field--has-background': !!props.bgColor,
|
|
5498
5725
|
'v-field--persistent-clear': props.persistentClear,
|
|
5499
5726
|
'v-field--prepended': hasPrepend,
|
|
@@ -5501,8 +5728,8 @@ const VField = genericComponent()({
|
|
|
5501
5728
|
'v-field--single-line': props.singleLine,
|
|
5502
5729
|
'v-field--no-label': !label,
|
|
5503
5730
|
[`v-field--variant-${props.variant}`]: true
|
|
5504
|
-
}, themeClasses.value, backgroundColorClasses.value, focusClasses.value, loaderClasses.value],
|
|
5505
|
-
"style": [backgroundColorStyles.value, textColorStyles.value],
|
|
5731
|
+
}, themeClasses.value, backgroundColorClasses.value, focusClasses.value, loaderClasses.value, roundedClasses.value, props.class],
|
|
5732
|
+
"style": [backgroundColorStyles.value, textColorStyles.value, props.style],
|
|
5506
5733
|
"onClick": onClick
|
|
5507
5734
|
}, attrs), [createVNode("div", {
|
|
5508
5735
|
"class": "v-field__overlay"
|
|
@@ -5521,7 +5748,7 @@ const VField = genericComponent()({
|
|
|
5521
5748
|
}, null), slots['prepend-inner']?.(slotProps.value)]), createVNode("div", {
|
|
5522
5749
|
"class": "v-field__field",
|
|
5523
5750
|
"data-no-activator": ""
|
|
5524
|
-
}, [['solo', 'filled'].includes(props.variant) && hasLabel.value && createVNode(VFieldLabel, {
|
|
5751
|
+
}, [['filled', 'solo', 'solo-inverted', 'solo-filled'].includes(props.variant) && hasLabel.value && createVNode(VFieldLabel, {
|
|
5525
5752
|
"key": "floating-label",
|
|
5526
5753
|
"ref": floatingLabelRef,
|
|
5527
5754
|
"class": [textColorClasses.value],
|
|
@@ -5590,7 +5817,7 @@ const VField = genericComponent()({
|
|
|
5590
5817
|
});
|
|
5591
5818
|
// TODO: this is kinda slow, might be better to implicitly inherit props instead
|
|
5592
5819
|
function filterFieldProps(attrs) {
|
|
5593
|
-
const keys = Object.keys(VField.props).filter(k => !isOn(k));
|
|
5820
|
+
const keys = Object.keys(VField.props).filter(k => !isOn(k) && k !== 'class' && k !== 'style');
|
|
5594
5821
|
return pick(attrs, keys);
|
|
5595
5822
|
}
|
|
5596
5823
|
|
|
@@ -5605,6 +5832,7 @@ const VMessages = genericComponent()({
|
|
|
5605
5832
|
type: [Array, String],
|
|
5606
5833
|
default: () => []
|
|
5607
5834
|
},
|
|
5835
|
+
...makeComponentProps(),
|
|
5608
5836
|
...makeTransitionProps({
|
|
5609
5837
|
transition: {
|
|
5610
5838
|
component: VSlideYTransition,
|
|
@@ -5625,8 +5853,8 @@ const VMessages = genericComponent()({
|
|
|
5625
5853
|
useRender(() => createVNode(MaybeTransition, {
|
|
5626
5854
|
"transition": props.transition,
|
|
5627
5855
|
"tag": "div",
|
|
5628
|
-
"class": ['v-messages', textColorClasses.value],
|
|
5629
|
-
"style": textColorStyles.value,
|
|
5856
|
+
"class": ['v-messages', textColorClasses.value, props.class],
|
|
5857
|
+
"style": [textColorStyles.value, props.style],
|
|
5630
5858
|
"role": "alert",
|
|
5631
5859
|
"aria-live": "polite"
|
|
5632
5860
|
}, {
|
|
@@ -5922,6 +6150,7 @@ const makeVInputProps = propsFactory({
|
|
|
5922
6150
|
},
|
|
5923
6151
|
'onClick:prepend': EventProp(),
|
|
5924
6152
|
'onClick:append': EventProp(),
|
|
6153
|
+
...makeComponentProps(),
|
|
5925
6154
|
...makeDensityProps(),
|
|
5926
6155
|
...makeValidationProps()
|
|
5927
6156
|
}, 'v-input');
|
|
@@ -5989,7 +6218,8 @@ const VInput = genericComponent()({
|
|
|
5989
6218
|
const hasMessages = messages.value.length > 0;
|
|
5990
6219
|
const hasDetails = !props.hideDetails || props.hideDetails === 'auto' && (hasMessages || !!slots.details);
|
|
5991
6220
|
return createVNode("div", {
|
|
5992
|
-
"class": ['v-input', `v-input--${props.direction}`, densityClasses.value, validationClasses.value]
|
|
6221
|
+
"class": ['v-input', `v-input--${props.direction}`, densityClasses.value, validationClasses.value, props.class],
|
|
6222
|
+
"style": props.style
|
|
5993
6223
|
}, [hasPrepend && createVNode("div", {
|
|
5994
6224
|
"key": "prepend",
|
|
5995
6225
|
"class": "v-input__prepend"
|
|
@@ -6032,6 +6262,7 @@ const VCounter = genericComponent()({
|
|
|
6032
6262
|
type: [Number, String],
|
|
6033
6263
|
default: 0
|
|
6034
6264
|
},
|
|
6265
|
+
...makeComponentProps(),
|
|
6035
6266
|
...makeTransitionProps({
|
|
6036
6267
|
transition: {
|
|
6037
6268
|
component: VSlideYTransition
|
|
@@ -6049,7 +6280,8 @@ const VCounter = genericComponent()({
|
|
|
6049
6280
|
"transition": props.transition
|
|
6050
6281
|
}, {
|
|
6051
6282
|
default: () => [withDirectives(createVNode("div", {
|
|
6052
|
-
"class":
|
|
6283
|
+
"class": ['v-counter', props.class],
|
|
6284
|
+
"style": props.style
|
|
6053
6285
|
}, [slots.default ? slots.default({
|
|
6054
6286
|
counter: counter.value,
|
|
6055
6287
|
max: props.max,
|
|
@@ -6252,7 +6484,8 @@ const VTextField = genericComponent()({
|
|
|
6252
6484
|
'v-text-field--prefixed': props.prefix,
|
|
6253
6485
|
'v-text-field--suffixed': props.suffix,
|
|
6254
6486
|
'v-text-field--flush-details': ['plain', 'underlined'].includes(props.variant)
|
|
6255
|
-
}]
|
|
6487
|
+
}, props.class],
|
|
6488
|
+
"style": props.style
|
|
6256
6489
|
}, rootAttrs, inputProps, {
|
|
6257
6490
|
"focused": isFocused.value
|
|
6258
6491
|
}), {
|
|
@@ -6368,6 +6601,7 @@ const VSelectionControlGroup = genericComponent()({
|
|
|
6368
6601
|
type: String,
|
|
6369
6602
|
default: 'VSelectionControl'
|
|
6370
6603
|
},
|
|
6604
|
+
...makeComponentProps(),
|
|
6371
6605
|
...makeSelectionControlGroupProps()
|
|
6372
6606
|
},
|
|
6373
6607
|
emits: {
|
|
@@ -6415,7 +6649,8 @@ const VSelectionControlGroup = genericComponent()({
|
|
|
6415
6649
|
useRender(() => createVNode("div", {
|
|
6416
6650
|
"class": ['v-selection-control-group', {
|
|
6417
6651
|
'v-selection-control-group--inline': props.inline
|
|
6418
|
-
}],
|
|
6652
|
+
}, props.class],
|
|
6653
|
+
"style": props.style,
|
|
6419
6654
|
"role": props.type === 'radio' ? 'radiogroup' : undefined
|
|
6420
6655
|
}, [slots.default?.()]));
|
|
6421
6656
|
return {};
|
|
@@ -6429,6 +6664,7 @@ const makeSelectionControlProps = propsFactory({
|
|
|
6429
6664
|
trueValue: null,
|
|
6430
6665
|
falseValue: null,
|
|
6431
6666
|
value: null,
|
|
6667
|
+
...makeComponentProps(),
|
|
6432
6668
|
...makeSelectionControlGroupProps()
|
|
6433
6669
|
}, 'v-selection-control');
|
|
6434
6670
|
function useSelectionControl(props) {
|
|
@@ -6543,8 +6779,10 @@ const VSelectionControl = genericComponent()({
|
|
|
6543
6779
|
'v-selection-control--focused': isFocused.value,
|
|
6544
6780
|
'v-selection-control--focus-visible': isFocusVisible.value,
|
|
6545
6781
|
'v-selection-control--inline': props.inline
|
|
6546
|
-
}, densityClasses.value]
|
|
6547
|
-
}, rootAttrs
|
|
6782
|
+
}, densityClasses.value, props.class]
|
|
6783
|
+
}, rootAttrs, {
|
|
6784
|
+
"style": props.style
|
|
6785
|
+
}), [createVNode("div", {
|
|
6548
6786
|
"class": ['v-selection-control__wrapper', textColorClasses.value],
|
|
6549
6787
|
"style": textColorStyles.value
|
|
6550
6788
|
}, [slots.default?.(), withDirectives(createVNode("div", {
|
|
@@ -6626,7 +6864,8 @@ const VCheckboxBtn = genericComponent()({
|
|
|
6626
6864
|
useRender(() => createVNode(VSelectionControl, mergeProps(props, {
|
|
6627
6865
|
"modelValue": model.value,
|
|
6628
6866
|
"onUpdate:modelValue": [$event => model.value = $event, onChange],
|
|
6629
|
-
"class":
|
|
6867
|
+
"class": ['v-checkbox-btn', props.class],
|
|
6868
|
+
"style": props.style,
|
|
6630
6869
|
"type": "checkbox",
|
|
6631
6870
|
"inline": true,
|
|
6632
6871
|
"falseIcon": falseIcon.value,
|
|
@@ -6666,10 +6905,11 @@ const VCheckbox = genericComponent()({
|
|
|
6666
6905
|
const [inputProps, _1] = VInput.filterProps(props);
|
|
6667
6906
|
const [checkboxProps, _2] = VCheckboxBtn.filterProps(props);
|
|
6668
6907
|
return createVNode(VInput, mergeProps({
|
|
6669
|
-
"class":
|
|
6908
|
+
"class": ['v-checkbox', props.class]
|
|
6670
6909
|
}, inputAttrs, inputProps, {
|
|
6671
6910
|
"id": id.value,
|
|
6672
|
-
"focused": isFocused.value
|
|
6911
|
+
"focused": isFocused.value,
|
|
6912
|
+
"style": props.style
|
|
6673
6913
|
}), {
|
|
6674
6914
|
...slots,
|
|
6675
6915
|
default: _ref2 => {
|
|
@@ -6700,6 +6940,7 @@ const makeVAvatarProps = propsFactory({
|
|
|
6700
6940
|
end: Boolean,
|
|
6701
6941
|
icon: IconValue,
|
|
6702
6942
|
image: String,
|
|
6943
|
+
...makeComponentProps(),
|
|
6703
6944
|
...makeDensityProps(),
|
|
6704
6945
|
...makeRoundedProps(),
|
|
6705
6946
|
...makeSizeProps(),
|
|
@@ -6738,8 +6979,8 @@ const VAvatar = genericComponent()({
|
|
|
6738
6979
|
"class": ['v-avatar', {
|
|
6739
6980
|
'v-avatar--start': props.start,
|
|
6740
6981
|
'v-avatar--end': props.end
|
|
6741
|
-
}, themeClasses.value, colorClasses.value, densityClasses.value, roundedClasses.value, sizeClasses.value, variantClasses.value],
|
|
6742
|
-
"style": [colorStyles.value, sizeStyles.value]
|
|
6982
|
+
}, themeClasses.value, colorClasses.value, densityClasses.value, roundedClasses.value, sizeClasses.value, variantClasses.value, props.class],
|
|
6983
|
+
"style": [colorStyles.value, sizeStyles.value, props.style]
|
|
6743
6984
|
}, {
|
|
6744
6985
|
default: () => [props.image ? createVNode(VImg, {
|
|
6745
6986
|
"key": "image",
|
|
@@ -6767,6 +7008,7 @@ const VChipGroup = genericComponent()({
|
|
|
6767
7008
|
type: Function,
|
|
6768
7009
|
default: deepEqual
|
|
6769
7010
|
},
|
|
7011
|
+
...makeComponentProps(),
|
|
6770
7012
|
...makeGroupProps({
|
|
6771
7013
|
selectedClass: 'v-chip--selected'
|
|
6772
7014
|
}),
|
|
@@ -6804,7 +7046,8 @@ const VChipGroup = genericComponent()({
|
|
|
6804
7046
|
useRender(() => createVNode(props.tag, {
|
|
6805
7047
|
"class": ['v-chip-group', {
|
|
6806
7048
|
'v-chip-group--column': props.column
|
|
6807
|
-
}, themeClasses.value]
|
|
7049
|
+
}, themeClasses.value, props.class],
|
|
7050
|
+
"style": props.style
|
|
6808
7051
|
}, {
|
|
6809
7052
|
default: () => [slots.default?.({
|
|
6810
7053
|
isSelected,
|
|
@@ -6818,8 +7061,6 @@ const VChipGroup = genericComponent()({
|
|
|
6818
7061
|
}
|
|
6819
7062
|
});
|
|
6820
7063
|
|
|
6821
|
-
// Types
|
|
6822
|
-
|
|
6823
7064
|
const VChip = genericComponent()({
|
|
6824
7065
|
name: 'VChip',
|
|
6825
7066
|
directives: {
|
|
@@ -6864,6 +7105,7 @@ const VChip = genericComponent()({
|
|
|
6864
7105
|
onClick: EventProp(),
|
|
6865
7106
|
onClickOnce: EventProp(),
|
|
6866
7107
|
...makeBorderProps(),
|
|
7108
|
+
...makeComponentProps(),
|
|
6867
7109
|
...makeDensityProps(),
|
|
6868
7110
|
...makeElevationProps(),
|
|
6869
7111
|
...makeGroupItemProps(),
|
|
@@ -6956,8 +7198,8 @@ const VChip = genericComponent()({
|
|
|
6956
7198
|
'v-chip--link': isClickable.value,
|
|
6957
7199
|
'v-chip--filter': hasFilter,
|
|
6958
7200
|
'v-chip--pill': props.pill
|
|
6959
|
-
}, themeClasses.value, borderClasses.value, hasColor ? colorClasses.value : undefined, densityClasses.value, elevationClasses.value, roundedClasses.value, sizeClasses.value, variantClasses.value, group?.selectedClass.value],
|
|
6960
|
-
"style": [hasColor ? colorStyles.value : undefined],
|
|
7201
|
+
}, themeClasses.value, borderClasses.value, hasColor ? colorClasses.value : undefined, densityClasses.value, elevationClasses.value, roundedClasses.value, sizeClasses.value, variantClasses.value, group?.selectedClass.value, props.class],
|
|
7202
|
+
"style": [hasColor ? colorStyles.value : undefined, props.style],
|
|
6961
7203
|
"disabled": props.disabled || undefined,
|
|
6962
7204
|
"draggable": props.draggable,
|
|
6963
7205
|
"href": link.href.value,
|
|
@@ -7066,6 +7308,7 @@ const VDivider = genericComponent()({
|
|
|
7066
7308
|
length: [Number, String],
|
|
7067
7309
|
thickness: [Number, String],
|
|
7068
7310
|
vertical: Boolean,
|
|
7311
|
+
...makeComponentProps(),
|
|
7069
7312
|
...makeThemeProps()
|
|
7070
7313
|
},
|
|
7071
7314
|
setup(props, _ref) {
|
|
@@ -7094,8 +7337,8 @@ const VDivider = genericComponent()({
|
|
|
7094
7337
|
'v-divider': true,
|
|
7095
7338
|
'v-divider--inset': props.inset,
|
|
7096
7339
|
'v-divider--vertical': props.vertical
|
|
7097
|
-
}, themeClasses.value, textColorClasses.value],
|
|
7098
|
-
"style": [dividerStyles.value, textColorStyles.value],
|
|
7340
|
+
}, themeClasses.value, textColorClasses.value, props.class],
|
|
7341
|
+
"style": [dividerStyles.value, textColorStyles.value, props.style],
|
|
7099
7342
|
"aria-orientation": !attrs.role || attrs.role === 'separator' ? props.vertical ? 'vertical' : 'horizontal' : undefined,
|
|
7100
7343
|
"role": `${attrs.role || 'separator'}`
|
|
7101
7344
|
}, null));
|
|
@@ -7594,6 +7837,7 @@ const makeVListGroupProps = propsFactory({
|
|
|
7594
7837
|
fluid: Boolean,
|
|
7595
7838
|
subgroup: Boolean,
|
|
7596
7839
|
value: null,
|
|
7840
|
+
...makeComponentProps(),
|
|
7597
7841
|
...makeTagProps()
|
|
7598
7842
|
}, 'v-list-group');
|
|
7599
7843
|
const VListGroup = genericComponent()({
|
|
@@ -7642,7 +7886,8 @@ const VListGroup = genericComponent()({
|
|
|
7642
7886
|
'v-list-group--fluid': props.fluid,
|
|
7643
7887
|
'v-list-group--subgroup': props.subgroup,
|
|
7644
7888
|
'v-list-group--open': isOpen.value
|
|
7645
|
-
}]
|
|
7889
|
+
}, props.class],
|
|
7890
|
+
"style": props.style
|
|
7646
7891
|
}, {
|
|
7647
7892
|
default: () => [slots.activator && createVNode(VDefaultsProvider, {
|
|
7648
7893
|
"defaults": activatorDefaults.value
|
|
@@ -7709,6 +7954,7 @@ const VListItem = genericComponent()({
|
|
|
7709
7954
|
onClick: EventProp(),
|
|
7710
7955
|
onClickOnce: EventProp(),
|
|
7711
7956
|
...makeBorderProps(),
|
|
7957
|
+
...makeComponentProps(),
|
|
7712
7958
|
...makeDensityProps(),
|
|
7713
7959
|
...makeDimensionProps(),
|
|
7714
7960
|
...makeElevationProps(),
|
|
@@ -7819,8 +8065,8 @@ const VListItem = genericComponent()({
|
|
|
7819
8065
|
'v-list-item--nav': props.nav,
|
|
7820
8066
|
'v-list-item--prepend': !hasPrepend && list?.hasPrepend.value,
|
|
7821
8067
|
[`${props.activeClass}`]: props.activeClass && isActive.value
|
|
7822
|
-
}, themeClasses.value, borderClasses.value, hasColor ? colorClasses.value : undefined, densityClasses.value, elevationClasses.value, lineClasses.value, roundedClasses.value, variantClasses.value],
|
|
7823
|
-
"style": [hasColor ? colorStyles.value : undefined, dimensionStyles.value],
|
|
8068
|
+
}, themeClasses.value, borderClasses.value, hasColor ? colorClasses.value : undefined, densityClasses.value, elevationClasses.value, lineClasses.value, roundedClasses.value, variantClasses.value, props.class],
|
|
8069
|
+
"style": [hasColor ? colorStyles.value : undefined, dimensionStyles.value, props.style],
|
|
7824
8070
|
"href": link.href.value,
|
|
7825
8071
|
"tabindex": isClickable.value ? 0 : undefined,
|
|
7826
8072
|
"onClick": onClick,
|
|
@@ -7913,6 +8159,7 @@ const VListSubheader = genericComponent()({
|
|
|
7913
8159
|
inset: Boolean,
|
|
7914
8160
|
sticky: Boolean,
|
|
7915
8161
|
title: String,
|
|
8162
|
+
...makeComponentProps(),
|
|
7916
8163
|
...makeTagProps()
|
|
7917
8164
|
},
|
|
7918
8165
|
setup(props, _ref) {
|
|
@@ -7929,10 +8176,10 @@ const VListSubheader = genericComponent()({
|
|
|
7929
8176
|
"class": ['v-list-subheader', {
|
|
7930
8177
|
'v-list-subheader--inset': props.inset,
|
|
7931
8178
|
'v-list-subheader--sticky': props.sticky
|
|
7932
|
-
}, textColorClasses.value],
|
|
7933
|
-
"style": {
|
|
8179
|
+
}, textColorClasses.value, props.class],
|
|
8180
|
+
"style": [{
|
|
7934
8181
|
textColorStyles
|
|
7935
|
-
}
|
|
8182
|
+
}, props.style]
|
|
7936
8183
|
}, {
|
|
7937
8184
|
default: () => [hasText && createVNode("div", {
|
|
7938
8185
|
"class": "v-list-subheader__text"
|
|
@@ -8152,6 +8399,7 @@ const VList = genericComponent()({
|
|
|
8152
8399
|
openStrategy: 'list'
|
|
8153
8400
|
}),
|
|
8154
8401
|
...makeBorderProps(),
|
|
8402
|
+
...makeComponentProps(),
|
|
8155
8403
|
...makeDensityProps(),
|
|
8156
8404
|
...makeDimensionProps(),
|
|
8157
8405
|
...makeElevationProps(),
|
|
@@ -8263,8 +8511,8 @@ const VList = genericComponent()({
|
|
|
8263
8511
|
"class": ['v-list', {
|
|
8264
8512
|
'v-list--disabled': props.disabled,
|
|
8265
8513
|
'v-list--nav': props.nav
|
|
8266
|
-
}, themeClasses.value, backgroundColorClasses.value, borderClasses.value, densityClasses.value, elevationClasses.value, lineClasses.value, roundedClasses.value],
|
|
8267
|
-
"style": [backgroundColorStyles.value, dimensionStyles.value],
|
|
8514
|
+
}, themeClasses.value, backgroundColorClasses.value, borderClasses.value, densityClasses.value, elevationClasses.value, lineClasses.value, roundedClasses.value, props.class],
|
|
8515
|
+
"style": [backgroundColorStyles.value, dimensionStyles.value, props.style],
|
|
8268
8516
|
"role": "listbox",
|
|
8269
8517
|
"aria-activedescendant": undefined,
|
|
8270
8518
|
"onFocusin": onFocusin,
|
|
@@ -8292,6 +8540,7 @@ const VListItemAction = genericComponent()({
|
|
|
8292
8540
|
props: {
|
|
8293
8541
|
start: Boolean,
|
|
8294
8542
|
end: Boolean,
|
|
8543
|
+
...makeComponentProps(),
|
|
8295
8544
|
...makeTagProps()
|
|
8296
8545
|
},
|
|
8297
8546
|
setup(props, _ref) {
|
|
@@ -8302,7 +8551,8 @@ const VListItemAction = genericComponent()({
|
|
|
8302
8551
|
"class": ['v-list-item-action', {
|
|
8303
8552
|
'v-list-item-action--start': props.start,
|
|
8304
8553
|
'v-list-item-action--end': props.end
|
|
8305
|
-
}]
|
|
8554
|
+
}, props.class],
|
|
8555
|
+
"style": props.style
|
|
8306
8556
|
}, slots));
|
|
8307
8557
|
return {};
|
|
8308
8558
|
}
|
|
@@ -8313,6 +8563,7 @@ const VListItemMedia = genericComponent()({
|
|
|
8313
8563
|
props: {
|
|
8314
8564
|
start: Boolean,
|
|
8315
8565
|
end: Boolean,
|
|
8566
|
+
...makeComponentProps(),
|
|
8316
8567
|
...makeTagProps()
|
|
8317
8568
|
},
|
|
8318
8569
|
setup(props, _ref) {
|
|
@@ -8324,7 +8575,8 @@ const VListItemMedia = genericComponent()({
|
|
|
8324
8575
|
"class": ['v-list-item-media', {
|
|
8325
8576
|
'v-list-item-media--start': props.start,
|
|
8326
8577
|
'v-list-item-media--end': props.end
|
|
8327
|
-
}]
|
|
8578
|
+
}, props.class],
|
|
8579
|
+
"style": props.style
|
|
8328
8580
|
}, slots);
|
|
8329
8581
|
});
|
|
8330
8582
|
return {};
|
|
@@ -9565,6 +9817,7 @@ const makeVOverlayProps = propsFactory({
|
|
|
9565
9817
|
default: 2000
|
|
9566
9818
|
},
|
|
9567
9819
|
...makeActivatorProps(),
|
|
9820
|
+
...makeComponentProps(),
|
|
9568
9821
|
...makeDimensionProps(),
|
|
9569
9822
|
...makeLazyProps(),
|
|
9570
9823
|
...makeLocationStrategyProps(),
|
|
@@ -9732,10 +9985,10 @@ const VOverlay = genericComponent()({
|
|
|
9732
9985
|
'v-overlay--absolute': props.absolute || props.contained,
|
|
9733
9986
|
'v-overlay--active': isActive.value,
|
|
9734
9987
|
'v-overlay--contained': props.contained
|
|
9735
|
-
}, themeClasses.value, rtlClasses.value],
|
|
9988
|
+
}, themeClasses.value, rtlClasses.value, props.class],
|
|
9736
9989
|
"style": [stackStyles.value, {
|
|
9737
9990
|
top: convertToUnit(top.value)
|
|
9738
|
-
}],
|
|
9991
|
+
}, props.style],
|
|
9739
9992
|
"ref": root
|
|
9740
9993
|
}, scopeId, attrs), [createVNode(Scrim, mergeProps({
|
|
9741
9994
|
"color": scrimColor,
|
|
@@ -9841,7 +10094,8 @@ const VMenu = genericComponent()({
|
|
|
9841
10094
|
const [overlayProps] = VOverlay.filterProps(props);
|
|
9842
10095
|
return createVNode(VOverlay, mergeProps({
|
|
9843
10096
|
"ref": overlay,
|
|
9844
|
-
"class": ['v-menu']
|
|
10097
|
+
"class": ['v-menu', props.class],
|
|
10098
|
+
"style": props.style
|
|
9845
10099
|
}, overlayProps, {
|
|
9846
10100
|
"modelValue": isActive.value,
|
|
9847
10101
|
"onUpdate:modelValue": $event => isActive.value = $event,
|
|
@@ -10060,7 +10314,8 @@ const VSelect = genericComponent()({
|
|
|
10060
10314
|
'v-select--chips': !!props.chips,
|
|
10061
10315
|
[`v-select--${props.multiple ? 'multiple' : 'single'}`]: true,
|
|
10062
10316
|
'v-select--selected': model.value.length
|
|
10063
|
-
}],
|
|
10317
|
+
}, props.class],
|
|
10318
|
+
"style": props.style,
|
|
10064
10319
|
"appendInnerIcon": props.menuIcon,
|
|
10065
10320
|
"readonly": true,
|
|
10066
10321
|
"placeholder": placeholder,
|
|
@@ -10503,7 +10758,8 @@ const VAutocomplete = genericComponent()({
|
|
|
10503
10758
|
'v-autocomplete--selecting-index': selectionIndex.value > -1,
|
|
10504
10759
|
[`v-autocomplete--${props.multiple ? 'multiple' : 'single'}`]: true,
|
|
10505
10760
|
'v-autocomplete--selection-slot': !!slots.selection
|
|
10506
|
-
}],
|
|
10761
|
+
}, props.class],
|
|
10762
|
+
"style": props.style,
|
|
10507
10763
|
"appendInnerIcon": props.menuIcon,
|
|
10508
10764
|
"readonly": props.readonly,
|
|
10509
10765
|
"placeholder": isDirty ? undefined : props.placeholder,
|
|
@@ -10617,8 +10873,6 @@ const VAutocomplete = genericComponent()({
|
|
|
10617
10873
|
}
|
|
10618
10874
|
});
|
|
10619
10875
|
|
|
10620
|
-
// Types
|
|
10621
|
-
|
|
10622
10876
|
const VBadge = genericComponent()({
|
|
10623
10877
|
name: 'VBadge',
|
|
10624
10878
|
inheritAttrs: false,
|
|
@@ -10642,6 +10896,7 @@ const VBadge = genericComponent()({
|
|
|
10642
10896
|
offsetX: [Number, String],
|
|
10643
10897
|
offsetY: [Number, String],
|
|
10644
10898
|
textColor: String,
|
|
10899
|
+
...makeComponentProps(),
|
|
10645
10900
|
...makeLocationProps({
|
|
10646
10901
|
location: 'top end'
|
|
10647
10902
|
}),
|
|
@@ -10686,8 +10941,10 @@ const VBadge = genericComponent()({
|
|
|
10686
10941
|
'v-badge--dot': props.dot,
|
|
10687
10942
|
'v-badge--floating': props.floating,
|
|
10688
10943
|
'v-badge--inline': props.inline
|
|
10689
|
-
}]
|
|
10690
|
-
}, attrs
|
|
10944
|
+
}, props.class]
|
|
10945
|
+
}, attrs, {
|
|
10946
|
+
"style": props.style
|
|
10947
|
+
}), {
|
|
10691
10948
|
default: () => [createVNode("div", {
|
|
10692
10949
|
"class": "v-badge__wrapper"
|
|
10693
10950
|
}, [ctx.slots.default?.(), createVNode(MaybeTransition, {
|
|
@@ -10714,7 +10971,8 @@ const VBannerActions = genericComponent()({
|
|
|
10714
10971
|
name: 'VBannerActions',
|
|
10715
10972
|
props: {
|
|
10716
10973
|
color: String,
|
|
10717
|
-
density: String
|
|
10974
|
+
density: String,
|
|
10975
|
+
...makeComponentProps()
|
|
10718
10976
|
},
|
|
10719
10977
|
setup(props, _ref) {
|
|
10720
10978
|
let {
|
|
@@ -10728,7 +10986,8 @@ const VBannerActions = genericComponent()({
|
|
|
10728
10986
|
}
|
|
10729
10987
|
});
|
|
10730
10988
|
useRender(() => createVNode("div", {
|
|
10731
|
-
"class":
|
|
10989
|
+
"class": ['v-banner-actions', props.class],
|
|
10990
|
+
"style": props.style
|
|
10732
10991
|
}, [slots.default?.()]));
|
|
10733
10992
|
return {};
|
|
10734
10993
|
}
|
|
@@ -10749,6 +11008,7 @@ const VBanner = genericComponent()({
|
|
|
10749
11008
|
sticky: Boolean,
|
|
10750
11009
|
text: String,
|
|
10751
11010
|
...makeBorderProps(),
|
|
11011
|
+
...makeComponentProps(),
|
|
10752
11012
|
...makeDensityProps(),
|
|
10753
11013
|
...makeDimensionProps(),
|
|
10754
11014
|
...makeElevationProps(),
|
|
@@ -10806,8 +11066,8 @@ const VBanner = genericComponent()({
|
|
|
10806
11066
|
'v-banner--stacked': props.stacked || mobile.value,
|
|
10807
11067
|
'v-banner--sticky': props.sticky,
|
|
10808
11068
|
[`v-banner--${props.lines}-line`]: !!props.lines
|
|
10809
|
-
}, borderClasses.value, densityClasses.value, elevationClasses.value, positionClasses.value, roundedClasses.value, themeClasses.value],
|
|
10810
|
-
"style": [dimensionStyles.value, locationStyles.value],
|
|
11069
|
+
}, borderClasses.value, densityClasses.value, elevationClasses.value, positionClasses.value, roundedClasses.value, themeClasses.value, props.class],
|
|
11070
|
+
"style": [dimensionStyles.value, locationStyles.value, props.style],
|
|
10811
11071
|
"role": "banner"
|
|
10812
11072
|
}, {
|
|
10813
11073
|
default: () => [hasPrepend && createVNode("div", {
|
|
@@ -10863,6 +11123,7 @@ const VBottomNavigation = genericComponent()({
|
|
|
10863
11123
|
default: true
|
|
10864
11124
|
},
|
|
10865
11125
|
...makeBorderProps(),
|
|
11126
|
+
...makeComponentProps(),
|
|
10866
11127
|
...makeDensityProps(),
|
|
10867
11128
|
...makeElevationProps(),
|
|
10868
11129
|
...makeRoundedProps(),
|
|
@@ -10937,11 +11198,11 @@ const VBottomNavigation = genericComponent()({
|
|
|
10937
11198
|
'v-bottom-navigation--active': isActive.value,
|
|
10938
11199
|
'v-bottom-navigation--grow': props.grow,
|
|
10939
11200
|
'v-bottom-navigation--shift': props.mode === 'shift'
|
|
10940
|
-
}, themeClasses.value, backgroundColorClasses.value, borderClasses.value, densityClasses.value, elevationClasses.value, roundedClasses.value],
|
|
11201
|
+
}, themeClasses.value, backgroundColorClasses.value, borderClasses.value, densityClasses.value, elevationClasses.value, roundedClasses.value, props.class],
|
|
10941
11202
|
"style": [backgroundColorStyles.value, layoutItemStyles.value, {
|
|
10942
11203
|
height: convertToUnit(height.value),
|
|
10943
11204
|
transform: `translateY(${convertToUnit(!isActive.value ? 100 : 0, '%')})`
|
|
10944
|
-
}, ssrBootStyles.value]
|
|
11205
|
+
}, ssrBootStyles.value, props.style]
|
|
10945
11206
|
}, {
|
|
10946
11207
|
default: () => [slots.default && createVNode("div", {
|
|
10947
11208
|
"class": "v-bottom-navigation__content"
|
|
@@ -10955,14 +11216,16 @@ const VBottomNavigation = genericComponent()({
|
|
|
10955
11216
|
const VBreadcrumbsDivider = genericComponent()({
|
|
10956
11217
|
name: 'VBreadcrumbsDivider',
|
|
10957
11218
|
props: {
|
|
10958
|
-
divider: [Number, String]
|
|
11219
|
+
divider: [Number, String],
|
|
11220
|
+
...makeComponentProps()
|
|
10959
11221
|
},
|
|
10960
11222
|
setup(props, _ref) {
|
|
10961
11223
|
let {
|
|
10962
11224
|
slots
|
|
10963
11225
|
} = _ref;
|
|
10964
11226
|
useRender(() => createVNode("li", {
|
|
10965
|
-
"class":
|
|
11227
|
+
"class": ['v-breadcrumbs-divider', props.class],
|
|
11228
|
+
"style": props.style
|
|
10966
11229
|
}, [slots?.default?.() ?? props.divider]));
|
|
10967
11230
|
return {};
|
|
10968
11231
|
}
|
|
@@ -10977,6 +11240,7 @@ const VBreadcrumbsItem = genericComponent()({
|
|
|
10977
11240
|
color: String,
|
|
10978
11241
|
disabled: Boolean,
|
|
10979
11242
|
title: String,
|
|
11243
|
+
...makeComponentProps(),
|
|
10980
11244
|
...makeRouterProps(),
|
|
10981
11245
|
...makeTagProps({
|
|
10982
11246
|
tag: 'li'
|
|
@@ -11002,8 +11266,8 @@ const VBreadcrumbsItem = genericComponent()({
|
|
|
11002
11266
|
'v-breadcrumbs-item--disabled': props.disabled,
|
|
11003
11267
|
'v-breadcrumbs-item--link': link.isLink.value,
|
|
11004
11268
|
[`${props.activeClass}`]: isActive.value && props.activeClass
|
|
11005
|
-
}, textColorClasses.value],
|
|
11006
|
-
"style": [textColorStyles.value],
|
|
11269
|
+
}, textColorClasses.value, props.class],
|
|
11270
|
+
"style": [textColorStyles.value, props.style],
|
|
11007
11271
|
"href": link.href.value,
|
|
11008
11272
|
"aria-current": isActive.value ? 'page' : undefined,
|
|
11009
11273
|
"onClick": link.navigate
|
|
@@ -11034,6 +11298,7 @@ const VBreadcrumbs = genericComponent()({
|
|
|
11034
11298
|
type: Array,
|
|
11035
11299
|
default: () => []
|
|
11036
11300
|
},
|
|
11301
|
+
...makeComponentProps(),
|
|
11037
11302
|
...makeDensityProps(),
|
|
11038
11303
|
...makeRoundedProps(),
|
|
11039
11304
|
...makeTagProps({
|
|
@@ -11079,8 +11344,8 @@ const VBreadcrumbs = genericComponent()({
|
|
|
11079
11344
|
useRender(() => {
|
|
11080
11345
|
const hasPrepend = !!(slots.prepend || props.icon);
|
|
11081
11346
|
return createVNode(props.tag, {
|
|
11082
|
-
"class": ['v-breadcrumbs', backgroundColorClasses.value, densityClasses.value, roundedClasses.value],
|
|
11083
|
-
"style": backgroundColorStyles.value
|
|
11347
|
+
"class": ['v-breadcrumbs', backgroundColorClasses.value, densityClasses.value, roundedClasses.value, props.class],
|
|
11348
|
+
"style": [backgroundColorStyles.value, props.style]
|
|
11084
11349
|
}, {
|
|
11085
11350
|
default: () => [hasPrepend && createVNode("div", {
|
|
11086
11351
|
"key": "prepend",
|
|
@@ -11124,11 +11389,10 @@ const VBreadcrumbs = genericComponent()({
|
|
|
11124
11389
|
}
|
|
11125
11390
|
});
|
|
11126
11391
|
|
|
11127
|
-
|
|
11128
|
-
|
|
11129
|
-
const VCardActions = defineComponent({
|
|
11392
|
+
const VCardActions = genericComponent()({
|
|
11130
11393
|
name: 'VCardActions',
|
|
11131
|
-
|
|
11394
|
+
props: makeComponentProps(),
|
|
11395
|
+
setup(props, _ref) {
|
|
11132
11396
|
let {
|
|
11133
11397
|
slots
|
|
11134
11398
|
} = _ref;
|
|
@@ -11138,7 +11402,8 @@ const VCardActions = defineComponent({
|
|
|
11138
11402
|
}
|
|
11139
11403
|
});
|
|
11140
11404
|
useRender(() => createVNode("div", {
|
|
11141
|
-
"class":
|
|
11405
|
+
"class": ['v-card-actions', props.class],
|
|
11406
|
+
"style": props.style
|
|
11142
11407
|
}, [slots.default?.()]));
|
|
11143
11408
|
return {};
|
|
11144
11409
|
}
|
|
@@ -11148,8 +11413,6 @@ const VCardSubtitle = createSimpleFunctional('v-card-subtitle');
|
|
|
11148
11413
|
|
|
11149
11414
|
const VCardTitle = createSimpleFunctional('v-card-title');
|
|
11150
11415
|
|
|
11151
|
-
// Types
|
|
11152
|
-
|
|
11153
11416
|
const VCardItem = genericComponent()({
|
|
11154
11417
|
name: 'VCardItem',
|
|
11155
11418
|
props: {
|
|
@@ -11159,6 +11422,7 @@ const VCardItem = genericComponent()({
|
|
|
11159
11422
|
prependIcon: IconValue,
|
|
11160
11423
|
subtitle: String,
|
|
11161
11424
|
title: String,
|
|
11425
|
+
...makeComponentProps(),
|
|
11162
11426
|
...makeDensityProps()
|
|
11163
11427
|
},
|
|
11164
11428
|
setup(props, _ref) {
|
|
@@ -11173,7 +11437,8 @@ const VCardItem = genericComponent()({
|
|
|
11173
11437
|
const hasTitle = !!(props.title || slots.title);
|
|
11174
11438
|
const hasSubtitle = !!(props.subtitle || slots.subtitle);
|
|
11175
11439
|
return createVNode("div", {
|
|
11176
|
-
"class":
|
|
11440
|
+
"class": ['v-card-item', props.class],
|
|
11441
|
+
"style": props.style
|
|
11177
11442
|
}, [hasPrepend && createVNode("div", {
|
|
11178
11443
|
"key": "prepend",
|
|
11179
11444
|
"class": "v-card-item__prepend"
|
|
@@ -11255,8 +11520,8 @@ const VCard = genericComponent()({
|
|
|
11255
11520
|
subtitle: String,
|
|
11256
11521
|
text: String,
|
|
11257
11522
|
title: String,
|
|
11258
|
-
...makeThemeProps(),
|
|
11259
11523
|
...makeBorderProps(),
|
|
11524
|
+
...makeComponentProps(),
|
|
11260
11525
|
...makeDensityProps(),
|
|
11261
11526
|
...makeDimensionProps(),
|
|
11262
11527
|
...makeElevationProps(),
|
|
@@ -11266,6 +11531,7 @@ const VCard = genericComponent()({
|
|
|
11266
11531
|
...makeRoundedProps(),
|
|
11267
11532
|
...makeRouterProps(),
|
|
11268
11533
|
...makeTagProps(),
|
|
11534
|
+
...makeThemeProps(),
|
|
11269
11535
|
...makeVariantProps({
|
|
11270
11536
|
variant: 'elevated'
|
|
11271
11537
|
})
|
|
@@ -11326,8 +11592,8 @@ const VCard = genericComponent()({
|
|
|
11326
11592
|
'v-card--flat': props.flat,
|
|
11327
11593
|
'v-card--hover': props.hover && !(props.disabled || props.flat),
|
|
11328
11594
|
'v-card--link': isClickable.value
|
|
11329
|
-
}, themeClasses.value, borderClasses.value, colorClasses.value, densityClasses.value, elevationClasses.value, loaderClasses.value, positionClasses.value, roundedClasses.value, variantClasses.value],
|
|
11330
|
-
"style": [colorStyles.value, dimensionStyles.value, locationStyles.value],
|
|
11595
|
+
}, themeClasses.value, borderClasses.value, colorClasses.value, densityClasses.value, elevationClasses.value, loaderClasses.value, positionClasses.value, roundedClasses.value, variantClasses.value, props.class],
|
|
11596
|
+
"style": [colorStyles.value, dimensionStyles.value, locationStyles.value, props.style],
|
|
11331
11597
|
"href": link.href.value,
|
|
11332
11598
|
"onClick": isClickable.value && link.navigate,
|
|
11333
11599
|
"tabindex": props.disabled ? -1 : undefined
|
|
@@ -11523,6 +11789,7 @@ const makeVWindowProps = propsFactory({
|
|
|
11523
11789
|
mandatory: {
|
|
11524
11790
|
default: 'force'
|
|
11525
11791
|
},
|
|
11792
|
+
...makeComponentProps(),
|
|
11526
11793
|
...makeTagProps(),
|
|
11527
11794
|
...makeThemeProps()
|
|
11528
11795
|
}, 'v-window');
|
|
@@ -11638,7 +11905,8 @@ const VWindow = genericComponent()({
|
|
|
11638
11905
|
"ref": rootRef,
|
|
11639
11906
|
"class": ['v-window', {
|
|
11640
11907
|
'v-window--show-arrows-on-hover': props.showArrows === 'hover'
|
|
11641
|
-
}, themeClasses.value]
|
|
11908
|
+
}, themeClasses.value, props.class],
|
|
11909
|
+
"style": props.style
|
|
11642
11910
|
}, {
|
|
11643
11911
|
default: () => [createVNode("div", {
|
|
11644
11912
|
"class": "v-window__container",
|
|
@@ -11723,10 +11991,10 @@ const VCarousel = genericComponent()({
|
|
|
11723
11991
|
"class": ['v-carousel', {
|
|
11724
11992
|
'v-carousel--hide-delimiter-background': props.hideDelimiterBackground,
|
|
11725
11993
|
'v-carousel--vertical-delimiters': props.verticalDelimiters
|
|
11726
|
-
}],
|
|
11727
|
-
"style": {
|
|
11994
|
+
}, props.class],
|
|
11995
|
+
"style": [{
|
|
11728
11996
|
height: convertToUnit(props.height)
|
|
11729
|
-
},
|
|
11997
|
+
}, props.style],
|
|
11730
11998
|
"continuous": true,
|
|
11731
11999
|
"mandatory": "force",
|
|
11732
12000
|
"showArrows": props.showArrows
|
|
@@ -11792,6 +12060,7 @@ const VWindowItem = genericComponent()({
|
|
|
11792
12060
|
type: [Boolean, String],
|
|
11793
12061
|
default: undefined
|
|
11794
12062
|
},
|
|
12063
|
+
...makeComponentProps(),
|
|
11795
12064
|
...makeGroupItemProps(),
|
|
11796
12065
|
...makeLazyProps()
|
|
11797
12066
|
},
|
|
@@ -11878,7 +12147,8 @@ const VWindowItem = genericComponent()({
|
|
|
11878
12147
|
"disabled": !isBooted.value
|
|
11879
12148
|
}, {
|
|
11880
12149
|
default: () => [withDirectives(createVNode("div", {
|
|
11881
|
-
"class": ['v-window-item', groupItem.selectedClass.value]
|
|
12150
|
+
"class": ['v-window-item', groupItem.selectedClass.value, props.class],
|
|
12151
|
+
"style": props.style
|
|
11882
12152
|
}, [hasContent.value && slots.default?.()]), [[vShow, groupItem.isSelected.value]])]
|
|
11883
12153
|
}));
|
|
11884
12154
|
return {};
|
|
@@ -11891,7 +12161,8 @@ const VCarouselItem = genericComponent()({
|
|
|
11891
12161
|
name: 'VCarouselItem',
|
|
11892
12162
|
inheritAttrs: false,
|
|
11893
12163
|
props: {
|
|
11894
|
-
value: null
|
|
12164
|
+
value: null,
|
|
12165
|
+
...makeComponentProps()
|
|
11895
12166
|
},
|
|
11896
12167
|
setup(props, _ref) {
|
|
11897
12168
|
let {
|
|
@@ -11899,7 +12170,8 @@ const VCarouselItem = genericComponent()({
|
|
|
11899
12170
|
attrs
|
|
11900
12171
|
} = _ref;
|
|
11901
12172
|
useRender(() => createVNode(VWindowItem, {
|
|
11902
|
-
"class":
|
|
12173
|
+
"class": ['v-carousel-item', props.class],
|
|
12174
|
+
"style": props.style,
|
|
11903
12175
|
"value": props.value
|
|
11904
12176
|
}, {
|
|
11905
12177
|
default: () => [createVNode(VImg, attrs, slots)]
|
|
@@ -11912,6 +12184,7 @@ const VCode = createSimpleFunctional('v-code');
|
|
|
11912
12184
|
const makeVSheetProps = propsFactory({
|
|
11913
12185
|
color: String,
|
|
11914
12186
|
...makeBorderProps(),
|
|
12187
|
+
...makeComponentProps(),
|
|
11915
12188
|
...makeDimensionProps(),
|
|
11916
12189
|
...makeElevationProps(),
|
|
11917
12190
|
...makeLocationProps(),
|
|
@@ -11955,8 +12228,8 @@ const VSheet = genericComponent()({
|
|
|
11955
12228
|
roundedClasses
|
|
11956
12229
|
} = useRounded(props);
|
|
11957
12230
|
useRender(() => createVNode(props.tag, {
|
|
11958
|
-
"class": ['v-sheet', themeClasses.value, backgroundColorClasses.value, borderClasses.value, elevationClasses.value, positionClasses.value, roundedClasses.value],
|
|
11959
|
-
"style": [backgroundColorStyles.value, dimensionStyles.value, locationStyles.value]
|
|
12231
|
+
"class": ['v-sheet', themeClasses.value, backgroundColorClasses.value, borderClasses.value, elevationClasses.value, positionClasses.value, roundedClasses.value, props.class],
|
|
12232
|
+
"style": [backgroundColorStyles.value, dimensionStyles.value, locationStyles.value, props.style]
|
|
11960
12233
|
}, slots));
|
|
11961
12234
|
return {};
|
|
11962
12235
|
}
|
|
@@ -11982,7 +12255,8 @@ const VColorPickerCanvas = defineComponent({
|
|
|
11982
12255
|
width: {
|
|
11983
12256
|
type: [Number, String],
|
|
11984
12257
|
default: 300
|
|
11985
|
-
}
|
|
12258
|
+
},
|
|
12259
|
+
...makeComponentProps()
|
|
11986
12260
|
},
|
|
11987
12261
|
emits: {
|
|
11988
12262
|
'update:color': color => true,
|
|
@@ -12127,7 +12401,8 @@ const VColorPickerCanvas = defineComponent({
|
|
|
12127
12401
|
onMounted(() => updateCanvas());
|
|
12128
12402
|
useRender(() => createVNode("div", {
|
|
12129
12403
|
"ref": resizeRef,
|
|
12130
|
-
"class":
|
|
12404
|
+
"class": ['v-color-picker-canvas', props.class],
|
|
12405
|
+
"style": props.style,
|
|
12131
12406
|
"onClick": handleClick,
|
|
12132
12407
|
"onMousedown": handleMouseDown,
|
|
12133
12408
|
"onTouchstart": handleMouseDown
|
|
@@ -12360,7 +12635,8 @@ const VColorPickerEdit = defineComponent({
|
|
|
12360
12635
|
type: Array,
|
|
12361
12636
|
default: () => Object.keys(modes),
|
|
12362
12637
|
validator: v => Array.isArray(v) && v.every(m => Object.keys(modes).includes(m))
|
|
12363
|
-
}
|
|
12638
|
+
},
|
|
12639
|
+
...makeComponentProps()
|
|
12364
12640
|
},
|
|
12365
12641
|
emits: {
|
|
12366
12642
|
'update:color': color => true,
|
|
@@ -12400,7 +12676,8 @@ const VColorPickerEdit = defineComponent({
|
|
|
12400
12676
|
});
|
|
12401
12677
|
});
|
|
12402
12678
|
useRender(() => createVNode("div", {
|
|
12403
|
-
"class":
|
|
12679
|
+
"class": ['v-color-picker-edit', props.class],
|
|
12680
|
+
"style": props.style
|
|
12404
12681
|
}, [inputs.value?.map(props => createVNode(VColorPickerInput, props, null)), enabledModes.value.length > 1 && createVNode(VBtn, {
|
|
12405
12682
|
"icon": "$unfold",
|
|
12406
12683
|
"size": "x-small",
|
|
@@ -12484,11 +12761,33 @@ const makeSliderProps = propsFactory({
|
|
|
12484
12761
|
elevation: 2
|
|
12485
12762
|
})
|
|
12486
12763
|
}, 'slider');
|
|
12764
|
+
const useSteps = props => {
|
|
12765
|
+
const min = computed(() => parseFloat(props.min));
|
|
12766
|
+
const max = computed(() => parseFloat(props.max));
|
|
12767
|
+
const step = computed(() => +props.step > 0 ? parseFloat(props.step) : 0);
|
|
12768
|
+
const decimals = computed(() => Math.max(getDecimals(step.value), getDecimals(min.value)));
|
|
12769
|
+
function roundValue(value) {
|
|
12770
|
+
if (step.value <= 0) return value;
|
|
12771
|
+
const clamped = clamp(value, min.value, max.value);
|
|
12772
|
+
const offset = min.value % step.value;
|
|
12773
|
+
const newValue = Math.round((clamped - offset) / step.value) * step.value + offset;
|
|
12774
|
+
return parseFloat(Math.min(newValue, max.value).toFixed(decimals.value));
|
|
12775
|
+
}
|
|
12776
|
+
return {
|
|
12777
|
+
min,
|
|
12778
|
+
max,
|
|
12779
|
+
step,
|
|
12780
|
+
decimals,
|
|
12781
|
+
roundValue
|
|
12782
|
+
};
|
|
12783
|
+
};
|
|
12487
12784
|
const useSlider = _ref => {
|
|
12488
12785
|
let {
|
|
12489
12786
|
props,
|
|
12490
|
-
|
|
12491
|
-
|
|
12787
|
+
steps,
|
|
12788
|
+
onSliderStart,
|
|
12789
|
+
onSliderMove,
|
|
12790
|
+
onSliderEnd,
|
|
12492
12791
|
getActiveThumb
|
|
12493
12792
|
} = _ref;
|
|
12494
12793
|
const {
|
|
@@ -12502,10 +12801,13 @@ const useSlider = _ref => {
|
|
|
12502
12801
|
}
|
|
12503
12802
|
return hd;
|
|
12504
12803
|
});
|
|
12505
|
-
const
|
|
12506
|
-
|
|
12507
|
-
|
|
12508
|
-
|
|
12804
|
+
const {
|
|
12805
|
+
min,
|
|
12806
|
+
max,
|
|
12807
|
+
step,
|
|
12808
|
+
decimals,
|
|
12809
|
+
roundValue
|
|
12810
|
+
} = steps;
|
|
12509
12811
|
const thumbSize = computed(() => parseInt(props.thumbSize, 10));
|
|
12510
12812
|
const tickSize = computed(() => parseInt(props.tickSize, 10));
|
|
12511
12813
|
const trackSize = computed(() => parseInt(props.trackSize, 10));
|
|
@@ -12519,13 +12821,6 @@ const useSlider = _ref => {
|
|
|
12519
12821
|
const startOffset = ref(0);
|
|
12520
12822
|
const trackContainerRef = ref();
|
|
12521
12823
|
const activeThumbRef = ref();
|
|
12522
|
-
function roundValue(value) {
|
|
12523
|
-
if (step.value <= 0) return value;
|
|
12524
|
-
const clamped = clamp(value, min.value, max.value);
|
|
12525
|
-
const offset = min.value % step.value;
|
|
12526
|
-
const newValue = Math.round((clamped - offset) / step.value) * step.value + offset;
|
|
12527
|
-
return parseFloat(Math.min(newValue, max.value).toFixed(decimals.value));
|
|
12528
|
-
}
|
|
12529
12824
|
function parseMouseMove(e) {
|
|
12530
12825
|
const vertical = props.direction === 'vertical';
|
|
12531
12826
|
const start = vertical ? 'top' : 'left';
|
|
@@ -12542,14 +12837,11 @@ const useSlider = _ref => {
|
|
|
12542
12837
|
if (vertical || horizontalDirection.value === 'rtl') clickPos = 1 - clickPos;
|
|
12543
12838
|
return roundValue(min.value + clickPos * (max.value - min.value));
|
|
12544
12839
|
}
|
|
12545
|
-
let thumbMoved = false;
|
|
12546
12840
|
const handleStop = e => {
|
|
12547
|
-
|
|
12548
|
-
|
|
12549
|
-
|
|
12550
|
-
}
|
|
12841
|
+
onSliderEnd({
|
|
12842
|
+
value: parseMouseMove(e)
|
|
12843
|
+
});
|
|
12551
12844
|
mousePressed.value = false;
|
|
12552
|
-
thumbMoved = false;
|
|
12553
12845
|
startOffset.value = 0;
|
|
12554
12846
|
};
|
|
12555
12847
|
const handleStart = e => {
|
|
@@ -12558,20 +12850,25 @@ const useSlider = _ref => {
|
|
|
12558
12850
|
activeThumbRef.value.focus();
|
|
12559
12851
|
mousePressed.value = true;
|
|
12560
12852
|
if (activeThumbRef.value.contains(e.target)) {
|
|
12561
|
-
thumbMoved = true;
|
|
12562
12853
|
startOffset.value = getOffset(e, activeThumbRef.value, props.direction);
|
|
12563
12854
|
} else {
|
|
12564
12855
|
startOffset.value = 0;
|
|
12565
|
-
|
|
12856
|
+
onSliderMove({
|
|
12857
|
+
value: parseMouseMove(e)
|
|
12858
|
+
});
|
|
12566
12859
|
}
|
|
12860
|
+
onSliderStart({
|
|
12861
|
+
value: parseMouseMove(e)
|
|
12862
|
+
});
|
|
12567
12863
|
};
|
|
12568
12864
|
const moveListenerOptions = {
|
|
12569
12865
|
passive: true,
|
|
12570
12866
|
capture: true
|
|
12571
12867
|
};
|
|
12572
12868
|
function onMouseMove(e) {
|
|
12573
|
-
|
|
12574
|
-
|
|
12869
|
+
onSliderMove({
|
|
12870
|
+
value: parseMouseMove(e)
|
|
12871
|
+
});
|
|
12575
12872
|
}
|
|
12576
12873
|
function onSliderMouseUp(e) {
|
|
12577
12874
|
e.stopPropagation();
|
|
@@ -12699,7 +12996,8 @@ const VSliderThumb = genericComponent()({
|
|
|
12699
12996
|
ripple: {
|
|
12700
12997
|
type: Boolean,
|
|
12701
12998
|
default: true
|
|
12702
|
-
}
|
|
12999
|
+
},
|
|
13000
|
+
...makeComponentProps()
|
|
12703
13001
|
},
|
|
12704
13002
|
emits: {
|
|
12705
13003
|
'update:modelValue': v => true
|
|
@@ -12777,11 +13075,11 @@ const VSliderThumb = genericComponent()({
|
|
|
12777
13075
|
"class": ['v-slider-thumb', {
|
|
12778
13076
|
'v-slider-thumb--focused': props.focused,
|
|
12779
13077
|
'v-slider-thumb--pressed': props.focused && mousePressed.value
|
|
12780
|
-
}],
|
|
12781
|
-
"style": {
|
|
13078
|
+
}, props.class],
|
|
13079
|
+
"style": [{
|
|
12782
13080
|
'--v-slider-thumb-position': positionPercentage,
|
|
12783
13081
|
'--v-slider-thumb-size': convertToUnit(thumbSize.value)
|
|
12784
|
-
},
|
|
13082
|
+
}, props.style],
|
|
12785
13083
|
"role": "slider",
|
|
12786
13084
|
"tabindex": disabled.value ? -1 : 0,
|
|
12787
13085
|
"aria-valuemin": props.min,
|
|
@@ -12827,7 +13125,8 @@ const VSliderTrack = genericComponent()({
|
|
|
12827
13125
|
stop: {
|
|
12828
13126
|
type: Number,
|
|
12829
13127
|
required: true
|
|
12830
|
-
}
|
|
13128
|
+
},
|
|
13129
|
+
...makeComponentProps()
|
|
12831
13130
|
},
|
|
12832
13131
|
emits: {},
|
|
12833
13132
|
setup(props, _ref) {
|
|
@@ -12902,12 +13201,12 @@ const VSliderTrack = genericComponent()({
|
|
|
12902
13201
|
});
|
|
12903
13202
|
useRender(() => {
|
|
12904
13203
|
return createVNode("div", {
|
|
12905
|
-
"class": ['v-slider-track', roundedClasses.value],
|
|
12906
|
-
"style": {
|
|
13204
|
+
"class": ['v-slider-track', roundedClasses.value, props.class],
|
|
13205
|
+
"style": [{
|
|
12907
13206
|
'--v-slider-track-size': convertToUnit(trackSize.value),
|
|
12908
13207
|
'--v-slider-tick-size': convertToUnit(tickSize.value),
|
|
12909
13208
|
direction: !vertical.value ? horizontalDirection.value : undefined
|
|
12910
|
-
}
|
|
13209
|
+
}, props.style]
|
|
12911
13210
|
}, [createVNode("div", {
|
|
12912
13211
|
"class": ['v-slider-track__background', trackColorClasses.value, {
|
|
12913
13212
|
'v-slider-track__background--opacity': !!color.value || !trackFillColor.value
|
|
@@ -12947,13 +13246,21 @@ const VSlider = genericComponent()({
|
|
|
12947
13246
|
},
|
|
12948
13247
|
emits: {
|
|
12949
13248
|
'update:focused': value => true,
|
|
12950
|
-
'update:modelValue': v => true
|
|
13249
|
+
'update:modelValue': v => true,
|
|
13250
|
+
start: value => true,
|
|
13251
|
+
end: value => true
|
|
12951
13252
|
},
|
|
12952
13253
|
setup(props, _ref) {
|
|
12953
13254
|
let {
|
|
12954
|
-
slots
|
|
13255
|
+
slots,
|
|
13256
|
+
emit
|
|
12955
13257
|
} = _ref;
|
|
12956
13258
|
const thumbContainerRef = ref();
|
|
13259
|
+
const steps = useSteps(props);
|
|
13260
|
+
const model = useProxiedModel(props, 'modelValue', undefined, v => {
|
|
13261
|
+
const value = typeof v === 'string' ? parseFloat(v) : v == null ? steps.min.value : v;
|
|
13262
|
+
return steps.roundValue(value);
|
|
13263
|
+
});
|
|
12957
13264
|
const {
|
|
12958
13265
|
min,
|
|
12959
13266
|
max,
|
|
@@ -12967,16 +13274,26 @@ const VSlider = genericComponent()({
|
|
|
12967
13274
|
readonly
|
|
12968
13275
|
} = useSlider({
|
|
12969
13276
|
props,
|
|
12970
|
-
|
|
12971
|
-
|
|
12972
|
-
|
|
12973
|
-
|
|
13277
|
+
steps,
|
|
13278
|
+
onSliderStart: () => {
|
|
13279
|
+
emit('start', model.value);
|
|
13280
|
+
},
|
|
13281
|
+
onSliderEnd: _ref2 => {
|
|
13282
|
+
let {
|
|
13283
|
+
value
|
|
13284
|
+
} = _ref2;
|
|
13285
|
+
const roundedValue = roundValue(value);
|
|
13286
|
+
model.value = roundedValue;
|
|
13287
|
+
emit('end', roundedValue);
|
|
13288
|
+
},
|
|
13289
|
+
onSliderMove: _ref3 => {
|
|
13290
|
+
let {
|
|
13291
|
+
value
|
|
13292
|
+
} = _ref3;
|
|
13293
|
+
return model.value = roundValue(value);
|
|
13294
|
+
},
|
|
12974
13295
|
getActiveThumb: () => thumbContainerRef.value?.$el
|
|
12975
13296
|
});
|
|
12976
|
-
const model = useProxiedModel(props, 'modelValue', undefined, v => {
|
|
12977
|
-
const value = typeof v === 'string' ? parseFloat(v) : v == null ? min.value : v;
|
|
12978
|
-
return roundValue(value);
|
|
12979
|
-
});
|
|
12980
13297
|
const {
|
|
12981
13298
|
isFocused,
|
|
12982
13299
|
focus,
|
|
@@ -12992,7 +13309,8 @@ const VSlider = genericComponent()({
|
|
|
12992
13309
|
'v-slider--focused': isFocused.value,
|
|
12993
13310
|
'v-slider--pressed': mousePressed.value,
|
|
12994
13311
|
'v-slider--disabled': props.disabled
|
|
12995
|
-
}]
|
|
13312
|
+
}, props.class],
|
|
13313
|
+
"style": props.style
|
|
12996
13314
|
}, inputProps, {
|
|
12997
13315
|
"focused": isFocused.value
|
|
12998
13316
|
}), {
|
|
@@ -13002,11 +13320,11 @@ const VSlider = genericComponent()({
|
|
|
13002
13320
|
"class": "v-slider__label",
|
|
13003
13321
|
"text": props.label
|
|
13004
13322
|
}, null) : undefined, slots.prepend?.(slotProps)]) : undefined,
|
|
13005
|
-
default:
|
|
13323
|
+
default: _ref4 => {
|
|
13006
13324
|
let {
|
|
13007
13325
|
id,
|
|
13008
13326
|
messagesId
|
|
13009
|
-
} =
|
|
13327
|
+
} = _ref4;
|
|
13010
13328
|
return createVNode("div", {
|
|
13011
13329
|
"class": "v-slider__container",
|
|
13012
13330
|
"onMousedown": !readonly.value ? onSliderMousedown : undefined,
|
|
@@ -13055,7 +13373,8 @@ const VColorPickerPreview = defineComponent({
|
|
|
13055
13373
|
type: Object
|
|
13056
13374
|
},
|
|
13057
13375
|
disabled: Boolean,
|
|
13058
|
-
hideAlpha: Boolean
|
|
13376
|
+
hideAlpha: Boolean,
|
|
13377
|
+
...makeComponentProps()
|
|
13059
13378
|
},
|
|
13060
13379
|
emits: {
|
|
13061
13380
|
'update:color': color => true
|
|
@@ -13067,7 +13386,8 @@ const VColorPickerPreview = defineComponent({
|
|
|
13067
13386
|
useRender(() => createVNode("div", {
|
|
13068
13387
|
"class": ['v-color-picker-preview', {
|
|
13069
13388
|
'v-color-picker-preview--hide-alpha': props.hideAlpha
|
|
13070
|
-
}]
|
|
13389
|
+
}, props.class],
|
|
13390
|
+
"style": props.style
|
|
13071
13391
|
}, [createVNode("div", {
|
|
13072
13392
|
"class": "v-color-picker-preview__dot"
|
|
13073
13393
|
}, [createVNode("div", {
|
|
@@ -13448,7 +13768,8 @@ const VColorPickerSwatches = defineComponent({
|
|
|
13448
13768
|
},
|
|
13449
13769
|
disabled: Boolean,
|
|
13450
13770
|
color: Object,
|
|
13451
|
-
maxHeight: [Number, String]
|
|
13771
|
+
maxHeight: [Number, String],
|
|
13772
|
+
...makeComponentProps()
|
|
13452
13773
|
},
|
|
13453
13774
|
emits: {
|
|
13454
13775
|
'update:color': color => true
|
|
@@ -13458,10 +13779,10 @@ const VColorPickerSwatches = defineComponent({
|
|
|
13458
13779
|
emit
|
|
13459
13780
|
} = _ref;
|
|
13460
13781
|
useRender(() => createVNode("div", {
|
|
13461
|
-
"class":
|
|
13462
|
-
"style": {
|
|
13782
|
+
"class": ['v-color-picker-swatches', props.class],
|
|
13783
|
+
"style": [{
|
|
13463
13784
|
maxHeight: convertToUnit(props.maxHeight)
|
|
13464
|
-
}
|
|
13785
|
+
}, props.style]
|
|
13465
13786
|
}, [createVNode("div", null, [props.swatches.map(swatch => createVNode("div", {
|
|
13466
13787
|
"class": "v-color-picker-swatches__swatch"
|
|
13467
13788
|
}, [swatch.map(color => {
|
|
@@ -13565,13 +13886,13 @@ const VColorPicker = defineComponent({
|
|
|
13565
13886
|
"rounded": props.rounded,
|
|
13566
13887
|
"elevation": props.elevation,
|
|
13567
13888
|
"theme": props.theme,
|
|
13568
|
-
"class": ['v-color-picker'],
|
|
13569
|
-
"style": {
|
|
13889
|
+
"class": ['v-color-picker', props.class],
|
|
13890
|
+
"style": [{
|
|
13570
13891
|
'--v-color-picker-color-hsv': HSVtoCSS({
|
|
13571
13892
|
...(currentColor.value ?? nullColor),
|
|
13572
13893
|
a: 1
|
|
13573
13894
|
})
|
|
13574
|
-
}
|
|
13895
|
+
}, props.style]
|
|
13575
13896
|
}, sheetProps, {
|
|
13576
13897
|
"maxWidth": props.width
|
|
13577
13898
|
}), {
|
|
@@ -13882,7 +14203,8 @@ const VCombobox = genericComponent()({
|
|
|
13882
14203
|
'v-combobox--chips': !!props.chips,
|
|
13883
14204
|
'v-combobox--selecting-index': selectionIndex.value > -1,
|
|
13884
14205
|
[`v-combobox--${props.multiple ? 'multiple' : 'single'}`]: true
|
|
13885
|
-
}],
|
|
14206
|
+
}, props.class],
|
|
14207
|
+
"style": props.style,
|
|
13886
14208
|
"appendInnerIcon": props.items.length ? props.menuIcon : undefined,
|
|
13887
14209
|
"readonly": props.readonly,
|
|
13888
14210
|
"placeholder": isDirty ? undefined : props.placeholder,
|
|
@@ -14080,7 +14402,8 @@ const VDialog = genericComponent()({
|
|
|
14080
14402
|
"class": ['v-dialog', {
|
|
14081
14403
|
'v-dialog--fullscreen': props.fullscreen,
|
|
14082
14404
|
'v-dialog--scrollable': props.scrollable
|
|
14083
|
-
}]
|
|
14405
|
+
}, props.class],
|
|
14406
|
+
"style": props.style
|
|
14084
14407
|
}, overlayProps, {
|
|
14085
14408
|
"modelValue": isActive.value,
|
|
14086
14409
|
"onUpdate:modelValue": $event => isActive.value = $event,
|
|
@@ -14119,6 +14442,7 @@ const VExpansionPanels = genericComponent()({
|
|
|
14119
14442
|
validator: v => allowedVariants.includes(v)
|
|
14120
14443
|
},
|
|
14121
14444
|
readonly: Boolean,
|
|
14445
|
+
...makeComponentProps(),
|
|
14122
14446
|
...makeGroupProps(),
|
|
14123
14447
|
...makeTagProps(),
|
|
14124
14448
|
...makeThemeProps()
|
|
@@ -14144,7 +14468,8 @@ const VExpansionPanels = genericComponent()({
|
|
|
14144
14468
|
}
|
|
14145
14469
|
});
|
|
14146
14470
|
useRender(() => createVNode(props.tag, {
|
|
14147
|
-
"class": ['v-expansion-panels', themeClasses.value, variantClass.value]
|
|
14471
|
+
"class": ['v-expansion-panels', themeClasses.value, variantClass.value, props.class],
|
|
14472
|
+
"style": props.style
|
|
14148
14473
|
}, slots));
|
|
14149
14474
|
return {};
|
|
14150
14475
|
}
|
|
@@ -14173,6 +14498,7 @@ const VExpansionPanelTitle = genericComponent()({
|
|
|
14173
14498
|
Ripple
|
|
14174
14499
|
},
|
|
14175
14500
|
props: {
|
|
14501
|
+
...makeComponentProps(),
|
|
14176
14502
|
...makeVExpansionPanelTitleProps()
|
|
14177
14503
|
},
|
|
14178
14504
|
setup(props, _ref) {
|
|
@@ -14195,8 +14521,8 @@ const VExpansionPanelTitle = genericComponent()({
|
|
|
14195
14521
|
useRender(() => withDirectives(createVNode("button", {
|
|
14196
14522
|
"class": ['v-expansion-panel-title', {
|
|
14197
14523
|
'v-expansion-panel-title--active': expansionPanel.isSelected.value
|
|
14198
|
-
}, backgroundColorClasses.value],
|
|
14199
|
-
"style": backgroundColorStyles.value,
|
|
14524
|
+
}, backgroundColorClasses.value, props.class],
|
|
14525
|
+
"style": [backgroundColorStyles.value, props.style],
|
|
14200
14526
|
"type": "button",
|
|
14201
14527
|
"tabindex": expansionPanel.disabled.value ? -1 : undefined,
|
|
14202
14528
|
"disabled": expansionPanel.disabled.value,
|
|
@@ -14216,6 +14542,7 @@ const VExpansionPanelTitle = genericComponent()({
|
|
|
14216
14542
|
const VExpansionPanelText = genericComponent()({
|
|
14217
14543
|
name: 'VExpansionPanelText',
|
|
14218
14544
|
props: {
|
|
14545
|
+
...makeComponentProps(),
|
|
14219
14546
|
...makeLazyProps()
|
|
14220
14547
|
},
|
|
14221
14548
|
setup(props, _ref) {
|
|
@@ -14232,7 +14559,8 @@ const VExpansionPanelText = genericComponent()({
|
|
|
14232
14559
|
"onAfterLeave": onAfterLeave
|
|
14233
14560
|
}, {
|
|
14234
14561
|
default: () => [withDirectives(createVNode("div", {
|
|
14235
|
-
"class":
|
|
14562
|
+
"class": ['v-expansion-panel-text', props.class],
|
|
14563
|
+
"style": props.style
|
|
14236
14564
|
}, [slots.default && hasContent.value && createVNode("div", {
|
|
14237
14565
|
"class": "v-expansion-panel-text__wrapper"
|
|
14238
14566
|
}, [slots.default?.()])]), [[vShow, expansionPanel.isSelected.value]])]
|
|
@@ -14247,6 +14575,7 @@ const VExpansionPanel = genericComponent()({
|
|
|
14247
14575
|
title: String,
|
|
14248
14576
|
text: String,
|
|
14249
14577
|
bgColor: String,
|
|
14578
|
+
...makeComponentProps(),
|
|
14250
14579
|
...makeElevationProps(),
|
|
14251
14580
|
...makeGroupItemProps(),
|
|
14252
14581
|
...makeLazyProps(),
|
|
@@ -14295,8 +14624,8 @@ const VExpansionPanel = genericComponent()({
|
|
|
14295
14624
|
'v-expansion-panel--before-active': isBeforeSelected.value,
|
|
14296
14625
|
'v-expansion-panel--after-active': isAfterSelected.value,
|
|
14297
14626
|
'v-expansion-panel--disabled': isDisabled.value
|
|
14298
|
-
}, roundedClasses.value, backgroundColorClasses.value],
|
|
14299
|
-
"style": backgroundColorStyles.value,
|
|
14627
|
+
}, roundedClasses.value, backgroundColorClasses.value, props.class],
|
|
14628
|
+
"style": [backgroundColorStyles.value, props.style],
|
|
14300
14629
|
"aria-expanded": groupItem.isSelected.value
|
|
14301
14630
|
}, {
|
|
14302
14631
|
default: () => [createVNode("div", {
|
|
@@ -14446,7 +14775,8 @@ const VFileInput = genericComponent()({
|
|
|
14446
14775
|
"ref": vInputRef,
|
|
14447
14776
|
"modelValue": model.value,
|
|
14448
14777
|
"onUpdate:modelValue": $event => model.value = $event,
|
|
14449
|
-
"class":
|
|
14778
|
+
"class": ['v-file-input', props.class],
|
|
14779
|
+
"style": props.style,
|
|
14450
14780
|
"onClick:prepend": onClickPrepend
|
|
14451
14781
|
}, rootAttrs, inputProps, {
|
|
14452
14782
|
"focused": isFocused.value
|
|
@@ -14538,6 +14868,7 @@ const VFooter = genericComponent()({
|
|
|
14538
14868
|
default: 'auto'
|
|
14539
14869
|
},
|
|
14540
14870
|
...makeBorderProps(),
|
|
14871
|
+
...makeComponentProps(),
|
|
14541
14872
|
...makeElevationProps(),
|
|
14542
14873
|
...makeLayoutItemProps(),
|
|
14543
14874
|
...makeRoundedProps(),
|
|
@@ -14587,8 +14918,8 @@ const VFooter = genericComponent()({
|
|
|
14587
14918
|
});
|
|
14588
14919
|
useRender(() => createVNode(props.tag, {
|
|
14589
14920
|
"ref": resizeRef,
|
|
14590
|
-
"class": ['v-footer', themeClasses.value, backgroundColorClasses.value, borderClasses.value, elevationClasses.value, roundedClasses.value],
|
|
14591
|
-
"style": [backgroundColorStyles.value, props.app ? layoutItemStyles.value : undefined]
|
|
14921
|
+
"class": ['v-footer', themeClasses.value, backgroundColorClasses.value, borderClasses.value, elevationClasses.value, roundedClasses.value, props.class],
|
|
14922
|
+
"style": [backgroundColorStyles.value, props.app ? layoutItemStyles.value : undefined, props.style]
|
|
14592
14923
|
}, slots));
|
|
14593
14924
|
return {};
|
|
14594
14925
|
}
|
|
@@ -14599,6 +14930,7 @@ const VFooter = genericComponent()({
|
|
|
14599
14930
|
const VForm = genericComponent()({
|
|
14600
14931
|
name: 'VForm',
|
|
14601
14932
|
props: {
|
|
14933
|
+
...makeComponentProps(),
|
|
14602
14934
|
...makeFormProps()
|
|
14603
14935
|
},
|
|
14604
14936
|
emits: {
|
|
@@ -14637,7 +14969,8 @@ const VForm = genericComponent()({
|
|
|
14637
14969
|
}
|
|
14638
14970
|
useRender(() => createVNode("form", {
|
|
14639
14971
|
"ref": formRef,
|
|
14640
|
-
"class":
|
|
14972
|
+
"class": ['v-form', props.class],
|
|
14973
|
+
"style": props.style,
|
|
14641
14974
|
"novalidate": true,
|
|
14642
14975
|
"onReset": onReset,
|
|
14643
14976
|
"onSubmit": onSubmit
|
|
@@ -14653,6 +14986,7 @@ const VContainer = genericComponent()({
|
|
|
14653
14986
|
type: Boolean,
|
|
14654
14987
|
default: false
|
|
14655
14988
|
},
|
|
14989
|
+
...makeComponentProps(),
|
|
14656
14990
|
...makeTagProps()
|
|
14657
14991
|
},
|
|
14658
14992
|
setup(props, _ref) {
|
|
@@ -14662,7 +14996,8 @@ const VContainer = genericComponent()({
|
|
|
14662
14996
|
useRender(() => createVNode(props.tag, {
|
|
14663
14997
|
"class": ['v-container', {
|
|
14664
14998
|
'v-container--fluid': props.fluid
|
|
14665
|
-
}]
|
|
14999
|
+
}, props.class],
|
|
15000
|
+
"style": props.style
|
|
14666
15001
|
}, slots));
|
|
14667
15002
|
return {};
|
|
14668
15003
|
}
|
|
@@ -14753,6 +15088,7 @@ const VCol = genericComponent()({
|
|
|
14753
15088
|
default: null,
|
|
14754
15089
|
validator: str => ALIGN_SELF_VALUES.includes(str)
|
|
14755
15090
|
},
|
|
15091
|
+
...makeComponentProps(),
|
|
14756
15092
|
...makeTagProps()
|
|
14757
15093
|
},
|
|
14758
15094
|
setup(props, _ref) {
|
|
@@ -14783,7 +15119,8 @@ const VCol = genericComponent()({
|
|
|
14783
15119
|
return classList;
|
|
14784
15120
|
});
|
|
14785
15121
|
return () => h(props.tag, {
|
|
14786
|
-
class: classes.value
|
|
15122
|
+
class: [classes.value, props.class],
|
|
15123
|
+
style: props.style
|
|
14787
15124
|
}, slots.default?.());
|
|
14788
15125
|
}
|
|
14789
15126
|
});
|
|
@@ -14869,6 +15206,7 @@ const VRow = genericComponent()({
|
|
|
14869
15206
|
validator: alignContentValidator
|
|
14870
15207
|
},
|
|
14871
15208
|
...alignContentProps,
|
|
15209
|
+
...makeComponentProps(),
|
|
14872
15210
|
...makeTagProps()
|
|
14873
15211
|
},
|
|
14874
15212
|
setup(props, _ref) {
|
|
@@ -14897,7 +15235,8 @@ const VRow = genericComponent()({
|
|
|
14897
15235
|
return classList;
|
|
14898
15236
|
});
|
|
14899
15237
|
return () => h(props.tag, {
|
|
14900
|
-
class: ['v-row', classes.value]
|
|
15238
|
+
class: ['v-row', classes.value, props.class],
|
|
15239
|
+
style: props.style
|
|
14901
15240
|
}, slots.default?.());
|
|
14902
15241
|
}
|
|
14903
15242
|
});
|
|
@@ -14941,6 +15280,7 @@ const VItemGroupSymbol = Symbol.for('vuetify:v-item-group');
|
|
|
14941
15280
|
const VItemGroup = genericComponent()({
|
|
14942
15281
|
name: 'VItemGroup',
|
|
14943
15282
|
props: {
|
|
15283
|
+
...makeComponentProps(),
|
|
14944
15284
|
...makeGroupProps({
|
|
14945
15285
|
selectedClass: 'v-item--selected'
|
|
14946
15286
|
}),
|
|
@@ -14965,7 +15305,8 @@ const VItemGroup = genericComponent()({
|
|
|
14965
15305
|
selected
|
|
14966
15306
|
} = useGroup(props, VItemGroupSymbol);
|
|
14967
15307
|
return () => createVNode(props.tag, {
|
|
14968
|
-
"class": ['v-item-group', themeClasses.value]
|
|
15308
|
+
"class": ['v-item-group', themeClasses.value, props.class],
|
|
15309
|
+
"style": props.style
|
|
14969
15310
|
}, {
|
|
14970
15311
|
default: () => [slots.default?.({
|
|
14971
15312
|
isSelected,
|
|
@@ -15015,7 +15356,10 @@ const VKbd = createSimpleFunctional('v-kbd');
|
|
|
15015
15356
|
|
|
15016
15357
|
const VLayout = genericComponent()({
|
|
15017
15358
|
name: 'VLayout',
|
|
15018
|
-
props:
|
|
15359
|
+
props: {
|
|
15360
|
+
...makeComponentProps(),
|
|
15361
|
+
...makeLayoutProps()
|
|
15362
|
+
},
|
|
15019
15363
|
setup(props, _ref) {
|
|
15020
15364
|
let {
|
|
15021
15365
|
slots
|
|
@@ -15029,8 +15373,8 @@ const VLayout = genericComponent()({
|
|
|
15029
15373
|
} = createLayout(props);
|
|
15030
15374
|
useRender(() => createVNode("div", {
|
|
15031
15375
|
"ref": layoutRef,
|
|
15032
|
-
"class": layoutClasses.value,
|
|
15033
|
-
"style": layoutStyles.value
|
|
15376
|
+
"class": [layoutClasses.value, props.class],
|
|
15377
|
+
"style": [layoutStyles.value, props.style]
|
|
15034
15378
|
}, [slots.default?.()]));
|
|
15035
15379
|
return {
|
|
15036
15380
|
getLayoutItem,
|
|
@@ -15053,6 +15397,7 @@ const VLayoutItem = genericComponent()({
|
|
|
15053
15397
|
default: 300
|
|
15054
15398
|
},
|
|
15055
15399
|
modelValue: Boolean,
|
|
15400
|
+
...makeComponentProps(),
|
|
15056
15401
|
...makeLayoutItemProps()
|
|
15057
15402
|
},
|
|
15058
15403
|
setup(props, _ref) {
|
|
@@ -15071,8 +15416,8 @@ const VLayoutItem = genericComponent()({
|
|
|
15071
15416
|
absolute: toRef(props, 'absolute')
|
|
15072
15417
|
});
|
|
15073
15418
|
return () => createVNode("div", {
|
|
15074
|
-
"class": ['v-layout-item'],
|
|
15075
|
-
"style": layoutItemStyles.value
|
|
15419
|
+
"class": ['v-layout-item', props.class],
|
|
15420
|
+
"style": [layoutItemStyles.value, props.style]
|
|
15076
15421
|
}, [slots.default?.()]);
|
|
15077
15422
|
}
|
|
15078
15423
|
});
|
|
@@ -15096,6 +15441,7 @@ const VLazy = genericComponent()({
|
|
|
15096
15441
|
threshold: undefined
|
|
15097
15442
|
})
|
|
15098
15443
|
},
|
|
15444
|
+
...makeComponentProps(),
|
|
15099
15445
|
...makeDimensionProps(),
|
|
15100
15446
|
...makeTagProps(),
|
|
15101
15447
|
...makeTransitionProps({
|
|
@@ -15118,8 +15464,8 @@ const VLazy = genericComponent()({
|
|
|
15118
15464
|
isActive.value = isIntersecting;
|
|
15119
15465
|
}
|
|
15120
15466
|
useRender(() => withDirectives(createVNode(props.tag, {
|
|
15121
|
-
"class":
|
|
15122
|
-
"style": dimensionStyles.value
|
|
15467
|
+
"class": ['v-lazy', props.class],
|
|
15468
|
+
"style": [dimensionStyles.value, props.style]
|
|
15123
15469
|
}, {
|
|
15124
15470
|
default: () => [isActive.value && createVNode(MaybeTransition, {
|
|
15125
15471
|
"transition": props.transition,
|
|
@@ -15144,7 +15490,8 @@ const VLocaleProvider = genericComponent()({
|
|
|
15144
15490
|
rtl: {
|
|
15145
15491
|
type: Boolean,
|
|
15146
15492
|
default: undefined
|
|
15147
|
-
}
|
|
15493
|
+
},
|
|
15494
|
+
...makeComponentProps()
|
|
15148
15495
|
},
|
|
15149
15496
|
setup(props, _ref) {
|
|
15150
15497
|
let {
|
|
@@ -15154,7 +15501,8 @@ const VLocaleProvider = genericComponent()({
|
|
|
15154
15501
|
rtlClasses
|
|
15155
15502
|
} = provideLocale(props);
|
|
15156
15503
|
useRender(() => createVNode("div", {
|
|
15157
|
-
"class": ['v-locale-provider', rtlClasses.value]
|
|
15504
|
+
"class": ['v-locale-provider', rtlClasses.value, props.class],
|
|
15505
|
+
"style": props.style
|
|
15158
15506
|
}, [slots.default?.()]));
|
|
15159
15507
|
return {};
|
|
15160
15508
|
}
|
|
@@ -15164,6 +15512,7 @@ const VMain = genericComponent()({
|
|
|
15164
15512
|
name: 'VMain',
|
|
15165
15513
|
props: {
|
|
15166
15514
|
scrollable: Boolean,
|
|
15515
|
+
...makeComponentProps(),
|
|
15167
15516
|
...makeTagProps({
|
|
15168
15517
|
tag: 'main'
|
|
15169
15518
|
})
|
|
@@ -15181,8 +15530,8 @@ const VMain = genericComponent()({
|
|
|
15181
15530
|
useRender(() => createVNode(props.tag, {
|
|
15182
15531
|
"class": ['v-main', {
|
|
15183
15532
|
'v-main--scrollable': props.scrollable
|
|
15184
|
-
}],
|
|
15185
|
-
"style": [mainStyles.value, ssrBootStyles.value]
|
|
15533
|
+
}, props.class],
|
|
15534
|
+
"style": [mainStyles.value, ssrBootStyles.value, props.style]
|
|
15186
15535
|
}, {
|
|
15187
15536
|
default: () => [props.scrollable ? createVNode("div", {
|
|
15188
15537
|
"class": "v-main__scroller"
|
|
@@ -15528,6 +15877,7 @@ const VNavigationDrawer = genericComponent()({
|
|
|
15528
15877
|
},
|
|
15529
15878
|
sticky: Boolean,
|
|
15530
15879
|
...makeBorderProps(),
|
|
15880
|
+
...makeComponentProps(),
|
|
15531
15881
|
...makeElevationProps(),
|
|
15532
15882
|
...makeLayoutItemProps(),
|
|
15533
15883
|
...makeRoundedProps(),
|
|
@@ -15679,8 +16029,8 @@ const VNavigationDrawer = genericComponent()({
|
|
|
15679
16029
|
'v-navigation-drawer--temporary': isTemporary.value,
|
|
15680
16030
|
'v-navigation-drawer--active': isActive.value,
|
|
15681
16031
|
'v-navigation-drawer--sticky': isSticky.value
|
|
15682
|
-
}, themeClasses.value, backgroundColorClasses.value, borderClasses.value, elevationClasses.value, roundedClasses.value],
|
|
15683
|
-
"style": [backgroundColorStyles.value, layoutItemStyles.value, dragStyles.value, ssrBootStyles.value, stickyStyles.value]
|
|
16032
|
+
}, themeClasses.value, backgroundColorClasses.value, borderClasses.value, elevationClasses.value, roundedClasses.value, props.class],
|
|
16033
|
+
"style": [backgroundColorStyles.value, layoutItemStyles.value, dragStyles.value, ssrBootStyles.value, stickyStyles.value, props.style]
|
|
15684
16034
|
}, attrs), {
|
|
15685
16035
|
default: () => [hasImage && createVNode("div", {
|
|
15686
16036
|
"key": "image",
|
|
@@ -15809,6 +16159,7 @@ const VPagination = genericComponent()({
|
|
|
15809
16159
|
},
|
|
15810
16160
|
showFirstLastPage: Boolean,
|
|
15811
16161
|
...makeBorderProps(),
|
|
16162
|
+
...makeComponentProps(),
|
|
15812
16163
|
...makeDensityProps(),
|
|
15813
16164
|
...makeElevationProps(),
|
|
15814
16165
|
...makeRoundedProps(),
|
|
@@ -16005,7 +16356,8 @@ const VPagination = genericComponent()({
|
|
|
16005
16356
|
}
|
|
16006
16357
|
useRender(() => createVNode(props.tag, {
|
|
16007
16358
|
"ref": resizeRef,
|
|
16008
|
-
"class": ['v-pagination', themeClasses.value],
|
|
16359
|
+
"class": ['v-pagination', themeClasses.value, props.class],
|
|
16360
|
+
"style": props.style,
|
|
16009
16361
|
"role": "navigation",
|
|
16010
16362
|
"aria-label": t(props.ariaLabel),
|
|
16011
16363
|
"onKeydown": onKeydown,
|
|
@@ -16064,7 +16416,8 @@ const VParallax = genericComponent()({
|
|
|
16064
16416
|
scale: {
|
|
16065
16417
|
type: [Number, String],
|
|
16066
16418
|
default: 0.5
|
|
16067
|
-
}
|
|
16419
|
+
},
|
|
16420
|
+
...makeComponentProps()
|
|
16068
16421
|
},
|
|
16069
16422
|
setup(props, _ref) {
|
|
16070
16423
|
let {
|
|
@@ -16126,7 +16479,8 @@ const VParallax = genericComponent()({
|
|
|
16126
16479
|
useRender(() => createVNode(VImg, {
|
|
16127
16480
|
"class": ['v-parallax', {
|
|
16128
16481
|
'v-parallax--active': isIntersecting.value
|
|
16129
|
-
}],
|
|
16482
|
+
}, props.class],
|
|
16483
|
+
"style": props.style,
|
|
16130
16484
|
"ref": root,
|
|
16131
16485
|
"cover": true,
|
|
16132
16486
|
"onLoadstart": onScroll,
|
|
@@ -16151,7 +16505,8 @@ const VRadio = genericComponent()({
|
|
|
16151
16505
|
slots
|
|
16152
16506
|
} = _ref;
|
|
16153
16507
|
useRender(() => createVNode(VSelectionControl, mergeProps(props, {
|
|
16154
|
-
"class":
|
|
16508
|
+
"class": ['v-radio', props.class],
|
|
16509
|
+
"style": props.style,
|
|
16155
16510
|
"type": "radio"
|
|
16156
16511
|
}), slots));
|
|
16157
16512
|
return {};
|
|
@@ -16205,7 +16560,8 @@ const VRadioGroup = genericComponent()({
|
|
|
16205
16560
|
}
|
|
16206
16561
|
}) : props.label;
|
|
16207
16562
|
return createVNode(VInput, mergeProps({
|
|
16208
|
-
"class":
|
|
16563
|
+
"class": ['v-radio-group', props.class],
|
|
16564
|
+
"style": props.style
|
|
16209
16565
|
}, inputAttrs, inputProps, {
|
|
16210
16566
|
"modelValue": model.value,
|
|
16211
16567
|
"onUpdate:modelValue": $event => model.value = $event,
|
|
@@ -16261,11 +16617,14 @@ const VRangeSlider = genericComponent()({
|
|
|
16261
16617
|
},
|
|
16262
16618
|
emits: {
|
|
16263
16619
|
'update:focused': value => true,
|
|
16264
|
-
'update:modelValue': value => true
|
|
16620
|
+
'update:modelValue': value => true,
|
|
16621
|
+
end: value => true,
|
|
16622
|
+
start: value => true
|
|
16265
16623
|
},
|
|
16266
16624
|
setup(props, _ref) {
|
|
16267
16625
|
let {
|
|
16268
|
-
slots
|
|
16626
|
+
slots,
|
|
16627
|
+
emit
|
|
16269
16628
|
} = _ref;
|
|
16270
16629
|
const startThumbRef = ref();
|
|
16271
16630
|
const stopThumbRef = ref();
|
|
@@ -16278,6 +16637,11 @@ const VRangeSlider = genericComponent()({
|
|
|
16278
16637
|
const b = Math.abs(stopOffset);
|
|
16279
16638
|
return a < b || a === b && startOffset < 0 ? startThumbRef.value.$el : stopThumbRef.value.$el;
|
|
16280
16639
|
}
|
|
16640
|
+
const steps = useSteps(props);
|
|
16641
|
+
const model = useProxiedModel(props, 'modelValue', undefined, arr => {
|
|
16642
|
+
if (!arr?.length) return [0, 0];
|
|
16643
|
+
return arr.map(value => steps.roundValue(value));
|
|
16644
|
+
});
|
|
16281
16645
|
const {
|
|
16282
16646
|
activeThumbRef,
|
|
16283
16647
|
hasLabels,
|
|
@@ -16287,34 +16651,37 @@ const VRangeSlider = genericComponent()({
|
|
|
16287
16651
|
onSliderMousedown,
|
|
16288
16652
|
onSliderTouchstart,
|
|
16289
16653
|
position,
|
|
16290
|
-
roundValue,
|
|
16291
16654
|
trackContainerRef
|
|
16292
16655
|
} = useSlider({
|
|
16293
|
-
/* eslint-disable @typescript-eslint/no-use-before-define */
|
|
16294
16656
|
props,
|
|
16295
|
-
|
|
16296
|
-
|
|
16657
|
+
steps,
|
|
16658
|
+
onSliderStart: () => {
|
|
16659
|
+
emit('start', model.value);
|
|
16660
|
+
},
|
|
16661
|
+
onSliderEnd: _ref2 => {
|
|
16662
|
+
let {
|
|
16663
|
+
value
|
|
16664
|
+
} = _ref2;
|
|
16665
|
+
const newValue = activeThumbRef.value === startThumbRef.value?.$el ? [value, model.value[1]] : [model.value[0], value];
|
|
16666
|
+
model.value = newValue;
|
|
16667
|
+
emit('end', newValue);
|
|
16297
16668
|
},
|
|
16298
|
-
|
|
16669
|
+
onSliderMove: _ref3 => {
|
|
16670
|
+
let {
|
|
16671
|
+
value
|
|
16672
|
+
} = _ref3;
|
|
16299
16673
|
const [start, stop] = model.value;
|
|
16300
16674
|
if (!props.strict && start === stop && start !== min.value) {
|
|
16301
|
-
activeThumbRef.value =
|
|
16675
|
+
activeThumbRef.value = value > start ? stopThumbRef.value?.$el : startThumbRef.value?.$el;
|
|
16302
16676
|
activeThumbRef.value?.focus();
|
|
16303
16677
|
}
|
|
16304
16678
|
if (activeThumbRef.value === startThumbRef.value?.$el) {
|
|
16305
|
-
model.value = [Math.min(
|
|
16679
|
+
model.value = [Math.min(value, stop), stop];
|
|
16306
16680
|
} else {
|
|
16307
|
-
model.value = [start, Math.max(start,
|
|
16681
|
+
model.value = [start, Math.max(start, value)];
|
|
16308
16682
|
}
|
|
16309
16683
|
},
|
|
16310
16684
|
getActiveThumb
|
|
16311
|
-
/* eslint-enable @typescript-eslint/no-use-before-define */
|
|
16312
|
-
});
|
|
16313
|
-
|
|
16314
|
-
const model = useProxiedModel(props, 'modelValue', undefined, arr => {
|
|
16315
|
-
// eslint-disable-next-line @typescript-eslint/prefer-optional-chain
|
|
16316
|
-
if (!arr || !arr.length) return [0, 0];
|
|
16317
|
-
return arr.map(value => roundValue(value));
|
|
16318
16685
|
});
|
|
16319
16686
|
const {
|
|
16320
16687
|
isFocused,
|
|
@@ -16332,7 +16699,8 @@ const VRangeSlider = genericComponent()({
|
|
|
16332
16699
|
'v-slider--focused': isFocused.value,
|
|
16333
16700
|
'v-slider--pressed': mousePressed.value,
|
|
16334
16701
|
'v-slider--disabled': props.disabled
|
|
16335
|
-
}],
|
|
16702
|
+
}, props.class],
|
|
16703
|
+
"style": props.style,
|
|
16336
16704
|
"ref": inputRef
|
|
16337
16705
|
}, inputProps, {
|
|
16338
16706
|
"focused": isFocused.value
|
|
@@ -16342,11 +16710,11 @@ const VRangeSlider = genericComponent()({
|
|
|
16342
16710
|
"class": "v-slider__label",
|
|
16343
16711
|
"text": props.label
|
|
16344
16712
|
}, null) : undefined, slots.prepend?.(slotProps)]) : undefined,
|
|
16345
|
-
default:
|
|
16713
|
+
default: _ref4 => {
|
|
16346
16714
|
let {
|
|
16347
16715
|
id,
|
|
16348
16716
|
messagesId
|
|
16349
|
-
} =
|
|
16717
|
+
} = _ref4;
|
|
16350
16718
|
return createVNode("div", {
|
|
16351
16719
|
"class": "v-slider__container",
|
|
16352
16720
|
"onMousedown": onSliderMousedown,
|
|
@@ -16475,6 +16843,7 @@ const VRating = genericComponent()({
|
|
|
16475
16843
|
validator: v => ['top', 'bottom'].includes(v)
|
|
16476
16844
|
},
|
|
16477
16845
|
ripple: Boolean,
|
|
16846
|
+
...makeComponentProps(),
|
|
16478
16847
|
...makeDensityProps(),
|
|
16479
16848
|
...makeSizeProps(),
|
|
16480
16849
|
...makeTagProps(),
|
|
@@ -16498,9 +16867,6 @@ const VRating = genericComponent()({
|
|
|
16498
16867
|
const range = computed(() => createRange(Number(props.length), 1));
|
|
16499
16868
|
const increments = computed(() => range.value.flatMap(v => props.halfIncrements ? [v - 0.5, v] : [v]));
|
|
16500
16869
|
const hoverIndex = ref(-1);
|
|
16501
|
-
const focusIndex = ref(-1);
|
|
16502
|
-
const firstRef = ref();
|
|
16503
|
-
let isClicking = false;
|
|
16504
16870
|
const itemState = computed(() => increments.value.map(value => {
|
|
16505
16871
|
const isHovering = props.hover && hoverIndex.value > -1;
|
|
16506
16872
|
const isFilled = normalizedValue.value >= value;
|
|
@@ -16523,16 +16889,6 @@ const VRating = genericComponent()({
|
|
|
16523
16889
|
function onMouseleave() {
|
|
16524
16890
|
hoverIndex.value = -1;
|
|
16525
16891
|
}
|
|
16526
|
-
function onFocus() {
|
|
16527
|
-
if (value === 0 && normalizedValue.value === 0) {
|
|
16528
|
-
firstRef.value?.focus();
|
|
16529
|
-
} else {
|
|
16530
|
-
focusIndex.value = value;
|
|
16531
|
-
}
|
|
16532
|
-
}
|
|
16533
|
-
function onBlur() {
|
|
16534
|
-
if (!isClicking) focusIndex.value = -1;
|
|
16535
|
-
}
|
|
16536
16892
|
function onClick() {
|
|
16537
16893
|
if (props.disabled || props.readonly) return;
|
|
16538
16894
|
rating.value = normalizedValue.value === value && props.clearable ? 0 : value;
|
|
@@ -16540,17 +16896,9 @@ const VRating = genericComponent()({
|
|
|
16540
16896
|
return {
|
|
16541
16897
|
onMouseenter: props.hover ? onMouseenter : undefined,
|
|
16542
16898
|
onMouseleave: props.hover ? onMouseleave : undefined,
|
|
16543
|
-
onFocus,
|
|
16544
|
-
onBlur,
|
|
16545
16899
|
onClick
|
|
16546
16900
|
};
|
|
16547
16901
|
}));
|
|
16548
|
-
function onMousedown() {
|
|
16549
|
-
isClicking = true;
|
|
16550
|
-
}
|
|
16551
|
-
function onMouseup() {
|
|
16552
|
-
isClicking = false;
|
|
16553
|
-
}
|
|
16554
16902
|
const name = computed(() => props.name ?? `v-rating-${getUid()}`);
|
|
16555
16903
|
function VRatingItem(_ref2) {
|
|
16556
16904
|
let {
|
|
@@ -16561,8 +16909,6 @@ const VRating = genericComponent()({
|
|
|
16561
16909
|
const {
|
|
16562
16910
|
onMouseenter,
|
|
16563
16911
|
onMouseleave,
|
|
16564
|
-
onFocus,
|
|
16565
|
-
onBlur,
|
|
16566
16912
|
onClick
|
|
16567
16913
|
} = eventState.value[index + 1];
|
|
16568
16914
|
const id = `${name.value}-${String(value).replace('.', '-')}`;
|
|
@@ -16573,7 +16919,6 @@ const VRating = genericComponent()({
|
|
|
16573
16919
|
icon: itemState.value[index]?.icon,
|
|
16574
16920
|
ripple: props.ripple,
|
|
16575
16921
|
size: props.size,
|
|
16576
|
-
tag: 'span',
|
|
16577
16922
|
variant: 'plain'
|
|
16578
16923
|
};
|
|
16579
16924
|
return createVNode(Fragment, null, [createVNode("label", {
|
|
@@ -16582,17 +16927,17 @@ const VRating = genericComponent()({
|
|
|
16582
16927
|
'v-rating__item--half': props.halfIncrements && value % 1 > 0,
|
|
16583
16928
|
'v-rating__item--full': props.halfIncrements && value % 1 === 0
|
|
16584
16929
|
},
|
|
16585
|
-
"onMousedown": onMousedown,
|
|
16586
|
-
"onMouseup": onMouseup,
|
|
16587
16930
|
"onMouseenter": onMouseenter,
|
|
16588
|
-
"onMouseleave": onMouseleave
|
|
16931
|
+
"onMouseleave": onMouseleave,
|
|
16932
|
+
"onClick": onClick
|
|
16589
16933
|
}, [createVNode("span", {
|
|
16590
16934
|
"class": "v-rating__hidden"
|
|
16591
16935
|
}, [t(props.itemAriaLabel, value, props.length)]), !showStar ? undefined : slots.item ? slots.item({
|
|
16592
16936
|
...itemState.value[index],
|
|
16593
16937
|
props: btnProps,
|
|
16594
16938
|
value,
|
|
16595
|
-
index
|
|
16939
|
+
index,
|
|
16940
|
+
rating: normalizedValue.value
|
|
16596
16941
|
}) : createVNode(VBtn, btnProps, null)]), createVNode("input", {
|
|
16597
16942
|
"class": "v-rating__hidden",
|
|
16598
16943
|
"name": name.value,
|
|
@@ -16600,10 +16945,7 @@ const VRating = genericComponent()({
|
|
|
16600
16945
|
"type": "radio",
|
|
16601
16946
|
"value": value,
|
|
16602
16947
|
"checked": normalizedValue.value === value,
|
|
16603
|
-
"
|
|
16604
|
-
"onFocus": onFocus,
|
|
16605
|
-
"onBlur": onBlur,
|
|
16606
|
-
"ref": index === 0 ? firstRef : undefined,
|
|
16948
|
+
"tabindex": -1,
|
|
16607
16949
|
"readonly": props.readonly,
|
|
16608
16950
|
"disabled": props.disabled
|
|
16609
16951
|
}, null)]);
|
|
@@ -16619,7 +16961,8 @@ const VRating = genericComponent()({
|
|
|
16619
16961
|
"class": ['v-rating', {
|
|
16620
16962
|
'v-rating--hover': props.hover,
|
|
16621
16963
|
'v-rating--readonly': props.readonly
|
|
16622
|
-
}, themeClasses.value]
|
|
16964
|
+
}, themeClasses.value, props.class],
|
|
16965
|
+
"style": props.style
|
|
16623
16966
|
}, {
|
|
16624
16967
|
default: () => [createVNode(VRatingItem, {
|
|
16625
16968
|
"value": 0,
|
|
@@ -16632,9 +16975,7 @@ const VRating = genericComponent()({
|
|
|
16632
16975
|
index: i,
|
|
16633
16976
|
label: props.itemLabels?.[i]
|
|
16634
16977
|
}) : undefined, createVNode("div", {
|
|
16635
|
-
"class":
|
|
16636
|
-
'v-rating__item--focused': Math.ceil(focusIndex.value) === value
|
|
16637
|
-
}]
|
|
16978
|
+
"class": "v-rating__item"
|
|
16638
16979
|
}, [props.halfIncrements ? createVNode(Fragment, null, [createVNode(VRatingItem, {
|
|
16639
16980
|
"value": value - 0.5,
|
|
16640
16981
|
"index": i * 2
|
|
@@ -16721,6 +17062,7 @@ const makeVSlideGroupProps = propsFactory({
|
|
|
16721
17062
|
type: [Boolean, String],
|
|
16722
17063
|
validator: v => typeof v === 'boolean' || ['always', 'desktop', 'mobile'].includes(v)
|
|
16723
17064
|
},
|
|
17065
|
+
...makeComponentProps(),
|
|
16724
17066
|
...makeTagProps(),
|
|
16725
17067
|
...makeGroupProps({
|
|
16726
17068
|
selectedClass: 'v-slide-group-item--active'
|
|
@@ -16961,7 +17303,8 @@ const VSlideGroup = genericComponent()({
|
|
|
16961
17303
|
'v-slide-group--vertical': !isHorizontal.value,
|
|
16962
17304
|
'v-slide-group--has-affixes': hasAffixes.value,
|
|
16963
17305
|
'v-slide-group--is-overflowing': isOverflowing.value
|
|
16964
|
-
}],
|
|
17306
|
+
}, props.class],
|
|
17307
|
+
"style": props.style,
|
|
16965
17308
|
"tabindex": isFocused.value || group.selected.value.length ? -1 : 0,
|
|
16966
17309
|
"onFocus": onFocus
|
|
16967
17310
|
}, {
|
|
@@ -17111,7 +17454,8 @@ const VSnackbar = genericComponent()({
|
|
|
17111
17454
|
'v-snackbar--active': isActive.value,
|
|
17112
17455
|
'v-snackbar--multi-line': props.multiLine && !props.vertical,
|
|
17113
17456
|
'v-snackbar--vertical': props.vertical
|
|
17114
|
-
}, positionClasses.value]
|
|
17457
|
+
}, positionClasses.value, props.class],
|
|
17458
|
+
"style": props.style
|
|
17115
17459
|
}, overlayProps, {
|
|
17116
17460
|
"modelValue": isActive.value,
|
|
17117
17461
|
"onUpdate:modelValue": $event => isActive.value = $event,
|
|
@@ -17211,7 +17555,8 @@ const VSwitch = genericComponent()({
|
|
|
17211
17555
|
'v-switch--inset': props.inset
|
|
17212
17556
|
}, {
|
|
17213
17557
|
'v-switch--indeterminate': indeterminate.value
|
|
17214
|
-
}, loaderClasses.value]
|
|
17558
|
+
}, loaderClasses.value, props.class],
|
|
17559
|
+
"style": props.style
|
|
17215
17560
|
}, inputAttrs, inputProps, {
|
|
17216
17561
|
"id": id.value,
|
|
17217
17562
|
"focused": isFocused.value
|
|
@@ -17280,6 +17625,7 @@ const VSystemBar = genericComponent()({
|
|
|
17280
17625
|
color: String,
|
|
17281
17626
|
height: [Number, String],
|
|
17282
17627
|
window: Boolean,
|
|
17628
|
+
...makeComponentProps(),
|
|
17283
17629
|
...makeElevationProps(),
|
|
17284
17630
|
...makeLayoutItemProps(),
|
|
17285
17631
|
...makeRoundedProps(),
|
|
@@ -17321,8 +17667,8 @@ const VSystemBar = genericComponent()({
|
|
|
17321
17667
|
useRender(() => createVNode(props.tag, {
|
|
17322
17668
|
"class": ['v-system-bar', {
|
|
17323
17669
|
'v-system-bar--window': props.window
|
|
17324
|
-
}, themeClasses.value, backgroundColorClasses.value, elevationClasses.value, roundedClasses.value],
|
|
17325
|
-
"style": [backgroundColorStyles.value, layoutItemStyles.value, ssrBootStyles.value]
|
|
17670
|
+
}, themeClasses.value, backgroundColorClasses.value, elevationClasses.value, roundedClasses.value, props.class],
|
|
17671
|
+
"style": [backgroundColorStyles.value, layoutItemStyles.value, ssrBootStyles.value, props.style]
|
|
17326
17672
|
}, slots));
|
|
17327
17673
|
return {};
|
|
17328
17674
|
}
|
|
@@ -17334,7 +17680,6 @@ const VTab = genericComponent()({
|
|
|
17334
17680
|
name: 'VTab',
|
|
17335
17681
|
props: {
|
|
17336
17682
|
fixed: Boolean,
|
|
17337
|
-
title: String,
|
|
17338
17683
|
sliderColor: String,
|
|
17339
17684
|
hideSlider: Boolean,
|
|
17340
17685
|
direction: {
|
|
@@ -17396,10 +17741,10 @@ const VTab = genericComponent()({
|
|
|
17396
17741
|
useRender(() => {
|
|
17397
17742
|
const [btnProps] = VBtn.filterProps(props);
|
|
17398
17743
|
return createVNode(VBtn, mergeProps({
|
|
17399
|
-
"_as": "VTab",
|
|
17400
17744
|
"symbol": VTabsSymbol,
|
|
17401
17745
|
"ref": rootEl,
|
|
17402
|
-
"class": ['v-tab'],
|
|
17746
|
+
"class": ['v-tab', props.class],
|
|
17747
|
+
"style": props.style,
|
|
17403
17748
|
"tabindex": isSelected.value ? 0 : -1,
|
|
17404
17749
|
"role": "tab",
|
|
17405
17750
|
"aria-selected": String(isSelected.value),
|
|
@@ -17410,7 +17755,7 @@ const VTab = genericComponent()({
|
|
|
17410
17755
|
}, btnProps, attrs, {
|
|
17411
17756
|
"onGroup:selected": updateSlider
|
|
17412
17757
|
}), {
|
|
17413
|
-
default: () => [slots.default
|
|
17758
|
+
default: () => [slots.default?.() ?? props.text, !props.hideSlider && createVNode("div", {
|
|
17414
17759
|
"ref": sliderEl,
|
|
17415
17760
|
"class": ['v-tab__slider', sliderColorClasses.value],
|
|
17416
17761
|
"style": sliderColorStyles.value
|
|
@@ -17494,10 +17839,10 @@ const VTabs = genericComponent()({
|
|
|
17494
17839
|
'v-tabs--fixed-tabs': props.fixedTabs,
|
|
17495
17840
|
'v-tabs--grow': props.grow,
|
|
17496
17841
|
'v-tabs--stacked': props.stacked
|
|
17497
|
-
}, densityClasses.value, backgroundColorClasses.value],
|
|
17842
|
+
}, densityClasses.value, backgroundColorClasses.value, props.class],
|
|
17498
17843
|
"style": [{
|
|
17499
17844
|
'--v-tabs-height': convertToUnit(props.height)
|
|
17500
|
-
}, backgroundColorStyles.value],
|
|
17845
|
+
}, backgroundColorStyles.value, props.style],
|
|
17501
17846
|
"role": "tablist",
|
|
17502
17847
|
"symbol": VTabsSymbol
|
|
17503
17848
|
}), {
|
|
@@ -17517,6 +17862,7 @@ const VTable = genericComponent()({
|
|
|
17517
17862
|
fixedFooter: Boolean,
|
|
17518
17863
|
height: [Number, String],
|
|
17519
17864
|
hover: Boolean,
|
|
17865
|
+
...makeComponentProps(),
|
|
17520
17866
|
...makeDensityProps(),
|
|
17521
17867
|
...makeTagProps(),
|
|
17522
17868
|
...makeThemeProps()
|
|
@@ -17539,7 +17885,8 @@ const VTable = genericComponent()({
|
|
|
17539
17885
|
'v-table--has-top': !!slots.top,
|
|
17540
17886
|
'v-table--has-bottom': !!slots.bottom,
|
|
17541
17887
|
'v-table--hover': props.hover
|
|
17542
|
-
}, themeClasses.value, densityClasses.value]
|
|
17888
|
+
}, themeClasses.value, densityClasses.value, props.class],
|
|
17889
|
+
"style": props.style
|
|
17543
17890
|
}, {
|
|
17544
17891
|
default: () => [slots.top?.(), slots.default ? createVNode("div", {
|
|
17545
17892
|
"class": "v-table__wrapper",
|
|
@@ -17704,7 +18051,8 @@ const VTextarea = genericComponent()({
|
|
|
17704
18051
|
'v-textarea--auto-grow': props.autoGrow,
|
|
17705
18052
|
'v-textarea--no-resize': props.noResize || props.autoGrow,
|
|
17706
18053
|
'v-text-field--flush-details': ['plain', 'underlined'].includes(props.variant)
|
|
17707
|
-
}]
|
|
18054
|
+
}, props.class],
|
|
18055
|
+
"style": props.style
|
|
17708
18056
|
}, rootAttrs, inputProps, {
|
|
17709
18057
|
"focused": isFocused.value
|
|
17710
18058
|
}), {
|
|
@@ -17788,6 +18136,7 @@ const VThemeProvider = genericComponent()({
|
|
|
17788
18136
|
name: 'VThemeProvider',
|
|
17789
18137
|
props: {
|
|
17790
18138
|
withBackground: Boolean,
|
|
18139
|
+
...makeComponentProps(),
|
|
17791
18140
|
...makeThemeProps(),
|
|
17792
18141
|
...makeTagProps()
|
|
17793
18142
|
},
|
|
@@ -17801,7 +18150,8 @@ const VThemeProvider = genericComponent()({
|
|
|
17801
18150
|
return () => {
|
|
17802
18151
|
if (!props.withBackground) return slots.default?.();
|
|
17803
18152
|
return createVNode(props.tag, {
|
|
17804
|
-
"class": ['v-theme-provider', themeClasses.value]
|
|
18153
|
+
"class": ['v-theme-provider', themeClasses.value, props.class],
|
|
18154
|
+
"style": props.style
|
|
17805
18155
|
}, {
|
|
17806
18156
|
default: () => [slots.default?.()]
|
|
17807
18157
|
});
|
|
@@ -17846,6 +18196,7 @@ const VTimeline = genericComponent()({
|
|
|
17846
18196
|
type: String,
|
|
17847
18197
|
validator: v => ['start', 'end', 'both'].includes(v)
|
|
17848
18198
|
},
|
|
18199
|
+
...makeComponentProps(),
|
|
17849
18200
|
...makeDensityProps(),
|
|
17850
18201
|
...makeTagProps(),
|
|
17851
18202
|
...makeThemeProps()
|
|
@@ -17889,10 +18240,10 @@ const VTimeline = genericComponent()({
|
|
|
17889
18240
|
useRender(() => createVNode(props.tag, {
|
|
17890
18241
|
"class": ['v-timeline', `v-timeline--${props.direction}`, `v-timeline--align-${props.align}`, `v-timeline--justify-${props.justify}`, truncateClasses.value, {
|
|
17891
18242
|
'v-timeline--inset-line': !!props.lineInset
|
|
17892
|
-
}, themeClasses.value, densityClasses.value, sideClasses.value],
|
|
17893
|
-
"style": {
|
|
18243
|
+
}, themeClasses.value, densityClasses.value, sideClasses.value, props.class],
|
|
18244
|
+
"style": [{
|
|
17894
18245
|
'--v-timeline-line-thickness': convertToUnit(props.lineThickness)
|
|
17895
|
-
}
|
|
18246
|
+
}, props.style]
|
|
17896
18247
|
}, slots));
|
|
17897
18248
|
return {};
|
|
17898
18249
|
}
|
|
@@ -17907,6 +18258,7 @@ const VTimelineDivider = genericComponent()({
|
|
|
17907
18258
|
icon: IconValue,
|
|
17908
18259
|
iconColor: String,
|
|
17909
18260
|
lineColor: String,
|
|
18261
|
+
...makeComponentProps(),
|
|
17910
18262
|
...makeRoundedProps(),
|
|
17911
18263
|
...makeSizeProps(),
|
|
17912
18264
|
...makeElevationProps()
|
|
@@ -17936,7 +18288,8 @@ const VTimelineDivider = genericComponent()({
|
|
|
17936
18288
|
useRender(() => createVNode("div", {
|
|
17937
18289
|
"class": ['v-timeline-divider', {
|
|
17938
18290
|
'v-timeline-divider--fill-dot': props.fillDot
|
|
17939
|
-
}]
|
|
18291
|
+
}, props.class],
|
|
18292
|
+
"style": props.style
|
|
17940
18293
|
}, [createVNode("div", {
|
|
17941
18294
|
"class": ['v-timeline-divider__before', lineColorClasses.value],
|
|
17942
18295
|
"style": lineColorStyles.value
|
|
@@ -17986,11 +18339,12 @@ const VTimelineItem = genericComponent()({
|
|
|
17986
18339
|
icon: IconValue,
|
|
17987
18340
|
iconColor: String,
|
|
17988
18341
|
lineInset: [Number, String],
|
|
17989
|
-
...
|
|
18342
|
+
...makeComponentProps(),
|
|
18343
|
+
...makeDimensionProps(),
|
|
17990
18344
|
...makeElevationProps(),
|
|
18345
|
+
...makeRoundedProps(),
|
|
17991
18346
|
...makeSizeProps(),
|
|
17992
|
-
...makeTagProps()
|
|
17993
|
-
...makeDimensionProps()
|
|
18347
|
+
...makeTagProps()
|
|
17994
18348
|
},
|
|
17995
18349
|
setup(props, _ref) {
|
|
17996
18350
|
let {
|
|
@@ -18010,11 +18364,11 @@ const VTimelineItem = genericComponent()({
|
|
|
18010
18364
|
useRender(() => createVNode("div", {
|
|
18011
18365
|
"class": ['v-timeline-item', {
|
|
18012
18366
|
'v-timeline-item--fill-dot': props.fillDot
|
|
18013
|
-
}],
|
|
18014
|
-
"style": {
|
|
18367
|
+
}, props.class],
|
|
18368
|
+
"style": [{
|
|
18015
18369
|
'--v-timeline-dot-size': convertToUnit(dotSize.value),
|
|
18016
18370
|
'--v-timeline-line-inset': props.lineInset ? `calc(var(--v-timeline-dot-size) / 2 + ${convertToUnit(props.lineInset)})` : convertToUnit(0)
|
|
18017
|
-
}
|
|
18371
|
+
}, props.style]
|
|
18018
18372
|
}, [createVNode("div", {
|
|
18019
18373
|
"class": "v-timeline-item__body",
|
|
18020
18374
|
"style": dimensionStyles.value
|
|
@@ -18048,6 +18402,7 @@ const VTooltip = genericComponent()({
|
|
|
18048
18402
|
closeOnBack: false,
|
|
18049
18403
|
location: 'end',
|
|
18050
18404
|
locationStrategy: 'connected',
|
|
18405
|
+
eager: true,
|
|
18051
18406
|
minWidth: 0,
|
|
18052
18407
|
offset: 10,
|
|
18053
18408
|
openOnClick: false,
|
|
@@ -18056,7 +18411,7 @@ const VTooltip = genericComponent()({
|
|
|
18056
18411
|
scrim: false,
|
|
18057
18412
|
scrollStrategy: 'reposition',
|
|
18058
18413
|
transition: false
|
|
18059
|
-
}), ['absolute', 'persistent'
|
|
18414
|
+
}), ['absolute', 'persistent'])
|
|
18060
18415
|
},
|
|
18061
18416
|
emits: {
|
|
18062
18417
|
'update:modelValue': value => true
|
|
@@ -18089,7 +18444,8 @@ const VTooltip = genericComponent()({
|
|
|
18089
18444
|
const [overlayProps] = VOverlay.filterProps(props);
|
|
18090
18445
|
return createVNode(VOverlay, mergeProps({
|
|
18091
18446
|
"ref": overlay,
|
|
18092
|
-
"class": ['v-tooltip'],
|
|
18447
|
+
"class": ['v-tooltip', props.class],
|
|
18448
|
+
"style": props.style,
|
|
18093
18449
|
"id": id.value
|
|
18094
18450
|
}, overlayProps, {
|
|
18095
18451
|
"modelValue": isActive.value,
|
|
@@ -18100,7 +18456,6 @@ const VTooltip = genericComponent()({
|
|
|
18100
18456
|
"origin": origin.value,
|
|
18101
18457
|
"persistent": true,
|
|
18102
18458
|
"role": "tooltip",
|
|
18103
|
-
"eager": true,
|
|
18104
18459
|
"activatorProps": activatorProps.value,
|
|
18105
18460
|
"_disableGlobalStack": true
|
|
18106
18461
|
}, scopeId), {
|
|
@@ -18135,69 +18490,239 @@ const VValidation = genericComponent()({
|
|
|
18135
18490
|
}
|
|
18136
18491
|
});
|
|
18137
18492
|
|
|
18138
|
-
const
|
|
18139
|
-
|
|
18140
|
-
|
|
18141
|
-
|
|
18493
|
+
const VVirtualScrollItem = genericComponent()({
|
|
18494
|
+
name: 'VVirtualScrollItem',
|
|
18495
|
+
props: {
|
|
18496
|
+
dynamicHeight: Boolean,
|
|
18497
|
+
...makeComponentProps()
|
|
18142
18498
|
},
|
|
18143
|
-
|
|
18144
|
-
|
|
18145
|
-
|
|
18146
|
-
|
|
18147
|
-
|
|
18148
|
-
|
|
18149
|
-
|
|
18150
|
-
}
|
|
18151
|
-
|
|
18152
|
-
|
|
18153
|
-
|
|
18154
|
-
|
|
18155
|
-
|
|
18156
|
-
|
|
18157
|
-
|
|
18158
|
-
|
|
18159
|
-
|
|
18160
|
-
|
|
18161
|
-
|
|
18162
|
-
|
|
18163
|
-
|
|
18164
|
-
width: convertToUnit(props.width),
|
|
18165
|
-
left: convertToUnit(props.fixedOffset || null)
|
|
18499
|
+
emits: {
|
|
18500
|
+
'update:height': height => true
|
|
18501
|
+
},
|
|
18502
|
+
setup(props, _ref) {
|
|
18503
|
+
let {
|
|
18504
|
+
emit,
|
|
18505
|
+
slots
|
|
18506
|
+
} = _ref;
|
|
18507
|
+
const {
|
|
18508
|
+
resizeRef,
|
|
18509
|
+
contentRect
|
|
18510
|
+
} = useResizeObserver();
|
|
18511
|
+
useToggleScope(() => props.dynamicHeight, () => {
|
|
18512
|
+
watch(() => contentRect.value?.height, height => {
|
|
18513
|
+
if (height != null) emit('update:height', height);
|
|
18514
|
+
});
|
|
18515
|
+
});
|
|
18516
|
+
function updateHeight() {
|
|
18517
|
+
if (props.dynamicHeight && contentRect.value) {
|
|
18518
|
+
emit('update:height', contentRect.value.height);
|
|
18519
|
+
}
|
|
18166
18520
|
}
|
|
18167
|
-
|
|
18168
|
-
|
|
18169
|
-
|
|
18521
|
+
onUpdated(updateHeight);
|
|
18522
|
+
useRender(() => createVNode("div", {
|
|
18523
|
+
"ref": props.dynamicHeight ? resizeRef : undefined,
|
|
18524
|
+
"class": ['v-virtual-scroll__item', props.class],
|
|
18525
|
+
"style": props.style
|
|
18526
|
+
}, [slots.default?.()]));
|
|
18527
|
+
}
|
|
18170
18528
|
});
|
|
18171
18529
|
|
|
18172
|
-
// Utilities
|
|
18173
|
-
|
|
18174
18530
|
// Types
|
|
18175
18531
|
|
|
18176
|
-
const
|
|
18177
|
-
|
|
18178
|
-
|
|
18179
|
-
|
|
18180
|
-
|
|
18181
|
-
|
|
18182
|
-
|
|
18183
|
-
|
|
18184
|
-
|
|
18185
|
-
|
|
18186
|
-
|
|
18187
|
-
|
|
18188
|
-
|
|
18189
|
-
|
|
18190
|
-
|
|
18191
|
-
|
|
18192
|
-
|
|
18193
|
-
const
|
|
18194
|
-
|
|
18195
|
-
|
|
18196
|
-
|
|
18197
|
-
|
|
18198
|
-
|
|
18199
|
-
|
|
18200
|
-
};
|
|
18532
|
+
const UP$1 = -1;
|
|
18533
|
+
const DOWN$1 = 1;
|
|
18534
|
+
const VVirtualScroll = genericComponent()({
|
|
18535
|
+
name: 'VVirtualScroll',
|
|
18536
|
+
props: {
|
|
18537
|
+
items: {
|
|
18538
|
+
type: Array,
|
|
18539
|
+
default: () => []
|
|
18540
|
+
},
|
|
18541
|
+
itemHeight: [Number, String],
|
|
18542
|
+
...makeComponentProps(),
|
|
18543
|
+
...makeDimensionProps()
|
|
18544
|
+
},
|
|
18545
|
+
setup(props, _ref) {
|
|
18546
|
+
let {
|
|
18547
|
+
slots
|
|
18548
|
+
} = _ref;
|
|
18549
|
+
const first = ref(0);
|
|
18550
|
+
const baseItemHeight = ref(props.itemHeight);
|
|
18551
|
+
const itemHeight = computed({
|
|
18552
|
+
get: () => parseInt(baseItemHeight.value ?? 0, 10),
|
|
18553
|
+
set(val) {
|
|
18554
|
+
baseItemHeight.value = val;
|
|
18555
|
+
}
|
|
18556
|
+
});
|
|
18557
|
+
const rootEl = ref();
|
|
18558
|
+
const {
|
|
18559
|
+
resizeRef,
|
|
18560
|
+
contentRect
|
|
18561
|
+
} = useResizeObserver();
|
|
18562
|
+
watchEffect(() => {
|
|
18563
|
+
resizeRef.value = rootEl.value;
|
|
18564
|
+
});
|
|
18565
|
+
const display = useDisplay();
|
|
18566
|
+
const sizeMap = new Map();
|
|
18567
|
+
let sizes = createRange(props.items.length).map(() => itemHeight.value);
|
|
18568
|
+
const visibleItems = computed(() => {
|
|
18569
|
+
return Math.max(12, Math.ceil((contentRect.value?.height ?? display.height.value) / itemHeight.value * 1.7 + 1));
|
|
18570
|
+
});
|
|
18571
|
+
function handleItemResize(index, height) {
|
|
18572
|
+
itemHeight.value = Math.max(itemHeight.value, height);
|
|
18573
|
+
sizes[index] = height;
|
|
18574
|
+
sizeMap.set(props.items[index], height);
|
|
18575
|
+
}
|
|
18576
|
+
function calculateOffset(index) {
|
|
18577
|
+
return sizes.slice(0, index).reduce((curr, value) => curr + (value || itemHeight.value), 0);
|
|
18578
|
+
}
|
|
18579
|
+
function calculateMidPointIndex(scrollTop) {
|
|
18580
|
+
const end = props.items.length;
|
|
18581
|
+
let middle = 0;
|
|
18582
|
+
let middleOffset = 0;
|
|
18583
|
+
while (middleOffset < scrollTop && middle < end) {
|
|
18584
|
+
middleOffset += sizes[middle++] || itemHeight.value;
|
|
18585
|
+
}
|
|
18586
|
+
return middle - 1;
|
|
18587
|
+
}
|
|
18588
|
+
let lastScrollTop = 0;
|
|
18589
|
+
function handleScroll() {
|
|
18590
|
+
if (!rootEl.value || !contentRect.value) return;
|
|
18591
|
+
const height = contentRect.value.height;
|
|
18592
|
+
const scrollTop = rootEl.value.scrollTop;
|
|
18593
|
+
const direction = scrollTop < lastScrollTop ? UP$1 : DOWN$1;
|
|
18594
|
+
const midPointIndex = calculateMidPointIndex(scrollTop + height / 2);
|
|
18595
|
+
const buffer = Math.round(visibleItems.value / 3);
|
|
18596
|
+
if (direction === UP$1 && midPointIndex <= first.value + buffer * 2 - 1) {
|
|
18597
|
+
first.value = clamp(midPointIndex - buffer, 0, props.items.length);
|
|
18598
|
+
} else if (direction === DOWN$1 && midPointIndex >= first.value + buffer * 2 - 1) {
|
|
18599
|
+
first.value = clamp(midPointIndex - buffer, 0, props.items.length - visibleItems.value);
|
|
18600
|
+
}
|
|
18601
|
+
lastScrollTop = rootEl.value.scrollTop;
|
|
18602
|
+
}
|
|
18603
|
+
function scrollToIndex(index) {
|
|
18604
|
+
if (!rootEl.value) return;
|
|
18605
|
+
const offset = calculateOffset(index);
|
|
18606
|
+
rootEl.value.scrollTop = offset;
|
|
18607
|
+
}
|
|
18608
|
+
const items = computed(() => props.items.map((item, index) => ({
|
|
18609
|
+
raw: item,
|
|
18610
|
+
index
|
|
18611
|
+
})));
|
|
18612
|
+
const last = computed(() => Math.min(props.items.length, first.value + visibleItems.value));
|
|
18613
|
+
const computedItems = computed(() => items.value.slice(first.value, last.value));
|
|
18614
|
+
const paddingTop = computed(() => calculateOffset(first.value));
|
|
18615
|
+
const paddingBottom = computed(() => calculateOffset(props.items.length) - calculateOffset(last.value));
|
|
18616
|
+
const {
|
|
18617
|
+
dimensionStyles
|
|
18618
|
+
} = useDimension(props);
|
|
18619
|
+
onMounted(() => {
|
|
18620
|
+
if (!itemHeight.value) {
|
|
18621
|
+
// If itemHeight prop is not set, then calculate an estimated height from the average of inital items
|
|
18622
|
+
itemHeight.value = sizes.slice(first.value, last.value).reduce((curr, height) => curr + height, 0) / visibleItems.value;
|
|
18623
|
+
}
|
|
18624
|
+
});
|
|
18625
|
+
watch(() => props.items.length, () => {
|
|
18626
|
+
sizes = createRange(props.items.length).map(() => itemHeight.value);
|
|
18627
|
+
sizeMap.forEach((height, item) => {
|
|
18628
|
+
const index = props.items.indexOf(item);
|
|
18629
|
+
if (index === -1) {
|
|
18630
|
+
sizeMap.delete(item);
|
|
18631
|
+
} else {
|
|
18632
|
+
sizes[index] = height;
|
|
18633
|
+
}
|
|
18634
|
+
});
|
|
18635
|
+
});
|
|
18636
|
+
useRender(() => createVNode("div", {
|
|
18637
|
+
"ref": rootEl,
|
|
18638
|
+
"class": ['v-virtual-scroll', props.class],
|
|
18639
|
+
"onScroll": handleScroll,
|
|
18640
|
+
"style": [dimensionStyles.value, props.style]
|
|
18641
|
+
}, [createVNode("div", {
|
|
18642
|
+
"class": "v-virtual-scroll__container",
|
|
18643
|
+
"style": {
|
|
18644
|
+
paddingTop: convertToUnit(paddingTop.value),
|
|
18645
|
+
paddingBottom: convertToUnit(paddingBottom.value)
|
|
18646
|
+
}
|
|
18647
|
+
}, [computedItems.value.map(item => createVNode(VVirtualScrollItem, {
|
|
18648
|
+
"key": item.index,
|
|
18649
|
+
"dynamicHeight": !props.itemHeight,
|
|
18650
|
+
"onUpdate:height": height => handleItemResize(item.index, height)
|
|
18651
|
+
}, {
|
|
18652
|
+
default: () => [slots.default?.({
|
|
18653
|
+
item: item.raw,
|
|
18654
|
+
index: item.index
|
|
18655
|
+
})]
|
|
18656
|
+
}))])]));
|
|
18657
|
+
return {
|
|
18658
|
+
scrollToIndex
|
|
18659
|
+
};
|
|
18660
|
+
}
|
|
18661
|
+
});
|
|
18662
|
+
|
|
18663
|
+
const VDataTableColumn = defineFunctionalComponent({
|
|
18664
|
+
align: {
|
|
18665
|
+
type: String,
|
|
18666
|
+
default: 'start'
|
|
18667
|
+
},
|
|
18668
|
+
fixed: Boolean,
|
|
18669
|
+
fixedOffset: [Number, String],
|
|
18670
|
+
height: [Number, String],
|
|
18671
|
+
lastFixed: Boolean,
|
|
18672
|
+
noPadding: Boolean,
|
|
18673
|
+
tag: String,
|
|
18674
|
+
width: [Number, String]
|
|
18675
|
+
}, (props, _ref) => {
|
|
18676
|
+
let {
|
|
18677
|
+
slots,
|
|
18678
|
+
attrs
|
|
18679
|
+
} = _ref;
|
|
18680
|
+
const Tag = props.tag ?? 'td';
|
|
18681
|
+
return createVNode(Tag, mergeProps({
|
|
18682
|
+
"class": ['v-data-table__td', {
|
|
18683
|
+
'v-data-table-column--fixed': props.fixed,
|
|
18684
|
+
'v-data-table-column--last-fixed': props.lastFixed,
|
|
18685
|
+
'v-data-table-column--no-padding': props.noPadding
|
|
18686
|
+
}, `v-data-table-column--align-${props.align}`],
|
|
18687
|
+
"style": {
|
|
18688
|
+
height: convertToUnit(props.height),
|
|
18689
|
+
width: convertToUnit(props.width),
|
|
18690
|
+
left: convertToUnit(props.fixedOffset || null)
|
|
18691
|
+
}
|
|
18692
|
+
}, attrs), {
|
|
18693
|
+
default: () => [slots.default?.()]
|
|
18694
|
+
});
|
|
18695
|
+
});
|
|
18696
|
+
|
|
18697
|
+
// Utilities
|
|
18698
|
+
|
|
18699
|
+
// Types
|
|
18700
|
+
|
|
18701
|
+
const makeDataTableHeaderProps = propsFactory({
|
|
18702
|
+
headers: {
|
|
18703
|
+
type: Array,
|
|
18704
|
+
default: () => []
|
|
18705
|
+
}
|
|
18706
|
+
}, 'v-data-table-header');
|
|
18707
|
+
const VDataTableHeadersSymbol = Symbol.for('vuetify:data-table-headers');
|
|
18708
|
+
function createHeaders(props, options) {
|
|
18709
|
+
const headers = ref([]);
|
|
18710
|
+
const columns = ref([]);
|
|
18711
|
+
watch(() => props.headers, () => {
|
|
18712
|
+
const wrapped = !props.headers.length ? [] : Array.isArray(props.headers[0]) ? props.headers : [props.headers];
|
|
18713
|
+
const flat = wrapped.flatMap((row, index) => row.map(column => ({
|
|
18714
|
+
column,
|
|
18715
|
+
row: index
|
|
18716
|
+
})));
|
|
18717
|
+
const rowCount = wrapped.length;
|
|
18718
|
+
const defaultHeader = {
|
|
18719
|
+
title: '',
|
|
18720
|
+
sortable: false
|
|
18721
|
+
};
|
|
18722
|
+
const defaultActionHeader = {
|
|
18723
|
+
...defaultHeader,
|
|
18724
|
+
width: 48
|
|
18725
|
+
};
|
|
18201
18726
|
if (options?.groupBy?.value.length) {
|
|
18202
18727
|
const index = flat.findIndex(_ref => {
|
|
18203
18728
|
let {
|
|
@@ -19545,8 +20070,8 @@ const makeDataTableVirtualProps = propsFactory({
|
|
|
19545
20070
|
default: 52
|
|
19546
20071
|
}
|
|
19547
20072
|
}, 'virtual');
|
|
19548
|
-
const UP
|
|
19549
|
-
const DOWN
|
|
20073
|
+
const UP = -1;
|
|
20074
|
+
const DOWN = 1;
|
|
19550
20075
|
|
|
19551
20076
|
// TODO: Replace this with composable from v-virtual-scroll
|
|
19552
20077
|
function useVirtual(props, items) {
|
|
@@ -19584,12 +20109,12 @@ function useVirtual(props, items) {
|
|
|
19584
20109
|
isScrolling.value = false;
|
|
19585
20110
|
}, 100);
|
|
19586
20111
|
const scrollTop = containerRef.value.scrollTop;
|
|
19587
|
-
const direction = scrollTop < lastScrollTop ? UP
|
|
20112
|
+
const direction = scrollTop < lastScrollTop ? UP : DOWN;
|
|
19588
20113
|
const midPointIndex = calculateMidPointIndex(scrollTop);
|
|
19589
20114
|
const buffer = Math.round(visibleItems.value / 3);
|
|
19590
|
-
if (direction === UP
|
|
20115
|
+
if (direction === UP && midPointIndex <= startIndex.value) {
|
|
19591
20116
|
startIndex.value = Math.max(midPointIndex - buffer, 0);
|
|
19592
|
-
} else if (direction === DOWN
|
|
20117
|
+
} else if (direction === DOWN && midPointIndex >= startIndex.value + buffer * 2) {
|
|
19593
20118
|
startIndex.value = Math.min(Math.max(0, midPointIndex - buffer), items.value.length - visibleItems.value);
|
|
19594
20119
|
}
|
|
19595
20120
|
lastScrollTop = containerRef.value.scrollTop;
|
|
@@ -19902,6 +20427,211 @@ const VDataTableServer = genericComponent()({
|
|
|
19902
20427
|
|
|
19903
20428
|
// Types
|
|
19904
20429
|
|
|
20430
|
+
const VInfiniteScrollIntersect = defineComponent({
|
|
20431
|
+
name: 'VInfiniteScrollIntersect',
|
|
20432
|
+
props: {
|
|
20433
|
+
side: {
|
|
20434
|
+
type: String,
|
|
20435
|
+
required: true
|
|
20436
|
+
},
|
|
20437
|
+
rootRef: null,
|
|
20438
|
+
rootMargin: String
|
|
20439
|
+
},
|
|
20440
|
+
emits: {
|
|
20441
|
+
intersect: side => true
|
|
20442
|
+
},
|
|
20443
|
+
setup(props, _ref) {
|
|
20444
|
+
let {
|
|
20445
|
+
emit
|
|
20446
|
+
} = _ref;
|
|
20447
|
+
const {
|
|
20448
|
+
intersectionRef,
|
|
20449
|
+
isIntersecting
|
|
20450
|
+
} = useIntersectionObserver(entries => {}, props.rootMargin ? {
|
|
20451
|
+
root: props.rootRef,
|
|
20452
|
+
rootMargin: props.rootMargin
|
|
20453
|
+
} : undefined);
|
|
20454
|
+
watch(isIntersecting, async val => {
|
|
20455
|
+
if (val) emit('intersect', props.side);
|
|
20456
|
+
});
|
|
20457
|
+
useRender(() => createVNode("div", {
|
|
20458
|
+
"class": "v-infinite-scroll-intersect",
|
|
20459
|
+
"ref": intersectionRef
|
|
20460
|
+
}, [createTextVNode("\xA0")]));
|
|
20461
|
+
return {};
|
|
20462
|
+
}
|
|
20463
|
+
});
|
|
20464
|
+
const VInfiniteScroll = genericComponent()({
|
|
20465
|
+
name: 'VInfiniteScroll',
|
|
20466
|
+
props: {
|
|
20467
|
+
color: String,
|
|
20468
|
+
direction: {
|
|
20469
|
+
type: String,
|
|
20470
|
+
default: 'vertical',
|
|
20471
|
+
validator: v => ['vertical', 'horizontal'].includes(v)
|
|
20472
|
+
},
|
|
20473
|
+
side: {
|
|
20474
|
+
type: String,
|
|
20475
|
+
default: 'end',
|
|
20476
|
+
validator: v => ['start', 'end', 'both'].includes(v)
|
|
20477
|
+
},
|
|
20478
|
+
mode: {
|
|
20479
|
+
type: String,
|
|
20480
|
+
default: 'intersect',
|
|
20481
|
+
validator: v => ['intersect', 'manual'].includes(v)
|
|
20482
|
+
},
|
|
20483
|
+
margin: [Number, String],
|
|
20484
|
+
loadMoreText: {
|
|
20485
|
+
type: String,
|
|
20486
|
+
default: '$vuetify.infiniteScroll.loadMore'
|
|
20487
|
+
},
|
|
20488
|
+
emptyText: {
|
|
20489
|
+
type: String,
|
|
20490
|
+
default: '$vuetify.infiniteScroll.empty'
|
|
20491
|
+
},
|
|
20492
|
+
...makeDimensionProps()
|
|
20493
|
+
},
|
|
20494
|
+
emits: {
|
|
20495
|
+
load: options => true
|
|
20496
|
+
},
|
|
20497
|
+
setup(props, _ref2) {
|
|
20498
|
+
let {
|
|
20499
|
+
slots,
|
|
20500
|
+
emit
|
|
20501
|
+
} = _ref2;
|
|
20502
|
+
const rootEl = ref();
|
|
20503
|
+
const startStatus = ref('ok');
|
|
20504
|
+
const endStatus = ref('ok');
|
|
20505
|
+
const margin = computed(() => convertToUnit(props.margin));
|
|
20506
|
+
function setScrollAmount(amount) {
|
|
20507
|
+
if (!rootEl.value) return;
|
|
20508
|
+
const property = props.direction === 'vertical' ? 'scrollTop' : 'scrollLeft';
|
|
20509
|
+
rootEl.value[property] = amount;
|
|
20510
|
+
}
|
|
20511
|
+
function getScrollAmount() {
|
|
20512
|
+
if (!rootEl.value) return 0;
|
|
20513
|
+
const property = props.direction === 'vertical' ? 'scrollTop' : 'scrollLeft';
|
|
20514
|
+
return rootEl.value[property];
|
|
20515
|
+
}
|
|
20516
|
+
function getScrollSize() {
|
|
20517
|
+
if (!rootEl.value) return 0;
|
|
20518
|
+
const property = props.direction === 'vertical' ? 'scrollHeight' : 'scrollWidth';
|
|
20519
|
+
return rootEl.value[property];
|
|
20520
|
+
}
|
|
20521
|
+
function getContainerSize() {
|
|
20522
|
+
if (!rootEl.value) return 0;
|
|
20523
|
+
const property = props.direction === 'vertical' ? 'clientHeight' : 'clientWidth';
|
|
20524
|
+
return rootEl.value[property];
|
|
20525
|
+
}
|
|
20526
|
+
onMounted(() => {
|
|
20527
|
+
if (!rootEl.value) return;
|
|
20528
|
+
if (props.side === 'start') {
|
|
20529
|
+
setScrollAmount(getScrollSize());
|
|
20530
|
+
} else if (props.side === 'both') {
|
|
20531
|
+
setScrollAmount(getScrollSize() / 2 - getContainerSize() / 2);
|
|
20532
|
+
}
|
|
20533
|
+
});
|
|
20534
|
+
function setStatus(side, status) {
|
|
20535
|
+
if (side === 'start') {
|
|
20536
|
+
startStatus.value = status;
|
|
20537
|
+
} else if (side === 'end') {
|
|
20538
|
+
endStatus.value = status;
|
|
20539
|
+
}
|
|
20540
|
+
}
|
|
20541
|
+
function getStatus(side) {
|
|
20542
|
+
return side === 'start' ? startStatus.value : endStatus.value;
|
|
20543
|
+
}
|
|
20544
|
+
let previousScrollSize = 0;
|
|
20545
|
+
function handleIntersect(side) {
|
|
20546
|
+
const status = getStatus(side);
|
|
20547
|
+
if (!rootEl.value || status === 'loading') return;
|
|
20548
|
+
previousScrollSize = getScrollSize();
|
|
20549
|
+
setStatus(side, 'loading');
|
|
20550
|
+
function done(status) {
|
|
20551
|
+
setStatus(side, status);
|
|
20552
|
+
nextTick(() => {
|
|
20553
|
+
if (status === 'ok' && side === 'start') {
|
|
20554
|
+
setScrollAmount(getScrollSize() - previousScrollSize + getScrollAmount());
|
|
20555
|
+
}
|
|
20556
|
+
});
|
|
20557
|
+
}
|
|
20558
|
+
emit('load', {
|
|
20559
|
+
side,
|
|
20560
|
+
done
|
|
20561
|
+
});
|
|
20562
|
+
}
|
|
20563
|
+
const {
|
|
20564
|
+
t
|
|
20565
|
+
} = useLocale();
|
|
20566
|
+
function renderSide(side, status) {
|
|
20567
|
+
if (props.side !== side && props.side !== 'both') return;
|
|
20568
|
+
const onClick = () => handleIntersect(side);
|
|
20569
|
+
const slotProps = {
|
|
20570
|
+
side,
|
|
20571
|
+
props: {
|
|
20572
|
+
onClick,
|
|
20573
|
+
color: props.color
|
|
20574
|
+
}
|
|
20575
|
+
};
|
|
20576
|
+
if (status === 'error') return slots.error?.(slotProps);
|
|
20577
|
+
if (status === 'empty') return slots.empty?.(slotProps) ?? createVNode("div", null, [t(props.emptyText)]);
|
|
20578
|
+
if (props.mode === 'manual') {
|
|
20579
|
+
if (status === 'loading') {
|
|
20580
|
+
return slots.loading?.(slotProps) ?? createVNode(VProgressCircular, {
|
|
20581
|
+
"indeterminate": true,
|
|
20582
|
+
"color": props.color
|
|
20583
|
+
}, null);
|
|
20584
|
+
}
|
|
20585
|
+
return slots['load-more']?.(slotProps) ?? createVNode(VBtn, {
|
|
20586
|
+
"variant": "outlined",
|
|
20587
|
+
"color": props.color,
|
|
20588
|
+
"onClick": onClick
|
|
20589
|
+
}, {
|
|
20590
|
+
default: () => [t(props.loadMoreText)]
|
|
20591
|
+
});
|
|
20592
|
+
}
|
|
20593
|
+
return slots.loading?.(slotProps) ?? createVNode(VProgressCircular, {
|
|
20594
|
+
"indeterminate": true,
|
|
20595
|
+
"color": props.color
|
|
20596
|
+
}, null);
|
|
20597
|
+
}
|
|
20598
|
+
const {
|
|
20599
|
+
dimensionStyles
|
|
20600
|
+
} = useDimension(props);
|
|
20601
|
+
useRender(() => {
|
|
20602
|
+
const hasStartIntersect = props.side === 'start' || props.side === 'both';
|
|
20603
|
+
const hasEndIntersect = props.side === 'end' || props.side === 'both';
|
|
20604
|
+
const intersectMode = props.mode === 'intersect';
|
|
20605
|
+
return createVNode("div", {
|
|
20606
|
+
"ref": rootEl,
|
|
20607
|
+
"class": ['v-infinite-scroll', `v-infinite-scroll--${props.direction}`, {
|
|
20608
|
+
'v-infinite-scroll--start': hasStartIntersect,
|
|
20609
|
+
'v-infinite-scroll--end': hasEndIntersect
|
|
20610
|
+
}],
|
|
20611
|
+
"style": dimensionStyles.value
|
|
20612
|
+
}, [createVNode("div", {
|
|
20613
|
+
"class": "v-infinite-scroll__side"
|
|
20614
|
+
}, [renderSide('start', startStatus.value)]), rootEl.value && hasStartIntersect && intersectMode && createVNode(VInfiniteScrollIntersect, {
|
|
20615
|
+
"key": "start",
|
|
20616
|
+
"side": "start",
|
|
20617
|
+
"onIntersect": handleIntersect,
|
|
20618
|
+
"rootRef": rootEl.value,
|
|
20619
|
+
"rootMargin": margin.value
|
|
20620
|
+
}, null), slots.default?.(), rootEl.value && hasEndIntersect && intersectMode && createVNode(VInfiniteScrollIntersect, {
|
|
20621
|
+
"key": "end",
|
|
20622
|
+
"side": "end",
|
|
20623
|
+
"onIntersect": handleIntersect,
|
|
20624
|
+
"rootRef": rootEl.value,
|
|
20625
|
+
"rootMargin": margin.value
|
|
20626
|
+
}, null), createVNode("div", {
|
|
20627
|
+
"class": "v-infinite-scroll__side"
|
|
20628
|
+
}, [renderSide('end', endStatus.value)])]);
|
|
20629
|
+
});
|
|
20630
|
+
}
|
|
20631
|
+
});
|
|
20632
|
+
|
|
20633
|
+
// Types
|
|
20634
|
+
|
|
19905
20635
|
const rootTypes = {
|
|
19906
20636
|
actions: 'button@2',
|
|
19907
20637
|
article: 'heading, paragraph',
|
|
@@ -20032,177 +20762,6 @@ const VSkeletonLoader = genericComponent()({
|
|
|
20032
20762
|
}
|
|
20033
20763
|
});
|
|
20034
20764
|
|
|
20035
|
-
const VVirtualScrollItem = genericComponent()({
|
|
20036
|
-
name: 'VVirtualScrollItem',
|
|
20037
|
-
props: {
|
|
20038
|
-
dynamicHeight: Boolean
|
|
20039
|
-
},
|
|
20040
|
-
emits: {
|
|
20041
|
-
'update:height': height => true
|
|
20042
|
-
},
|
|
20043
|
-
setup(props, _ref) {
|
|
20044
|
-
let {
|
|
20045
|
-
emit,
|
|
20046
|
-
slots
|
|
20047
|
-
} = _ref;
|
|
20048
|
-
const {
|
|
20049
|
-
resizeRef,
|
|
20050
|
-
contentRect
|
|
20051
|
-
} = useResizeObserver();
|
|
20052
|
-
useToggleScope(() => props.dynamicHeight, () => {
|
|
20053
|
-
watch(() => contentRect.value?.height, height => {
|
|
20054
|
-
if (height != null) emit('update:height', height);
|
|
20055
|
-
});
|
|
20056
|
-
});
|
|
20057
|
-
function updateHeight() {
|
|
20058
|
-
if (props.dynamicHeight && contentRect.value) {
|
|
20059
|
-
emit('update:height', contentRect.value.height);
|
|
20060
|
-
}
|
|
20061
|
-
}
|
|
20062
|
-
onUpdated(updateHeight);
|
|
20063
|
-
useRender(() => createVNode("div", {
|
|
20064
|
-
"ref": props.dynamicHeight ? resizeRef : undefined,
|
|
20065
|
-
"class": "v-virtual-scroll__item"
|
|
20066
|
-
}, [slots.default?.()]));
|
|
20067
|
-
}
|
|
20068
|
-
});
|
|
20069
|
-
|
|
20070
|
-
// Types
|
|
20071
|
-
|
|
20072
|
-
const UP = -1;
|
|
20073
|
-
const DOWN = 1;
|
|
20074
|
-
const VVirtualScroll = genericComponent()({
|
|
20075
|
-
name: 'VVirtualScroll',
|
|
20076
|
-
props: {
|
|
20077
|
-
items: {
|
|
20078
|
-
type: Array,
|
|
20079
|
-
default: () => []
|
|
20080
|
-
},
|
|
20081
|
-
itemHeight: [Number, String],
|
|
20082
|
-
visibleItems: [Number, String],
|
|
20083
|
-
...makeDimensionProps()
|
|
20084
|
-
},
|
|
20085
|
-
setup(props, _ref) {
|
|
20086
|
-
let {
|
|
20087
|
-
slots
|
|
20088
|
-
} = _ref;
|
|
20089
|
-
const first = ref(0);
|
|
20090
|
-
const baseItemHeight = ref(props.itemHeight);
|
|
20091
|
-
const itemHeight = computed({
|
|
20092
|
-
get: () => parseInt(baseItemHeight.value ?? 0, 10),
|
|
20093
|
-
set(val) {
|
|
20094
|
-
baseItemHeight.value = val;
|
|
20095
|
-
}
|
|
20096
|
-
});
|
|
20097
|
-
const rootEl = ref();
|
|
20098
|
-
const {
|
|
20099
|
-
resizeRef,
|
|
20100
|
-
contentRect
|
|
20101
|
-
} = useResizeObserver();
|
|
20102
|
-
watchEffect(() => {
|
|
20103
|
-
resizeRef.value = rootEl.value;
|
|
20104
|
-
});
|
|
20105
|
-
const display = useDisplay();
|
|
20106
|
-
const sizeMap = new Map();
|
|
20107
|
-
let sizes = createRange(props.items.length).map(() => itemHeight.value);
|
|
20108
|
-
const visibleItems = computed(() => {
|
|
20109
|
-
return props.visibleItems ? parseInt(props.visibleItems, 10) : Math.max(12, Math.ceil((contentRect.value?.height ?? display.height.value) / itemHeight.value * 1.7 + 1));
|
|
20110
|
-
});
|
|
20111
|
-
function handleItemResize(index, height) {
|
|
20112
|
-
itemHeight.value = Math.max(itemHeight.value, height);
|
|
20113
|
-
sizes[index] = height;
|
|
20114
|
-
sizeMap.set(props.items[index], height);
|
|
20115
|
-
}
|
|
20116
|
-
function calculateOffset(index) {
|
|
20117
|
-
return sizes.slice(0, index).reduce((curr, value) => curr + (value || itemHeight.value), 0);
|
|
20118
|
-
}
|
|
20119
|
-
function calculateMidPointIndex(scrollTop) {
|
|
20120
|
-
let start = 0;
|
|
20121
|
-
let end = props.items.length;
|
|
20122
|
-
while (start <= end) {
|
|
20123
|
-
const middle = start + Math.floor((end - start) / 2);
|
|
20124
|
-
const middleOffset = calculateOffset(middle);
|
|
20125
|
-
if (middleOffset === scrollTop) {
|
|
20126
|
-
return middle;
|
|
20127
|
-
} else if (middleOffset < scrollTop) {
|
|
20128
|
-
start = middle + 1;
|
|
20129
|
-
} else if (middleOffset > scrollTop) {
|
|
20130
|
-
end = middle - 1;
|
|
20131
|
-
}
|
|
20132
|
-
}
|
|
20133
|
-
return start;
|
|
20134
|
-
}
|
|
20135
|
-
let lastScrollTop = 0;
|
|
20136
|
-
function handleScroll() {
|
|
20137
|
-
if (!rootEl.value || !contentRect.value) return;
|
|
20138
|
-
const height = contentRect.value.height;
|
|
20139
|
-
const scrollTop = rootEl.value.scrollTop;
|
|
20140
|
-
const direction = scrollTop < lastScrollTop ? UP : DOWN;
|
|
20141
|
-
const midPointIndex = calculateMidPointIndex(scrollTop + height / 2);
|
|
20142
|
-
const buffer = Math.round(visibleItems.value / 3);
|
|
20143
|
-
if (direction === UP && midPointIndex <= first.value + buffer * 2 - 1) {
|
|
20144
|
-
first.value = clamp(midPointIndex - buffer, 0, props.items.length);
|
|
20145
|
-
} else if (direction === DOWN && midPointIndex >= first.value + buffer * 2 - 1) {
|
|
20146
|
-
first.value = clamp(midPointIndex - buffer, 0, props.items.length - visibleItems.value);
|
|
20147
|
-
}
|
|
20148
|
-
lastScrollTop = rootEl.value.scrollTop;
|
|
20149
|
-
}
|
|
20150
|
-
function scrollToIndex(index) {
|
|
20151
|
-
if (!rootEl.value) return;
|
|
20152
|
-
const offset = calculateOffset(index);
|
|
20153
|
-
rootEl.value.scrollTop = offset;
|
|
20154
|
-
}
|
|
20155
|
-
const last = computed(() => Math.min(props.items.length, first.value + visibleItems.value));
|
|
20156
|
-
const computedItems = computed(() => props.items.slice(first.value, last.value));
|
|
20157
|
-
const paddingTop = computed(() => calculateOffset(first.value));
|
|
20158
|
-
const paddingBottom = computed(() => calculateOffset(props.items.length) - calculateOffset(last.value));
|
|
20159
|
-
const {
|
|
20160
|
-
dimensionStyles
|
|
20161
|
-
} = useDimension(props);
|
|
20162
|
-
onMounted(() => {
|
|
20163
|
-
if (!itemHeight.value) {
|
|
20164
|
-
// If itemHeight prop is not set, then calculate an estimated height from the average of inital items
|
|
20165
|
-
itemHeight.value = sizes.slice(first.value, last.value).reduce((curr, height) => curr + height, 0) / visibleItems.value;
|
|
20166
|
-
}
|
|
20167
|
-
});
|
|
20168
|
-
watch(() => props.items.length, () => {
|
|
20169
|
-
sizes = createRange(props.items.length).map(() => itemHeight.value);
|
|
20170
|
-
sizeMap.forEach((height, item) => {
|
|
20171
|
-
const index = props.items.indexOf(item);
|
|
20172
|
-
if (index === -1) {
|
|
20173
|
-
sizeMap.delete(item);
|
|
20174
|
-
} else {
|
|
20175
|
-
sizes[index] = height;
|
|
20176
|
-
}
|
|
20177
|
-
});
|
|
20178
|
-
});
|
|
20179
|
-
useRender(() => createVNode("div", {
|
|
20180
|
-
"ref": rootEl,
|
|
20181
|
-
"class": "v-virtual-scroll",
|
|
20182
|
-
"onScroll": handleScroll,
|
|
20183
|
-
"style": dimensionStyles.value
|
|
20184
|
-
}, [createVNode("div", {
|
|
20185
|
-
"class": "v-virtual-scroll__container",
|
|
20186
|
-
"style": {
|
|
20187
|
-
paddingTop: convertToUnit(paddingTop.value),
|
|
20188
|
-
paddingBottom: convertToUnit(paddingBottom.value)
|
|
20189
|
-
}
|
|
20190
|
-
}, [computedItems.value.map((item, index) => createVNode(VVirtualScrollItem, {
|
|
20191
|
-
"key": index,
|
|
20192
|
-
"dynamicHeight": !props.itemHeight,
|
|
20193
|
-
"onUpdate:height": height => handleItemResize(index + first.value, height)
|
|
20194
|
-
}, {
|
|
20195
|
-
default: () => [slots.default?.({
|
|
20196
|
-
item,
|
|
20197
|
-
index: index + first.value
|
|
20198
|
-
})]
|
|
20199
|
-
}))])]));
|
|
20200
|
-
return {
|
|
20201
|
-
scrollToIndex
|
|
20202
|
-
};
|
|
20203
|
-
}
|
|
20204
|
-
});
|
|
20205
|
-
|
|
20206
20765
|
var components = /*#__PURE__*/Object.freeze({
|
|
20207
20766
|
__proto__: null,
|
|
20208
20767
|
VAlert: VAlert,
|
|
@@ -20272,6 +20831,7 @@ var components = /*#__PURE__*/Object.freeze({
|
|
|
20272
20831
|
VHover: VHover,
|
|
20273
20832
|
VIcon: VIcon,
|
|
20274
20833
|
VImg: VImg,
|
|
20834
|
+
VInfiniteScroll: VInfiniteScroll,
|
|
20275
20835
|
VInput: VInput,
|
|
20276
20836
|
VItem: VItem,
|
|
20277
20837
|
VItemGroup: VItemGroup,
|
|
@@ -20474,6 +21034,418 @@ var directives = /*#__PURE__*/Object.freeze({
|
|
|
20474
21034
|
Touch: Touch
|
|
20475
21035
|
});
|
|
20476
21036
|
|
|
21037
|
+
// Utilities
|
|
21038
|
+
|
|
21039
|
+
// Types
|
|
21040
|
+
|
|
21041
|
+
function getWeekArray(date) {
|
|
21042
|
+
let currentWeek = [];
|
|
21043
|
+
const weeks = [];
|
|
21044
|
+
const firstDayOfMonth = startOfMonth(date);
|
|
21045
|
+
const lastDayOfMonth = endOfMonth(date);
|
|
21046
|
+
for (let i = 0; i < firstDayOfMonth.getDay(); i++) {
|
|
21047
|
+
currentWeek.push(null);
|
|
21048
|
+
}
|
|
21049
|
+
for (let i = 1; i <= lastDayOfMonth.getDate(); i++) {
|
|
21050
|
+
const day = new Date(date.getFullYear(), date.getMonth(), i);
|
|
21051
|
+
|
|
21052
|
+
// Add the day to the current week
|
|
21053
|
+
currentWeek.push(day);
|
|
21054
|
+
|
|
21055
|
+
// If the current week has 7 days, add it to the weeks array and start a new week
|
|
21056
|
+
if (currentWeek.length === 7) {
|
|
21057
|
+
weeks.push(currentWeek);
|
|
21058
|
+
currentWeek = [];
|
|
21059
|
+
}
|
|
21060
|
+
}
|
|
21061
|
+
for (let i = currentWeek.length; i < 7; i++) {
|
|
21062
|
+
currentWeek.push(null);
|
|
21063
|
+
}
|
|
21064
|
+
weeks.push(currentWeek);
|
|
21065
|
+
return weeks;
|
|
21066
|
+
}
|
|
21067
|
+
function startOfMonth(date) {
|
|
21068
|
+
return new Date(date.getFullYear(), date.getMonth(), 1);
|
|
21069
|
+
}
|
|
21070
|
+
function endOfMonth(date) {
|
|
21071
|
+
return new Date(date.getFullYear(), date.getMonth() + 1, 0);
|
|
21072
|
+
}
|
|
21073
|
+
function date(value) {
|
|
21074
|
+
if (value == null) return null;
|
|
21075
|
+
if (value instanceof Date) return value;
|
|
21076
|
+
if (typeof value === 'string') {
|
|
21077
|
+
const parsed = Date.parse(value);
|
|
21078
|
+
if (!isNaN(parsed)) return new Date(parsed);
|
|
21079
|
+
}
|
|
21080
|
+
return null;
|
|
21081
|
+
}
|
|
21082
|
+
const firstDay = {
|
|
21083
|
+
'001': 1,
|
|
21084
|
+
AD: 1,
|
|
21085
|
+
AE: 6,
|
|
21086
|
+
AF: 6,
|
|
21087
|
+
AG: 0,
|
|
21088
|
+
AI: 1,
|
|
21089
|
+
AL: 1,
|
|
21090
|
+
AM: 1,
|
|
21091
|
+
AN: 1,
|
|
21092
|
+
AR: 1,
|
|
21093
|
+
AS: 0,
|
|
21094
|
+
AT: 1,
|
|
21095
|
+
AU: 0,
|
|
21096
|
+
AX: 1,
|
|
21097
|
+
AZ: 1,
|
|
21098
|
+
BA: 1,
|
|
21099
|
+
BD: 0,
|
|
21100
|
+
BE: 1,
|
|
21101
|
+
BG: 1,
|
|
21102
|
+
BH: 6,
|
|
21103
|
+
BM: 1,
|
|
21104
|
+
BN: 1,
|
|
21105
|
+
BR: 0,
|
|
21106
|
+
BS: 0,
|
|
21107
|
+
BT: 0,
|
|
21108
|
+
BW: 0,
|
|
21109
|
+
BY: 1,
|
|
21110
|
+
BZ: 0,
|
|
21111
|
+
CA: 0,
|
|
21112
|
+
CH: 1,
|
|
21113
|
+
CL: 1,
|
|
21114
|
+
CM: 1,
|
|
21115
|
+
CN: 0,
|
|
21116
|
+
CO: 0,
|
|
21117
|
+
CR: 1,
|
|
21118
|
+
CY: 1,
|
|
21119
|
+
CZ: 1,
|
|
21120
|
+
DE: 1,
|
|
21121
|
+
DJ: 6,
|
|
21122
|
+
DK: 1,
|
|
21123
|
+
DM: 0,
|
|
21124
|
+
DO: 0,
|
|
21125
|
+
DZ: 6,
|
|
21126
|
+
EC: 1,
|
|
21127
|
+
EE: 1,
|
|
21128
|
+
EG: 6,
|
|
21129
|
+
ES: 1,
|
|
21130
|
+
ET: 0,
|
|
21131
|
+
FI: 1,
|
|
21132
|
+
FJ: 1,
|
|
21133
|
+
FO: 1,
|
|
21134
|
+
FR: 1,
|
|
21135
|
+
GB: 1,
|
|
21136
|
+
'GB-alt-variant': 0,
|
|
21137
|
+
GE: 1,
|
|
21138
|
+
GF: 1,
|
|
21139
|
+
GP: 1,
|
|
21140
|
+
GR: 1,
|
|
21141
|
+
GT: 0,
|
|
21142
|
+
GU: 0,
|
|
21143
|
+
HK: 0,
|
|
21144
|
+
HN: 0,
|
|
21145
|
+
HR: 1,
|
|
21146
|
+
HU: 1,
|
|
21147
|
+
ID: 0,
|
|
21148
|
+
IE: 1,
|
|
21149
|
+
IL: 0,
|
|
21150
|
+
IN: 0,
|
|
21151
|
+
IQ: 6,
|
|
21152
|
+
IR: 6,
|
|
21153
|
+
IS: 1,
|
|
21154
|
+
IT: 1,
|
|
21155
|
+
JM: 0,
|
|
21156
|
+
JO: 6,
|
|
21157
|
+
JP: 0,
|
|
21158
|
+
KE: 0,
|
|
21159
|
+
KG: 1,
|
|
21160
|
+
KH: 0,
|
|
21161
|
+
KR: 0,
|
|
21162
|
+
KW: 6,
|
|
21163
|
+
KZ: 1,
|
|
21164
|
+
LA: 0,
|
|
21165
|
+
LB: 1,
|
|
21166
|
+
LI: 1,
|
|
21167
|
+
LK: 1,
|
|
21168
|
+
LT: 1,
|
|
21169
|
+
LU: 1,
|
|
21170
|
+
LV: 1,
|
|
21171
|
+
LY: 6,
|
|
21172
|
+
MC: 1,
|
|
21173
|
+
MD: 1,
|
|
21174
|
+
ME: 1,
|
|
21175
|
+
MH: 0,
|
|
21176
|
+
MK: 1,
|
|
21177
|
+
MM: 0,
|
|
21178
|
+
MN: 1,
|
|
21179
|
+
MO: 0,
|
|
21180
|
+
MQ: 1,
|
|
21181
|
+
MT: 0,
|
|
21182
|
+
MV: 5,
|
|
21183
|
+
MX: 0,
|
|
21184
|
+
MY: 1,
|
|
21185
|
+
MZ: 0,
|
|
21186
|
+
NI: 0,
|
|
21187
|
+
NL: 1,
|
|
21188
|
+
NO: 1,
|
|
21189
|
+
NP: 0,
|
|
21190
|
+
NZ: 1,
|
|
21191
|
+
OM: 6,
|
|
21192
|
+
PA: 0,
|
|
21193
|
+
PE: 0,
|
|
21194
|
+
PH: 0,
|
|
21195
|
+
PK: 0,
|
|
21196
|
+
PL: 1,
|
|
21197
|
+
PR: 0,
|
|
21198
|
+
PT: 0,
|
|
21199
|
+
PY: 0,
|
|
21200
|
+
QA: 6,
|
|
21201
|
+
RE: 1,
|
|
21202
|
+
RO: 1,
|
|
21203
|
+
RS: 1,
|
|
21204
|
+
RU: 1,
|
|
21205
|
+
SA: 0,
|
|
21206
|
+
SD: 6,
|
|
21207
|
+
SE: 1,
|
|
21208
|
+
SG: 0,
|
|
21209
|
+
SI: 1,
|
|
21210
|
+
SK: 1,
|
|
21211
|
+
SM: 1,
|
|
21212
|
+
SV: 0,
|
|
21213
|
+
SY: 6,
|
|
21214
|
+
TH: 0,
|
|
21215
|
+
TJ: 1,
|
|
21216
|
+
TM: 1,
|
|
21217
|
+
TR: 1,
|
|
21218
|
+
TT: 0,
|
|
21219
|
+
TW: 0,
|
|
21220
|
+
UA: 1,
|
|
21221
|
+
UM: 0,
|
|
21222
|
+
US: 0,
|
|
21223
|
+
UY: 1,
|
|
21224
|
+
UZ: 1,
|
|
21225
|
+
VA: 1,
|
|
21226
|
+
VE: 0,
|
|
21227
|
+
VI: 0,
|
|
21228
|
+
VN: 1,
|
|
21229
|
+
WS: 0,
|
|
21230
|
+
XK: 1,
|
|
21231
|
+
YE: 0,
|
|
21232
|
+
ZA: 0,
|
|
21233
|
+
ZW: 0
|
|
21234
|
+
};
|
|
21235
|
+
const sundayJanuarySecond2000 = new Date(2000, 0, 2);
|
|
21236
|
+
function getWeekdays(locale) {
|
|
21237
|
+
const daysFromSunday = firstDay[locale.slice(-2).toUpperCase()];
|
|
21238
|
+
return createRange(7).map(i => {
|
|
21239
|
+
const weekday = new Date(sundayJanuarySecond2000);
|
|
21240
|
+
weekday.setDate(sundayJanuarySecond2000.getDate() + daysFromSunday + i);
|
|
21241
|
+
return new Intl.DateTimeFormat(locale, {
|
|
21242
|
+
weekday: 'long'
|
|
21243
|
+
}).format(weekday);
|
|
21244
|
+
});
|
|
21245
|
+
}
|
|
21246
|
+
function format(value, formatString, locale) {
|
|
21247
|
+
const date = new Date(value);
|
|
21248
|
+
let options = {};
|
|
21249
|
+
switch (formatString) {
|
|
21250
|
+
case 'fullDateWithWeekday':
|
|
21251
|
+
options = {
|
|
21252
|
+
weekday: 'long',
|
|
21253
|
+
day: 'numeric',
|
|
21254
|
+
month: 'long',
|
|
21255
|
+
year: 'numeric'
|
|
21256
|
+
};
|
|
21257
|
+
break;
|
|
21258
|
+
case 'normalDateWithWeekday':
|
|
21259
|
+
options = {
|
|
21260
|
+
weekday: 'short',
|
|
21261
|
+
day: 'numeric',
|
|
21262
|
+
month: 'short',
|
|
21263
|
+
year: 'numeric'
|
|
21264
|
+
};
|
|
21265
|
+
break;
|
|
21266
|
+
case 'keyboardDate':
|
|
21267
|
+
options = {};
|
|
21268
|
+
break;
|
|
21269
|
+
case 'monthAndDate':
|
|
21270
|
+
options = {
|
|
21271
|
+
month: 'long',
|
|
21272
|
+
day: 'numeric'
|
|
21273
|
+
};
|
|
21274
|
+
break;
|
|
21275
|
+
case 'monthAndYear':
|
|
21276
|
+
options = {
|
|
21277
|
+
month: 'long',
|
|
21278
|
+
year: 'numeric'
|
|
21279
|
+
};
|
|
21280
|
+
break;
|
|
21281
|
+
default:
|
|
21282
|
+
options = {
|
|
21283
|
+
timeZone: 'UTC',
|
|
21284
|
+
timeZoneName: 'short'
|
|
21285
|
+
};
|
|
21286
|
+
}
|
|
21287
|
+
return new Intl.DateTimeFormat(locale, options).format(date);
|
|
21288
|
+
}
|
|
21289
|
+
function addDays(date, amount) {
|
|
21290
|
+
const d = new Date(date);
|
|
21291
|
+
d.setDate(d.getDate() + amount);
|
|
21292
|
+
return d;
|
|
21293
|
+
}
|
|
21294
|
+
function addMonths(date, amount) {
|
|
21295
|
+
const d = new Date(date);
|
|
21296
|
+
d.setMonth(d.getMonth() + amount);
|
|
21297
|
+
return d;
|
|
21298
|
+
}
|
|
21299
|
+
function getYear(date) {
|
|
21300
|
+
return date.getFullYear();
|
|
21301
|
+
}
|
|
21302
|
+
function getMonth(date) {
|
|
21303
|
+
return date.getMonth();
|
|
21304
|
+
}
|
|
21305
|
+
function startOfYear(date) {
|
|
21306
|
+
return new Date(date.getFullYear(), 0, 1);
|
|
21307
|
+
}
|
|
21308
|
+
function endOfYear(date) {
|
|
21309
|
+
return new Date(date.getFullYear(), 11, 31);
|
|
21310
|
+
}
|
|
21311
|
+
function getMondayOfFirstWeekOfYear(year) {
|
|
21312
|
+
return new Date(year, 0, 1);
|
|
21313
|
+
}
|
|
21314
|
+
|
|
21315
|
+
// https://stackoverflow.com/questions/274861/how-do-i-calculate-the-week-number-given-a-date/275024#275024
|
|
21316
|
+
function getWeek(date) {
|
|
21317
|
+
let year = date.getFullYear();
|
|
21318
|
+
let d1w1 = getMondayOfFirstWeekOfYear(year);
|
|
21319
|
+
if (date < d1w1) {
|
|
21320
|
+
year = year - 1;
|
|
21321
|
+
d1w1 = getMondayOfFirstWeekOfYear(year);
|
|
21322
|
+
} else {
|
|
21323
|
+
const tv = getMondayOfFirstWeekOfYear(year + 1);
|
|
21324
|
+
if (date >= tv) {
|
|
21325
|
+
year = year + 1;
|
|
21326
|
+
d1w1 = tv;
|
|
21327
|
+
}
|
|
21328
|
+
}
|
|
21329
|
+
const diffTime = Math.abs(date.getTime() - d1w1.getTime());
|
|
21330
|
+
const diffDays = Math.ceil(diffTime / (1000 * 60 * 60 * 24));
|
|
21331
|
+
return Math.floor(diffDays / 7) + 1;
|
|
21332
|
+
}
|
|
21333
|
+
function isWithinRange(date, range) {
|
|
21334
|
+
return isAfter(date, range[0]) && isBefore(date, range[1]);
|
|
21335
|
+
}
|
|
21336
|
+
function isValid(date) {
|
|
21337
|
+
const d = new Date(date);
|
|
21338
|
+
return d instanceof Date && !isNaN(d.getTime());
|
|
21339
|
+
}
|
|
21340
|
+
function isAfter(date, comparing) {
|
|
21341
|
+
return date.getTime() > comparing.getTime();
|
|
21342
|
+
}
|
|
21343
|
+
function isBefore(date, comparing) {
|
|
21344
|
+
return date.getTime() < comparing.getTime();
|
|
21345
|
+
}
|
|
21346
|
+
function isEqual(date, comparing) {
|
|
21347
|
+
return date.getTime() === comparing.getTime();
|
|
21348
|
+
}
|
|
21349
|
+
function isSameDay(date, comparing) {
|
|
21350
|
+
return date.getDate() === comparing.getDate() && date.getMonth() === comparing.getMonth() && date.getFullYear() === comparing.getFullYear();
|
|
21351
|
+
}
|
|
21352
|
+
function isSameMonth(date, comparing) {
|
|
21353
|
+
return date.getMonth() === comparing.getMonth() && date.getFullYear() === comparing.getFullYear();
|
|
21354
|
+
}
|
|
21355
|
+
function getDiff(date, comparing, unit) {
|
|
21356
|
+
const d = new Date(date);
|
|
21357
|
+
const c = new Date(comparing);
|
|
21358
|
+
if (unit === 'month') {
|
|
21359
|
+
return d.getMonth() - c.getMonth() + (d.getFullYear() - c.getFullYear()) * 12;
|
|
21360
|
+
}
|
|
21361
|
+
return Math.floor((d.getTime() - c.getTime()) / (1000 * 60 * 60 * 24));
|
|
21362
|
+
}
|
|
21363
|
+
function setYear(date, year) {
|
|
21364
|
+
const d = new Date(date);
|
|
21365
|
+
d.setFullYear(year);
|
|
21366
|
+
return d;
|
|
21367
|
+
}
|
|
21368
|
+
class VuetifyDateAdapter {
|
|
21369
|
+
constructor() {
|
|
21370
|
+
let locale = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : 'en';
|
|
21371
|
+
this.locale = locale;
|
|
21372
|
+
}
|
|
21373
|
+
date(value) {
|
|
21374
|
+
return date(value);
|
|
21375
|
+
}
|
|
21376
|
+
addDays(date, amount) {
|
|
21377
|
+
return addDays(date, amount);
|
|
21378
|
+
}
|
|
21379
|
+
addMonths(date, amount) {
|
|
21380
|
+
return addMonths(date, amount);
|
|
21381
|
+
}
|
|
21382
|
+
getWeekArray(date) {
|
|
21383
|
+
return getWeekArray(date);
|
|
21384
|
+
}
|
|
21385
|
+
startOfMonth(date) {
|
|
21386
|
+
return startOfMonth(date);
|
|
21387
|
+
}
|
|
21388
|
+
endOfMonth(date) {
|
|
21389
|
+
return endOfMonth(date);
|
|
21390
|
+
}
|
|
21391
|
+
format(date, formatString) {
|
|
21392
|
+
return format(date, formatString, this.locale);
|
|
21393
|
+
}
|
|
21394
|
+
isEqual(date, comparing) {
|
|
21395
|
+
return isEqual(date, comparing);
|
|
21396
|
+
}
|
|
21397
|
+
isValid(date) {
|
|
21398
|
+
return isValid(date);
|
|
21399
|
+
}
|
|
21400
|
+
isWithinRange(date, range) {
|
|
21401
|
+
return isWithinRange(date, range);
|
|
21402
|
+
}
|
|
21403
|
+
isAfter(date, comparing) {
|
|
21404
|
+
return isAfter(date, comparing);
|
|
21405
|
+
}
|
|
21406
|
+
isSameDay(date, comparing) {
|
|
21407
|
+
return isSameDay(date, comparing);
|
|
21408
|
+
}
|
|
21409
|
+
isSameMonth(date, comparing) {
|
|
21410
|
+
return isSameMonth(date, comparing);
|
|
21411
|
+
}
|
|
21412
|
+
setYear(date, year) {
|
|
21413
|
+
return setYear(date, year);
|
|
21414
|
+
}
|
|
21415
|
+
getDiff(date, comparing, unit) {
|
|
21416
|
+
return getDiff(date, comparing, unit);
|
|
21417
|
+
}
|
|
21418
|
+
getWeek(date) {
|
|
21419
|
+
return getWeek(date);
|
|
21420
|
+
}
|
|
21421
|
+
getWeekdays() {
|
|
21422
|
+
return getWeekdays(this.locale);
|
|
21423
|
+
}
|
|
21424
|
+
getYear(date) {
|
|
21425
|
+
return getYear(date);
|
|
21426
|
+
}
|
|
21427
|
+
getMonth(date) {
|
|
21428
|
+
return getMonth(date);
|
|
21429
|
+
}
|
|
21430
|
+
startOfYear(date) {
|
|
21431
|
+
return startOfYear(date);
|
|
21432
|
+
}
|
|
21433
|
+
endOfYear(date) {
|
|
21434
|
+
return endOfYear(date);
|
|
21435
|
+
}
|
|
21436
|
+
}
|
|
21437
|
+
|
|
21438
|
+
// Composables
|
|
21439
|
+
|
|
21440
|
+
// Types
|
|
21441
|
+
|
|
21442
|
+
const DateAdapterSymbol = Symbol.for('vuetify:date-adapter');
|
|
21443
|
+
function createDate(options) {
|
|
21444
|
+
return options ?? {
|
|
21445
|
+
adapter: VuetifyDateAdapter
|
|
21446
|
+
};
|
|
21447
|
+
}
|
|
21448
|
+
|
|
20477
21449
|
// Composables
|
|
20478
21450
|
function createVuetify$1() {
|
|
20479
21451
|
let vuetify = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
|
|
@@ -20492,6 +21464,7 @@ function createVuetify$1() {
|
|
|
20492
21464
|
const theme = createTheme(options.theme);
|
|
20493
21465
|
const icons = createIcons(options.icons);
|
|
20494
21466
|
const locale = createLocale(options.locale);
|
|
21467
|
+
const date = createDate(options.date);
|
|
20495
21468
|
const install = app => {
|
|
20496
21469
|
for (const key in directives) {
|
|
20497
21470
|
app.directive(key, directives[key]);
|
|
@@ -20512,6 +21485,7 @@ function createVuetify$1() {
|
|
|
20512
21485
|
app.provide(ThemeSymbol, theme);
|
|
20513
21486
|
app.provide(IconSymbol, icons);
|
|
20514
21487
|
app.provide(LocaleSymbol, locale);
|
|
21488
|
+
app.provide(DateAdapterSymbol, date);
|
|
20515
21489
|
if (IN_BROWSER && options.ssr) {
|
|
20516
21490
|
if (app.$nuxt) {
|
|
20517
21491
|
app.$nuxt.hook('app:suspense:resolve', () => {
|
|
@@ -20539,7 +21513,8 @@ function createVuetify$1() {
|
|
|
20539
21513
|
display: inject.call(this, DisplaySymbol),
|
|
20540
21514
|
theme: inject.call(this, ThemeSymbol),
|
|
20541
21515
|
icons: inject.call(this, IconSymbol),
|
|
20542
|
-
locale: inject.call(this, LocaleSymbol)
|
|
21516
|
+
locale: inject.call(this, LocaleSymbol),
|
|
21517
|
+
date: inject.call(this, DateAdapterSymbol)
|
|
20543
21518
|
});
|
|
20544
21519
|
}
|
|
20545
21520
|
}
|
|
@@ -20552,10 +21527,11 @@ function createVuetify$1() {
|
|
|
20552
21527
|
display,
|
|
20553
21528
|
theme,
|
|
20554
21529
|
icons,
|
|
20555
|
-
locale
|
|
21530
|
+
locale,
|
|
21531
|
+
date
|
|
20556
21532
|
};
|
|
20557
21533
|
}
|
|
20558
|
-
const version$1 = "3.
|
|
21534
|
+
const version$1 = "3.2.0";
|
|
20559
21535
|
createVuetify$1.version = version$1;
|
|
20560
21536
|
|
|
20561
21537
|
// Vue's inject() can only be used in setup
|
|
@@ -20567,7 +21543,7 @@ function inject(key) {
|
|
|
20567
21543
|
}
|
|
20568
21544
|
}
|
|
20569
21545
|
|
|
20570
|
-
const version = "3.
|
|
21546
|
+
const version = "3.2.0";
|
|
20571
21547
|
|
|
20572
21548
|
const createVuetify = function () {
|
|
20573
21549
|
let options = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
|
|
@@ -20578,5 +21554,5 @@ const createVuetify = function () {
|
|
|
20578
21554
|
});
|
|
20579
21555
|
};
|
|
20580
21556
|
|
|
20581
|
-
export { components, createVuetify, directives, useDisplay, useLayout, useLocale, useRtl, useTheme, version };
|
|
21557
|
+
export { components, createVuetify, directives, useDefaults, useDisplay, useLayout, useLocale, useRtl, useTheme, version };
|
|
20582
21558
|
//# sourceMappingURL=vuetify-labs.esm.js.map
|